@jdultra/threedtiles 13.0.8 → 13.0.10
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/threedtiles.cjs.js +20 -8
- package/dist/threedtiles.cjs.js.map +1 -1
- package/dist/threedtiles.es.js +1281 -1072
- package/dist/threedtiles.es.js.map +1 -1
- package/dist/threedtiles.umd.js +20 -8
- package/dist/threedtiles.umd.js.map +1 -1
- package/package.json +2 -1
package/dist/threedtiles.es.js
CHANGED
|
@@ -1,10 +1,21 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var Je = (
|
|
1
|
+
var GA = Object.defineProperty;
|
|
2
|
+
var NA = (o, e, t) => e in o ? GA(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t;
|
|
3
|
+
var Je = (o, e, t) => NA(o, typeof e != "symbol" ? e + "" : e, t);
|
|
4
4
|
import * as j from "three";
|
|
5
|
-
import { Matrix3 as
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
import { Matrix3 as na, Vector3 as K, Box3 as oa, Matrix4 as it, Ray as _A, BufferGeometry as ca, BufferAttribute as Pe, TrianglesDrawMode as PA, TriangleFanDrawMode as Xt, TriangleStripDrawMode as eA, Loader as da, LoaderUtils as lt, FileLoader as Xe, Color as Oe, LinearSRGBColorSpace as be, SpotLight as OA, PointLight as HA, DirectionalLight as qA, MeshBasicMaterial as ot, SRGBColorSpace as ve, MeshPhysicalMaterial as me, Vector2 as tA, Quaternion as aA, InstancedMesh as JA, InstancedBufferAttribute as Zt, Object3D as AA, TextureLoader as KA, ImageBitmapLoader as zA, InterleavedBuffer as VA, InterleavedBufferAttribute as YA, LinearFilter as ut, LinearMipmapLinearFilter as ha, RepeatWrapping as $t, NearestFilter as P, PointsMaterial as WA, Material as jt, LineBasicMaterial as XA, MeshStandardMaterial as fa, DoubleSide as ZA, PropertyBinding as $A, SkinnedMesh as ei, Mesh as ea, LineSegments as ti, Line as ai, LineLoop as Ai, Points as ii, Group as Rt, PerspectiveCamera as si, MathUtils as ri, OrthographicCamera as iA, Skeleton as ni, AnimationClip as oi, Bone as ci, InterpolateLinear as sA, ColorManagement as ta, NearestMipmapNearestFilter as di, LinearMipmapNearestFilter as hi, NearestMipmapLinearFilter as li, ClampToEdgeWrapping as bi, MirroredRepeatWrapping as gi, InterpolateDiscrete as fi, FrontSide as wt, Texture as ua, VectorKeyframeTrack as Ia, NumberKeyframeTrack as pa, QuaternionKeyframeTrack as Ba, Sphere as ui, Interpolant as Ii, CompressedCubeTexture as pi, CompressedArrayTexture as Bi, CompressedTexture as ma, RGBAFormat as Be, RGBA_ASTC_4x4_Format as rA, RGB_BPTC_UNSIGNED_Format as mi, RGBA_BPTC_Format as Ci, RGBA_ETC2_EAC_Format as Ei, RGBA_PVRTC_4BPPV1_Format as Qi, RGBA_S3TC_DXT5_Format as yi, RGB_ETC1_Format as wi, RGB_ETC2_Format as xi, RGB_PVRTC_4BPPV1_Format as ki, RGBA_S3TC_DXT1_Format as Di, UnsignedByteType as ue, HalfFloatType as et, FloatType as W, DataTexture as ct, Data3DTexture as ji, NoColorSpace as Ri, RGFormat as dt, RedFormat as ht, RGBA_ASTC_6x6_Format as Ca, WebGL3DRenderTarget as Ue, ShaderMaterial as Mt, AlwaysDepth as Mi, InstancedBufferGeometry as Ea, DynamicDrawUsage as Qa, Scene as vi, PlaneGeometry as Ti } from "three";
|
|
6
|
+
function It(o, e) {
|
|
7
|
+
for (var t = 0; t < e.length; t++) {
|
|
8
|
+
const a = e[t];
|
|
9
|
+
if (typeof a != "string" && !Array.isArray(a)) {
|
|
10
|
+
for (const A in a) if (A !== "default" && !(A in o)) {
|
|
11
|
+
const s = Object.getOwnPropertyDescriptor(a, A);
|
|
12
|
+
s && Object.defineProperty(o, A, s.get ? s : { enumerable: !0, get: () => a[A] });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
return Object.freeze(Object.defineProperty(o, Symbol.toStringTag, { value: "Module" }));
|
|
17
|
+
}
|
|
18
|
+
class $s {
|
|
8
19
|
constructor() {
|
|
9
20
|
this.cullMap = [], this.cullMaterial = new j.MeshBasicMaterial({ vertexColors: !0 }), this.cullMaterial.side = j.FrontSide, this.cullTarget = this._createCullTarget(), this.cullPixels = new Uint8Array(4 * this.cullTarget.width * this.cullTarget.height);
|
|
10
21
|
}
|
|
@@ -27,10 +38,10 @@ class Ps {
|
|
|
27
38
|
return this.cullMap[e];
|
|
28
39
|
}
|
|
29
40
|
}
|
|
30
|
-
const le = new
|
|
41
|
+
const le = new na(), te = new K(), ya = new K(), wa = new oa(), Bt = new it(), xa = new it(), ka = new _A();
|
|
31
42
|
class Re {
|
|
32
43
|
constructor(e) {
|
|
33
|
-
this.center = new K(e[0], e[1], e[2]), this.e1 = new K(e[3], e[4], e[5]), this.e2 = new K(e[6], e[7], e[8]), this.e3 = new K(e[9], e[10], e[11]), this.halfSize = new K(this.e1.length(), this.e2.length(), this.e3.length()), this.e1.normalize(), this.e2.normalize(), this.e3.normalize(), this.rotationMatrix = new
|
|
44
|
+
this.center = new K(e[0], e[1], e[2]), this.e1 = new K(e[3], e[4], e[5]), this.e2 = new K(e[6], e[7], e[8]), this.e3 = new K(e[9], e[10], e[11]), this.halfSize = new K(this.e1.length(), this.e2.length(), this.e3.length()), this.e1.normalize(), this.e2.normalize(), this.e3.normalize(), this.rotationMatrix = new na(), this.rotationMatrix.set(this.e1.x, this.e1.y, this.e1.z, this.e2.x, this.e2.y, this.e2.z, this.e3.x, this.e3.y, this.e3.z);
|
|
34
45
|
}
|
|
35
46
|
copy(e) {
|
|
36
47
|
this.center.copy(e.center), this.rotationMatrix.copy(e.rotationMatrix), this.halfSize.copy(e.halfSize);
|
|
@@ -47,7 +58,7 @@ class Re {
|
|
|
47
58
|
return le.elements[0] *= i, le.elements[1] *= i, le.elements[2] *= i, le.elements[3] *= n, le.elements[4] *= n, le.elements[5] *= n, le.elements[6] *= l, le.elements[7] *= l, le.elements[8] *= l, this.rotationMatrix.multiply(le), this.halfSize.x *= a, this.halfSize.y *= A, this.halfSize.z *= s, te.setFromMatrixPosition(e), this.center.applyMatrix4(e), this;
|
|
48
59
|
}
|
|
49
60
|
intersectRay(e, t) {
|
|
50
|
-
return this.getSize(
|
|
61
|
+
return this.getSize(ya), wa.setFromCenterAndSize(te.set(0, 0, 0), ya), Bt.setFromMatrix3(this.rotationMatrix), Bt.setPosition(this.center), xa.copy(Bt).invert(), ka.copy(e).applyMatrix4(xa), ka.intersectBox(wa, t) ? t.applyMatrix4(Bt) : null;
|
|
51
62
|
}
|
|
52
63
|
intersectsRay(e) {
|
|
53
64
|
return this.intersectRay(e, te) !== null;
|
|
@@ -70,14 +81,213 @@ class Re {
|
|
|
70
81
|
return Math.sqrt(t * t + a * a + A * A);
|
|
71
82
|
}
|
|
72
83
|
}
|
|
73
|
-
|
|
74
|
-
|
|
84
|
+
function Dt(o) {
|
|
85
|
+
return o && o.__esModule && Object.prototype.hasOwnProperty.call(o, "default") ? o.default : o;
|
|
86
|
+
}
|
|
87
|
+
function pt(o) {
|
|
88
|
+
if (o.__esModule) return o;
|
|
89
|
+
var e = o.default;
|
|
90
|
+
if (typeof e == "function") {
|
|
91
|
+
var t = function a() {
|
|
92
|
+
return this instanceof a ? Reflect.construct(e, arguments, this.constructor) : e.apply(this, arguments);
|
|
93
|
+
};
|
|
94
|
+
t.prototype = e.prototype;
|
|
95
|
+
} else t = {};
|
|
96
|
+
return Object.defineProperty(t, "__esModule", { value: !0 }), Object.keys(o).forEach(function(a) {
|
|
97
|
+
var A = Object.getOwnPropertyDescriptor(o, a);
|
|
98
|
+
Object.defineProperty(t, a, A.get ? A : { enumerable: !0, get: function() {
|
|
99
|
+
return o[a];
|
|
100
|
+
} });
|
|
101
|
+
}), t;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* @copyright 2021 Aaron Zhao <yujianzhao2013@gmail.com>
|
|
105
|
+
* @license MIT
|
|
106
|
+
* Heap implementation using 1-d array
|
|
107
|
+
* Children is index of 2n + 1 and 2n + 2 where n is the parent index
|
|
108
|
+
* Parent is math.floor((m - 1) / 2) where m is is the child index
|
|
109
|
+
* @class Heap
|
|
110
|
+
*/
|
|
111
|
+
var Da = class {
|
|
112
|
+
constructor(o, e) {
|
|
113
|
+
if (this._data = [], this._comparator = function(t, a) {
|
|
114
|
+
return t >= a;
|
|
115
|
+
}, o != null) {
|
|
116
|
+
if (!Array.isArray(o)) throw Error("Constructor expects data to be an array");
|
|
117
|
+
this._data = o;
|
|
118
|
+
}
|
|
119
|
+
if (e != null) {
|
|
120
|
+
if (typeof e != "function") throw Error("Constructor expects comparator to be a function");
|
|
121
|
+
this._comparator = e;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
peek() {
|
|
125
|
+
return this.size() < 1 ? null : this._data[0];
|
|
126
|
+
}
|
|
127
|
+
pop() {
|
|
128
|
+
if (this.size() < 1) return null;
|
|
129
|
+
const o = this._data[0];
|
|
130
|
+
return this.swap(this.size() - 1, 0), this._data.pop(), this.heapifyDown(0), o;
|
|
131
|
+
}
|
|
132
|
+
replaceTop(o) {
|
|
133
|
+
if (this.size() < 1) return null;
|
|
134
|
+
const e = this._data[0];
|
|
135
|
+
return this._data[0] = o, this.heapifyDown(0), e;
|
|
136
|
+
}
|
|
137
|
+
push(o) {
|
|
138
|
+
this._data.push(o), this.heapifyUp(this._data.length - 1);
|
|
139
|
+
}
|
|
140
|
+
size() {
|
|
141
|
+
return this._data.length;
|
|
142
|
+
}
|
|
143
|
+
swap(o, e) {
|
|
144
|
+
const t = this._data[o];
|
|
145
|
+
this._data[o] = this._data[e], this._data[e] = t;
|
|
146
|
+
}
|
|
147
|
+
heapifyUp(o) {
|
|
148
|
+
if (o === 0) return;
|
|
149
|
+
const e = Math.floor((o - 1) / 2);
|
|
150
|
+
this._comparator(this._data[o], this._data[e]) || (this.swap(o, e), this.heapifyUp(e));
|
|
151
|
+
}
|
|
152
|
+
heapifyDown(o) {
|
|
153
|
+
const e = 2 * o + 1, t = 2 * o + 2;
|
|
154
|
+
if (e >= this._data.length) return;
|
|
155
|
+
const a = t < this._data.length && !this._comparator(this._data[t], this._data[e]) ? t : e;
|
|
156
|
+
this._comparator(this._data[o], this._data[a]) && (this.swap(o, a), this.heapifyDown(a));
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
const Si = pt(It({ __proto__: null, default: Dt(Da) }, [Da]));
|
|
160
|
+
var ja = class {
|
|
161
|
+
constructor(o, e) {
|
|
162
|
+
if (this._data = [], this._head = 0, this._cap = null, o != null) {
|
|
163
|
+
if (!Array.isArray(o)) throw Error("Constructor expects data to be an array");
|
|
164
|
+
this._data = o;
|
|
165
|
+
}
|
|
166
|
+
if (e != null) {
|
|
167
|
+
if (typeof e != "number") throw Error("Constructor expects capacity to be a number");
|
|
168
|
+
this._cap = e;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
enqueue(o) {
|
|
172
|
+
return !(this._cap != null && this.size() >= this._cap) && (this._data.push(o), !0);
|
|
173
|
+
}
|
|
174
|
+
dequeue() {
|
|
175
|
+
if (this.size() === 0) return null;
|
|
176
|
+
const o = this._data[this._head];
|
|
177
|
+
return this._head += 1, 2 * this._head >= this._data.length && (this._data = this._data.slice(this._head), this._head = 0), o;
|
|
178
|
+
}
|
|
179
|
+
peek(o = !1) {
|
|
180
|
+
return this.size() > 0 ? o ? this._data[this._data.length - 1] : this._data[this._head] : null;
|
|
181
|
+
}
|
|
182
|
+
size() {
|
|
183
|
+
return this._data.length - this._head;
|
|
184
|
+
}
|
|
185
|
+
updateCapacity(o) {
|
|
186
|
+
this._cap = o;
|
|
187
|
+
}
|
|
188
|
+
reset() {
|
|
189
|
+
this._data = [], this._head = 0;
|
|
190
|
+
}
|
|
191
|
+
forEach(o) {
|
|
192
|
+
for (let e = this._head; e < this._data.length; e += 1) o(this._data[e], e - this._head);
|
|
193
|
+
}
|
|
194
|
+
toArray() {
|
|
195
|
+
return this._data.slice(this._head);
|
|
196
|
+
}
|
|
197
|
+
};
|
|
198
|
+
const Fi = pt(It({ __proto__: null, default: Dt(ja) }, [ja]));
|
|
199
|
+
var Ra = class {
|
|
200
|
+
constructor() {
|
|
201
|
+
this._data = /* @__PURE__ */ new Map(), this._link = /* @__PURE__ */ new Map(), this._head = void 0, this._tail = void 0;
|
|
202
|
+
}
|
|
203
|
+
put(o, e, t = !1) {
|
|
204
|
+
this.has(o) ? this._data.set(o, e) : (this._data.set(o, e), this._link.set(o, { previous: void 0, next: void 0 }), this._head == null ? (this._head = o, this._tail = o) : t ? (this._link.get(this._head).previous = o, this._link.get(o).next = this._head, this._head = o) : (this._link.get(this._tail).next = o, this._link.get(o).previous = this._tail, this._tail = o));
|
|
205
|
+
}
|
|
206
|
+
head() {
|
|
207
|
+
return { key: this._head, value: this.get(this._head), next: () => this.next(this._head), previous: () => null };
|
|
208
|
+
}
|
|
209
|
+
tail() {
|
|
210
|
+
return { key: this._tail, value: this.get(this._tail), next: () => null, previous: () => this.previous(this._tail) };
|
|
211
|
+
}
|
|
212
|
+
get(o) {
|
|
213
|
+
return this._data.get(o);
|
|
214
|
+
}
|
|
215
|
+
previousKey(o) {
|
|
216
|
+
const e = this._link.get(o);
|
|
217
|
+
return e != null ? e.previous : void 0;
|
|
218
|
+
}
|
|
219
|
+
previousValue(o) {
|
|
220
|
+
return this.get(this.previousKey(o));
|
|
221
|
+
}
|
|
222
|
+
previous(o) {
|
|
223
|
+
const e = this.previousKey(o);
|
|
224
|
+
return { key: e, value: this.get(e), next: () => this.next(e), previous: () => this.previous(e) };
|
|
225
|
+
}
|
|
226
|
+
nextKey(o) {
|
|
227
|
+
const e = this._link.get(o);
|
|
228
|
+
return e != null ? e.next : void 0;
|
|
229
|
+
}
|
|
230
|
+
nextValue(o) {
|
|
231
|
+
return this.get(this.nextKey(o));
|
|
232
|
+
}
|
|
233
|
+
next(o) {
|
|
234
|
+
const e = this.nextKey(o);
|
|
235
|
+
return { key: e, value: this.get(e), next: () => this.next(e), previous: () => this.previous(e) };
|
|
236
|
+
}
|
|
237
|
+
remove(o) {
|
|
238
|
+
const e = this._data.get(o);
|
|
239
|
+
if (e != null) if (this.size() === 1) this.reset();
|
|
240
|
+
else {
|
|
241
|
+
if (o === this._head) {
|
|
242
|
+
const t = this._link.get(this._head);
|
|
243
|
+
this._link.get(t.next).previous = null, this._head = t.next;
|
|
244
|
+
} else if (o === this._tail) {
|
|
245
|
+
const t = this._link.get(this._tail);
|
|
246
|
+
this._link.get(t.previous).next = null, this._tail = t.previous;
|
|
247
|
+
} else {
|
|
248
|
+
const t = this._link.get(o), a = this._link.get(t.previous), A = this._link.get(t.next);
|
|
249
|
+
a.next = t.next, A.previous = t.previous;
|
|
250
|
+
}
|
|
251
|
+
this._link.delete(o), this._data.delete(o);
|
|
252
|
+
}
|
|
253
|
+
return e;
|
|
254
|
+
}
|
|
255
|
+
has(o) {
|
|
256
|
+
return this._data.has(o);
|
|
257
|
+
}
|
|
258
|
+
size() {
|
|
259
|
+
return this._data.size;
|
|
260
|
+
}
|
|
261
|
+
reset() {
|
|
262
|
+
this._data.clear(), this._link.clear(), this._head = void 0, this._tail = void 0;
|
|
263
|
+
}
|
|
264
|
+
keys() {
|
|
265
|
+
return this._data.keys();
|
|
266
|
+
}
|
|
267
|
+
values() {
|
|
268
|
+
return this._data.values();
|
|
269
|
+
}
|
|
270
|
+
entries() {
|
|
271
|
+
return this._data.entries();
|
|
272
|
+
}
|
|
273
|
+
toArray(o = "orderByInsert") {
|
|
274
|
+
if (o !== "orderByInsert") {
|
|
275
|
+
const e = [];
|
|
276
|
+
let t = this._head;
|
|
277
|
+
for (; t != null; ) e.push({ key: t, value: this.get(t) }), t = this.nextKey(t);
|
|
278
|
+
return e;
|
|
279
|
+
}
|
|
280
|
+
return Array.from(this.keys()).map((e) => ({ key: e, value: this.get(e) }));
|
|
281
|
+
}
|
|
282
|
+
}, nA = { Heap: Si, Queue: Fi, LinkedHashMap: pt(It({ __proto__: null, default: Dt(Ra) }, [Ra])) };
|
|
283
|
+
const Li = new TextDecoder();
|
|
284
|
+
class oA {
|
|
75
285
|
constructor(e, t, a, A) {
|
|
76
286
|
this.buffer = e, this.binOffset = t + a, this.binLength = A;
|
|
77
287
|
let s = null;
|
|
78
288
|
if (a !== 0) try {
|
|
79
289
|
const i = new Uint8Array(e, t, a);
|
|
80
|
-
s = JSON.parse(
|
|
290
|
+
s = JSON.parse(Li.decode(i));
|
|
81
291
|
} catch {
|
|
82
292
|
s = {};
|
|
83
293
|
}
|
|
@@ -149,7 +359,7 @@ class tA {
|
|
|
149
359
|
return i;
|
|
150
360
|
}
|
|
151
361
|
}
|
|
152
|
-
class
|
|
362
|
+
class Ui extends oA {
|
|
153
363
|
constructor(e, t, a, A, s) {
|
|
154
364
|
super(e, a, A, s), this.batchSize = t;
|
|
155
365
|
}
|
|
@@ -157,20 +367,20 @@ class Di extends tA {
|
|
|
157
367
|
return super.getData(e, this.batchSize, t, a);
|
|
158
368
|
}
|
|
159
369
|
}
|
|
160
|
-
function
|
|
370
|
+
function Ma(o) {
|
|
161
371
|
let e, t, a, A = -1, s = 0;
|
|
162
|
-
for (let h = 0; h <
|
|
163
|
-
const b =
|
|
372
|
+
for (let h = 0; h < o.length; ++h) {
|
|
373
|
+
const b = o[h];
|
|
164
374
|
if (e === void 0 && (e = b.array.constructor), e !== b.array.constructor) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."), null;
|
|
165
375
|
if (t === void 0 && (t = b.itemSize), t !== b.itemSize) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."), null;
|
|
166
376
|
if (a === void 0 && (a = b.normalized), a !== b.normalized) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."), null;
|
|
167
377
|
if (A === -1 && (A = b.gpuType), A !== b.gpuType) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."), null;
|
|
168
378
|
s += b.count * t;
|
|
169
379
|
}
|
|
170
|
-
const i = new e(s), n = new
|
|
380
|
+
const i = new e(s), n = new Pe(i, t, a);
|
|
171
381
|
let l = 0;
|
|
172
|
-
for (let h = 0; h <
|
|
173
|
-
const b =
|
|
382
|
+
for (let h = 0; h < o.length; ++h) {
|
|
383
|
+
const b = o[h];
|
|
174
384
|
if (b.isInterleavedBufferAttribute) {
|
|
175
385
|
const g = l / t;
|
|
176
386
|
for (let f = 0, I = b.count; f < I; f++) for (let u = 0; u < t; u++) {
|
|
@@ -182,26 +392,26 @@ function ya(c) {
|
|
|
182
392
|
}
|
|
183
393
|
return A !== void 0 && (n.gpuType = A), n;
|
|
184
394
|
}
|
|
185
|
-
function
|
|
186
|
-
if (e ===
|
|
187
|
-
if (e ===
|
|
188
|
-
let t =
|
|
395
|
+
function va(o, e) {
|
|
396
|
+
if (e === PA) return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."), o;
|
|
397
|
+
if (e === Xt || e === eA) {
|
|
398
|
+
let t = o.getIndex();
|
|
189
399
|
if (t === null) {
|
|
190
|
-
const i = [], n =
|
|
191
|
-
if (n === void 0) return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."),
|
|
400
|
+
const i = [], n = o.getAttribute("position");
|
|
401
|
+
if (n === void 0) return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Undefined position attribute. Processing not possible."), o;
|
|
192
402
|
for (let l = 0; l < n.count; l++) i.push(l);
|
|
193
|
-
|
|
403
|
+
o.setIndex(i), t = o.getIndex();
|
|
194
404
|
}
|
|
195
405
|
const a = t.count - 2, A = [];
|
|
196
|
-
if (e ===
|
|
406
|
+
if (e === Xt) for (let i = 1; i <= a; i++) A.push(t.getX(0)), A.push(t.getX(i)), A.push(t.getX(i + 1));
|
|
197
407
|
else for (let i = 0; i < a; i++) i % 2 == 0 ? (A.push(t.getX(i)), A.push(t.getX(i + 1)), A.push(t.getX(i + 2))) : (A.push(t.getX(i + 2)), A.push(t.getX(i + 1)), A.push(t.getX(i)));
|
|
198
408
|
A.length / 3 !== a && console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unable to generate correct amount of triangles.");
|
|
199
|
-
const s =
|
|
409
|
+
const s = o.clone();
|
|
200
410
|
return s.setIndex(A), s.clearGroups(), s;
|
|
201
411
|
}
|
|
202
|
-
return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:", e),
|
|
412
|
+
return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:", e), o;
|
|
203
413
|
}
|
|
204
|
-
class
|
|
414
|
+
class cA {
|
|
205
415
|
constructor(e) {
|
|
206
416
|
Je(this, "checkLoaderInitialized", async () => new Promise((e) => {
|
|
207
417
|
const t = setInterval(() => {
|
|
@@ -215,15 +425,15 @@ class aA {
|
|
|
215
425
|
console.assert(n === "b3dm");
|
|
216
426
|
const l = i.getUint32(8, !0);
|
|
217
427
|
console.assert(l === e.byteLength);
|
|
218
|
-
const h = i.getUint32(12, !0), b = i.getUint32(16, !0), g = i.getUint32(20, !0), f = i.getUint32(24, !0), I = new
|
|
219
|
-
new
|
|
428
|
+
const h = i.getUint32(12, !0), b = i.getUint32(16, !0), g = i.getUint32(20, !0), f = i.getUint32(24, !0), I = new oA(e, 28, h, b), u = 28 + h + b;
|
|
429
|
+
new Ui(e, I.getData("BATCH_LENGTH"), u, g, f);
|
|
220
430
|
const p = u + g + f, m = new Uint8Array(e, p, l - p).slice().buffer;
|
|
221
|
-
return new Promise(async (
|
|
431
|
+
return new Promise(async (C, E) => {
|
|
222
432
|
await this.checkLoaderInitialized(), this.gltfLoader.parse(m, null, (x) => {
|
|
223
433
|
const w = I.getData("RTC_CENTER");
|
|
224
434
|
w ? (this.tempMatrix.makeTranslation(w[0], w[1], w[2]), x.scene.applyMatrix4(this.tempMatrix)) : x.userData.gltfExtensions && x.userData.gltfExtensions.CESIUM_RTC && (this.tempMatrix.makeTranslation(x.userData.gltfExtensions.CESIUM_RTC.center[0], x.userData.gltfExtensions.CESIUM_RTC.center[1], x.userData.gltfExtensions.CESIUM_RTC.center[2]), x.scene.applyMatrix4(this.tempMatrix)), a && x.scene.applyMatrix4(s.zUpToYUpMatrix), x.scene.asset = x.asset, x.scene.traverse((M) => {
|
|
225
435
|
M.isMesh && (A && M.applyMatrix4(s.zUpToYUpMatrix), t && t(M));
|
|
226
|
-
}),
|
|
436
|
+
}), C(x.scene);
|
|
227
437
|
}, (x) => {
|
|
228
438
|
console.error(x);
|
|
229
439
|
});
|
|
@@ -242,8 +452,8 @@ class aA {
|
|
|
242
452
|
}), g.forEach((u) => {
|
|
243
453
|
f.forEach((p) => {
|
|
244
454
|
if (!u.attributes[p]) {
|
|
245
|
-
const m = function(
|
|
246
|
-
switch (
|
|
455
|
+
const m = function(E) {
|
|
456
|
+
switch (E) {
|
|
247
457
|
case "position":
|
|
248
458
|
case "normal":
|
|
249
459
|
case "color":
|
|
@@ -252,27 +462,27 @@ class aA {
|
|
|
252
462
|
case "uv2":
|
|
253
463
|
return 2;
|
|
254
464
|
default:
|
|
255
|
-
throw new Error(`Unknown attribute ${
|
|
465
|
+
throw new Error(`Unknown attribute ${E}`);
|
|
256
466
|
}
|
|
257
|
-
}(p),
|
|
258
|
-
u.setAttribute(p, new j.BufferAttribute(
|
|
467
|
+
}(p), C = new Float32Array(m * u.getAttribute("position").count).fill(0);
|
|
468
|
+
u.setAttribute(p, new j.BufferAttribute(C, m));
|
|
259
469
|
}
|
|
260
470
|
});
|
|
261
471
|
}), function(u, p = !1) {
|
|
262
|
-
const m = u[0].index !== null,
|
|
263
|
-
let
|
|
472
|
+
const m = u[0].index !== null, C = new Set(Object.keys(u[0].attributes)), E = new Set(Object.keys(u[0].morphAttributes)), x = {}, w = {}, M = u[0].morphTargetsRelative, T = new ca();
|
|
473
|
+
let v = 0;
|
|
264
474
|
for (let k = 0; k < u.length; ++k) {
|
|
265
475
|
const R = u[k];
|
|
266
476
|
let S = 0;
|
|
267
477
|
if (m !== (R.index !== null)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + k + ". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."), null;
|
|
268
478
|
for (const F in R.attributes) {
|
|
269
|
-
if (!
|
|
479
|
+
if (!C.has(F)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + k + '. All geometries must have compatible attributes; make sure "' + F + '" attribute exists among all geometries, or in none of them.'), null;
|
|
270
480
|
x[F] === void 0 && (x[F] = []), x[F].push(R.attributes[F]), S++;
|
|
271
481
|
}
|
|
272
|
-
if (S !==
|
|
482
|
+
if (S !== C.size) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + k + ". Make sure all geometries have the same number of attributes."), null;
|
|
273
483
|
if (M !== R.morphTargetsRelative) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + k + ". .morphTargetsRelative must be consistent throughout all geometries."), null;
|
|
274
484
|
for (const F in R.morphAttributes) {
|
|
275
|
-
if (!
|
|
485
|
+
if (!E.has(F)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + k + ". .morphAttributes must be consistent throughout all geometries."), null;
|
|
276
486
|
w[F] === void 0 && (w[F] = []), w[F].push(R.morphAttributes[F]);
|
|
277
487
|
}
|
|
278
488
|
if (p) {
|
|
@@ -282,7 +492,7 @@ class aA {
|
|
|
282
492
|
if (R.attributes.position === void 0) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + k + ". The geometry must have either an index or a position attribute"), null;
|
|
283
493
|
F = R.attributes.position.count;
|
|
284
494
|
}
|
|
285
|
-
|
|
495
|
+
T.addGroup(v, F, k), v += F;
|
|
286
496
|
}
|
|
287
497
|
}
|
|
288
498
|
if (m) {
|
|
@@ -293,51 +503,51 @@ class aA {
|
|
|
293
503
|
for (let z = 0; z < F.count; ++z) R.push(F.getX(z) + k);
|
|
294
504
|
k += u[S].attributes.position.count;
|
|
295
505
|
}
|
|
296
|
-
|
|
506
|
+
T.setIndex(R);
|
|
297
507
|
}
|
|
298
508
|
for (const k in x) {
|
|
299
|
-
const R =
|
|
509
|
+
const R = Ma(x[k]);
|
|
300
510
|
if (!R) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the " + k + " attribute."), null;
|
|
301
|
-
|
|
511
|
+
T.setAttribute(k, R);
|
|
302
512
|
}
|
|
303
513
|
for (const k in w) {
|
|
304
514
|
const R = w[k][0].length;
|
|
305
515
|
if (R === 0) break;
|
|
306
|
-
|
|
516
|
+
T.morphAttributes = T.morphAttributes || {}, T.morphAttributes[k] = [];
|
|
307
517
|
for (let S = 0; S < R; ++S) {
|
|
308
518
|
const F = [];
|
|
309
519
|
for (let Ae = 0; Ae < w[k].length; ++Ae) F.push(w[k][Ae][S]);
|
|
310
|
-
const z =
|
|
520
|
+
const z = Ma(F);
|
|
311
521
|
if (!z) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the " + k + " morphAttribute."), null;
|
|
312
|
-
|
|
522
|
+
T.morphAttributes[k].push(z);
|
|
313
523
|
}
|
|
314
524
|
}
|
|
315
|
-
return
|
|
525
|
+
return T;
|
|
316
526
|
}(g, !0);
|
|
317
527
|
}(l);
|
|
318
528
|
return n = new j.InstancedMesh(b, h, a), n.baseMatrix = new j.Matrix4().identity(), n;
|
|
319
529
|
});
|
|
320
530
|
}
|
|
321
531
|
}
|
|
322
|
-
var
|
|
323
|
-
function
|
|
324
|
-
if (!
|
|
325
|
-
return
|
|
532
|
+
var vt, Gi = new Uint8Array(16);
|
|
533
|
+
function Ni() {
|
|
534
|
+
if (!vt && !(vt = typeof crypto < "u" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto < "u" && typeof msCrypto.getRandomValues == "function" && msCrypto.getRandomValues.bind(msCrypto))) throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");
|
|
535
|
+
return vt(Gi);
|
|
326
536
|
}
|
|
327
|
-
const
|
|
328
|
-
for (var $ = [],
|
|
329
|
-
function
|
|
330
|
-
var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, t = ($[
|
|
537
|
+
const _i = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;
|
|
538
|
+
for (var $ = [], Tt = 0; Tt < 256; ++Tt) $.push((Tt + 256).toString(16).substr(1));
|
|
539
|
+
function Pi(o) {
|
|
540
|
+
var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, t = ($[o[e + 0]] + $[o[e + 1]] + $[o[e + 2]] + $[o[e + 3]] + "-" + $[o[e + 4]] + $[o[e + 5]] + "-" + $[o[e + 6]] + $[o[e + 7]] + "-" + $[o[e + 8]] + $[o[e + 9]] + "-" + $[o[e + 10]] + $[o[e + 11]] + $[o[e + 12]] + $[o[e + 13]] + $[o[e + 14]] + $[o[e + 15]]).toLowerCase();
|
|
331
541
|
if (!function(a) {
|
|
332
|
-
return typeof a == "string" &&
|
|
542
|
+
return typeof a == "string" && _i.test(a);
|
|
333
543
|
}(t)) throw TypeError("Stringified UUID is invalid");
|
|
334
544
|
return t;
|
|
335
545
|
}
|
|
336
|
-
function
|
|
337
|
-
var a = (
|
|
338
|
-
return a[6] = 15 & a[6] | 64, a[8] = 63 & a[8] | 128,
|
|
546
|
+
function dA(o, e, t) {
|
|
547
|
+
var a = (o = o || {}).random || (o.rng || Ni)();
|
|
548
|
+
return a[6] = 15 & a[6] | 64, a[8] = 63 & a[8] | 128, Pi(a);
|
|
339
549
|
}
|
|
340
|
-
class
|
|
550
|
+
class Oi {
|
|
341
551
|
constructor(e, t) {
|
|
342
552
|
Je(this, "checkLoaderInitialized", async () => {
|
|
343
553
|
const e = this;
|
|
@@ -364,42 +574,42 @@ class vi {
|
|
|
364
574
|
});
|
|
365
575
|
}
|
|
366
576
|
}
|
|
367
|
-
class
|
|
577
|
+
class hA extends da {
|
|
368
578
|
constructor(e) {
|
|
369
579
|
super(e), this.dracoLoader = null, this.ktx2Loader = null, this.meshoptDecoder = null, this.pluginCallbacks = [], this.register(function(t) {
|
|
370
|
-
return new
|
|
371
|
-
}), this.register(function(t) {
|
|
372
|
-
return new Ni(t);
|
|
580
|
+
return new zi(t);
|
|
373
581
|
}), this.register(function(t) {
|
|
374
582
|
return new Vi(t);
|
|
375
583
|
}), this.register(function(t) {
|
|
376
|
-
return new
|
|
584
|
+
return new As(t);
|
|
377
585
|
}), this.register(function(t) {
|
|
378
|
-
return new
|
|
586
|
+
return new is(t);
|
|
379
587
|
}), this.register(function(t) {
|
|
380
|
-
return new
|
|
588
|
+
return new ss(t);
|
|
381
589
|
}), this.register(function(t) {
|
|
382
|
-
return new
|
|
590
|
+
return new Wi(t);
|
|
383
591
|
}), this.register(function(t) {
|
|
384
|
-
return new
|
|
592
|
+
return new Xi(t);
|
|
385
593
|
}), this.register(function(t) {
|
|
386
|
-
return new
|
|
594
|
+
return new Zi(t);
|
|
387
595
|
}), this.register(function(t) {
|
|
388
|
-
return new
|
|
596
|
+
return new $i(t);
|
|
389
597
|
}), this.register(function(t) {
|
|
390
|
-
return new
|
|
598
|
+
return new Ki(t);
|
|
391
599
|
}), this.register(function(t) {
|
|
392
|
-
return new
|
|
600
|
+
return new es(t);
|
|
393
601
|
}), this.register(function(t) {
|
|
394
|
-
return new
|
|
602
|
+
return new Yi(t);
|
|
395
603
|
}), this.register(function(t) {
|
|
396
|
-
return new
|
|
604
|
+
return new as(t);
|
|
397
605
|
}), this.register(function(t) {
|
|
398
|
-
return new
|
|
606
|
+
return new ts(t);
|
|
399
607
|
}), this.register(function(t) {
|
|
400
|
-
return new
|
|
608
|
+
return new qi(t);
|
|
401
609
|
}), this.register(function(t) {
|
|
402
|
-
return new
|
|
610
|
+
return new rs(t);
|
|
611
|
+
}), this.register(function(t) {
|
|
612
|
+
return new ns(t);
|
|
403
613
|
});
|
|
404
614
|
}
|
|
405
615
|
load(e, t, a, A) {
|
|
@@ -407,13 +617,13 @@ class iA extends na {
|
|
|
407
617
|
let i;
|
|
408
618
|
if (this.resourcePath !== "") i = this.resourcePath;
|
|
409
619
|
else if (this.path !== "") {
|
|
410
|
-
const h =
|
|
411
|
-
i =
|
|
412
|
-
} else i =
|
|
620
|
+
const h = lt.extractUrlBase(e);
|
|
621
|
+
i = lt.resolveURL(h, this.path);
|
|
622
|
+
} else i = lt.extractUrlBase(e);
|
|
413
623
|
this.manager.itemStart(e);
|
|
414
624
|
const n = function(h) {
|
|
415
625
|
A ? A(h) : console.error(h), s.manager.itemError(e), s.manager.itemEnd(e);
|
|
416
|
-
}, l = new
|
|
626
|
+
}, l = new Xe(this.manager);
|
|
417
627
|
l.setPath(this.path), l.setResponseType("arraybuffer"), l.setRequestHeader(this.requestHeader), l.setWithCredentials(this.withCredentials), l.load(e, function(h) {
|
|
418
628
|
try {
|
|
419
629
|
s.parse(h, i, function(b) {
|
|
@@ -444,9 +654,9 @@ class iA extends na {
|
|
|
444
654
|
const i = {}, n = {}, l = new TextDecoder();
|
|
445
655
|
if (typeof e == "string") s = JSON.parse(e);
|
|
446
656
|
else if (e instanceof ArrayBuffer)
|
|
447
|
-
if (l.decode(new Uint8Array(e, 0, 4)) ===
|
|
657
|
+
if (l.decode(new Uint8Array(e, 0, 4)) === lA) {
|
|
448
658
|
try {
|
|
449
|
-
i[U.KHR_BINARY_GLTF] = new
|
|
659
|
+
i[U.KHR_BINARY_GLTF] = new ds(e);
|
|
450
660
|
} catch (b) {
|
|
451
661
|
return void (A && A(b));
|
|
452
662
|
}
|
|
@@ -454,7 +664,7 @@ class iA extends na {
|
|
|
454
664
|
} else s = JSON.parse(l.decode(e));
|
|
455
665
|
else s = e;
|
|
456
666
|
if (s.asset === void 0 || s.asset.version[0] < 2) return void (A && A(new Error("THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported.")));
|
|
457
|
-
const h = new
|
|
667
|
+
const h = new Qs(s, { path: t || this.resourcePath || "", crossOrigin: this.crossOrigin, requestHeader: this.requestHeader, manager: this.manager, ktx2Loader: this.ktx2Loader, meshoptDecoder: this.meshoptDecoder });
|
|
458
668
|
h.fileLoader.setRequestHeader(this.requestHeader);
|
|
459
669
|
for (let b = 0; b < this.pluginCallbacks.length; b++) {
|
|
460
670
|
const g = this.pluginCallbacks[b](h);
|
|
@@ -464,16 +674,16 @@ class iA extends na {
|
|
|
464
674
|
const g = s.extensionsUsed[b], f = s.extensionsRequired || [];
|
|
465
675
|
switch (g) {
|
|
466
676
|
case U.KHR_MATERIALS_UNLIT:
|
|
467
|
-
i[g] = new
|
|
677
|
+
i[g] = new Ji();
|
|
468
678
|
break;
|
|
469
679
|
case U.KHR_DRACO_MESH_COMPRESSION:
|
|
470
|
-
i[g] = new
|
|
680
|
+
i[g] = new hs(s, this.dracoLoader);
|
|
471
681
|
break;
|
|
472
682
|
case U.KHR_TEXTURE_TRANSFORM:
|
|
473
|
-
i[g] = new
|
|
683
|
+
i[g] = new ls();
|
|
474
684
|
break;
|
|
475
685
|
case U.KHR_MESH_QUANTIZATION:
|
|
476
|
-
i[g] = new
|
|
686
|
+
i[g] = new bs();
|
|
477
687
|
break;
|
|
478
688
|
default:
|
|
479
689
|
f.indexOf(g) >= 0 && n[g] === void 0 && console.warn('THREE.GLTFLoader: Unknown extension "' + g + '".');
|
|
@@ -488,20 +698,20 @@ class iA extends na {
|
|
|
488
698
|
});
|
|
489
699
|
}
|
|
490
700
|
}
|
|
491
|
-
function
|
|
492
|
-
let
|
|
701
|
+
function Hi() {
|
|
702
|
+
let o = {};
|
|
493
703
|
return { get: function(e) {
|
|
494
|
-
return
|
|
704
|
+
return o[e];
|
|
495
705
|
}, add: function(e, t) {
|
|
496
|
-
|
|
706
|
+
o[e] = t;
|
|
497
707
|
}, remove: function(e) {
|
|
498
|
-
delete
|
|
708
|
+
delete o[e];
|
|
499
709
|
}, removeAll: function() {
|
|
500
|
-
|
|
710
|
+
o = {};
|
|
501
711
|
} };
|
|
502
712
|
}
|
|
503
713
|
const U = { KHR_BINARY_GLTF: "KHR_binary_glTF", KHR_DRACO_MESH_COMPRESSION: "KHR_draco_mesh_compression", KHR_LIGHTS_PUNCTUAL: "KHR_lights_punctual", KHR_MATERIALS_CLEARCOAT: "KHR_materials_clearcoat", KHR_MATERIALS_DISPERSION: "KHR_materials_dispersion", KHR_MATERIALS_IOR: "KHR_materials_ior", KHR_MATERIALS_SHEEN: "KHR_materials_sheen", KHR_MATERIALS_SPECULAR: "KHR_materials_specular", KHR_MATERIALS_TRANSMISSION: "KHR_materials_transmission", KHR_MATERIALS_IRIDESCENCE: "KHR_materials_iridescence", KHR_MATERIALS_ANISOTROPY: "KHR_materials_anisotropy", KHR_MATERIALS_UNLIT: "KHR_materials_unlit", KHR_MATERIALS_VOLUME: "KHR_materials_volume", KHR_TEXTURE_BASISU: "KHR_texture_basisu", KHR_TEXTURE_TRANSFORM: "KHR_texture_transform", KHR_MESH_QUANTIZATION: "KHR_mesh_quantization", KHR_MATERIALS_EMISSIVE_STRENGTH: "KHR_materials_emissive_strength", EXT_MATERIALS_BUMP: "EXT_materials_bump", EXT_TEXTURE_WEBP: "EXT_texture_webp", EXT_TEXTURE_AVIF: "EXT_texture_avif", EXT_MESHOPT_COMPRESSION: "EXT_meshopt_compression", EXT_MESH_GPU_INSTANCING: "EXT_mesh_gpu_instancing" };
|
|
504
|
-
class
|
|
714
|
+
class qi {
|
|
505
715
|
constructor(e) {
|
|
506
716
|
this.parser = e, this.name = U.KHR_LIGHTS_PUNCTUAL, this.cache = { refs: {}, uses: {} };
|
|
507
717
|
}
|
|
@@ -523,13 +733,13 @@ class Fi {
|
|
|
523
733
|
const h = i.range !== void 0 ? i.range : 0;
|
|
524
734
|
switch (i.type) {
|
|
525
735
|
case "directional":
|
|
526
|
-
n = new
|
|
736
|
+
n = new qA(l), n.target.position.set(0, 0, -1), n.add(n.target);
|
|
527
737
|
break;
|
|
528
738
|
case "point":
|
|
529
|
-
n = new
|
|
739
|
+
n = new HA(l), n.distance = h;
|
|
530
740
|
break;
|
|
531
741
|
case "spot":
|
|
532
|
-
n = new
|
|
742
|
+
n = new OA(l), n.distance = h, i.spot = i.spot || {}, i.spot.innerConeAngle = i.spot.innerConeAngle !== void 0 ? i.spot.innerConeAngle : 0, i.spot.outerConeAngle = i.spot.outerConeAngle !== void 0 ? i.spot.outerConeAngle : Math.PI / 4, n.angle = i.spot.outerConeAngle, n.penumbra = 1 - i.spot.innerConeAngle / i.spot.outerConeAngle, n.target.position.set(0, 0, -1), n.add(n.target);
|
|
533
743
|
break;
|
|
534
744
|
default:
|
|
535
745
|
throw new Error("THREE.GLTFLoader: Unexpected light type: " + i.type);
|
|
@@ -546,12 +756,12 @@ class Fi {
|
|
|
546
756
|
});
|
|
547
757
|
}
|
|
548
758
|
}
|
|
549
|
-
class
|
|
759
|
+
class Ji {
|
|
550
760
|
constructor() {
|
|
551
761
|
this.name = U.KHR_MATERIALS_UNLIT;
|
|
552
762
|
}
|
|
553
763
|
getMaterialType() {
|
|
554
|
-
return
|
|
764
|
+
return ot;
|
|
555
765
|
}
|
|
556
766
|
extendParams(e, t, a) {
|
|
557
767
|
const A = [];
|
|
@@ -562,12 +772,12 @@ class Li {
|
|
|
562
772
|
const i = s.baseColorFactor;
|
|
563
773
|
e.color.setRGB(i[0], i[1], i[2], be), e.opacity = i[3];
|
|
564
774
|
}
|
|
565
|
-
s.baseColorTexture !== void 0 && A.push(a.assignTexture(e, "map", s.baseColorTexture,
|
|
775
|
+
s.baseColorTexture !== void 0 && A.push(a.assignTexture(e, "map", s.baseColorTexture, ve));
|
|
566
776
|
}
|
|
567
777
|
return Promise.all(A);
|
|
568
778
|
}
|
|
569
779
|
}
|
|
570
|
-
class
|
|
780
|
+
class Ki {
|
|
571
781
|
constructor(e) {
|
|
572
782
|
this.parser = e, this.name = U.KHR_MATERIALS_EMISSIVE_STRENGTH;
|
|
573
783
|
}
|
|
@@ -578,7 +788,7 @@ class Ui {
|
|
|
578
788
|
return A !== void 0 && (t.emissiveIntensity = A), Promise.resolve();
|
|
579
789
|
}
|
|
580
790
|
}
|
|
581
|
-
class
|
|
791
|
+
class zi {
|
|
582
792
|
constructor(e) {
|
|
583
793
|
this.parser = e, this.name = U.KHR_MATERIALS_CLEARCOAT;
|
|
584
794
|
}
|
|
@@ -592,12 +802,12 @@ class Gi {
|
|
|
592
802
|
const s = [], i = A.extensions[this.name];
|
|
593
803
|
if (i.clearcoatFactor !== void 0 && (t.clearcoat = i.clearcoatFactor), i.clearcoatTexture !== void 0 && s.push(a.assignTexture(t, "clearcoatMap", i.clearcoatTexture)), i.clearcoatRoughnessFactor !== void 0 && (t.clearcoatRoughness = i.clearcoatRoughnessFactor), i.clearcoatRoughnessTexture !== void 0 && s.push(a.assignTexture(t, "clearcoatRoughnessMap", i.clearcoatRoughnessTexture)), i.clearcoatNormalTexture !== void 0 && (s.push(a.assignTexture(t, "clearcoatNormalMap", i.clearcoatNormalTexture)), i.clearcoatNormalTexture.scale !== void 0)) {
|
|
594
804
|
const n = i.clearcoatNormalTexture.scale;
|
|
595
|
-
t.clearcoatNormalScale = new
|
|
805
|
+
t.clearcoatNormalScale = new tA(n, n);
|
|
596
806
|
}
|
|
597
807
|
return Promise.all(s);
|
|
598
808
|
}
|
|
599
809
|
}
|
|
600
|
-
class
|
|
810
|
+
class Vi {
|
|
601
811
|
constructor(e) {
|
|
602
812
|
this.parser = e, this.name = U.KHR_MATERIALS_DISPERSION;
|
|
603
813
|
}
|
|
@@ -612,7 +822,7 @@ class Ni {
|
|
|
612
822
|
return t.dispersion = A.dispersion !== void 0 ? A.dispersion : 0, Promise.resolve();
|
|
613
823
|
}
|
|
614
824
|
}
|
|
615
|
-
class
|
|
825
|
+
class Yi {
|
|
616
826
|
constructor(e) {
|
|
617
827
|
this.parser = e, this.name = U.KHR_MATERIALS_IRIDESCENCE;
|
|
618
828
|
}
|
|
@@ -627,7 +837,7 @@ class Pi {
|
|
|
627
837
|
return i.iridescenceFactor !== void 0 && (t.iridescence = i.iridescenceFactor), i.iridescenceTexture !== void 0 && s.push(a.assignTexture(t, "iridescenceMap", i.iridescenceTexture)), i.iridescenceIor !== void 0 && (t.iridescenceIOR = i.iridescenceIor), t.iridescenceThicknessRange === void 0 && (t.iridescenceThicknessRange = [100, 400]), i.iridescenceThicknessMinimum !== void 0 && (t.iridescenceThicknessRange[0] = i.iridescenceThicknessMinimum), i.iridescenceThicknessMaximum !== void 0 && (t.iridescenceThicknessRange[1] = i.iridescenceThicknessMaximum), i.iridescenceThicknessTexture !== void 0 && s.push(a.assignTexture(t, "iridescenceThicknessMap", i.iridescenceThicknessTexture)), Promise.all(s);
|
|
628
838
|
}
|
|
629
839
|
}
|
|
630
|
-
class
|
|
840
|
+
class Wi {
|
|
631
841
|
constructor(e) {
|
|
632
842
|
this.parser = e, this.name = U.KHR_MATERIALS_SHEEN;
|
|
633
843
|
}
|
|
@@ -645,10 +855,10 @@ class _i {
|
|
|
645
855
|
const n = i.sheenColorFactor;
|
|
646
856
|
t.sheenColor.setRGB(n[0], n[1], n[2], be);
|
|
647
857
|
}
|
|
648
|
-
return i.sheenRoughnessFactor !== void 0 && (t.sheenRoughness = i.sheenRoughnessFactor), i.sheenColorTexture !== void 0 && s.push(a.assignTexture(t, "sheenColorMap", i.sheenColorTexture,
|
|
858
|
+
return i.sheenRoughnessFactor !== void 0 && (t.sheenRoughness = i.sheenRoughnessFactor), i.sheenColorTexture !== void 0 && s.push(a.assignTexture(t, "sheenColorMap", i.sheenColorTexture, ve)), i.sheenRoughnessTexture !== void 0 && s.push(a.assignTexture(t, "sheenRoughnessMap", i.sheenRoughnessTexture)), Promise.all(s);
|
|
649
859
|
}
|
|
650
860
|
}
|
|
651
|
-
class
|
|
861
|
+
class Xi {
|
|
652
862
|
constructor(e) {
|
|
653
863
|
this.parser = e, this.name = U.KHR_MATERIALS_TRANSMISSION;
|
|
654
864
|
}
|
|
@@ -663,7 +873,7 @@ class Oi {
|
|
|
663
873
|
return i.transmissionFactor !== void 0 && (t.transmission = i.transmissionFactor), i.transmissionTexture !== void 0 && s.push(a.assignTexture(t, "transmissionMap", i.transmissionTexture)), Promise.all(s);
|
|
664
874
|
}
|
|
665
875
|
}
|
|
666
|
-
class
|
|
876
|
+
class Zi {
|
|
667
877
|
constructor(e) {
|
|
668
878
|
this.parser = e, this.name = U.KHR_MATERIALS_VOLUME;
|
|
669
879
|
}
|
|
@@ -680,7 +890,7 @@ class Hi {
|
|
|
680
890
|
return t.attenuationColor = new Oe().setRGB(n[0], n[1], n[2], be), Promise.all(s);
|
|
681
891
|
}
|
|
682
892
|
}
|
|
683
|
-
class
|
|
893
|
+
class $i {
|
|
684
894
|
constructor(e) {
|
|
685
895
|
this.parser = e, this.name = U.KHR_MATERIALS_IOR;
|
|
686
896
|
}
|
|
@@ -695,7 +905,7 @@ class qi {
|
|
|
695
905
|
return t.ior = A.ior !== void 0 ? A.ior : 1.5, Promise.resolve();
|
|
696
906
|
}
|
|
697
907
|
}
|
|
698
|
-
class
|
|
908
|
+
class es {
|
|
699
909
|
constructor(e) {
|
|
700
910
|
this.parser = e, this.name = U.KHR_MATERIALS_SPECULAR;
|
|
701
911
|
}
|
|
@@ -709,10 +919,10 @@ class Ji {
|
|
|
709
919
|
const s = [], i = A.extensions[this.name];
|
|
710
920
|
t.specularIntensity = i.specularFactor !== void 0 ? i.specularFactor : 1, i.specularTexture !== void 0 && s.push(a.assignTexture(t, "specularIntensityMap", i.specularTexture));
|
|
711
921
|
const n = i.specularColorFactor || [1, 1, 1];
|
|
712
|
-
return t.specularColor = new Oe().setRGB(n[0], n[1], n[2], be), i.specularColorTexture !== void 0 && s.push(a.assignTexture(t, "specularColorMap", i.specularColorTexture,
|
|
922
|
+
return t.specularColor = new Oe().setRGB(n[0], n[1], n[2], be), i.specularColorTexture !== void 0 && s.push(a.assignTexture(t, "specularColorMap", i.specularColorTexture, ve)), Promise.all(s);
|
|
713
923
|
}
|
|
714
924
|
}
|
|
715
|
-
class
|
|
925
|
+
class ts {
|
|
716
926
|
constructor(e) {
|
|
717
927
|
this.parser = e, this.name = U.EXT_MATERIALS_BUMP;
|
|
718
928
|
}
|
|
@@ -727,7 +937,7 @@ class Ki {
|
|
|
727
937
|
return t.bumpScale = i.bumpFactor !== void 0 ? i.bumpFactor : 1, i.bumpTexture !== void 0 && s.push(a.assignTexture(t, "bumpMap", i.bumpTexture)), Promise.all(s);
|
|
728
938
|
}
|
|
729
939
|
}
|
|
730
|
-
class
|
|
940
|
+
class as {
|
|
731
941
|
constructor(e) {
|
|
732
942
|
this.parser = e, this.name = U.KHR_MATERIALS_ANISOTROPY;
|
|
733
943
|
}
|
|
@@ -742,7 +952,7 @@ class zi {
|
|
|
742
952
|
return i.anisotropyStrength !== void 0 && (t.anisotropy = i.anisotropyStrength), i.anisotropyRotation !== void 0 && (t.anisotropyRotation = i.anisotropyRotation), i.anisotropyTexture !== void 0 && s.push(a.assignTexture(t, "anisotropyMap", i.anisotropyTexture)), Promise.all(s);
|
|
743
953
|
}
|
|
744
954
|
}
|
|
745
|
-
class
|
|
955
|
+
class As {
|
|
746
956
|
constructor(e) {
|
|
747
957
|
this.parser = e, this.name = U.KHR_TEXTURE_BASISU;
|
|
748
958
|
}
|
|
@@ -757,7 +967,7 @@ class Vi {
|
|
|
757
967
|
return t.loadTextureImage(e, s.source, i);
|
|
758
968
|
}
|
|
759
969
|
}
|
|
760
|
-
class
|
|
970
|
+
class is {
|
|
761
971
|
constructor(e) {
|
|
762
972
|
this.parser = e, this.name = U.EXT_TEXTURE_WEBP, this.isSupported = null;
|
|
763
973
|
}
|
|
@@ -785,7 +995,7 @@ class Yi {
|
|
|
785
995
|
})), this.isSupported;
|
|
786
996
|
}
|
|
787
997
|
}
|
|
788
|
-
class
|
|
998
|
+
class ss {
|
|
789
999
|
constructor(e) {
|
|
790
1000
|
this.parser = e, this.name = U.EXT_TEXTURE_AVIF, this.isSupported = null;
|
|
791
1001
|
}
|
|
@@ -813,7 +1023,7 @@ class Wi {
|
|
|
813
1023
|
})), this.isSupported;
|
|
814
1024
|
}
|
|
815
1025
|
}
|
|
816
|
-
class
|
|
1026
|
+
class rs {
|
|
817
1027
|
constructor(e) {
|
|
818
1028
|
this.name = U.EXT_MESHOPT_COMPRESSION, this.parser = e;
|
|
819
1029
|
}
|
|
@@ -838,7 +1048,7 @@ class Xi {
|
|
|
838
1048
|
return null;
|
|
839
1049
|
}
|
|
840
1050
|
}
|
|
841
|
-
class
|
|
1051
|
+
class ns {
|
|
842
1052
|
constructor(e) {
|
|
843
1053
|
this.name = U.EXT_MESH_GPU_INSTANCING, this.parser = e;
|
|
844
1054
|
}
|
|
@@ -852,24 +1062,24 @@ class Zi {
|
|
|
852
1062
|
return i.length < 1 ? null : (i.push(this.parser.createNodeMesh(e)), Promise.all(i).then((l) => {
|
|
853
1063
|
const h = l.pop(), b = h.isGroup ? h.children : [h], g = l[0].count, f = [];
|
|
854
1064
|
for (const I of b) {
|
|
855
|
-
const u = new
|
|
856
|
-
for (let x = 0; x < g; x++) n.TRANSLATION && p.fromBufferAttribute(n.TRANSLATION, x), n.ROTATION && m.fromBufferAttribute(n.ROTATION, x), n.SCALE &&
|
|
1065
|
+
const u = new it(), p = new K(), m = new aA(), C = new K(1, 1, 1), E = new JA(I.geometry, I.material, g);
|
|
1066
|
+
for (let x = 0; x < g; x++) n.TRANSLATION && p.fromBufferAttribute(n.TRANSLATION, x), n.ROTATION && m.fromBufferAttribute(n.ROTATION, x), n.SCALE && C.fromBufferAttribute(n.SCALE, x), E.setMatrixAt(x, u.compose(p, m, C));
|
|
857
1067
|
for (const x in n) if (x === "_COLOR_0") {
|
|
858
1068
|
const w = n[x];
|
|
859
|
-
|
|
1069
|
+
E.instanceColor = new Zt(w.array, w.itemSize, w.normalized);
|
|
860
1070
|
} else x !== "TRANSLATION" && x !== "ROTATION" && x !== "SCALE" && I.geometry.setAttribute(x, n[x]);
|
|
861
|
-
|
|
1071
|
+
AA.prototype.copy.call(E, I), this.parser.assignFinalMaterial(E), f.push(E);
|
|
862
1072
|
}
|
|
863
1073
|
return h.isGroup ? (h.clear(), h.add(...f), h) : f[0];
|
|
864
1074
|
}));
|
|
865
1075
|
}
|
|
866
1076
|
}
|
|
867
|
-
const
|
|
868
|
-
class
|
|
1077
|
+
const lA = "glTF", os = 1313821514, cs = 5130562;
|
|
1078
|
+
class ds {
|
|
869
1079
|
constructor(e) {
|
|
870
1080
|
this.name = U.KHR_BINARY_GLTF, this.content = null, this.body = null;
|
|
871
1081
|
const t = new DataView(e, 0, 12), a = new TextDecoder();
|
|
872
|
-
if (this.header = { magic: a.decode(new Uint8Array(e.slice(0, 4))), version: t.getUint32(4, !0), length: t.getUint32(8, !0) }, this.header.magic !==
|
|
1082
|
+
if (this.header = { magic: a.decode(new Uint8Array(e.slice(0, 4))), version: t.getUint32(4, !0), length: t.getUint32(8, !0) }, this.header.magic !== lA) throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");
|
|
873
1083
|
if (this.header.version < 2) throw new Error("THREE.GLTFLoader: Legacy binary file detected.");
|
|
874
1084
|
const A = this.header.length - 12, s = new DataView(e, 12);
|
|
875
1085
|
let i = 0;
|
|
@@ -877,10 +1087,10 @@ class ts {
|
|
|
877
1087
|
const n = s.getUint32(i, !0);
|
|
878
1088
|
i += 4;
|
|
879
1089
|
const l = s.getUint32(i, !0);
|
|
880
|
-
if (i += 4, l ===
|
|
1090
|
+
if (i += 4, l === os) {
|
|
881
1091
|
const h = new Uint8Array(e, 12 + i, n);
|
|
882
1092
|
this.content = a.decode(h);
|
|
883
|
-
} else if (l ===
|
|
1093
|
+
} else if (l === cs) {
|
|
884
1094
|
const h = 12 + i;
|
|
885
1095
|
this.body = e.slice(h, h + n);
|
|
886
1096
|
}
|
|
@@ -889,7 +1099,7 @@ class ts {
|
|
|
889
1099
|
if (this.content === null) throw new Error("THREE.GLTFLoader: JSON content not found.");
|
|
890
1100
|
}
|
|
891
1101
|
}
|
|
892
|
-
class
|
|
1102
|
+
class hs {
|
|
893
1103
|
constructor(e, t) {
|
|
894
1104
|
if (!t) throw new Error("THREE.GLTFLoader: No DRACOLoader instance provided.");
|
|
895
1105
|
this.name = U.KHR_DRACO_MESH_COMPRESSION, this.json = e, this.dracoLoader = t, this.dracoLoader.preload();
|
|
@@ -897,13 +1107,13 @@ class as {
|
|
|
897
1107
|
decodePrimitive(e, t) {
|
|
898
1108
|
const a = this.json, A = this.dracoLoader, s = e.extensions[this.name].bufferView, i = e.extensions[this.name].attributes, n = {}, l = {}, h = {};
|
|
899
1109
|
for (const b in i) {
|
|
900
|
-
const g =
|
|
1110
|
+
const g = aa[b] || b.toLowerCase();
|
|
901
1111
|
n[g] = i[b];
|
|
902
1112
|
}
|
|
903
1113
|
for (const b in e.attributes) {
|
|
904
|
-
const g =
|
|
1114
|
+
const g = aa[b] || b.toLowerCase();
|
|
905
1115
|
if (i[b] !== void 0) {
|
|
906
|
-
const f = a.accessors[e.attributes[b]], I =
|
|
1116
|
+
const f = a.accessors[e.attributes[b]], I = tt[f.componentType];
|
|
907
1117
|
h[g] = I.name, l[g] = f.normalized === !0;
|
|
908
1118
|
}
|
|
909
1119
|
}
|
|
@@ -920,7 +1130,7 @@ class as {
|
|
|
920
1130
|
});
|
|
921
1131
|
}
|
|
922
1132
|
}
|
|
923
|
-
class
|
|
1133
|
+
class ls {
|
|
924
1134
|
constructor() {
|
|
925
1135
|
this.name = U.KHR_TEXTURE_TRANSFORM;
|
|
926
1136
|
}
|
|
@@ -928,12 +1138,12 @@ class As {
|
|
|
928
1138
|
return (t.texCoord !== void 0 && t.texCoord !== e.channel || t.offset !== void 0 || t.rotation !== void 0 || t.scale !== void 0) && (e = e.clone(), t.texCoord !== void 0 && (e.channel = t.texCoord), t.offset !== void 0 && e.offset.fromArray(t.offset), t.rotation !== void 0 && (e.rotation = t.rotation), t.scale !== void 0 && e.repeat.fromArray(t.scale), e.needsUpdate = !0), e;
|
|
929
1139
|
}
|
|
930
1140
|
}
|
|
931
|
-
class
|
|
1141
|
+
class bs {
|
|
932
1142
|
constructor() {
|
|
933
1143
|
this.name = U.KHR_MESH_QUANTIZATION;
|
|
934
1144
|
}
|
|
935
1145
|
}
|
|
936
|
-
class
|
|
1146
|
+
class bA extends Ii {
|
|
937
1147
|
constructor(e, t, a, A) {
|
|
938
1148
|
super(e, t, a, A);
|
|
939
1149
|
}
|
|
@@ -943,52 +1153,52 @@ class rA extends di {
|
|
|
943
1153
|
return t;
|
|
944
1154
|
}
|
|
945
1155
|
interpolate_(e, t, a, A) {
|
|
946
|
-
const s = this.resultBuffer, i = this.sampleValues, n = this.valueSize, l = 2 * n, h = 3 * n, b = A - t, g = (a - t) / b, f = g * g, I = f * g, u = e * h, p = u - h, m = -2 * I + 3 * f,
|
|
1156
|
+
const s = this.resultBuffer, i = this.sampleValues, n = this.valueSize, l = 2 * n, h = 3 * n, b = A - t, g = (a - t) / b, f = g * g, I = f * g, u = e * h, p = u - h, m = -2 * I + 3 * f, C = I - f, E = 1 - m, x = C - f + g;
|
|
947
1157
|
for (let w = 0; w !== n; w++) {
|
|
948
|
-
const M = i[p + w + n],
|
|
949
|
-
s[w] =
|
|
1158
|
+
const M = i[p + w + n], T = i[p + w + l] * b, v = i[u + w + n], k = i[u + w] * b;
|
|
1159
|
+
s[w] = E * M + x * T + m * v + C * k;
|
|
950
1160
|
}
|
|
951
1161
|
return s;
|
|
952
1162
|
}
|
|
953
1163
|
}
|
|
954
|
-
const
|
|
955
|
-
class
|
|
1164
|
+
const gs = new aA();
|
|
1165
|
+
class fs extends bA {
|
|
956
1166
|
interpolate_(e, t, a, A) {
|
|
957
1167
|
const s = super.interpolate_(e, t, a, A);
|
|
958
|
-
return
|
|
1168
|
+
return gs.fromArray(s).normalize().toArray(s), s;
|
|
959
1169
|
}
|
|
960
1170
|
}
|
|
961
|
-
const ce = { FLOAT: 5126, FLOAT_MAT3: 35675, FLOAT_MAT4: 35676, FLOAT_VEC2: 35664, FLOAT_VEC3: 35665, FLOAT_VEC4: 35666, LINEAR: 9729, REPEAT: 10497, SAMPLER_2D: 35678, POINTS: 0, LINES: 1, LINE_LOOP: 2, LINE_STRIP: 3, TRIANGLES: 4, TRIANGLE_STRIP: 5, TRIANGLE_FAN: 6, UNSIGNED_BYTE: 5121, UNSIGNED_SHORT: 5123 },
|
|
962
|
-
function Ke(
|
|
963
|
-
for (const a in t.extensions)
|
|
1171
|
+
const ce = { FLOAT: 5126, FLOAT_MAT3: 35675, FLOAT_MAT4: 35676, FLOAT_VEC2: 35664, FLOAT_VEC3: 35665, FLOAT_VEC4: 35666, LINEAR: 9729, REPEAT: 10497, SAMPLER_2D: 35678, POINTS: 0, LINES: 1, LINE_LOOP: 2, LINE_STRIP: 3, TRIANGLES: 4, TRIANGLE_STRIP: 5, TRIANGLE_FAN: 6, UNSIGNED_BYTE: 5121, UNSIGNED_SHORT: 5123 }, tt = { 5120: Int8Array, 5121: Uint8Array, 5122: Int16Array, 5123: Uint16Array, 5125: Uint32Array, 5126: Float32Array }, Ta = { 9728: P, 9729: ut, 9984: di, 9985: hi, 9986: li, 9987: ha }, Sa = { 33071: bi, 33648: gi, 10497: $t }, St = { SCALAR: 1, VEC2: 2, VEC3: 3, VEC4: 4, MAT2: 4, MAT3: 9, MAT4: 16 }, aa = { POSITION: "position", NORMAL: "normal", TANGENT: "tangent", TEXCOORD_0: "uv", TEXCOORD_1: "uv1", TEXCOORD_2: "uv2", TEXCOORD_3: "uv3", COLOR_0: "color", WEIGHTS_0: "skinWeight", JOINTS_0: "skinIndex" }, Ge = { scale: "scale", translation: "position", rotation: "quaternion", weights: "morphTargetInfluences" }, us = { CUBICSPLINE: void 0, LINEAR: sA, STEP: fi }, Is = "OPAQUE", ps = "MASK", Bs = "BLEND";
|
|
1172
|
+
function Ke(o, e, t) {
|
|
1173
|
+
for (const a in t.extensions) o[a] === void 0 && (e.userData.gltfExtensions = e.userData.gltfExtensions || {}, e.userData.gltfExtensions[a] = t.extensions[a]);
|
|
964
1174
|
}
|
|
965
|
-
function ke(
|
|
966
|
-
e.extras !== void 0 && (typeof e.extras == "object" ? Object.assign(
|
|
1175
|
+
function ke(o, e) {
|
|
1176
|
+
e.extras !== void 0 && (typeof e.extras == "object" ? Object.assign(o.userData, e.extras) : console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, " + e.extras));
|
|
967
1177
|
}
|
|
968
|
-
function
|
|
969
|
-
if (
|
|
1178
|
+
function ms(o, e) {
|
|
1179
|
+
if (o.updateMorphTargets(), e.weights !== void 0) for (let t = 0, a = e.weights.length; t < a; t++) o.morphTargetInfluences[t] = e.weights[t];
|
|
970
1180
|
if (e.extras && Array.isArray(e.extras.targetNames)) {
|
|
971
1181
|
const t = e.extras.targetNames;
|
|
972
|
-
if (
|
|
973
|
-
|
|
974
|
-
for (let a = 0, A = t.length; a < A; a++)
|
|
1182
|
+
if (o.morphTargetInfluences.length === t.length) {
|
|
1183
|
+
o.morphTargetDictionary = {};
|
|
1184
|
+
for (let a = 0, A = t.length; a < A; a++) o.morphTargetDictionary[t[a]] = a;
|
|
975
1185
|
} else console.warn("THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.");
|
|
976
1186
|
}
|
|
977
1187
|
}
|
|
978
|
-
function
|
|
1188
|
+
function Cs(o) {
|
|
979
1189
|
let e;
|
|
980
|
-
const t =
|
|
981
|
-
if (e = t ? "draco:" + t.bufferView + ":" + t.indices + ":" +
|
|
1190
|
+
const t = o.extensions && o.extensions[U.KHR_DRACO_MESH_COMPRESSION];
|
|
1191
|
+
if (e = t ? "draco:" + t.bufferView + ":" + t.indices + ":" + Ft(t.attributes) : o.indices + ":" + Ft(o.attributes) + ":" + o.mode, o.targets !== void 0) for (let a = 0, A = o.targets.length; a < A; a++) e += ":" + Ft(o.targets[a]);
|
|
982
1192
|
return e;
|
|
983
1193
|
}
|
|
984
|
-
function
|
|
1194
|
+
function Ft(o) {
|
|
985
1195
|
let e = "";
|
|
986
|
-
const t = Object.keys(
|
|
987
|
-
for (let a = 0, A = t.length; a < A; a++) e += t[a] + ":" +
|
|
1196
|
+
const t = Object.keys(o).sort();
|
|
1197
|
+
for (let a = 0, A = t.length; a < A; a++) e += t[a] + ":" + o[t[a]] + ";";
|
|
988
1198
|
return e;
|
|
989
1199
|
}
|
|
990
|
-
function
|
|
991
|
-
switch (
|
|
1200
|
+
function Aa(o) {
|
|
1201
|
+
switch (o) {
|
|
992
1202
|
case Int8Array:
|
|
993
1203
|
return 1 / 127;
|
|
994
1204
|
case Uint8Array:
|
|
@@ -1001,10 +1211,10 @@ function ea(c) {
|
|
|
1001
1211
|
throw new Error("THREE.GLTFLoader: Unsupported normalized accessor component type.");
|
|
1002
1212
|
}
|
|
1003
1213
|
}
|
|
1004
|
-
const
|
|
1005
|
-
class
|
|
1214
|
+
const Es = new it();
|
|
1215
|
+
class Qs {
|
|
1006
1216
|
constructor(e = {}, t = {}) {
|
|
1007
|
-
this.json = e, this.extensions = {}, this.plugins = {}, this.options = t, this.cache = new
|
|
1217
|
+
this.json = e, this.extensions = {}, this.plugins = {}, this.options = t, this.cache = new Hi(), this.associations = /* @__PURE__ */ new Map(), this.primitiveCache = {}, this.nodeCache = {}, this.meshCache = { refs: {}, uses: {} }, this.cameraCache = { refs: {}, uses: {} }, this.lightCache = { refs: {}, uses: {} }, this.sourceCache = {}, this.textureCache = {}, this.nodeNamesUsed = {};
|
|
1008
1218
|
let a = !1, A = -1, s = !1, i = -1;
|
|
1009
1219
|
if (typeof navigator < "u") {
|
|
1010
1220
|
const n = navigator.userAgent;
|
|
@@ -1012,7 +1222,7 @@ class gs {
|
|
|
1012
1222
|
const l = n.match(/Version\/(\d+)/);
|
|
1013
1223
|
A = a && l ? parseInt(l[1], 10) : -1, s = n.indexOf("Firefox") > -1, i = s ? n.match(/Firefox\/([0-9]+)\./)[1] : -1;
|
|
1014
1224
|
}
|
|
1015
|
-
typeof createImageBitmap > "u" || a && A < 17 || s && i < 98 ? this.textureLoader = new
|
|
1225
|
+
typeof createImageBitmap > "u" || a && A < 17 || s && i < 98 ? this.textureLoader = new KA(this.options.manager) : this.textureLoader = new zA(this.options.manager), this.textureLoader.setCrossOrigin(this.options.crossOrigin), this.textureLoader.setRequestHeader(this.options.requestHeader), this.fileLoader = new Xe(this.options.manager), this.fileLoader.setResponseType("arraybuffer"), this.options.crossOrigin === "use-credentials" && this.fileLoader.setWithCredentials(!0);
|
|
1016
1226
|
}
|
|
1017
1227
|
setExtensions(e) {
|
|
1018
1228
|
this.extensions = e;
|
|
@@ -1155,7 +1365,7 @@ class gs {
|
|
|
1155
1365
|
if (t.uri === void 0 && e === 0) return Promise.resolve(this.extensions[U.KHR_BINARY_GLTF].body);
|
|
1156
1366
|
const A = this.options;
|
|
1157
1367
|
return new Promise(function(s, i) {
|
|
1158
|
-
a.load(
|
|
1368
|
+
a.load(lt.resolveURL(t.uri, A.path), s, void 0, function() {
|
|
1159
1369
|
i(new Error('THREE.GLTFLoader: Failed to load buffer "' + t.uri + '".'));
|
|
1160
1370
|
});
|
|
1161
1371
|
});
|
|
@@ -1170,24 +1380,24 @@ class gs {
|
|
|
1170
1380
|
loadAccessor(e) {
|
|
1171
1381
|
const t = this, a = this.json, A = this.json.accessors[e];
|
|
1172
1382
|
if (A.bufferView === void 0 && A.sparse === void 0) {
|
|
1173
|
-
const i =
|
|
1174
|
-
return Promise.resolve(new
|
|
1383
|
+
const i = St[A.type], n = tt[A.componentType], l = A.normalized === !0, h = new n(A.count * i);
|
|
1384
|
+
return Promise.resolve(new Pe(h, i, l));
|
|
1175
1385
|
}
|
|
1176
1386
|
const s = [];
|
|
1177
1387
|
return A.bufferView !== void 0 ? s.push(this.getDependency("bufferView", A.bufferView)) : s.push(null), A.sparse !== void 0 && (s.push(this.getDependency("bufferView", A.sparse.indices.bufferView)), s.push(this.getDependency("bufferView", A.sparse.values.bufferView))), Promise.all(s).then(function(i) {
|
|
1178
|
-
const n = i[0], l =
|
|
1388
|
+
const n = i[0], l = St[A.type], h = tt[A.componentType], b = h.BYTES_PER_ELEMENT, g = b * l, f = A.byteOffset || 0, I = A.bufferView !== void 0 ? a.bufferViews[A.bufferView].byteStride : void 0, u = A.normalized === !0;
|
|
1179
1389
|
let p, m;
|
|
1180
1390
|
if (I && I !== g) {
|
|
1181
|
-
const
|
|
1182
|
-
let x = t.cache.get(
|
|
1183
|
-
x || (p = new h(n,
|
|
1184
|
-
} else p = n === null ? new h(A.count * l) : new h(n, f, A.count * l), m = new
|
|
1391
|
+
const C = Math.floor(f / I), E = "InterleavedBuffer:" + A.bufferView + ":" + A.componentType + ":" + C + ":" + A.count;
|
|
1392
|
+
let x = t.cache.get(E);
|
|
1393
|
+
x || (p = new h(n, C * I, A.count * I / b), x = new VA(p, I / b), t.cache.add(E, x)), m = new YA(x, l, f % I / b, u);
|
|
1394
|
+
} else p = n === null ? new h(A.count * l) : new h(n, f, A.count * l), m = new Pe(p, l, u);
|
|
1185
1395
|
if (A.sparse !== void 0) {
|
|
1186
|
-
const
|
|
1187
|
-
n !== null && (m = new
|
|
1188
|
-
for (let
|
|
1189
|
-
const R = M[
|
|
1190
|
-
if (m.setX(R, v
|
|
1396
|
+
const C = St.SCALAR, E = tt[A.sparse.indices.componentType], x = A.sparse.indices.byteOffset || 0, w = A.sparse.values.byteOffset || 0, M = new E(i[1], x, A.sparse.count * C), T = new h(i[2], w, A.sparse.count * l);
|
|
1397
|
+
n !== null && (m = new Pe(m.array.slice(), m.itemSize, m.normalized)), m.normalized = !1;
|
|
1398
|
+
for (let v = 0, k = M.length; v < k; v++) {
|
|
1399
|
+
const R = M[v];
|
|
1400
|
+
if (m.setX(R, T[v * l]), l >= 2 && m.setY(R, T[v * l + 1]), l >= 3 && m.setZ(R, T[v * l + 2]), l >= 4 && m.setW(R, T[v * l + 3]), l >= 5) throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.");
|
|
1191
1401
|
}
|
|
1192
1402
|
m.normalized = u;
|
|
1193
1403
|
}
|
|
@@ -1209,7 +1419,7 @@ class gs {
|
|
|
1209
1419
|
const h = this.loadImageSource(t, a).then(function(b) {
|
|
1210
1420
|
b.flipY = !1, b.name = i.name || n.name || "", b.name === "" && typeof n.uri == "string" && n.uri.startsWith("data:image/") === !1 && (b.name = n.uri);
|
|
1211
1421
|
const g = (s.samplers || {})[i.sampler] || {};
|
|
1212
|
-
return b.magFilter =
|
|
1422
|
+
return b.magFilter = Ta[g.magFilter] || ut, b.minFilter = Ta[g.minFilter] || ha, b.wrapS = Sa[g.wrapS] || $t, b.wrapT = Sa[g.wrapT] || $t, b.generateMipmaps = !b.isCompressedTexture && b.minFilter !== P && b.minFilter !== ut, A.associations.set(b, { textures: e }), b;
|
|
1213
1423
|
}).catch(function() {
|
|
1214
1424
|
return null;
|
|
1215
1425
|
});
|
|
@@ -1230,9 +1440,9 @@ class gs {
|
|
|
1230
1440
|
return new Promise(function(f, I) {
|
|
1231
1441
|
let u = f;
|
|
1232
1442
|
t.isImageBitmapLoader === !0 && (u = function(p) {
|
|
1233
|
-
const m = new
|
|
1443
|
+
const m = new ua(p);
|
|
1234
1444
|
m.needsUpdate = !0, f(m);
|
|
1235
|
-
}), t.load(
|
|
1445
|
+
}), t.load(lt.resolveURL(g, s.path), u, void 0, I);
|
|
1236
1446
|
});
|
|
1237
1447
|
}).then(function(g) {
|
|
1238
1448
|
var f;
|
|
@@ -1263,11 +1473,11 @@ class gs {
|
|
|
1263
1473
|
if (e.isPoints) {
|
|
1264
1474
|
const n = "PointsMaterial:" + a.uuid;
|
|
1265
1475
|
let l = this.cache.get(n);
|
|
1266
|
-
l || (l = new
|
|
1476
|
+
l || (l = new WA(), jt.prototype.copy.call(l, a), l.color.copy(a.color), l.map = a.map, l.sizeAttenuation = !1, this.cache.add(n, l)), a = l;
|
|
1267
1477
|
} else if (e.isLine) {
|
|
1268
1478
|
const n = "LineBasicMaterial:" + a.uuid;
|
|
1269
1479
|
let l = this.cache.get(n);
|
|
1270
|
-
l || (l = new
|
|
1480
|
+
l || (l = new XA(), jt.prototype.copy.call(l, a), l.color.copy(a.color), l.map = a.map, this.cache.add(n, l)), a = l;
|
|
1271
1481
|
}
|
|
1272
1482
|
if (A || s || i) {
|
|
1273
1483
|
let n = "ClonedMaterial:" + a.uuid + ":";
|
|
@@ -1278,7 +1488,7 @@ class gs {
|
|
|
1278
1488
|
e.material = a;
|
|
1279
1489
|
}
|
|
1280
1490
|
getMaterialType() {
|
|
1281
|
-
return
|
|
1491
|
+
return fa;
|
|
1282
1492
|
}
|
|
1283
1493
|
loadMaterial(e) {
|
|
1284
1494
|
const t = this, a = this.json, A = this.extensions, s = a.materials[e];
|
|
@@ -1293,45 +1503,45 @@ class gs {
|
|
|
1293
1503
|
const g = b.baseColorFactor;
|
|
1294
1504
|
n.color.setRGB(g[0], g[1], g[2], be), n.opacity = g[3];
|
|
1295
1505
|
}
|
|
1296
|
-
b.baseColorTexture !== void 0 && l.push(t.assignTexture(n, "map", b.baseColorTexture,
|
|
1506
|
+
b.baseColorTexture !== void 0 && l.push(t.assignTexture(n, "map", b.baseColorTexture, ve)), n.metalness = b.metallicFactor !== void 0 ? b.metallicFactor : 1, n.roughness = b.roughnessFactor !== void 0 ? b.roughnessFactor : 1, b.metallicRoughnessTexture !== void 0 && (l.push(t.assignTexture(n, "metalnessMap", b.metallicRoughnessTexture)), l.push(t.assignTexture(n, "roughnessMap", b.metallicRoughnessTexture))), i = this._invokeOne(function(g) {
|
|
1297
1507
|
return g.getMaterialType && g.getMaterialType(e);
|
|
1298
1508
|
}), l.push(Promise.all(this._invokeAll(function(g) {
|
|
1299
1509
|
return g.extendMaterialParams && g.extendMaterialParams(e, n);
|
|
1300
1510
|
})));
|
|
1301
1511
|
}
|
|
1302
|
-
s.doubleSided === !0 && (n.side =
|
|
1303
|
-
const h = s.alphaMode ||
|
|
1304
|
-
if (h ===
|
|
1512
|
+
s.doubleSided === !0 && (n.side = ZA);
|
|
1513
|
+
const h = s.alphaMode || Is;
|
|
1514
|
+
if (h === Bs ? (n.transparent = !0, n.depthWrite = !1) : (n.transparent = !1, h === ps && (n.alphaTest = s.alphaCutoff !== void 0 ? s.alphaCutoff : 0.5)), s.normalTexture !== void 0 && i !== ot && (l.push(t.assignTexture(n, "normalMap", s.normalTexture)), n.normalScale = new tA(1, 1), s.normalTexture.scale !== void 0)) {
|
|
1305
1515
|
const b = s.normalTexture.scale;
|
|
1306
1516
|
n.normalScale.set(b, b);
|
|
1307
1517
|
}
|
|
1308
|
-
if (s.occlusionTexture !== void 0 && i !==
|
|
1518
|
+
if (s.occlusionTexture !== void 0 && i !== ot && (l.push(t.assignTexture(n, "aoMap", s.occlusionTexture)), s.occlusionTexture.strength !== void 0 && (n.aoMapIntensity = s.occlusionTexture.strength)), s.emissiveFactor !== void 0 && i !== ot) {
|
|
1309
1519
|
const b = s.emissiveFactor;
|
|
1310
1520
|
n.emissive = new Oe().setRGB(b[0], b[1], b[2], be);
|
|
1311
1521
|
}
|
|
1312
|
-
return s.emissiveTexture !== void 0 && i !==
|
|
1522
|
+
return s.emissiveTexture !== void 0 && i !== ot && l.push(t.assignTexture(n, "emissiveMap", s.emissiveTexture, ve)), Promise.all(l).then(function() {
|
|
1313
1523
|
const b = new i(n);
|
|
1314
1524
|
return s.name && (b.name = s.name), ke(b, s), t.associations.set(b, { materials: e }), s.extensions && Ke(A, b, s), b;
|
|
1315
1525
|
});
|
|
1316
1526
|
}
|
|
1317
1527
|
createUniqueName(e) {
|
|
1318
|
-
const t =
|
|
1528
|
+
const t = $A.sanitizeNodeName(e || "");
|
|
1319
1529
|
return t in this.nodeNamesUsed ? t + "_" + ++this.nodeNamesUsed[t] : (this.nodeNamesUsed[t] = 0, t);
|
|
1320
1530
|
}
|
|
1321
1531
|
loadGeometries(e) {
|
|
1322
1532
|
const t = this, a = this.extensions, A = this.primitiveCache;
|
|
1323
1533
|
function s(n) {
|
|
1324
1534
|
return a[U.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(n, t).then(function(l) {
|
|
1325
|
-
return
|
|
1535
|
+
return Fa(l, n, t);
|
|
1326
1536
|
});
|
|
1327
1537
|
}
|
|
1328
1538
|
const i = [];
|
|
1329
1539
|
for (let n = 0, l = e.length; n < l; n++) {
|
|
1330
|
-
const h = e[n], b =
|
|
1540
|
+
const h = e[n], b = Cs(h), g = A[b];
|
|
1331
1541
|
if (g) i.push(g.promise);
|
|
1332
1542
|
else {
|
|
1333
1543
|
let f;
|
|
1334
|
-
f = h.extensions && h.extensions[U.KHR_DRACO_MESH_COMPRESSION] ? s(h) :
|
|
1544
|
+
f = h.extensions && h.extensions[U.KHR_DRACO_MESH_COMPRESSION] ? s(h) : Fa(new ca(), h, t), A[b] = { primitive: h, promise: f }, i.push(f);
|
|
1335
1545
|
}
|
|
1336
1546
|
}
|
|
1337
1547
|
return Promise.all(i);
|
|
@@ -1339,29 +1549,29 @@ class gs {
|
|
|
1339
1549
|
loadMesh(e) {
|
|
1340
1550
|
const t = this, a = this.json, A = this.extensions, s = a.meshes[e], i = s.primitives, n = [];
|
|
1341
1551
|
for (let h = 0, b = i.length; h < b; h++) {
|
|
1342
|
-
const g = i[h].material === void 0 ? ((l = this.cache).DefaultMaterial === void 0 && (l.DefaultMaterial = new
|
|
1552
|
+
const g = i[h].material === void 0 ? ((l = this.cache).DefaultMaterial === void 0 && (l.DefaultMaterial = new fa({ color: 16777215, emissive: 0, metalness: 1, roughness: 1, transparent: !1, depthTest: !0, side: wt })), l.DefaultMaterial) : this.getDependency("material", i[h].material);
|
|
1343
1553
|
n.push(g);
|
|
1344
1554
|
}
|
|
1345
1555
|
var l;
|
|
1346
1556
|
return n.push(t.loadGeometries(i)), Promise.all(n).then(function(h) {
|
|
1347
1557
|
const b = h.slice(0, h.length - 1), g = h[h.length - 1], f = [];
|
|
1348
1558
|
for (let u = 0, p = g.length; u < p; u++) {
|
|
1349
|
-
const m = g[u],
|
|
1350
|
-
let
|
|
1559
|
+
const m = g[u], C = i[u];
|
|
1560
|
+
let E;
|
|
1351
1561
|
const x = b[u];
|
|
1352
|
-
if (
|
|
1353
|
-
else if (
|
|
1354
|
-
else if (
|
|
1355
|
-
else if (
|
|
1562
|
+
if (C.mode === ce.TRIANGLES || C.mode === ce.TRIANGLE_STRIP || C.mode === ce.TRIANGLE_FAN || C.mode === void 0) E = s.isSkinnedMesh === !0 ? new ei(m, x) : new ea(m, x), E.isSkinnedMesh === !0 && E.normalizeSkinWeights(), C.mode === ce.TRIANGLE_STRIP ? E.geometry = va(E.geometry, eA) : C.mode === ce.TRIANGLE_FAN && (E.geometry = va(E.geometry, Xt));
|
|
1563
|
+
else if (C.mode === ce.LINES) E = new ti(m, x);
|
|
1564
|
+
else if (C.mode === ce.LINE_STRIP) E = new ai(m, x);
|
|
1565
|
+
else if (C.mode === ce.LINE_LOOP) E = new Ai(m, x);
|
|
1356
1566
|
else {
|
|
1357
|
-
if (
|
|
1358
|
-
|
|
1567
|
+
if (C.mode !== ce.POINTS) throw new Error("THREE.GLTFLoader: Primitive mode unsupported: " + C.mode);
|
|
1568
|
+
E = new ii(m, x);
|
|
1359
1569
|
}
|
|
1360
|
-
Object.keys(
|
|
1570
|
+
Object.keys(E.geometry.morphAttributes).length > 0 && ms(E, s), E.name = t.createUniqueName(s.name || "mesh_" + e), ke(E, s), C.extensions && Ke(A, E, C), t.assignFinalMaterial(E), f.push(E);
|
|
1361
1571
|
}
|
|
1362
1572
|
for (let u = 0, p = f.length; u < p; u++) t.associations.set(f[u], { meshes: e, primitives: u });
|
|
1363
1573
|
if (f.length === 1) return s.extensions && Ke(A, f[0], s), f[0];
|
|
1364
|
-
const I = new
|
|
1574
|
+
const I = new Rt();
|
|
1365
1575
|
s.extensions && Ke(A, I, s), t.associations.set(I, { meshes: e });
|
|
1366
1576
|
for (let u = 0, p = f.length; u < p; u++) I.add(f[u]);
|
|
1367
1577
|
return I;
|
|
@@ -1370,7 +1580,7 @@ class gs {
|
|
|
1370
1580
|
loadCamera(e) {
|
|
1371
1581
|
let t;
|
|
1372
1582
|
const a = this.json.cameras[e], A = a[a.type];
|
|
1373
|
-
if (A) return a.type === "perspective" ? t = new
|
|
1583
|
+
if (A) return a.type === "perspective" ? t = new si(ri.radToDeg(A.yfov), A.aspectRatio || 1, A.znear || 1, A.zfar || 2e6) : a.type === "orthographic" && (t = new iA(-A.xmag, A.xmag, A.ymag, -A.ymag, A.znear, A.zfar)), a.name && (t.name = this.createUniqueName(a.name)), ke(t, a), Promise.resolve(t);
|
|
1374
1584
|
console.warn("THREE.GLTFLoader: Missing camera parameters.");
|
|
1375
1585
|
}
|
|
1376
1586
|
loadSkin(e) {
|
|
@@ -1382,29 +1592,29 @@ class gs {
|
|
|
1382
1592
|
const g = i[h];
|
|
1383
1593
|
if (g) {
|
|
1384
1594
|
n.push(g);
|
|
1385
|
-
const f = new
|
|
1595
|
+
const f = new it();
|
|
1386
1596
|
s !== null && f.fromArray(s.array, 16 * h), l.push(f);
|
|
1387
1597
|
} else console.warn('THREE.GLTFLoader: Joint "%s" could not be found.', t.joints[h]);
|
|
1388
1598
|
}
|
|
1389
|
-
return new
|
|
1599
|
+
return new ni(n, l);
|
|
1390
1600
|
});
|
|
1391
1601
|
}
|
|
1392
1602
|
loadAnimation(e) {
|
|
1393
1603
|
const t = this.json, a = this, A = t.animations[e], s = A.name ? A.name : "animation_" + e, i = [], n = [], l = [], h = [], b = [];
|
|
1394
1604
|
for (let g = 0, f = A.channels.length; g < f; g++) {
|
|
1395
|
-
const I = A.channels[g], u = A.samplers[I.sampler], p = I.target, m = p.node,
|
|
1396
|
-
p.node !== void 0 && (i.push(this.getDependency("node", m)), n.push(this.getDependency("accessor",
|
|
1605
|
+
const I = A.channels[g], u = A.samplers[I.sampler], p = I.target, m = p.node, C = A.parameters !== void 0 ? A.parameters[u.input] : u.input, E = A.parameters !== void 0 ? A.parameters[u.output] : u.output;
|
|
1606
|
+
p.node !== void 0 && (i.push(this.getDependency("node", m)), n.push(this.getDependency("accessor", C)), l.push(this.getDependency("accessor", E)), h.push(u), b.push(p));
|
|
1397
1607
|
}
|
|
1398
1608
|
return Promise.all([Promise.all(i), Promise.all(n), Promise.all(l), Promise.all(h), Promise.all(b)]).then(function(g) {
|
|
1399
|
-
const f = g[0], I = g[1], u = g[2], p = g[3], m = g[4],
|
|
1400
|
-
for (let
|
|
1401
|
-
const w = f[
|
|
1609
|
+
const f = g[0], I = g[1], u = g[2], p = g[3], m = g[4], C = [];
|
|
1610
|
+
for (let E = 0, x = f.length; E < x; E++) {
|
|
1611
|
+
const w = f[E], M = I[E], T = u[E], v = p[E], k = m[E];
|
|
1402
1612
|
if (w === void 0) continue;
|
|
1403
1613
|
w.updateMatrix && w.updateMatrix();
|
|
1404
|
-
const R = a._createAnimationTracks(w, M,
|
|
1405
|
-
if (R) for (let S = 0; S < R.length; S++)
|
|
1614
|
+
const R = a._createAnimationTracks(w, M, T, v, k);
|
|
1615
|
+
if (R) for (let S = 0; S < R.length; S++) C.push(R[S]);
|
|
1406
1616
|
}
|
|
1407
|
-
return new
|
|
1617
|
+
return new oi(s, void 0, C);
|
|
1408
1618
|
});
|
|
1409
1619
|
}
|
|
1410
1620
|
createNodeMesh(e) {
|
|
@@ -1423,7 +1633,7 @@ class gs {
|
|
|
1423
1633
|
return Promise.all([A, Promise.all(s), n]).then(function(l) {
|
|
1424
1634
|
const h = l[0], b = l[1], g = l[2];
|
|
1425
1635
|
g !== null && h.traverse(function(f) {
|
|
1426
|
-
f.isSkinnedMesh && f.bind(g,
|
|
1636
|
+
f.isSkinnedMesh && f.bind(g, Es);
|
|
1427
1637
|
});
|
|
1428
1638
|
for (let f = 0, I = b.length; f < I; f++) h.add(b[f]);
|
|
1429
1639
|
return h;
|
|
@@ -1443,16 +1653,16 @@ class gs {
|
|
|
1443
1653
|
n.push(h);
|
|
1444
1654
|
}), this.nodeCache[e] = Promise.all(n).then(function(h) {
|
|
1445
1655
|
let b;
|
|
1446
|
-
if (b = s.isBone === !0 ? new
|
|
1656
|
+
if (b = s.isBone === !0 ? new ci() : h.length > 1 ? new Rt() : h.length === 1 ? h[0] : new AA(), b !== h[0]) for (let g = 0, f = h.length; g < f; g++) b.add(h[g]);
|
|
1447
1657
|
if (s.name && (b.userData.name = s.name, b.name = i), ke(b, s), s.extensions && Ke(a, b, s), s.matrix !== void 0) {
|
|
1448
|
-
const g = new
|
|
1658
|
+
const g = new it();
|
|
1449
1659
|
g.fromArray(s.matrix), b.applyMatrix4(g);
|
|
1450
1660
|
} else s.translation !== void 0 && b.position.fromArray(s.translation), s.rotation !== void 0 && b.quaternion.fromArray(s.rotation), s.scale !== void 0 && b.scale.fromArray(s.scale);
|
|
1451
1661
|
return A.associations.has(b) || A.associations.set(b, {}), A.associations.get(b).nodes = e, b;
|
|
1452
1662
|
}), this.nodeCache[e];
|
|
1453
1663
|
}
|
|
1454
1664
|
loadScene(e) {
|
|
1455
|
-
const t = this.extensions, a = this.json.scenes[e], A = this, s = new
|
|
1665
|
+
const t = this.extensions, a = this.json.scenes[e], A = this, s = new Rt();
|
|
1456
1666
|
a.name && (s.name = A.createUniqueName(a.name)), ke(s, a), a.extensions && Ke(t, s, a);
|
|
1457
1667
|
const i = a.nodes || [], n = [];
|
|
1458
1668
|
for (let l = 0, h = i.length; l < h; l++) n.push(A.getDependency("node", i[l]));
|
|
@@ -1460,7 +1670,7 @@ class gs {
|
|
|
1460
1670
|
for (let h = 0, b = l.length; h < b; h++) s.add(l[h]);
|
|
1461
1671
|
return A.associations = ((h) => {
|
|
1462
1672
|
const b = /* @__PURE__ */ new Map();
|
|
1463
|
-
for (const [g, f] of A.associations) (g instanceof
|
|
1673
|
+
for (const [g, f] of A.associations) (g instanceof jt || g instanceof ua) && b.set(g, f);
|
|
1464
1674
|
return h.traverse((g) => {
|
|
1465
1675
|
const f = A.associations.get(g);
|
|
1466
1676
|
f != null && b.set(g, f);
|
|
@@ -1475,19 +1685,19 @@ class gs {
|
|
|
1475
1685
|
f.morphTargetInfluences && l.push(f.name ? f.name : f.uuid);
|
|
1476
1686
|
}) : l.push(n), Ge[s.path]) {
|
|
1477
1687
|
case Ge.weights:
|
|
1478
|
-
h =
|
|
1688
|
+
h = pa;
|
|
1479
1689
|
break;
|
|
1480
1690
|
case Ge.rotation:
|
|
1481
|
-
h =
|
|
1691
|
+
h = Ba;
|
|
1482
1692
|
break;
|
|
1483
1693
|
case Ge.position:
|
|
1484
1694
|
case Ge.scale:
|
|
1485
|
-
h =
|
|
1695
|
+
h = Ia;
|
|
1486
1696
|
break;
|
|
1487
1697
|
default:
|
|
1488
|
-
a.itemSize === 1 ? h =
|
|
1698
|
+
a.itemSize === 1 ? h = pa : h = Ia;
|
|
1489
1699
|
}
|
|
1490
|
-
const b = A.interpolation !== void 0 ?
|
|
1700
|
+
const b = A.interpolation !== void 0 ? us[A.interpolation] : sA, g = this._getArrayFromAccessor(a);
|
|
1491
1701
|
for (let f = 0, I = l.length; f < I; f++) {
|
|
1492
1702
|
const u = new h(l[f] + "." + Ge[s.path], t.array, g, b);
|
|
1493
1703
|
A.interpolation === "CUBICSPLINE" && this._createCubicSplineTrackInterpolant(u), i.push(u);
|
|
@@ -1497,7 +1707,7 @@ class gs {
|
|
|
1497
1707
|
_getArrayFromAccessor(e) {
|
|
1498
1708
|
let t = e.array;
|
|
1499
1709
|
if (e.normalized) {
|
|
1500
|
-
const a =
|
|
1710
|
+
const a = Aa(t.constructor), A = new Float32Array(t.length);
|
|
1501
1711
|
for (let s = 0, i = t.length; s < i; s++) A[s] = t[s] * a;
|
|
1502
1712
|
t = A;
|
|
1503
1713
|
}
|
|
@@ -1505,35 +1715,35 @@ class gs {
|
|
|
1505
1715
|
}
|
|
1506
1716
|
_createCubicSplineTrackInterpolant(e) {
|
|
1507
1717
|
e.createInterpolant = function(t) {
|
|
1508
|
-
return new (this instanceof
|
|
1718
|
+
return new (this instanceof Ba ? fs : bA)(this.times, this.values, this.getValueSize() / 3, t);
|
|
1509
1719
|
}, e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline = !0;
|
|
1510
1720
|
}
|
|
1511
1721
|
}
|
|
1512
|
-
function
|
|
1722
|
+
function Fa(o, e, t) {
|
|
1513
1723
|
const a = e.attributes, A = [];
|
|
1514
1724
|
function s(i, n) {
|
|
1515
1725
|
return t.getDependency("accessor", i).then(function(l) {
|
|
1516
|
-
|
|
1726
|
+
o.setAttribute(n, l);
|
|
1517
1727
|
});
|
|
1518
1728
|
}
|
|
1519
1729
|
for (const i in a) {
|
|
1520
|
-
const n =
|
|
1521
|
-
n in
|
|
1730
|
+
const n = aa[i] || i.toLowerCase();
|
|
1731
|
+
n in o.attributes || A.push(s(a[i], n));
|
|
1522
1732
|
}
|
|
1523
|
-
if (e.indices !== void 0 && !
|
|
1733
|
+
if (e.indices !== void 0 && !o.index) {
|
|
1524
1734
|
const i = t.getDependency("accessor", e.indices).then(function(n) {
|
|
1525
|
-
|
|
1735
|
+
o.setIndex(n);
|
|
1526
1736
|
});
|
|
1527
1737
|
A.push(i);
|
|
1528
1738
|
}
|
|
1529
|
-
return
|
|
1530
|
-
const h = n.attributes, b = new
|
|
1739
|
+
return ta.workingColorSpace !== be && "COLOR_0" in a && console.warn(`THREE.GLTFLoader: Converting vertex colors from "srgb-linear" to "${ta.workingColorSpace}" not supported.`), ke(o, e), function(i, n, l) {
|
|
1740
|
+
const h = n.attributes, b = new oa();
|
|
1531
1741
|
if (h.POSITION === void 0) return;
|
|
1532
1742
|
{
|
|
1533
1743
|
const I = l.json.accessors[h.POSITION], u = I.min, p = I.max;
|
|
1534
1744
|
if (u === void 0 || p === void 0) return void console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");
|
|
1535
1745
|
if (b.set(new K(u[0], u[1], u[2]), new K(p[0], p[1], p[2])), I.normalized) {
|
|
1536
|
-
const m =
|
|
1746
|
+
const m = Aa(tt[I.componentType]);
|
|
1537
1747
|
b.min.multiplyScalar(m), b.max.multiplyScalar(m);
|
|
1538
1748
|
}
|
|
1539
1749
|
}
|
|
@@ -1541,12 +1751,12 @@ function Da(c, e, t) {
|
|
|
1541
1751
|
if (g !== void 0) {
|
|
1542
1752
|
const I = new K(), u = new K();
|
|
1543
1753
|
for (let p = 0, m = g.length; p < m; p++) {
|
|
1544
|
-
const
|
|
1545
|
-
if (
|
|
1546
|
-
const
|
|
1754
|
+
const C = g[p];
|
|
1755
|
+
if (C.POSITION !== void 0) {
|
|
1756
|
+
const E = l.json.accessors[C.POSITION], x = E.min, w = E.max;
|
|
1547
1757
|
if (x !== void 0 && w !== void 0) {
|
|
1548
|
-
if (u.setX(Math.max(Math.abs(x[0]), Math.abs(w[0]))), u.setY(Math.max(Math.abs(x[1]), Math.abs(w[1]))), u.setZ(Math.max(Math.abs(x[2]), Math.abs(w[2]))),
|
|
1549
|
-
const M =
|
|
1758
|
+
if (u.setX(Math.max(Math.abs(x[0]), Math.abs(w[0]))), u.setY(Math.max(Math.abs(x[1]), Math.abs(w[1]))), u.setZ(Math.max(Math.abs(x[2]), Math.abs(w[2]))), E.normalized) {
|
|
1759
|
+
const M = Aa(tt[E.componentType]);
|
|
1550
1760
|
u.multiplyScalar(M);
|
|
1551
1761
|
}
|
|
1552
1762
|
I.max(u);
|
|
@@ -1556,41 +1766,41 @@ function Da(c, e, t) {
|
|
|
1556
1766
|
b.expandByVector(I);
|
|
1557
1767
|
}
|
|
1558
1768
|
i.boundingBox = b;
|
|
1559
|
-
const f = new
|
|
1769
|
+
const f = new ui();
|
|
1560
1770
|
b.getCenter(f.center), f.radius = b.min.distanceTo(b.max) / 2, i.boundingSphere = f;
|
|
1561
|
-
}(
|
|
1771
|
+
}(o, e, t), Promise.all(A).then(function() {
|
|
1562
1772
|
return e.targets !== void 0 ? function(i, n, l) {
|
|
1563
1773
|
let h = !1, b = !1, g = !1;
|
|
1564
1774
|
for (let p = 0, m = n.length; p < m; p++) {
|
|
1565
|
-
const
|
|
1566
|
-
if (
|
|
1775
|
+
const C = n[p];
|
|
1776
|
+
if (C.POSITION !== void 0 && (h = !0), C.NORMAL !== void 0 && (b = !0), C.COLOR_0 !== void 0 && (g = !0), h && b && g) break;
|
|
1567
1777
|
}
|
|
1568
1778
|
if (!h && !b && !g) return Promise.resolve(i);
|
|
1569
1779
|
const f = [], I = [], u = [];
|
|
1570
1780
|
for (let p = 0, m = n.length; p < m; p++) {
|
|
1571
|
-
const
|
|
1781
|
+
const C = n[p];
|
|
1572
1782
|
if (h) {
|
|
1573
|
-
const
|
|
1574
|
-
f.push(
|
|
1783
|
+
const E = C.POSITION !== void 0 ? l.getDependency("accessor", C.POSITION) : i.attributes.position;
|
|
1784
|
+
f.push(E);
|
|
1575
1785
|
}
|
|
1576
1786
|
if (b) {
|
|
1577
|
-
const
|
|
1578
|
-
I.push(
|
|
1787
|
+
const E = C.NORMAL !== void 0 ? l.getDependency("accessor", C.NORMAL) : i.attributes.normal;
|
|
1788
|
+
I.push(E);
|
|
1579
1789
|
}
|
|
1580
1790
|
if (g) {
|
|
1581
|
-
const
|
|
1582
|
-
u.push(
|
|
1791
|
+
const E = C.COLOR_0 !== void 0 ? l.getDependency("accessor", C.COLOR_0) : i.attributes.color;
|
|
1792
|
+
u.push(E);
|
|
1583
1793
|
}
|
|
1584
1794
|
}
|
|
1585
1795
|
return Promise.all([Promise.all(f), Promise.all(I), Promise.all(u)]).then(function(p) {
|
|
1586
|
-
const m = p[0],
|
|
1587
|
-
return h && (i.morphAttributes.position = m), b && (i.morphAttributes.normal =
|
|
1796
|
+
const m = p[0], C = p[1], E = p[2];
|
|
1797
|
+
return h && (i.morphAttributes.position = m), b && (i.morphAttributes.normal = C), g && (i.morphAttributes.color = E), i.morphTargetsRelative = !0, i;
|
|
1588
1798
|
});
|
|
1589
|
-
}(
|
|
1799
|
+
}(o, e.targets, t) : o;
|
|
1590
1800
|
});
|
|
1591
1801
|
}
|
|
1592
|
-
const
|
|
1593
|
-
class
|
|
1802
|
+
const Lt = /* @__PURE__ */ new WeakMap();
|
|
1803
|
+
class gA extends da {
|
|
1594
1804
|
constructor(e) {
|
|
1595
1805
|
super(e), this.decoderPath = "", this.decoderConfig = {}, this.decoderBinary = null, this.decoderPending = null, this.workerLimit = 4, this.workerPool = [], this.workerNextTaskID = 1, this.workerSourceURL = "", this.defaultAttributeIDs = { position: "POSITION", normal: "NORMAL", color: "COLOR", uv: "TEX_COORD" }, this.defaultAttributeTypes = { position: "Float32Array", normal: "Float32Array", color: "Float32Array", uv: "Float32Array" };
|
|
1596
1806
|
}
|
|
@@ -1604,14 +1814,14 @@ class nA extends na {
|
|
|
1604
1814
|
return this.workerLimit = e, this;
|
|
1605
1815
|
}
|
|
1606
1816
|
load(e, t, a, A) {
|
|
1607
|
-
const s = new
|
|
1817
|
+
const s = new Xe(this.manager);
|
|
1608
1818
|
s.setPath(this.path), s.setResponseType("arraybuffer"), s.setRequestHeader(this.requestHeader), s.setWithCredentials(this.withCredentials), s.load(e, (i) => {
|
|
1609
1819
|
this.parse(i, t, A);
|
|
1610
1820
|
}, a, A);
|
|
1611
1821
|
}
|
|
1612
1822
|
parse(e, t, a = () => {
|
|
1613
1823
|
}) {
|
|
1614
|
-
this.decodeDracoFile(e, t, null, null,
|
|
1824
|
+
this.decodeDracoFile(e, t, null, null, ve, a).catch(a);
|
|
1615
1825
|
}
|
|
1616
1826
|
decodeDracoFile(e, t, a, A, s = be, i = () => {
|
|
1617
1827
|
}) {
|
|
@@ -1620,8 +1830,8 @@ class nA extends na {
|
|
|
1620
1830
|
}
|
|
1621
1831
|
decodeGeometry(e, t) {
|
|
1622
1832
|
const a = JSON.stringify(t);
|
|
1623
|
-
if (
|
|
1624
|
-
const l =
|
|
1833
|
+
if (Lt.has(e)) {
|
|
1834
|
+
const l = Lt.get(e);
|
|
1625
1835
|
if (l.key === a) return l.promise;
|
|
1626
1836
|
if (e.byteLength === 0) throw new Error("THREE.DRACOLoader: Unable to re-decode a buffer with different settings. Buffer has already been transferred.");
|
|
1627
1837
|
}
|
|
@@ -1631,24 +1841,24 @@ class nA extends na {
|
|
|
1631
1841
|
}))).then((l) => this._createGeometry(l.geometry));
|
|
1632
1842
|
return n.catch(() => !0).then(() => {
|
|
1633
1843
|
A && s && this._releaseTask(A, s);
|
|
1634
|
-
}),
|
|
1844
|
+
}), Lt.set(e, { key: a, promise: n }), n;
|
|
1635
1845
|
}
|
|
1636
1846
|
_createGeometry(e) {
|
|
1637
|
-
const t = new
|
|
1638
|
-
e.index && t.setIndex(new
|
|
1847
|
+
const t = new ca();
|
|
1848
|
+
e.index && t.setIndex(new Pe(e.index.array, 1));
|
|
1639
1849
|
for (let a = 0; a < e.attributes.length; a++) {
|
|
1640
|
-
const A = e.attributes[a], s = A.name, i = A.array, n = A.itemSize, l = new
|
|
1850
|
+
const A = e.attributes[a], s = A.name, i = A.array, n = A.itemSize, l = new Pe(i, n);
|
|
1641
1851
|
s === "color" && (this._assignVertexColorSpace(l, A.vertexColorSpace), l.normalized = !(i instanceof Float32Array)), t.setAttribute(s, l);
|
|
1642
1852
|
}
|
|
1643
1853
|
return t;
|
|
1644
1854
|
}
|
|
1645
1855
|
_assignVertexColorSpace(e, t) {
|
|
1646
|
-
if (t !==
|
|
1856
|
+
if (t !== ve) return;
|
|
1647
1857
|
const a = new Oe();
|
|
1648
|
-
for (let A = 0, s = e.count; A < s; A++) a.fromBufferAttribute(e, A),
|
|
1858
|
+
for (let A = 0, s = e.count; A < s; A++) a.fromBufferAttribute(e, A), ta.toWorkingColorSpace(a, ve), e.setXYZ(A, a.r, a.g, a.b);
|
|
1649
1859
|
}
|
|
1650
1860
|
_loadLibrary(e, t) {
|
|
1651
|
-
const a = new
|
|
1861
|
+
const a = new Xe(this.manager);
|
|
1652
1862
|
return a.setPath(this.decoderPath), a.setResponseType(t), a.setWithCredentials(this.withCredentials), new Promise((A, s) => {
|
|
1653
1863
|
a.load(e, A, void 0, s);
|
|
1654
1864
|
});
|
|
@@ -1662,7 +1872,7 @@ class nA extends na {
|
|
|
1662
1872
|
return e ? t.push(this._loadLibrary("draco_decoder.js", "text")) : (t.push(this._loadLibrary("draco_wasm_wrapper.js", "text")), t.push(this._loadLibrary("draco_decoder.wasm", "arraybuffer"))), this.decoderPending = Promise.all(t).then((a) => {
|
|
1663
1873
|
const A = a[0];
|
|
1664
1874
|
e || (this.decoderConfig.wasmBinary = a[1]);
|
|
1665
|
-
const s =
|
|
1875
|
+
const s = ys.toString(), i = ["/* draco decoder */", A, "", "/* worker */", s.substring(s.indexOf("{") + 1, s.lastIndexOf("}"))].join(`
|
|
1666
1876
|
`);
|
|
1667
1877
|
this.workerSourceURL = URL.createObjectURL(new Blob([i]));
|
|
1668
1878
|
}), this.decoderPending;
|
|
@@ -1702,8 +1912,8 @@ class nA extends na {
|
|
|
1702
1912
|
return this.workerPool.length = 0, this.workerSourceURL !== "" && URL.revokeObjectURL(this.workerSourceURL), this;
|
|
1703
1913
|
}
|
|
1704
1914
|
}
|
|
1705
|
-
function
|
|
1706
|
-
let
|
|
1915
|
+
function ys() {
|
|
1916
|
+
let o, e;
|
|
1707
1917
|
function t(a, A, s, i, n, l) {
|
|
1708
1918
|
const h = l.num_components(), b = s.num_points() * h, g = b * n.BYTES_PER_ELEMENT, f = function(p, m) {
|
|
1709
1919
|
switch (m) {
|
|
@@ -1731,10 +1941,10 @@ function fs() {
|
|
|
1731
1941
|
const A = a.data;
|
|
1732
1942
|
switch (A.type) {
|
|
1733
1943
|
case "init":
|
|
1734
|
-
|
|
1735
|
-
|
|
1944
|
+
o = A.decoderConfig, e = new Promise(function(n) {
|
|
1945
|
+
o.onModuleLoaded = function(l) {
|
|
1736
1946
|
n({ draco: l });
|
|
1737
|
-
}, DracoDecoderModule(
|
|
1947
|
+
}, DracoDecoderModule(o);
|
|
1738
1948
|
});
|
|
1739
1949
|
break;
|
|
1740
1950
|
case "decode":
|
|
@@ -1743,33 +1953,33 @@ function fs() {
|
|
|
1743
1953
|
const l = n.draco, h = new l.Decoder();
|
|
1744
1954
|
try {
|
|
1745
1955
|
const b = function(f, I, u, p) {
|
|
1746
|
-
const m = p.attributeIDs,
|
|
1747
|
-
let
|
|
1956
|
+
const m = p.attributeIDs, C = p.attributeTypes;
|
|
1957
|
+
let E, x;
|
|
1748
1958
|
const w = I.GetEncodedGeometryType(u);
|
|
1749
|
-
if (w === f.TRIANGULAR_MESH)
|
|
1959
|
+
if (w === f.TRIANGULAR_MESH) E = new f.Mesh(), x = I.DecodeArrayToMesh(u, u.byteLength, E);
|
|
1750
1960
|
else {
|
|
1751
1961
|
if (w !== f.POINT_CLOUD) throw new Error("THREE.DRACOLoader: Unexpected geometry type.");
|
|
1752
|
-
|
|
1962
|
+
E = new f.PointCloud(), x = I.DecodeArrayToPointCloud(u, u.byteLength, E);
|
|
1753
1963
|
}
|
|
1754
|
-
if (!x.ok() ||
|
|
1964
|
+
if (!x.ok() || E.ptr === 0) throw new Error("THREE.DRACOLoader: Decoding failed: " + x.error_msg());
|
|
1755
1965
|
const M = { index: null, attributes: [] };
|
|
1756
|
-
for (const
|
|
1757
|
-
const
|
|
1966
|
+
for (const T in m) {
|
|
1967
|
+
const v = self[C[T]];
|
|
1758
1968
|
let k, R;
|
|
1759
|
-
if (p.useUniqueIDs) R = m[
|
|
1969
|
+
if (p.useUniqueIDs) R = m[T], k = I.GetAttributeByUniqueId(E, R);
|
|
1760
1970
|
else {
|
|
1761
|
-
if (R = I.GetAttributeId(
|
|
1762
|
-
k = I.GetAttribute(
|
|
1971
|
+
if (R = I.GetAttributeId(E, f[m[T]]), R === -1) continue;
|
|
1972
|
+
k = I.GetAttribute(E, R);
|
|
1763
1973
|
}
|
|
1764
|
-
const S = t(f, I,
|
|
1765
|
-
|
|
1974
|
+
const S = t(f, I, E, T, v, k);
|
|
1975
|
+
T === "color" && (S.vertexColorSpace = p.vertexColorSpace), M.attributes.push(S);
|
|
1766
1976
|
}
|
|
1767
|
-
return w === f.TRIANGULAR_MESH && (M.index = function(
|
|
1768
|
-
const R = k.num_faces(), S = 3 * R, F = 4 * S, z =
|
|
1769
|
-
|
|
1770
|
-
const Ae = new Uint32Array(
|
|
1771
|
-
return
|
|
1772
|
-
}(f, I,
|
|
1977
|
+
return w === f.TRIANGULAR_MESH && (M.index = function(T, v, k) {
|
|
1978
|
+
const R = k.num_faces(), S = 3 * R, F = 4 * S, z = T._malloc(F);
|
|
1979
|
+
v.GetTrianglesUInt32Array(k, F, z);
|
|
1980
|
+
const Ae = new Uint32Array(T.HEAPF32.buffer, z, S).slice();
|
|
1981
|
+
return T._free(z), { array: Ae, itemSize: 1 };
|
|
1982
|
+
}(f, I, E)), f.destroy(E), M;
|
|
1773
1983
|
}(l, h, new Int8Array(s), i), g = b.attributes.map((f) => f.array.buffer);
|
|
1774
1984
|
b.index && g.push(b.index.array.buffer), self.postMessage({ type: "decode", id: A.id, geometry: b }, g);
|
|
1775
1985
|
} catch (b) {
|
|
@@ -1781,7 +1991,7 @@ function fs() {
|
|
|
1781
1991
|
}
|
|
1782
1992
|
};
|
|
1783
1993
|
}
|
|
1784
|
-
class
|
|
1994
|
+
class ws {
|
|
1785
1995
|
constructor(e = 4) {
|
|
1786
1996
|
this.pool = e, this.queue = [], this.workers = [], this.workersResolve = [], this.workerStatus = 0;
|
|
1787
1997
|
}
|
|
@@ -1818,13 +2028,13 @@ class us {
|
|
|
1818
2028
|
this.workers.forEach((e) => e.terminate()), this.workersResolve.length = 0, this.workers.length = 0, this.queue.length = 0, this.workerStatus = 0;
|
|
1819
2029
|
}
|
|
1820
2030
|
}
|
|
1821
|
-
const
|
|
1822
|
-
class
|
|
2031
|
+
const fA = 9, uA = 15, IA = 16, pA = 22, BA = 37, mA = 43, CA = 76, EA = 83, QA = 97, yA = 100, wA = 103, xA = 109, kA = 165, DA = 166, la = 1000066e3;
|
|
2032
|
+
class xs {
|
|
1823
2033
|
constructor() {
|
|
1824
2034
|
this.vkFormat = 0, this.typeSize = 1, this.pixelWidth = 0, this.pixelHeight = 0, this.pixelDepth = 0, this.layerCount = 0, this.faceCount = 1, this.supercompressionScheme = 0, this.levels = [], this.dataFormatDescriptor = [{ vendorId: 0, descriptorType: 0, descriptorBlockSize: 0, versionNumber: 2, colorModel: 0, colorPrimaries: 1, transferFunction: 2, flags: 0, texelBlockDimension: [0, 0, 0, 0], bytesPlane: [0, 0, 0, 0, 0, 0, 0, 0], samples: [] }], this.keyValue = {}, this.globalData = null;
|
|
1825
2035
|
}
|
|
1826
2036
|
}
|
|
1827
|
-
class
|
|
2037
|
+
class rt {
|
|
1828
2038
|
constructor(e, t, a, A) {
|
|
1829
2039
|
this._dataView = void 0, this._littleEndian = void 0, this._offset = void 0, this._dataView = new DataView(e.buffer, e.byteOffset + t, a), this._littleEndian = A, this._offset = 0;
|
|
1830
2040
|
}
|
|
@@ -1864,86 +2074,85 @@ class nt {
|
|
|
1864
2074
|
}
|
|
1865
2075
|
}
|
|
1866
2076
|
const ae = [171, 75, 84, 88, 32, 50, 48, 187, 13, 10, 26, 10];
|
|
1867
|
-
function
|
|
1868
|
-
return new TextDecoder().decode(
|
|
2077
|
+
function La(o) {
|
|
2078
|
+
return new TextDecoder().decode(o);
|
|
1869
2079
|
}
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
}
|
|
1873
|
-
for (var CA = {}, Bs = { byteLength: function(c) {
|
|
1874
|
-
var e = Ma(c), t = e[0], a = e[1];
|
|
2080
|
+
for (var jA = {}, bt = {}, ks = bt.byteLength = function(o) {
|
|
2081
|
+
var e = Ga(o), t = e[0], a = e[1];
|
|
1875
2082
|
return 3 * (t + a) / 4 - a;
|
|
1876
|
-
}, toByteArray
|
|
1877
|
-
var e, t, a =
|
|
2083
|
+
}, Ds = bt.toByteArray = function(o) {
|
|
2084
|
+
var e, t, a = Ga(o), A = a[0], s = a[1], i = new Rs(function(h, b, g) {
|
|
1878
2085
|
return 3 * (b + g) / 4 - g;
|
|
1879
2086
|
}(0, A, s)), n = 0, l = s > 0 ? A - 4 : A;
|
|
1880
|
-
for (t = 0; t < l; t += 4) e = oe[
|
|
1881
|
-
return s === 2 && (e = oe[
|
|
1882
|
-
}, fromByteArray
|
|
1883
|
-
for (var e, t =
|
|
1884
|
-
return a === 1 ? (e =
|
|
1885
|
-
}
|
|
1886
|
-
function
|
|
1887
|
-
var e =
|
|
2087
|
+
for (t = 0; t < l; t += 4) e = oe[o.charCodeAt(t)] << 18 | oe[o.charCodeAt(t + 1)] << 12 | oe[o.charCodeAt(t + 2)] << 6 | oe[o.charCodeAt(t + 3)], i[n++] = e >> 16 & 255, i[n++] = e >> 8 & 255, i[n++] = 255 & e;
|
|
2088
|
+
return s === 2 && (e = oe[o.charCodeAt(t)] << 2 | oe[o.charCodeAt(t + 1)] >> 4, i[n++] = 255 & e), s === 1 && (e = oe[o.charCodeAt(t)] << 10 | oe[o.charCodeAt(t + 1)] << 4 | oe[o.charCodeAt(t + 2)] >> 2, i[n++] = e >> 8 & 255, i[n++] = 255 & e), i;
|
|
2089
|
+
}, js = bt.fromByteArray = function(o) {
|
|
2090
|
+
for (var e, t = o.length, a = t % 3, A = [], s = 16383, i = 0, n = t - a; i < n; i += s) A.push(Ms(o, i, i + s > n ? n : i + s));
|
|
2091
|
+
return a === 1 ? (e = o[t - 1], A.push(pe[e >> 2] + pe[e << 4 & 63] + "==")) : a === 2 && (e = (o[t - 2] << 8) + o[t - 1], A.push(pe[e >> 10] + pe[e >> 4 & 63] + pe[e << 2 & 63] + "=")), A.join("");
|
|
2092
|
+
}, pe = [], oe = [], Rs = typeof Uint8Array < "u" ? Uint8Array : Array, Ua = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", Ze = 0; Ze < 64; ++Ze) pe[Ze] = Ua[Ze], oe[Ua.charCodeAt(Ze)] = Ze;
|
|
2093
|
+
function Ga(o) {
|
|
2094
|
+
var e = o.length;
|
|
1888
2095
|
if (e % 4 > 0) throw new Error("Invalid string. Length must be a multiple of 4");
|
|
1889
|
-
var t =
|
|
2096
|
+
var t = o.indexOf("=");
|
|
1890
2097
|
return t === -1 && (t = e), [t, t === e ? 0 : 4 - t % 4];
|
|
1891
2098
|
}
|
|
1892
|
-
function
|
|
1893
|
-
for (var a, A, s = [], i = e; i < t; i += 3) a = (
|
|
2099
|
+
function Ms(o, e, t) {
|
|
2100
|
+
for (var a, A, s = [], i = e; i < t; i += 3) a = (o[i] << 16 & 16711680) + (o[i + 1] << 8 & 65280) + (255 & o[i + 2]), s.push(pe[(A = a) >> 18 & 63] + pe[A >> 12 & 63] + pe[A >> 6 & 63] + pe[63 & A]);
|
|
1894
2101
|
return s.join("");
|
|
1895
2102
|
}
|
|
1896
2103
|
oe[45] = 62, oe[95] = 63;
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
for (g += f, s = I & (1 << -b) - 1, I >>= -b, b += n; b > 0; s = 256 * s + c[e + g], g += f, b -= 8) ;
|
|
1903
|
-
for (i = s & (1 << -b) - 1, s >>= -b, b += a; b > 0; i = 256 * i + c[e + g], g += f, b -= 8) ;
|
|
2104
|
+
const vs = pt(It({ __proto__: null, byteLength: ks, default: bt, fromByteArray: js, toByteArray: Ds }, [bt]));
|
|
2105
|
+
var kt = {}, Ts = kt.read = function(o, e, t, a, A) {
|
|
2106
|
+
var s, i, n = 8 * A - a - 1, l = (1 << n) - 1, h = l >> 1, b = -7, g = t ? A - 1 : 0, f = t ? -1 : 1, I = o[e + g];
|
|
2107
|
+
for (g += f, s = I & (1 << -b) - 1, I >>= -b, b += n; b > 0; s = 256 * s + o[e + g], g += f, b -= 8) ;
|
|
2108
|
+
for (i = s & (1 << -b) - 1, s >>= -b, b += a; b > 0; i = 256 * i + o[e + g], g += f, b -= 8) ;
|
|
1904
2109
|
if (s === 0) s = 1 - h;
|
|
1905
2110
|
else {
|
|
1906
2111
|
if (s === l) return i ? NaN : 1 / 0 * (I ? -1 : 1);
|
|
1907
2112
|
i += Math.pow(2, a), s -= h;
|
|
1908
2113
|
}
|
|
1909
2114
|
return (I ? -1 : 1) * i * Math.pow(2, s - a);
|
|
1910
|
-
},
|
|
2115
|
+
}, Ss = kt.write = function(o, e, t, a, A, s) {
|
|
1911
2116
|
var i, n, l, h = 8 * s - A - 1, b = (1 << h) - 1, g = b >> 1, f = A === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0, I = a ? 0 : s - 1, u = a ? 1 : -1, p = e < 0 || e === 0 && 1 / e < 0 ? 1 : 0;
|
|
1912
|
-
for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (n = isNaN(e) ? 1 : 0, i = b) : (i = Math.floor(Math.log(e) / Math.LN2), e * (l = Math.pow(2, -i)) < 1 && (i--, l *= 2), (e += i + g >= 1 ? f / l : f * Math.pow(2, 1 - g)) * l >= 2 && (i++, l /= 2), i + g >= b ? (n = 0, i = b) : i + g >= 1 ? (n = (e * l - 1) * Math.pow(2, A), i += g) : (n = e * Math.pow(2, g - 1) * Math.pow(2, A), i = 0)); A >= 8;
|
|
1913
|
-
for (i = i << A | n, h += A; h > 0;
|
|
1914
|
-
|
|
1915
|
-
}
|
|
2117
|
+
for (e = Math.abs(e), isNaN(e) || e === 1 / 0 ? (n = isNaN(e) ? 1 : 0, i = b) : (i = Math.floor(Math.log(e) / Math.LN2), e * (l = Math.pow(2, -i)) < 1 && (i--, l *= 2), (e += i + g >= 1 ? f / l : f * Math.pow(2, 1 - g)) * l >= 2 && (i++, l /= 2), i + g >= b ? (n = 0, i = b) : i + g >= 1 ? (n = (e * l - 1) * Math.pow(2, A), i += g) : (n = e * Math.pow(2, g - 1) * Math.pow(2, A), i = 0)); A >= 8; o[t + I] = 255 & n, I += u, n /= 256, A -= 8) ;
|
|
2118
|
+
for (i = i << A | n, h += A; h > 0; o[t + I] = 255 & i, I += u, i /= 256, h -= 8) ;
|
|
2119
|
+
o[t + I - u] |= 128 * p;
|
|
2120
|
+
};
|
|
2121
|
+
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
|
|
2122
|
+
const Fs = pt(It({ __proto__: null, default: kt, read: Ts, write: Ss }, [kt]));
|
|
2123
|
+
let Ut, xe, ia;
|
|
2124
|
+
/*!
|
|
1916
2125
|
* The buffer module from node.js, for the browser.
|
|
1917
2126
|
*
|
|
1918
2127
|
* @author Feross Aboukhadijeh <https://feross.org>
|
|
1919
2128
|
* @license MIT
|
|
1920
2129
|
*/
|
|
1921
|
-
function(
|
|
1922
|
-
const e =
|
|
1923
|
-
|
|
2130
|
+
(function(o) {
|
|
2131
|
+
const e = vs, t = Fs, a = typeof Symbol == "function" && typeof Symbol.for == "function" ? Symbol.for("nodejs.util.inspect.custom") : null;
|
|
2132
|
+
o.Buffer = i, o.SlowBuffer = function(r) {
|
|
1924
2133
|
return +r != r && (r = 0), i.alloc(+r);
|
|
1925
|
-
},
|
|
2134
|
+
}, o.INSPECT_MAX_BYTES = 50;
|
|
1926
2135
|
const A = 2147483647;
|
|
1927
2136
|
function s(r) {
|
|
1928
2137
|
if (r > A) throw new RangeError('The value "' + r + '" is invalid for option "size"');
|
|
1929
|
-
const
|
|
1930
|
-
return Object.setPrototypeOf(
|
|
2138
|
+
const c = new Uint8Array(r);
|
|
2139
|
+
return Object.setPrototypeOf(c, i.prototype), c;
|
|
1931
2140
|
}
|
|
1932
|
-
function i(r,
|
|
2141
|
+
function i(r, c, d) {
|
|
1933
2142
|
if (typeof r == "number") {
|
|
1934
|
-
if (typeof
|
|
2143
|
+
if (typeof c == "string") throw new TypeError('The "string" argument must be of type string. Received type number');
|
|
1935
2144
|
return h(r);
|
|
1936
2145
|
}
|
|
1937
|
-
return n(r,
|
|
2146
|
+
return n(r, c, d);
|
|
1938
2147
|
}
|
|
1939
|
-
function n(r,
|
|
2148
|
+
function n(r, c, d) {
|
|
1940
2149
|
if (typeof r == "string") return function(y, D) {
|
|
1941
2150
|
if (typeof D == "string" && D !== "" || (D = "utf8"), !i.isEncoding(D)) throw new TypeError("Unknown encoding: " + D);
|
|
1942
2151
|
const L = 0 | I(y, D);
|
|
1943
2152
|
let G = s(L);
|
|
1944
2153
|
const q = G.write(y, D);
|
|
1945
2154
|
return q !== L && (G = G.slice(0, q)), G;
|
|
1946
|
-
}(r,
|
|
2155
|
+
}(r, c);
|
|
1947
2156
|
if (ArrayBuffer.isView(r)) return function(y) {
|
|
1948
2157
|
if (Z(y, Uint8Array)) {
|
|
1949
2158
|
const D = new Uint8Array(y);
|
|
@@ -1952,20 +2161,20 @@ function(c) {
|
|
|
1952
2161
|
return b(y);
|
|
1953
2162
|
}(r);
|
|
1954
2163
|
if (r == null) throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof r);
|
|
1955
|
-
if (Z(r, ArrayBuffer) || r && Z(r.buffer, ArrayBuffer) || typeof SharedArrayBuffer < "u" && (Z(r, SharedArrayBuffer) || r && Z(r.buffer, SharedArrayBuffer))) return g(r,
|
|
2164
|
+
if (Z(r, ArrayBuffer) || r && Z(r.buffer, ArrayBuffer) || typeof SharedArrayBuffer < "u" && (Z(r, SharedArrayBuffer) || r && Z(r.buffer, SharedArrayBuffer))) return g(r, c, d);
|
|
1956
2165
|
if (typeof r == "number") throw new TypeError('The "value" argument must not be of type number. Received type number');
|
|
1957
2166
|
const B = r.valueOf && r.valueOf();
|
|
1958
|
-
if (B != null && B !== r) return i.from(B,
|
|
2167
|
+
if (B != null && B !== r) return i.from(B, c, d);
|
|
1959
2168
|
const Q = function(y) {
|
|
1960
2169
|
if (i.isBuffer(y)) {
|
|
1961
2170
|
const D = 0 | f(y.length), L = s(D);
|
|
1962
2171
|
return L.length === 0 || y.copy(L, 0, 0, D), L;
|
|
1963
2172
|
}
|
|
1964
|
-
if (y.length !== void 0) return typeof y.length != "number" ||
|
|
2173
|
+
if (y.length !== void 0) return typeof y.length != "number" || st(y.length) ? s(0) : b(y);
|
|
1965
2174
|
if (y.type === "Buffer" && Array.isArray(y.data)) return b(y.data);
|
|
1966
2175
|
}(r);
|
|
1967
2176
|
if (Q) return Q;
|
|
1968
|
-
if (typeof Symbol < "u" && Symbol.toPrimitive != null && typeof r[Symbol.toPrimitive] == "function") return i.from(r[Symbol.toPrimitive]("string"),
|
|
2177
|
+
if (typeof Symbol < "u" && Symbol.toPrimitive != null && typeof r[Symbol.toPrimitive] == "function") return i.from(r[Symbol.toPrimitive]("string"), c, d);
|
|
1969
2178
|
throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type " + typeof r);
|
|
1970
2179
|
}
|
|
1971
2180
|
function l(r) {
|
|
@@ -1976,28 +2185,28 @@ function(c) {
|
|
|
1976
2185
|
return l(r), s(r < 0 ? 0 : 0 | f(r));
|
|
1977
2186
|
}
|
|
1978
2187
|
function b(r) {
|
|
1979
|
-
const
|
|
1980
|
-
for (let B = 0; B <
|
|
2188
|
+
const c = r.length < 0 ? 0 : 0 | f(r.length), d = s(c);
|
|
2189
|
+
for (let B = 0; B < c; B += 1) d[B] = 255 & r[B];
|
|
1981
2190
|
return d;
|
|
1982
2191
|
}
|
|
1983
|
-
function g(r,
|
|
1984
|
-
if (
|
|
1985
|
-
if (r.byteLength <
|
|
2192
|
+
function g(r, c, d) {
|
|
2193
|
+
if (c < 0 || r.byteLength < c) throw new RangeError('"offset" is outside of buffer bounds');
|
|
2194
|
+
if (r.byteLength < c + (d || 0)) throw new RangeError('"length" is outside of buffer bounds');
|
|
1986
2195
|
let B;
|
|
1987
|
-
return B =
|
|
2196
|
+
return B = c === void 0 && d === void 0 ? new Uint8Array(r) : d === void 0 ? new Uint8Array(r, c) : new Uint8Array(r, c, d), Object.setPrototypeOf(B, i.prototype), B;
|
|
1988
2197
|
}
|
|
1989
2198
|
function f(r) {
|
|
1990
2199
|
if (r >= A) throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x" + A.toString(16) + " bytes");
|
|
1991
2200
|
return 0 | r;
|
|
1992
2201
|
}
|
|
1993
|
-
function I(r,
|
|
2202
|
+
function I(r, c) {
|
|
1994
2203
|
if (i.isBuffer(r)) return r.length;
|
|
1995
2204
|
if (ArrayBuffer.isView(r) || Z(r, ArrayBuffer)) return r.byteLength;
|
|
1996
2205
|
if (typeof r != "string") throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type ' + typeof r);
|
|
1997
2206
|
const d = r.length, B = arguments.length > 2 && arguments[2] === !0;
|
|
1998
2207
|
if (!B && d === 0) return 0;
|
|
1999
2208
|
let Q = !1;
|
|
2000
|
-
for (; ; ) switch (
|
|
2209
|
+
for (; ; ) switch (c) {
|
|
2001
2210
|
case "ascii":
|
|
2002
2211
|
case "latin1":
|
|
2003
2212
|
case "binary":
|
|
@@ -2013,59 +2222,59 @@ function(c) {
|
|
|
2013
2222
|
case "hex":
|
|
2014
2223
|
return d >>> 1;
|
|
2015
2224
|
case "base64":
|
|
2016
|
-
return
|
|
2225
|
+
return Ee(r).length;
|
|
2017
2226
|
default:
|
|
2018
2227
|
if (Q) return B ? -1 : ee(r).length;
|
|
2019
|
-
|
|
2228
|
+
c = ("" + c).toLowerCase(), Q = !0;
|
|
2020
2229
|
}
|
|
2021
2230
|
}
|
|
2022
|
-
function u(r,
|
|
2231
|
+
function u(r, c, d) {
|
|
2023
2232
|
let B = !1;
|
|
2024
|
-
if ((
|
|
2233
|
+
if ((c === void 0 || c < 0) && (c = 0), c > this.length || ((d === void 0 || d > this.length) && (d = this.length), d <= 0) || (d >>>= 0) <= (c >>>= 0)) return "";
|
|
2025
2234
|
for (r || (r = "utf8"); ; ) switch (r) {
|
|
2026
2235
|
case "hex":
|
|
2027
|
-
return z(this,
|
|
2236
|
+
return z(this, c, d);
|
|
2028
2237
|
case "utf8":
|
|
2029
2238
|
case "utf-8":
|
|
2030
|
-
return k(this,
|
|
2239
|
+
return k(this, c, d);
|
|
2031
2240
|
case "ascii":
|
|
2032
|
-
return S(this,
|
|
2241
|
+
return S(this, c, d);
|
|
2033
2242
|
case "latin1":
|
|
2034
2243
|
case "binary":
|
|
2035
|
-
return F(this,
|
|
2244
|
+
return F(this, c, d);
|
|
2036
2245
|
case "base64":
|
|
2037
|
-
return
|
|
2246
|
+
return v(this, c, d);
|
|
2038
2247
|
case "ucs2":
|
|
2039
2248
|
case "ucs-2":
|
|
2040
2249
|
case "utf16le":
|
|
2041
2250
|
case "utf-16le":
|
|
2042
|
-
return Ae(this,
|
|
2251
|
+
return Ae(this, c, d);
|
|
2043
2252
|
default:
|
|
2044
2253
|
if (B) throw new TypeError("Unknown encoding: " + r);
|
|
2045
2254
|
r = (r + "").toLowerCase(), B = !0;
|
|
2046
2255
|
}
|
|
2047
2256
|
}
|
|
2048
|
-
function p(r,
|
|
2049
|
-
const B = r[
|
|
2050
|
-
r[
|
|
2257
|
+
function p(r, c, d) {
|
|
2258
|
+
const B = r[c];
|
|
2259
|
+
r[c] = r[d], r[d] = B;
|
|
2051
2260
|
}
|
|
2052
|
-
function m(r,
|
|
2261
|
+
function m(r, c, d, B, Q) {
|
|
2053
2262
|
if (r.length === 0) return -1;
|
|
2054
|
-
if (typeof d == "string" ? (B = d, d = 0) : d > 2147483647 ? d = 2147483647 : d < -2147483648 && (d = -2147483648),
|
|
2263
|
+
if (typeof d == "string" ? (B = d, d = 0) : d > 2147483647 ? d = 2147483647 : d < -2147483648 && (d = -2147483648), st(d = +d) && (d = Q ? 0 : r.length - 1), d < 0 && (d = r.length + d), d >= r.length) {
|
|
2055
2264
|
if (Q) return -1;
|
|
2056
2265
|
d = r.length - 1;
|
|
2057
2266
|
} else if (d < 0) {
|
|
2058
2267
|
if (!Q) return -1;
|
|
2059
2268
|
d = 0;
|
|
2060
2269
|
}
|
|
2061
|
-
if (typeof
|
|
2062
|
-
if (typeof
|
|
2270
|
+
if (typeof c == "string" && (c = i.from(c, B)), i.isBuffer(c)) return c.length === 0 ? -1 : C(r, c, d, B, Q);
|
|
2271
|
+
if (typeof c == "number") return c &= 255, typeof Uint8Array.prototype.indexOf == "function" ? Q ? Uint8Array.prototype.indexOf.call(r, c, d) : Uint8Array.prototype.lastIndexOf.call(r, c, d) : C(r, [c], d, B, Q);
|
|
2063
2272
|
throw new TypeError("val must be string, number or Buffer");
|
|
2064
2273
|
}
|
|
2065
|
-
function
|
|
2066
|
-
let y, D = 1, L = r.length, G =
|
|
2274
|
+
function C(r, c, d, B, Q) {
|
|
2275
|
+
let y, D = 1, L = r.length, G = c.length;
|
|
2067
2276
|
if (B !== void 0 && ((B = String(B).toLowerCase()) === "ucs2" || B === "ucs-2" || B === "utf16le" || B === "utf-16le")) {
|
|
2068
|
-
if (r.length < 2 ||
|
|
2277
|
+
if (r.length < 2 || c.length < 2) return -1;
|
|
2069
2278
|
D = 2, L /= 2, G /= 2, d /= 2;
|
|
2070
2279
|
}
|
|
2071
2280
|
function q(N, Y) {
|
|
@@ -2073,12 +2282,12 @@ function(c) {
|
|
|
2073
2282
|
}
|
|
2074
2283
|
if (Q) {
|
|
2075
2284
|
let N = -1;
|
|
2076
|
-
for (y = d; y < L; y++) if (q(r, y) === q(
|
|
2285
|
+
for (y = d; y < L; y++) if (q(r, y) === q(c, N === -1 ? 0 : y - N)) {
|
|
2077
2286
|
if (N === -1 && (N = y), y - N + 1 === G) return N * D;
|
|
2078
2287
|
} else N !== -1 && (y -= y - N), N = -1;
|
|
2079
2288
|
} else for (d + G > L && (d = L - G), y = d; y >= 0; y--) {
|
|
2080
2289
|
let N = !0;
|
|
2081
|
-
for (let Y = 0; Y < G; Y++) if (q(r, y + Y) !== q(
|
|
2290
|
+
for (let Y = 0; Y < G; Y++) if (q(r, y + Y) !== q(c, Y)) {
|
|
2082
2291
|
N = !1;
|
|
2083
2292
|
break;
|
|
2084
2293
|
}
|
|
@@ -2086,47 +2295,47 @@ function(c) {
|
|
|
2086
2295
|
}
|
|
2087
2296
|
return -1;
|
|
2088
2297
|
}
|
|
2089
|
-
function
|
|
2298
|
+
function E(r, c, d, B) {
|
|
2090
2299
|
d = Number(d) || 0;
|
|
2091
2300
|
const Q = r.length - d;
|
|
2092
2301
|
B ? (B = Number(B)) > Q && (B = Q) : B = Q;
|
|
2093
|
-
const y =
|
|
2302
|
+
const y = c.length;
|
|
2094
2303
|
let D;
|
|
2095
2304
|
for (B > y / 2 && (B = y / 2), D = 0; D < B; ++D) {
|
|
2096
|
-
const L = parseInt(
|
|
2097
|
-
if (
|
|
2305
|
+
const L = parseInt(c.substr(2 * D, 2), 16);
|
|
2306
|
+
if (st(L)) return D;
|
|
2098
2307
|
r[d + D] = L;
|
|
2099
2308
|
}
|
|
2100
2309
|
return D;
|
|
2101
2310
|
}
|
|
2102
|
-
function x(r,
|
|
2103
|
-
return he(ee(
|
|
2311
|
+
function x(r, c, d, B) {
|
|
2312
|
+
return he(ee(c, r.length - d), r, d, B);
|
|
2104
2313
|
}
|
|
2105
|
-
function w(r,
|
|
2314
|
+
function w(r, c, d, B) {
|
|
2106
2315
|
return he(function(Q) {
|
|
2107
2316
|
const y = [];
|
|
2108
2317
|
for (let D = 0; D < Q.length; ++D) y.push(255 & Q.charCodeAt(D));
|
|
2109
2318
|
return y;
|
|
2110
|
-
}(
|
|
2319
|
+
}(c), r, d, B);
|
|
2111
2320
|
}
|
|
2112
|
-
function M(r,
|
|
2113
|
-
return he(
|
|
2321
|
+
function M(r, c, d, B) {
|
|
2322
|
+
return he(Ee(c), r, d, B);
|
|
2114
2323
|
}
|
|
2115
|
-
function
|
|
2324
|
+
function T(r, c, d, B) {
|
|
2116
2325
|
return he(function(Q, y) {
|
|
2117
2326
|
let D, L, G;
|
|
2118
2327
|
const q = [];
|
|
2119
2328
|
for (let N = 0; N < Q.length && !((y -= 2) < 0); ++N) D = Q.charCodeAt(N), L = D >> 8, G = D % 256, q.push(G), q.push(L);
|
|
2120
2329
|
return q;
|
|
2121
|
-
}(
|
|
2330
|
+
}(c, r.length - d), r, d, B);
|
|
2122
2331
|
}
|
|
2123
|
-
function
|
|
2124
|
-
return
|
|
2332
|
+
function v(r, c, d) {
|
|
2333
|
+
return c === 0 && d === r.length ? e.fromByteArray(r) : e.fromByteArray(r.slice(c, d));
|
|
2125
2334
|
}
|
|
2126
|
-
function k(r,
|
|
2335
|
+
function k(r, c, d) {
|
|
2127
2336
|
d = Math.min(r.length, d);
|
|
2128
2337
|
const B = [];
|
|
2129
|
-
let Q =
|
|
2338
|
+
let Q = c;
|
|
2130
2339
|
for (; Q < d; ) {
|
|
2131
2340
|
const y = r[Q];
|
|
2132
2341
|
let D = null, L = y > 239 ? 4 : y > 223 ? 3 : y > 191 ? 2 : 1;
|
|
@@ -2156,12 +2365,12 @@ function(c) {
|
|
|
2156
2365
|
return L;
|
|
2157
2366
|
}(B);
|
|
2158
2367
|
}
|
|
2159
|
-
|
|
2368
|
+
o.kMaxLength = A, i.TYPED_ARRAY_SUPPORT = function() {
|
|
2160
2369
|
try {
|
|
2161
|
-
const r = new Uint8Array(1),
|
|
2370
|
+
const r = new Uint8Array(1), c = { foo: function() {
|
|
2162
2371
|
return 42;
|
|
2163
2372
|
} };
|
|
2164
|
-
return Object.setPrototypeOf(
|
|
2373
|
+
return Object.setPrototypeOf(c, Uint8Array.prototype), Object.setPrototypeOf(r, c), r.foo() === 42;
|
|
2165
2374
|
} catch {
|
|
2166
2375
|
return !1;
|
|
2167
2376
|
}
|
|
@@ -2169,24 +2378,24 @@ function(c) {
|
|
|
2169
2378
|
if (i.isBuffer(this)) return this.buffer;
|
|
2170
2379
|
} }), Object.defineProperty(i.prototype, "offset", { enumerable: !0, get: function() {
|
|
2171
2380
|
if (i.isBuffer(this)) return this.byteOffset;
|
|
2172
|
-
} }), i.poolSize = 8192, i.from = function(r,
|
|
2173
|
-
return n(r,
|
|
2174
|
-
}, Object.setPrototypeOf(i.prototype, Uint8Array.prototype), Object.setPrototypeOf(i, Uint8Array), i.alloc = function(r,
|
|
2381
|
+
} }), i.poolSize = 8192, i.from = function(r, c, d) {
|
|
2382
|
+
return n(r, c, d);
|
|
2383
|
+
}, Object.setPrototypeOf(i.prototype, Uint8Array.prototype), Object.setPrototypeOf(i, Uint8Array), i.alloc = function(r, c, d) {
|
|
2175
2384
|
return function(B, Q, y) {
|
|
2176
2385
|
return l(B), B <= 0 ? s(B) : Q !== void 0 ? typeof y == "string" ? s(B).fill(Q, y) : s(B).fill(Q) : s(B);
|
|
2177
|
-
}(r,
|
|
2386
|
+
}(r, c, d);
|
|
2178
2387
|
}, i.allocUnsafe = function(r) {
|
|
2179
2388
|
return h(r);
|
|
2180
2389
|
}, i.allocUnsafeSlow = function(r) {
|
|
2181
2390
|
return h(r);
|
|
2182
2391
|
}, i.isBuffer = function(r) {
|
|
2183
2392
|
return r != null && r._isBuffer === !0 && r !== i.prototype;
|
|
2184
|
-
}, i.compare = function(r,
|
|
2185
|
-
if (Z(r, Uint8Array) && (r = i.from(r, r.offset, r.byteLength)), Z(
|
|
2186
|
-
if (r ===
|
|
2187
|
-
let d = r.length, B =
|
|
2188
|
-
for (let Q = 0, y = Math.min(d, B); Q < y; ++Q) if (r[Q] !==
|
|
2189
|
-
d = r[Q], B =
|
|
2393
|
+
}, i.compare = function(r, c) {
|
|
2394
|
+
if (Z(r, Uint8Array) && (r = i.from(r, r.offset, r.byteLength)), Z(c, Uint8Array) && (c = i.from(c, c.offset, c.byteLength)), !i.isBuffer(r) || !i.isBuffer(c)) throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');
|
|
2395
|
+
if (r === c) return 0;
|
|
2396
|
+
let d = r.length, B = c.length;
|
|
2397
|
+
for (let Q = 0, y = Math.min(d, B); Q < y; ++Q) if (r[Q] !== c[Q]) {
|
|
2398
|
+
d = r[Q], B = c[Q];
|
|
2190
2399
|
break;
|
|
2191
2400
|
}
|
|
2192
2401
|
return d < B ? -1 : B < d ? 1 : 0;
|
|
@@ -2207,12 +2416,12 @@ function(c) {
|
|
|
2207
2416
|
default:
|
|
2208
2417
|
return !1;
|
|
2209
2418
|
}
|
|
2210
|
-
}, i.concat = function(r,
|
|
2419
|
+
}, i.concat = function(r, c) {
|
|
2211
2420
|
if (!Array.isArray(r)) throw new TypeError('"list" argument must be an Array of Buffers');
|
|
2212
2421
|
if (r.length === 0) return i.alloc(0);
|
|
2213
2422
|
let d;
|
|
2214
|
-
if (
|
|
2215
|
-
const B = i.allocUnsafe(
|
|
2423
|
+
if (c === void 0) for (c = 0, d = 0; d < r.length; ++d) c += r[d].length;
|
|
2424
|
+
const B = i.allocUnsafe(c);
|
|
2216
2425
|
let Q = 0;
|
|
2217
2426
|
for (d = 0; d < r.length; ++d) {
|
|
2218
2427
|
let y = r[d];
|
|
@@ -2227,17 +2436,17 @@ function(c) {
|
|
|
2227
2436
|
}, i.byteLength = I, i.prototype._isBuffer = !0, i.prototype.swap16 = function() {
|
|
2228
2437
|
const r = this.length;
|
|
2229
2438
|
if (r % 2 != 0) throw new RangeError("Buffer size must be a multiple of 16-bits");
|
|
2230
|
-
for (let
|
|
2439
|
+
for (let c = 0; c < r; c += 2) p(this, c, c + 1);
|
|
2231
2440
|
return this;
|
|
2232
2441
|
}, i.prototype.swap32 = function() {
|
|
2233
2442
|
const r = this.length;
|
|
2234
2443
|
if (r % 4 != 0) throw new RangeError("Buffer size must be a multiple of 32-bits");
|
|
2235
|
-
for (let
|
|
2444
|
+
for (let c = 0; c < r; c += 4) p(this, c, c + 3), p(this, c + 1, c + 2);
|
|
2236
2445
|
return this;
|
|
2237
2446
|
}, i.prototype.swap64 = function() {
|
|
2238
2447
|
const r = this.length;
|
|
2239
2448
|
if (r % 8 != 0) throw new RangeError("Buffer size must be a multiple of 64-bits");
|
|
2240
|
-
for (let
|
|
2449
|
+
for (let c = 0; c < r; c += 8) p(this, c, c + 7), p(this, c + 1, c + 6), p(this, c + 2, c + 5), p(this, c + 3, c + 4);
|
|
2241
2450
|
return this;
|
|
2242
2451
|
}, i.prototype.toString = function() {
|
|
2243
2452
|
const r = this.length;
|
|
@@ -2247,56 +2456,56 @@ function(c) {
|
|
|
2247
2456
|
return this === r || i.compare(this, r) === 0;
|
|
2248
2457
|
}, i.prototype.inspect = function() {
|
|
2249
2458
|
let r = "";
|
|
2250
|
-
const
|
|
2251
|
-
return r = this.toString("hex", 0,
|
|
2252
|
-
}, a && (i.prototype[a] = i.prototype.inspect), i.prototype.compare = function(r,
|
|
2459
|
+
const c = o.INSPECT_MAX_BYTES;
|
|
2460
|
+
return r = this.toString("hex", 0, c).replace(/(.{2})/g, "$1 ").trim(), this.length > c && (r += " ... "), "<Buffer " + r + ">";
|
|
2461
|
+
}, a && (i.prototype[a] = i.prototype.inspect), i.prototype.compare = function(r, c, d, B, Q) {
|
|
2253
2462
|
if (Z(r, Uint8Array) && (r = i.from(r, r.offset, r.byteLength)), !i.isBuffer(r)) throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type ' + typeof r);
|
|
2254
|
-
if (
|
|
2255
|
-
if (B >= Q &&
|
|
2463
|
+
if (c === void 0 && (c = 0), d === void 0 && (d = r ? r.length : 0), B === void 0 && (B = 0), Q === void 0 && (Q = this.length), c < 0 || d > r.length || B < 0 || Q > this.length) throw new RangeError("out of range index");
|
|
2464
|
+
if (B >= Q && c >= d) return 0;
|
|
2256
2465
|
if (B >= Q) return -1;
|
|
2257
|
-
if (
|
|
2466
|
+
if (c >= d) return 1;
|
|
2258
2467
|
if (this === r) return 0;
|
|
2259
|
-
let y = (Q >>>= 0) - (B >>>= 0), D = (d >>>= 0) - (
|
|
2260
|
-
const L = Math.min(y, D), G = this.slice(B, Q), q = r.slice(
|
|
2468
|
+
let y = (Q >>>= 0) - (B >>>= 0), D = (d >>>= 0) - (c >>>= 0);
|
|
2469
|
+
const L = Math.min(y, D), G = this.slice(B, Q), q = r.slice(c, d);
|
|
2261
2470
|
for (let N = 0; N < L; ++N) if (G[N] !== q[N]) {
|
|
2262
2471
|
y = G[N], D = q[N];
|
|
2263
2472
|
break;
|
|
2264
2473
|
}
|
|
2265
2474
|
return y < D ? -1 : D < y ? 1 : 0;
|
|
2266
|
-
}, i.prototype.includes = function(r,
|
|
2267
|
-
return this.indexOf(r,
|
|
2268
|
-
}, i.prototype.indexOf = function(r,
|
|
2269
|
-
return m(this, r,
|
|
2270
|
-
}, i.prototype.lastIndexOf = function(r,
|
|
2271
|
-
return m(this, r,
|
|
2272
|
-
}, i.prototype.write = function(r,
|
|
2273
|
-
if (
|
|
2274
|
-
else if (d === void 0 && typeof
|
|
2475
|
+
}, i.prototype.includes = function(r, c, d) {
|
|
2476
|
+
return this.indexOf(r, c, d) !== -1;
|
|
2477
|
+
}, i.prototype.indexOf = function(r, c, d) {
|
|
2478
|
+
return m(this, r, c, d, !0);
|
|
2479
|
+
}, i.prototype.lastIndexOf = function(r, c, d) {
|
|
2480
|
+
return m(this, r, c, d, !1);
|
|
2481
|
+
}, i.prototype.write = function(r, c, d, B) {
|
|
2482
|
+
if (c === void 0) B = "utf8", d = this.length, c = 0;
|
|
2483
|
+
else if (d === void 0 && typeof c == "string") B = c, d = this.length, c = 0;
|
|
2275
2484
|
else {
|
|
2276
|
-
if (!isFinite(
|
|
2277
|
-
|
|
2485
|
+
if (!isFinite(c)) throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");
|
|
2486
|
+
c >>>= 0, isFinite(d) ? (d >>>= 0, B === void 0 && (B = "utf8")) : (B = d, d = void 0);
|
|
2278
2487
|
}
|
|
2279
|
-
const Q = this.length -
|
|
2280
|
-
if ((d === void 0 || d > Q) && (d = Q), r.length > 0 && (d < 0 ||
|
|
2488
|
+
const Q = this.length - c;
|
|
2489
|
+
if ((d === void 0 || d > Q) && (d = Q), r.length > 0 && (d < 0 || c < 0) || c > this.length) throw new RangeError("Attempt to write outside buffer bounds");
|
|
2281
2490
|
B || (B = "utf8");
|
|
2282
2491
|
let y = !1;
|
|
2283
2492
|
for (; ; ) switch (B) {
|
|
2284
2493
|
case "hex":
|
|
2285
|
-
return
|
|
2494
|
+
return E(this, r, c, d);
|
|
2286
2495
|
case "utf8":
|
|
2287
2496
|
case "utf-8":
|
|
2288
|
-
return x(this, r,
|
|
2497
|
+
return x(this, r, c, d);
|
|
2289
2498
|
case "ascii":
|
|
2290
2499
|
case "latin1":
|
|
2291
2500
|
case "binary":
|
|
2292
|
-
return w(this, r,
|
|
2501
|
+
return w(this, r, c, d);
|
|
2293
2502
|
case "base64":
|
|
2294
|
-
return M(this, r,
|
|
2503
|
+
return M(this, r, c, d);
|
|
2295
2504
|
case "ucs2":
|
|
2296
2505
|
case "ucs-2":
|
|
2297
2506
|
case "utf16le":
|
|
2298
2507
|
case "utf-16le":
|
|
2299
|
-
return
|
|
2508
|
+
return T(this, r, c, d);
|
|
2300
2509
|
default:
|
|
2301
2510
|
if (y) throw new TypeError("Unknown encoding: " + B);
|
|
2302
2511
|
B = ("" + B).toLowerCase(), y = !0;
|
|
@@ -2305,241 +2514,241 @@ function(c) {
|
|
|
2305
2514
|
return { type: "Buffer", data: Array.prototype.slice.call(this._arr || this, 0) };
|
|
2306
2515
|
};
|
|
2307
2516
|
const R = 4096;
|
|
2308
|
-
function S(r,
|
|
2517
|
+
function S(r, c, d) {
|
|
2309
2518
|
let B = "";
|
|
2310
2519
|
d = Math.min(r.length, d);
|
|
2311
|
-
for (let Q =
|
|
2520
|
+
for (let Q = c; Q < d; ++Q) B += String.fromCharCode(127 & r[Q]);
|
|
2312
2521
|
return B;
|
|
2313
2522
|
}
|
|
2314
|
-
function F(r,
|
|
2523
|
+
function F(r, c, d) {
|
|
2315
2524
|
let B = "";
|
|
2316
2525
|
d = Math.min(r.length, d);
|
|
2317
|
-
for (let Q =
|
|
2526
|
+
for (let Q = c; Q < d; ++Q) B += String.fromCharCode(r[Q]);
|
|
2318
2527
|
return B;
|
|
2319
2528
|
}
|
|
2320
|
-
function z(r,
|
|
2529
|
+
function z(r, c, d) {
|
|
2321
2530
|
const B = r.length;
|
|
2322
|
-
(!
|
|
2531
|
+
(!c || c < 0) && (c = 0), (!d || d < 0 || d > B) && (d = B);
|
|
2323
2532
|
let Q = "";
|
|
2324
|
-
for (let y =
|
|
2533
|
+
for (let y = c; y < d; ++y) Q += LA[r[y]];
|
|
2325
2534
|
return Q;
|
|
2326
2535
|
}
|
|
2327
|
-
function Ae(r,
|
|
2328
|
-
const B = r.slice(
|
|
2536
|
+
function Ae(r, c, d) {
|
|
2537
|
+
const B = r.slice(c, d);
|
|
2329
2538
|
let Q = "";
|
|
2330
2539
|
for (let y = 0; y < B.length - 1; y += 2) Q += String.fromCharCode(B[y] + 256 * B[y + 1]);
|
|
2331
2540
|
return Q;
|
|
2332
2541
|
}
|
|
2333
|
-
function H(r,
|
|
2542
|
+
function H(r, c, d) {
|
|
2334
2543
|
if (r % 1 != 0 || r < 0) throw new RangeError("offset is not uint");
|
|
2335
|
-
if (r +
|
|
2544
|
+
if (r + c > d) throw new RangeError("Trying to access beyond buffer length");
|
|
2336
2545
|
}
|
|
2337
|
-
function V(r,
|
|
2546
|
+
function V(r, c, d, B, Q, y) {
|
|
2338
2547
|
if (!i.isBuffer(r)) throw new TypeError('"buffer" argument must be a Buffer instance');
|
|
2339
|
-
if (
|
|
2548
|
+
if (c > Q || c < y) throw new RangeError('"value" argument is out of bounds');
|
|
2340
2549
|
if (d + B > r.length) throw new RangeError("Index out of range");
|
|
2341
2550
|
}
|
|
2342
|
-
function He(r,
|
|
2343
|
-
|
|
2344
|
-
let y = Number(
|
|
2551
|
+
function He(r, c, d, B, Q) {
|
|
2552
|
+
_(c, B, Q, r, d, 7);
|
|
2553
|
+
let y = Number(c & BigInt(4294967295));
|
|
2345
2554
|
r[d++] = y, y >>= 8, r[d++] = y, y >>= 8, r[d++] = y, y >>= 8, r[d++] = y;
|
|
2346
|
-
let D = Number(
|
|
2555
|
+
let D = Number(c >> BigInt(32) & BigInt(4294967295));
|
|
2347
2556
|
return r[d++] = D, D >>= 8, r[d++] = D, D >>= 8, r[d++] = D, D >>= 8, r[d++] = D, d;
|
|
2348
2557
|
}
|
|
2349
|
-
function
|
|
2350
|
-
|
|
2351
|
-
let y = Number(
|
|
2558
|
+
function Te(r, c, d, B, Q) {
|
|
2559
|
+
_(c, B, Q, r, d, 7);
|
|
2560
|
+
let y = Number(c & BigInt(4294967295));
|
|
2352
2561
|
r[d + 7] = y, y >>= 8, r[d + 6] = y, y >>= 8, r[d + 5] = y, y >>= 8, r[d + 4] = y;
|
|
2353
|
-
let D = Number(
|
|
2562
|
+
let D = Number(c >> BigInt(32) & BigInt(4294967295));
|
|
2354
2563
|
return r[d + 3] = D, D >>= 8, r[d + 2] = D, D >>= 8, r[d + 1] = D, D >>= 8, r[d] = D, d + 8;
|
|
2355
2564
|
}
|
|
2356
|
-
function Se(r,
|
|
2565
|
+
function Se(r, c, d, B, Q, y) {
|
|
2357
2566
|
if (d + B > r.length) throw new RangeError("Index out of range");
|
|
2358
2567
|
if (d < 0) throw new RangeError("Index out of range");
|
|
2359
2568
|
}
|
|
2360
|
-
function Fe(r,
|
|
2361
|
-
return
|
|
2569
|
+
function Fe(r, c, d, B, Q) {
|
|
2570
|
+
return c = +c, d >>>= 0, Q || Se(r, 0, d, 4), t.write(r, c, d, B, 23, 4), d + 4;
|
|
2362
2571
|
}
|
|
2363
|
-
function qe(r,
|
|
2364
|
-
return
|
|
2572
|
+
function qe(r, c, d, B, Q) {
|
|
2573
|
+
return c = +c, d >>>= 0, Q || Se(r, 0, d, 8), t.write(r, c, d, B, 52, 8), d + 8;
|
|
2365
2574
|
}
|
|
2366
|
-
i.prototype.slice = function(r,
|
|
2575
|
+
i.prototype.slice = function(r, c) {
|
|
2367
2576
|
const d = this.length;
|
|
2368
|
-
(r = ~~r) < 0 ? (r += d) < 0 && (r = 0) : r > d && (r = d), (
|
|
2369
|
-
const B = this.subarray(r,
|
|
2577
|
+
(r = ~~r) < 0 ? (r += d) < 0 && (r = 0) : r > d && (r = d), (c = c === void 0 ? d : ~~c) < 0 ? (c += d) < 0 && (c = 0) : c > d && (c = d), c < r && (c = r);
|
|
2578
|
+
const B = this.subarray(r, c);
|
|
2370
2579
|
return Object.setPrototypeOf(B, i.prototype), B;
|
|
2371
|
-
}, i.prototype.readUintLE = i.prototype.readUIntLE = function(r,
|
|
2372
|
-
r >>>= 0,
|
|
2580
|
+
}, i.prototype.readUintLE = i.prototype.readUIntLE = function(r, c, d) {
|
|
2581
|
+
r >>>= 0, c >>>= 0, d || H(r, c, this.length);
|
|
2373
2582
|
let B = this[r], Q = 1, y = 0;
|
|
2374
|
-
for (; ++y <
|
|
2583
|
+
for (; ++y < c && (Q *= 256); ) B += this[r + y] * Q;
|
|
2375
2584
|
return B;
|
|
2376
|
-
}, i.prototype.readUintBE = i.prototype.readUIntBE = function(r,
|
|
2377
|
-
r >>>= 0,
|
|
2378
|
-
let B = this[r + --
|
|
2379
|
-
for (;
|
|
2585
|
+
}, i.prototype.readUintBE = i.prototype.readUIntBE = function(r, c, d) {
|
|
2586
|
+
r >>>= 0, c >>>= 0, d || H(r, c, this.length);
|
|
2587
|
+
let B = this[r + --c], Q = 1;
|
|
2588
|
+
for (; c > 0 && (Q *= 256); ) B += this[r + --c] * Q;
|
|
2380
2589
|
return B;
|
|
2381
|
-
}, i.prototype.readUint8 = i.prototype.readUInt8 = function(r,
|
|
2382
|
-
return r >>>= 0,
|
|
2383
|
-
}, i.prototype.readUint16LE = i.prototype.readUInt16LE = function(r,
|
|
2384
|
-
return r >>>= 0,
|
|
2385
|
-
}, i.prototype.readUint16BE = i.prototype.readUInt16BE = function(r,
|
|
2386
|
-
return r >>>= 0,
|
|
2387
|
-
}, i.prototype.readUint32LE = i.prototype.readUInt32LE = function(r,
|
|
2388
|
-
return r >>>= 0,
|
|
2389
|
-
}, i.prototype.readUint32BE = i.prototype.readUInt32BE = function(r,
|
|
2390
|
-
return r >>>= 0,
|
|
2590
|
+
}, i.prototype.readUint8 = i.prototype.readUInt8 = function(r, c) {
|
|
2591
|
+
return r >>>= 0, c || H(r, 1, this.length), this[r];
|
|
2592
|
+
}, i.prototype.readUint16LE = i.prototype.readUInt16LE = function(r, c) {
|
|
2593
|
+
return r >>>= 0, c || H(r, 2, this.length), this[r] | this[r + 1] << 8;
|
|
2594
|
+
}, i.prototype.readUint16BE = i.prototype.readUInt16BE = function(r, c) {
|
|
2595
|
+
return r >>>= 0, c || H(r, 2, this.length), this[r] << 8 | this[r + 1];
|
|
2596
|
+
}, i.prototype.readUint32LE = i.prototype.readUInt32LE = function(r, c) {
|
|
2597
|
+
return r >>>= 0, c || H(r, 4, this.length), (this[r] | this[r + 1] << 8 | this[r + 2] << 16) + 16777216 * this[r + 3];
|
|
2598
|
+
}, i.prototype.readUint32BE = i.prototype.readUInt32BE = function(r, c) {
|
|
2599
|
+
return r >>>= 0, c || H(r, 4, this.length), 16777216 * this[r] + (this[r + 1] << 16 | this[r + 2] << 8 | this[r + 3]);
|
|
2391
2600
|
}, i.prototype.readBigUInt64LE = Le(function(r) {
|
|
2392
2601
|
O(r >>>= 0, "offset");
|
|
2393
|
-
const
|
|
2394
|
-
|
|
2395
|
-
const B =
|
|
2602
|
+
const c = this[r], d = this[r + 7];
|
|
2603
|
+
c !== void 0 && d !== void 0 || X(r, this.length - 8);
|
|
2604
|
+
const B = c + 256 * this[++r] + 65536 * this[++r] + this[++r] * 2 ** 24, Q = this[++r] + 256 * this[++r] + 65536 * this[++r] + d * 2 ** 24;
|
|
2396
2605
|
return BigInt(B) + (BigInt(Q) << BigInt(32));
|
|
2397
2606
|
}), i.prototype.readBigUInt64BE = Le(function(r) {
|
|
2398
2607
|
O(r >>>= 0, "offset");
|
|
2399
|
-
const
|
|
2400
|
-
|
|
2401
|
-
const B =
|
|
2608
|
+
const c = this[r], d = this[r + 7];
|
|
2609
|
+
c !== void 0 && d !== void 0 || X(r, this.length - 8);
|
|
2610
|
+
const B = c * 2 ** 24 + 65536 * this[++r] + 256 * this[++r] + this[++r], Q = this[++r] * 2 ** 24 + 65536 * this[++r] + 256 * this[++r] + d;
|
|
2402
2611
|
return (BigInt(B) << BigInt(32)) + BigInt(Q);
|
|
2403
|
-
}), i.prototype.readIntLE = function(r,
|
|
2404
|
-
r >>>= 0,
|
|
2612
|
+
}), i.prototype.readIntLE = function(r, c, d) {
|
|
2613
|
+
r >>>= 0, c >>>= 0, d || H(r, c, this.length);
|
|
2405
2614
|
let B = this[r], Q = 1, y = 0;
|
|
2406
|
-
for (; ++y <
|
|
2407
|
-
return Q *= 128, B >= Q && (B -= Math.pow(2, 8 *
|
|
2408
|
-
}, i.prototype.readIntBE = function(r,
|
|
2409
|
-
r >>>= 0,
|
|
2410
|
-
let B =
|
|
2615
|
+
for (; ++y < c && (Q *= 256); ) B += this[r + y] * Q;
|
|
2616
|
+
return Q *= 128, B >= Q && (B -= Math.pow(2, 8 * c)), B;
|
|
2617
|
+
}, i.prototype.readIntBE = function(r, c, d) {
|
|
2618
|
+
r >>>= 0, c >>>= 0, d || H(r, c, this.length);
|
|
2619
|
+
let B = c, Q = 1, y = this[r + --B];
|
|
2411
2620
|
for (; B > 0 && (Q *= 256); ) y += this[r + --B] * Q;
|
|
2412
|
-
return Q *= 128, y >= Q && (y -= Math.pow(2, 8 *
|
|
2413
|
-
}, i.prototype.readInt8 = function(r,
|
|
2414
|
-
return r >>>= 0,
|
|
2415
|
-
}, i.prototype.readInt16LE = function(r,
|
|
2416
|
-
r >>>= 0,
|
|
2621
|
+
return Q *= 128, y >= Q && (y -= Math.pow(2, 8 * c)), y;
|
|
2622
|
+
}, i.prototype.readInt8 = function(r, c) {
|
|
2623
|
+
return r >>>= 0, c || H(r, 1, this.length), 128 & this[r] ? -1 * (255 - this[r] + 1) : this[r];
|
|
2624
|
+
}, i.prototype.readInt16LE = function(r, c) {
|
|
2625
|
+
r >>>= 0, c || H(r, 2, this.length);
|
|
2417
2626
|
const d = this[r] | this[r + 1] << 8;
|
|
2418
2627
|
return 32768 & d ? 4294901760 | d : d;
|
|
2419
|
-
}, i.prototype.readInt16BE = function(r,
|
|
2420
|
-
r >>>= 0,
|
|
2628
|
+
}, i.prototype.readInt16BE = function(r, c) {
|
|
2629
|
+
r >>>= 0, c || H(r, 2, this.length);
|
|
2421
2630
|
const d = this[r + 1] | this[r] << 8;
|
|
2422
2631
|
return 32768 & d ? 4294901760 | d : d;
|
|
2423
|
-
}, i.prototype.readInt32LE = function(r,
|
|
2424
|
-
return r >>>= 0,
|
|
2425
|
-
}, i.prototype.readInt32BE = function(r,
|
|
2426
|
-
return r >>>= 0,
|
|
2632
|
+
}, i.prototype.readInt32LE = function(r, c) {
|
|
2633
|
+
return r >>>= 0, c || H(r, 4, this.length), this[r] | this[r + 1] << 8 | this[r + 2] << 16 | this[r + 3] << 24;
|
|
2634
|
+
}, i.prototype.readInt32BE = function(r, c) {
|
|
2635
|
+
return r >>>= 0, c || H(r, 4, this.length), this[r] << 24 | this[r + 1] << 16 | this[r + 2] << 8 | this[r + 3];
|
|
2427
2636
|
}, i.prototype.readBigInt64LE = Le(function(r) {
|
|
2428
2637
|
O(r >>>= 0, "offset");
|
|
2429
|
-
const
|
|
2430
|
-
|
|
2638
|
+
const c = this[r], d = this[r + 7];
|
|
2639
|
+
c !== void 0 && d !== void 0 || X(r, this.length - 8);
|
|
2431
2640
|
const B = this[r + 4] + 256 * this[r + 5] + 65536 * this[r + 6] + (d << 24);
|
|
2432
|
-
return (BigInt(B) << BigInt(32)) + BigInt(
|
|
2641
|
+
return (BigInt(B) << BigInt(32)) + BigInt(c + 256 * this[++r] + 65536 * this[++r] + this[++r] * 2 ** 24);
|
|
2433
2642
|
}), i.prototype.readBigInt64BE = Le(function(r) {
|
|
2434
2643
|
O(r >>>= 0, "offset");
|
|
2435
|
-
const
|
|
2436
|
-
|
|
2437
|
-
const B = (
|
|
2644
|
+
const c = this[r], d = this[r + 7];
|
|
2645
|
+
c !== void 0 && d !== void 0 || X(r, this.length - 8);
|
|
2646
|
+
const B = (c << 24) + 65536 * this[++r] + 256 * this[++r] + this[++r];
|
|
2438
2647
|
return (BigInt(B) << BigInt(32)) + BigInt(this[++r] * 2 ** 24 + 65536 * this[++r] + 256 * this[++r] + d);
|
|
2439
|
-
}), i.prototype.readFloatLE = function(r,
|
|
2440
|
-
return r >>>= 0,
|
|
2441
|
-
}, i.prototype.readFloatBE = function(r,
|
|
2442
|
-
return r >>>= 0,
|
|
2443
|
-
}, i.prototype.readDoubleLE = function(r,
|
|
2444
|
-
return r >>>= 0,
|
|
2445
|
-
}, i.prototype.readDoubleBE = function(r,
|
|
2446
|
-
return r >>>= 0,
|
|
2447
|
-
}, i.prototype.writeUintLE = i.prototype.writeUIntLE = function(r,
|
|
2448
|
-
r = +r,
|
|
2648
|
+
}), i.prototype.readFloatLE = function(r, c) {
|
|
2649
|
+
return r >>>= 0, c || H(r, 4, this.length), t.read(this, r, !0, 23, 4);
|
|
2650
|
+
}, i.prototype.readFloatBE = function(r, c) {
|
|
2651
|
+
return r >>>= 0, c || H(r, 4, this.length), t.read(this, r, !1, 23, 4);
|
|
2652
|
+
}, i.prototype.readDoubleLE = function(r, c) {
|
|
2653
|
+
return r >>>= 0, c || H(r, 8, this.length), t.read(this, r, !0, 52, 8);
|
|
2654
|
+
}, i.prototype.readDoubleBE = function(r, c) {
|
|
2655
|
+
return r >>>= 0, c || H(r, 8, this.length), t.read(this, r, !1, 52, 8);
|
|
2656
|
+
}, i.prototype.writeUintLE = i.prototype.writeUIntLE = function(r, c, d, B) {
|
|
2657
|
+
r = +r, c >>>= 0, d >>>= 0, !B && V(this, r, c, d, Math.pow(2, 8 * d) - 1, 0);
|
|
2449
2658
|
let Q = 1, y = 0;
|
|
2450
|
-
for (this[
|
|
2451
|
-
return
|
|
2452
|
-
}, i.prototype.writeUintBE = i.prototype.writeUIntBE = function(r,
|
|
2453
|
-
r = +r,
|
|
2659
|
+
for (this[c] = 255 & r; ++y < d && (Q *= 256); ) this[c + y] = r / Q & 255;
|
|
2660
|
+
return c + d;
|
|
2661
|
+
}, i.prototype.writeUintBE = i.prototype.writeUIntBE = function(r, c, d, B) {
|
|
2662
|
+
r = +r, c >>>= 0, d >>>= 0, !B && V(this, r, c, d, Math.pow(2, 8 * d) - 1, 0);
|
|
2454
2663
|
let Q = d - 1, y = 1;
|
|
2455
|
-
for (this[
|
|
2456
|
-
return
|
|
2457
|
-
}, i.prototype.writeUint8 = i.prototype.writeUInt8 = function(r,
|
|
2458
|
-
return r = +r,
|
|
2459
|
-
}, i.prototype.writeUint16LE = i.prototype.writeUInt16LE = function(r,
|
|
2460
|
-
return r = +r,
|
|
2461
|
-
}, i.prototype.writeUint16BE = i.prototype.writeUInt16BE = function(r,
|
|
2462
|
-
return r = +r,
|
|
2463
|
-
}, i.prototype.writeUint32LE = i.prototype.writeUInt32LE = function(r,
|
|
2464
|
-
return r = +r,
|
|
2465
|
-
}, i.prototype.writeUint32BE = i.prototype.writeUInt32BE = function(r,
|
|
2466
|
-
return r = +r,
|
|
2467
|
-
}, i.prototype.writeBigUInt64LE = Le(function(r,
|
|
2468
|
-
return He(this, r,
|
|
2469
|
-
}), i.prototype.writeBigUInt64BE = Le(function(r,
|
|
2470
|
-
return
|
|
2471
|
-
}), i.prototype.writeIntLE = function(r,
|
|
2472
|
-
if (r = +r,
|
|
2664
|
+
for (this[c + Q] = 255 & r; --Q >= 0 && (y *= 256); ) this[c + Q] = r / y & 255;
|
|
2665
|
+
return c + d;
|
|
2666
|
+
}, i.prototype.writeUint8 = i.prototype.writeUInt8 = function(r, c, d) {
|
|
2667
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 1, 255, 0), this[c] = 255 & r, c + 1;
|
|
2668
|
+
}, i.prototype.writeUint16LE = i.prototype.writeUInt16LE = function(r, c, d) {
|
|
2669
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 2, 65535, 0), this[c] = 255 & r, this[c + 1] = r >>> 8, c + 2;
|
|
2670
|
+
}, i.prototype.writeUint16BE = i.prototype.writeUInt16BE = function(r, c, d) {
|
|
2671
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 2, 65535, 0), this[c] = r >>> 8, this[c + 1] = 255 & r, c + 2;
|
|
2672
|
+
}, i.prototype.writeUint32LE = i.prototype.writeUInt32LE = function(r, c, d) {
|
|
2673
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 4, 4294967295, 0), this[c + 3] = r >>> 24, this[c + 2] = r >>> 16, this[c + 1] = r >>> 8, this[c] = 255 & r, c + 4;
|
|
2674
|
+
}, i.prototype.writeUint32BE = i.prototype.writeUInt32BE = function(r, c, d) {
|
|
2675
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 4, 4294967295, 0), this[c] = r >>> 24, this[c + 1] = r >>> 16, this[c + 2] = r >>> 8, this[c + 3] = 255 & r, c + 4;
|
|
2676
|
+
}, i.prototype.writeBigUInt64LE = Le(function(r, c = 0) {
|
|
2677
|
+
return He(this, r, c, BigInt(0), BigInt("0xffffffffffffffff"));
|
|
2678
|
+
}), i.prototype.writeBigUInt64BE = Le(function(r, c = 0) {
|
|
2679
|
+
return Te(this, r, c, BigInt(0), BigInt("0xffffffffffffffff"));
|
|
2680
|
+
}), i.prototype.writeIntLE = function(r, c, d, B) {
|
|
2681
|
+
if (r = +r, c >>>= 0, !B) {
|
|
2473
2682
|
const L = Math.pow(2, 8 * d - 1);
|
|
2474
|
-
V(this, r,
|
|
2683
|
+
V(this, r, c, d, L - 1, -L);
|
|
2475
2684
|
}
|
|
2476
2685
|
let Q = 0, y = 1, D = 0;
|
|
2477
|
-
for (this[
|
|
2478
|
-
return
|
|
2479
|
-
}, i.prototype.writeIntBE = function(r,
|
|
2480
|
-
if (r = +r,
|
|
2686
|
+
for (this[c] = 255 & r; ++Q < d && (y *= 256); ) r < 0 && D === 0 && this[c + Q - 1] !== 0 && (D = 1), this[c + Q] = (r / y | 0) - D & 255;
|
|
2687
|
+
return c + d;
|
|
2688
|
+
}, i.prototype.writeIntBE = function(r, c, d, B) {
|
|
2689
|
+
if (r = +r, c >>>= 0, !B) {
|
|
2481
2690
|
const L = Math.pow(2, 8 * d - 1);
|
|
2482
|
-
V(this, r,
|
|
2691
|
+
V(this, r, c, d, L - 1, -L);
|
|
2483
2692
|
}
|
|
2484
2693
|
let Q = d - 1, y = 1, D = 0;
|
|
2485
|
-
for (this[
|
|
2486
|
-
return
|
|
2487
|
-
}, i.prototype.writeInt8 = function(r,
|
|
2488
|
-
return r = +r,
|
|
2489
|
-
}, i.prototype.writeInt16LE = function(r,
|
|
2490
|
-
return r = +r,
|
|
2491
|
-
}, i.prototype.writeInt16BE = function(r,
|
|
2492
|
-
return r = +r,
|
|
2493
|
-
}, i.prototype.writeInt32LE = function(r,
|
|
2494
|
-
return r = +r,
|
|
2495
|
-
}, i.prototype.writeInt32BE = function(r,
|
|
2496
|
-
return r = +r,
|
|
2497
|
-
}, i.prototype.writeBigInt64LE = Le(function(r,
|
|
2498
|
-
return He(this, r,
|
|
2499
|
-
}), i.prototype.writeBigInt64BE = Le(function(r,
|
|
2500
|
-
return
|
|
2501
|
-
}), i.prototype.writeFloatLE = function(r,
|
|
2502
|
-
return Fe(this, r,
|
|
2503
|
-
}, i.prototype.writeFloatBE = function(r,
|
|
2504
|
-
return Fe(this, r,
|
|
2505
|
-
}, i.prototype.writeDoubleLE = function(r,
|
|
2506
|
-
return qe(this, r,
|
|
2507
|
-
}, i.prototype.writeDoubleBE = function(r,
|
|
2508
|
-
return qe(this, r,
|
|
2509
|
-
}, i.prototype.copy = function(r,
|
|
2694
|
+
for (this[c + Q] = 255 & r; --Q >= 0 && (y *= 256); ) r < 0 && D === 0 && this[c + Q + 1] !== 0 && (D = 1), this[c + Q] = (r / y | 0) - D & 255;
|
|
2695
|
+
return c + d;
|
|
2696
|
+
}, i.prototype.writeInt8 = function(r, c, d) {
|
|
2697
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 1, 127, -128), r < 0 && (r = 255 + r + 1), this[c] = 255 & r, c + 1;
|
|
2698
|
+
}, i.prototype.writeInt16LE = function(r, c, d) {
|
|
2699
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 2, 32767, -32768), this[c] = 255 & r, this[c + 1] = r >>> 8, c + 2;
|
|
2700
|
+
}, i.prototype.writeInt16BE = function(r, c, d) {
|
|
2701
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 2, 32767, -32768), this[c] = r >>> 8, this[c + 1] = 255 & r, c + 2;
|
|
2702
|
+
}, i.prototype.writeInt32LE = function(r, c, d) {
|
|
2703
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 4, 2147483647, -2147483648), this[c] = 255 & r, this[c + 1] = r >>> 8, this[c + 2] = r >>> 16, this[c + 3] = r >>> 24, c + 4;
|
|
2704
|
+
}, i.prototype.writeInt32BE = function(r, c, d) {
|
|
2705
|
+
return r = +r, c >>>= 0, d || V(this, r, c, 4, 2147483647, -2147483648), r < 0 && (r = 4294967295 + r + 1), this[c] = r >>> 24, this[c + 1] = r >>> 16, this[c + 2] = r >>> 8, this[c + 3] = 255 & r, c + 4;
|
|
2706
|
+
}, i.prototype.writeBigInt64LE = Le(function(r, c = 0) {
|
|
2707
|
+
return He(this, r, c, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff"));
|
|
2708
|
+
}), i.prototype.writeBigInt64BE = Le(function(r, c = 0) {
|
|
2709
|
+
return Te(this, r, c, -BigInt("0x8000000000000000"), BigInt("0x7fffffffffffffff"));
|
|
2710
|
+
}), i.prototype.writeFloatLE = function(r, c, d) {
|
|
2711
|
+
return Fe(this, r, c, !0, d);
|
|
2712
|
+
}, i.prototype.writeFloatBE = function(r, c, d) {
|
|
2713
|
+
return Fe(this, r, c, !1, d);
|
|
2714
|
+
}, i.prototype.writeDoubleLE = function(r, c, d) {
|
|
2715
|
+
return qe(this, r, c, !0, d);
|
|
2716
|
+
}, i.prototype.writeDoubleBE = function(r, c, d) {
|
|
2717
|
+
return qe(this, r, c, !1, d);
|
|
2718
|
+
}, i.prototype.copy = function(r, c, d, B) {
|
|
2510
2719
|
if (!i.isBuffer(r)) throw new TypeError("argument should be a Buffer");
|
|
2511
|
-
if (d || (d = 0), B || B === 0 || (B = this.length),
|
|
2512
|
-
if (
|
|
2720
|
+
if (d || (d = 0), B || B === 0 || (B = this.length), c >= r.length && (c = r.length), c || (c = 0), B > 0 && B < d && (B = d), B === d || r.length === 0 || this.length === 0) return 0;
|
|
2721
|
+
if (c < 0) throw new RangeError("targetStart out of bounds");
|
|
2513
2722
|
if (d < 0 || d >= this.length) throw new RangeError("Index out of range");
|
|
2514
2723
|
if (B < 0) throw new RangeError("sourceEnd out of bounds");
|
|
2515
|
-
B > this.length && (B = this.length), r.length -
|
|
2724
|
+
B > this.length && (B = this.length), r.length - c < B - d && (B = r.length - c + d);
|
|
2516
2725
|
const Q = B - d;
|
|
2517
|
-
return this === r && typeof Uint8Array.prototype.copyWithin == "function" ? this.copyWithin(
|
|
2518
|
-
}, i.prototype.fill = function(r,
|
|
2726
|
+
return this === r && typeof Uint8Array.prototype.copyWithin == "function" ? this.copyWithin(c, d, B) : Uint8Array.prototype.set.call(r, this.subarray(d, B), c), Q;
|
|
2727
|
+
}, i.prototype.fill = function(r, c, d, B) {
|
|
2519
2728
|
if (typeof r == "string") {
|
|
2520
|
-
if (typeof
|
|
2729
|
+
if (typeof c == "string" ? (B = c, c = 0, d = this.length) : typeof d == "string" && (B = d, d = this.length), B !== void 0 && typeof B != "string") throw new TypeError("encoding must be a string");
|
|
2521
2730
|
if (typeof B == "string" && !i.isEncoding(B)) throw new TypeError("Unknown encoding: " + B);
|
|
2522
2731
|
if (r.length === 1) {
|
|
2523
2732
|
const y = r.charCodeAt(0);
|
|
2524
2733
|
(B === "utf8" && y < 128 || B === "latin1") && (r = y);
|
|
2525
2734
|
}
|
|
2526
2735
|
} else typeof r == "number" ? r &= 255 : typeof r == "boolean" && (r = Number(r));
|
|
2527
|
-
if (
|
|
2528
|
-
if (d <=
|
|
2736
|
+
if (c < 0 || this.length < c || this.length < d) throw new RangeError("Out of range index");
|
|
2737
|
+
if (d <= c) return this;
|
|
2529
2738
|
let Q;
|
|
2530
|
-
if (
|
|
2739
|
+
if (c >>>= 0, d = d === void 0 ? this.length : d >>> 0, r || (r = 0), typeof r == "number") for (Q = c; Q < d; ++Q) this[Q] = r;
|
|
2531
2740
|
else {
|
|
2532
2741
|
const y = i.isBuffer(r) ? r : i.from(r, B), D = y.length;
|
|
2533
2742
|
if (D === 0) throw new TypeError('The value "' + r + '" is invalid for argument "value"');
|
|
2534
|
-
for (Q = 0; Q < d -
|
|
2743
|
+
for (Q = 0; Q < d - c; ++Q) this[Q + c] = y[Q % D];
|
|
2535
2744
|
}
|
|
2536
2745
|
return this;
|
|
2537
2746
|
};
|
|
2538
2747
|
const de = {};
|
|
2539
|
-
function ie(r,
|
|
2748
|
+
function ie(r, c, d) {
|
|
2540
2749
|
de[r] = class extends d {
|
|
2541
2750
|
constructor() {
|
|
2542
|
-
super(), Object.defineProperty(this, "message", { value:
|
|
2751
|
+
super(), Object.defineProperty(this, "message", { value: c.apply(this, arguments), writable: !0, configurable: !0 }), this.name = `${this.name} [${r}]`, this.stack, delete this.name;
|
|
2543
2752
|
}
|
|
2544
2753
|
get code() {
|
|
2545
2754
|
return r;
|
|
@@ -2552,40 +2761,40 @@ function(c) {
|
|
|
2552
2761
|
}
|
|
2553
2762
|
};
|
|
2554
2763
|
}
|
|
2555
|
-
function
|
|
2556
|
-
let
|
|
2764
|
+
function Ce(r) {
|
|
2765
|
+
let c = "", d = r.length;
|
|
2557
2766
|
const B = r[0] === "-" ? 1 : 0;
|
|
2558
|
-
for (; d >= B + 4; d -= 3)
|
|
2559
|
-
return `${r.slice(0, d)}${
|
|
2767
|
+
for (; d >= B + 4; d -= 3) c = `_${r.slice(d - 3, d)}${c}`;
|
|
2768
|
+
return `${r.slice(0, d)}${c}`;
|
|
2560
2769
|
}
|
|
2561
|
-
function
|
|
2562
|
-
if (r > d || r <
|
|
2563
|
-
const D = typeof
|
|
2770
|
+
function _(r, c, d, B, Q, y) {
|
|
2771
|
+
if (r > d || r < c) {
|
|
2772
|
+
const D = typeof c == "bigint" ? "n" : "";
|
|
2564
2773
|
let L;
|
|
2565
|
-
throw L =
|
|
2774
|
+
throw L = c === 0 || c === BigInt(0) ? `>= 0${D} and < 2${D} ** ${8 * (y + 1)}${D}` : `>= -(2${D} ** ${8 * (y + 1) - 1}${D}) and < 2 ** ${8 * (y + 1) - 1}${D}`, new de.ERR_OUT_OF_RANGE("value", L, r);
|
|
2566
2775
|
}
|
|
2567
2776
|
(function(D, L, G) {
|
|
2568
2777
|
O(L, "offset"), D[L] !== void 0 && D[L + G] !== void 0 || X(L, D.length - (G + 1));
|
|
2569
2778
|
})(B, Q, y);
|
|
2570
2779
|
}
|
|
2571
|
-
function O(r,
|
|
2572
|
-
if (typeof r != "number") throw new de.ERR_INVALID_ARG_TYPE(
|
|
2780
|
+
function O(r, c) {
|
|
2781
|
+
if (typeof r != "number") throw new de.ERR_INVALID_ARG_TYPE(c, "number", r);
|
|
2573
2782
|
}
|
|
2574
|
-
function X(r,
|
|
2575
|
-
throw Math.floor(r) !== r ? (O(r, d), new de.ERR_OUT_OF_RANGE("offset", "an integer", r)) :
|
|
2783
|
+
function X(r, c, d) {
|
|
2784
|
+
throw Math.floor(r) !== r ? (O(r, d), new de.ERR_OUT_OF_RANGE("offset", "an integer", r)) : c < 0 ? new de.ERR_BUFFER_OUT_OF_BOUNDS() : new de.ERR_OUT_OF_RANGE("offset", `>= 0 and <= ${c}`, r);
|
|
2576
2785
|
}
|
|
2577
2786
|
ie("ERR_BUFFER_OUT_OF_BOUNDS", function(r) {
|
|
2578
2787
|
return r ? `${r} is outside of buffer bounds` : "Attempt to access memory outside buffer bounds";
|
|
2579
|
-
}, RangeError), ie("ERR_INVALID_ARG_TYPE", function(r,
|
|
2580
|
-
return `The "${r}" argument must be of type number. Received type ${typeof
|
|
2581
|
-
}, TypeError), ie("ERR_OUT_OF_RANGE", function(r,
|
|
2788
|
+
}, RangeError), ie("ERR_INVALID_ARG_TYPE", function(r, c) {
|
|
2789
|
+
return `The "${r}" argument must be of type number. Received type ${typeof c}`;
|
|
2790
|
+
}, TypeError), ie("ERR_OUT_OF_RANGE", function(r, c, d) {
|
|
2582
2791
|
let B = `The value of "${r}" is out of range.`, Q = d;
|
|
2583
|
-
return Number.isInteger(d) && Math.abs(d) > 2 ** 32 ? Q =
|
|
2792
|
+
return Number.isInteger(d) && Math.abs(d) > 2 ** 32 ? Q = Ce(String(d)) : typeof d == "bigint" && (Q = String(d), (d > BigInt(2) ** BigInt(32) || d < -(BigInt(2) ** BigInt(32))) && (Q = Ce(Q)), Q += "n"), B += ` It must be ${c}. Received ${Q}`, B;
|
|
2584
2793
|
}, RangeError);
|
|
2585
2794
|
const ne = /[^+/0-9A-Za-z-_]/g;
|
|
2586
|
-
function ee(r,
|
|
2795
|
+
function ee(r, c) {
|
|
2587
2796
|
let d;
|
|
2588
|
-
|
|
2797
|
+
c = c || 1 / 0;
|
|
2589
2798
|
const B = r.length;
|
|
2590
2799
|
let Q = null;
|
|
2591
2800
|
const y = [];
|
|
@@ -2593,95 +2802,95 @@ function(c) {
|
|
|
2593
2802
|
if (d = r.charCodeAt(D), d > 55295 && d < 57344) {
|
|
2594
2803
|
if (!Q) {
|
|
2595
2804
|
if (d > 56319) {
|
|
2596
|
-
(
|
|
2805
|
+
(c -= 3) > -1 && y.push(239, 191, 189);
|
|
2597
2806
|
continue;
|
|
2598
2807
|
}
|
|
2599
2808
|
if (D + 1 === B) {
|
|
2600
|
-
(
|
|
2809
|
+
(c -= 3) > -1 && y.push(239, 191, 189);
|
|
2601
2810
|
continue;
|
|
2602
2811
|
}
|
|
2603
2812
|
Q = d;
|
|
2604
2813
|
continue;
|
|
2605
2814
|
}
|
|
2606
2815
|
if (d < 56320) {
|
|
2607
|
-
(
|
|
2816
|
+
(c -= 3) > -1 && y.push(239, 191, 189), Q = d;
|
|
2608
2817
|
continue;
|
|
2609
2818
|
}
|
|
2610
2819
|
d = 65536 + (Q - 55296 << 10 | d - 56320);
|
|
2611
|
-
} else Q && (
|
|
2820
|
+
} else Q && (c -= 3) > -1 && y.push(239, 191, 189);
|
|
2612
2821
|
if (Q = null, d < 128) {
|
|
2613
|
-
if ((
|
|
2822
|
+
if ((c -= 1) < 0) break;
|
|
2614
2823
|
y.push(d);
|
|
2615
2824
|
} else if (d < 2048) {
|
|
2616
|
-
if ((
|
|
2825
|
+
if ((c -= 2) < 0) break;
|
|
2617
2826
|
y.push(d >> 6 | 192, 63 & d | 128);
|
|
2618
2827
|
} else if (d < 65536) {
|
|
2619
|
-
if ((
|
|
2828
|
+
if ((c -= 3) < 0) break;
|
|
2620
2829
|
y.push(d >> 12 | 224, d >> 6 & 63 | 128, 63 & d | 128);
|
|
2621
2830
|
} else {
|
|
2622
2831
|
if (!(d < 1114112)) throw new Error("Invalid code point");
|
|
2623
|
-
if ((
|
|
2832
|
+
if ((c -= 4) < 0) break;
|
|
2624
2833
|
y.push(d >> 18 | 240, d >> 12 & 63 | 128, d >> 6 & 63 | 128, 63 & d | 128);
|
|
2625
2834
|
}
|
|
2626
2835
|
}
|
|
2627
2836
|
return y;
|
|
2628
2837
|
}
|
|
2629
|
-
function
|
|
2630
|
-
return e.toByteArray(function(
|
|
2631
|
-
if ((
|
|
2632
|
-
for (;
|
|
2633
|
-
return
|
|
2838
|
+
function Ee(r) {
|
|
2839
|
+
return e.toByteArray(function(c) {
|
|
2840
|
+
if ((c = (c = c.split("=")[0]).trim().replace(ne, "")).length < 2) return "";
|
|
2841
|
+
for (; c.length % 4 != 0; ) c += "=";
|
|
2842
|
+
return c;
|
|
2634
2843
|
}(r));
|
|
2635
2844
|
}
|
|
2636
|
-
function he(r,
|
|
2845
|
+
function he(r, c, d, B) {
|
|
2637
2846
|
let Q;
|
|
2638
|
-
for (Q = 0; Q < B && !(Q + d >=
|
|
2847
|
+
for (Q = 0; Q < B && !(Q + d >= c.length || Q >= r.length); ++Q) c[Q + d] = r[Q];
|
|
2639
2848
|
return Q;
|
|
2640
2849
|
}
|
|
2641
|
-
function Z(r,
|
|
2642
|
-
return r instanceof
|
|
2850
|
+
function Z(r, c) {
|
|
2851
|
+
return r instanceof c || r != null && r.constructor != null && r.constructor.name != null && r.constructor.name === c.name;
|
|
2643
2852
|
}
|
|
2644
|
-
function
|
|
2853
|
+
function st(r) {
|
|
2645
2854
|
return r != r;
|
|
2646
2855
|
}
|
|
2647
|
-
const
|
|
2648
|
-
const r = "0123456789abcdef",
|
|
2856
|
+
const LA = function() {
|
|
2857
|
+
const r = "0123456789abcdef", c = new Array(256);
|
|
2649
2858
|
for (let d = 0; d < 16; ++d) {
|
|
2650
2859
|
const B = 16 * d;
|
|
2651
|
-
for (let Q = 0; Q < 16; ++Q)
|
|
2860
|
+
for (let Q = 0; Q < 16; ++Q) c[B + Q] = r[d] + r[Q];
|
|
2652
2861
|
}
|
|
2653
|
-
return
|
|
2862
|
+
return c;
|
|
2654
2863
|
}();
|
|
2655
2864
|
function Le(r) {
|
|
2656
|
-
return typeof BigInt > "u" ?
|
|
2865
|
+
return typeof BigInt > "u" ? UA : r;
|
|
2657
2866
|
}
|
|
2658
|
-
function
|
|
2867
|
+
function UA() {
|
|
2659
2868
|
throw new Error("BigInt not supported");
|
|
2660
2869
|
}
|
|
2661
|
-
}(
|
|
2662
|
-
const
|
|
2663
|
-
|
|
2870
|
+
})(jA);
|
|
2871
|
+
const Gt = { env: { emscripten_notify_memory_growth: function(o) {
|
|
2872
|
+
ia = new Uint8Array(xe.exports.memory.buffer);
|
|
2664
2873
|
} } };
|
|
2665
|
-
class
|
|
2874
|
+
class Ls {
|
|
2666
2875
|
init() {
|
|
2667
|
-
return
|
|
2876
|
+
return Ut || (Ut = typeof fetch < "u" ? fetch("data:application/wasm;base64," + Na).then((e) => e.arrayBuffer()).then((e) => WebAssembly.instantiate(e, Gt)).then(this._init) : WebAssembly.instantiate(jA.Buffer.from(Na, "base64"), Gt).then(this._init), Ut);
|
|
2668
2877
|
}
|
|
2669
2878
|
_init(e) {
|
|
2670
|
-
xe = e.instance,
|
|
2879
|
+
xe = e.instance, Gt.env.emscripten_notify_memory_growth(0);
|
|
2671
2880
|
}
|
|
2672
2881
|
decode(e, t = 0) {
|
|
2673
2882
|
if (!xe) throw new Error("ZSTDDecoder: Await .init() before decoding.");
|
|
2674
2883
|
const a = e.byteLength, A = xe.exports.malloc(a);
|
|
2675
|
-
|
|
2676
|
-
const s = xe.exports.malloc(t), i = xe.exports.ZSTD_decompress(s, t, A, a), n =
|
|
2884
|
+
ia.set(e, A), t = t || Number(xe.exports.ZSTD_findDecompressedSize(A, a));
|
|
2885
|
+
const s = xe.exports.malloc(t), i = xe.exports.ZSTD_decompress(s, t, A, a), n = ia.slice(s, s + i);
|
|
2677
2886
|
return xe.exports.free(A), xe.exports.free(s), n;
|
|
2678
2887
|
}
|
|
2679
2888
|
}
|
|
2680
|
-
const Ta = "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IAMNACAEQQNxBEADQCACRQ0FIAAgAkF/aiICaiIDIAEgAmotAAA6AAAgA0EDcQ0ACwsgAkEDTQ0AA0AgACACQXxqIgJqIAEgAmooAgA2AgAgAkEDSw0ACwsgAkUNAgNAIAAgAkF/aiICaiABIAJqLQAAOgAAIAINAAsMAgsgAkEDTQ0AIAIhBANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIARBfGoiBEEDSw0ACyACQQNxIQILIAJFDQADQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQX9qIgINAAsLIAAL8wICAn8BfgJAIAJFDQAgACACaiIDQX9qIAE6AAAgACABOgAAIAJBA0kNACADQX5qIAE6AAAgACABOgABIANBfWogAToAACAAIAE6AAIgAkEHSQ0AIANBfGogAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkFgaiICQR9LDQALCyAACy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAIajYCACADCy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAFajYCACADCx8AIAAgASACKAIEEAg2AgAgARAEGiAAIAJBCGo2AgQLCAAgAGdBH3MLugUBDX8jAEEQayIKJAACfyAEQQNNBEAgCkEANgIMIApBDGogAyAEEAsaIAAgASACIApBDGpBBBAVIgBBbCAAEAMbIAAgACAESxsMAQsgAEEAIAEoAgBBAXRBAmoQECENQVQgAygAACIGQQ9xIgBBCksNABogAiAAQQVqNgIAIAMgBGoiAkF8aiEMIAJBeWohDiACQXtqIRAgAEEGaiELQQQh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ASIDNgLE4AEgACgCvOABIQQgACABNgK84AEgACABIAJqNgK44AEgACABIAQgA2tqNgLA4AELpgEBAX8gACAAKALs4QEQFjYCyOABIABCADcD+OABIABCADcDuOABIABBwOABakIANwMAIABBqNAAaiIBQYyAgOAANgIAIABBADYCmOIBIABCADcDiOEBIABCAzcDgOEBIABBrNABakHgEikCADcCACAAQbTQAWpB6BIoAgA2AgAgACABNgIMIAAgAEGYIGo2AgggACAAQaAwajYCBCAAIABBEGo2AgALYQEBf0G4fyEDAkAgAUEDSQ0AIAIgABAhIgFBA3YiADYCCCACIAFBAXE2AgQgAiABQQF2QQNxIgM2AgACQCADQX9qIgFBAksNAAJAIAFBAWsOAgEAAgtBbA8LIAAhAwsgAwsMACAAIAEgAkEAEC4LiAQCA38CfiADEBYhBCAAQQBBKBAQIQAgBCACSwRAIAQPCyABRQRAQX8PCwJAAkAgA0EBRg0AIAEoAAAiBkGo6r5pRg0AQXYhAyAGQXBxQdDUtMIBRw0BQQghAyACQQhJDQEgAEEAQSgQECEAIAEoAAQhASAAQQE2AhQgACABrTcDAEEADwsgASACIAMQLyIDIAJLDQAgACADNgIYQXIhAyABIARqIgVBf2otAAAiAkEIcQ0AIAJBIHEiBkUEQEFwIQMgBS0AACIFQacBSw0BIAVBB3GtQgEgBUEDdkEKaq2GIgdCA4h+IAd8IQggBEEBaiEECyACQQZ2IQMgAkECdiEFAkAgAkEDcUF/aiICQQJLBEBBACECDAELAkACQAJAIAJBAWsOAgECAAsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAVBAXEhBQJ+AkACQAJAIANBf2oiA0ECTQRAIANBAWsOAgIDAQtCfyAGRQ0DGiABIARqMQAADAMLIAEgBGovAACtQoACfAwCCyABIARqKAAArQwBCyABIARqKQAACyEHIAAgBTYCICAAIAI2AhwgACAHNwMAQQAhAyAAQQA2AhQgACAHIAggBhsiBzcDCCAAIAdCgIAIIAdCgIAIVBs+AhALIAMLWwEBf0G4fyEDIAIQFiICIAFNBH8gACACakF/ai0AACIAQQNxQQJ0QaAeaigCACACaiAAQQZ2IgFBAnRBsB5qKAIAaiAAQSBxIgBFaiABRSAAQQV2cWoFQbh/CwsdACAAKAKQ4gEQWiAAQQA2AqDiASAAQgA3A5DiAQu1AwEFfyMAQZACayIKJABBuH8hBgJAIAVFDQAgBCwAACIIQf8BcSEHAkAgCEF/TARAIAdBgn9qQQF2IgggBU8NAkFsIQYgB0GBf2oiBUGAAk8NAiAEQQFqIQdBACEGA0AgBiAFTwRAIAUhBiAIIQcMAwUgACAGaiAHIAZBAXZqIgQtAABBBHY6AAAgACAGQQFyaiAELQAAQQ9xOgAAIAZBAmohBgwBCwAACwALIAcgBU8NASAAIARBAWogByAKEFMiBhADDQELIAYhBEEAIQYgAUEAQTQQECEJQQAhBQNAIAQgBkcEQCAAIAZqIggtAAAiAUELSwRAQWwhBgwDBSAJIAFBAnRqIgEgASgCAEEBajYCACAGQQFqIQZBASAILQAAdEEBdSAFaiEFDAILAAsLQWwhBiAFRQ0AIAUQFEEBaiIBQQxLDQAgAyABNgIAQQFBASABdCAFayIDEBQiAXQgA0cNACAAIARqIAFBAWoiADoAACAJIABBAnRqIgAgACgCAEEBajYCACAJKAIEIgBBAkkgAEEBcXINACACIARBAWo2AgAgB0EBaiEGCyAKQZACaiQAIAYLxhEBDH8jAEHwAGsiBSQAQWwhCwJAIANBCkkNACACLwAAIQogAi8AAiEJIAIvAAQhByAFQQhqIAQQDgJAIAMgByAJIApqakEGaiIMSQ0AIAUtAAohCCAFQdgAaiACQQZqIgIgChAGIgsQAw0BIAVBQGsgAiAKaiICIAkQBiILEAMNASAFQShqIAIgCWoiAiAHEAYiCxADDQEgBUEQaiACIAdqIAMgDGsQBiILEAMNASAAIAFqIg9BfWohECAEQQRqIQZBASELIAAgAUEDakECdiIDaiIMIANqIgIgA2oiDiEDIAIhBCAMIQcDQCALIAMgEElxBEAgACAGIAVB2ABqIAgQAkECdGoiCS8BADsAACAFQdgAaiAJLQACEAEgCS0AAyELIAcgBiAFQUBrIAgQAkECdGoiCS8BADsAACAFQUBrIAktAAIQASAJLQADIQogBCAGIAVBKGogCBACQQJ0aiIJLwEAOwAAIAVBKGogCS0AAhABIAktAAMhCSADIAYgBUEQaiAIEAJBAnRqIg0vAQA7AAAgBUEQaiANLQACEAEgDS0AAyENIAAgC2oiCyAGIAVB2ABqIAgQAkECdGoiAC8BADsAACAFQdgAaiAALQACEAEgAC0AAyEAIAcgCmoiCiAGIAVBQGsgCBACQQJ0aiIHLwEAOwAAIAVBQGsgBy0AAhABIActAAMhByAEIAlqIgkgBiAFQShqIAgQAkECdGoiBC8BADsAACAFQShqIAQtAAIQASAELQADIQQgAyANaiIDIAYgBUEQaiAIEAJBAnRqIg0vAQA7AAAgBUEQaiANLQACEAEgACALaiEAIAcgCmohByAEIAlqIQQgAyANLQADaiEDIAVB2ABqEA0gBUFAaxANciAFQShqEA1yIAVBEGoQDXJFIQsMAQsLIAQgDksgByACS3INAEFsIQsgACAMSw0BIAxBfWohCQNAQQAgACAJSSAFQdgAahAEGwRAIAAgBiAFQdgAaiAIEAJBAnRqIgovAQA7AAAgBUHYAGogCi0AAhABIAAgCi0AA2oiACAGIAVB2ABqIAgQAkECdGoiCi8BADsAACAFQdgAaiAKLQACEAEgACAKLQADaiEADAEFIAxBfmohCgNAIAVB2ABqEAQgACAKS3JFBEAgACAGIAVB2ABqIAgQAkECdGoiCS8BADsAACAFQdgAaiAJLQACEAEgACAJLQADaiEADAELCwNAIAAgCk0EQCAAIAYgBUHYAGogCBACQQJ0aiIJLwEAOwAAIAVB2ABqIAktAAIQASAAIAktAANqIQAMAQsLAkAgACAMTw0AIAAgBiAFQdgAaiAIEAIiAEECdGoiDC0AADoAACAMLQADQQFGBEAgBUHYAGogDC0AAhABDAELIAUoAlxBH0sNACAFQdgAaiAGIABBAnRqLQACEAEgBSgCXEEhSQ0AIAVBIDYCXAsgAkF9aiEMA0BBACAHIAxJIAVBQGsQBBsEQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiIAIAYgBUFAayAIEAJBAnRqIgcvAQA7AAAgBUFAayAHLQACEAEgACAHLQADaiEHDAEFIAJBfmohDANAIAVBQGsQBCAHIAxLckUEQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiEHDAELCwNAIAcgDE0EQCAHIAYgBUFAayAIEAJBAnRqIgAvAQA7AAAgBUFAayAALQACEAEgByAALQADaiEHDAELCwJAIAcgAk8NACAHIAYgBUFAayAIEAIiAEECdGoiAi0AADoAACACLQADQQFGBEAgBUFAayACLQACEAEMAQsgBSgCREEfSw0AIAVBQGsgBiAAQQJ0ai0AAhABIAUoAkRBIUkNACAFQSA2AkQLIA5BfWohAgNAQQAgBCACSSAFQShqEAQbBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2oiACAGIAVBKGogCBACQQJ0aiIELwEAOwAAIAVBKGogBC0AAhABIAAgBC0AA2ohBAwBBSAOQX5qIQIDQCAFQShqEAQgBCACS3JFBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2ohBAwBCwsDQCAEIAJNBEAgBCAGIAVBKGogCBACQQJ0aiIALwEAOwAAIAVBKGogAC0AAhABIAQgAC0AA2ohBAwBCwsCQCAEIA5PDQAgBCAGIAVBKGogCBACIgBBAnRqIgItAAA6AAAgAi0AA0EBRgRAIAVBKGogAi0AAhABDAELIAUoAixBH0sNACAFQShqIAYgAEECdGotAAIQASAFKAIsQSFJDQAgBUEgNgIsCwNAQQAgAyAQSSAFQRBqEAQbBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2oiACAGIAVBEGogCBACQQJ0aiICLwEAOwAAIAVBEGogAi0AAhABIAAgAi0AA2ohAwwBBSAPQX5qIQIDQCAFQRBqEAQgAyACS3JFBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2ohAwwBCwsDQCADIAJNBEAgAyAGIAVBEGogCBACQQJ0aiIALwEAOwAAIAVBEGogAC0AAhABIAMgAC0AA2ohAwwBCwsCQCADIA9PDQAgAyAGIAVBEGogCBACIgBBAnRqIgItAAA6AAAgAi0AA0EBRgRAIAVBEGogAi0AAhABDAELIAUoAhRBH0sNACAFQRBqIAYgAEECdGotAAIQASAFKAIUQSFJDQAgBUEgNgIUCyABQWwgBUHYAGoQCiAFQUBrEApxIAVBKGoQCnEgBUEQahAKcRshCwwJCwAACwALAAALAAsAAAsACwAACwALQWwhCwsgBUHwAGokACALC7UEAQ5/IwBBEGsiBiQAIAZBBGogABAOQVQhBQJAIARB3AtJDQAgBi0ABCEHIANB8ARqQQBB7AAQECEIIAdBDEsNACADQdwJaiIJIAggBkEIaiAGQQxqIAEgAhAxIhAQA0UEQCAGKAIMIgQgB0sNASADQdwFaiEPIANBpAVqIREgAEEEaiESIANBqAVqIQEgBCEFA0AgBSICQX9qIQUgCCACQQJ0aigCAEUNAAsgAkEBaiEOQQEhBQNAIAUgDk9FBEAgCCAFQQJ0IgtqKAIAIQwgASALaiAKNgIAIAVBAWohBSAKIAxqIQoMAQsLIAEgCjYCAEEAIQUgBigCCCELA0AgBSALRkUEQCABIAUgCWotAAAiDEECdGoiDSANKAIAIg1BAWo2AgAgDyANQQF0aiINIAw6AAEgDSAFOgAAIAVBAWohBQwBCwtBACEBIANBADYCqAUgBEF/cyAHaiEJQQEhBQNAIAUgDk9FBEAgCCAFQQJ0IgtqKAIAIQwgAyALaiABNgIAIAwgBSAJanQgAWohASAFQQFqIQUMAQsLIAcgBEEBaiIBIAJrIgRrQQFqIQgDQEEBIQUgBCAIT0UEQANAIAUgDk9FBEAgBUECdCIJIAMgBEE0bGpqIAMgCWooAgAgBHY2AgAgBUEBaiEFDAELCyAEQQFqIQQMAQsLIBIgByAPIAogESADIAIgARBkIAZBAToABSAGIAc6AAYgACAGKAIENgIACyAQIQULIAZBEGokACAFC8ENAQt/IwBB8ABrIgUkAEFsIQkCQCADQQpJDQAgAi8AACEKIAIvAAIhDCACLwAEIQYgBUEIaiAEEA4CQCADIAYgCiAMampBBmoiDUkNACAFLQAKIQcgBUHYAGogAkEGaiICIAoQBiIJEAMNASAFQUBrIAIgCmoiAiAMEAYiCRADDQEgBUEoaiACIAxqIgIgBhAGIgkQAw0BIAVBEGogAiAGaiADIA1rEAYiCRADDQEgACABaiIOQX1qIQ8gBEEEaiEGQQEhCSAAIAFBA2pBAnYiAmoiCiACaiIMIAJqIg0hAyAMIQQgCiECA0AgCSADIA9JcQRAIAYgBUHYAGogBxACQQF0aiIILQAAIQsgBUHYAGogCC0AARABIAAgCzoAACAGIAVBQGsgBxACQQF0aiIILQAAIQsgBUFAayAILQABEAEgAiALOgAAIAYgBUEoaiAHEAJBAXRqIggtAAAhCyAFQShqIAgtAAEQASAEIAs6AAAgBiAFQRBqIAcQAkEBdGoiCC0AACELIAVBEGogCC0AARABIAMgCzoAACAGIAVB2ABqIAcQAkEBdGoiCC0AACELIAVB2ABqIAgtAAEQASAAIAs6AAEgBiAFQUBrIAcQAkEBdGoiCC0AACELIAVBQGsgCC0AARABIAIgCzoAASAGIAVBKGogBxACQQF0aiIILQAAIQsgBUEoaiAILQABEAEgBCALOgABIAYgBUEQaiAHEAJBAXRqIggtAAAhCyAFQRBqIAgtAAEQASADIAs6AAEgA0ECaiEDIARBAmohBCACQQJqIQIgAEECaiEAIAkgBUHYAGoQDUVxIAVBQGsQDUVxIAVBKGoQDUVxIAVBEGoQDUVxIQkMAQsLIAQgDUsgAiAMS3INAEFsIQkgACAKSw0BIApBfWohCQNAIAVB2ABqEAQgACAJT3JFBEAgBiAFQdgAaiAHEAJBAXRqIggtAAAhCyAFQdgAaiAILQABEAEgACALOgAAIAYgBUHYAGogBxACQQF0aiIILQAAIQsgBUHYAGogCC0AARABIAAgCzoAASAAQQJqIQAMAQsLA0AgBUHYAGoQBCAAIApPckUEQCAGIAVB2ABqIAcQAkEBdGoiCS0AACEIIAVB2ABqIAktAAEQASAAIAg6AAAgAEEBaiEADAELCwNAIAAgCkkEQCAGIAVB2ABqIAcQAkEBdGoiCS0AACEIIAVB2ABqIAktAAEQASAAIAg6AAAgAEEBaiEADAELCyAMQX1qIQADQCAFQUBrEAQgAiAAT3JFBEAgBiAFQUBrIAcQAkEBdGoiCi0AACEJIAVBQGsgCi0AARABIAIgCToAACAGIAVBQGsgBxACQQF0aiIKLQAAIQkgBUFAayAKLQABEAEgAiAJOgABIAJBAmohAgwBCwsDQCAFQUBrEAQgAiAMT3JFBEAgBiAFQUBrIAcQAkEBdGoiAC0AACEKIAVBQGsgAC0AARABIAIgCjoAACACQQFqIQIMAQsLA0AgAiAMSQRAIAYgBUFAayAHEAJBAXRqIgAtAAAhCiAFQUBrIAAtAAEQASACIAo6AAAgAkEBaiECDAELCyANQX1qIQADQCAFQShqEAQgBCAAT3JFBEAgBiAFQShqIAcQAkEBdGoiAi0AACEKIAVBKGogAi0AARABIAQgCjoAACAGIAVBKGogBxACQQF0aiICLQAAIQogBUEoaiACLQABEAEgBCAKOgABIARBAmohBAwBCwsDQCAFQShqEAQgBCANT3JFBEAgBiAFQShqIAcQAkEBdGoiAC0AACECIAVBKGogAC0AARABIAQgAjoAACAEQQFqIQQMAQsLA0AgBCANSQRAIAYgBUEoaiAHEAJBAXRqIgAtAAAhAiAFQShqIAAtAAEQASAEIAI6AAAgBEEBaiEEDAELCwNAIAVBEGoQBCADIA9PckUEQCAGIAVBEGogBxACQQF0aiIALQAAIQIgBUEQaiAALQABEAEgAyACOgAAIAYgBUEQaiAHEAJBAXRqIgAtAAAhAiAFQRBqIAAtAAEQASADIAI6AAEgA0ECaiEDDAELCwNAIAVBEGoQBCADIA5PckUEQCAGIAVBEGogBxACQQF0aiIALQAAIQIgBUEQaiAALQABEAEgAyACOgAAIANBAWohAwwBCwsDQCADIA5JBEAgBiAFQRBqIAcQAkEBdGoiAC0AACECIAVBEGogAC0AARABIAMgAjoAACADQQFqIQMMAQsLIAFBbCAFQdgAahAKIAVBQGsQCnEgBUEoahAKcSAFQRBqEApxGyEJDAELQWwhCQsgBUHwAGokACAJC8oCAQR/IwBBIGsiBSQAIAUgBBAOIAUtAAIhByAFQQhqIAIgAxAGIgIQA0UEQCAEQQRqIQIgACABaiIDQX1qIQQDQCAFQQhqEAQgACAET3JFBEAgAiAFQQhqIAcQAkEBdGoiBi0AACEIIAVBCGogBi0AARABIAAgCDoAACACIAVBCGogBxACQQF0aiIGLQAAIQggBUEIaiAGLQABEAEgACAIOgABIABBAmohAAwBCwsDQCAFQQhqEAQgACADT3JFBEAgAiAFQQhqIAcQAkEBdGoiBC0AACEGIAVBCGogBC0AARABIAAgBjoAACAAQQFqIQAMAQsLA0AgACADT0UEQCACIAVBCGogBxACQQF0aiIELQAAIQYgBUEIaiAELQABEAEgACAGOgAAIABBAWohAAwBCwsgAUFsIAVBCGoQChshAgsgBUEgaiQAIAILtgMBCX8jAEEQayIGJAAgBkEANgIMIAZBADYCCEFUIQQCQAJAIANBQGsiDCADIAZBCGogBkEMaiABIAIQMSICEAMNACAGQQRqIAAQDiAGKAIMIgcgBi0ABEEBaksNASAAQQRqIQogBkEAOgAFIAYgBzoABiAAIAYoAgQ2AgAgB0EBaiEJQQEhBANAIAQgCUkEQCADIARBAnRqIgEoAgAhACABIAU2AgAgACAEQX9qdCAFaiEFIARBAWohBAwBCwsgB0EBaiEHQQAhBSAGKAIIIQkDQCAFIAlGDQEgAyAFIAxqLQAAIgRBAnRqIgBBASAEdEEBdSILIAAoAgAiAWoiADYCACAHIARrIQhBACEEAkAgC0EDTQRAA0AgBCALRg0CIAogASAEakEBdGoiACAIOgABIAAgBToAACAEQQFqIQQMAAALAAsDQCABIABPDQEgCiABQQF0aiIEIAg6AAEgBCAFOgAAIAQgCDoAAyAEIAU6AAIgBCAIOgAFIAQgBToABCAEIAg6AAcgBCAFOgAGIAFBBGohAQwAAAsACyAFQQFqIQUMAAALAAsgAiEECyAGQRBqJAAgBAutAQECfwJAQYQgKAIAIABHIAAoAgBBAXYiAyABa0F4aiICQXhxQQhHcgR/IAIFIAMQJ0UNASACQQhqC0EQSQ0AIAAgACgCACICQQFxIAAgAWpBD2pBeHEiASAAa0EBdHI2AgAgASAANgIEIAEgASgCAEEBcSAAIAJBAXZqIAFrIgJBAXRyNgIAQYQgIAEgAkH/////B3FqQQRqQYQgKAIAIABGGyABNgIAIAEQJQsLygIBBX8CQAJAAkAgAEEIIABBCEsbZ0EfcyAAaUEBR2oiAUEESSAAIAF2cg0AIAFBAnRB/B5qKAIAIgJFDQADQCACQXhqIgMoAgBBAXZBeGoiBSAATwRAIAIgBUEIIAVBCEsbZ0Efc0ECdEGAH2oiASgCAEYEQCABIAIoAgQ2AgALDAMLIARBHksNASAEQQFqIQQgAigCBCICDQALC0EAIQMgAUEgTw0BA0AgAUECdEGAH2ooAgAiAkUEQCABQR5LIQIgAUEBaiEBIAJFDQEMAwsLIAIgAkF4aiIDKAIAQQF2QXhqIgFBCCABQQhLG2dBH3NBAnRBgB9qIgEoAgBGBEAgASACKAIENgIACwsgAigCACIBBEAgASACKAIENgIECyACKAIEIgEEQCABIAIoAgA2AgALIAMgAygCAEEBcjYCACADIAAQNwsgAwvhCwINfwV+IwBB8ABrIgckACAHIAAoAvDhASIINgJcIAEgAmohDSAIIAAoAoDiAWohDwJAAkAgBUUEQCABIQQMAQsgACgCxOABIRAgACgCwOABIREgACgCvOABIQ4gAEEBNgKM4QFBACEIA0AgCEEDRwRAIAcgCEECdCICaiAAIAJqQazQAWooAgA2AkQgCEEBaiEIDAELC0FsIQwgB0EYaiADIAQQBhADDQEgB0EsaiAHQRhqIAAoAgAQEyAHQTRqIAdBGGogACgCCBATIAdBPGogB0EYaiAAKAIEEBMgDUFgaiESIAEhBEEAIQwDQCAHKAIwIAcoAixBA3RqKQIAIhRCEIinQf8BcSEIIAcoAkAgBygCPEEDdGopAgAiFUIQiKdB/wFxIQsgBygCOCAHKAI0QQN0aikCACIWQiCIpyEJIBVCIIghFyAUQiCIpyECAkAgFkIQiKdB/wFxIgNBAk8EQAJAIAZFIANBGUlyRQRAIAkgB0EYaiADQSAgBygCHGsiCiAKIANLGyIKEAUgAyAKayIDdGohCSAHQRhqEAQaIANFDQEgB0EYaiADEAUgCWohCQwBCyAHQRhqIAMQBSAJaiEJIAdBGGoQBBoLIAcpAkQhGCAHIAk2AkQgByAYNwNIDAELAkAgA0UEQCACBEAgBygCRCEJDAMLIAcoAkghCQwBCwJAAkAgB0EYakEBEAUgCSACRWpqIgNBA0YEQCAHKAJEQX9qIgMgA0VqIQkMAQsgA0ECdCAHaigCRCIJIAlFaiEJIANBAUYNAQsgByAHKAJINgJMCwsgByAHKAJENgJIIAcgCTYCRAsgF6chAyALBEAgB0EYaiALEAUgA2ohAwsgCCALakEUTwRAIAdBGGoQBBoLIAgEQCAHQRhqIAgQBSACaiECCyAHQRhqEAQaIAcgB0EYaiAUQhiIp0H/AXEQCCAUp0H//wNxajYCLCAHIAdBGGogFUIYiKdB/wFxEAggFadB//8DcWo2AjwgB0EYahAEGiAHIAdBGGogFkIYiKdB/wFxEAggFqdB//8DcWo2AjQgByACNgJgIAcoAlwhCiAHIAk2AmggByADNgJkAkACQAJAIAQgAiADaiILaiASSw0AIAIgCmoiEyAPSw0AIA0gBGsgC0Egak8NAQsgByAHKQNoNwMQIAcgBykDYDcDCCAEIA0gB0EIaiAHQdwAaiAPIA4gESAQEB4hCwwBCyACIARqIQggBCAKEAcgAkERTwRAIARBEGohAgNAIAIgCkEQaiIKEAcgAkEQaiICIAhJDQALCyAIIAlrIQIgByATNgJcIAkgCCAOa0sEQCAJIAggEWtLBEBBbCELDAILIBAgAiAOayICaiIKIANqIBBNBEAgCCAKIAMQDxoMAgsgCCAKQQAgAmsQDyEIIAcgAiADaiIDNgJkIAggAmshCCAOIQILIAlBEE8EQCADIAhqIQMDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALDAELAkAgCUEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgCUECdCIDQcAeaigCAGoiAhAXIAIgA0HgHmooAgBrIQIgBygCZCEDDAELIAggAhAMCyADQQlJDQAgAyAIaiEDIAhBCGoiCCACQQhqIgJrQQ9MBEADQCAIIAIQDCACQQhqIQIgCEEIaiIIIANJDQAMAgALAAsDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALCyAHQRhqEAQaIAsgDCALEAMiAhshDCAEIAQgC2ogAhshBCAFQX9qIgUNAAsgDBADDQFBbCEMIAdBGGoQBEECSQ0BQQAhCANAIAhBA0cEQCAAIAhBAnQiAmpBrNABaiACIAdqKAJENgIAIAhBAWohCAwBCwsgBygCXCEIC0G6fyEMIA8gCGsiACANIARrSw0AIAQEfyAEIAggABALIABqBUEACyABayEMCyAHQfAAaiQAIAwLkRcCFn8FfiMAQdABayIHJAAgByAAKALw4QEiCDYCvAEgASACaiESIAggACgCgOIBaiETAkACQCAFRQRAIAEhAwwBCyAAKALE4AEhESAAKALA4AEhFSAAKAK84AEhDyAAQQE2AozhAUEAIQgDQCAIQQNHBEAgByAIQQJ0IgJqIAAgAmpBrNABaigCADYCVCAIQQFqIQgMAQsLIAcgETYCZCAHIA82AmAgByABIA9rNgJoQWwhECAHQShqIAMgBBAGEAMNASAFQQQgBUEESBshFyAHQTxqIAdBKGogACgCABATIAdBxABqIAdBKGogACgCCBATIAdBzABqIAdB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IAdB0AFqJAAgEAslACAAQgA3AgAgAEEAOwEIIABBADoACyAAIAE2AgwgACACOgAKC7QFAQN/IwBBMGsiBCQAIABB/wFqIgVBfWohBgJAIAMvAQIEQCAEQRhqIAEgAhAGIgIQAw0BIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahASOgAAIAMgBEEIaiAEQRhqEBI6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0FIAEgBEEQaiAEQRhqEBI6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBSABIARBCGogBEEYahASOgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEjoAACABIAJqIABrIQIMAwsgAyAEQRBqIARBGGoQEjoAAiADIARBCGogBEEYahASOgADIANBBGohAwwAAAsACyAEQRhqIAEgAhAGIgIQAw0AIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahAROgAAIAMgBEEIaiAEQRhqEBE6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0EIAEgBEEQaiAEQRhqEBE6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBCABIARBCGogBEEYahAROgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEToAACABIAJqIABrIQIMAgsgAyAEQRBqIARBGGoQEToAAiADIARBCGogBEEYahAROgADIANBBGohAwwAAAsACyAEQTBqJAAgAgtpAQF/An8CQAJAIAJBB00NACABKAAAQbfIwuF+Rw0AIAAgASgABDYCmOIBQWIgAEEQaiABIAIQPiIDEAMNAhogAEKBgICAEDcDiOEBIAAgASADaiACIANrECoMAQsgACABIAIQKgtBAAsLrQMBBn8jAEGAAWsiAyQAQWIhCAJAIAJBCUkNACAAQZjQAGogAUEIaiIEIAJBeGogAEGY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wOABCwutAgIEfwF+IwBBQGoiBCQAAkACQCACQQhJDQAgASgAAEFwcUHQ1LTCAUcNACABIAIQIiEBIABCADcDCCAAQQA2AgQgACABNgIADAELIARBGGogASACEC0iAxADBEAgACADEBoMAQsgAwRAIABBuH8QGgwBCyACIAQoAjAiA2shAiABIANqIQMDQAJAIAAgAyACIARBCGoQLCIFEAMEfyAFBSACIAVBA2oiBU8NAUG4fwsQGgwCCyAGQQFqIQYgAiAFayECIAMgBWohAyAEKAIMRQ0ACyAEKAI4BEAgAkEDTQRAIABBuH8QGgwCCyADQQRqIQMLIAQoAighAiAEKQMYIQcgAEEANgIEIAAgAyABazYCACAAIAIgBmytIAcgB0J/URs3AwgLIARBQGskAAslAQF/IwBBEGsiAiQAIAIgACABEFEgAigCACEAIAJBEGokACAAC30BBH8jAEGQBGsiBCQAIARB/wE2AggCQCAEQRBqIARBCGogBEEMaiABIAIQFSIGEAMEQCAGIQUMAQtBVCEFIAQoAgwiB0EGSw0AIAMgBEEQaiAEKAIIIAcQQSIFEAMNACAAIAEgBmogAiAGayADEDwhBQsgBEGQBGokACAFC4cBAgJ/An5BABAWIQMCQANAIAEgA08EQAJAIAAoAABBcHFB0NS0wgFGBEAgACABECIiAhADRQ0BQn4PCyAAIAEQVSIEQn1WDQMgBCAFfCIFIARUIQJCfiEEIAINAyAAIAEQUiICEAMNAwsgASACayEBIAAgAmohAAwBCwtCfiAFIAEbIQQLIAQLPwIBfwF+IwBBMGsiAiQAAn5CfiACQQhqIAAgARAtDQAaQgAgAigCHEEBRg0AGiACKQMICyEDIAJBMGokACADC40BAQJ/IwBBMGsiASQAAkAgAEUNACAAKAKI4gENACABIABB/OEBaigCADYCKCABIAApAvThATcDICAAEDAgACgCqOIBIQIgASABKAIoNgIYIAEgASkDIDcDECACIAFBEGoQGyAAQQA2AqjiASABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALKgECfyMAQRBrIgAkACAAQQA2AgggAEIANwMAIAAQWCEBIABBEGokACABC4cBAQN/IwBBEGsiAiQAAkAgACgCAEUgACgCBEVzDQAgAiAAKAIINgIIIAIgACkCADcDAAJ/IAIoAgAiAQRAIAIoAghBqOMJIAERBQAMAQtBqOMJECgLIgFFDQAgASAAKQIANwL04QEgAUH84QFqIAAoAgg2AgAgARBZIAEhAwsgAkEQaiQAIAMLywEBAn8jAEEgayIBJAAgAEGBgIDAADYCtOIBIABBADYCiOIBIABBADYC7OEBIABCADcDkOIBIABBADYCpOMJIABBADYC3OIBIABCADcCzOIBIABBADYCvOIBIABBADYCxOABIABCADcCnOIBIABBpOIBakIANwIAIABBrOIBakEANgIAIAFCADcCECABQgA3AhggASABKQMYNwMIIAEgASkDEDcDACABKAIIQQh2QQFxIQIgAEEANgLg4gEgACACNgKM4gEgAUEgaiQAC3YBA38jAEEwayIBJAAgAARAIAEgAEHE0AFqIgIoAgA2AiggASAAKQK80AE3AyAgACgCACEDIAEgAigCADYCGCABIAApArzQATcDECADIAFBEGoQGyABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALzAEBAX8gACABKAK00AE2ApjiASAAIAEoAgQiAjYCwOABIAAgAjYCvOABIAAgAiABKAIIaiICNgK44AEgACACNgLE4AEgASgCuNABBEAgAEKBgICAEDcDiOEBIAAgAUGk0ABqNgIMIAAgAUGUIGo2AgggACABQZwwajYCBCAAIAFBDGo2AgAgAEGs0AFqIAFBqNABaigCADYCACAAQbDQAWogAUGs0AFqKAIANgIAIABBtNABaiABQbDQAWooAgA2AgAPCyAAQgA3A4jhAQs7ACACRQRAQbp/DwsgBEUEQEFsDwsgAiAEEGAEQCAAIAEgAiADIAQgBRBhDwsgACABIAIgAyAEIAUQZQtGAQF/IwBBEGsiBSQAIAVBCGogBBAOAn8gBS0ACQRAIAAgASACIAMgBBAyDAELIAAgASACIAMgBBA0CyEAIAVBEGokACAACzQAIAAgAyAEIAUQNiIFEAMEQCAFDwsgBSAESQR/IAEgAiADIAVqIAQgBWsgABA1BUG4fwsLRgEBfyMAQRBrIgUkACAFQQhqIAQQDgJ/IAUtAAkEQCAAIAEgAiADIAQQYgwBCyAAIAEgAiADIAQQNQshACAFQRBqJAAgAAtZAQF/QQ8hAiABIABJBEAgAUEE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", Lt = /* @__PURE__ */ new WeakMap();
|
|
2681
|
-
let
|
|
2682
|
-
class re extends
|
|
2889
|
+
const Na = "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IAMNACAEQQNxBEADQCACRQ0FIAAgAkF/aiICaiIDIAEgAmotAAA6AAAgA0EDcQ0ACwsgAkEDTQ0AA0AgACACQXxqIgJqIAEgAmooAgA2AgAgAkEDSw0ACwsgAkUNAgNAIAAgAkF/aiICaiABIAJqLQAAOgAAIAINAAsMAgsgAkEDTQ0AIAIhBANAIAMgASgCADYCACABQQRqIQEgA0EEaiEDIARBfGoiBEEDSw0ACyACQQNxIQILIAJFDQADQCADIAEtAAA6AAAgA0EBaiEDIAFBAWohASACQX9qIgINAAsLIAAL8wICAn8BfgJAIAJFDQAgACACaiIDQX9qIAE6AAAgACABOgAAIAJBA0kNACADQX5qIAE6AAAgACABOgABIANBfWogAToAACAAIAE6AAIgAkEHSQ0AIANBfGogAToAACAAIAE6AAMgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBfGogATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQXhqIAE2AgAgAkF0aiABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkFwaiABNgIAIAJBbGogATYCACACQWhqIAE2AgAgAkFkaiABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa0iBUIghiAFhCEFIAMgBGohAQNAIAEgBTcDGCABIAU3AxAgASAFNwMIIAEgBTcDACABQSBqIQEgAkFgaiICQR9LDQALCyAACy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAIajYCACADCy8BAn8gACgCBCAAKAIAQQJ0aiICLQACIQMgACACLwEAIAEgAi0AAxAFajYCACADCx8AIAAgASACKAIEEAg2AgAgARAEGiAAIAJBCGo2AgQLCAAgAGdBH3MLugUBDX8jAEEQayIKJAACfyAEQQNNBEAgCkEANgIMIApBDGogAyAEEAsaIAAgASACIApBDGpBBBAVIgBBbCAAEAMbIAAgACAESxsMAQsgAEEAIAEoAgBBAXRBAmoQECENQVQgAygAACIGQQ9xIgBBCksNABogAiAAQQVqNgIAIAMgBGoiAkF8aiEMIAJBeWohDiACQXtqIRAgAEEGaiELQQQh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ASIDNgLE4AEgACgCvOABIQQgACABNgK84AEgACABIAJqNgK44AEgACABIAQgA2tqNgLA4AELpgEBAX8gACAAKALs4QEQFjYCyOABIABCADcD+OABIABCADcDuOABIABBwOABakIANwMAIABBqNAAaiIBQYyAgOAANgIAIABBADYCmOIBIABCADcDiOEBIABCAzcDgOEBIABBrNABakHgEikCADcCACAAQbTQAWpB6BIoAgA2AgAgACABNgIMIAAgAEGYIGo2AgggACAAQaAwajYCBCAAIABBEGo2AgALYQEBf0G4fyEDAkAgAUEDSQ0AIAIgABAhIgFBA3YiADYCCCACIAFBAXE2AgQgAiABQQF2QQNxIgM2AgACQCADQX9qIgFBAksNAAJAIAFBAWsOAgEAAgtBbA8LIAAhAwsgAwsMACAAIAEgAkEAEC4LiAQCA38CfiADEBYhBCAAQQBBKBAQIQAgBCACSwRAIAQPCyABRQRAQX8PCwJAAkAgA0EBRg0AIAEoAAAiBkGo6r5pRg0AQXYhAyAGQXBxQdDUtMIBRw0BQQghAyACQQhJDQEgAEEAQSgQECEAIAEoAAQhASAAQQE2AhQgACABrTcDAEEADwsgASACIAMQLyIDIAJLDQAgACADNgIYQXIhAyABIARqIgVBf2otAAAiAkEIcQ0AIAJBIHEiBkUEQEFwIQMgBS0AACIFQacBSw0BIAVBB3GtQgEgBUEDdkEKaq2GIgdCA4h+IAd8IQggBEEBaiEECyACQQZ2IQMgAkECdiEFAkAgAkEDcUF/aiICQQJLBEBBACECDAELAkACQAJAIAJBAWsOAgECAAsgASAEai0AACECIARBAWohBAwCCyABIARqLwAAIQIgBEECaiEEDAELIAEgBGooAAAhAiAEQQRqIQQLIAVBAXEhBQJ+AkACQAJAIANBf2oiA0ECTQRAIANBAWsOAgIDAQtCfyAGRQ0DGiABIARqMQAADAMLIAEgBGovAACtQoACfAwCCyABIARqKAAArQwBCyABIARqKQAACyEHIAAgBTYCICAAIAI2AhwgACAHNwMAQQAhAyAAQQA2AhQgACAHIAggBhsiBzcDCCAAIAdCgIAIIAdCgIAIVBs+AhALIAMLWwEBf0G4fyEDIAIQFiICIAFNBH8gACACakF/ai0AACIAQQNxQQJ0QaAeaigC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C0Egak8NAQsgByAHKQNoNwMQIAcgBykDYDcDCCAEIA0gB0EIaiAHQdwAaiAPIA4gESAQEB4hCwwBCyACIARqIQggBCAKEAcgAkERTwRAIARBEGohAgNAIAIgCkEQaiIKEAcgAkEQaiICIAhJDQALCyAIIAlrIQIgByATNgJcIAkgCCAOa0sEQCAJIAggEWtLBEBBbCELDAILIBAgAiAOayICaiIKIANqIBBNBEAgCCAKIAMQDxoMAgsgCCAKQQAgAmsQDyEIIAcgAiADaiIDNgJkIAggAmshCCAOIQILIAlBEE8EQCADIAhqIQMDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALDAELAkAgCUEHTQRAIAggAi0AADoAACAIIAItAAE6AAEgCCACLQACOgACIAggAi0AAzoAAyAIQQRqIAIgCUECdCIDQcAeaigCAGoiAhAXIAIgA0HgHmooAgBrIQIgBygCZCEDDAELIAggAhAMCyADQQlJDQAgAyAIaiEDIAhBCGoiCCACQQhqIgJrQQ9MBEADQCAIIAIQDCACQQhqIQIgCEEIaiIIIANJDQAMAgALAAsDQCAIIAIQByACQRBqIQIgCEEQaiIIIANJDQALCyAHQRhqEAQaIAsgDCALEAMiAhshDCAEIAQgC2ogAhshBCAFQX9qIgUNAAsgDBADDQFBbCEMIAdBGGoQBEECSQ0BQQAhCANAIAhBA0cEQCAAIAhBAnQiAmpBrNABaiACIAdqKAJENgIAIAhBAWohCAwBCwsgBygCXCEIC0G6fyEMIA8gCGsiACANIARrSw0AIAQEfyAEIAggABALIABqBUEACyABayEMCyAHQfAAaiQAIAwLkRcCFn8FfiMAQdABayIHJAAgByAAKALw4QEiCDYCvAEgASACaiESIAggACgCgOIBaiETAkACQCAFRQRAIAEhAwwBCyAAKALE4AEhESAAKALA4AEhFSAAKAK84AEhDyAAQQE2AozhAUEAIQgDQCAIQQNHBEAgByAIQQJ0IgJqIAAgAmpBrNABaigCADYCVCAIQQFqIQgMAQsLIAcgETYCZCAHIA82AmAgByABIA9rNgJoQWwhECAHQShqIAMgBBAGEAMNASAFQQQgBUEESBshFyAHQTxqIAdBKGogACgCABATIAdBxABqIAdBKGogACgCCBATIAdBzABqIAdB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IAdB0AFqJAAgEAslACAAQgA3AgAgAEEAOwEIIABBADoACyAAIAE2AgwgACACOgAKC7QFAQN/IwBBMGsiBCQAIABB/wFqIgVBfWohBgJAIAMvAQIEQCAEQRhqIAEgAhAGIgIQAw0BIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahASOgAAIAMgBEEIaiAEQRhqEBI6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0FIAEgBEEQaiAEQRhqEBI6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBSABIARBCGogBEEYahASOgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEjoAACABIAJqIABrIQIMAwsgAyAEQRBqIARBGGoQEjoAAiADIARBCGogBEEYahASOgADIANBBGohAwwAAAsACyAEQRhqIAEgAhAGIgIQAw0AIARBEGogBEEYaiADEBwgBEEIaiAEQRhqIAMQHCAAIQMDQAJAIARBGGoQBCADIAZPckUEQCADIARBEGogBEEYahAROgAAIAMgBEEIaiAEQRhqEBE6AAEgBEEYahAERQ0BIANBAmohAwsgBUF+aiEFAn8DQEG6fyECIAMiASAFSw0EIAEgBEEQaiAEQRhqEBE6AAAgAUEBaiEDIARBGGoQBEEDRgRAQQIhAiAEQQhqDAILIAMgBUsNBCABIARBCGogBEEYahAROgABIAFBAmohA0EDIQIgBEEYahAEQQNHDQALIARBEGoLIQUgAyAFIARBGGoQEToAACABIAJqIABrIQIMAgsgAyAEQRBqIARBGGoQEToAAiADIARBCGogBEEYahAROgADIANBBGohAwwAAAsACyAEQTBqJAAgAgtpAQF/An8CQAJAIAJBB00NACABKAAAQbfIwuF+Rw0AIAAgASgABDYCmOIBQWIgAEEQaiABIAIQPiIDEAMNAhogAEKBgICAEDcDiOEBIAAgASADaiACIANrECoMAQsgACABIAIQKgtBAAsLrQMBBn8jAEGAAWsiAyQAQWIhCAJAIAJBCUkNACAAQZjQAGogAUEIaiIEIAJBeGogAEGY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wOABCwutAgIEfwF+IwBBQGoiBCQAAkACQCACQQhJDQAgASgAAEFwcUHQ1LTCAUcNACABIAIQIiEBIABCADcDCCAAQQA2AgQgACABNgIADAELIARBGGogASACEC0iAxADBEAgACADEBoMAQsgAwRAIABBuH8QGgwBCyACIAQoAjAiA2shAiABIANqIQMDQAJAIAAgAyACIARBCGoQLCIFEAMEfyAFBSACIAVBA2oiBU8NAUG4fwsQGgwCCyAGQQFqIQYgAiAFayECIAMgBWohAyAEKAIMRQ0ACyAEKAI4BEAgAkEDTQRAIABBuH8QGgwCCyADQQRqIQMLIAQoAighAiAEKQMYIQcgAEEANgIEIAAgAyABazYCACAAIAIgBmytIAcgB0J/URs3AwgLIARBQGskAAslAQF/IwBBEGsiAiQAIAIgACABEFEgAigCACEAIAJBEGokACAAC30BBH8jAEGQBGsiBCQAIARB/wE2AggCQCAEQRBqIARBCGogBEEMaiABIAIQFSIGEAMEQCAGIQUMAQtBVCEFIAQoAgwiB0EGSw0AIAMgBEEQaiAEKAIIIAcQQSIFEAMNACAAIAEgBmogAiAGayADEDwhBQsgBEGQBGokACAFC4cBAgJ/An5BABAWIQMCQANAIAEgA08EQAJAIAAoAABBcHFB0NS0wgFGBEAgACABECIiAhADRQ0BQn4PCyAAIAEQVSIEQn1WDQMgBCAFfCIFIARUIQJCfiEEIAINAyAAIAEQUiICEAMNAwsgASACayEBIAAgAmohAAwBCwtCfiAFIAEbIQQLIAQLPwIBfwF+IwBBMGsiAiQAAn5CfiACQQhqIAAgARAtDQAaQgAgAigCHEEBRg0AGiACKQMICyEDIAJBMGokACADC40BAQJ/IwBBMGsiASQAAkAgAEUNACAAKAKI4gENACABIABB/OEBaigCADYCKCABIAApAvThATcDICAAEDAgACgCqOIBIQIgASABKAIoNgIYIAEgASkDIDcDECACIAFBEGoQGyAAQQA2AqjiASABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALKgECfyMAQRBrIgAkACAAQQA2AgggAEIANwMAIAAQWCEBIABBEGokACABC4cBAQN/IwBBEGsiAiQAAkAgACgCAEUgACgCBEVzDQAgAiAAKAIINgIIIAIgACkCADcDAAJ/IAIoAgAiAQRAIAIoAghBqOMJIAERBQAMAQtBqOMJECgLIgFFDQAgASAAKQIANwL04QEgAUH84QFqIAAoAgg2AgAgARBZIAEhAwsgAkEQaiQAIAMLywEBAn8jAEEgayIBJAAgAEGBgIDAADYCtOIBIABBADYCiOIBIABBADYC7OEBIABCADcDkOIBIABBADYCpOMJIABBADYC3OIBIABCADcCzOIBIABBADYCvOIBIABBADYCxOABIABCADcCnOIBIABBpOIBakIANwIAIABBrOIBakEANgIAIAFCADcCECABQgA3AhggASABKQMYNwMIIAEgASkDEDcDACABKAIIQQh2QQFxIQIgAEEANgLg4gEgACACNgKM4gEgAUEgaiQAC3YBA38jAEEwayIBJAAgAARAIAEgAEHE0AFqIgIoAgA2AiggASAAKQK80AE3AyAgACgCACEDIAEgAigCADYCGCABIAApArzQATcDECADIAFBEGoQGyABIAEoAig2AgggASABKQMgNwMAIAAgARAbCyABQTBqJAALzAEBAX8gACABKAK00AE2ApjiASAAIAEoAgQiAjYCwOABIAAgAjYCvOABIAAgAiABKAIIaiICNgK44AEgACACNgLE4AEgASgCuNABBEAgAEKBgICAEDcDiOEBIAAgAUGk0ABqNgIMIAAgAUGUIGo2AgggACABQZwwajYCBCAAIAFBDGo2AgAgAEGs0AFqIAFBqNABaigCADYCACAAQbDQAWogAUGs0AFqKAIANgIAIABBtNABaiABQbDQAWooAgA2AgAPCyAAQgA3A4jhAQs7ACACRQRAQbp/DwsgBEUEQEFsDwsgAiAEEGAEQCAAIAEgAiADIAQgBRBhDwsgACABIAIgAyAEIAUQZQtGAQF/IwBBEGsiBSQAIAVBCGogBBAOAn8gBS0ACQRAIAAgASACIAMgBBAyDAELIAAgASACIAMgBBA0CyEAIAVBEGokACAACzQAIAAgAyAEIAUQNiIFEAMEQCAFDwsgBSAESQR/IAEgAiADIAVqIAQgBWsgABA1BUG4fwsLRgEBfyMAQRBrIgUkACAFQQhqIAQQDgJ/IAUtAAkEQCAAIAEgAiADIAQQYgwBCyAAIAEgAiADIAQQNQshACAFQRBqJAAgAAtZAQF/QQ8hAiABIABJBEAgAUEE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", Nt = /* @__PURE__ */ new WeakMap();
|
|
2890
|
+
let _t, Pt = 0;
|
|
2891
|
+
class re extends da {
|
|
2683
2892
|
constructor(e) {
|
|
2684
|
-
super(e), this.transcoderPath = "", this.transcoderBinary = null, this.transcoderPending = null, this.workerPool = new
|
|
2893
|
+
super(e), this.transcoderPath = "", this.transcoderBinary = null, this.transcoderPending = null, this.workerPool = new ws(), this.workerSourceURL = "", this.workerConfig = null, typeof MSC_TRANSCODER < "u" && console.warn('THREE.KTX2Loader: Please update to latest "basis_transcoder". "msc_basis_transcoder" is no longer supported in three.js r125+.');
|
|
2685
2894
|
}
|
|
2686
2895
|
setTranscoderPath(e) {
|
|
2687
2896
|
return this.transcoderPath = e, this;
|
|
@@ -2697,9 +2906,9 @@ class re extends na {
|
|
|
2697
2906
|
}
|
|
2698
2907
|
init() {
|
|
2699
2908
|
if (!this.transcoderPending) {
|
|
2700
|
-
const e = new
|
|
2909
|
+
const e = new Xe(this.manager);
|
|
2701
2910
|
e.setPath(this.transcoderPath), e.setWithCredentials(this.withCredentials);
|
|
2702
|
-
const t = e.loadAsync("basis_transcoder.js"), a = new
|
|
2911
|
+
const t = e.loadAsync("basis_transcoder.js"), a = new Xe(this.manager);
|
|
2703
2912
|
a.setPath(this.transcoderPath), a.setResponseType("arraybuffer"), a.setWithCredentials(this.withCredentials);
|
|
2704
2913
|
const A = a.loadAsync("basis_transcoder.wasm");
|
|
2705
2914
|
this.transcoderPending = Promise.all([t, A]).then(([s, i]) => {
|
|
@@ -2709,107 +2918,107 @@ class re extends na {
|
|
|
2709
2918
|
const h = new Worker(this.workerSourceURL), b = this.transcoderBinary.slice(0);
|
|
2710
2919
|
return h.postMessage({ type: "init", config: this.workerConfig, transcoderBinary: b }, [b]), h;
|
|
2711
2920
|
});
|
|
2712
|
-
}),
|
|
2921
|
+
}), Pt > 0 && console.warn("THREE.KTX2Loader: Multiple active KTX2 loaders may cause performance issues. Use a single KTX2Loader instance, or call .dispose() on old instances."), Pt++;
|
|
2713
2922
|
}
|
|
2714
2923
|
return this.transcoderPending;
|
|
2715
2924
|
}
|
|
2716
2925
|
load(e, t, a, A) {
|
|
2717
2926
|
if (this.workerConfig === null) throw new Error("THREE.KTX2Loader: Missing initialization with `.detectSupport( renderer )`.");
|
|
2718
|
-
const s = new
|
|
2927
|
+
const s = new Xe(this.manager);
|
|
2719
2928
|
s.setResponseType("arraybuffer"), s.setWithCredentials(this.withCredentials), s.load(e, (i) => {
|
|
2720
2929
|
this.parse(i, t, A);
|
|
2721
2930
|
}, a, A);
|
|
2722
2931
|
}
|
|
2723
2932
|
parse(e, t, a) {
|
|
2724
2933
|
if (this.workerConfig === null) throw new Error("THREE.KTX2Loader: Missing initialization with `.detectSupport( renderer )`.");
|
|
2725
|
-
if (
|
|
2726
|
-
return
|
|
2934
|
+
if (Nt.has(e))
|
|
2935
|
+
return Nt.get(e).promise.then(t).catch(a);
|
|
2727
2936
|
this._createTexture(e).then((A) => t ? t(A) : null).catch(a);
|
|
2728
2937
|
}
|
|
2729
2938
|
_createTextureFrom(e, t) {
|
|
2730
2939
|
const { type: a, error: A, data: { faces: s, width: i, height: n, format: l, type: h, dfdFlags: b } } = e;
|
|
2731
2940
|
if (a === "error") return Promise.reject(A);
|
|
2732
2941
|
let g;
|
|
2733
|
-
if (t.faceCount === 6) g = new
|
|
2942
|
+
if (t.faceCount === 6) g = new pi(s, l, h);
|
|
2734
2943
|
else {
|
|
2735
2944
|
const f = s[0].mipmaps;
|
|
2736
|
-
g = t.layerCount > 1 ? new
|
|
2945
|
+
g = t.layerCount > 1 ? new Bi(f, i, n, t.layerCount, l, h) : new ma(f, i, n, l, h);
|
|
2737
2946
|
}
|
|
2738
|
-
return g.minFilter = s[0].mipmaps.length === 1 ?
|
|
2947
|
+
return g.minFilter = s[0].mipmaps.length === 1 ? ut : ha, g.magFilter = ut, g.generateMipmaps = !1, g.needsUpdate = !0, g.colorSpace = _a(t), g.premultiplyAlpha = !!(1 & b), g;
|
|
2739
2948
|
}
|
|
2740
2949
|
async _createTexture(e, t = {}) {
|
|
2741
2950
|
const a = function(n) {
|
|
2742
2951
|
const l = new Uint8Array(n.buffer, n.byteOffset, ae.length);
|
|
2743
2952
|
if (l[0] !== ae[0] || l[1] !== ae[1] || l[2] !== ae[2] || l[3] !== ae[3] || l[4] !== ae[4] || l[5] !== ae[5] || l[6] !== ae[6] || l[7] !== ae[7] || l[8] !== ae[8] || l[9] !== ae[9] || l[10] !== ae[10] || l[11] !== ae[11]) throw new Error("Missing KTX 2.0 identifier.");
|
|
2744
|
-
const h = new
|
|
2953
|
+
const h = new xs(), b = 17 * Uint32Array.BYTES_PER_ELEMENT, g = new rt(n, ae.length, b, !0);
|
|
2745
2954
|
h.vkFormat = g._nextUint32(), h.typeSize = g._nextUint32(), h.pixelWidth = g._nextUint32(), h.pixelHeight = g._nextUint32(), h.pixelDepth = g._nextUint32(), h.layerCount = g._nextUint32(), h.faceCount = g._nextUint32();
|
|
2746
2955
|
const f = g._nextUint32();
|
|
2747
2956
|
h.supercompressionScheme = g._nextUint32();
|
|
2748
|
-
const I = g._nextUint32(), u = g._nextUint32(), p = g._nextUint32(), m = g._nextUint32(),
|
|
2749
|
-
for (let
|
|
2750
|
-
const w = new
|
|
2751
|
-
for (let
|
|
2957
|
+
const I = g._nextUint32(), u = g._nextUint32(), p = g._nextUint32(), m = g._nextUint32(), C = g._nextUint64(), E = g._nextUint64(), x = new rt(n, ae.length + b, 3 * f * 8, !0);
|
|
2958
|
+
for (let _ = 0; _ < f; _++) h.levels.push({ levelData: new Uint8Array(n.buffer, n.byteOffset + x._nextUint64(), x._nextUint64()), uncompressedByteLength: x._nextUint64() });
|
|
2959
|
+
const w = new rt(n, I, u, !0), M = { vendorId: w._skip(4)._nextUint16(), descriptorType: w._nextUint16(), versionNumber: w._nextUint16(), descriptorBlockSize: w._nextUint16(), colorModel: w._nextUint8(), colorPrimaries: w._nextUint8(), transferFunction: w._nextUint8(), flags: w._nextUint8(), texelBlockDimension: [w._nextUint8(), w._nextUint8(), w._nextUint8(), w._nextUint8()], bytesPlane: [w._nextUint8(), w._nextUint8(), w._nextUint8(), w._nextUint8(), w._nextUint8(), w._nextUint8(), w._nextUint8(), w._nextUint8()], samples: [] }, T = (M.descriptorBlockSize / 4 - 6) / 4;
|
|
2960
|
+
for (let _ = 0; _ < T; _++) {
|
|
2752
2961
|
const O = { bitOffset: w._nextUint16(), bitLength: w._nextUint8(), channelType: w._nextUint8(), samplePosition: [w._nextUint8(), w._nextUint8(), w._nextUint8(), w._nextUint8()], sampleLower: -1 / 0, sampleUpper: 1 / 0 };
|
|
2753
|
-
64 & O.channelType ? (O.sampleLower = w._nextInt32(), O.sampleUpper = w._nextInt32()) : (O.sampleLower = w._nextUint32(), O.sampleUpper = w._nextUint32()), M.samples[
|
|
2962
|
+
64 & O.channelType ? (O.sampleLower = w._nextInt32(), O.sampleUpper = w._nextInt32()) : (O.sampleLower = w._nextUint32(), O.sampleUpper = w._nextUint32()), M.samples[_] = O;
|
|
2754
2963
|
}
|
|
2755
2964
|
h.dataFormatDescriptor.length = 0, h.dataFormatDescriptor.push(M);
|
|
2756
|
-
const
|
|
2757
|
-
for (;
|
|
2758
|
-
const
|
|
2759
|
-
if (h.keyValue[X] =
|
|
2760
|
-
const ne =
|
|
2965
|
+
const v = new rt(n, p, m, !0);
|
|
2966
|
+
for (; v._offset < m; ) {
|
|
2967
|
+
const _ = v._nextUint32(), O = v._scan(_), X = La(O);
|
|
2968
|
+
if (h.keyValue[X] = v._nextUint8Array(_ - O.byteLength - 1), X.match(/^ktx/i)) {
|
|
2969
|
+
const ne = La(h.keyValue[X]);
|
|
2761
2970
|
h.keyValue[X] = ne.substring(0, ne.lastIndexOf("\0"));
|
|
2762
2971
|
}
|
|
2763
|
-
|
|
2972
|
+
v._skip(_ % 4 ? 4 - _ % 4 : 0);
|
|
2764
2973
|
}
|
|
2765
|
-
if (
|
|
2766
|
-
const k = new
|
|
2767
|
-
for (let
|
|
2768
|
-
const He =
|
|
2769
|
-
return h.globalData = { endpointCount: R, selectorCount: S, imageDescs: V, endpointsData: qe, selectorsData: de, tablesData: ie, extendedData:
|
|
2770
|
-
}(new Uint8Array(e)), A = a.vkFormat ===
|
|
2974
|
+
if (E <= 0) return h;
|
|
2975
|
+
const k = new rt(n, C, E, !0), R = k._nextUint16(), S = k._nextUint16(), F = k._nextUint32(), z = k._nextUint32(), Ae = k._nextUint32(), H = k._nextUint32(), V = [];
|
|
2976
|
+
for (let _ = 0; _ < f; _++) V.push({ imageFlags: k._nextUint32(), rgbSliceByteOffset: k._nextUint32(), rgbSliceByteLength: k._nextUint32(), alphaSliceByteOffset: k._nextUint32(), alphaSliceByteLength: k._nextUint32() });
|
|
2977
|
+
const He = C + k._offset, Te = He + F, Se = Te + z, Fe = Se + Ae, qe = new Uint8Array(n.buffer, n.byteOffset + He, F), de = new Uint8Array(n.buffer, n.byteOffset + Te, z), ie = new Uint8Array(n.buffer, n.byteOffset + Se, Ae), Ce = new Uint8Array(n.buffer, n.byteOffset + Fe, H);
|
|
2978
|
+
return h.globalData = { endpointCount: R, selectorCount: S, imageDescs: V, endpointsData: qe, selectorsData: de, tablesData: ie, extendedData: Ce }, h;
|
|
2979
|
+
}(new Uint8Array(e)), A = a.vkFormat === la && a.dataFormatDescriptor[0].colorModel === 167;
|
|
2771
2980
|
if (!(a.vkFormat === 0 || A && !this.workerConfig.astcHDRSupported)) return async function(n) {
|
|
2772
2981
|
const { vkFormat: l } = n;
|
|
2773
|
-
if (
|
|
2982
|
+
if (Ot[l] === void 0) throw new Error("THREE.KTX2Loader: Unsupported vkFormat.");
|
|
2774
2983
|
let h;
|
|
2775
|
-
n.supercompressionScheme === 2 && (
|
|
2776
|
-
const I = new
|
|
2984
|
+
n.supercompressionScheme === 2 && (_t || (_t = new Promise(async (f) => {
|
|
2985
|
+
const I = new Ls();
|
|
2777
2986
|
await I.init(), f(I);
|
|
2778
|
-
})), h = await
|
|
2987
|
+
})), h = await _t);
|
|
2779
2988
|
const b = [];
|
|
2780
2989
|
for (let f = 0; f < n.levels.length; f++) {
|
|
2781
2990
|
const I = Math.max(1, n.pixelWidth >> f), u = Math.max(1, n.pixelHeight >> f), p = n.pixelDepth ? Math.max(1, n.pixelDepth >> f) : 0, m = n.levels[f];
|
|
2782
|
-
let
|
|
2783
|
-
if (n.supercompressionScheme === 0)
|
|
2991
|
+
let C, E;
|
|
2992
|
+
if (n.supercompressionScheme === 0) C = m.levelData;
|
|
2784
2993
|
else {
|
|
2785
2994
|
if (n.supercompressionScheme !== 2) throw new Error("THREE.KTX2Loader: Unsupported supercompressionScheme.");
|
|
2786
|
-
|
|
2995
|
+
C = h.decode(m.levelData, m.uncompressedByteLength);
|
|
2787
2996
|
}
|
|
2788
|
-
|
|
2997
|
+
E = Ht[l] === W ? new Float32Array(C.buffer, C.byteOffset, C.byteLength / Float32Array.BYTES_PER_ELEMENT) : Ht[l] === et ? new Uint16Array(C.buffer, C.byteOffset, C.byteLength / Uint16Array.BYTES_PER_ELEMENT) : C, b.push({ data: E, width: I, height: u, depth: p });
|
|
2789
2998
|
}
|
|
2790
2999
|
let g;
|
|
2791
|
-
if (
|
|
3000
|
+
if (Us.has(Ot[l])) g = n.pixelDepth === 0 ? new ct(b[0].data, n.pixelWidth, n.pixelHeight) : new ji(b[0].data, n.pixelWidth, n.pixelHeight, n.pixelDepth);
|
|
2792
3001
|
else {
|
|
2793
3002
|
if (n.pixelDepth > 0) throw new Error("THREE.KTX2Loader: Unsupported pixelDepth.");
|
|
2794
|
-
g = new
|
|
3003
|
+
g = new ma(b, n.pixelWidth, n.pixelHeight);
|
|
2795
3004
|
}
|
|
2796
|
-
return g.mipmaps = b, g.type =
|
|
3005
|
+
return g.mipmaps = b, g.type = Ht[l], g.format = Ot[l], g.colorSpace = _a(n), g.needsUpdate = !0, Promise.resolve(g);
|
|
2797
3006
|
}(a);
|
|
2798
3007
|
const s = t, i = this.init().then(() => this.workerPool.postMessage({ type: "transcode", buffer: e, taskConfig: s }, [e])).then((n) => this._createTextureFrom(n.data, a));
|
|
2799
|
-
return
|
|
3008
|
+
return Nt.set(e, { promise: i }), i;
|
|
2800
3009
|
}
|
|
2801
3010
|
dispose() {
|
|
2802
|
-
return this.workerPool.dispose(), this.workerSourceURL && URL.revokeObjectURL(this.workerSourceURL),
|
|
3011
|
+
return this.workerPool.dispose(), this.workerSourceURL && URL.revokeObjectURL(this.workerSourceURL), Pt--, this;
|
|
2803
3012
|
}
|
|
2804
3013
|
}
|
|
2805
|
-
re.BasisFormat = { ETC1S: 0, UASTC: 1, UASTC_HDR: 2 }, re.TranscoderFormat = { ETC1: 0, ETC2: 1, BC1: 2, BC3: 3, BC4: 4, BC5: 5, BC7_M6_OPAQUE_ONLY: 6, BC7_M5: 7, PVRTC1_4_RGB: 8, PVRTC1_4_RGBA: 9, ASTC_4x4: 10, ATC_RGB: 11, ATC_RGBA_INTERPOLATED_ALPHA: 12, RGBA32: 13, RGB565: 14, BGR565: 15, RGBA4444: 16, BC6H: 22, RGB_HALF: 24, RGBA_HALF: 25 }, re.EngineFormat = { RGBAFormat: Be, RGBA_ASTC_4x4_Format:
|
|
2806
|
-
let
|
|
3014
|
+
re.BasisFormat = { ETC1S: 0, UASTC: 1, UASTC_HDR: 2 }, re.TranscoderFormat = { ETC1: 0, ETC2: 1, BC1: 2, BC3: 3, BC4: 4, BC5: 5, BC7_M6_OPAQUE_ONLY: 6, BC7_M5: 7, PVRTC1_4_RGB: 8, PVRTC1_4_RGBA: 9, ASTC_4x4: 10, ATC_RGB: 11, ATC_RGBA_INTERPOLATED_ALPHA: 12, RGBA32: 13, RGB565: 14, BGR565: 15, RGBA4444: 16, BC6H: 22, RGB_HALF: 24, RGBA_HALF: 25 }, re.EngineFormat = { RGBAFormat: Be, RGBA_ASTC_4x4_Format: rA, RGB_BPTC_UNSIGNED_Format: mi, RGBA_BPTC_Format: Ci, RGBA_ETC2_EAC_Format: Ei, RGBA_PVRTC_4BPPV1_Format: Qi, RGBA_S3TC_DXT5_Format: yi, RGB_ETC1_Format: wi, RGB_ETC2_Format: xi, RGB_PVRTC_4BPPV1_Format: ki, RGBA_S3TC_DXT1_Format: Di }, re.EngineType = { UnsignedByteType: ue, HalfFloatType: et, FloatType: W }, re.BasisWorker = function() {
|
|
3015
|
+
let o, e, t;
|
|
2807
3016
|
const a = _EngineFormat, A = _EngineType, s = _TranscoderFormat, i = _BasisFormat;
|
|
2808
3017
|
self.addEventListener("message", function(g) {
|
|
2809
3018
|
const f = g.data;
|
|
2810
3019
|
switch (f.type) {
|
|
2811
3020
|
case "init":
|
|
2812
|
-
|
|
3021
|
+
o = f.config, I = f.transcoderBinary, e = new Promise((u) => {
|
|
2813
3022
|
t = { wasmBinary: I, onRuntimeInitialized: u }, BASIS(t);
|
|
2814
3023
|
}).then(() => {
|
|
2815
3024
|
t.initializeBasis(), t.KTX2File === void 0 && console.warn("THREE.KTX2Loader: Please update Basis Universal transcoder.");
|
|
@@ -2818,52 +3027,52 @@ re.BasisFormat = { ETC1S: 0, UASTC: 1, UASTC_HDR: 2 }, re.TranscoderFormat = { E
|
|
|
2818
3027
|
case "transcode":
|
|
2819
3028
|
e.then(() => {
|
|
2820
3029
|
try {
|
|
2821
|
-
const { faces: u, buffers: p, width: m, height:
|
|
2822
|
-
const
|
|
3030
|
+
const { faces: u, buffers: p, width: m, height: C, hasAlpha: E, format: x, type: w, dfdFlags: M } = function(T) {
|
|
3031
|
+
const v = new t.KTX2File(new Uint8Array(T));
|
|
2823
3032
|
function k() {
|
|
2824
|
-
|
|
3033
|
+
v.close(), v.delete();
|
|
2825
3034
|
}
|
|
2826
|
-
if (!
|
|
3035
|
+
if (!v.isValid()) throw k(), new Error("THREE.KTX2Loader: Invalid or unsupported .ktx2 file");
|
|
2827
3036
|
let R;
|
|
2828
|
-
if (
|
|
2829
|
-
else if (
|
|
3037
|
+
if (v.isUASTC()) R = i.UASTC;
|
|
3038
|
+
else if (v.isETC1S()) R = i.ETC1S;
|
|
2830
3039
|
else {
|
|
2831
|
-
if (!
|
|
3040
|
+
if (!v.isHDR()) throw new Error("THREE.KTX2Loader: Unknown Basis encoding");
|
|
2832
3041
|
R = i.UASTC_HDR;
|
|
2833
3042
|
}
|
|
2834
|
-
const S =
|
|
3043
|
+
const S = v.getWidth(), F = v.getHeight(), z = v.getLayers() || 1, Ae = v.getLevels(), H = v.getFaces(), V = v.getHasAlpha(), He = v.getDFDFlags(), { transcoderFormat: Te, engineFormat: Se, engineType: Fe } = function(ie, Ce, _, O) {
|
|
2835
3044
|
const X = l[ie];
|
|
2836
3045
|
for (let ne = 0; ne < X.length; ne++) {
|
|
2837
3046
|
const ee = X[ne];
|
|
2838
|
-
if (!(ee.if && !
|
|
3047
|
+
if (!(ee.if && !o[ee.if]) && ee.basisFormat.includes(ie) && !(O && ee.transcoderFormat.length < 2) && !(ee.needsPowerOfTwo && (!h(Ce) || !h(_))))
|
|
2839
3048
|
return { transcoderFormat: ee.transcoderFormat[O ? 1 : 0], engineFormat: ee.engineFormat[O ? 1 : 0], engineType: ee.engineType[0] };
|
|
2840
3049
|
}
|
|
2841
3050
|
throw new Error("THREE.KTX2Loader: Failed to identify transcoding target.");
|
|
2842
3051
|
}(R, S, F, V);
|
|
2843
3052
|
if (!S || !F || !Ae) throw k(), new Error("THREE.KTX2Loader: Invalid texture");
|
|
2844
|
-
if (!
|
|
3053
|
+
if (!v.startTranscoding()) throw k(), new Error("THREE.KTX2Loader: .startTranscoding failed");
|
|
2845
3054
|
const qe = [], de = [];
|
|
2846
3055
|
for (let ie = 0; ie < H; ie++) {
|
|
2847
|
-
const
|
|
2848
|
-
for (let
|
|
3056
|
+
const Ce = [];
|
|
3057
|
+
for (let _ = 0; _ < Ae; _++) {
|
|
2849
3058
|
const O = [];
|
|
2850
3059
|
let X, ne;
|
|
2851
|
-
for (let
|
|
2852
|
-
const he =
|
|
2853
|
-
ie !== 0 ||
|
|
2854
|
-
let Z = new Uint8Array(
|
|
2855
|
-
const
|
|
2856
|
-
if (Fe === A.HalfFloatType && (Z = new Uint16Array(Z.buffer, Z.byteOffset, Z.byteLength / Uint16Array.BYTES_PER_ELEMENT)), !
|
|
3060
|
+
for (let Ee = 0; Ee < z; Ee++) {
|
|
3061
|
+
const he = v.getImageLevelInfo(_, Ee, ie);
|
|
3062
|
+
ie !== 0 || _ !== 0 || Ee !== 0 || he.origWidth % 4 == 0 && he.origHeight % 4 == 0 || console.warn("THREE.KTX2Loader: ETC1S and UASTC textures should use multiple-of-four dimensions."), Ae > 1 ? (X = he.origWidth, ne = he.origHeight) : (X = he.width, ne = he.height);
|
|
3063
|
+
let Z = new Uint8Array(v.getImageTranscodedSizeInBytes(_, Ee, 0, Te));
|
|
3064
|
+
const st = v.transcodeImage(Z, _, Ee, ie, Te, 0, -1, -1);
|
|
3065
|
+
if (Fe === A.HalfFloatType && (Z = new Uint16Array(Z.buffer, Z.byteOffset, Z.byteLength / Uint16Array.BYTES_PER_ELEMENT)), !st) throw k(), new Error("THREE.KTX2Loader: .transcodeImage failed.");
|
|
2857
3066
|
O.push(Z);
|
|
2858
3067
|
}
|
|
2859
3068
|
const ee = b(O);
|
|
2860
|
-
|
|
3069
|
+
Ce.push({ data: ee, width: X, height: ne }), de.push(ee.buffer);
|
|
2861
3070
|
}
|
|
2862
|
-
qe.push({ mipmaps:
|
|
3071
|
+
qe.push({ mipmaps: Ce, width: S, height: F, format: Se, type: Fe });
|
|
2863
3072
|
}
|
|
2864
3073
|
return k(), { faces: qe, buffers: de, width: S, height: F, hasAlpha: V, dfdFlags: He, format: Se, type: Fe };
|
|
2865
3074
|
}(f.buffer);
|
|
2866
|
-
self.postMessage({ type: "transcode", id: f.id, data: { faces: u, width: m, height:
|
|
3075
|
+
self.postMessage({ type: "transcode", id: f.id, data: { faces: u, width: m, height: C, hasAlpha: E, format: x, type: w, dfdFlags: M } }, p);
|
|
2867
3076
|
} catch (u) {
|
|
2868
3077
|
console.error(u), self.postMessage({ type: "error", id: f.id, error: u.message });
|
|
2869
3078
|
}
|
|
@@ -2889,31 +3098,31 @@ re.BasisFormat = { ETC1S: 0, UASTC: 1, UASTC_HDR: 2 }, re.TranscoderFormat = { E
|
|
|
2889
3098
|
return I;
|
|
2890
3099
|
}
|
|
2891
3100
|
};
|
|
2892
|
-
const
|
|
2893
|
-
function
|
|
2894
|
-
const e =
|
|
2895
|
-
return e.colorPrimaries === 1 ? e.transferFunction === 2 ?
|
|
3101
|
+
const Us = /* @__PURE__ */ new Set([Be, dt, ht]), Ot = { [xA]: Be, [QA]: Be, [BA]: Be, [mA]: Be, [wA]: dt, [EA]: dt, [IA]: dt, [pA]: dt, [yA]: ht, [CA]: ht, [uA]: ht, [fA]: ht, [la]: rA, [DA]: Ca, [kA]: Ca }, Ht = { [xA]: W, [QA]: et, [BA]: ue, [mA]: ue, [wA]: W, [EA]: et, [IA]: ue, [pA]: ue, [yA]: W, [CA]: et, [uA]: ue, [fA]: ue, [la]: et, [DA]: ue, [kA]: ue };
|
|
3102
|
+
function _a(o) {
|
|
3103
|
+
const e = o.dataFormatDescriptor[0];
|
|
3104
|
+
return e.colorPrimaries === 1 ? e.transferFunction === 2 ? ve : be : e.colorPrimaries === 10 ? e.transferFunction === 2 ? "display-p3" : "display-p3-linear" : (e.colorPrimaries === 0 || console.warn(`THREE.KTX2Loader: Unsupported color primaries, "${e.colorPrimaries}"`), Ri);
|
|
2896
3105
|
}
|
|
2897
|
-
async function
|
|
2898
|
-
const e =
|
|
2899
|
-
if (!t.ok) throw new Error(`Failed to fetch ${
|
|
3106
|
+
async function Pa(o) {
|
|
3107
|
+
const e = o.split("?")[0].split(".").pop(), t = await fetch(o);
|
|
3108
|
+
if (!t.ok) throw new Error(`Failed to fetch ${o}: ${t.statusText}`);
|
|
2900
3109
|
if (e === "json") {
|
|
2901
3110
|
const a = await t.json();
|
|
2902
|
-
return handleJSONSubtree(a,
|
|
3111
|
+
return handleJSONSubtree(a, Oa(o));
|
|
2903
3112
|
}
|
|
2904
3113
|
if (e === "subtree")
|
|
2905
3114
|
return async function(a, A) {
|
|
2906
3115
|
const s = new DataView(a), i = s.getBigUint64(8, !0), n = s.getBigUint64(16, !0), l = 24, h = l + Number(i), b = h + (8 - h % 8) % 8, g = b + Number(n), f = a.slice(l, h), I = new TextDecoder().decode(f).trim(), u = JSON.parse(I);
|
|
2907
3116
|
if (!u.buffers) throw new Error("subtree has no buffers");
|
|
2908
|
-
const p = u.buffers.map(async (
|
|
2909
|
-
if (
|
|
2910
|
-
const
|
|
2911
|
-
if (!x.ok) throw new Error(`Failed to fetch binary file ${
|
|
3117
|
+
const p = u.buffers.map(async (C) => {
|
|
3118
|
+
if (C.uri) {
|
|
3119
|
+
const E = new URL(C.uri, A).href, x = await fetch(E);
|
|
3120
|
+
if (!x.ok) throw new Error(`Failed to fetch binary file ${E}: ${x.statusText}`);
|
|
2912
3121
|
return new Uint8Array(await x.arrayBuffer());
|
|
2913
3122
|
}
|
|
2914
3123
|
return new Uint8Array(a.slice(b, g));
|
|
2915
3124
|
}), m = await Promise.all(p);
|
|
2916
|
-
return /* @__PURE__ */ function(
|
|
3125
|
+
return /* @__PURE__ */ function(C, E) {
|
|
2917
3126
|
function x(k, R) {
|
|
2918
3127
|
if (!k) throw new Error("incomplete json subtree");
|
|
2919
3128
|
if (k.constant) {
|
|
@@ -2921,9 +3130,9 @@ async function Sa(c) {
|
|
|
2921
3130
|
if (k.constant == 1) return !0;
|
|
2922
3131
|
}
|
|
2923
3132
|
if (k.bitstream == null) throw new Error('json subtree "tileAvailability" does not specify a bitstream');
|
|
2924
|
-
if (!
|
|
2925
|
-
const S =
|
|
2926
|
-
return w(
|
|
3133
|
+
if (!C.bufferViews || !C.bufferViews[k.bitstream]) throw new Error('json subtree "bufferViews" does not specify a bitstream');
|
|
3134
|
+
const S = C.bufferViews[k.bitstream];
|
|
3135
|
+
return w(E[S.buffer], S.byteOffset, R);
|
|
2927
3136
|
}
|
|
2928
3137
|
function w(k, R, S) {
|
|
2929
3138
|
const F = S % 8;
|
|
@@ -2931,53 +3140,53 @@ async function Sa(c) {
|
|
|
2931
3140
|
}
|
|
2932
3141
|
function M(k) {
|
|
2933
3142
|
let R = 0;
|
|
2934
|
-
return R = k.z == null ?
|
|
3143
|
+
return R = k.z == null ? qt(k.x, k.y, k.level) : Kt(k.x, k.y, k.z, k.level), x(C.tileAvailability, R);
|
|
2935
3144
|
}
|
|
2936
|
-
function
|
|
3145
|
+
function T(k) {
|
|
2937
3146
|
let R = 0;
|
|
2938
|
-
R = k.z == null ?
|
|
3147
|
+
R = k.z == null ? qt(k.x, k.y, k.level) : Kt(k.x, k.y, k.z, k.level);
|
|
2939
3148
|
const S = [];
|
|
2940
|
-
return
|
|
3149
|
+
return C.contentAvailability.forEach((F) => {
|
|
2941
3150
|
S.push(x(F, R));
|
|
2942
3151
|
}), S;
|
|
2943
3152
|
}
|
|
2944
|
-
function
|
|
3153
|
+
function v(k) {
|
|
2945
3154
|
let R = 0;
|
|
2946
|
-
return R = k.z == null ?
|
|
3155
|
+
return R = k.z == null ? qt(k.x, k.y) : Kt(k.x, k.y, k.z), x(C.childSubtreeAvailability, R);
|
|
2947
3156
|
}
|
|
2948
|
-
return { isTileAvailable: M, isContentAvailable:
|
|
3157
|
+
return { isTileAvailable: M, isContentAvailable: T, isChildSubtreeAvailable: v };
|
|
2949
3158
|
}(u, m);
|
|
2950
|
-
}(await t.arrayBuffer(),
|
|
3159
|
+
}(await t.arrayBuffer(), Oa(o));
|
|
2951
3160
|
throw new Error(`Unsupported file extension: ${e}`);
|
|
2952
3161
|
}
|
|
2953
|
-
function
|
|
2954
|
-
const e =
|
|
3162
|
+
function Oa(o) {
|
|
3163
|
+
const e = o.split("?")[0];
|
|
2955
3164
|
return e.substring(0, e.lastIndexOf("/") + 1);
|
|
2956
3165
|
}
|
|
2957
|
-
function
|
|
2958
|
-
return
|
|
3166
|
+
function Ha(o) {
|
|
3167
|
+
return o = 1431655765 & ((o = 858993459 & ((o = 252645135 & ((o = 16711935 & ((o &= 65535) ^ o << 8)) ^ o << 4)) ^ o << 2)) ^ o << 1);
|
|
2959
3168
|
}
|
|
2960
|
-
function
|
|
3169
|
+
function qt(o, e, t) {
|
|
2961
3170
|
let a = 0;
|
|
2962
|
-
return t && (a = (Math.pow(4, t) - 1) / 3), a + (
|
|
3171
|
+
return t && (a = (Math.pow(4, t) - 1) / 3), a + (Ha(o) | Ha(e) << 1);
|
|
2963
3172
|
}
|
|
2964
|
-
function
|
|
2965
|
-
return
|
|
3173
|
+
function Jt(o) {
|
|
3174
|
+
return o = 153391689 & ((o = 51130563 & ((o = 50393103 & ((o = 4278190335 & ((o &= 1023) ^ o << 16)) ^ o << 8)) ^ o << 4)) ^ o << 2);
|
|
2966
3175
|
}
|
|
2967
|
-
function
|
|
3176
|
+
function Kt(o, e, t, a) {
|
|
2968
3177
|
let A = 0;
|
|
2969
|
-
return a && (A = (Math.pow(8, a) - 1) / 7), A + (
|
|
3178
|
+
return a && (A = (Math.pow(8, a) - 1) / 7), A + (Jt(o) | Jt(e) << 1 | Jt(t) << 2);
|
|
2970
3179
|
}
|
|
2971
|
-
const
|
|
2972
|
-
async function
|
|
2973
|
-
if (!
|
|
2974
|
-
if (!
|
|
3180
|
+
const nt = /* @__PURE__ */ new Map();
|
|
3181
|
+
async function ba(o, e) {
|
|
3182
|
+
if (!o.root || !o.root.implicitTiling) return o;
|
|
3183
|
+
if (!o.root.content && !o.root.contents) throw new Error("implicit tiling requires a Template URI");
|
|
2975
3184
|
let t = !0;
|
|
2976
|
-
|
|
3185
|
+
o.root.implicitTiling.subdivisionScheme && (t = o.root.implicitTiling.subdivisionScheme.toUpperCase() === "QUADTREE");
|
|
2977
3186
|
let a = "";
|
|
2978
|
-
|
|
3187
|
+
o.root.implicitTiling.subtrees && (o.root.implicitTiling.subtrees.uri ? a = o.root.implicitTiling.subtrees.uri : o.root.implicitTiling.subtrees.url && (a = o.root.implicitTiling.subtrees.url));
|
|
2979
3188
|
let A = [];
|
|
2980
|
-
|
|
3189
|
+
o.root.content ? o.root.content.uri ? A.push(o.root.content.uri) : o.root.content.url && A.push(o.root.content.url) : o.root.contents && o.root.contents.forEach((I) => {
|
|
2981
3190
|
I.uri ? A.push(I.uri) : I.url && A.push(I.url);
|
|
2982
3191
|
});
|
|
2983
3192
|
const s = function(I) {
|
|
@@ -2987,74 +3196,74 @@ async function ca(c, e) {
|
|
|
2987
3196
|
let i;
|
|
2988
3197
|
t && (i = a.replace("{level}", 0).replace("{x}", 0).replace("{y}", 0)), t || (i = a.replace("{level}", 0).replace("{x}", 0).replace("{y}", 0).replace("{z}", 0));
|
|
2989
3198
|
const n = { level: 0, x: 0, y: 0 }, l = { level: 0, x: 0, y: 0 };
|
|
2990
|
-
t || (n.z = 0, l.z = 0),
|
|
2991
|
-
const h =
|
|
3199
|
+
t || (n.z = 0, l.z = 0), nt.set(i, await Pa(s + i));
|
|
3200
|
+
const h = nt.get(i), b = [];
|
|
2992
3201
|
h.isContentAvailable(l) && A.forEach((I) => {
|
|
2993
3202
|
let u;
|
|
2994
3203
|
t && (u = I.replace("{level}", n.level).replace("{x}", n.x).replace("{y}", n.y)), t || (u = I.replace("{level}", n.level).replace("{x}", n.x).replace("{y}", n.y).replace("{z}", n.z)), b.push({ uri: u });
|
|
2995
3204
|
});
|
|
2996
|
-
const g = { geometricError:
|
|
3205
|
+
const g = { geometricError: o.root.geometricError, boundingVolume: o.root.boundingVolume, refine: o.root.refine, globalAddress: n, localAddress: l, subtree: h, contents: b, getChildren: async () => f(g) };
|
|
2997
3206
|
return { root: g };
|
|
2998
3207
|
async function f(I) {
|
|
2999
3208
|
const u = [];
|
|
3000
|
-
if (I.localAddress.level ==
|
|
3001
|
-
if ((I.localAddress.level + 1) %
|
|
3002
|
-
const p =
|
|
3003
|
-
for (let
|
|
3004
|
-
const x = p[
|
|
3005
|
-
I.subtree.isChildSubtreeAvailable(x) && (t && a.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y), t || a.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y).replace("{z}", w.z)),
|
|
3006
|
-
const M =
|
|
3007
|
-
t || (
|
|
3008
|
-
const
|
|
3009
|
-
M.isContentAvailable(
|
|
3209
|
+
if (I.localAddress.level == o.root.implicitTiling.availableLevels - 1) return u;
|
|
3210
|
+
if ((I.localAddress.level + 1) % o.root.implicitTiling.subtreeLevels == 0) {
|
|
3211
|
+
const p = mt(I.localAddress), m = mt(I.globalAddress), C = qa(t, o.root.boundingVolume, m);
|
|
3212
|
+
for (let E = 0; E < p.length; E++) {
|
|
3213
|
+
const x = p[E], w = m[E];
|
|
3214
|
+
I.subtree.isChildSubtreeAvailable(x) && (t && a.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y), t || a.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y).replace("{z}", w.z)), nt.has(i) || nt.set(i, await Pa(s + i));
|
|
3215
|
+
const M = nt.get(i), T = { level: 0, x: 0, y: 0 };
|
|
3216
|
+
t || (T.z = 0);
|
|
3217
|
+
const v = [];
|
|
3218
|
+
M.isContentAvailable(T) && A.forEach((R) => {
|
|
3010
3219
|
let S;
|
|
3011
|
-
t && (S = R.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y)), t || (S = R.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y).replace("{z}", w.z)),
|
|
3220
|
+
t && (S = R.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y)), t || (S = R.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y).replace("{z}", w.z)), v.push({ uri: S });
|
|
3012
3221
|
});
|
|
3013
|
-
const k = { geometricError: I.geometricError / 2, boundingVolume: E
|
|
3222
|
+
const k = { geometricError: I.geometricError / 2, boundingVolume: C[E], refine: o.root.refine, globalAddress: w, localAddress: T, subtree: M, contents: v, getChildren: async () => f(k) };
|
|
3014
3223
|
u.push(k);
|
|
3015
3224
|
}
|
|
3016
3225
|
} else {
|
|
3017
|
-
const p =
|
|
3018
|
-
for (let
|
|
3019
|
-
const x = p[
|
|
3226
|
+
const p = mt(I.localAddress), m = mt(I.globalAddress), C = qa(t, o.root.boundingVolume, m);
|
|
3227
|
+
for (let E = 0; E < p.length; E++) {
|
|
3228
|
+
const x = p[E], w = m[E];
|
|
3020
3229
|
if (!I.subtree.isTileAvailable(x)) continue;
|
|
3021
|
-
const M = [],
|
|
3230
|
+
const M = [], T = I.subtree.isContentAvailable(x);
|
|
3022
3231
|
for (let k = 0; k < A.length; k++) {
|
|
3023
|
-
if (!
|
|
3232
|
+
if (!T[k]) continue;
|
|
3024
3233
|
const R = A[k];
|
|
3025
3234
|
let S;
|
|
3026
3235
|
t && (S = R.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y)), t || (S = R.replace("{level}", w.level).replace("{x}", w.x).replace("{y}", w.y).replace("{z}", w.z)), M.push({ uri: S });
|
|
3027
3236
|
}
|
|
3028
|
-
const
|
|
3029
|
-
u.push(
|
|
3237
|
+
const v = { geometricError: I.geometricError / 2, boundingVolume: C[E], refine: o.root.refine, globalAddress: w, localAddress: x, subtree: I.subtree, contents: M, getChildren: async () => f(v) };
|
|
3238
|
+
u.push(v);
|
|
3030
3239
|
}
|
|
3031
3240
|
}
|
|
3032
3241
|
return u.length > 0 ? u : void 0;
|
|
3033
3242
|
}
|
|
3034
3243
|
}
|
|
3035
|
-
function
|
|
3036
|
-
const { level: e, x: t, y: a, z: A } =
|
|
3244
|
+
function mt(o) {
|
|
3245
|
+
const { level: e, x: t, y: a, z: A } = o, s = e + 1;
|
|
3037
3246
|
let i = [];
|
|
3038
3247
|
return i = A === void 0 ? [{ level: s, x: 2 * t, y: 2 * a }, { level: s, x: 2 * t + 1, y: 2 * a }, { level: s, x: 2 * t, y: 2 * a + 1 }, { level: s, x: 2 * t + 1, y: 2 * a + 1 }] : [{ level: s, x: 2 * t, y: 2 * a, z: 2 * A }, { level: s, x: 2 * t + 1, y: 2 * a, z: 2 * A }, { level: s, x: 2 * t, y: 2 * a + 1, z: 2 * A }, { level: s, x: 2 * t + 1, y: 2 * a + 1, z: 2 * A }, { level: s, x: 2 * t, y: 2 * a, z: 2 * A + 1 }, { level: s, x: 2 * t + 1, y: 2 * a, z: 2 * A + 1 }, { level: s, x: 2 * t, y: 2 * a + 1, z: 2 * A + 1 }, { level: s, x: 2 * t + 1, y: 2 * a + 1, z: 2 * A + 1 }], i;
|
|
3039
3248
|
}
|
|
3040
|
-
function
|
|
3249
|
+
function qa(o, e, t) {
|
|
3041
3250
|
const a = [];
|
|
3042
|
-
for (let A = 0; A < t.length; A++) a.push(
|
|
3251
|
+
for (let A = 0; A < t.length; A++) a.push(Gs(o, e, t[A]));
|
|
3043
3252
|
return a;
|
|
3044
3253
|
}
|
|
3045
|
-
function
|
|
3254
|
+
function Gs(o, e, t) {
|
|
3046
3255
|
if (e.region) return function(a, A, s) {
|
|
3047
|
-
const [i, n, l, h, b, g] = A, f = (l - i) / 2 ** s.level, I = (h - n) / 2 ** s.level, u = a ? 0 : (g - b) / 2 ** s.level, p = i + f * s.x, m = n + I * s.y,
|
|
3048
|
-
return { region: [p, m,
|
|
3049
|
-
}(
|
|
3256
|
+
const [i, n, l, h, b, g] = A, f = (l - i) / 2 ** s.level, I = (h - n) / 2 ** s.level, u = a ? 0 : (g - b) / 2 ** s.level, p = i + f * s.x, m = n + I * s.y, C = p + f, E = m + I, x = a ? b : b + u * s.z, w = a ? g : x + u;
|
|
3257
|
+
return { region: [p, m, C, E, x, w] };
|
|
3258
|
+
}(o, e.region, t);
|
|
3050
3259
|
if (e.box) return function(a, A, s) {
|
|
3051
3260
|
const i = A.slice(0, 3), n = [A.slice(3, 6), A.slice(6, 9), A.slice(9, 12)], l = 1 / Math.pow(2, s.level), h = [l, l, a ? 1 : l], b = n.map((I, u) => I.map((p) => p * h[u])), g = [i[0] - n[0][0] - n[1][0] - n[2][0], i[1] - n[0][1] - n[1][1] - n[2][1], i[2] - n[0][2] - n[1][2] - n[2][2]];
|
|
3052
3261
|
return { box: [g[0] + (2 * s.x + 1) * (b[0][0] + b[1][0] + b[2][0]), g[1] + (2 * s.y + 1) * (b[0][1] + b[1][1] + b[2][1]), a ? i[2] : g[2] + (2 * s.z + 1) * (b[0][2] + b[1][2] + b[2][2])].concat(...b) };
|
|
3053
|
-
}(
|
|
3262
|
+
}(o, e.box, t);
|
|
3054
3263
|
throw new Error("Unsupported bounding volume type");
|
|
3055
3264
|
}
|
|
3056
3265
|
(function() {
|
|
3057
|
-
var
|
|
3266
|
+
var o, e = new Uint8Array([32, 0, 65, 2, 1, 106, 34, 33, 3, 128, 11, 4, 13, 64, 6, 253, 10, 7, 15, 116, 127, 5, 8, 12, 40, 16, 19, 54, 20, 9, 27, 255, 113, 17, 42, 67, 24, 23, 146, 148, 18, 14, 22, 45, 70, 69, 56, 114, 101, 21, 25, 63, 75, 136, 108, 28, 118, 29, 73, 115]);
|
|
3058
3267
|
if (typeof WebAssembly != "object") return { supported: !1 };
|
|
3059
3268
|
var t = WebAssembly.instantiate(function(h) {
|
|
3060
3269
|
for (var b = new Uint8Array(h.length), g = 0; g < h.length; ++g) {
|
|
@@ -3065,7 +3274,7 @@ function ys(c, e, t) {
|
|
|
3065
3274
|
for (g = 0; g < h.length; ++g) b[I++] = b[g] < 60 ? e[b[g]] : 64 * (b[g] - 60) + b[++g];
|
|
3066
3275
|
return b.buffer.slice(0, I);
|
|
3067
3276
|
}("b9H79TebbbeJq9Geueu9Geub9Gbb9Gvuuuuueu9Gduueu9Gluuuueu9Gvuuuuub9Gouuuuuub9Gluuuub9GiuuueuiKLdilevlevlooroowwvwbDDbelve9Weiiviebeoweuec:W;kekr;RiOo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWVbe8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9c9V919U9KbdE9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949wWV79P9V9UbiY9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWVbl8E9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWV9c9V919U9Kbv8A9TW79O9V9Wt9FW9U9J9V9KW69U9KW949wWV79P9V9UboE9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JWbra9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JW9c9V919U9KbwL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9p9JtbDK9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9r919HtbqL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWVT949WbkE9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OWbPa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OW9ttV9P9Wbsa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9WbzK9TW79O9V9Wt9F79W9Ht9P9H29t9VVt9sW9T9H9WbHl79IV9RbODwebcekdQXq:g9sLdbk;3keYu8Jjjjjbcjo9Rgv8Kjjjjbcbhodnalcefae0mbabcbRb:S:kjjbc:GeV86bbavcjdfcbcjdzNjjjb8AdnaiTmbavcjdfadalz:tjjjb8Akabaefhrabcefhwavalfcbcbcjdal9RalcFe0EzNjjjb8Aavavcjdfalz:tjjjbhDcj;abal9UhodndndndndnalTmbaoc;WFbGgecjdaecjd6Ehqcbhkdninakai9pmiaDcjlfcbcjdzNjjjb8Aaqaiak9Rakaqfai6Egxcsfgecl4cifcd4hmadakal2fhPdndndndndnaec9WGgsTmbcbhzcehHaPhOawhAxekdnaxTmbcbhAcehHaPhCinaDaAfRbbhXaDcjlfheaChoaxhQinaeaoRbbgLaX9RgXcetaX;acr4786bbaoalfhoaecefheaLhXaQcufgQmbkaraw9Ram6miawcbamzNjjjbgeTmiaCcefhCaeamfhwaAcefgAal6hHaAal9hmbxvkkaraw9Ram6mvawcbamzNjjjb8AceheinawgXamfhwalaegoSmldnaraw9Ram6mbaocefheawcbamzNjjjb8AaXmekkaoal6hHxekindnaxTmbaDazfRbbhXaDcjlfheaOhoaxhQinaeaoRbbgLaX9RgXcetaX;acr4786bbaoalfhoaecefheaLhXaQcufgQmbkkaraA9Ram6mearaAcbamzNjjjbgKamfgw9RcK6mdcbhYaDcjlfhAinaDcjlfaYfh8AcwhCczhLcehQindndnaQce9hmbcuhoa8ARbbmecbhodninaogecsSmeaecefhoaAaefcefRbbTmbkkcucbaecs6EhoxekaQcetc;:FFFeGhocuaQtcu7cFeGhXcbheinaoaXaAaefRbb9nfhoaecefgecz9hmbkkaoaLaoaL6geEhLaQaCaeEhCaQcetgQcw6mbkdndndndnaCcufPdiebkaKaYco4fgeaeRbbcdciaCclSEaYci4coGtV86bbaCcw9hmeawa8A8Pbb83bbawcwfa8Acwf8Pbb83bbawczfhwxdkaKaYco4fgeaeRbbceaYci4coGtV86bbkdncwaC9TgEmbinawcb86bbawcefhwxbkkcuaCtcu7h8Acbh3aAh5ina5heaEhQcbhoinaeRbbgLa8AcFeGgXaLaX6EaoaCtVhoaecefheaQcufgQmbkawao86bba5aEfh5awcefhwa3aEfg3cz6mbkcbheindnaAaefRbbgoaX6mbawao86bbawcefhwkaecefgecz9hmbkkdnaYczfgYas9pmbaAczfhAaraw9RcL0mekkaYas6meawTmeaOcefhOazcefgzal6hHawhAazalSmixbkkcbhwaHceGTmexikcbhwaHceGmdkaDaPaxcufal2falz:tjjjb8AaxakfhkawmbkcbhoxokcbhoxvkaiTmekcbhoaraw9Ralcaalca0E6mialc8F9nmexdkcbhoaecufca6mdkawcbcaal9RgezNjjjbaefhwkawaDcjdfalz:tjjjbalfab9Rhokavcjof8Kjjjjbaok9heeuaecaaeca0Eabcj;abae9Uc;WFbGgdcjdadcjd6Egdfcufad9Uae2adcl4cifcd4adV2fcefkmbcbabBd:S:kjjbk;rse3u8Jjjjjbc;ae9Rgl8Kjjjjbcbhvdnaici9UgocHfae0mbabcbyd:C:kjjbgrc;GeV86bbalc;abfcFecjezNjjjb8AalcUfgw9cu83ibalc8WfgD9cu83ibalcyfgq9cu83ibalcafgk9cu83ibalcKfgx9cu83ibalczfgm9cu83ibal9cu83iwal9cu83ibabaefc9WfhPabcefgsaofhednaiTmbcmcsarcb9kgzEhHcbhOcbhAcbhCcbhXcbhQindnaeaP9nmbcbhvxikaQcufhvadaCcdtfgoydbhLaocwfydbhKaoclfydbhYcbh8Adndninalc;abfavcsGcitfgoydlhEdndndnaoydbgoaL9hmbaEaYSmekdnaoaY9hmbaEaK9hmba8Acefh8AxekaoaK9hmeaEaL9hmea8Acdfh8Aka8Ac870mdaXcufhvada8AciGcx2goc:y1jjbfydbaCfcdtfydbhEadaocN1jjbfydbaCfcdtfydbhKadaoc:q1jjbfydbaCfcdtfydbhLcbhodnindnalavcsGcdtfydbaE9hmbaohYxdkcuhYavcufhvaocefgocz9hmbkkaEaOSgvaYce9iaYaH9oVgoGh3dndndndndncbcsavEaYaoEgvcs9hmbarce9imbaEaEaAaEcefaASgvEgAcefSmecmcsavEhvkasava8Acdtc;WeGV86bbavcs9hmeaEaA9Rgvcetavc8F917hvinaeavcFb0crtavcFbGV86bbaecefheavcje6hoavcr4hvaoTmbkaEhAxdkcPhvasa8AcdtcPV86bbaEhAkavTmbavaH9imekalaXcdtfaEBdbaXcefcsGhXkaOa3fhOalc;abfaQcitfgvaKBdlavaEBdbalc;abfaQcefcsGgvcitfgoaEBdlaoaLBdbavcefhoxikavcufhva8Aclfg8Ac;ab9hmbkkdnadceaKaOScetaYaOSEcx2gvc:q1jjbfydbaCfcdtfydbgLTadavcN1jjbfydbaCfcdtfydbg8AceSGadavc:y1jjbfydbaCfcdtfydbgYcdSGaOcb9hGazGg5ce9hmbaw9cu83ibaD9cu83ibaq9cu83ibak9cu83ibax9cu83ibam9cu83ibal9cu83iwal9cu83ibcbhOkcbhEaXcufgvhodnindnalaocsGcdtfydba8A9hmbaEhKxdkcuhKaocufhoaEcefgEcz9hmbkkcbhodnindnalavcsGcdtfydbaY9hmbaohExdkcuhEavcufhvaocefgocz9hmbkkaOaLaOSg8Efh3dndnaKcm0mbaKcefhKxekcbcsa8Aa3SgvEhKa3avfh3kdndnaEcm0mbaEcefhExekcbcsaYa3SgvEhEa3avfh3kc9:cua8EEh8FaEaKcltVhocbhvdndndninavcj1jjbfRbbaocFeGSmeavcefgvcz9hmbxdkka5aLaO9havcm0VVmbasavc;WeV86bbxekasa8F86bbaeao86bbaecefhekdna8EmbaLaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaLhAkdnaKcs9hmba8AaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka8AhAkdnaEcs9hmbaYaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaYhAkalaXcdtfaLBdbaXcefcsGhvdndnaKPzbeeeeeeeeeeeeeebekalavcdtfa8ABdbaXcdfcsGhvkdndnaEPzbeeeeeeeeeeeeeebekalavcdtfaYBdbavcefcsGhvkalc;abfaQcitfgoaLBdlaoa8ABdbalc;abfaQcefcsGcitfgoa8ABdlaoaYBdbalc;abfaQcdfcsGcitfgoaYBdlaoaLBdbaQcifhoavhXa3hOkascefhsaocsGhQaCcifgCai6mbkkcbhvaeaP0mbcbhvinaeavfavcj1jjbfRbb86bbavcefgvcz9hmbkaeab9Ravfhvkalc;aef8KjjjjbavkZeeucbhddninadcefgdc8F0meceadtae6mbkkadcrfcFeGcr9Uci2cdfabci9U2cHfkmbcbabBd:C:kjjbk:ydewu8Jjjjjbcz9Rhlcbhvdnaicvfae0mbcbhvabcbRb:C:kjjbc;qeV86bbal9cb83iwabcefhoabaefc98fhrdnaiTmbcbhwcbhDindnaoar6mbcbskadaDcdtfydbgqalcwfawaqav9Rgvavc8F91gv7av9Rc507gwcdtfgkydb9Rgvc8E91c9:Gavcdt7awVhvinaoavcFb0gecrtavcFbGV86bbavcr4hvaocefhoaembkakaqBdbaqhvaDcefgDai9hmbkkcbhvaoar0mbaocbBbbaoab9RclfhvkavkBeeucbhddninadcefgdc8F0meceadtae6mbkkadcwfcFeGcr9Uab2cvfk:dvli99dui99ludnaeTmbcuadcetcuftcu7:Yhvdndncuaicuftcu7:YgoJbbbZMgr:lJbbb9p9DTmbar:Ohwxekcjjjj94hwkcbhicbhDinalclfIdbgrJbbbbJbbjZalIdbgq:lar:lMalcwfIdbgk:lMgr:varJbbbb9BEgrNhxaqarNhralcxfIdbhqdndnakJbbbb9GTmbaxhkxekJbbjZar:l:tgkak:maxJbbbb9GEhkJbbjZax:l:tgxax:marJbbbb9GEhrkdndnaqJbbj:;aqJbbj:;9GEgxJbbjZaxJbbjZ9FEavNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohmxekcjjjj94hmkdndnakJbbj:;akJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;akJbbbb9GEMgq:lJbbb9p9DTmbaq:OhPxekcjjjj94hPkdndnarJbbj:;arJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;arJbbbb9GEMgr:lJbbb9p9DTmbar:Ohsxekcjjjj94hskdndnadcl9hmbabaifgzas86bbazcifam86bbazcdfaw86bbazcefaP86bbxekabaDfgzas87ebazcofam87ebazclfaw87ebazcdfaP87ebkalczfhlaiclfhiaDcwfhDaecufgembkkk;klld99eud99eudnaeTmbdndncuaicuftcu7:YgvJbbbZMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikaic;8FiGhrinabcofcicdalclfIdb:lalIdb:l9EgialcwfIdb:lalaicdtfIdb:l9EEgialcxfIdb:lalaicdtfIdb:l9EEgiarV87ebdndnalaicefciGcdtfIdbJ;Zl:1ZNJbbj:;JbbjZalaicdtfIdbJbbbb9DEgoNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabaq87ebdndnaoalaicdfciGcdtfIdbJ;Zl:1ZNNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabcdfaq87ebdndnaoalaicufciGcdtfIdbJ;Zl:1ZNNgoJbbj:;aoJbbj:;9GEgwJbbjZawJbbjZ9FEavNJbbbZJbbb:;aoJbbbb9GEMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikabclfai87ebabcwfhbalczfhlaecufgembkkk:Hvdxue998Jjjjjbcjd9Rgo8Kjjjjbadcd4hrdndndndnavcd9hmbadcl6mearcearce0EhwaohDinaDc:CuBdbaDclfhDawcufgwmbkaeTmiadcl6mdarcearce0EhqarcdthkalhxcbhminaohDaxhwaqhPinaDaDydbgsawydbgzcL4cFeGc:cufcbazEgzasaz9kEBdbawclfhwaDclfhDaPcufgPmbkaxakfhxamcefgmae9hmbkkaeTmdxekaeTmekavcb9hadcl6gqVhHarcearce0Ehkarcdthrceai9Rhmcbhdindndndnavce9hmbaqmdc:CuhwalhDakhPinawaDydbgscL4cFeGc:cufcbasEgsawas9kEhwaDclfhDaPcufgPmbxdkkc:CuhwaHmbaohDalhPakhsinaDaPydbgzcL4cFeGgxc8Aaxc8A9kEc:cufcbazEBdbaPclfhPaDclfhDascufgsmbkkaqmbcbhDakhsinawhPdnavceSmbaoaDfydbhPkdndnalaDfIdbgOcjjj;8iamaPfgPcLt9R::NJbbbZJbbb:;aOJbbbb9GEMgO:lJbbb9p9DTmbaO:Ohzxekcjjjj94hzkabaDfazcFFFrGaPcKtVBdbaDclfhDascufgsmbkkabarfhbalarfhladcefgdae9hmbkkaocjdf8KjjjjbkFkdCui998Jjjjjbc:Gd9Rgv8Kjjjjbavc:4efcbc;KbzNjjjb8AcbhodnadTmbcbhoaiTmbdnabae9hmbavcuadcdtgoadcFFFFi0Ecbyd:K:kjjbHjjjjbbgeBd:4eavceBd:ydaeabaoz:tjjjb8Akavc:OefcwfcbBdbav9cb83i:Oeavc:Oefaeadaiavc:4efz:njjjbcuaicdtgraicFFFFi0Egwcbyd:K:kjjbHjjjjbbhoavc:4efavyd:ydgDcdtfaoBdbavaDcefgqBd:ydaoavyd:Oegkarz:tjjjbhxavc:4efaqcdtfadci9Ugmcbyd:K:kjjbHjjjjbbgoBdbavaDcdfgrBd:ydaocbamzNjjjbhPavc:4efarcdtfawcbyd:K:kjjbHjjjjbbgsBdbavaDcifgqBd:ydaxhoashrinaralIdbalaoydbgwcwawcw6Ecdtfc;ebfIdbMUdbaoclfhoarclfhraicufgimbkavc:4efaqcdtfcuamcdtadcFFFF970Ecbyd:K:kjjbHjjjjbbgqBdbavaDclfBd:yddnadci6mbamceamce0EhiaehoaqhrinarasaoydbcdtfIdbasaoclfydbcdtfIdbMasaocwfydbcdtfIdbMUdbaocxfhoarclfhraicufgimbkkavc;qbfhzavhoavyd:SehHavyd:WehOcbhwcbhrcbhAcehCinaohXcihQaearci2gLcdtfgocwfydbhdaoydbhDabaAcx2fgiclfaoclfydbgKBdbaiaDBdbaicwfadBdbaParfce86bbazadBdwazaKBdlazaDBdbaqarcdtfcbBdbdnawTmbcihQaXhiinazaQcdtfaiydbgoBdbaQaoaD9haoaK9hGaoad9hGfhQaiclfhiawcufgwmbkkaAcefhAaxaDcdtfgoaoydbcufBdbaxaKcdtfgoaoydbcufBdbaxadcdtfgoaoydbcufBdbcbhwinaOaHaeawaLfcdtfydbcdtgifydbcdtfgKhoakaifgDydbgdhidnadTmbdninaoydbarSmeaoclfhoaicufgiTmdxbkkaoadcdtaKfc98fydbBdbaDaDydbcufBdbkawcefgwci9hmbkdndndnaQTmbcuhrJbbbbhYcbhDavyd:SehKavyd:WehLindndnakazaDcdtfydbcdtgofydbgimbaDcefhDxekaDcs0hwasaofgdIdbh8AadalcbaDcefgDawEcdtfIdbalaxaofydbgwcwawcw6Ecdtfc;ebfIdbMgEUdbaEa8A:thEaicdthiaLaKaofydbcdtfhoinaqaoydbgwcdtfgdaEadIdbMg8AUdba8AaYaYa8A9DgdEhYawaradEhraoclfhoaic98fgimbkkaDaQ9hmbkarcu9hmekaCam9pmeindnaPaCfRbbmbaChrxdkamaCcefgC9hmbxdkkaQczaQcz6EhwazhoaXhzarcu9hmekkavyd:ydhokaocdtavc:4effc98fhrdninaoTmearydbcbyd:G:kjjbH:bjjjbbarc98fhraocufhoxbkkavc:Gdf8Kjjjjbk;UlevucuaicdtgvaicFFFFi0Egocbyd:K:kjjbHjjjjbbhralalyd9GgwcdtfarBdbalawcefBd9GabarBdbaocbyd:K:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdlcuadcdtadcFFFFi0Ecbyd:K:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdwabydbcbavzNjjjb8Aadci9UhwdnadTmbabydbhoaehladhrinaoalydbcdtfgvavydbcefBdbalclfhlarcufgrmbkkdnaiTmbabydbhlabydlhrcbhvaihoinaravBdbarclfhralydbavfhvalclfhlaocufgombkkdnadci6mbawceawce0EhDabydlhrabydwhvcbhlinaecwfydbhoaeclfydbhdaraeydbcdtfgwawydbgwcefBdbavawcdtfalBdbaradcdtfgdadydbgdcefBdbavadcdtfalBdbaraocdtfgoaoydbgocefBdbavaocdtfalBdbaecxfheaDalcefgl9hmbkkdnaiTmbabydlheabydbhlinaeaeydbalydb9RBdbalclfhlaeclfheaicufgimbkkkQbabaeadaic:01jjbz:mjjjbkQbabaeadaic:C:jjjbz:mjjjbk9DeeuabcFeaicdtzNjjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk;:kivuo99lu8Jjjjjbcj;Hb9Rgl8Kjjjjbcbhvalc1;Gbfcbc;KbzNjjjb8AalcuadcdtadcFFFFi0Egocbyd:K:kjjbHjjjjbbgrBd19GalceBd;O9Galcwfcbyd:m:kjjbBdbalcb8Pd:e:kjjb83ibalc;W;Gbfcwfcbyd:y:kjjbBdbalcb8Pd:q:kjjb83i;W9Gaicd4hwdndnadmbJFFuFhDJFFuuhqJFFuuhkJFFuFhxJFFuuhmJFFuFhPxekawcdthsaehzincbhiinalaifgHazaifIdbgDaHIdbgxaxaD9EEUdbalc;W;GbfaifgHaDaHIdbgxaxaD9DEUdbaiclfgicx9hmbkazasfhzavcefgvad9hmbkalIdwhqalId;49GhDalIdlhkalId;09GhxalIdbhmalId;W9GhPkdndnadTmbJbbbbJbbjZaPam:tJbbbb:xgPaxak:tgxaxaP9DEgxaDaq:tgDaDax9DEgD:vaDJbbbb9BEhDawcdthsarhHadhzindndnaDaeIdbam:tNJb;au9eNJbbbZMgx:lJbbb9p9DTmbax:Ohixekcjjjj94hikaicztaicwtcj;GiGVaicsGVc:p;G:dKGcH2c;d;H:WKGcv2c;j:KM;jbGhvdndnaDaeclfIdbak:tNJb;au9eNJbbbZMgx:lJbbb9p9DTmbax:Ohixekcjjjj94hikaicztaicwtcj;GiGVaicsGVc:p;G:dKGcH2c;d;H:WKGcq2cM;j:KMeGavVhvdndnaDaecwfIdbaq:tNJb;au9eNJbbbZMgx:lJbbb9p9DTmbax:Ohixekcjjjj94hikaHavaicztaicwtcj;GiGVaicsGVc:p;G:dKGcH2c;d;H:WKGcC2c:KM;j:KdGVBdbaeasfheaHclfhHazcufgzmbkalcbcj;GbzNjjjbhiarhHadheinaiaHydbgzcFrGcx2fgvavydbcefBdbaiazcq4cFrGcx2fgvavydlcefBdlaiazcC4cFrGcx2fgzazydwcefBdwaHclfhHaecufgembxdkkalcbcj;GbzNjjjb8AkcbhHcbhzcbhecbhvinalaHfgiydbhsaiazBdbaicwfgwydbhOawavBdbaiclfgiydbhwaiaeBdbasazfhzaOavfhvawaefheaHcxfgHcj;Gb9hmbkcbhialaocbyd:K:kjjbHjjjjbbgzBd:m9GdnadTmbabhHinaHaiBdbaHclfhHadaicefgi9hmbkadTmbabhiadhHinalaraiydbgecdtfydbcFrGcx2fgvavydbgvcefBdbazavcdtfaeBdbaiclfhiaHcufgHmbkazhiadhHinalaraiydbgecdtfydbcq4cFrGcx2fgvavydlgvcefBdlabavcdtfaeBdbaiclfhiaHcufgHmbkabhiadhHinalaraiydbgecdtfydbcC4cFrGcx2fgvavydwgvcefBdwazavcdtfaeBdbaiclfhiaHcufgHmbkadTmbcbhiinabazydbcdtfaiBdbazclfhzadaicefgi9hmbkkclhidninaic98Smealc1;Gbfaifydbcbyd:G:kjjbH:bjjjbbaic98fhixbkkalcj;Hbf8Kjjjjbk9teiucbcbyd:O:kjjbgeabcifc98GfgbBd:O:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:O:kjjbgeabcrfc94GfgbBd:O:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:O:kjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:O:kjjbfgdBd:O:kjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk:6ddbcjwk:Cdb4:h9w9N94:P:gW:j9O:ye9Pbbbbbbebbbdbbbebbbdbbbbbbbdbbbbbbbebbbbbbb:l29hZ;69:9kZ;N;76Z;rg97Z;z;o9xZ8J;B85Z;:;u9yZ;b;k9HZ:2;Z9DZ9e:l9mZ59A8KZ:r;T3Z:A:zYZ79OHZ;j4::8::Y:D9V8:bbbb9s:49:Z8R:hBZ9M9M;M8:L;z;o8:;8:PG89q;x:J878R:hQ8::M:B;e87bbbbbbjZbbjZbbjZ:E;V;N8::Y:DsZ9i;H;68:xd;R8:;h0838:;W:NoZbbbb:WV9O8:uf888:9i;H;68:9c9G;L89;n;m9m89;D8Ko8:bbbbf:8tZ9m836ZS:2AZL;zPZZ818EZ9e:lxZ;U98F8:819E;68:FFuuFFuuFFuuFFuFFFuFFFuFbc:Cqkzebbbebbbdbbb8WWbb"), {}).then(function(h) {
|
|
3068
|
-
(
|
|
3277
|
+
(o = h.instance).exports.__wasm_call_ctors(), o.exports.meshopt_encodeVertexVersion(0), o.exports.meshopt_encodeIndexVersion(1);
|
|
3069
3278
|
});
|
|
3070
3279
|
function a(h) {
|
|
3071
3280
|
if (!h) throw new Error("Assertion failed");
|
|
@@ -3074,10 +3283,10 @@ function ys(c, e, t) {
|
|
|
3074
3283
|
return new Uint8Array(h.buffer, h.byteOffset, h.byteLength);
|
|
3075
3284
|
}
|
|
3076
3285
|
function s(h, b, g, f, I) {
|
|
3077
|
-
var u =
|
|
3078
|
-
|
|
3079
|
-
var
|
|
3080
|
-
return x.set(
|
|
3286
|
+
var u = o.exports.sbrk, p = u(b), m = u(f * I), C = new Uint8Array(o.exports.memory.buffer);
|
|
3287
|
+
C.set(A(g), m);
|
|
3288
|
+
var E = h(p, b, m, f, I), x = new Uint8Array(E);
|
|
3289
|
+
return x.set(C.subarray(p, p + E)), u(p - u(0)), x;
|
|
3081
3290
|
}
|
|
3082
3291
|
function i(h) {
|
|
3083
3292
|
for (var b = 0, g = 0; g < h.length; ++g)
|
|
@@ -3090,16 +3299,16 @@ function ys(c, e, t) {
|
|
|
3090
3299
|
return new Uint32Array(g);
|
|
3091
3300
|
}
|
|
3092
3301
|
function l(h, b, g, f, I, u, p) {
|
|
3093
|
-
var m =
|
|
3094
|
-
x.set(A(b),
|
|
3302
|
+
var m = o.exports.sbrk, C = m(g * f), E = m(g * u), x = new Uint8Array(o.exports.memory.buffer);
|
|
3303
|
+
x.set(A(b), E), h(C, g, f, I, E, p);
|
|
3095
3304
|
var w = new Uint8Array(g * f);
|
|
3096
|
-
return w.set(x.subarray(
|
|
3305
|
+
return w.set(x.subarray(C, C + g * f)), m(C - m(0)), w;
|
|
3097
3306
|
}
|
|
3098
3307
|
})();
|
|
3099
|
-
var
|
|
3100
|
-
var
|
|
3308
|
+
var RA = function() {
|
|
3309
|
+
var o = new Uint8Array([0, 97, 115, 109, 1, 0, 0, 0, 1, 4, 1, 96, 0, 0, 3, 3, 2, 0, 0, 5, 3, 1, 0, 1, 12, 1, 0, 10, 22, 2, 12, 0, 65, 0, 65, 0, 65, 0, 252, 10, 0, 0, 11, 7, 0, 65, 0, 253, 15, 26, 11]), e = new Uint8Array([32, 0, 65, 2, 1, 106, 34, 33, 3, 128, 11, 4, 13, 64, 6, 253, 10, 7, 15, 116, 127, 5, 8, 12, 40, 16, 19, 54, 20, 9, 27, 255, 113, 17, 42, 67, 24, 23, 146, 148, 18, 14, 22, 45, 70, 69, 56, 114, 101, 21, 25, 63, 75, 136, 108, 28, 118, 29, 73, 115]);
|
|
3101
3310
|
if (typeof WebAssembly != "object") return { supported: !1 };
|
|
3102
|
-
var t, a = WebAssembly.validate(c) ? "b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q;Aekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;b9tqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk;e8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhwcbhDinaDae9pmeawaeaD9RaDawfae6Egqcsfgoc9WGgkci2hxakcethmaocl4cifcd4hPabaDad2fhscbhzdnincbhHalhOcbhAdninaraO9RaP6miavcj;cbfaAak2fhCaOaPfhlcbhidnakc;ab6mbaral9Rc;Gb6mbcbhoinaCaofhidndndndndnaOaoco4fRbbgXciGPlbedibkaipxbbbbbbbbbbbbbbbbpklbxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklbalczfhlkdndndndndnaXcd4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklzxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklzalczfhlkdndndndndnaXcl4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklaxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklaalczfhlkdndndndndnaXco4Plbedibkaipxbbbbbbbbbbbbbbbbpkl8WxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalclfaYpQbfaXc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalcwfaYpQbfaXc:q:yjjbfRbbfhlxekaialpbbbpkl8Walczfhlkaoc;abfhiaocjefak0meaihoaral9Rc;Fb0mbkkdndnaiak9pmbaici4hoinaral9RcK6mdaCaifhXdndndndndnaOaico4fRbbaocoG4ciGPlbedibkaXpxbbbbbbbbbbbbbbbbpklbxikaXalpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaXalpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaXalpbbbpklbalczfhlkaocdfhoaiczfgiak6mbkkalTmbaAcd0hHalhOaAcefgAclSmdxekkcbhlaHceGTmdkdnakTmbavcjdfazfhiavazfpbdbhYcbhXinaiavcj;cbfaXfgopblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLaoakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEaoamfpblbg3cep9Ta3aQp9op9Hp9rg3aoaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfhiaXczfgXak6mbkkazclfgzad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfhDc9:hoalmexikkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk;tzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfalaDcu7gPcl4fcsGcitfgsydlhzasydbhHdnaDcsGgDak9pmbavaiaPfcsGcdtfydbaxaDEhsaDThDdndnadcd9hmbabarcetfgPaH87ebaPcdfaz87ebaPclfas87ebxekabarcdtfgPaHBdbaPclfazBdbaPcwfasBdbkaxaDfhxavc;abfalcitfgPasBdbaPazBdlavaicdtfasBdbavc;abfalcefcsGglcitfgPaHBdbaPasBdlaiaDfhialcefhlxdkdndnaDcsSmbamaDfaDc987fcefhmxekaocefhDao8SbbgscFeGhPdndnascu9mmbaDhoxekaocvfhoaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhokaPce4cbaPceG9R7amfhmkdndnadcd9hmbabarcetfgDaH87ebaDcdfaz87ebaDclfam87ebxekabarcdtfgDaHBdbaDclfazBdbaDcwfamBdbkavc;abfalcitfgDamBdbaDazBdlavaicdtfamBdbavc;abfalcefcsGglcitfgDaHBdbaDamBdlaicefhialcefhlxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHcdfaD87ebaHclfas87ebxekabarcdtfgHaxBdbaHclfaDBdbaHcwfasBdbkavaicdtfaxBdbavc;abfalcitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfalcefcsGcitfgHasBdbaHaDBdlavaiaPfcsGgicdtfasBdbavc;abfalcdfcsGglcitfgDaxBdbaDasBdlalcefhlaiaOfhiazaOfhxxekaxcbaoRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbaocefhDxekaocdfhDao8SbegPcFeGhsdnaPcu9kmbaocofhAascFbGhscrhodninaD8SbbgPcFbGaotasVhsaPcu9kmeaDcefhDaocrfgoc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbgocFeGhPdnaocu9kmbaDcvfhzaPcFbGhPcrhodninas8SbbgDcFbGaotaPVhPaDcu9kmeascefhsaocrfgoc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashoxekascefhoas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninao8SbbgscFbGaDtaPVhPascu9kmeaocefhoaDcrfgDc8J9hmbkaOhoxekaocefhokaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDcdfaz87ebaDclfaO87ebxekabarcdtfgDaABdbaDclfazBdbaDcwfaOBdbkavc;abfalcitfgDazBdbaDaABdlavaicdtfaABdbavc;abfalcefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfalcdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiarcifgrae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:flevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:wPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalae9pmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oawaopmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalae9pmbaiaeciGgvcitgdfcbcaad9R;8kbaiabalcitfglad;8qbbdnavTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oawaopmbezHdiOAlvCXorQLp9qpklbkalaiad;8qbbkk;4wllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalae9pmbaiaeciGgvcitgofcbcaao9R;8kbaiabalcitfgwao;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkawaiao;8qbbkk:Pddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnaval9pmbaialciGgecdtgdVcbc;abad9R;8kbaiabavcdtfgvad;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkavaiad;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz9Tbb" : "b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q;iekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq;d8Yqdbk:yzeHu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9UhlaicefhodnadTmbalc;WFbGglcjdalcjd6EhDcbhqinaqae9pmeaDaeaq9RaqaDfae6Egkcsfglcl4cifcd4hxdndndndnalc9WGgmTmbcbhPcehsawcjdfhzaohHinaraH9Rax6midnaraHaxfgo9RcK6mbczhlcbhOinalgic9WfgAawcj;cbffhldndndndndnaHaAco4fRbbaOcoG4ciGPlbedibkal9cb83ibalcwf9cb83ibxikalaoRblaoRbbgAco4gCaCciSgCE86bbawcj;cbfaifglcGfaoclfaCfgCRbbaAcl4ciGgXaXciSgXE86bbalcVfaCaXfgCRbbaAcd4ciGgXaXciSgXE86bbalc7faCaXfgCRbbaAciGgAaAciSgAE86bbalctfaCaAfgCRbbaoRbegAco4gXaXciSgXE86bbalc91faCaXfgCRbbaAcl4ciGgXaXciSgXE86bbalc4faCaXfgCRbbaAcd4ciGgXaXciSgXE86bbalc93faCaXfgCRbbaAciGgAaAciSgAE86bbalc94faCaAfgCRbbaoRbdgAco4gXaXciSgXE86bbalc95faCaXfgCRbbaAcl4ciGgXaXciSgXE86bbalc96faCaXfgCRbbaAcd4ciGgXaXciSgXE86bbalc97faCaXfgCRbbaAciGgAaAciSgAE86bbalc98faCaAfgARbbaoRbigoco4gCaCciSgCE86bbalc99faAaCfgARbbaocl4ciGgCaCciSgCE86bbalc9:faAaCfgARbbaocd4ciGgCaCciSgCE86bbalcufaAaCfglRbbaociGgoaociSgoE86bbalaofhoxdkalaoRbwaoRbbgAcl4gCaCcsSgCE86bbawcj;cbfaifglcGfaocwfaCfgCRbbaAcsGgAaAcsSgAE86bbalcVfaCaAfgARbbaoRbegCcl4gXaXcsSgXE86bbalc7faAaXfgARbbaCcsGgCaCcsSgCE86bbalctfaAaCfgARbbaoRbdgCcl4gXaXcsSgXE86bbalc91faAaXfgARbbaCcsGgCaCcsSgCE86bbalc4faAaCfgARbbaoRbigCcl4gXaXcsSgXE86bbalc93faAaXfgARbbaCcsGgCaCcsSgCE86bbalc94faAaCfgARbbaoRblgCcl4gXaXcsSgXE86bbalc95faAaXfgARbbaCcsGgCaCcsSgCE86bbalc96faAaCfgARbbaoRbvgCcl4gXaXcsSgXE86bbalc97faAaXfgARbbaCcsGgCaCcsSgCE86bbalc98faAaCfgARbbaoRbogCcl4gXaXcsSgXE86bbalc99faAaXfgARbbaCcsGgCaCcsSgCE86bbalc9:faAaCfgARbbaoRbrgocl4gCaCcsSgCE86bbalcufaAaCfglRbbaocsGgoaocsSgoE86bbalaofhoxekalao8Pbb83bbalcwfaocwf8Pbb83bbaoczfhokdnaiam9pmbaOcdfhOaiczfhlarao9RcL0mekkaiam6miaoTmidnakTmbawaPfRbbhOawcj;cbfhlazhiakhAinaialRbbgHce4cbaHceG9R7aOfgO86bbaiadfhialcefhlaAcufgAmbkkazcefhzaPcefgPad6hsaohHaPad9hmexvkkcbhoasceGmdxikaoaxad2fhXdnakTmbcbhmcehsawcjdfhCinarao9Rax6miaoTmdaoaxfhoawamfRbbhOawcj;cbfhlaChiakhAinaialRbbgHce4cbaHceG9R7aOfgO86bbaiadfhialcefhlaAcufgAmbkaCcefhCamcefgmad6hsamad9hmbkaXhoxikcbhlcehsinarao9Rax6mdaoTmeaoaxfhoalcefglad6hsadal9hmbkaXhoxdkcbhoasceGTmekc9:hoxikabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqaombkc9:hoxekcbc99arao9Radcaadca0ESEhokavcj;ebf8Kjjjjbaok;xzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfalaDcu7gPcl4fcsGcitfgsydlhzasydbhHdnaDcsGgDak9pmbavaiaPfcsGcdtfydbaxaDEhsaDThDdndnadcd9hmbabarcetfgPaH87ebaPcdfaz87ebaPclfas87ebxekabarcdtfgPaHBdbaPclfazBdbaPcwfasBdbkaxaDfhxavc;abfalcitfgPasBdbaPazBdlavaicdtfasBdbavc;abfalcefcsGglcitfgPaHBdbaPasBdlaiaDfhialcefhlxdkdndnaDcsSmbamaDfaDc987fcefhmxekaocefhDao8SbbgscFeGhPdndnascu9mmbaDhoxekaocvfhoaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhokaPce4cbaPceG9R7amfhmkdndnadcd9hmbabarcetfgDaH87ebaDcdfaz87ebaDclfam87ebxekabarcdtfgDaHBdbaDclfazBdbaDcwfamBdbkavc;abfalcitfgDamBdbaDazBdlavaicdtfamBdbavc;abfalcefcsGglcitfgDaHBdbaDamBdlaicefhialcefhlxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHcdfaD87ebaHclfas87ebxekabarcdtfgHaxBdbaHclfaDBdbaHcwfasBdbkavaicdtfaxBdbavc;abfalcitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfalcefcsGcitfgHasBdbaHaDBdlavaiaPfcsGgicdtfasBdbavc;abfalcdfcsGglcitfgDaxBdbaDasBdlalcefhlaiaOfhiazaOfhxxekaxcbaoRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbaocefhDxekaocdfhDao8SbegPcFeGhsdnaPcu9kmbaocofhAascFbGhscrhodninaD8SbbgPcFbGaotasVhsaPcu9kmeaDcefhDaocrfgoc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbgocFeGhPdnaocu9kmbaDcvfhzaPcFbGhPcrhodninas8SbbgDcFbGaotaPVhPaDcu9kmeascefhsaocrfgoc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashoxekascefhoas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninao8SbbgscFbGaDtaPVhPascu9kmeaocefhoaDcrfgDc8J9hmbkaOhoxekaocefhokaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDcdfaz87ebaDclfaO87ebxekabarcdtfgDaABdbaDclfazBdbaDcwfaOBdbkavc;abfalcitfgDazBdbaDaABdlavaicdtfaABdbavc;abfalcefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfalcdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiarcifgrae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:flevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;siliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:Ohkxekcjjjj94hkkabaiavcdfciGfcetfak87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:Ohqxekcjjjj94hqkabaiavcufciGfcetfaq87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohqxekcjjjj94hqkabaiavciGfcetfaq87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklz9Kbb", A = WebAssembly.instantiate(s(a), {}).then(function(I) {
|
|
3311
|
+
var t, a = WebAssembly.validate(o) ? "b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q;Aekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;b9tqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk;e8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhwcbhDinaDae9pmeawaeaD9RaDawfae6Egqcsfgoc9WGgkci2hxakcethmaocl4cifcd4hPabaDad2fhscbhzdnincbhHalhOcbhAdninaraO9RaP6miavcj;cbfaAak2fhCaOaPfhlcbhidnakc;ab6mbaral9Rc;Gb6mbcbhoinaCaofhidndndndndnaOaoco4fRbbgXciGPlbedibkaipxbbbbbbbbbbbbbbbbpklbxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklbalczfhlkdndndndndnaXcd4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklzxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklzalczfhlkdndndndndnaXcl4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklaxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklaalczfhlkdndndndndnaXco4Plbedibkaipxbbbbbbbbbbbbbbbbpkl8WxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalclfaYpQbfaXc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalcwfaYpQbfaXc:q:yjjbfRbbfhlxekaialpbbbpkl8Walczfhlkaoc;abfhiaocjefak0meaihoaral9Rc;Fb0mbkkdndnaiak9pmbaici4hoinaral9RcK6mdaCaifhXdndndndndnaOaico4fRbbaocoG4ciGPlbedibkaXpxbbbbbbbbbbbbbbbbpklbxikaXalpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaXalpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaXalpbbbpklbalczfhlkaocdfhoaiczfgiak6mbkkalTmbaAcd0hHalhOaAcefgAclSmdxekkcbhlaHceGTmdkdnakTmbavcjdfazfhiavazfpbdbhYcbhXinaiavcj;cbfaXfgopblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLaoakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEaoamfpblbg3cep9Ta3aQp9op9Hp9rg3aoaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfhiaXczfgXak6mbkkazclfgzad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfhDc9:hoalmexikkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk;tzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfalaDcu7gPcl4fcsGcitfgsydlhzasydbhHdnaDcsGgDak9pmbavaiaPfcsGcdtfydbaxaDEhsaDThDdndnadcd9hmbabarcetfgPaH87ebaPcdfaz87ebaPclfas87ebxekabarcdtfgPaHBdbaPclfazBdbaPcwfasBdbkaxaDfhxavc;abfalcitfgPasBdbaPazBdlavaicdtfasBdbavc;abfalcefcsGglcitfgPaHBdbaPasBdlaiaDfhialcefhlxdkdndnaDcsSmbamaDfaDc987fcefhmxekaocefhDao8SbbgscFeGhPdndnascu9mmbaDhoxekaocvfhoaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhokaPce4cbaPceG9R7amfhmkdndnadcd9hmbabarcetfgDaH87ebaDcdfaz87ebaDclfam87ebxekabarcdtfgDaHBdbaDclfazBdbaDcwfamBdbkavc;abfalcitfgDamBdbaDazBdlavaicdtfamBdbavc;abfalcefcsGglcitfgDaHBdbaDamBdlaicefhialcefhlxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHcdfaD87ebaHclfas87ebxekabarcdtfgHaxBdbaHclfaDBdbaHcwfasBdbkavaicdtfaxBdbavc;abfalcitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfalcefcsGcitfgHasBdbaHaDBdlavaiaPfcsGgicdtfasBdbavc;abfalcdfcsGglcitfgDaxBdbaDasBdlalcefhlaiaOfhiazaOfhxxekaxcbaoRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbaocefhDxekaocdfhDao8SbegPcFeGhsdnaPcu9kmbaocofhAascFbGhscrhodninaD8SbbgPcFbGaotasVhsaPcu9kmeaDcefhDaocrfgoc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbgocFeGhPdnaocu9kmbaDcvfhzaPcFbGhPcrhodninas8SbbgDcFbGaotaPVhPaDcu9kmeascefhsaocrfgoc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashoxekascefhoas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninao8SbbgscFbGaDtaPVhPascu9kmeaocefhoaDcrfgDc8J9hmbkaOhoxekaocefhokaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDcdfaz87ebaDclfaO87ebxekabarcdtfgDaABdbaDclfazBdbaDcwfaOBdbkavc;abfalcitfgDazBdbaDaABdlavaicdtfaABdbavc;abfalcefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfalcdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiarcifgrae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:flevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:wPliuo97eue978Jjjjjbca9Rhiaec98Ghldndnadcl9hmbdnalTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalae9pmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;8qbbdnalTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDaqp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkadaiav;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oawaopmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalae9pmbaiaeciGgvcitgdfcbcaad9R;8kbaiabalcitfglad;8qbbdnavTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oawaopmbezHdiOAlvCXorQLp9qpklbkalaiad;8qbbkk;4wllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalae9pmbaiaeciGgvcitgofcbcaao9R;8kbaiabalcitfgwao;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkawaiao;8qbbkk:Pddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnaval9pmbaialciGgecdtgdVcbc;abad9R;8kbaiabavcdtfgvad;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkavaiad;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz9Tbb" : "b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q;iekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq;d8Yqdbk:yzeHu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9UhlaicefhodnadTmbalc;WFbGglcjdalcjd6EhDcbhqinaqae9pmeaDaeaq9RaqaDfae6Egkcsfglcl4cifcd4hxdndndndnalc9WGgmTmbcbhPcehsawcjdfhzaohHinaraH9Rax6midnaraHaxfgo9RcK6mbczhlcbhOinalgic9WfgAawcj;cbffhldndndndndnaHaAco4fRbbaOcoG4ciGPlbedibkal9cb83ibalcwf9cb83ibxikalaoRblaoRbbgAco4gCaCciSgCE86bbawcj;cbfaifglcGfaoclfaCfgCRbbaAcl4ciGgXaXciSgXE86bbalcVfaCaXfgCRbbaAcd4ciGgXaXciSgXE86bbalc7faCaXfgCRbbaAciGgAaAciSgAE86bbalctfaCaAfgCRbbaoRbegAco4gXaXciSgXE86bbalc91faCaXfgCRbbaAcl4ciGgXaXciSgXE86bbalc4faCaXfgCRbbaAcd4ciGgXaXciSgXE86bbalc93faCaXfgCRbbaAciGgAaAciSgAE86bbalc94faCaAfgCRbbaoRbdgAco4gXaXciSgXE86bbalc95faCaXfgCRbbaAcl4ciGgXaXciSgXE86bbalc96faCaXfgCRbbaAcd4ciGgXaXciSgXE86bbalc97faCaXfgCRbbaAciGgAaAciSgAE86bbalc98faCaAfgARbbaoRbigoco4gCaCciSgCE86bbalc99faAaCfgARbbaocl4ciGgCaCciSgCE86bbalc9:faAaCfgARbbaocd4ciGgCaCciSgCE86bbalcufaAaCfglRbbaociGgoaociSgoE86bbalaofhoxdkalaoRbwaoRbbgAcl4gCaCcsSgCE86bbawcj;cbfaifglcGfaocwfaCfgCRbbaAcsGgAaAcsSgAE86bbalcVfaCaAfgARbbaoRbegCcl4gXaXcsSgXE86bbalc7faAaXfgARbbaCcsGgCaCcsSgCE86bbalctfaAaCfgARbbaoRbdgCcl4gXaXcsSgXE86bbalc91faAaXfgARbbaCcsGgCaCcsSgCE86bbalc4faAaCfgARbbaoRbigCcl4gXaXcsSgXE86bbalc93faAaXfgARbbaCcsGgCaCcsSgCE86bbalc94faAaCfgARbbaoRblgCcl4gXaXcsSgXE86bbalc95faAaXfgARbbaCcsGgCaCcsSgCE86bbalc96faAaCfgARbbaoRbvgCcl4gXaXcsSgXE86bbalc97faAaXfgARbbaCcsGgCaCcsSgCE86bbalc98faAaCfgARbbaoRbogCcl4gXaXcsSgXE86bbalc99faAaXfgARbbaCcsGgCaCcsSgCE86bbalc9:faAaCfgARbbaoRbrgocl4gCaCcsSgCE86bbalcufaAaCfglRbbaocsGgoaocsSgoE86bbalaofhoxekalao8Pbb83bbalcwfaocwf8Pbb83bbaoczfhokdnaiam9pmbaOcdfhOaiczfhlarao9RcL0mekkaiam6miaoTmidnakTmbawaPfRbbhOawcj;cbfhlazhiakhAinaialRbbgHce4cbaHceG9R7aOfgO86bbaiadfhialcefhlaAcufgAmbkkazcefhzaPcefgPad6hsaohHaPad9hmexvkkcbhoasceGmdxikaoaxad2fhXdnakTmbcbhmcehsawcjdfhCinarao9Rax6miaoTmdaoaxfhoawamfRbbhOawcj;cbfhlaChiakhAinaialRbbgHce4cbaHceG9R7aOfgO86bbaiadfhialcefhlaAcufgAmbkaCcefhCamcefgmad6hsamad9hmbkaXhoxikcbhlcehsinarao9Rax6mdaoTmeaoaxfhoalcefglad6hsadal9hmbkaXhoxdkcbhoasceGTmekc9:hoxikabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqaombkc9:hoxekcbc99arao9Radcaadca0ESEhokavcj;ebf8Kjjjjbaok;xzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhrcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgDc;Ve0mbavc;abfalaDcu7gPcl4fcsGcitfgsydlhzasydbhHdnaDcsGgDak9pmbavaiaPfcsGcdtfydbaxaDEhsaDThDdndnadcd9hmbabarcetfgPaH87ebaPcdfaz87ebaPclfas87ebxekabarcdtfgPaHBdbaPclfazBdbaPcwfasBdbkaxaDfhxavc;abfalcitfgPasBdbaPazBdlavaicdtfasBdbavc;abfalcefcsGglcitfgPaHBdbaPasBdlaiaDfhialcefhlxdkdndnaDcsSmbamaDfaDc987fcefhmxekaocefhDao8SbbgscFeGhPdndnascu9mmbaDhoxekaocvfhoaPcFbGhPcrhsdninaD8SbbgOcFbGastaPVhPaOcu9kmeaDcefhDascrfgsc8J9hmbxdkkaDcefhokaPce4cbaPceG9R7amfhmkdndnadcd9hmbabarcetfgDaH87ebaDcdfaz87ebaDclfam87ebxekabarcdtfgDaHBdbaDclfazBdbaDcwfamBdbkavc;abfalcitfgDamBdbaDazBdlavaicdtfamBdbavc;abfalcefcsGglcitfgDaHBdbaDamBdlaicefhialcefhlxekdnaDcpe0mbaxcefgOavaiaqaDcsGfRbbgscl49RcsGcdtfydbascz6gPEhDavaias9RcsGcdtfydbaOaPfgzascsGgOEhsaOThOdndnadcd9hmbabarcetfgHax87ebaHcdfaD87ebaHclfas87ebxekabarcdtfgHaxBdbaHclfaDBdbaHcwfasBdbkavaicdtfaxBdbavc;abfalcitfgHaDBdbaHaxBdlavaicefgicsGcdtfaDBdbavc;abfalcefcsGcitfgHasBdbaHaDBdlavaiaPfcsGgicdtfasBdbavc;abfalcdfcsGglcitfgDaxBdbaDasBdlalcefhlaiaOfhiazaOfhxxekaxcbaoRbbgHEgAaDc;:eSgDfhzaHcsGhCaHcl4hXdndnaHcs0mbazcefhOxekazhOavaiaX9RcsGcdtfydbhzkdndnaCmbaOcefhxxekaOhxavaiaH9RcsGcdtfydbhOkdndnaDTmbaocefhDxekaocdfhDao8SbegPcFeGhsdnaPcu9kmbaocofhAascFbGhscrhodninaD8SbbgPcFbGaotasVhsaPcu9kmeaDcefhDaocrfgoc8J9hmbkaAhDxekaDcefhDkasce4cbasceG9R7amfgmhAkdndnaXcsSmbaDhsxekaDcefhsaD8SbbgocFeGhPdnaocu9kmbaDcvfhzaPcFbGhPcrhodninas8SbbgDcFbGaotaPVhPaDcu9kmeascefhsaocrfgoc8J9hmbkazhsxekascefhskaPce4cbaPceG9R7amfgmhzkdndnaCcsSmbashoxekascefhoas8SbbgDcFeGhPdnaDcu9kmbascvfhOaPcFbGhPcrhDdninao8SbbgscFbGaDtaPVhPascu9kmeaocefhoaDcrfgDc8J9hmbkaOhoxekaocefhokaPce4cbaPceG9R7amfgmhOkdndnadcd9hmbabarcetfgDaA87ebaDcdfaz87ebaDclfaO87ebxekabarcdtfgDaABdbaDclfazBdbaDcwfaOBdbkavc;abfalcitfgDazBdbaDaABdlavaicdtfaABdbavc;abfalcefcsGcitfgDaOBdbaDazBdlavaicefgicsGcdtfazBdbavc;abfalcdfcsGcitfgDaABdbaDaOBdlavaiaHcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiarcifgrae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:flevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaic8Etc8F91aicd47avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;siliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:Ohkxekcjjjj94hkkabaiavcdfciGfcetfak87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:Ohqxekcjjjj94hqkabaiavcufciGfcetfaq87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohqxekcjjjj94hqkabaiavciGfcetfaq87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklz9Kbb", A = WebAssembly.instantiate(s(a), {}).then(function(I) {
|
|
3103
3312
|
(t = I.instance).exports.__wasm_call_ctors();
|
|
3104
3313
|
});
|
|
3105
3314
|
function s(I) {
|
|
@@ -3107,15 +3316,15 @@ var QA = function() {
|
|
|
3107
3316
|
var m = I.charCodeAt(p);
|
|
3108
3317
|
u[p] = m > 96 ? m - 97 : m > 64 ? m - 39 : m + 4;
|
|
3109
3318
|
}
|
|
3110
|
-
var
|
|
3111
|
-
for (p = 0; p < I.length; ++p) u[
|
|
3112
|
-
return u.buffer.slice(0,
|
|
3319
|
+
var C = 0;
|
|
3320
|
+
for (p = 0; p < I.length; ++p) u[C++] = u[p] < 60 ? e[u[p]] : 64 * (u[p] - 60) + u[++p];
|
|
3321
|
+
return u.buffer.slice(0, C);
|
|
3113
3322
|
}
|
|
3114
|
-
function i(I, u, p, m,
|
|
3115
|
-
var w = I.exports.sbrk, M = m + 3 & -4,
|
|
3116
|
-
k.set(
|
|
3117
|
-
var R = u(
|
|
3118
|
-
if (R == 0 && x && x(
|
|
3323
|
+
function i(I, u, p, m, C, E, x) {
|
|
3324
|
+
var w = I.exports.sbrk, M = m + 3 & -4, T = w(M * C), v = w(E.length), k = new Uint8Array(I.exports.memory.buffer);
|
|
3325
|
+
k.set(E, v);
|
|
3326
|
+
var R = u(T, m, C, v, E.length);
|
|
3327
|
+
if (R == 0 && x && x(T, M, C), p.set(k.subarray(T, T + m * C)), w(T - w(0)), R != 0) throw new Error("Malformed buffer data: " + R);
|
|
3119
3328
|
}
|
|
3120
3329
|
var n = { NONE: "", OCTAHEDRAL: "meshopt_decodeFilterOct", QUATERNION: "meshopt_decodeFilterQuat", EXPONENTIAL: "meshopt_decodeFilterExp" }, l = { ATTRIBUTES: "meshopt_decodeVertexBuffer", TRIANGLES: "meshopt_decodeIndexBuffer", INDICES: "meshopt_decodeIndexSequence" }, h = [], b = 0;
|
|
3121
3330
|
function g(I) {
|
|
@@ -3132,40 +3341,40 @@ var QA = function() {
|
|
|
3132
3341
|
try {
|
|
3133
3342
|
var m = new Uint8Array(u.count * u.size);
|
|
3134
3343
|
i(p, p.exports[u.mode], m, u.count, u.size, u.source, p.exports[u.filter]), self.postMessage({ id: u.id, count: u.count, action: "resolve", value: m }, [m.buffer]);
|
|
3135
|
-
} catch (
|
|
3136
|
-
self.postMessage({ id: u.id, count: u.count, action: "reject", value:
|
|
3344
|
+
} catch (C) {
|
|
3345
|
+
self.postMessage({ id: u.id, count: u.count, action: "reject", value: C });
|
|
3137
3346
|
}
|
|
3138
3347
|
});
|
|
3139
3348
|
}
|
|
3140
3349
|
return { ready: A, supported: !0, useWorkers: function(I) {
|
|
3141
3350
|
(function(u) {
|
|
3142
|
-
for (var p = "self.ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(s(a)) + "]), {}).then(function(result) { result.instance.exports.__wasm_call_ctors(); return result.instance; });self.onmessage = " + f.name + ";" + i.toString() + f.toString(), m = new Blob([p], { type: "text/javascript" }),
|
|
3143
|
-
for (
|
|
3144
|
-
h.length = u, URL.revokeObjectURL(
|
|
3351
|
+
for (var p = "self.ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(s(a)) + "]), {}).then(function(result) { result.instance.exports.__wasm_call_ctors(); return result.instance; });self.onmessage = " + f.name + ";" + i.toString() + f.toString(), m = new Blob([p], { type: "text/javascript" }), C = URL.createObjectURL(m), E = h.length; E < u; ++E) h[E] = g(C);
|
|
3352
|
+
for (E = u; E < h.length; ++E) h[E].object.postMessage({});
|
|
3353
|
+
h.length = u, URL.revokeObjectURL(C);
|
|
3145
3354
|
})(I);
|
|
3146
|
-
}, decodeVertexBuffer: function(I, u, p, m,
|
|
3147
|
-
i(t, t.exports.meshopt_decodeVertexBuffer, I, u, p, m, t.exports[n[
|
|
3355
|
+
}, decodeVertexBuffer: function(I, u, p, m, C) {
|
|
3356
|
+
i(t, t.exports.meshopt_decodeVertexBuffer, I, u, p, m, t.exports[n[C]]);
|
|
3148
3357
|
}, decodeIndexBuffer: function(I, u, p, m) {
|
|
3149
3358
|
i(t, t.exports.meshopt_decodeIndexBuffer, I, u, p, m);
|
|
3150
3359
|
}, decodeIndexSequence: function(I, u, p, m) {
|
|
3151
3360
|
i(t, t.exports.meshopt_decodeIndexSequence, I, u, p, m);
|
|
3152
|
-
}, decodeGltfBuffer: function(I, u, p, m,
|
|
3153
|
-
i(t, t.exports[l[
|
|
3154
|
-
}, decodeGltfBufferAsync: function(I, u, p, m,
|
|
3155
|
-
return h.length > 0 ? function(
|
|
3156
|
-
for (var
|
|
3361
|
+
}, decodeGltfBuffer: function(I, u, p, m, C, E) {
|
|
3362
|
+
i(t, t.exports[l[C]], I, u, p, m, t.exports[n[E]]);
|
|
3363
|
+
}, decodeGltfBufferAsync: function(I, u, p, m, C) {
|
|
3364
|
+
return h.length > 0 ? function(E, x, w, M, T) {
|
|
3365
|
+
for (var v = h[0], k = 1; k < h.length; ++k) h[k].pending < v.pending && (v = h[k]);
|
|
3157
3366
|
return new Promise(function(R, S) {
|
|
3158
3367
|
var F = new Uint8Array(w), z = ++b;
|
|
3159
|
-
|
|
3368
|
+
v.pending += E, v.requests[z] = { resolve: R, reject: S }, v.object.postMessage({ id: z, count: E, size: x, source: F, mode: M, filter: T }, [F.buffer]);
|
|
3160
3369
|
});
|
|
3161
|
-
}(I, u, p, l[m], n[
|
|
3162
|
-
var
|
|
3163
|
-
return i(t, t.exports[l[m]],
|
|
3370
|
+
}(I, u, p, l[m], n[C]) : A.then(function() {
|
|
3371
|
+
var E = new Uint8Array(I * u);
|
|
3372
|
+
return i(t, t.exports[l[m]], E, I, u, p, t.exports[n[C]]), E;
|
|
3164
3373
|
});
|
|
3165
3374
|
} };
|
|
3166
3375
|
}();
|
|
3167
3376
|
(function() {
|
|
3168
|
-
var
|
|
3377
|
+
var o, e = new Uint8Array([32, 0, 65, 2, 1, 106, 34, 33, 3, 128, 11, 4, 13, 64, 6, 253, 10, 7, 15, 116, 127, 5, 8, 12, 40, 16, 19, 54, 20, 9, 27, 255, 113, 17, 42, 67, 24, 23, 146, 148, 18, 14, 22, 45, 70, 69, 56, 114, 101, 21, 25, 63, 75, 136, 108, 28, 118, 29, 73, 115]);
|
|
3169
3378
|
if (typeof WebAssembly != "object") return { supported: !1 };
|
|
3170
3379
|
var t = WebAssembly.instantiate(function(n) {
|
|
3171
3380
|
for (var l = new Uint8Array(n.length), h = 0; h < n.length; ++h) {
|
|
@@ -3176,7 +3385,7 @@ var QA = function() {
|
|
|
3176
3385
|
for (h = 0; h < n.length; ++h) l[g++] = l[h] < 60 ? e[l[h]] : 64 * (l[h] - 60) + l[++h];
|
|
3177
3386
|
return l.buffer.slice(0, g);
|
|
3178
3387
|
}("b9H79Tebbbe9Ek9Geueu9Geub9Gbb9GPuuuuuuuuuuu99uueu9Gvuuuuub9Gluuuub9Gquuuuuuu99uueu9Gwuuuuuu99ueu9Giuuue999Gluuuueu9GiuuueuizsdilvoirwDbqqbeqlve9Weiiviebeoweuec:G;jekr:Tewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bbz9TW79O9V9Wt9F79P9T9W29P9M95bl8E9TW79O9V9Wt9F79P9T9W29P9M959x9Pt9OcttV9P9I91tW7bvQ9TW79O9V9Wt9F79P9T9W29P9M959q9V9P9Ut7boX9TW79O9V9Wt9F79P9T9W29P9M959t9J9H2Wbra9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9Wbwl79IV9RbDDwebcekdxmq::9Usdbk;i6iKuY99Ou8Jjjjjbc;W;ab9RgP8KjjjjbaPcwfcbc;Kbz:ljjjb8AaPcualcefgscdtascFFFFi0Ecbyd1:jjjbHjjjjbbgzBdwaPceBd9OaPazBdbaPcuadcitadcFFFFe0Ecbyd1:jjjbHjjjjbbgHBdxaPcdBd9OaPaHBdlaPaeadalcbz:cjjjbaPcualcdtgOalcFFFFi0EgAcbyd1:jjjbHjjjjbbgCBdzaPciBd9OaPaAcbyd1:jjjbHjjjjbbgXBdCaPclBd9Oalcd4alfhQcehLinaLgscethLasaQ6mbkcbhKaPcuascdtgLascFFFFi0Ecbyd1:jjjbHjjjjbbgQBdKaPcvBd9OaQcFeaLz:ljjjbhYdnalTmbavcd4h8AascufhEinaiaKa8A2cdtfg3ydlgscH4as7c:F:b:DD2a3ydbgscH4as7c;D;O:B8J27a3ydwgscH4as7c:3F;N8N27hQcbhsdndninaYaQaEGgQcdtfg5ydbgLcuSmeaiaLa8A2cdtfa3cxz:ojjjbTmdascefgsaQfhQasaE9nmbxdkka5aKBdbaKhLkaCaKcdtfaLBdbaKcefgKal9hmbkcbhsaXhLinaLasBdbaLclfhLalascefgs9hmbkcbhsaChLaXhQindnasaLydbgESmbaQaXaEcdtfgEydbBdbaEasBdbkaLclfhLaQclfhQalascefgs9hmbkkcbh8EaYcbyd:m:jjjbH:bjjjbbaPclBd9OaPalcbyd1:jjjbHjjjjbbgEBdKaPcvBd9OaPaAcbyd1:jjjbHjjjjbbgsBd3aPcoBd9OaPaAcbyd1:jjjbHjjjjbbgLBdaaPcrBd9OascFeaOz:ljjjbh8FaLcFeaOz:ljjjbhadnalTmbaHcwfhhindnaza8EgQcefg8Ecdtfydbg3azaQcdtgsfydbgLSmba3aL9RhOaHaLcitfhgaaasfh8Ja8FasfhKcbh8Aindndnaga8Acitfydbg5aQ9hmbaKaQBdba8JaQBdbxekdnaza5cdtg8KfgsclfydbgLasydbgsSmbaHascitg3fydbaQSmeaLas9Rh8Lascu7aLfhYaha3fhLcbhsinaYasSmeascefhsaLydbh3aLcwfhLa3aQ9hmbkasa8L6mekaaa8KfgsaQa5asydbcuSEBdbaKa5aQaKydbcuSEBdbka8Acefg8AaO9hmbkka8Eal9hmbkaChLaXhQaah3a8Fh8AcbhsindndnasaLydbg59hmbdnasaQydbg59hmba8Aydbh5dna3ydbgYcu9hmba5cu9hmbaEasfcb86bbxikaEasfhKdnasaYSmbasa5SmbaKce86bbxikaKcl86bbxdkdnasaXa5cdtgYfydb9hmbdna3ydbgKcuSmbasaKSmba8AydbgOcuSmbasaOSmbaaaYfydbggcuSmbaga5Smba8FaYfydbgYcuSmbaYa5SmbdnaCaKcdtfydbaCaYcdtfydb9hmbaCaOcdtfydbaCagcdtfydb9hmbaEasfcd86bbxlkaEasfcl86bbxikaEasfcl86bbxdkaEasfcl86bbxekaEasfaEa5fRbb86bbkaLclfhLaQclfhQa3clfh3a8Aclfh8Aalascefgs9hmbkaxceGTmbaEhsalhLindnasRbbce9hmbascl86bbkascefhsaLcufgLmbkkcualcx2alc;v:Q;v:Qe0Ecbyd1:jjjbHjjjjbbh8JaPcwfaPyd9Ogscdtfa8JBdbaPascefgOBd9Oa8Jaialavz:djjjbdndnaDmbcbhvxekcbh5aPcwfaOcdtfcuaDal2gLcdtaLcFFFFi0Ecbyd1:jjjbHjjjjbbgvBdbaPascdfgOBd9OalTmbarcd4cdthYaDcdthKavh8AinaohsawhLa8AhQaDh3inaQasIdbaLIdbNUdbasclfhsaLclfhLaQclfhQa3cufg3mbkaoaYfhoa8AaKfh8Aa5cefg5al9hmbkkaPcwfaOcdtfcualc8S2gsalc;D;O;f8U0EgQcbyd1:jjjbHjjjjbbgLBdbaPaOcefg3Bd9OaLcbasz:ljjjbh8EdndndnaDTmbaPcwfa3cdtfaQcbyd1:jjjbHjjjjbbgoBdbaPaOcdfgLBd9Oaocbasz:ljjjb8AaPcwfaLcdtfcuaDal2gscltgLascFFFFb0Ecbyd1:jjjbHjjjjbbgwBdbaPaOcifBd9OawcbaLz:ljjjb8AadmexdkcbhocbhwadTmekcbh8AaehLindna8JaLclfydbg5cx2fgsIdba8JaLydbgYcx2fgQIdbg8M:tg8Na8JaLcwfydbgKcx2fg3IdlaQIdlgy:tg8PNa3Idba8M:tgIasIdlay:tg8RN:tg8Sa8SNa8Ra3IdwaQIdwgR:tg8UNa8PasIdwaR:tg8RN:tg8Pa8PNa8RaINa8Ua8NN:tg8Na8NNMM:rgIJbbbb9ETmba8SaI:vh8Sa8NaI:vh8Na8PaI:vh8Pka8EaCaYcdtfydbc8S2fgsa8PaI:rgIa8PNNg8RasIdbMUdbasa8NaIa8NNg8VNg8UasIdlMUdlasa8SaIa8SNg8WNg8XasIdwMUdwasa8Va8PNg8VasIdxMUdxasa8Wa8PNg8YasIdzMUdzasa8Wa8NNg8WasIdCMUdCasa8PaIa8SaRNa8Pa8MNaya8NNMM:mgyNg8MNg8PasIdKMUdKasa8Na8MNg8NasId3MUd3asa8Sa8MNg8SasIdaMUdaasa8MayNg8MasId8KMUd8KasaIasIdyMUdya8EaCa5cdtfydbc8S2fgsa8RasIdbMUdbasa8UasIdlMUdlasa8XasIdwMUdwasa8VasIdxMUdxasa8YasIdzMUdzasa8WasIdCMUdCasa8PasIdKMUdKasa8NasId3MUd3asa8SasIdaMUdaasa8MasId8KMUd8KasaIasIdyMUdya8EaCaKcdtfydbc8S2fgsa8RasIdbMUdbasa8UasIdlMUdlasa8XasIdwMUdwasa8VasIdxMUdxasa8YasIdzMUdzasa8WasIdCMUdCasa8PasIdKMUdKasa8NasId3MUd3asa8SasIdaMUdaasa8MasId8KMUd8KasaIasIdyMUdyaLcxfhLa8Acifg8Aad6mbkcbh5aehYincbhLinaEaeaLc:G1jjbfydba5fcdtfydbgQfRbbhsdndnaEaYaLfydbg3fRbbg8Ac99fcFeGcpe0mbasceSmbascd9hmekdna8AcufcFeGce0mba8Fa3cdtfydbaQ9hmekdnascufcFeGce0mbaaaQcdtfydba39hmekdna8Acv2asfc:W1jjbfRbbTmbaCaQcdtfydbaCa3cdtfydb0mekJbbacJbbjZasceSEhIa8AceShOa8JaeaLc:K1jjbfydba5fcdtfydbcx2fhsdna8JaQcx2fg8AIdwa8Ja3cx2fgKIdwgy:tg8Pa8PNa8AIdbaKIdbgR:tg8Na8NNa8AIdlaKIdlg8R:tg8Sa8SNMM:rg8MJbbbb9ETmba8Pa8M:vh8Pa8Sa8M:vh8Sa8Na8M:vh8NkJbbacaIaOEh8WdnasIdway:tgIa8PaIa8PNasIdbaR:tg8Xa8NNa8SasIdla8R:tg8VNMMg8UN:tgIaINa8Xa8Na8UN:tg8Pa8PNa8Va8Sa8UN:tg8Na8NNMM:rg8SJbbbb9ETmbaIa8S:vhIa8Na8S:vh8Na8Pa8S:vh8Pka8EaCa3cdtfydbc8S2fgsa8Pa8Wa8MNg8Sa8PNNg8UasIdbMUdbasa8Na8Sa8NNg8WNg8XasIdlMUdlasaIa8SaINg8MNg8VasIdwMUdwasa8Wa8PNg8WasIdxMUdxasa8Ma8PNg8YasIdzMUdzasa8Ma8NNg8ZasIdCMUdCasa8Pa8SaIayNa8PaRNa8Ra8NNMM:mgyNg8MNg8PasIdKMUdKasa8Na8MNg8NasId3MUd3asaIa8MNgIasIdaMUdaasa8MayNg8MasId8KMUd8Kasa8SasIdyMUdya8EaCaQcdtfydbc8S2fgsa8UasIdbMUdbasa8XasIdlMUdlasa8VasIdwMUdwasa8WasIdxMUdxasa8YasIdzMUdzasa8ZasIdCMUdCasa8PasIdKMUdKasa8NasId3MUd3asaIasIdaMUdaasa8MasId8KMUd8Kasa8SasIdyMUdykaLclfgLcx9hmbkaYcxfhYa5cifg5ad6mbkaDTmbcbhYinJbbbbhRa8JaeaYcdtfgsclfydbgKcx2fgLIdwa8JasydbgOcx2fgQIdwg8V:tg8Na8NNaLIdbaQIdbg8Y:tgIaINaLIdlaQIdlg8Z:tg8Sa8SNMMg8Wa8Jascwfydbggcx2fgsIdwa8V:tg8MNa8Na8Na8MNaIasIdba8Y:tgyNa8SasIdla8Z:tg8RNMMg8PN:tJbbbbJbbjZa8Wa8Ma8MNayayNa8Ra8RNMMg8XNa8Pa8PN:tg8U:va8UJbbbb9BEg8UNh80a8Xa8NNa8Ma8PN:ta8UNh81a8Wa8RNa8Sa8PN:ta8UNhBa8Xa8SNa8Ra8PN:ta8UNh83a8WayNaIa8PN:ta8UNhUa8XaINaya8PN:ta8UNh85aIa8RNaya8SN:tg8Pa8PNa8Sa8MNa8Ra8NN:tg8Pa8PNa8NayNa8MaIN:tg8Pa8PNMM:r:rh8PavaOaD2cdtfhLavagaD2cdtfhQavaKaD2cdtfh3a8V:mh86a8Z:mh87a8Y:mh88cbh8AaDh5Jbbbbh8RJbbbbh8UJbbbbh8WJbbbbh8XJbbbbh8VJbbbbh8YJbbbbh8ZJbbbbh89Jbbbbh8:inaPc;Wbfa8Afgscwfa8Pa81a3IdbaLIdbg8M:tg8SNa80aQIdba8M:tgyNMg8NNUdbasclfa8Pa83a8SNaBayNMgINUdbasa8Pa85a8SNaUayNMg8SNUdbascxfa8Pa86a8NNa87aINa8Ma88a8SNMMMg8MNUdba8Pa8NaINNa8XMh8Xa8Pa8Na8SNNa8VMh8Va8PaIa8SNNa8YMh8Ya8Pa8Ma8MNNaRMhRa8Pa8Na8MNNa8RMh8Ra8PaIa8MNNa8UMh8Ua8Pa8Sa8MNNa8WMh8Wa8Pa8Na8NNNa8ZMh8Za8PaIaINNa89Mh89a8Pa8Sa8SNNa8:Mh8:aLclfhLa3clfh3aQclfhQa8Aczfh8Aa5cufg5mbkaoaCaOcdtfydbgLc8S2fgsa8:asIdbMUdbasa89asIdlMUdlasa8ZasIdwMUdwasa8YasIdxMUdxasa8VasIdzMUdzasa8XasIdCMUdCasa8WasIdKMUdKasa8UasId3MUd3asa8RasIdaMUdaasaRasId8KMUd8Kasa8PasIdyMUdyaoaCaKcdtfydbgKc8S2fgsa8:asIdbMUdbasa89asIdlMUdlasa8ZasIdwMUdwasa8YasIdxMUdxasa8VasIdzMUdzasa8XasIdCMUdCasa8WasIdKMUdKasa8UasId3MUd3asa8RasIdaMUdaasaRasId8KMUd8Kasa8PasIdyMUdyaoaCagcdtfydbgOc8S2fgsa8:asIdbMUdbasa89asIdlMUdlasa8ZasIdwMUdwasa8YasIdxMUdxasa8VasIdzMUdzasa8XasIdCMUdCasa8WasIdKMUdKasa8UasId3MUd3asa8RasIdaMUdaasaRasId8KMUd8Kasa8PasIdyMUdyawaLaD2cltfh5cbhLaDh3ina5aLfgsaPc;WbfaLfgQIdbasIdbMUdbasclfg8AaQclfIdba8AIdbMUdbascwfg8AaQcwfIdba8AIdbMUdbascxfgsaQcxfIdbasIdbMUdbaLczfhLa3cufg3mbkawaKaD2cltfh5cbhLaDh3ina5aLfgsaPc;WbfaLfgQIdbasIdbMUdbasclfg8AaQclfIdba8AIdbMUdbascwfg8AaQcwfIdba8AIdbMUdbascxfgsaQcxfIdbasIdbMUdbaLczfhLa3cufg3mbkawaOaD2cltfh5cbhLaDh3ina5aLfgsaPc;WbfaLfgQIdbasIdbMUdbasclfg8AaQclfIdba8AIdbMUdbascwfg8AaQcwfIdba8AIdbMUdbascxfgsaQcxfIdbasIdbMUdbaLczfhLa3cufg3mbkaYcifgYad6mbkkdnabaeSmbabaeadcdtz:kjjjb8AkaPydbhZcbhsdnalTmbaZclfhsaZydbh3aEhLalh8AcbhQincbasydbg5a39RaLRbbcpeGEaQfhQaLcefhLasclfhsa5h3a8Acufg8AmbkaQce4hskcuadas9Rcifgrcx2arc;v:Q;v:Qe0Ecbyd1:jjjbHjjjjbbh8LaPcwfaPyd9Ogscdtfa8LBdbaPascefgLBd9OaPcwfaLcdtfcuarcdtarcFFFFi0Ecbyd1:jjjbHjjjjbbgxBdbaPascdfgLBd9OaPcwfaLcdtfaAcbyd1:jjjbHjjjjbbgHBdbaPascifgLBd9OaPcwfaLcdtfalcbyd1:jjjbHjjjjbbgnBdbaPasclfBd9OJbbbbh8Ydnadaq9nmbdnarci6mbakakNh8VaDclthca8Lcwfh9cJbbbbh8YinaPabadghalaCz:cjjjbabhOcbhzcbhKincbhsindnaCaOasfydbgQcdtgYfydbg8AaCabasc;m1jjbfydbaKfcdtfydbgLcdtfydbg5SmbaEaLfRbbgecv2aEaQfRbbg3fc;G1jjbfRbbg8Ka3cv2aefggc;G1jjbfRbbgiVcFeGTmbdnagc:W1jjbfRbbTmba5a8A0mekdna3ae9hmba3cufcFeGce0mba8FaYfydbaL9hmeka8Lazcx2fg3aLaQaicFeGg8AEBdla3aQaLa8AEBdba3a8Aa8KGcb9hBdwazcefhzkasclfgscx9hmbkdnaKcifgKah9pmbaOcxfhOazcifar9nmekkdnazmbahhdxikcbheinJbbbbJbbjZa8EaCa8Laecx2fg3ydlg8Aa3ydbg5a3ydwgLEgKcdtfydbg8Kc8S2gifgsIdyg8P:va8PJbbbb9BEasIdwa8Ja5a8AaLEgYcx2fgLIdwg8SNasIdzaLIdbg8MNasIdaMg8Pa8PMMa8SNasIdlaLIdlgyNasIdCa8SNasId3Mg8Pa8PMMayNasIdba8MNasIdxayNasIdKMg8Pa8PMMa8MNasId8KMMM:lNh8WJbbbbJbbjZa8EaCa5cdtfydbgdc8S2gQfgsIdyg8P:va8PJbbbb9BEasIdwa8Ja8Acx2fgLIdwgINasIdzaLIdbgRNasIdaMg8Pa8PMMaINasIdlaLIdlg8RNasIdCaINasId3Mg8Pa8PMMa8RNasIdbaRNasIdxa8RNasIdKMg8Pa8PMMaRNasId8KMMM:lNh8Xa3cwfhOa3clfhgdnaDTmbaoaQfgQIdwaINaQIdzaRNaQIdaMg8Pa8PMMaINaQIdla8RNaQIdCaINaQId3Mg8Pa8PMMa8RNaQIdbaRNaQIdxa8RNaQIdKMg8Pa8PMMaRNaQId8KMMMh8Nava8AaD2cdtfhLawadaD2cltfhsaQIdyh8UaDhQinaLIdbg8PJbbb;aNascxfIdbaIascwfIdbNaRasIdbNa8RasclfIdbNMMMNa8Pa8PNa8UNa8NMMh8NaLclfhLasczfhsaQcufgQmbkaoaifgQIdwa8SNaQIdza8MNaQIdaMg8Pa8PMMa8SNaQIdlayNaQIdCa8SNaQId3Mg8Pa8PMMayNaQIdba8MNaQIdxayNaQIdKMg8Pa8PMMa8MNaQId8KMMMhIavaYaD2cdtfhLawa8KaD2cltfhsaQIdyhRaDhQinaLIdbg8PJbbb;aNascxfIdba8SascwfIdbNa8MasIdbNayasclfIdbNMMMNa8Pa8PNaRNaIMMhIaLclfhLasczfhsaQcufgQmbka8WaI:lMh8Wa8Xa8N:lMh8Xkaga8AaYa8Xa8W9FgsEBdba3a5aKasEBdbaOa8Xa8WasEUdbaecefgeaz9hmbkaPc;Wbfcbcj;abz:ljjjb8Aa9chsazhLinaPc;WbfasydbcO4c;8ZGfgQaQydbcefBdbascxfhsaLcufgLmbkcbhscbhLinaPc;WbfasfgQydbh3aQaLBdba3aLfhLasclfgscj;ab9hmbkcbhsa9chLinaPc;WbfaLydbcO4c;8ZGfgQaQydbgQcefBdbaxaQcdtfasBdbaLcxfhLazascefgs9hmbkahaq9RgQci9UhJdnalTmbcbhsaHhLinaLasBdbaLclfhLalascefgs9hmbkkcbh9eancbalz:ljjjbhTaQcO9UhSaJce4h9haPydlh9icbhicbhgdnina8Laxagcdtfydbcx2fgOIdwg8Na8V9EmeaiaJ9pmeJFFuuh8Pdna9haz9pmba8Laxa9hcdtfydbcx2fIdwJbb;aZNh8Pkdna8Na8P9ETmbaiaS0mdkdnaTaCaOydlg6cdtg9kfydbg3fg0RbbaTaCaOydbgKcdtg9mfydbg9nfg9oRbbVmbdnaZa9ncdtfgsclfydbgLasydbgsSmbaLas9Rh5a9iascitfhsa8Ja3cx2fgYcwfhdaYclfhAa8Ja9ncx2fg8Kcwfh9pa8Kclfh9qcbhLcehednindnaHasydbcdtfydbgQa3SmbaHasclfydbcdtfydbg8Aa3SmbaQa8ASmba8Ja8Acx2fg8AIdba8JaQcx2fgQIdbgI:tg8Pa9qIdbaQIdlg8S:tg8MNa8KIdbaI:tgya8AIdla8S:tg8NN:ta8PaAIdba8S:tgRNaYIdbaI:tg8Ra8NN:tNa8Na9pIdbaQIdwg8S:tg8UNa8Ma8AIdwa8S:tgIN:ta8NadIdba8S:tg8SNaRaIN:tNaIayNa8Ua8PN:taIa8RNa8Sa8PN:tNMMJbbbb9FmdkascwfhsaLcefgLa56hea5aL9hmbkkaeceGTmba9hcefh9hxeka8Ea3c8S2gQfgsa8Ea9nc8S2g8AfgLIdbasIdbMUdbasaLIdlasIdlMUdlasaLIdwasIdwMUdwasaLIdxasIdxMUdxasaLIdzasIdzMUdzasaLIdCasIdCMUdCasaLIdKasIdKMUdKasaLId3asId3MUd3asaLIdaasIdaMUdaasaLId8KasId8KMUd8KasaLIdyasIdyMUdydnaDTmbaoaQfgsaoa8AfgLIdbasIdbMUdbasaLIdlasIdlMUdlasaLIdwasIdwMUdwasaLIdxasIdxMUdxasaLIdzasIdzMUdzasaLIdCasIdCMUdCasaLIdKasIdKMUdKasaLId3asId3MUd3asaLIdaasIdaMUdaasaLId8KasId8KMUd8KasaLIdyasIdyMUdyaca9n2heaca32hYawhLaDh8AinaLaYfgsaLaefgQIdbasIdbMUdbasclfg5aQclfIdba5IdbMUdbascwfg5aQcwfIdba5IdbMUdbascxfgsaQcxfIdbasIdbMUdbaLczfhLa8Acufg8AmbkkaOcwfhLdndndndnaEaKfgQRbbc9:fPdebdkaKhsinaHascdtgsfa3BdbaXasfydbgsaK9hmbxikkaXa9kfydbhsaXa9mfydbhKaHa9mfa6Bdbash6kaHaKcdtfa6Bdbka9oce86bba0ce86bbaLIdbg8Pa8Ya8Ya8P9DEh8Ya9ecefh9ececdaQRbbceSEaifhikagcefggaz9hmbkkdna9embahhdxikdnalTmbcbhLa8FhsindnasydbgQcuSmbdnaLaHaQcdtg3fydbgQ9hmba8Fa3fydbhQkasaQBdbkasclfhsalaLcefgL9hmbkcbhLaahsindnasydbgQcuSmbdnaLaHaQcdtg3fydbgQ9hmbaaa3fydbhQkasaQBdbkasclfhsalaLcefgL9hmbkkcbhdabhscbh8AindnaHasydbcdtfydbgLaHasclfydbcdtfydbgQSmbaLaHascwfydbcdtfydbg3SmbaQa3Smbabadcdtfg5aLBdba5clfaQBdba5cwfa3Bdbadcifhdkascxfhsa8Acifg8Aah6mbkadaq9nmdxbkkaPabadalaCz:cjjjbkdnamTmbama8Y:rUdbkaPyd9OgscdtaPcwffc98fhCdninasTmeaCydbcbyd:m:jjjbH:bjjjbbaCc98fhCascufhsxbkkaPc;W;abf8Kjjjjbadk;:ieouabydlhvabydbclfcbaicdtz:ljjjbhoadci9UhrdnadTmbdnalTmbaehwadhDinaoalawydbcdtfydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbxdkkaehwadhDinaoawydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbkkdnaiTmbcbhDaohwinawydbhqawaDBdbawclfhwaqaDfhDaicufgimbkkdnadci6mbarcearce0EhdinaecwfydbhwaeclfydbhDaeydbhidnalTmbalawcdtfydbhwalaDcdtfydbhDalaicdtfydbhikavaoaicdtfgqydbcitfaDBdbavaqydbcitfawBdlaqaqydbcefBdbavaoaDcdtfgqydbcitfawBdbavaqydbcitfaiBdlaqaqydbcefBdbavaoawcdtfgwydbcitfaiBdbavawydbcitfaDBdlawawydbcefBdbaecxfheadcufgdmbkkabydbcbBdbk:Zldouv998Jjjjjbca9Rglczfcwfcbyd11jjbBdbalcb8Pdj1jjb83izalcwfcbydN1jjbBdbalcb8Pd:m1jjb83ibdnadTmbaicd4hvdnabTmbavcdthocbhraehwinabarcx2fgiaearav2cdtfgDIdbUdbaiaDIdlUdlaiaDIdwUdwcbhiinalczfaifgDawaifIdbgqaDIdbgkakaq9EEUdbalaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkawaofhwarcefgrad9hmbxdkkavcdthrcbhwincbhiinalczfaifgDaeaifIdbgqaDIdbgkakaq9EEUdbalaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkaearfheawcefgwad9hmbkkdnabTmbadTmbJbbbbJbbjZalIdbalIdzgk:tJbbbb:xgqalIdlalIdCgx:tgmamaq9DEgqalIdwalIdKgm:tgPaPaq9DEgq:vaqJbbbb9BEhqinabaqabIdbak:tNUdbabclfgiaqaiIdbax:tNUdbabcwfgiaqaiIdbam:tNUdbabcxfhbadcufgdmbkkk8KbabaeadaialavcbcbcbcbaoarawaDz:bjjjbk8KbabaeadaialavaoarawaDaqakaxamz:bjjjbk;lOowud99wue99iul998Jjjjjbc;Wb9Rgw8KjjjjbdndnarmbcbhDxekawcwfcbc;Kbz:ljjjb8Aawcuadcx2adc;v:Q;v:Qe0Ecbyd1:jjjbHjjjjbbgqBdwawceBd9Oaqaeadaiz:djjjbawcuadcdtadcFFFFi0Egkcbyd1:jjjbHjjjjbbgxBdxawcdBd9Oadcd4adfhmceheinaegicetheaiam6mbkcbhmawcuaicdtgPaicFFFFi0Ecbyd1:jjjbHjjjjbbgsBdzawciBd9Odndnar:Zgz:rJbbbZMgH:lJbbb9p9DTmbaH:Ohexekcjjjj94hekaicufhOc:bwhAcbhCcbhXadhQinaChLaeaAgKcufaeaK9iEamgDcefaeaD9kEhYdndnadTmbaYcuf:YhHaqhiaxheadhmindndnaiIdbaHNJbbbZMg8A:lJbbb9p9DTmba8A:OhAxekcjjjj94hAkaAcCthAdndnaiclfIdbaHNJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcqtaAVhAdndnaicwfIdbaHNJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaeaAaCVBdbaicxfhiaeclfheamcufgmmbkascFeaPz:ljjjbhEcbh3cbh5indnaEaxa5cdtfydbgAcm4aA7c:v;t;h;Ev2gics4ai7aOGgmcdtfgCydbgecuSmbaeaASmbcehiinaEamaifaOGgmcdtfgCydbgecuSmeaicefhiaeaA9hmbkkaCaABdba3aecuSfh3a5cefg5ad9hmbxdkkascFeaPz:ljjjb8Acbh3kaDaYa3ar0giEhmaLa3aiEhCdna3arSmbaYaKaiEgAam9Rcd9imbdndnaXcl0mbdnaQ:ZgHaL:Zg8A:taY:Yg8EaD:Y:tg8Fa8EaK:Y:tgaa3:Zghaz:tNNNaHaz:taaNa8Aah:tNa8Aaz:ta8FNahaH:tNM:va8EMJbbbZMgH:lJbbb9p9DTmbaH:Ohexdkcjjjj94hexekamaAfcd9Theka3aQaiEhQaXcefgXcs9hmekkdndnaCmbcihicbhDxekcbhiawakcbyd1:jjjbHjjjjbbg5BdCawclBd9OdndnadTmbamcuf:YhHaqhiaxheadhmindndnaiIdbaHNJbbbZMg8A:lJbbb9p9DTmba8A:OhAxekcjjjj94hAkaAcCthAdndnaiclfIdbaHNJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcqtaAVhAdndnaicwfIdbaHNJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaeaAaCVBdbaicxfhiaeclfheamcufgmmbkascFeaPz:ljjjbhEcbhDcbh3inaxa3cdtgYfydbgAcm4aA7c:v;t;h;Ev2gics4ai7hecbhidndninaEaeaOGgmcdtfgCydbgecuSmednaxaecdtgCfydbaASmbaicefgiamfheaiaO9nmekka5aCfydbhixekaCa3BdbaDhiaDcefhDka5aYfaiBdba3cefg3ad9hmbkcuaDc32giaDc;j:KM;jb0EhexekascFeaPz:ljjjb8AcbhDcbhekawaecbyd1:jjjbHjjjjbbgeBdKawcvBd9Oaecbaiz:ljjjbhOavcd4hxdnadTmbaxcdth3a5hmalhAaqheadhEinaOamydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiaAc;81jjbalEgCIdbaiIdxMUdxaiaCIdlaiIdzMUdzaiaCIdwaiIdCMUdCaiaiIdKJbbjZMUdKamclfhmaAa3fhAaecxfheaEcufgEmbkkdnaDTmbaOcxfhiaDheinaictfgmamIdbJbbbbJbbjZaicxfIdbgH:vaHJbbbb9BEgHNUdbaic94fgmaHamIdbNUdbaic98fgmaHamIdbNUdbaiaHaiIdbNUdbaiclfgmaHamIdbNUdbaicwfgmaHamIdbNUdbaic3fhiaecufgembkkcbhAawcuaDcdtgYaDcFFFFi0Egicbyd1:jjjbHjjjjbbgeBd3awcoBd9Oawaicbyd1:jjjbHjjjjbbgEBdaaecFeaYz:ljjjbh3dnadTmbaoaoNh8Aaxcdthxalheina8Aaec;81jjbalEgmIdwaOa5ydbgCc32fgiIdC:tgHaHNamIdbaiIdx:tgHaHNamIdlaiIdz:tgHaHNMMNaqcwfIdbaiIdw:tgHaHNaqIdbaiIdb:tgHaHNaqclfIdbaiIdl:tgHaHNMMMhHdndna3aCcdtgifgmydbcuSmbaEaifIdbaH9ETmekamaABdbaEaifaHUdbka5clfh5aeaxfheaqcxfhqadaAcefgA9hmbkkaba3aYz:kjjjb8AcrhikaicdthiinaiTmeaic98fgiawcwffydbcbyd:m:jjjbH:bjjjbbxbkkawc;Wbf8KjjjjbaDk:Qdidui99ducbhi8Jjjjjbca9Rglczfcwfcbyd11jjbBdbalcb8Pdj1jjb83izalcwfcbydN1jjbBdbalcb8Pd:m1jjb83ibdndnaembJbbjFhvJbbjFhoJbbjFhrxekadcd4cdthwincbhdinalczfadfgDabadfIdbgoaDIdbgrarao9EEUdbaladfgDaoaDIdbgrarao9DEUdbadclfgdcx9hmbkabawfhbaicefgiae9hmbkalIdwalIdK:thralIdlalIdC:thoalIdbalIdz:thvkavJbbbb:xgvaoaoav9DEgoararao9DEk9DeeuabcFeaicdtz:ljjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcifc98GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:q:jjjbgeabcrfc94GfgbBd:q:jjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:q:jjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:q:jjjbfgdBd:q:jjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk6eiucbhidnadTmbdninabRbbglaeRbbgv9hmeaecefheabcefhbadcufgdmbxdkkalav9Rhikaikk:Iedbcjwk1eFFuuFFuuFFuuFFuFFFuFFFuFbbbbbbbbebbbdbbbbbbbebbbeeebeebebbeeebebbbbbebebbbbbebbbdbbbbbbbbbbbbbbbeeeeebebbbbbebbbbbeebbbbbbbbbbbbbbbbbbbbbc1Dkxebbbdbbb:G9Kbb"), {}).then(function(n) {
|
|
3179
|
-
(
|
|
3388
|
+
(o = n.instance).exports.__wasm_call_ctors();
|
|
3180
3389
|
});
|
|
3181
3390
|
function a(n) {
|
|
3182
3391
|
if (!n) throw new Error("Assertion failed");
|
|
@@ -3185,21 +3394,21 @@ var QA = function() {
|
|
|
3185
3394
|
return new Uint8Array(n.buffer, n.byteOffset, n.byteLength);
|
|
3186
3395
|
}
|
|
3187
3396
|
function s(n, l, h, b, g, f, I, u) {
|
|
3188
|
-
var p =
|
|
3189
|
-
x.set(A(l),
|
|
3190
|
-
var w = n(m,
|
|
3191
|
-
new Uint8Array(
|
|
3397
|
+
var p = o.exports.sbrk, m = p(4 * u), C = p(h * b), E = p(h * f), x = new Uint8Array(o.exports.memory.buffer);
|
|
3398
|
+
x.set(A(l), C), g && x.set(A(g), E);
|
|
3399
|
+
var w = n(m, C, h, b, E, f, I, u);
|
|
3400
|
+
new Uint8Array(o.exports.memory.buffer);
|
|
3192
3401
|
var M = new Uint32Array(w);
|
|
3193
3402
|
return A(M).set(x.subarray(m, m + 4 * w)), p(m - p(0)), M;
|
|
3194
3403
|
}
|
|
3195
3404
|
var i = { LockBorder: 1 };
|
|
3196
3405
|
})();
|
|
3197
3406
|
let Qe = 0;
|
|
3198
|
-
class
|
|
3407
|
+
class Ns {
|
|
3199
3408
|
constructor(e) {
|
|
3200
|
-
if (this.renderer = e.renderer, this.zUpToYUpMatrix = new j.Matrix4(), this.zUpToYUpMatrix.set(1, 0, 0, 0, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1), this.maxCachedItems = 100, this.proxy = e.proxy, e && (this.meshCallback = e.meshCallback, this.pointsCallback = e.pointsCallback, e.maxCachedItems != null && (this.maxCachedItems = e.maxCachedItems)), this.gltfLoader = new
|
|
3409
|
+
if (this.renderer = e.renderer, this.zUpToYUpMatrix = new j.Matrix4(), this.zUpToYUpMatrix.set(1, 0, 0, 0, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1), this.maxCachedItems = 100, this.proxy = e.proxy, e && (this.meshCallback = e.meshCallback, this.pointsCallback = e.pointsCallback, e.maxCachedItems != null && (this.maxCachedItems = e.maxCachedItems)), this.gltfLoader = new hA(), e && e.dracoLoader) this.gltfLoader.setDRACOLoader(e.dracoLoader), this.hasDracoLoader = !0;
|
|
3201
3410
|
else {
|
|
3202
|
-
const t = new
|
|
3411
|
+
const t = new gA();
|
|
3203
3412
|
t.setDecoderPath("https://storage.googleapis.com/ogc-3d-tiles/draco/"), this.gltfLoader.setDRACOLoader(t), this.gltfLoader.hasDracoLoader = !0;
|
|
3204
3413
|
}
|
|
3205
3414
|
if (e && e.ktx2Loader) this.gltfLoader.setKTX2Loader(e.ktx2Loader), this.hasKTX2Loader = !0;
|
|
@@ -3207,7 +3416,7 @@ class ws {
|
|
|
3207
3416
|
const t = new re();
|
|
3208
3417
|
t.setTranscoderPath("https://storage.googleapis.com/ogc-3d-tiles/basis/").detectSupport(e.renderer), this.gltfLoader.setKTX2Loader(t), this.gltfLoader.hasKTX2Loader = !0;
|
|
3209
3418
|
}
|
|
3210
|
-
this.gltfLoader.setMeshoptDecoder(
|
|
3419
|
+
this.gltfLoader.setMeshoptDecoder(RA), this.hasMeshOptDecoder = !0, this.b3dmDecoder = new cA(this.gltfLoader), this.splatsDecoder = new Oi(this.gltfLoader, this.renderer), this.cache = new nA.LinkedHashMap(), this.register = {}, this.ready = [], this.downloads = [], this.nextReady = [], this.nextDownloads = [];
|
|
3211
3420
|
}
|
|
3212
3421
|
update() {
|
|
3213
3422
|
const e = this;
|
|
@@ -3269,7 +3478,7 @@ class ws {
|
|
|
3269
3478
|
}
|
|
3270
3479
|
}
|
|
3271
3480
|
get(e, t, a, A, s, i, n, l, h, b, g) {
|
|
3272
|
-
const f = this, I =
|
|
3481
|
+
const f = this, I = Ja(a), u = new AbortController();
|
|
3273
3482
|
if (e.signal.addEventListener("abort", () => {
|
|
3274
3483
|
f.register[I] && Object.keys(f.register[I]).length != 0 || u.abort("user abort");
|
|
3275
3484
|
}), !(a.includes(".b3dm") || a.includes(".json") || a.includes(".gltf") || a.includes(".glb"))) return void console.error("the 3DTiles cache can only be used to load B3DM, gltf and json data");
|
|
@@ -3278,58 +3487,58 @@ class ws {
|
|
|
3278
3487
|
let p;
|
|
3279
3488
|
a.includes(".b3dm") ? p = () => {
|
|
3280
3489
|
var m;
|
|
3281
|
-
m = f.proxy ? () => fetch(f.proxy, { method: "POST", body: a, signal: u.signal }) : () => fetch(a, { signal: u.signal }), Qe++, m().then((
|
|
3282
|
-
if (!
|
|
3283
|
-
return
|
|
3284
|
-
}).then((
|
|
3285
|
-
f.meshCallback(
|
|
3286
|
-
}, l, h)).then((
|
|
3287
|
-
f.cache.put(I,
|
|
3288
|
-
}).catch((
|
|
3490
|
+
m = f.proxy ? () => fetch(f.proxy, { method: "POST", body: a, signal: u.signal }) : () => fetch(a, { signal: u.signal }), Qe++, m().then((C) => {
|
|
3491
|
+
if (!C.ok) throw console.error("could not load tile with path : " + a), new Error(`couldn't load "${a}". Request failed with status ${C.status} : ${C.statusText}`);
|
|
3492
|
+
return C.arrayBuffer();
|
|
3493
|
+
}).then((C) => this.b3dmDecoder.parseB3DM(C, (E) => {
|
|
3494
|
+
f.meshCallback(E, b);
|
|
3495
|
+
}, l, h)).then((C) => {
|
|
3496
|
+
f.cache.put(I, C), f._checkSize(), this._meshReceived(f.cache, f.register, I, s, i, n, t);
|
|
3497
|
+
}).catch((C) => {
|
|
3289
3498
|
}).finally(() => {
|
|
3290
3499
|
Qe--;
|
|
3291
3500
|
});
|
|
3292
3501
|
} : a.includes(".glb") || a.includes(".gltf") ? p = g ? () => {
|
|
3293
3502
|
var m;
|
|
3294
|
-
m = f.proxy ? () => fetch(f.proxy, { method: "POST", body: a, signal: u.signal }) : () => fetch(a, { signal: u.signal }), Qe++, m().then((
|
|
3295
|
-
if (!
|
|
3296
|
-
return
|
|
3297
|
-
}).then((
|
|
3298
|
-
f.cache.put(I,
|
|
3299
|
-
}).catch((
|
|
3503
|
+
m = f.proxy ? () => fetch(f.proxy, { method: "POST", body: a, signal: u.signal }) : () => fetch(a, { signal: u.signal }), Qe++, m().then((C) => {
|
|
3504
|
+
if (!C.ok) throw console.error("could not load tile with path : " + a), new Error(`couldn't load "${a}". Request failed with status ${C.status} : ${C.statusText}`);
|
|
3505
|
+
return C.arrayBuffer();
|
|
3506
|
+
}).then((C) => this.splatsDecoder.parseSplats(C, l, h, g)).then((C) => {
|
|
3507
|
+
f.cache.put(I, C), f._checkSize(), f._meshReceived(f.cache, f.register, I, s, i, n, t);
|
|
3508
|
+
}).catch((C) => {
|
|
3300
3509
|
}).finally(() => {
|
|
3301
3510
|
Qe--;
|
|
3302
3511
|
});
|
|
3303
3512
|
} : () => {
|
|
3304
3513
|
var m;
|
|
3305
|
-
m = f.proxy ? () => fetch(f.proxy, { method: "POST", body: a, signal: u.signal }) : () => fetch(a, { signal: u.signal }), Qe++, m().then((
|
|
3306
|
-
if (!
|
|
3307
|
-
return
|
|
3308
|
-
}).then(async (
|
|
3309
|
-
await async function(
|
|
3514
|
+
m = f.proxy ? () => fetch(f.proxy, { method: "POST", body: a, signal: u.signal }) : () => fetch(a, { signal: u.signal }), Qe++, m().then((C) => {
|
|
3515
|
+
if (!C.ok) throw console.error("could not load tile with path : " + a), new Error(`couldn't load "${a}". Request failed with status ${C.status} : ${C.statusText}`);
|
|
3516
|
+
return C.arrayBuffer();
|
|
3517
|
+
}).then(async (C) => {
|
|
3518
|
+
await async function(E) {
|
|
3310
3519
|
return new Promise((x) => {
|
|
3311
3520
|
const w = setInterval(() => {
|
|
3312
|
-
|
|
3521
|
+
E.hasDracoLoader && !E.dracoLoader || E.hasKTX2Loader && !E.ktx2Loader || (clearInterval(w), x());
|
|
3313
3522
|
}, 10);
|
|
3314
3523
|
});
|
|
3315
|
-
}(this.gltfLoader), this.gltfLoader.parse(
|
|
3316
|
-
|
|
3524
|
+
}(this.gltfLoader), this.gltfLoader.parse(C, null, (E) => {
|
|
3525
|
+
E.scene.asset = E.asset, l && E.scene.applyMatrix4(this.zUpToYUpMatrix), E.scene.traverse((x) => {
|
|
3317
3526
|
x.isMesh && (h && x.applyMatrix4(this.zUpToYUpMatrix), f.meshCallback && f.meshCallback(x, b)), x.isPoints && f.pointsCallback && f.pointsCallback(x, b);
|
|
3318
|
-
}), f.cache.put(I,
|
|
3527
|
+
}), f.cache.put(I, E.scene), f._checkSize(), f._meshReceived(f.cache, f.register, I, s, i, n, t);
|
|
3319
3528
|
});
|
|
3320
|
-
}).catch((
|
|
3321
|
-
|
|
3529
|
+
}).catch((C) => {
|
|
3530
|
+
C !== "user abort" && C.code;
|
|
3322
3531
|
}).finally(() => {
|
|
3323
3532
|
Qe--;
|
|
3324
3533
|
});
|
|
3325
3534
|
} : a.includes(".json") && (p = () => {
|
|
3326
3535
|
var m;
|
|
3327
|
-
m = f.proxy ? () => fetch(f.proxy, { method: "POST", body: a, signal: u.signal }) : () => fetch(a, { signal: u.signal }), Qe++, m().then((
|
|
3328
|
-
if (!
|
|
3329
|
-
return
|
|
3330
|
-
}).then((
|
|
3331
|
-
f.cache.put(I,
|
|
3332
|
-
}).catch((
|
|
3536
|
+
m = f.proxy ? () => fetch(f.proxy, { method: "POST", body: a, signal: u.signal }) : () => fetch(a, { signal: u.signal }), Qe++, m().then((C) => {
|
|
3537
|
+
if (!C.ok) throw console.error("could not load tile with path : " + a), new Error(`couldn't load "${a}". Request failed with status ${C.status} : ${C.statusText}`);
|
|
3538
|
+
return C.json();
|
|
3539
|
+
}).then((C) => ba(C, a)).then((C) => {
|
|
3540
|
+
f.cache.put(I, C), f._checkSize(), f._meshReceived(f.cache, f.register, I);
|
|
3541
|
+
}).catch((C) => {
|
|
3333
3542
|
}).finally(() => {
|
|
3334
3543
|
Qe--;
|
|
3335
3544
|
});
|
|
@@ -3341,7 +3550,7 @@ class ws {
|
|
|
3341
3550
|
this.maxCachedItems = 0, this._checkSize(), this.maxCachedItems = e;
|
|
3342
3551
|
}
|
|
3343
3552
|
invalidate(e, t) {
|
|
3344
|
-
const a =
|
|
3553
|
+
const a = Ja(e);
|
|
3345
3554
|
this.register[a] && (delete this.register[a][t], this._checkSize());
|
|
3346
3555
|
}
|
|
3347
3556
|
_checkSize() {
|
|
@@ -3358,8 +3567,8 @@ class ws {
|
|
|
3358
3567
|
}
|
|
3359
3568
|
}
|
|
3360
3569
|
}
|
|
3361
|
-
function
|
|
3362
|
-
for (var e =
|
|
3570
|
+
function Ja(o) {
|
|
3571
|
+
for (var e = o.split("/"), t = [], a = 0, A = 0; A < e.length; A++) {
|
|
3363
3572
|
var s = e[A];
|
|
3364
3573
|
s !== "." && s !== "" && s !== ".." ? t[a++] = s : s === ".." && a > 0 && a--;
|
|
3365
3574
|
}
|
|
@@ -3368,53 +3577,53 @@ function Ga(c) {
|
|
|
3368
3577
|
for (A = 0; A < a; A++) i += "/" + t[A];
|
|
3369
3578
|
return i;
|
|
3370
3579
|
}
|
|
3371
|
-
var De, je,
|
|
3372
|
-
function
|
|
3580
|
+
var De, je, MA = { exports: {} }, J = MA.exports = {};
|
|
3581
|
+
function sa() {
|
|
3373
3582
|
throw new Error("setTimeout has not been defined");
|
|
3374
3583
|
}
|
|
3375
|
-
function
|
|
3584
|
+
function ra() {
|
|
3376
3585
|
throw new Error("clearTimeout has not been defined");
|
|
3377
3586
|
}
|
|
3378
|
-
function
|
|
3379
|
-
if (De === setTimeout) return setTimeout(
|
|
3380
|
-
if ((De ===
|
|
3587
|
+
function vA(o) {
|
|
3588
|
+
if (De === setTimeout) return setTimeout(o, 0);
|
|
3589
|
+
if ((De === sa || !De) && setTimeout) return De = setTimeout, setTimeout(o, 0);
|
|
3381
3590
|
try {
|
|
3382
|
-
return De(
|
|
3591
|
+
return De(o, 0);
|
|
3383
3592
|
} catch {
|
|
3384
3593
|
try {
|
|
3385
|
-
return De.call(null,
|
|
3594
|
+
return De.call(null, o, 0);
|
|
3386
3595
|
} catch {
|
|
3387
|
-
return De.call(this,
|
|
3596
|
+
return De.call(this, o, 0);
|
|
3388
3597
|
}
|
|
3389
3598
|
}
|
|
3390
3599
|
}
|
|
3391
3600
|
(function() {
|
|
3392
3601
|
try {
|
|
3393
|
-
De = typeof setTimeout == "function" ? setTimeout :
|
|
3602
|
+
De = typeof setTimeout == "function" ? setTimeout : sa;
|
|
3394
3603
|
} catch {
|
|
3395
|
-
De =
|
|
3604
|
+
De = sa;
|
|
3396
3605
|
}
|
|
3397
3606
|
try {
|
|
3398
|
-
je = typeof clearTimeout == "function" ? clearTimeout :
|
|
3607
|
+
je = typeof clearTimeout == "function" ? clearTimeout : ra;
|
|
3399
3608
|
} catch {
|
|
3400
|
-
je =
|
|
3609
|
+
je = ra;
|
|
3401
3610
|
}
|
|
3402
3611
|
})();
|
|
3403
|
-
var
|
|
3404
|
-
function
|
|
3405
|
-
|
|
3612
|
+
var We, Me = [], at = !1, xt = -1;
|
|
3613
|
+
function _s() {
|
|
3614
|
+
at && We && (at = !1, We.length ? Me = We.concat(Me) : xt = -1, Me.length && TA());
|
|
3406
3615
|
}
|
|
3407
|
-
function
|
|
3408
|
-
if (!
|
|
3409
|
-
var
|
|
3410
|
-
|
|
3616
|
+
function TA() {
|
|
3617
|
+
if (!at) {
|
|
3618
|
+
var o = vA(_s);
|
|
3619
|
+
at = !0;
|
|
3411
3620
|
for (var e = Me.length; e; ) {
|
|
3412
|
-
for (
|
|
3413
|
-
|
|
3621
|
+
for (We = Me, Me = []; ++xt < e; ) We && We[xt].run();
|
|
3622
|
+
xt = -1, e = Me.length;
|
|
3414
3623
|
}
|
|
3415
|
-
|
|
3624
|
+
We = null, at = !1, function(t) {
|
|
3416
3625
|
if (je === clearTimeout) return clearTimeout(t);
|
|
3417
|
-
if ((je ===
|
|
3626
|
+
if ((je === ra || !je) && clearTimeout) return je = clearTimeout, clearTimeout(t);
|
|
3418
3627
|
try {
|
|
3419
3628
|
return je(t);
|
|
3420
3629
|
} catch {
|
|
@@ -3424,38 +3633,38 @@ function xA() {
|
|
|
3424
3633
|
return je.call(this, t);
|
|
3425
3634
|
}
|
|
3426
3635
|
}
|
|
3427
|
-
}(
|
|
3636
|
+
}(o);
|
|
3428
3637
|
}
|
|
3429
3638
|
}
|
|
3430
|
-
function
|
|
3431
|
-
this.fun =
|
|
3639
|
+
function Ka(o, e) {
|
|
3640
|
+
this.fun = o, this.array = e;
|
|
3432
3641
|
}
|
|
3433
3642
|
function ye() {
|
|
3434
3643
|
}
|
|
3435
|
-
J.nextTick = function(
|
|
3644
|
+
J.nextTick = function(o) {
|
|
3436
3645
|
var e = new Array(arguments.length - 1);
|
|
3437
3646
|
if (arguments.length > 1) for (var t = 1; t < arguments.length; t++) e[t - 1] = arguments[t];
|
|
3438
|
-
Me.push(new
|
|
3439
|
-
},
|
|
3647
|
+
Me.push(new Ka(o, e)), Me.length !== 1 || at || vA(TA);
|
|
3648
|
+
}, Ka.prototype.run = function() {
|
|
3440
3649
|
this.fun.apply(null, this.array);
|
|
3441
|
-
}, J.title = "browser", J.browser = !0, J.env = {}, J.argv = [], J.version = "", J.versions = {}, J.on = ye, J.addListener = ye, J.once = ye, J.off = ye, J.removeListener = ye, J.removeAllListeners = ye, J.emit = ye, J.prependListener = ye, J.prependOnceListener = ye, J.listeners = function(
|
|
3650
|
+
}, J.title = "browser", J.browser = !0, J.env = {}, J.argv = [], J.version = "", J.versions = {}, J.on = ye, J.addListener = ye, J.once = ye, J.off = ye, J.removeListener = ye, J.removeAllListeners = ye, J.emit = ye, J.prependListener = ye, J.prependOnceListener = ye, J.listeners = function(o) {
|
|
3442
3651
|
return [];
|
|
3443
|
-
}, J.binding = function(
|
|
3652
|
+
}, J.binding = function(o) {
|
|
3444
3653
|
throw new Error("process.binding is not supported");
|
|
3445
3654
|
}, J.cwd = function() {
|
|
3446
3655
|
return "/";
|
|
3447
|
-
}, J.chdir = function(
|
|
3656
|
+
}, J.chdir = function(o) {
|
|
3448
3657
|
throw new Error("process.chdir is not supported");
|
|
3449
3658
|
}, J.umask = function() {
|
|
3450
3659
|
return 0;
|
|
3451
3660
|
};
|
|
3452
|
-
const
|
|
3453
|
-
function ge(
|
|
3454
|
-
if (typeof
|
|
3661
|
+
const Ps = Dt(MA.exports);
|
|
3662
|
+
function ge(o) {
|
|
3663
|
+
if (typeof o != "string") throw new TypeError("Path must be a string. Received " + JSON.stringify(o));
|
|
3455
3664
|
}
|
|
3456
|
-
function
|
|
3457
|
-
for (var t, a = "", A = 0, s = -1, i = 0, n = 0; n <=
|
|
3458
|
-
if (n <
|
|
3665
|
+
function za(o, e) {
|
|
3666
|
+
for (var t, a = "", A = 0, s = -1, i = 0, n = 0; n <= o.length; ++n) {
|
|
3667
|
+
if (n < o.length) t = o.charCodeAt(n);
|
|
3459
3668
|
else {
|
|
3460
3669
|
if (t === 47) break;
|
|
3461
3670
|
t = 47;
|
|
@@ -3475,70 +3684,70 @@ function Pa(c, e) {
|
|
|
3475
3684
|
}
|
|
3476
3685
|
}
|
|
3477
3686
|
e && (a.length > 0 ? a += "/.." : a = "..", A = 2);
|
|
3478
|
-
} else a.length > 0 ? a += "/" +
|
|
3687
|
+
} else a.length > 0 ? a += "/" + o.slice(s + 1, n) : a = o.slice(s + 1, n), A = n - s - 1;
|
|
3479
3688
|
s = n, i = 0;
|
|
3480
3689
|
} else t === 46 && i !== -1 ? ++i : i = -1;
|
|
3481
3690
|
}
|
|
3482
3691
|
return a;
|
|
3483
3692
|
}
|
|
3484
|
-
var
|
|
3485
|
-
for (var
|
|
3693
|
+
var Va, At = { resolve: function() {
|
|
3694
|
+
for (var o, e = "", t = !1, a = arguments.length - 1; a >= -1 && !t; a--) {
|
|
3486
3695
|
var A;
|
|
3487
|
-
a >= 0 ? A = arguments[a] : (
|
|
3488
|
-
}
|
|
3489
|
-
return e =
|
|
3490
|
-
}, normalize: function(
|
|
3491
|
-
if (ge(
|
|
3492
|
-
var e =
|
|
3493
|
-
return (
|
|
3494
|
-
}, isAbsolute: function(
|
|
3495
|
-
return ge(
|
|
3696
|
+
a >= 0 ? A = arguments[a] : (o === void 0 && (o = Ps.cwd()), A = o), ge(A), A.length !== 0 && (e = A + "/" + e, t = A.charCodeAt(0) === 47);
|
|
3697
|
+
}
|
|
3698
|
+
return e = za(e, !t), t ? e.length > 0 ? "/" + e : "/" : e.length > 0 ? e : ".";
|
|
3699
|
+
}, normalize: function(o) {
|
|
3700
|
+
if (ge(o), o.length === 0) return ".";
|
|
3701
|
+
var e = o.charCodeAt(0) === 47, t = o.charCodeAt(o.length - 1) === 47;
|
|
3702
|
+
return (o = za(o, !e)).length !== 0 || e || (o = "."), o.length > 0 && t && (o += "/"), e ? "/" + o : o;
|
|
3703
|
+
}, isAbsolute: function(o) {
|
|
3704
|
+
return ge(o), o.length > 0 && o.charCodeAt(0) === 47;
|
|
3496
3705
|
}, join: function() {
|
|
3497
3706
|
if (arguments.length === 0) return ".";
|
|
3498
|
-
for (var
|
|
3707
|
+
for (var o, e = 0; e < arguments.length; ++e) {
|
|
3499
3708
|
var t = arguments[e];
|
|
3500
|
-
ge(t), t.length > 0 && (
|
|
3709
|
+
ge(t), t.length > 0 && (o === void 0 ? o = t : o += "/" + t);
|
|
3501
3710
|
}
|
|
3502
|
-
return
|
|
3503
|
-
}, relative: function(
|
|
3504
|
-
if (ge(
|
|
3505
|
-
for (var t = 1; t <
|
|
3506
|
-
for (var a =
|
|
3711
|
+
return o === void 0 ? "." : At.normalize(o);
|
|
3712
|
+
}, relative: function(o, e) {
|
|
3713
|
+
if (ge(o), ge(e), o === e || (o = At.resolve(o)) === (e = At.resolve(e))) return "";
|
|
3714
|
+
for (var t = 1; t < o.length && o.charCodeAt(t) === 47; ++t) ;
|
|
3715
|
+
for (var a = o.length, A = a - t, s = 1; s < e.length && e.charCodeAt(s) === 47; ++s) ;
|
|
3507
3716
|
for (var i = e.length - s, n = A < i ? A : i, l = -1, h = 0; h <= n; ++h) {
|
|
3508
3717
|
if (h === n) {
|
|
3509
3718
|
if (i > n) {
|
|
3510
3719
|
if (e.charCodeAt(s + h) === 47) return e.slice(s + h + 1);
|
|
3511
3720
|
if (h === 0) return e.slice(s + h);
|
|
3512
|
-
} else A > n && (
|
|
3721
|
+
} else A > n && (o.charCodeAt(t + h) === 47 ? l = h : h === 0 && (l = 0));
|
|
3513
3722
|
break;
|
|
3514
3723
|
}
|
|
3515
|
-
var b =
|
|
3724
|
+
var b = o.charCodeAt(t + h);
|
|
3516
3725
|
if (b !== e.charCodeAt(s + h)) break;
|
|
3517
3726
|
b === 47 && (l = h);
|
|
3518
3727
|
}
|
|
3519
3728
|
var g = "";
|
|
3520
|
-
for (h = t + l + 1; h <= a; ++h) h !== a &&
|
|
3729
|
+
for (h = t + l + 1; h <= a; ++h) h !== a && o.charCodeAt(h) !== 47 || (g.length === 0 ? g += ".." : g += "/..");
|
|
3521
3730
|
return g.length > 0 ? g + e.slice(s + l) : (s += l, e.charCodeAt(s) === 47 && ++s, e.slice(s));
|
|
3522
|
-
}, _makeLong: function(
|
|
3523
|
-
return
|
|
3524
|
-
}, dirname: function(
|
|
3525
|
-
if (ge(
|
|
3526
|
-
for (var e =
|
|
3731
|
+
}, _makeLong: function(o) {
|
|
3732
|
+
return o;
|
|
3733
|
+
}, dirname: function(o) {
|
|
3734
|
+
if (ge(o), o.length === 0) return ".";
|
|
3735
|
+
for (var e = o.charCodeAt(0), t = e === 47, a = -1, A = !0, s = o.length - 1; s >= 1; --s) if ((e = o.charCodeAt(s)) === 47) {
|
|
3527
3736
|
if (!A) {
|
|
3528
3737
|
a = s;
|
|
3529
3738
|
break;
|
|
3530
3739
|
}
|
|
3531
3740
|
} else A = !1;
|
|
3532
|
-
return a === -1 ? t ? "/" : "." : t && a === 1 ? "//" :
|
|
3533
|
-
}, basename: function(
|
|
3741
|
+
return a === -1 ? t ? "/" : "." : t && a === 1 ? "//" : o.slice(0, a);
|
|
3742
|
+
}, basename: function(o, e) {
|
|
3534
3743
|
if (e !== void 0 && typeof e != "string") throw new TypeError('"ext" argument must be a string');
|
|
3535
|
-
ge(
|
|
3744
|
+
ge(o);
|
|
3536
3745
|
var t, a = 0, A = -1, s = !0;
|
|
3537
|
-
if (e !== void 0 && e.length > 0 && e.length <=
|
|
3538
|
-
if (e.length ===
|
|
3746
|
+
if (e !== void 0 && e.length > 0 && e.length <= o.length) {
|
|
3747
|
+
if (e.length === o.length && e === o) return "";
|
|
3539
3748
|
var i = e.length - 1, n = -1;
|
|
3540
|
-
for (t =
|
|
3541
|
-
var l =
|
|
3749
|
+
for (t = o.length - 1; t >= 0; --t) {
|
|
3750
|
+
var l = o.charCodeAt(t);
|
|
3542
3751
|
if (l === 47) {
|
|
3543
3752
|
if (!s) {
|
|
3544
3753
|
a = t + 1;
|
|
@@ -3546,47 +3755,47 @@ var _a, it = { resolve: function() {
|
|
|
3546
3755
|
}
|
|
3547
3756
|
} else n === -1 && (s = !1, n = t + 1), i >= 0 && (l === e.charCodeAt(i) ? --i == -1 && (A = t) : (i = -1, A = n));
|
|
3548
3757
|
}
|
|
3549
|
-
return a === A ? A = n : A === -1 && (A =
|
|
3758
|
+
return a === A ? A = n : A === -1 && (A = o.length), o.slice(a, A);
|
|
3550
3759
|
}
|
|
3551
|
-
for (t =
|
|
3760
|
+
for (t = o.length - 1; t >= 0; --t) if (o.charCodeAt(t) === 47) {
|
|
3552
3761
|
if (!s) {
|
|
3553
3762
|
a = t + 1;
|
|
3554
3763
|
break;
|
|
3555
3764
|
}
|
|
3556
3765
|
} else A === -1 && (s = !1, A = t + 1);
|
|
3557
|
-
return A === -1 ? "" :
|
|
3558
|
-
}, extname: function(
|
|
3559
|
-
ge(
|
|
3560
|
-
for (var e = -1, t = 0, a = -1, A = !0, s = 0, i =
|
|
3561
|
-
var n =
|
|
3766
|
+
return A === -1 ? "" : o.slice(a, A);
|
|
3767
|
+
}, extname: function(o) {
|
|
3768
|
+
ge(o);
|
|
3769
|
+
for (var e = -1, t = 0, a = -1, A = !0, s = 0, i = o.length - 1; i >= 0; --i) {
|
|
3770
|
+
var n = o.charCodeAt(i);
|
|
3562
3771
|
if (n !== 47) a === -1 && (A = !1, a = i + 1), n === 46 ? e === -1 ? e = i : s !== 1 && (s = 1) : e !== -1 && (s = -1);
|
|
3563
3772
|
else if (!A) {
|
|
3564
3773
|
t = i + 1;
|
|
3565
3774
|
break;
|
|
3566
3775
|
}
|
|
3567
3776
|
}
|
|
3568
|
-
return e === -1 || a === -1 || s === 0 || s === 1 && e === a - 1 && e === t + 1 ? "" :
|
|
3569
|
-
}, format: function(
|
|
3570
|
-
if (
|
|
3777
|
+
return e === -1 || a === -1 || s === 0 || s === 1 && e === a - 1 && e === t + 1 ? "" : o.slice(e, a);
|
|
3778
|
+
}, format: function(o) {
|
|
3779
|
+
if (o === null || typeof o != "object") throw new TypeError('The "pathObject" argument must be of type Object. Received type ' + typeof o);
|
|
3571
3780
|
return function(e, t) {
|
|
3572
3781
|
var a = t.dir || t.root, A = t.base || (t.name || "") + (t.ext || "");
|
|
3573
3782
|
return a ? a === t.root ? a + A : a + e + A : A;
|
|
3574
|
-
}("/",
|
|
3575
|
-
}, parse: function(
|
|
3576
|
-
ge(
|
|
3783
|
+
}("/", o);
|
|
3784
|
+
}, parse: function(o) {
|
|
3785
|
+
ge(o);
|
|
3577
3786
|
var e = { root: "", dir: "", base: "", ext: "", name: "" };
|
|
3578
|
-
if (
|
|
3579
|
-
var t, a =
|
|
3787
|
+
if (o.length === 0) return e;
|
|
3788
|
+
var t, a = o.charCodeAt(0), A = a === 47;
|
|
3580
3789
|
A ? (e.root = "/", t = 1) : t = 0;
|
|
3581
|
-
for (var s = -1, i = 0, n = -1, l = !0, h =
|
|
3790
|
+
for (var s = -1, i = 0, n = -1, l = !0, h = o.length - 1, b = 0; h >= t; --h) if ((a = o.charCodeAt(h)) !== 47) n === -1 && (l = !1, n = h + 1), a === 46 ? s === -1 ? s = h : b !== 1 && (b = 1) : s !== -1 && (b = -1);
|
|
3582
3791
|
else if (!l) {
|
|
3583
3792
|
i = h + 1;
|
|
3584
3793
|
break;
|
|
3585
3794
|
}
|
|
3586
|
-
return s === -1 || n === -1 || b === 0 || b === 1 && s === n - 1 && s === i + 1 ? n !== -1 && (e.base = e.name = i === 0 && A ?
|
|
3795
|
+
return s === -1 || n === -1 || b === 0 || b === 1 && s === n - 1 && s === i + 1 ? n !== -1 && (e.base = e.name = i === 0 && A ? o.slice(1, n) : o.slice(i, n)) : (i === 0 && A ? (e.name = o.slice(1, s), e.base = o.slice(1, n)) : (e.name = o.slice(i, s), e.base = o.slice(i, n)), e.ext = o.slice(s, n)), i > 0 ? e.dir = o.slice(0, i - 1) : A && (e.dir = "/"), e;
|
|
3587
3796
|
}, sep: "/", delimiter: ":", win32: null, posix: null };
|
|
3588
|
-
|
|
3589
|
-
class
|
|
3797
|
+
At.posix = At, module.exports = At;
|
|
3798
|
+
class Os {
|
|
3590
3799
|
constructor(e) {
|
|
3591
3800
|
Je(this, "_toElementFn");
|
|
3592
3801
|
if (e) {
|
|
@@ -3644,7 +3853,7 @@ class Ds {
|
|
|
3644
3853
|
* @copyright Copyright (c) 2022 Kirk Qi <qilinaus@gmail.com>
|
|
3645
3854
|
* @license MIT License
|
|
3646
3855
|
*/
|
|
3647
|
-
class Ye extends
|
|
3856
|
+
class Ye extends Os {
|
|
3648
3857
|
constructor(t = [], a) {
|
|
3649
3858
|
super(a);
|
|
3650
3859
|
Je(this, "_elements", []);
|
|
@@ -3763,9 +3972,9 @@ class Ye extends Ds {
|
|
|
3763
3972
|
return this.elements[t] = A, !0;
|
|
3764
3973
|
}
|
|
3765
3974
|
}
|
|
3766
|
-
(function(
|
|
3767
|
-
|
|
3768
|
-
})(
|
|
3975
|
+
(function(o) {
|
|
3976
|
+
o[o.VISIT = 0] = "VISIT", o[o.PROCESS = 1] = "PROCESS";
|
|
3977
|
+
})(Va || (Va = {}));
|
|
3769
3978
|
class gt extends Ye {
|
|
3770
3979
|
constructor(e = [], t) {
|
|
3771
3980
|
super(e, t);
|
|
@@ -3806,23 +4015,23 @@ class ft extends gt {
|
|
|
3806
4015
|
return s;
|
|
3807
4016
|
}
|
|
3808
4017
|
}
|
|
3809
|
-
new
|
|
3810
|
-
const
|
|
3811
|
-
|
|
3812
|
-
class
|
|
4018
|
+
new oa(), new K(), new K(), new K(), new K();
|
|
4019
|
+
const Ct = new K(), Hs = new K(), SA = new na();
|
|
4020
|
+
SA.set(1, 0, 0, 0, 0, 1, 0, -1, 0);
|
|
4021
|
+
class qs extends ea {
|
|
3813
4022
|
constructor(e) {
|
|
3814
4023
|
const a = Math.min(Math.ceil(8) * 512, Math.pow(512, 2));
|
|
3815
4024
|
let A = 1 * Math.pow(512, 2);
|
|
3816
4025
|
A = Math.floor(A / a) * a;
|
|
3817
|
-
const s = new Ue(512, 512, 1, { magFilter:
|
|
4026
|
+
const s = new Ue(512, 512, 1, { magFilter: P, minFilter: P, anisotropy: 0, depthBuffer: !1, resolveDepthBuffer: !1 });
|
|
3818
4027
|
e.initRenderTarget(s);
|
|
3819
|
-
const i = new Ue(512, 512, 1, { magFilter:
|
|
4028
|
+
const i = new Ue(512, 512, 1, { magFilter: P, minFilter: P, anisotropy: 0, type: W, depthBuffer: !1, resolveDepthBuffer: !1 });
|
|
3820
4029
|
i.texture.type = W, e.initRenderTarget(i);
|
|
3821
|
-
const n = new Ue(512, 512, 1, { magFilter:
|
|
4030
|
+
const n = new Ue(512, 512, 1, { magFilter: P, minFilter: P, anisotropy: 0, type: W, depthBuffer: !1, resolveDepthBuffer: !1 });
|
|
3822
4031
|
n.texture.type = W, e.initRenderTarget(n);
|
|
3823
|
-
const l = new Ue(512, 512, 1, { magFilter:
|
|
4032
|
+
const l = new Ue(512, 512, 1, { magFilter: P, minFilter: P, anisotropy: 0, type: W, depthBuffer: !1, resolveDepthBuffer: !1 });
|
|
3824
4033
|
l.texture.type = W, e.initRenderTarget(l);
|
|
3825
|
-
const h = new
|
|
4034
|
+
const h = new Mt({ uniforms: { textureSize: { value: 512 }, numSlices: { value: 1 }, cov1Texture: { value: n.texture }, cov2Texture: { value: l.texture }, colorTexture: { value: s.texture }, positionTexture: { value: i.texture }, zUpToYUpMatrix3x3: { value: SA }, sizeMultiplier: { value: 1 }, cropRadius: { value: Number.MAX_VALUE } }, vertexShader: `
|
|
3826
4035
|
precision highp float;
|
|
3827
4036
|
precision highp int;
|
|
3828
4037
|
|
|
@@ -3981,23 +4190,23 @@ void main() {
|
|
|
3981
4190
|
|
|
3982
4191
|
gl_FragColor = vec4(pow(color.xyz,vec3(1.0/2.2)), color.w * pow(alpha, 1.8));
|
|
3983
4192
|
|
|
3984
|
-
}`, transparent: !0, side:
|
|
3985
|
-
b.setIndex([0, 2, 1, 2, 3, 1]), b.setAttribute("position", new
|
|
3986
|
-
const f = new Uint32Array(A), I = new
|
|
3987
|
-
I.needsUpdate = !0, I.setUsage(
|
|
4193
|
+
}`, transparent: !0, side: wt, depthTest: !0, depthWrite: !0, depthFunc: Mi }), b = new Ea(), g = new Float32Array([-0.5, 0.5, 0, 0.5, 0.5, 0, -0.5, -0.5, 0, 0.5, -0.5, 0]);
|
|
4194
|
+
b.setIndex([0, 2, 1, 2, 3, 1]), b.setAttribute("position", new Pe(g, 3));
|
|
4195
|
+
const f = new Uint32Array(A), I = new Zt(f, 1, !1);
|
|
4196
|
+
I.needsUpdate = !0, I.setUsage(Qa), b.setAttribute("order", I), b.instanceCount = 0, super(b, h), this.orderAttribute = I, this.textureSize = 512, this.numTextures = 1, this.batchSize = a, this.maxSplats = A, this.colorRenderTarget = s, this.positionRenderTarget = i, this.cov1RenderTarget = n, this.cov2RenderTarget = l, this.renderer = e, this.sortID = 0, this.freeAddresses = new ft();
|
|
3988
4197
|
for (let m = 0; m < this.maxSplats; m += a) this.freeAddresses.add(m);
|
|
3989
4198
|
this.worker = new Worker(new URL("" + new URL("assets/PointsManager.worker-5fpGpVvf.js", import.meta.url).href, import.meta.url), { type: "module" }), this.sortListeners = [], this.worker.onmessage = (m) => {
|
|
3990
|
-
const
|
|
3991
|
-
if (
|
|
3992
|
-
const
|
|
3993
|
-
|
|
3994
|
-
const M = new Uint32Array(this.maxSplats),
|
|
3995
|
-
|
|
4199
|
+
const C = new Uint32Array(m.data.order);
|
|
4200
|
+
if (C.length > this.orderAttribute.count) {
|
|
4201
|
+
const E = new Ea(), x = new Float32Array([-0.5, 0.5, 0, 0.5, 0.5, 0, -0.5, -0.5, 0, 0.5, -0.5, 0]), w = [0, 2, 1, 2, 3, 1];
|
|
4202
|
+
E.setIndex(w), E.setAttribute("position", new Pe(x, 3));
|
|
4203
|
+
const M = new Uint32Array(this.maxSplats), T = new Zt(M, 1, !1);
|
|
4204
|
+
T.needsUpdate = !0, T.setUsage(Qa), E.setAttribute("order", T), E.instanceCount = 0, this.geometry.dispose(), this.geometry = E, this.orderAttribute = T;
|
|
3996
4205
|
}
|
|
3997
|
-
this.orderAttribute.clearUpdateRanges(), this.orderAttribute.set(
|
|
3998
|
-
for (let
|
|
3999
|
-
this.sortListeners[
|
|
4000
|
-
}, this.cameraPosition = new K(0, 0, 0), this.rotateOnAxis(new K(1, 0, 0), 0.5 * Math.PI), this.frustumCulled = !1, this.copyMaterial2D = new
|
|
4206
|
+
this.orderAttribute.clearUpdateRanges(), this.orderAttribute.set(C), this.orderAttribute.addUpdateRange(0, C.length), this.orderAttribute.needsUpdate = !0, this.geometry.instanceCount = m.data.count, this.geometry.needsUpdate = !0;
|
|
4207
|
+
for (let E = this.sortListeners.length - 1; E >= 0; E--)
|
|
4208
|
+
this.sortListeners[E](m.data.id) && this.sortListeners.splice(E, 1);
|
|
4209
|
+
}, this.cameraPosition = new K(0, 0, 0), this.rotateOnAxis(new K(1, 0, 0), 0.5 * Math.PI), this.frustumCulled = !1, this.copyMaterial2D = new Mt({ uniforms: { sourceTexture: {} }, vertexShader: Ya(), fragmentShader: `
|
|
4001
4210
|
precision highp float;
|
|
4002
4211
|
|
|
4003
4212
|
uniform sampler2D sourceTexture;
|
|
@@ -4006,7 +4215,7 @@ in vec2 vUv;
|
|
|
4006
4215
|
|
|
4007
4216
|
void main() {
|
|
4008
4217
|
gl_FragColor = texture( sourceTexture, vUv );
|
|
4009
|
-
}`, transparent: !1, side:
|
|
4218
|
+
}`, transparent: !1, side: wt, depthTest: !1, depthWrite: !1 }), this.copyMaterial3D = new Mt({ uniforms: { sourceTexture: {}, w: { value: 0 } }, vertexShader: Ya(), fragmentShader: `
|
|
4010
4219
|
precision highp float;
|
|
4011
4220
|
|
|
4012
4221
|
uniform sampler3D sourceTexture;
|
|
@@ -4016,9 +4225,9 @@ in vec2 vUv;
|
|
|
4016
4225
|
|
|
4017
4226
|
void main() {
|
|
4018
4227
|
gl_FragColor = texture( sourceTexture, vec3(vUv, w) );
|
|
4019
|
-
}`, transparent: !1, side:
|
|
4020
|
-
const u = new
|
|
4021
|
-
this.copyQuad = new
|
|
4228
|
+
}`, transparent: !1, side: wt, depthTest: !1, depthWrite: !1 }), this.copyCamera = new iA(-0.5, 0.5, 0.5, -0.5, 0.1, 10), this.copyCamera.position.z = 1, this.copyScene = new vi();
|
|
4229
|
+
const u = new Ti(1, 1);
|
|
4230
|
+
this.copyQuad = new ea(u, this.copyMaterial2D), this.copyScene.add(this.copyQuad), this.copyScene.matrixAutoUpdate = !1, this.copyQuad.matrixAutoUpdate = !1;
|
|
4022
4231
|
const p = this;
|
|
4023
4232
|
document.addEventListener("keyup", function(m) {
|
|
4024
4233
|
m.key === "a" && (p.growTextures(), console.log(p.positionRenderTarget.depth));
|
|
@@ -4060,19 +4269,19 @@ void main() {
|
|
|
4060
4269
|
};
|
|
4061
4270
|
const I = new Float32Array(i.length / n * 3);
|
|
4062
4271
|
for (let p = 0; p < i.length / 3; p++) I[3 * p] = i[p * n + l], I[3 * p + 1] = i[p * n + l + 1], I[3 * p + 2] = i[p * n + l + 2];
|
|
4063
|
-
f = (p, m,
|
|
4064
|
-
const
|
|
4272
|
+
f = (p, m, C) => {
|
|
4273
|
+
const E = C * C;
|
|
4065
4274
|
for (let x = 0; x < I.length; x += 3) {
|
|
4066
|
-
|
|
4067
|
-
const w =
|
|
4068
|
-
w > 0 && p.distanceSqToPoint(
|
|
4275
|
+
Ct.set(I[x], -I[x + 2], I[x + 1]);
|
|
4276
|
+
const w = Hs.copy(Ct).sub(p.origin).dot(p.direction);
|
|
4277
|
+
w > 0 && p.distanceSqToPoint(Ct) < E && m.push({ distance: w, point: Ct.clone(), type: "splat" });
|
|
4069
4278
|
}
|
|
4070
4279
|
}, h > this.freeAddresses.size && this.growTextures();
|
|
4071
4280
|
for (let p = 0; p < h; p++) {
|
|
4072
4281
|
const m = this.freeAddresses.poll();
|
|
4073
4282
|
isNaN(m) && console.log("insuficient texture size to store splats info"), b.push(m), g.push(3 * m);
|
|
4074
|
-
const
|
|
4075
|
-
this.addSplatsBatch(
|
|
4283
|
+
const C = p * this.batchSize;
|
|
4284
|
+
this.addSplatsBatch(C, m, e, t, a, A);
|
|
4076
4285
|
}
|
|
4077
4286
|
s.worker.postMessage({ method: "addBatches", insertionIndexes: g, positions: i.buffer, offset: l, stride: n, batchSize: s.batchSize }, [i.buffer]);
|
|
4078
4287
|
let u = !1;
|
|
@@ -4081,43 +4290,43 @@ void main() {
|
|
|
4081
4290
|
}, show: (p) => {
|
|
4082
4291
|
u == 0 && (u = !0);
|
|
4083
4292
|
const m = s.sortID;
|
|
4084
|
-
s.sortListeners.push((
|
|
4293
|
+
s.sortListeners.push((C) => C >= m && (p(), !0)), s.worker.postMessage({ method: "showBatches", insertionIndexes: g, xyz: [s.cameraPosition.x, s.cameraPosition.z, -s.cameraPosition.y], id: s.sortID++ });
|
|
4085
4294
|
}, remove: () => {
|
|
4086
4295
|
f = void 0, s.worker.postMessage({ method: "removeBatches", insertionIndexes: g, xyz: [s.cameraPosition.x, s.cameraPosition.z, -s.cameraPosition.y], id: s.sortID++ }), b.forEach((p) => s.freeAddresses.add(p));
|
|
4087
4296
|
}, sort: this.sort, raycast: f, isSplatsBatch: !0 };
|
|
4088
4297
|
}
|
|
4089
4298
|
addSplatsBatch(e, t, a, A, s, i) {
|
|
4090
4299
|
const n = new Float32Array(4 * this.batchSize), l = new Uint8Array(4 * this.batchSize), h = new Float32Array(4 * this.batchSize), b = new Float32Array(4 * this.batchSize);
|
|
4091
|
-
for (let
|
|
4092
|
-
const x =
|
|
4300
|
+
for (let E = t; E < t + this.batchSize; E++) {
|
|
4301
|
+
const x = E - t, w = 4 * x, M = e + x;
|
|
4093
4302
|
if (M >= a.count) break;
|
|
4094
4303
|
n[w] = a.getX(M), n[w + 1] = a.getY(M), n[w + 2] = a.getZ(M), Math.floor(255 * A.getX(M)), Math.floor(255 * A.getY(M)), Math.floor(255 * A.getZ(M)), Math.floor(255 * A.getW(M)), l[w] = Math.floor(255 * A.getX(M)), l[w + 1] = Math.floor(255 * A.getY(M)), l[w + 2] = Math.floor(255 * A.getZ(M)), l[w + 3] = Math.floor(255 * A.getW(M)), h[w] = s.getX(M), h[w + 1] = s.getY(M), h[w + 2] = s.getZ(M), b[w] = i.getX(M), b[w + 1] = i.getY(M), b[w + 2] = i.getZ(M);
|
|
4095
4304
|
}
|
|
4096
4305
|
const g = Math.floor(t / Math.pow(this.textureSize, 2)), f = Math.ceil(this.batchSize / this.textureSize), I = [0, t / this.textureSize - g * this.textureSize, this.textureSize];
|
|
4097
4306
|
I.push(I[1] + f);
|
|
4098
|
-
const u = new
|
|
4099
|
-
u.generateMipmaps = !1, u.magFilter =
|
|
4100
|
-
const p = new
|
|
4101
|
-
p.generateMipmaps = !1, p.magFilter =
|
|
4102
|
-
const m = new
|
|
4103
|
-
m.generateMipmaps = !1, m.magFilter =
|
|
4104
|
-
const
|
|
4105
|
-
|
|
4307
|
+
const u = new ct(n, this.textureSize, f, Be, W);
|
|
4308
|
+
u.generateMipmaps = !1, u.magFilter = P, u.minFilter = P, u.anisotropy = 0, u.needsUpdate = !0, this.renderer.initTexture(u), this.renderer.initRenderTarget(this.positionRenderTarget), this.copyTex2D(u, this.positionRenderTarget, I, g), u.dispose();
|
|
4309
|
+
const p = new ct(l, this.textureSize, f, Be, ue);
|
|
4310
|
+
p.generateMipmaps = !1, p.magFilter = P, p.minFilter = P, p.anisotropy = 0, p.needsUpdate = !0, this.renderer.initTexture(p), this.copyTex2D(p, this.colorRenderTarget, I, g), p.dispose();
|
|
4311
|
+
const m = new ct(h, this.textureSize, f, Be, W);
|
|
4312
|
+
m.generateMipmaps = !1, m.magFilter = P, m.minFilter = P, m.anisotropy = 0, m.needsUpdate = !0, this.renderer.initTexture(m), this.copyTex2D(m, this.cov1RenderTarget, I, g), m.dispose();
|
|
4313
|
+
const C = new ct(b, this.textureSize, f, Be, W);
|
|
4314
|
+
C.generateMipmaps = !1, C.magFilter = P, C.minFilter = P, C.anisotropy = 0, C.needsUpdate = !0, this.renderer.initTexture(C), this.copyTex2D(C, this.cov2RenderTarget, I, g), C.dispose();
|
|
4106
4315
|
}
|
|
4107
4316
|
growTextures() {
|
|
4108
4317
|
for (let i = this.maxSplats; i < this.maxSplats + this.textureSize * this.textureSize; i += this.batchSize) this.freeAddresses.add(i);
|
|
4109
4318
|
this.maxSplats += this.textureSize * this.textureSize;
|
|
4110
|
-
const e = this.numTextures + 1, t = new Ue(this.textureSize, this.textureSize, e, { magFilter:
|
|
4319
|
+
const e = this.numTextures + 1, t = new Ue(this.textureSize, this.textureSize, e, { magFilter: P, minFilter: P, anisotropy: 0, depthBuffer: !1, resolveDepthBuffer: !1 });
|
|
4111
4320
|
this.renderer.initRenderTarget(t), this.copyTex3D(this.colorRenderTarget.texture, t, this.numTextures), this.colorRenderTarget.dispose(), this.colorRenderTarget = t, this.material.uniforms.colorTexture.value = this.colorRenderTarget.texture;
|
|
4112
|
-
const a = new Ue(this.textureSize, this.textureSize, e, { magFilter:
|
|
4321
|
+
const a = new Ue(this.textureSize, this.textureSize, e, { magFilter: P, minFilter: P, anisotropy: 0, type: W, depthBuffer: !1, resolveDepthBuffer: !1 });
|
|
4113
4322
|
a.texture.type = W, this.renderer.initRenderTarget(a), this.copyTex3D(this.positionRenderTarget.texture, a, this.numTextures), this.positionRenderTarget.dispose(), this.positionRenderTarget = a, this.material.uniforms.positionTexture.value = this.positionRenderTarget.texture;
|
|
4114
|
-
const A = new Ue(this.textureSize, this.textureSize, e, { magFilter:
|
|
4323
|
+
const A = new Ue(this.textureSize, this.textureSize, e, { magFilter: P, minFilter: P, anisotropy: 0, type: W, depthBuffer: !1, resolveDepthBuffer: !1 });
|
|
4115
4324
|
A.texture.type = W, this.renderer.initRenderTarget(A), this.copyTex3D(this.cov1RenderTarget.texture, A, this.numTextures), this.cov1RenderTarget.dispose(), this.cov1RenderTarget = A, this.material.uniforms.cov1Texture.value = this.cov1RenderTarget.texture;
|
|
4116
|
-
const s = new Ue(this.textureSize, this.textureSize, e, { magFilter:
|
|
4325
|
+
const s = new Ue(this.textureSize, this.textureSize, e, { magFilter: P, minFilter: P, anisotropy: 0, type: W, depthBuffer: !1, resolveDepthBuffer: !1 });
|
|
4117
4326
|
s.texture.type = W, this.renderer.initRenderTarget(s), this.copyTex3D(this.cov2RenderTarget.texture, s, this.numTextures), this.cov2RenderTarget.dispose(), this.cov2RenderTarget = s, this.material.uniforms.cov2Texture.value = this.cov2RenderTarget.texture, this.numTextures = e, this.material.uniforms.numSlices.value = this.numTextures;
|
|
4118
4327
|
}
|
|
4119
4328
|
}
|
|
4120
|
-
function
|
|
4329
|
+
function Ya() {
|
|
4121
4330
|
return `
|
|
4122
4331
|
|
|
4123
4332
|
out vec2 vUv;
|
|
@@ -4130,26 +4339,26 @@ void main() {
|
|
|
4130
4339
|
var fe;
|
|
4131
4340
|
const we = new j.Sphere(new j.Vector3(0, 0, 0), 1), ze = new Re([0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1]);
|
|
4132
4341
|
new j.Box3();
|
|
4133
|
-
const Ne = new j.Vector3(0, 0, 0),
|
|
4342
|
+
const Ne = new j.Vector3(0, 0, 0), $e = new j.Vector3(0, 0, 0), Js = new j.Vector3(0, 1, 0), Et = new j.Ray(), Qt = new j.Matrix4();
|
|
4134
4343
|
new j.Matrix4(), new j.Frustum();
|
|
4135
|
-
const
|
|
4136
|
-
function
|
|
4137
|
-
var
|
|
4138
|
-
for (let e in Ie) Ie.hasOwnProperty(e) && Ie[e] > 0 &&
|
|
4139
|
-
return
|
|
4344
|
+
const zt = new j.Vector3(), yt = [], Wa = new j.Quaternion(), Ie = {};
|
|
4345
|
+
function Ks() {
|
|
4346
|
+
var o = [];
|
|
4347
|
+
for (let e in Ie) Ie.hasOwnProperty(e) && Ie[e] > 0 && o.push(e);
|
|
4348
|
+
return o;
|
|
4140
4349
|
}
|
|
4141
|
-
class
|
|
4350
|
+
class FA extends j.Object3D {
|
|
4142
4351
|
constructor(e) {
|
|
4143
4352
|
super();
|
|
4144
4353
|
const t = this;
|
|
4145
|
-
if (t.splatsMesh = e.splatsMesh, this.contentURL = [], e.domWidth && e.domHeight ? this.rendererSize = new j.Vector2(e.domWidth, e.domHeight) : this.rendererSize = new j.Vector2(1e3, 1e3), this.loadingStrategy = e.loadingStrategy ? e.loadingStrategy.toUpperCase() : "INCREMENTAL", this.distanceBias = Math.max(1e-4, e.distanceBias ? e.distanceBias : 1), this.proxy = e.proxy, this.drawBoundingVolume = !!e.drawBoundingVolume && e.drawBoundingVolume, this.displayErrors = e.displayErrors, this.displayCopyright = e.displayCopyright, e.queryParams && (this.queryParams = { ...e.queryParams }), this.uuid =
|
|
4354
|
+
if (t.splatsMesh = e.splatsMesh, this.contentURL = [], e.domWidth && e.domHeight ? this.rendererSize = new j.Vector2(e.domWidth, e.domHeight) : this.rendererSize = new j.Vector2(1e3, 1e3), this.loadingStrategy = e.loadingStrategy ? e.loadingStrategy.toUpperCase() : "INCREMENTAL", this.distanceBias = Math.max(1e-4, e.distanceBias ? e.distanceBias : 1), this.proxy = e.proxy, this.drawBoundingVolume = !!e.drawBoundingVolume && e.drawBoundingVolume, this.displayErrors = e.displayErrors, this.displayCopyright = e.displayCopyright, e.queryParams && (this.queryParams = { ...e.queryParams }), this.uuid = dA(), e.tileLoader) this.tileLoader = e.tileLoader;
|
|
4146
4355
|
else {
|
|
4147
4356
|
const s = {};
|
|
4148
4357
|
s.meshCallback = e.meshCallback ? e.meshCallback : (i, n) => {
|
|
4149
4358
|
i.material.wireframe = !1, i.material.side = j.DoubleSide;
|
|
4150
4359
|
}, s.pointsCallback = e.pointsCallback ? e.pointsCallback : (i, n) => {
|
|
4151
4360
|
i.material.size = Math.pow(n, 0.33), i.material.sizeAttenuation = !0;
|
|
4152
|
-
}, s.proxy = this.proxy, s.renderer = e.renderer, s.dracoLoader = e.dracoLoader, s.ktx2Loader = e.ktx2Loader, this.tileLoader = new
|
|
4361
|
+
}, s.proxy = this.proxy, s.renderer = e.renderer, s.dracoLoader = e.dracoLoader, s.ktx2Loader = e.ktx2Loader, this.tileLoader = new Ns(s), this.update = (i) => {
|
|
4153
4362
|
this.update(i), this.tileLoader.update();
|
|
4154
4363
|
};
|
|
4155
4364
|
}
|
|
@@ -4163,11 +4372,11 @@ class DA extends j.Object3D {
|
|
|
4163
4372
|
}
|
|
4164
4373
|
(t.proxy ? () => fetch(t.proxy, { method: "POST", body: a, signal: t.abortController.signal }) : () => fetch(a, { signal: t.abortController.signal }))().then((s) => {
|
|
4165
4374
|
if (!s.ok) throw new Error(`couldn't load "${e.url}". Request failed with status ${s.status} : ${s.statusText}`);
|
|
4166
|
-
s.json().then((i) =>
|
|
4375
|
+
s.json().then((i) => ba(i, a)).then((i) => {
|
|
4167
4376
|
t._setup({ rootPath: (void 0)(e.url), json: i });
|
|
4168
4377
|
});
|
|
4169
4378
|
}).catch((s) => {
|
|
4170
|
-
t.displayErrors &&
|
|
4379
|
+
t.displayErrors && Xa(s);
|
|
4171
4380
|
});
|
|
4172
4381
|
}
|
|
4173
4382
|
}
|
|
@@ -4189,14 +4398,14 @@ class DA extends j.Object3D {
|
|
|
4189
4398
|
}
|
|
4190
4399
|
async _setup(e) {
|
|
4191
4400
|
const t = this;
|
|
4192
|
-
if (e.json.extensionsRequired && e.json.extensionsRequired.includes("JDULTRA_gaussian_splats") && (t.splatsMesh = new
|
|
4401
|
+
if (e.json.extensionsRequired && e.json.extensionsRequired.includes("JDULTRA_gaussian_splats") && (t.splatsMesh = new qs(t.tileLoader.renderer), this.splatsMesh.setSplatsCropRadius(this.splatsCropRadius), this.splatsMesh.setSplatsSizeMultiplier(this.splatsSizeMultiplier), t.add(t.splatsMesh)), e.json.root ? (t.json = e.json.root, t.json.refine || (t.json.refine = e.json.refine), t.json.geometricError || (t.json.geometricError = e.json.geometricError), t.json.transform || (t.json.transform = e.json.transform), t.json.boundingVolume || (t.json.boundingVolume = e.json.boundingVolume)) : t.json = e.json, t.json.children || (t.json.getChildren ? t.json.children = await t.json.getChildren() : t.json.children = []), t.rootPath = e.json.rootPath ? e.json.rootPath : e.rootPath, t.json.refine ? t.refine = t.json.refine : t.refine = e.parentRefine, t.json.geometricError ? t.geometricError = t.json.geometricError : t.geometricError = e.parentGeometricError, t.json.transform) {
|
|
4193
4402
|
let A = new j.Matrix4();
|
|
4194
4403
|
A.elements = t.json.transform, t.applyMatrix4(A);
|
|
4195
4404
|
}
|
|
4196
4405
|
if (t.json.boundingVolume) if (t.json.boundingVolume.box) t.boundingVolume = new Re(t.json.boundingVolume.box);
|
|
4197
4406
|
else if (t.json.boundingVolume.region) {
|
|
4198
4407
|
const A = t.json.boundingVolume.region;
|
|
4199
|
-
t._transformWGS84ToCartesian(A[0], A[1], A[4], Ne), t._transformWGS84ToCartesian(A[2], A[3], A[5],
|
|
4408
|
+
t._transformWGS84ToCartesian(A[0], A[1], A[4], Ne), t._transformWGS84ToCartesian(A[2], A[3], A[5], $e), Ne.lerp($e, 0.5), t.boundingVolume = new j.Sphere(new j.Vector3(Ne.x, Ne.y, Ne.z), Ne.distanceTo($e));
|
|
4200
4409
|
} else if (t.json.boundingVolume.sphere) {
|
|
4201
4410
|
const A = t.json.boundingVolume.sphere;
|
|
4202
4411
|
t.boundingVolume = new j.Sphere(new j.Vector3(A[0], A[1], A[2]), A[3]);
|
|
@@ -4205,7 +4414,7 @@ class DA extends j.Object3D {
|
|
|
4205
4414
|
function a(A) {
|
|
4206
4415
|
A.uri && A.uri.includes("json") || A.url && A.url.includes("json") ? t.hasUnloadedJSONContent++ : t.hasMeshContent++;
|
|
4207
4416
|
}
|
|
4208
|
-
if (t.json.content ? (a(t.json.content), t.hasMeshContent == 0 && (t.level = Math.max(0, t.parentTile ? t.parentTile.level + 0.01 : 0)), t.loadingStrategy === "IMMEDIATE" ? t._load(!0, !1) : t._load()) : t.json.contents && (t.json.contents.forEach((A) => a(A)), t.hasMeshContent == 0 && (t.level = Math.max(0, t.parentTile ? t.parentTile.level + 0.01 : 0)), t.loadingStrategy === "IMMEDIATE" ? t._load(!0, !1) : t._load()), t.centerModel && (
|
|
4417
|
+
if (t.json.content ? (a(t.json.content), t.hasMeshContent == 0 && (t.level = Math.max(0, t.parentTile ? t.parentTile.level + 0.01 : 0)), t.loadingStrategy === "IMMEDIATE" ? t._load(!0, !1) : t._load()) : t.json.contents && (t.json.contents.forEach((A) => a(A)), t.hasMeshContent == 0 && (t.level = Math.max(0, t.parentTile ? t.parentTile.level + 0.01 : 0)), t.loadingStrategy === "IMMEDIATE" ? t._load(!0, !1) : t._load()), t.centerModel && ($e.copy(t.boundingVolume.center), this.json.boundingVolume.region && (this._transformWGS84ToCartesian(0.5 * (this.json.boundingVolume.region[0] + this.json.boundingVolume.region[2]), 0.5 * (this.json.boundingVolume.region[1] + this.json.boundingVolume.region[3]), 0.5 * (this.json.boundingVolume.region[4] + this.json.boundingVolume.region[5]), Ne), Wa.setFromUnitVectors(Ne.normalize(), Js.normalize()), t.applyQuaternion(Wa)), $e.applyMatrix4(t.matrix), t.position.sub($e), t.updateMatrices()), e.onLoadCallback && t.onLoadCallback(t), t.isSetup = !0, t.level > 0 && t.drawBoundingVolume && (t.bbox && console.log("double setup"), this.boundingVolume.aabb)) {
|
|
4209
4418
|
let A = this.boundingVolume.aabb.clone();
|
|
4210
4419
|
A.applyMatrix4(this.matrixWorld), t.bbox = new j.Box3Helper(A, new j.Color(Math.random(), Math.random(), Math.random())), t.add(t.bbox), t.bbox.material.visible = !1;
|
|
4211
4420
|
}
|
|
@@ -4251,7 +4460,7 @@ class DA extends j.Object3D {
|
|
|
4251
4460
|
a.tileLoader.get(a.abortController, a.uuid, h, (f) => {
|
|
4252
4461
|
a.deleted || (f.asset && f.asset.copyright && (f.asset.copyright.split(";").forEach((I) => {
|
|
4253
4462
|
Ie[I] ? Ie[I]++ : Ie[I] = 1;
|
|
4254
|
-
}), a.displayCopyright &&
|
|
4463
|
+
}), a.displayCopyright && Vt()), a.meshContent.push(f), a.splatsMesh || (f.traverse((I) => {
|
|
4255
4464
|
if ((I.isMesh || I.isPoints) && I.layers.disable(0), I.isMesh && a.occlusionCullingService) {
|
|
4256
4465
|
const u = I.geometry.attributes.position, p = [];
|
|
4257
4466
|
for (let m = 0; m < u.count; m++) p.push(a.color.r, a.color.g, a.color.b);
|
|
@@ -4263,7 +4472,7 @@ class DA extends j.Object3D {
|
|
|
4263
4472
|
return (a.metric && a.metric < 0 || a.deleted) && (f = 2), a.parentTile ? a.parentTile._calculateDistanceToCamera(a.cameraOnLoad) * f * a.level : a._calculateDistanceToCamera(a.cameraOnLoad) * f * a.level;
|
|
4264
4473
|
} : () => 0, () => a._getSiblings(), a.level, !a.json.boundingVolume.region, !!a.json.boundingVolume.region, a.geometricError, a.splatsMesh);
|
|
4265
4474
|
} catch (f) {
|
|
4266
|
-
a.displayErrors &&
|
|
4475
|
+
a.displayErrors && Xa(f);
|
|
4267
4476
|
}
|
|
4268
4477
|
} else n && h.includes(".json") && (a.jsonRequested = h, a.tileLoader.get(a.abortController, a.uuid, h, async (f) => {
|
|
4269
4478
|
a.deleted || (f.rootPath = (void 0)(h), a.json.children.push(f), i == null ? delete a.json.content : a.json.contents.splice(i, 1), a.hasUnloadedJSONContent--);
|
|
@@ -4275,7 +4484,7 @@ class DA extends j.Object3D {
|
|
|
4275
4484
|
e.meshContent.forEach((t) => {
|
|
4276
4485
|
t && t.asset && t.asset.copyright && (t.asset.copyright.split(";").forEach((a) => {
|
|
4277
4486
|
Ie[a] && Ie[a]--;
|
|
4278
|
-
}), e.displayCopyright &&
|
|
4487
|
+
}), e.displayCopyright && Vt());
|
|
4279
4488
|
}), e.meshContent = [], e.bbox && e.bbox.dispose(), e.childrenTiles.forEach((t) => t.dispose()), e.deleted = !0, e.splatsMesh && (e.meshContent.forEach((t) => t.hide()), e.parentTile || e.splatsMesh.dispose()), e.contentURL && (e.contentURL.forEach((t) => {
|
|
4280
4489
|
e.tileLoader.invalidate(t, e.uuid);
|
|
4281
4490
|
}), e.contentURL = []), e.abortController && e.abortController.abort("tile not needed"), this.parent = null, this.dispatchEvent({ type: "removed" });
|
|
@@ -4288,7 +4497,7 @@ class DA extends j.Object3D {
|
|
|
4288
4497
|
const a = e.meshContent[t];
|
|
4289
4498
|
a && a.asset && a.asset.copyright && (a.asset.copyright.split(";").forEach((A) => {
|
|
4290
4499
|
Ie[A] && Ie[A]--;
|
|
4291
|
-
}), e.displayCopyright &&
|
|
4500
|
+
}), e.displayCopyright && Vt()), e.remove(a);
|
|
4292
4501
|
}
|
|
4293
4502
|
e.splatsMesh && e.meshContent.forEach((t) => t.hide()), e.meshContent = [], e.contentURL.forEach((t) => {
|
|
4294
4503
|
e.tileLoader.invalidate(t, e.uuid);
|
|
@@ -4303,17 +4512,17 @@ class DA extends j.Object3D {
|
|
|
4303
4512
|
}
|
|
4304
4513
|
raycast(e, t) {
|
|
4305
4514
|
if (this.splatsMesh) {
|
|
4306
|
-
|
|
4515
|
+
Et.copy(e.ray), Qt.copy(this.matrixWorld).invert(), Et.applyMatrix4(Qt);
|
|
4307
4516
|
let a = !1;
|
|
4308
|
-
if (this.boundingVolume instanceof Re) a = this.boundingVolume.intersectsRay(
|
|
4517
|
+
if (this.boundingVolume instanceof Re) a = this.boundingVolume.intersectsRay(Et);
|
|
4309
4518
|
else {
|
|
4310
4519
|
if (!(this.boundingVolume instanceof j.Sphere)) return !1;
|
|
4311
4520
|
a = ray.intersectsSphere(this.boundingVolume);
|
|
4312
4521
|
}
|
|
4313
|
-
return a && this.materialVisibility && this.splatsReady && (
|
|
4314
|
-
A.isSplatsBatch && (A.raycast(
|
|
4522
|
+
return a && this.materialVisibility && this.splatsReady && (yt.length = 0, this.meshContent.forEach((A) => {
|
|
4523
|
+
A.isSplatsBatch && (A.raycast(Et, yt, e.params.Points.threshold), yt.forEach((s) => {
|
|
4315
4524
|
s.point.applyMatrix4(this.matrixWorld);
|
|
4316
|
-
}), t.push(...
|
|
4525
|
+
}), t.push(...yt));
|
|
4317
4526
|
})), a;
|
|
4318
4527
|
}
|
|
4319
4528
|
return super.raycast(e, t);
|
|
@@ -4322,7 +4531,7 @@ class DA extends j.Object3D {
|
|
|
4322
4531
|
const t = new j.Frustum();
|
|
4323
4532
|
t.setFromProjectionMatrix(new j.Matrix4().multiplyMatrices(e.projectionMatrix, e.matrixWorldInverse));
|
|
4324
4533
|
let a = [0], A = [0], s = [0], i = [0];
|
|
4325
|
-
return this.refine == "REPLACE" ? this.loadingStrategy === "IMMEDIATE" ? (this._updateImmediate(e, t), this._statsImmediate(s, a, i, A)) : (this._update(e, t), this._stats(s, a, i, A)) : (this._update(e, t), this._stats(s, a, i, A)), a > 0 && (i[0] /= a[0]), this.splatsMesh && (
|
|
4534
|
+
return this.refine == "REPLACE" ? this.loadingStrategy === "IMMEDIATE" ? (this._updateImmediate(e, t), this._statsImmediate(s, a, i, A)) : (this._update(e, t), this._stats(s, a, i, A)) : (this._update(e, t), this._stats(s, a, i, A)), a > 0 && (i[0] /= a[0]), this.splatsMesh && (zt.copy(e.position), Qt.copy(this.matrixWorld).invert(), zt.applyMatrix4(Qt), this.splatsMesh.sort(zt)), { numTilesLoaded: a[0], numTilesRendered: A[0], maxLOD: s[0], percentageLoaded: i[0] };
|
|
4326
4535
|
}
|
|
4327
4536
|
_updateImmediate(e, t) {
|
|
4328
4537
|
this._computeMetricRecursive(e, t), this._updateNodeVisibilityImmediate(), this._expandTreeImmediate(e), this.shouldBeVisible = this.metric > 0 || !!this.loadOutsideView, this._shouldBeVisibleUpdateImmediate(), this._trimTreeImmediate(), this._loadMeshImmediate();
|
|
@@ -4440,7 +4649,7 @@ class DA extends j.Object3D {
|
|
|
4440
4649
|
const t = this;
|
|
4441
4650
|
for (let a = t.json.children.length - 1; a >= 0; a--) t.json.children[a].root || t.json.children[a].children || t.json.children[a].getChildren || t.json.children[a].content || t.json.children[a].contents || t.json.children.splice(a, 1);
|
|
4442
4651
|
t.json.children.forEach((a) => {
|
|
4443
|
-
let A = new
|
|
4652
|
+
let A = new FA({ parentTile: t, queryParams: t.queryParams, parentGeometricError: t.geometricError, parentBoundingVolume: t.boundingVolume, parentRefine: t.refine, json: a, rootPath: t.rootPath, geometricErrorMultiplier: t.geometricErrorMultiplier, loadOutsideView: t.loadOutsideView, level: Math.floor(t.level) + 1, tileLoader: t.tileLoader, cameraOnLoad: e, occlusionCullingService: t.occlusionCullingService, renderer: t.renderer, static: t.static, centerModel: !1, displayErrors: t.displayErrors, displayCopyright: t.displayCopyright, distanceBias: t.distanceBias, loadingStrategy: t.loadingStrategy, drawBoundingVolume: t.drawBoundingVolume, splatsMesh: t.splatsMesh });
|
|
4444
4653
|
t.childrenTiles.push(A), t.add(A);
|
|
4445
4654
|
}), t.updateMatrices(!0);
|
|
4446
4655
|
}
|
|
@@ -4537,26 +4746,26 @@ class DA extends j.Object3D {
|
|
|
4537
4746
|
A.set(b, g, f);
|
|
4538
4747
|
}
|
|
4539
4748
|
}
|
|
4540
|
-
function
|
|
4749
|
+
function Xa(o) {
|
|
4541
4750
|
var e = document.createElement("div");
|
|
4542
|
-
e.textContent =
|
|
4751
|
+
e.textContent = o, e.style.position = "fixed", e.style.top = "10px", e.style.left = "50%", e.style.transform = "translateX(-50%)", e.style.padding = "10px", e.style.backgroundColor = "#ff8800", e.style.color = "#ffffff", e.style.zIndex = "9999", document.body.appendChild(e), setTimeout(function() {
|
|
4543
4752
|
e.remove();
|
|
4544
4753
|
}, 8e3);
|
|
4545
4754
|
}
|
|
4546
|
-
function
|
|
4755
|
+
function Vt() {
|
|
4547
4756
|
fe || ((fe = document.createElement("div")).style.position = "fixed", fe.style.bottom = "20px", fe.style.left = "20px", fe.style.color = "white", fe.style.textShadow = "2px 2px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000", fe.style.padding = "10px", fe.style.backgroundColor = "rgba(0, 0, 0, 0.1)", document.body.appendChild(fe));
|
|
4548
|
-
const
|
|
4757
|
+
const o = Ks();
|
|
4549
4758
|
let e = "";
|
|
4550
|
-
|
|
4759
|
+
o.forEach((t) => {
|
|
4551
4760
|
e += t + ", ";
|
|
4552
4761
|
}), e = e.slice(0, -2), fe.textContent = e;
|
|
4553
4762
|
}
|
|
4554
|
-
const se = new j.Sphere(new j.Vector3(0, 0, 0), 1),
|
|
4555
|
-
class
|
|
4763
|
+
const se = new j.Sphere(new j.Vector3(0, 0, 0), 1), _e = new j.Vector3(0, 0, 0), Yt = new j.Vector3(0, 0, 0), zs = new j.Vector3(0, 1, 0), Wt = new j.Vector2(), Za = new j.Quaternion(), $a = new j.Matrix4();
|
|
4764
|
+
class ga extends j.Object3D {
|
|
4556
4765
|
constructor(e) {
|
|
4557
4766
|
super();
|
|
4558
4767
|
const t = this;
|
|
4559
|
-
if (e.queryParams && (this.queryParams = { ...e.queryParams }), this.uuid =
|
|
4768
|
+
if (e.queryParams && (this.queryParams = { ...e.queryParams }), this.uuid = dA(), e.tileLoader ? this.tileLoader = e.tileLoader : console.error("an instanced tileset must be provided an InstancedTilesetLoader"), this.master = e.master, this.loadOutsideView = e.loadOutsideView, this.cameraOnLoad = e.cameraOnLoad, this.parentTile = e.parentTile, this.distanceBias = Math.max(1e-4, e.distanceBias ? e.distanceBias : 1), this.childrenTiles = [], this.jsonChildren = [], this.meshContent = /* @__PURE__ */ new Set(), this.static = e.static, this.static && (this.matrixAutoUpdate = !1, this.matrixWorldAutoUpdate = !1), this.tileContent, this.refinement, this.rootPath, this.geometricError, this.boundingVolume, this.json, this.materialVisibility = !1, this.inFrustum = !0, this.level = e.level ? e.level : 0, this.hasMeshContent = 0, this.hasUnloadedJSONContent = 0, this.centerModel = e.centerModel, this.deleted = !1, this.abortController = new AbortController(), e.json) this.rootPath = e.json.rootPath ? e.json.rootPath : e.rootPath, e.json.children && (this.jsonChildren = e.json.children), t.setup(e);
|
|
4560
4769
|
else if (e.url) {
|
|
4561
4770
|
this.loadJson = (s, i) => {
|
|
4562
4771
|
const n = (void 0)(i);
|
|
@@ -4578,7 +4787,7 @@ class da extends j.Object3D {
|
|
|
4578
4787
|
if (t.json.transform && !t.centerModel && (a.elements = t.json.transform), t.applyMatrix4(a), t.parentTile && t.parentTile.matrix && (t.matrix.premultiply(t.parentTile.matrix), t.matrix.decompose(t.position, t.quaternion, t.scale)), t.matrixWorldNeedsUpdate = !0, t.updateWorldMatrix(!0, !0), t.json.boundingVolume) if (t.json.boundingVolume.box) t.boundingVolume = new Re(t.json.boundingVolume.box);
|
|
4579
4788
|
else if (t.json.boundingVolume.region) {
|
|
4580
4789
|
const s = t.json.boundingVolume.region;
|
|
4581
|
-
t.transformWGS84ToCartesian(s[0], s[1], s[4],
|
|
4790
|
+
t.transformWGS84ToCartesian(s[0], s[1], s[4], _e), t.transformWGS84ToCartesian(s[2], s[3], s[5], Yt), _e.lerp(Yt, 0.5), t.boundingVolume = new j.Sphere(new j.Vector3(_e.x, _e.y, _e.z), _e.distanceTo(Yt));
|
|
4582
4791
|
} else if (t.json.boundingVolume.sphere) {
|
|
4583
4792
|
const s = t.json.boundingVolume.sphere;
|
|
4584
4793
|
t.boundingVolume = new j.Sphere(new j.Vector3(s[0], s[1], s[2]), s[3]);
|
|
@@ -4589,7 +4798,7 @@ class da extends j.Object3D {
|
|
|
4589
4798
|
}
|
|
4590
4799
|
if (t.json.content ? (A(t.json.content), t.load()) : t.json.contents && (t.json.contents.forEach((s) => A(s)), t.load()), t.centerModel) {
|
|
4591
4800
|
const s = new j.Sphere();
|
|
4592
|
-
t.boundingVolume instanceof Re ? s.copy(t.boundingVolume.sphere) : t.boundingVolume instanceof j.Sphere && s.copy(t.boundingVolume), this.json.boundingVolume.region && (t.transformWGS84ToCartesian(0.5 * (t.json.boundingVolume.region[0] + t.json.boundingVolume.region[2]), 0.5 * (t.json.boundingVolume.region[1] + t.json.boundingVolume.region[3]), 0.5 * (t.json.boundingVolume.region[4] + t.json.boundingVolume.region[5]),
|
|
4801
|
+
t.boundingVolume instanceof Re ? s.copy(t.boundingVolume.sphere) : t.boundingVolume instanceof j.Sphere && s.copy(t.boundingVolume), this.json.boundingVolume.region && (t.transformWGS84ToCartesian(0.5 * (t.json.boundingVolume.region[0] + t.json.boundingVolume.region[2]), 0.5 * (t.json.boundingVolume.region[1] + t.json.boundingVolume.region[3]), 0.5 * (t.json.boundingVolume.region[4] + t.json.boundingVolume.region[5]), _e), Za.setFromUnitVectors(_e.normalize(), zs.normalize()), t.master.applyQuaternion(Za), t.master.updateWorldMatrix(!1, !1)), $a.makeTranslation(-s.center.x * t.scale.x, -s.center.y * t.scale.y, -s.center.z * t.scale.z), t.master.matrix.multiply($a), t.master.matrix.decompose(t.master.position, t.master.quaternion, t.master.scale);
|
|
4593
4802
|
}
|
|
4594
4803
|
t.isSetup = !0, e.onLoadCallback && e.onLoadCallback(t);
|
|
4595
4804
|
}
|
|
@@ -4659,7 +4868,7 @@ class da extends j.Object3D {
|
|
|
4659
4868
|
a.isSetup && (a.materialVisibility, a.boundingVolume && a.geometricError && (a.metric = a.calculateUpdateMetric(e, t)), a.childrenTiles.forEach((s) => s._update(e, t)), A(a.metric), function(s) {
|
|
4660
4869
|
s < 0 && a.hasMeshContent || (!a.hasMeshContent && a.rootPath || s < a.master.geometricErrorMultiplier * a.geometricError && a.meshContent.size > 0) && a.json && a.jsonChildren && a.childrenTiles.length != a.jsonChildren.length && a.jsonChildren.forEach((i) => {
|
|
4661
4870
|
if (!(i.root || i.children || i.getChildren || i.content || i.contents)) return;
|
|
4662
|
-
let n = new
|
|
4871
|
+
let n = new ga({ parentTile: a, queryParams: a.queryParams, parentGeometricError: a.geometricError, parentBoundingVolume: a.boundingVolume, parentRefinement: a.refinement, json: i, rootPath: a.rootPath, loadOutsideView: a.loadOutsideView, level: a.level + 1, tileLoader: a.tileLoader, cameraOnLoad: e, master: a.master, centerModel: !1 });
|
|
4663
4872
|
a.childrenTiles.push(n);
|
|
4664
4873
|
});
|
|
4665
4874
|
}(a.metric), function(s) {
|
|
@@ -4705,9 +4914,9 @@ class da extends j.Object3D {
|
|
|
4705
4914
|
let a = Math.max(0, e.position.distanceTo(se.center) - se.radius);
|
|
4706
4915
|
if (a = Math.pow(a, this.distanceBias), a == 0) return 0;
|
|
4707
4916
|
const A = this.matrixWorld.getMaxScaleOnAxis();
|
|
4708
|
-
this.master._renderSize(
|
|
4709
|
-
let s =
|
|
4710
|
-
e.aspect < 1 && (i *= e.aspect, s =
|
|
4917
|
+
this.master._renderSize(Wt);
|
|
4918
|
+
let s = Wt.y, i = e.fov;
|
|
4919
|
+
e.aspect < 1 && (i *= e.aspect, s = Wt.x);
|
|
4711
4920
|
let n = 2 * Math.tan(0.5 * i * 0.017453292519943295) * a;
|
|
4712
4921
|
return 16 * window.devicePixelRatio * n / (s * A);
|
|
4713
4922
|
}
|
|
@@ -4734,9 +4943,9 @@ class da extends j.Object3D {
|
|
|
4734
4943
|
A.set(b, g, f);
|
|
4735
4944
|
}
|
|
4736
4945
|
}
|
|
4737
|
-
class
|
|
4946
|
+
class er extends j.Object3D {
|
|
4738
4947
|
constructor(e) {
|
|
4739
|
-
super(), e.master = this, e.domWidth && e.domHeight ? this.rendererSize = new j.Vector2(e.domWidth, e.domHeight) : this.rendererSize = new j.Vector2(1e3, 1e3), this.renderer = e.renderer, this.distanceBias = Math.max(1e-4, e.distanceBias ? e.distanceBias : 1), this.geometricErrorMultiplier = e.geometricErrorMultiplier ? e.geometricErrorMultiplier : 1, this.tileset = new
|
|
4948
|
+
super(), e.master = this, e.domWidth && e.domHeight ? this.rendererSize = new j.Vector2(e.domWidth, e.domHeight) : this.rendererSize = new j.Vector2(1e3, 1e3), this.renderer = e.renderer, this.distanceBias = Math.max(1e-4, e.distanceBias ? e.distanceBias : 1), this.geometricErrorMultiplier = e.geometricErrorMultiplier ? e.geometricErrorMultiplier : 1, this.tileset = new ga(e), e.static && (this.matrixAutoUpdate = !1), this.tileLoader = e.tileLoader;
|
|
4740
4949
|
}
|
|
4741
4950
|
_renderSize(e) {
|
|
4742
4951
|
this.renderer ? this.renderer.getDrawingBufferSize(e) : e.copy(this.rendererSize);
|
|
@@ -4755,7 +4964,7 @@ class _s extends j.Object3D {
|
|
|
4755
4964
|
this.geometricErrorMultiplier = e || 1;
|
|
4756
4965
|
}
|
|
4757
4966
|
}
|
|
4758
|
-
class
|
|
4967
|
+
class Vs {
|
|
4759
4968
|
constructor(e) {
|
|
4760
4969
|
const t = this;
|
|
4761
4970
|
t.scene = e, t.instancedTiles = [], t.instancedMesh, t.reuseableMatrix = new j.Matrix4();
|
|
@@ -4796,7 +5005,7 @@ class Ss {
|
|
|
4796
5005
|
}), e.instancedMesh.dispose(), !0);
|
|
4797
5006
|
}
|
|
4798
5007
|
}
|
|
4799
|
-
class
|
|
5008
|
+
class Ys {
|
|
4800
5009
|
constructor() {
|
|
4801
5010
|
const e = this;
|
|
4802
5011
|
e.count = 0, e.json, e.instancedTiles = [];
|
|
@@ -4821,11 +5030,11 @@ class Fs {
|
|
|
4821
5030
|
}
|
|
4822
5031
|
}
|
|
4823
5032
|
let Ve = 0;
|
|
4824
|
-
class
|
|
5033
|
+
class tr {
|
|
4825
5034
|
constructor(e, t) {
|
|
4826
|
-
if (this.zUpToYUpMatrix = new j.Matrix4(), this.zUpToYUpMatrix.set(1, 0, 0, 0, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1), this.maxCachedItems = 100, this.maxInstances = 1, this.proxy = t.proxy, t && (this.meshCallback = t.meshCallback, this.pointsCallback = t.pointsCallback, t.maxCachedItems && (this.maxCachedItems = t.maxCachedItems), t.maxInstances && (this.maxInstances = t.maxInstances)), this.gltfLoader = new
|
|
5035
|
+
if (this.zUpToYUpMatrix = new j.Matrix4(), this.zUpToYUpMatrix.set(1, 0, 0, 0, 0, 0, -1, 0, 0, 1, 0, 0, 0, 0, 0, 1), this.maxCachedItems = 100, this.maxInstances = 1, this.proxy = t.proxy, t && (this.meshCallback = t.meshCallback, this.pointsCallback = t.pointsCallback, t.maxCachedItems && (this.maxCachedItems = t.maxCachedItems), t.maxInstances && (this.maxInstances = t.maxInstances)), this.gltfLoader = new hA(), t && t.dracoLoader) this.gltfLoader.setDRACOLoader(t.dracoLoader), this.hasDracoLoader = !0;
|
|
4827
5036
|
else {
|
|
4828
|
-
const a = new
|
|
5037
|
+
const a = new gA();
|
|
4829
5038
|
a.setDecoderPath("https://www.gstatic.com/draco/versioned/decoders/1.4.3/"), this.gltfLoader.setDRACOLoader(a), this.gltfLoader.hasDracoLoader = !0;
|
|
4830
5039
|
}
|
|
4831
5040
|
if (t && t.ktx2Loader) this.gltfLoader.setKTX2Loader(t.ktx2Loader), this.hasKTX2Loader = !0;
|
|
@@ -4833,7 +5042,7 @@ class Os {
|
|
|
4833
5042
|
const a = new re();
|
|
4834
5043
|
a.setTranscoderPath("https://storage.googleapis.com/ogc-3d-tiles/basis/").detectSupport(t.renderer), this.gltfLoader.setKTX2Loader(a), this.gltfLoader.hasKTX2Loader = !0;
|
|
4835
5044
|
}
|
|
4836
|
-
this.gltfLoader.setMeshoptDecoder(
|
|
5045
|
+
this.gltfLoader.setMeshoptDecoder(RA), this.hasMeshOptDecoder = !0, this.b3dmDecoder = new cA(this.gltfLoader), this.cache = new nA.LinkedHashMap(), this.scene = e, this.ready = [], this.downloads = [], this.nextReady = [], this.nextDownloads = [];
|
|
4837
5046
|
}
|
|
4838
5047
|
update() {
|
|
4839
5048
|
const e = this;
|
|
@@ -4859,7 +5068,7 @@ class Os {
|
|
|
4859
5068
|
if (!A.ok) throw new Error("missing content");
|
|
4860
5069
|
return A.arrayBuffer();
|
|
4861
5070
|
}).then(async (A) => {
|
|
4862
|
-
await
|
|
5071
|
+
await Ws(this.gltfLoader), this.gltfLoader.parse(A, null, (s) => {
|
|
4863
5072
|
let i;
|
|
4864
5073
|
s.scene.asset = s.asset, a.sceneZupToYup && s.scene.applyMatrix4(this.zUpToYUpMatrix), s.scene.traverse((n) => {
|
|
4865
5074
|
n.geometricError = a.geometricError, n.isMesh && (a.meshZupToYup && n.applyMatrix4(this.zUpToYUpMatrix), e.meshCallback && e.meshCallback(n, n.geometricError)), n.isPoints && console.error("instanced point cloud is not supported");
|
|
@@ -4879,7 +5088,7 @@ class Os {
|
|
|
4879
5088
|
t = e.proxy ? () => fetch(e.proxy, { method: "POST", body: a.path }) : () => fetch(a.path), Ve++, t().then((A) => {
|
|
4880
5089
|
if (!A.ok) throw console.error("could not load tile with path : " + a.path), new Error(`couldn't load "${a.path}". Request failed with status ${A.status} : ${A.statusText}`);
|
|
4881
5090
|
return A.json();
|
|
4882
|
-
}).then((A) =>
|
|
5091
|
+
}).then((A) => ba(A, a.path)).then((A) => {
|
|
4883
5092
|
a.tile.setObject(A, a.path), e.ready.unshift(a);
|
|
4884
5093
|
}).catch((A) => console.error(A)).finally(() => {
|
|
4885
5094
|
Ve--;
|
|
@@ -4909,27 +5118,27 @@ class Os {
|
|
|
4909
5118
|
}
|
|
4910
5119
|
get(e, t, a, A, s, i, n, l, h, b) {
|
|
4911
5120
|
const g = this, f = function(u) {
|
|
4912
|
-
for (var p = u.split("/"), m = [],
|
|
4913
|
-
var x = p[
|
|
4914
|
-
x !== "." && x !== "" && x !== ".." ? m[
|
|
5121
|
+
for (var p = u.split("/"), m = [], C = 0, E = 0; E < p.length; E++) {
|
|
5122
|
+
var x = p[E];
|
|
5123
|
+
x !== "." && x !== "" && x !== ".." ? m[C++] = x : x === ".." && C > 0 && C--;
|
|
4915
5124
|
}
|
|
4916
|
-
if (
|
|
5125
|
+
if (C === 0) return "/";
|
|
4917
5126
|
var w = "";
|
|
4918
|
-
for (
|
|
5127
|
+
for (E = 0; E < C; E++) w += "/" + m[E];
|
|
4919
5128
|
return w;
|
|
4920
5129
|
}(t);
|
|
4921
5130
|
if (!(t.includes(".b3dm") || t.includes(".json") || t.includes(".glb") || t.includes(".gltf"))) return void console.error("the 3DTiles cache can only be used to load B3DM, gltf and json data");
|
|
4922
5131
|
const I = g.cache.get(f);
|
|
4923
5132
|
if (I) I.addInstance(A);
|
|
4924
5133
|
else if (t.includes(".b3dm") || t.includes(".glb") || t.includes(".gltf")) {
|
|
4925
|
-
const u = new
|
|
5134
|
+
const u = new Vs(g.scene);
|
|
4926
5135
|
u.addInstance(A), g.cache.put(f, u);
|
|
4927
5136
|
const p = new AbortController();
|
|
4928
5137
|
e.signal.addEventListener("abort", () => {
|
|
4929
5138
|
u.getCount() == 0 && p.abort();
|
|
4930
5139
|
}), this.downloads.push({ abortController: p, tile: u, key: f, path: t, distanceFunction: s, getSiblings: i, level: n, uuid: a, sceneZupToYup: l, meshZupToYup: h, geometricError: b, shouldDoDownload: () => !0 });
|
|
4931
5140
|
} else if (t.includes(".json")) {
|
|
4932
|
-
const u = new
|
|
5141
|
+
const u = new Ys();
|
|
4933
5142
|
u.addInstance(A), g.cache.put(f, u);
|
|
4934
5143
|
const p = new AbortController();
|
|
4935
5144
|
e.signal.addEventListener("abort", () => {
|
|
@@ -4966,19 +5175,19 @@ class Os {
|
|
|
4966
5175
|
}
|
|
4967
5176
|
}
|
|
4968
5177
|
}
|
|
4969
|
-
async function
|
|
5178
|
+
async function Ws(o) {
|
|
4970
5179
|
return new Promise((e) => {
|
|
4971
5180
|
const t = setInterval(() => {
|
|
4972
|
-
|
|
5181
|
+
o.hasDracoLoader && !o.dracoLoader || o.hasKTX2Loader && !o.ktx2Loader || (clearInterval(t), e());
|
|
4973
5182
|
}, 10);
|
|
4974
5183
|
});
|
|
4975
5184
|
}
|
|
4976
5185
|
export {
|
|
4977
|
-
|
|
4978
|
-
|
|
4979
|
-
|
|
4980
|
-
|
|
4981
|
-
|
|
4982
|
-
|
|
5186
|
+
er as InstancedOGC3DTile,
|
|
5187
|
+
tr as InstancedTileLoader,
|
|
5188
|
+
FA as OGC3DTile,
|
|
5189
|
+
$s as OcclusionCullingService,
|
|
5190
|
+
Ns as TileLoader,
|
|
5191
|
+
Ks as getOGC3DTilesCopyrightInfo
|
|
4983
5192
|
};
|
|
4984
5193
|
//# sourceMappingURL=threedtiles.es.js.map
|