@jdultra/threedtiles 13.0.33 → 13.1.0

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.
@@ -2,7 +2,7 @@ var Zt = Object.defineProperty;
2
2
  var $t = (c, e, a) => e in c ? Zt(c, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : c[e] = a;
3
3
  var ge = (c, e, a) => $t(c, typeof e != "symbol" ? e + "" : e, a);
4
4
  import * as E from "three";
5
- import { Matrix3 as Sa, Vector3 as M, Box3 as va, Matrix4 as je, Ray as eA, BufferGeometry as ea, LineBasicMaterial as It, LineSegments as pt, BufferAttribute as le, TrianglesDrawMode as aA, TriangleFanDrawMode as ya, TriangleStripDrawMode as Ct, Loader as Fa, LoaderUtils as Pe, FileLoader as Be, Color as he, LinearSRGBColorSpace as K, SpotLight as tA, PointLight as AA, DirectionalLight as iA, MeshBasicMaterial as Le, SRGBColorSpace as re, MeshPhysicalMaterial as ae, Vector2 as Bt, Quaternion as mt, InstancedMesh as sA, InstancedBufferAttribute as wa, Object3D as Et, TextureLoader as rA, ImageBitmapLoader as nA, InterleavedBuffer as oA, InterleavedBufferAttribute as cA, LinearFilter as Ce, LinearMipmapLinearFilter as $e, RepeatWrapping as xa, NearestFilter as R, PointsMaterial as dA, Material as ta, MeshStandardMaterial as Ua, DoubleSide as bA, PropertyBinding as lA, SkinnedMesh as hA, Mesh as ka, Line as gA, LineLoop as fA, Points as uA, Group as Aa, PerspectiveCamera as IA, MathUtils as pA, OrthographicCamera as Qt, Skeleton as CA, AnimationClip as BA, Bone as mA, InterpolateLinear as yt, ColorManagement as Da, NearestMipmapNearestFilter as EA, LinearMipmapNearestFilter as QA, NearestMipmapLinearFilter as yA, ClampToEdgeWrapping as wA, MirroredRepeatWrapping as xA, InterpolateDiscrete as kA, FrontSide as Ze, Texture as Na, VectorKeyframeTrack as Pa, NumberKeyframeTrack as _a, QuaternionKeyframeTrack as Ha, Sphere as DA, Interpolant as jA, CompressedCubeTexture as MA, CompressedArrayTexture as RA, CompressedTexture as qa, RGBAFormat as ee, RGBA_ASTC_4x4_Format as wt, RGB_BPTC_UNSIGNED_Format as SA, RGBA_BPTC_Format as vA, RGBA_ETC2_EAC_Format as FA, RGBA_PVRTC_4BPPV1_Format as TA, RGBA_S3TC_DXT5_Format as LA, RGB_ETC1_Format as GA, RGB_ETC2_Format as UA, RGB_PVRTC_4BPPV1_Format as NA, RGBA_S3TC_DXT1_Format as PA, UnsignedByteType as X, HalfFloatType as xe, FloatType as v, DataTexture as Ge, Data3DTexture as _A, NoColorSpace as HA, RGFormat as Ue, RedFormat as Ne, RGBA_ASTC_6x6_Format as Oa, WebGL3DRenderTarget as ne, ShaderMaterial as ia, InstancedBufferGeometry as Ja, DynamicDrawUsage as Ka, Scene as qA, PlaneGeometry as OA } from "three";
5
+ import { Matrix3 as Fa, Vector3 as D, Box3 as Ra, Matrix4 as Se, Ray as eA, BufferGeometry as ea, LineBasicMaterial as It, LineSegments as mt, BufferAttribute as he, TrianglesDrawMode as aA, TriangleFanDrawMode as ya, TriangleStripDrawMode as Bt, Loader as Ma, LoaderUtils as Le, FileLoader as Ce, Color as le, LinearSRGBColorSpace as K, SpotLight as tA, PointLight as AA, DirectionalLight as iA, MeshBasicMaterial as Ge, SRGBColorSpace as re, MeshPhysicalMaterial as ae, Vector2 as Ct, Quaternion as pt, InstancedMesh as sA, InstancedBufferAttribute as wa, Object3D as Et, TextureLoader as rA, ImageBitmapLoader as nA, InterleavedBuffer as oA, InterleavedBufferAttribute as cA, LinearFilter as Be, LinearMipmapLinearFilter as $e, RepeatWrapping as ka, NearestFilter as v, PointsMaterial as bA, Material as ta, MeshStandardMaterial as Ha, DoubleSide as dA, PropertyBinding as hA, SkinnedMesh as lA, Mesh as xa, Line as gA, LineLoop as fA, Points as uA, Group as Aa, PerspectiveCamera as IA, MathUtils as mA, OrthographicCamera as Qt, Skeleton as BA, AnimationClip as CA, Bone as pA, InterpolateLinear as yt, ColorManagement as ja, NearestMipmapNearestFilter as EA, LinearMipmapNearestFilter as QA, NearestMipmapLinearFilter as yA, ClampToEdgeWrapping as wA, MirroredRepeatWrapping as kA, InterpolateDiscrete as xA, FrontSide as Ze, Texture as Na, VectorKeyframeTrack as La, NumberKeyframeTrack as Oa, QuaternionKeyframeTrack as Ja, Sphere as jA, Interpolant as SA, CompressedCubeTexture as DA, CompressedArrayTexture as vA, CompressedTexture as Pa, RGBAFormat as ee, RGBA_ASTC_4x4_Format as wt, RGB_BPTC_UNSIGNED_Format as FA, RGBA_BPTC_Format as RA, RGBA_ETC2_EAC_Format as MA, RGBA_PVRTC_4BPPV1_Format as TA, RGBA_S3TC_DXT5_Format as GA, RGB_ETC1_Format as UA, RGB_ETC2_Format as HA, RGB_PVRTC_4BPPV1_Format as NA, RGBA_S3TC_DXT1_Format as LA, UnsignedByteType as X, HalfFloatType as ke, FloatType as R, DataTexture as Ue, Data3DTexture as OA, NoColorSpace as JA, RGFormat as He, RedFormat as Ne, RGBA_ASTC_6x6_Format as qa, WebGL3DRenderTarget as ne, ShaderMaterial as ia, InstancedBufferGeometry as _a, DynamicDrawUsage as Ka, Scene as PA, PlaneGeometry as qA } from "three";
6
6
  class es {
7
7
  constructor() {
8
8
  this.cullMap = [], this.cullMaterial = new E.MeshBasicMaterial({ vertexColors: !0 }), this.cullMaterial.side = E.FrontSide, this.cullTarget = this._createCullTarget(), this.cullPixels = new Uint8Array(4 * this.cullTarget.width * this.cullTarget.height);
@@ -26,10 +26,10 @@ class es {
26
26
  return this.cullMap[e];
27
27
  }
28
28
  }
29
- const J = new Sa(), G = new M(), za = new M(), Va = new va(), Ke = new je(), Ya = new je(), Wa = new eA();
29
+ const _ = new Fa(), U = new D(), za = new D(), Va = new Ra(), Ke = new Se(), Ya = new Se(), Wa = new eA();
30
30
  class $ {
31
31
  constructor(e) {
32
- this.center = new M(e[0], e[1], e[2]), this.e1 = new M(e[3], e[4], e[5]), this.e2 = new M(e[6], e[7], e[8]), this.e3 = new M(e[9], e[10], e[11]), this.halfSize = new M(this.e1.length(), this.e2.length(), this.e3.length()), this.e1.normalize(), this.e2.normalize(), this.e3.normalize(), this.rotationMatrix = new Sa(), this.rotationMatrix.set(this.e1.x, this.e2.x, this.e3.x, this.e1.y, this.e2.y, this.e3.y, this.e1.z, this.e2.z, this.e3.z);
32
+ this.center = new D(e[0], e[1], e[2]), this.e1 = new D(e[3], e[4], e[5]), this.e2 = new D(e[6], e[7], e[8]), this.e3 = new D(e[9], e[10], e[11]), this.halfSize = new D(this.e1.length(), this.e2.length(), this.e3.length()), this.e1.normalize(), this.e2.normalize(), this.e3.normalize(), this.rotationMatrix = new Fa(), this.rotationMatrix.set(this.e1.x, this.e2.x, this.e3.x, this.e1.y, this.e2.y, this.e3.y, this.e1.z, this.e2.z, this.e3.z);
33
33
  }
34
34
  copy(e) {
35
35
  this.center.copy(e.center), this.rotationMatrix.copy(e.rotationMatrix), this.halfSize.copy(e.halfSize), this.e1.copy(e.e1), this.e2.copy(e.e2), this.e3.copy(e.e3);
@@ -39,17 +39,17 @@ class $ {
39
39
  }
40
40
  applyMatrix4(e) {
41
41
  const a = e.elements;
42
- let t = G.set(a[0], a[1], a[2]).length();
43
- const A = G.set(a[4], a[5], a[6]).length(), i = G.set(a[8], a[9], a[10]).length();
44
- e.determinant() < 0 && (t = -t), J.setFromMatrix4(e);
42
+ let t = U.set(a[0], a[1], a[2]).length();
43
+ const A = U.set(a[4], a[5], a[6]).length(), i = U.set(a[8], a[9], a[10]).length();
44
+ e.determinant() < 0 && (t = -t), _.setFromMatrix4(e);
45
45
  const s = 1 / t, r = 1 / A, o = 1 / i;
46
- return J.elements[0] *= s, J.elements[1] *= s, J.elements[2] *= s, J.elements[3] *= r, J.elements[4] *= r, J.elements[5] *= r, J.elements[6] *= o, J.elements[7] *= o, J.elements[8] *= o, this.rotationMatrix.multiply(J), this.halfSize.x *= t, this.halfSize.y *= A, this.halfSize.z *= i, G.setFromMatrixPosition(e), this.center.applyMatrix4(e), this.rotationMatrix.extractBasis(this.e1, this.e2, this.e3), this;
46
+ return _.elements[0] *= s, _.elements[1] *= s, _.elements[2] *= s, _.elements[3] *= r, _.elements[4] *= r, _.elements[5] *= r, _.elements[6] *= o, _.elements[7] *= o, _.elements[8] *= o, this.rotationMatrix.multiply(_), this.halfSize.x *= t, this.halfSize.y *= A, this.halfSize.z *= i, U.setFromMatrixPosition(e), this.center.applyMatrix4(e), this.rotationMatrix.extractBasis(this.e1, this.e2, this.e3), this;
47
47
  }
48
48
  intersectRay(e, a) {
49
- return this.getSize(za), Va.setFromCenterAndSize(G.set(0, 0, 0), za), Ke.setFromMatrix3(this.rotationMatrix), Ke.setPosition(this.center), Ya.copy(Ke).invert(), Wa.copy(e).applyMatrix4(Ya), Wa.intersectBox(Va, a) ? a.applyMatrix4(Ke) : null;
49
+ return this.getSize(za), Va.setFromCenterAndSize(U.set(0, 0, 0), za), Ke.setFromMatrix3(this.rotationMatrix), Ke.setPosition(this.center), Ya.copy(Ke).invert(), Wa.copy(e).applyMatrix4(Ya), Wa.intersectBox(Va, a) ? a.applyMatrix4(Ke) : null;
50
50
  }
51
51
  intersectsRay(e) {
52
- return this.intersectRay(e, G) !== null;
52
+ return this.intersectRay(e, U) !== null;
53
53
  }
54
54
  insidePlane(e) {
55
55
  e.normal.normalize();
@@ -64,14 +64,14 @@ class $ {
64
64
  return !0;
65
65
  }
66
66
  distanceToPoint(e) {
67
- G.copy(e), G.sub(this.center), G.applyMatrix3(this.rotationMatrix);
68
- let a = Math.max(0, Math.max(-this.halfSize.x - G.x, G.x - this.halfSize.x)), t = Math.max(0, Math.max(-this.halfSize.y - G.y, G.y - this.halfSize.y)), A = Math.max(0, Math.max(-this.halfSize.z - G.z, G.z - this.halfSize.z));
67
+ U.copy(e), U.sub(this.center), U.applyMatrix3(this.rotationMatrix);
68
+ let a = Math.max(0, Math.max(-this.halfSize.x - U.x, U.x - this.halfSize.x)), t = Math.max(0, Math.max(-this.halfSize.y - U.y, U.y - this.halfSize.y)), A = Math.max(0, Math.max(-this.halfSize.z - U.z, U.z - this.halfSize.z));
69
69
  return Math.sqrt(a * a + t * t + A * A);
70
70
  }
71
71
  helper() {
72
- const e = this.halfSize, a = this.center, t = this.e1, A = this.e2, i = this.e3, s = [new M().copy(a).add(t.clone().multiplyScalar(e.x)).add(A.clone().multiplyScalar(e.y)).add(i.clone().multiplyScalar(e.z)), new M().copy(a).add(t.clone().multiplyScalar(-e.x)).add(A.clone().multiplyScalar(e.y)).add(i.clone().multiplyScalar(e.z)), new M().copy(a).add(t.clone().multiplyScalar(-e.x)).add(A.clone().multiplyScalar(-e.y)).add(i.clone().multiplyScalar(e.z)), new M().copy(a).add(t.clone().multiplyScalar(e.x)).add(A.clone().multiplyScalar(-e.y)).add(i.clone().multiplyScalar(e.z)), new M().copy(a).add(t.clone().multiplyScalar(e.x)).add(A.clone().multiplyScalar(e.y)).add(i.clone().multiplyScalar(-e.z)), new M().copy(a).add(t.clone().multiplyScalar(-e.x)).add(A.clone().multiplyScalar(e.y)).add(i.clone().multiplyScalar(-e.z)), new M().copy(a).add(t.clone().multiplyScalar(-e.x)).add(A.clone().multiplyScalar(-e.y)).add(i.clone().multiplyScalar(-e.z)), new M().copy(a).add(t.clone().multiplyScalar(e.x)).add(A.clone().multiplyScalar(-e.y)).add(i.clone().multiplyScalar(-e.z))], r = new ea().setFromPoints(s);
72
+ const e = this.halfSize, a = this.center, t = this.e1, A = this.e2, i = this.e3, s = [new D().copy(a).add(t.clone().multiplyScalar(e.x)).add(A.clone().multiplyScalar(e.y)).add(i.clone().multiplyScalar(e.z)), new D().copy(a).add(t.clone().multiplyScalar(-e.x)).add(A.clone().multiplyScalar(e.y)).add(i.clone().multiplyScalar(e.z)), new D().copy(a).add(t.clone().multiplyScalar(-e.x)).add(A.clone().multiplyScalar(-e.y)).add(i.clone().multiplyScalar(e.z)), new D().copy(a).add(t.clone().multiplyScalar(e.x)).add(A.clone().multiplyScalar(-e.y)).add(i.clone().multiplyScalar(e.z)), new D().copy(a).add(t.clone().multiplyScalar(e.x)).add(A.clone().multiplyScalar(e.y)).add(i.clone().multiplyScalar(-e.z)), new D().copy(a).add(t.clone().multiplyScalar(-e.x)).add(A.clone().multiplyScalar(e.y)).add(i.clone().multiplyScalar(-e.z)), new D().copy(a).add(t.clone().multiplyScalar(-e.x)).add(A.clone().multiplyScalar(-e.y)).add(i.clone().multiplyScalar(-e.z)), new D().copy(a).add(t.clone().multiplyScalar(e.x)).add(A.clone().multiplyScalar(-e.y)).add(i.clone().multiplyScalar(-e.z))], r = new ea().setFromPoints(s);
73
73
  r.setIndex([0, 1, 1, 2, 2, 3, 3, 0, 4, 5, 5, 6, 6, 7, 7, 4, 0, 4, 1, 5, 2, 6, 3, 7]), r.computeBoundingSphere();
74
- const o = new It({ color: 16711680 }), n = new pt(r, o);
74
+ const o = new It({ color: 16711680 }), n = new mt(r, o);
75
75
  return n.dispose = () => {
76
76
  o.dispose(), r.dispose();
77
77
  }, n;
@@ -83,7 +83,7 @@ class $ {
83
83
  * Linked hash map data structure
84
84
  * @class LinkedHashMap
85
85
  */
86
- class xt {
86
+ class kt {
87
87
  constructor() {
88
88
  this._data = /* @__PURE__ */ new Map(), this._link = /* @__PURE__ */ new Map(), this._head = void 0, this._tail = void 0;
89
89
  }
@@ -167,14 +167,14 @@ class xt {
167
167
  return Array.from(this.keys()).map((a) => ({ key: a, value: this.get(a) }));
168
168
  }
169
169
  }
170
- const JA = new TextDecoder();
171
- class kt {
170
+ const _A = new TextDecoder();
171
+ class xt {
172
172
  constructor(e, a, t, A) {
173
173
  this.buffer = e, this.binOffset = a + t, this.binLength = A;
174
174
  let i = null;
175
175
  if (t !== 0) try {
176
176
  const s = new Uint8Array(e, a, t);
177
- i = JSON.parse(JA.decode(s));
177
+ i = JSON.parse(_A.decode(s));
178
178
  } catch {
179
179
  i = {};
180
180
  }
@@ -191,62 +191,62 @@ class kt {
191
191
  if (s instanceof Object) {
192
192
  if (Array.isArray(s)) return s;
193
193
  {
194
- const { buffer: r, binOffset: o, binLength: n } = this, b = s.byteOffset || 0, d = s.type || A, g = s.componentType || t;
194
+ const { buffer: r, binOffset: o, binLength: n } = this, d = s.byteOffset || 0, b = s.type || A, g = s.componentType || t;
195
195
  if ("type" in s && A && s.type !== A) throw new Error("FeatureTable: Specified type does not match expected type.");
196
- let h, l;
197
- switch (d) {
196
+ let l, h;
197
+ switch (b) {
198
198
  case "SCALAR":
199
- h = 1;
199
+ l = 1;
200
200
  break;
201
201
  case "VEC2":
202
- h = 2;
202
+ l = 2;
203
203
  break;
204
204
  case "VEC3":
205
- h = 3;
205
+ l = 3;
206
206
  break;
207
207
  case "VEC4":
208
- h = 4;
208
+ l = 4;
209
209
  break;
210
210
  default:
211
211
  throw new Error(`FeatureTable : Feature type not provided for "${e}".`);
212
212
  }
213
- const f = o + b, I = a * h;
213
+ const f = o + d, I = a * l;
214
214
  switch (g) {
215
215
  case "BYTE":
216
- l = new Int8Array(r, f, I);
216
+ h = new Int8Array(r, f, I);
217
217
  break;
218
218
  case "UNSIGNED_BYTE":
219
- l = new Uint8Array(r, f, I);
219
+ h = new Uint8Array(r, f, I);
220
220
  break;
221
221
  case "SHORT":
222
- l = new Int16Array(r, f, I);
222
+ h = new Int16Array(r, f, I);
223
223
  break;
224
224
  case "UNSIGNED_SHORT":
225
- l = new Uint16Array(r, f, I);
225
+ h = new Uint16Array(r, f, I);
226
226
  break;
227
227
  case "INT":
228
- l = new Int32Array(r, f, I);
228
+ h = new Int32Array(r, f, I);
229
229
  break;
230
230
  case "UNSIGNED_INT":
231
- l = new Uint32Array(r, f, I);
231
+ h = new Uint32Array(r, f, I);
232
232
  break;
233
233
  case "FLOAT":
234
- l = new Float32Array(r, f, I);
234
+ h = new Float32Array(r, f, I);
235
235
  break;
236
236
  case "DOUBLE":
237
- l = new Float64Array(r, f, I);
237
+ h = new Float64Array(r, f, I);
238
238
  break;
239
239
  default:
240
240
  throw new Error(`FeatureTable : Feature component type not provided for "${e}".`);
241
241
  }
242
- if (f + I * l.BYTES_PER_ELEMENT > o + n) throw new Error("FeatureTable: Feature data read outside binary body length.");
243
- return l;
242
+ if (f + I * h.BYTES_PER_ELEMENT > o + n) throw new Error("FeatureTable: Feature data read outside binary body length.");
243
+ return h;
244
244
  }
245
245
  }
246
246
  return s;
247
247
  }
248
248
  }
249
- class KA extends kt {
249
+ class KA extends xt {
250
250
  constructor(e, a, t, A, i) {
251
251
  super(e, t, A, i), this.batchSize = a;
252
252
  }
@@ -257,31 +257,31 @@ class KA extends kt {
257
257
  function Xa(c) {
258
258
  let e, a, t, A = -1, i = 0;
259
259
  for (let n = 0; n < c.length; ++n) {
260
- const b = c[n];
261
- 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;
262
- if (a === void 0 && (a = b.itemSize), a !== b.itemSize) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."), null;
263
- if (t === void 0 && (t = b.normalized), t !== b.normalized) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."), null;
264
- 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;
265
- i += b.count * a;
266
- }
267
- const s = new e(i), r = new le(s, a, t);
260
+ const d = c[n];
261
+ if (e === void 0 && (e = d.array.constructor), e !== d.array.constructor) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.array must be of consistent array types across matching attributes."), null;
262
+ if (a === void 0 && (a = d.itemSize), a !== d.itemSize) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.itemSize must be consistent across matching attributes."), null;
263
+ if (t === void 0 && (t = d.normalized), t !== d.normalized) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.normalized must be consistent across matching attributes."), null;
264
+ if (A === -1 && (A = d.gpuType), A !== d.gpuType) return console.error("THREE.BufferGeometryUtils: .mergeAttributes() failed. BufferAttribute.gpuType must be consistent across matching attributes."), null;
265
+ i += d.count * a;
266
+ }
267
+ const s = new e(i), r = new he(s, a, t);
268
268
  let o = 0;
269
269
  for (let n = 0; n < c.length; ++n) {
270
- const b = c[n];
271
- if (b.isInterleavedBufferAttribute) {
272
- const d = o / a;
273
- for (let g = 0, h = b.count; g < h; g++) for (let l = 0; l < a; l++) {
274
- const f = b.getComponent(g, l);
275
- r.setComponent(g + d, l, f);
270
+ const d = c[n];
271
+ if (d.isInterleavedBufferAttribute) {
272
+ const b = o / a;
273
+ for (let g = 0, l = d.count; g < l; g++) for (let h = 0; h < a; h++) {
274
+ const f = d.getComponent(g, h);
275
+ r.setComponent(g + b, h, f);
276
276
  }
277
- } else s.set(b.array, o);
278
- o += b.count * a;
277
+ } else s.set(d.array, o);
278
+ o += d.count * a;
279
279
  }
280
280
  return A !== void 0 && (r.gpuType = A), r;
281
281
  }
282
282
  function Za(c, e) {
283
283
  if (e === aA) return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."), c;
284
- if (e === ya || e === Ct) {
284
+ if (e === ya || e === Bt) {
285
285
  let a = c.getIndex();
286
286
  if (a === null) {
287
287
  const s = [], r = c.getAttribute("position");
@@ -298,7 +298,7 @@ function Za(c, e) {
298
298
  }
299
299
  return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:", e), c;
300
300
  }
301
- class Dt {
301
+ class jt {
302
302
  constructor(e) {
303
303
  ge(this, "checkLoaderInitialized", async () => new Promise((e) => {
304
304
  const a = setInterval(() => {
@@ -312,33 +312,33 @@ class Dt {
312
312
  console.assert(r === "b3dm");
313
313
  const o = s.getUint32(8, !0);
314
314
  console.assert(o === e.byteLength);
315
- const n = s.getUint32(12, !0), b = s.getUint32(16, !0), d = s.getUint32(20, !0), g = s.getUint32(24, !0), h = new kt(e, 28, n, b), l = 28 + n + b;
316
- new KA(e, h.getData("BATCH_LENGTH"), l, d, g);
317
- const f = l + d + g, I = new Uint8Array(e, f, o - f).slice().buffer;
318
- return new Promise(async (p, u) => {
319
- await this.checkLoaderInitialized(), this.gltfLoader.parse(I, null, (B) => {
320
- const C = h.getData("RTC_CENTER");
321
- C ? (this.tempMatrix.makeTranslation(C[0], C[1], C[2]), B.scene.applyMatrix4(this.tempMatrix)) : B.userData.gltfExtensions && B.userData.gltfExtensions.CESIUM_RTC && (this.tempMatrix.makeTranslation(B.userData.gltfExtensions.CESIUM_RTC.center[0], B.userData.gltfExtensions.CESIUM_RTC.center[1], B.userData.gltfExtensions.CESIUM_RTC.center[2]), B.scene.applyMatrix4(this.tempMatrix)), t && B.scene.applyMatrix4(i.zUpToYUpMatrix), B.scene.asset = B.asset, B.scene.traverse((y) => {
315
+ const n = s.getUint32(12, !0), d = s.getUint32(16, !0), b = s.getUint32(20, !0), g = s.getUint32(24, !0), l = new xt(e, 28, n, d), h = 28 + n + d;
316
+ new KA(e, l.getData("BATCH_LENGTH"), h, b, g);
317
+ const f = h + b + g, I = new Uint8Array(e, f, o - f).slice().buffer;
318
+ return new Promise(async (m, u) => {
319
+ await this.checkLoaderInitialized(), this.gltfLoader.parse(I, null, (C) => {
320
+ const B = l.getData("RTC_CENTER");
321
+ B ? (this.tempMatrix.makeTranslation(B[0], B[1], B[2]), C.scene.applyMatrix4(this.tempMatrix)) : C.userData.gltfExtensions && C.userData.gltfExtensions.CESIUM_RTC && (this.tempMatrix.makeTranslation(C.userData.gltfExtensions.CESIUM_RTC.center[0], C.userData.gltfExtensions.CESIUM_RTC.center[1], C.userData.gltfExtensions.CESIUM_RTC.center[2]), C.scene.applyMatrix4(this.tempMatrix)), t && C.scene.applyMatrix4(i.zUpToYUpMatrix), C.scene.asset = C.asset, C.scene.traverse((y) => {
322
322
  y.isMesh && (A && y.applyMatrix4(i.zUpToYUpMatrix), a && a(y));
323
- }), p(B.scene);
324
- }, (B) => {
325
- console.error(B);
323
+ }), m(C.scene);
324
+ }, (C) => {
325
+ console.error(C);
326
326
  });
327
327
  });
328
328
  }
329
329
  parseB3DMInstanced(e, a, t, A, i) {
330
330
  return this.parseB3DM(e, a, A, i).then((s) => {
331
331
  let r, o = [], n = [];
332
- s.updateWorldMatrix(!1, !0), s.traverse((d) => {
333
- d.isMesh && (d.geometry.applyMatrix4(d.matrixWorld), o.push(d.geometry), n.push(d.material));
332
+ s.updateWorldMatrix(!1, !0), s.traverse((b) => {
333
+ b.isMesh && (b.geometry.applyMatrix4(b.matrixWorld), o.push(b.geometry), n.push(b.material));
334
334
  });
335
- let b = function(d) {
335
+ let d = function(b) {
336
336
  let g = /* @__PURE__ */ new Set();
337
- return d.forEach((l) => {
338
- for (let f in l.attributes) g.add(f);
339
- }), d.forEach((l) => {
337
+ return b.forEach((h) => {
338
+ for (let f in h.attributes) g.add(f);
339
+ }), b.forEach((h) => {
340
340
  g.forEach((f) => {
341
- if (!l.attributes[f]) {
341
+ if (!h.attributes[f]) {
342
342
  const I = function(u) {
343
343
  switch (u) {
344
344
  case "position":
@@ -351,68 +351,68 @@ class Dt {
351
351
  default:
352
352
  throw new Error(`Unknown attribute ${u}`);
353
353
  }
354
- }(f), p = new Float32Array(I * l.getAttribute("position").count).fill(0);
355
- l.setAttribute(f, new E.BufferAttribute(p, I));
354
+ }(f), m = new Float32Array(I * h.getAttribute("position").count).fill(0);
355
+ h.setAttribute(f, new E.BufferAttribute(m, I));
356
356
  }
357
357
  });
358
- }), function(l, f = !1) {
359
- const I = l[0].index !== null, p = new Set(Object.keys(l[0].attributes)), u = new Set(Object.keys(l[0].morphAttributes)), B = {}, C = {}, y = l[0].morphTargetsRelative, x = new ea();
358
+ }), function(h, f = !1) {
359
+ const I = h[0].index !== null, m = new Set(Object.keys(h[0].attributes)), u = new Set(Object.keys(h[0].morphAttributes)), C = {}, B = {}, y = h[0].morphTargetsRelative, k = new ea();
360
360
  let w = 0;
361
- for (let m = 0; m < l.length; ++m) {
362
- const Q = l[m];
363
- let k = 0;
364
- if (I !== (Q.index !== null)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + m + ". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."), null;
365
- for (const D in Q.attributes) {
366
- if (!p.has(D)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + m + '. All geometries must have compatible attributes; make sure "' + D + '" attribute exists among all geometries, or in none of them.'), null;
367
- B[D] === void 0 && (B[D] = []), B[D].push(Q.attributes[D]), k++;
361
+ for (let p = 0; p < h.length; ++p) {
362
+ const Q = h[p];
363
+ let x = 0;
364
+ if (I !== (Q.index !== null)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + p + ". All geometries must have compatible attributes; make sure index attribute exists among all geometries, or in none of them."), null;
365
+ for (const j in Q.attributes) {
366
+ if (!m.has(j)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + p + '. All geometries must have compatible attributes; make sure "' + j + '" attribute exists among all geometries, or in none of them.'), null;
367
+ C[j] === void 0 && (C[j] = []), C[j].push(Q.attributes[j]), x++;
368
368
  }
369
- if (k !== p.size) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + m + ". Make sure all geometries have the same number of attributes."), null;
370
- if (y !== Q.morphTargetsRelative) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + m + ". .morphTargetsRelative must be consistent throughout all geometries."), null;
371
- for (const D in Q.morphAttributes) {
372
- if (!u.has(D)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + m + ". .morphAttributes must be consistent throughout all geometries."), null;
373
- C[D] === void 0 && (C[D] = []), C[D].push(Q.morphAttributes[D]);
369
+ if (x !== m.size) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + p + ". Make sure all geometries have the same number of attributes."), null;
370
+ if (y !== Q.morphTargetsRelative) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + p + ". .morphTargetsRelative must be consistent throughout all geometries."), null;
371
+ for (const j in Q.morphAttributes) {
372
+ if (!u.has(j)) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + p + ". .morphAttributes must be consistent throughout all geometries."), null;
373
+ B[j] === void 0 && (B[j] = []), B[j].push(Q.morphAttributes[j]);
374
374
  }
375
375
  if (f) {
376
- let D;
377
- if (I) D = Q.index.count;
376
+ let j;
377
+ if (I) j = Q.index.count;
378
378
  else {
379
- if (Q.attributes.position === void 0) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + m + ". The geometry must have either an index or a position attribute"), null;
380
- D = Q.attributes.position.count;
379
+ if (Q.attributes.position === void 0) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed with geometry at index " + p + ". The geometry must have either an index or a position attribute"), null;
380
+ j = Q.attributes.position.count;
381
381
  }
382
- x.addGroup(w, D, m), w += D;
382
+ k.addGroup(w, j, p), w += j;
383
383
  }
384
384
  }
385
385
  if (I) {
386
- let m = 0;
386
+ let p = 0;
387
387
  const Q = [];
388
- for (let k = 0; k < l.length; ++k) {
389
- const D = l[k].index;
390
- for (let F = 0; F < D.count; ++F) Q.push(D.getX(F) + m);
391
- m += l[k].attributes.position.count;
388
+ for (let x = 0; x < h.length; ++x) {
389
+ const j = h[x].index;
390
+ for (let M = 0; M < j.count; ++M) Q.push(j.getX(M) + p);
391
+ p += h[x].attributes.position.count;
392
392
  }
393
- x.setIndex(Q);
393
+ k.setIndex(Q);
394
394
  }
395
- for (const m in B) {
396
- const Q = Xa(B[m]);
397
- if (!Q) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the " + m + " attribute."), null;
398
- x.setAttribute(m, Q);
395
+ for (const p in C) {
396
+ const Q = Xa(C[p]);
397
+ if (!Q) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the " + p + " attribute."), null;
398
+ k.setAttribute(p, Q);
399
399
  }
400
- for (const m in C) {
401
- const Q = C[m][0].length;
400
+ for (const p in B) {
401
+ const Q = B[p][0].length;
402
402
  if (Q === 0) break;
403
- x.morphAttributes = x.morphAttributes || {}, x.morphAttributes[m] = [];
404
- for (let k = 0; k < Q; ++k) {
405
- const D = [];
406
- for (let _ = 0; _ < C[m].length; ++_) D.push(C[m][_][k]);
407
- const F = Xa(D);
408
- if (!F) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the " + m + " morphAttribute."), null;
409
- x.morphAttributes[m].push(F);
403
+ k.morphAttributes = k.morphAttributes || {}, k.morphAttributes[p] = [];
404
+ for (let x = 0; x < Q; ++x) {
405
+ const j = [];
406
+ for (let O = 0; O < B[p].length; ++O) j.push(B[p][O][x]);
407
+ const M = Xa(j);
408
+ if (!M) return console.error("THREE.BufferGeometryUtils: .mergeGeometries() failed while trying to merge the " + p + " morphAttribute."), null;
409
+ k.morphAttributes[p].push(M);
410
410
  }
411
411
  }
412
- return x;
413
- }(d, !0);
412
+ return k;
413
+ }(b, !0);
414
414
  }(o);
415
- return r = new E.InstancedMesh(b, n, t), r.baseMatrix = new E.Matrix4().identity(), r;
415
+ return r = new E.InstancedMesh(d, n, t), r.baseMatrix = new E.Matrix4().identity(), r;
416
416
  });
417
417
  }
418
418
  }
@@ -430,7 +430,7 @@ function WA(c) {
430
430
  }(a)) throw TypeError("Stringified UUID is invalid");
431
431
  return a;
432
432
  }
433
- function jt(c, e, a) {
433
+ function St(c, e, a) {
434
434
  var t = (c = c || {}).random || (c.rng || VA)();
435
435
  return t[6] = 15 & t[6] | 64, t[8] = 63 & t[8] | 128, WA(t);
436
436
  }
@@ -451,26 +451,26 @@ class XA {
451
451
  return new Promise(async (s, r) => {
452
452
  await i.checkLoaderInitialized(), i.gltfLoader.parse(e, null, (o) => {
453
453
  o.scene;
454
- const n = o.scene.children[0], b = n.geometry.attributes.position, d = n.geometry.attributes.color, g = n.geometry.attributes.cov_0, h = n.geometry.attributes.cov_1, l = A.addSplatsTile(b, d, g, h);
454
+ const n = o.scene.children[0], d = n.geometry.attributes.position, b = n.geometry.attributes.color, g = n.geometry.attributes.cov_0, l = n.geometry.attributes.cov_1, h = A.addSplatsTile(d, b, g, l);
455
455
  o.scene.traverse((f) => {
456
456
  f.dispose && f.dispose();
457
- }), s(l);
457
+ }), s(h);
458
458
  }, (o) => {
459
459
  console.error(o);
460
460
  });
461
461
  });
462
462
  }
463
463
  }
464
- class Mt extends Fa {
464
+ class Dt extends Ma {
465
465
  constructor(e) {
466
466
  super(e), this.dracoLoader = null, this.ktx2Loader = null, this.meshoptDecoder = null, this.pluginCallbacks = [], this.register(function(a) {
467
467
  return new ti(a);
468
468
  }), this.register(function(a) {
469
469
  return new Ai(a);
470
- }), this.register(function(a) {
471
- return new li(a);
472
470
  }), this.register(function(a) {
473
471
  return new hi(a);
472
+ }), this.register(function(a) {
473
+ return new li(a);
474
474
  }), this.register(function(a) {
475
475
  return new gi(a);
476
476
  }), this.register(function(a) {
@@ -487,10 +487,10 @@ class Mt extends Fa {
487
487
  return new ci(a);
488
488
  }), this.register(function(a) {
489
489
  return new ii(a);
490
- }), this.register(function(a) {
491
- return new bi(a);
492
490
  }), this.register(function(a) {
493
491
  return new di(a);
492
+ }), this.register(function(a) {
493
+ return new bi(a);
494
494
  }), this.register(function(a) {
495
495
  return new $A(a);
496
496
  }), this.register(function(a) {
@@ -504,20 +504,20 @@ class Mt extends Fa {
504
504
  let s;
505
505
  if (this.resourcePath !== "") s = this.resourcePath;
506
506
  else if (this.path !== "") {
507
- const n = Pe.extractUrlBase(e);
508
- s = Pe.resolveURL(n, this.path);
509
- } else s = Pe.extractUrlBase(e);
507
+ const n = Le.extractUrlBase(e);
508
+ s = Le.resolveURL(n, this.path);
509
+ } else s = Le.extractUrlBase(e);
510
510
  this.manager.itemStart(e);
511
511
  const r = function(n) {
512
512
  A ? A(n) : console.error(n), i.manager.itemError(e), i.manager.itemEnd(e);
513
- }, o = new Be(this.manager);
513
+ }, o = new Ce(this.manager);
514
514
  o.setPath(this.path), o.setResponseType("arraybuffer"), o.setRequestHeader(this.requestHeader), o.setWithCredentials(this.withCredentials), o.load(e, function(n) {
515
515
  try {
516
- i.parse(n, s, function(b) {
517
- a(b), i.manager.itemEnd(e);
516
+ i.parse(n, s, function(d) {
517
+ a(d), i.manager.itemEnd(e);
518
518
  }, r);
519
- } catch (b) {
520
- r(b);
519
+ } catch (d) {
520
+ r(d);
521
521
  }
522
522
  }, t, r);
523
523
  }
@@ -541,39 +541,39 @@ class Mt extends Fa {
541
541
  const s = {}, r = {}, o = new TextDecoder();
542
542
  if (typeof e == "string") i = JSON.parse(e);
543
543
  else if (e instanceof ArrayBuffer)
544
- if (o.decode(new Uint8Array(e, 0, 4)) === Rt) {
544
+ if (o.decode(new Uint8Array(e, 0, 4)) === vt) {
545
545
  try {
546
- s[j.KHR_BINARY_GLTF] = new Ci(e);
547
- } catch (b) {
548
- return void (A && A(b));
546
+ s[S.KHR_BINARY_GLTF] = new Bi(e);
547
+ } catch (d) {
548
+ return void (A && A(d));
549
549
  }
550
- i = JSON.parse(s[j.KHR_BINARY_GLTF].content);
550
+ i = JSON.parse(s[S.KHR_BINARY_GLTF].content);
551
551
  } else i = JSON.parse(o.decode(e));
552
552
  else i = e;
553
553
  if (i.asset === void 0 || i.asset.version[0] < 2) return void (A && A(new Error("THREE.GLTFLoader: Unsupported asset. glTF versions >=2.0 are supported.")));
554
- const n = new Si(i, { path: a || this.resourcePath || "", crossOrigin: this.crossOrigin, requestHeader: this.requestHeader, manager: this.manager, ktx2Loader: this.ktx2Loader, meshoptDecoder: this.meshoptDecoder });
554
+ const n = new Fi(i, { path: a || this.resourcePath || "", crossOrigin: this.crossOrigin, requestHeader: this.requestHeader, manager: this.manager, ktx2Loader: this.ktx2Loader, meshoptDecoder: this.meshoptDecoder });
555
555
  n.fileLoader.setRequestHeader(this.requestHeader);
556
- for (let b = 0; b < this.pluginCallbacks.length; b++) {
557
- const d = this.pluginCallbacks[b](n);
558
- d.name || console.error("THREE.GLTFLoader: Invalid plugin found: missing name"), r[d.name] = d, s[d.name] = !0;
556
+ for (let d = 0; d < this.pluginCallbacks.length; d++) {
557
+ const b = this.pluginCallbacks[d](n);
558
+ b.name || console.error("THREE.GLTFLoader: Invalid plugin found: missing name"), r[b.name] = b, s[b.name] = !0;
559
559
  }
560
- if (i.extensionsUsed) for (let b = 0; b < i.extensionsUsed.length; ++b) {
561
- const d = i.extensionsUsed[b], g = i.extensionsRequired || [];
562
- switch (d) {
563
- case j.KHR_MATERIALS_UNLIT:
564
- s[d] = new ei();
560
+ if (i.extensionsUsed) for (let d = 0; d < i.extensionsUsed.length; ++d) {
561
+ const b = i.extensionsUsed[d], g = i.extensionsRequired || [];
562
+ switch (b) {
563
+ case S.KHR_MATERIALS_UNLIT:
564
+ s[b] = new ei();
565
565
  break;
566
- case j.KHR_DRACO_MESH_COMPRESSION:
567
- s[d] = new Bi(i, this.dracoLoader);
566
+ case S.KHR_DRACO_MESH_COMPRESSION:
567
+ s[b] = new Ci(i, this.dracoLoader);
568
568
  break;
569
- case j.KHR_TEXTURE_TRANSFORM:
570
- s[d] = new mi();
569
+ case S.KHR_TEXTURE_TRANSFORM:
570
+ s[b] = new pi();
571
571
  break;
572
- case j.KHR_MESH_QUANTIZATION:
573
- s[d] = new Ei();
572
+ case S.KHR_MESH_QUANTIZATION:
573
+ s[b] = new Ei();
574
574
  break;
575
575
  default:
576
- g.indexOf(d) >= 0 && r[d] === void 0 && console.warn('THREE.GLTFLoader: Unknown extension "' + d + '".');
576
+ g.indexOf(b) >= 0 && r[b] === void 0 && console.warn('THREE.GLTFLoader: Unknown extension "' + b + '".');
577
577
  }
578
578
  }
579
579
  n.setExtensions(s), n.setPlugins(r), n.parse(t, A);
@@ -597,10 +597,10 @@ function ZA() {
597
597
  c = {};
598
598
  } };
599
599
  }
600
- const j = { 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" };
600
+ const S = { 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" };
601
601
  class $A {
602
602
  constructor(e) {
603
- this.parser = e, this.name = j.KHR_LIGHTS_PUNCTUAL, this.cache = { refs: {}, uses: {} };
603
+ this.parser = e, this.name = S.KHR_LIGHTS_PUNCTUAL, this.cache = { refs: {}, uses: {} };
604
604
  }
605
605
  _markDefs() {
606
606
  const e = this.parser, a = this.parser.json.nodes || [];
@@ -615,7 +615,7 @@ class $A {
615
615
  if (A) return A;
616
616
  const i = a.json, s = ((i.extensions && i.extensions[this.name] || {}).lights || [])[e];
617
617
  let r;
618
- const o = new he(16777215);
618
+ const o = new le(16777215);
619
619
  s.color !== void 0 && o.setRGB(s.color[0], s.color[1], s.color[2], K);
620
620
  const n = s.range !== void 0 ? s.range : 0;
621
621
  switch (s.type) {
@@ -631,7 +631,7 @@ class $A {
631
631
  default:
632
632
  throw new Error("THREE.GLTFLoader: Unexpected light type: " + s.type);
633
633
  }
634
- return r.position.set(0, 0, 0), r.decay = 2, se(r, s), s.intensity !== void 0 && (r.intensity = s.intensity), r.name = a.createUniqueName(s.name || "light_" + e), A = Promise.resolve(r), a.cache.add(t, A), A;
634
+ return r.position.set(0, 0, 0), se(r, s), s.intensity !== void 0 && (r.intensity = s.intensity), r.name = a.createUniqueName(s.name || "light_" + e), A = Promise.resolve(r), a.cache.add(t, A), A;
635
635
  }
636
636
  getDependency(e, a) {
637
637
  if (e === "light") return this._loadLight(a);
@@ -645,14 +645,14 @@ class $A {
645
645
  }
646
646
  class ei {
647
647
  constructor() {
648
- this.name = j.KHR_MATERIALS_UNLIT;
648
+ this.name = S.KHR_MATERIALS_UNLIT;
649
649
  }
650
650
  getMaterialType() {
651
- return Le;
651
+ return Ge;
652
652
  }
653
653
  extendParams(e, a, t) {
654
654
  const A = [];
655
- e.color = new he(1, 1, 1), e.opacity = 1;
655
+ e.color = new le(1, 1, 1), e.opacity = 1;
656
656
  const i = a.pbrMetallicRoughness;
657
657
  if (i) {
658
658
  if (Array.isArray(i.baseColorFactor)) {
@@ -666,7 +666,7 @@ class ei {
666
666
  }
667
667
  class ai {
668
668
  constructor(e) {
669
- this.parser = e, this.name = j.KHR_MATERIALS_EMISSIVE_STRENGTH;
669
+ this.parser = e, this.name = S.KHR_MATERIALS_EMISSIVE_STRENGTH;
670
670
  }
671
671
  extendMaterialParams(e, a) {
672
672
  const t = this.parser.json.materials[e];
@@ -677,7 +677,7 @@ class ai {
677
677
  }
678
678
  class ti {
679
679
  constructor(e) {
680
- this.parser = e, this.name = j.KHR_MATERIALS_CLEARCOAT;
680
+ this.parser = e, this.name = S.KHR_MATERIALS_CLEARCOAT;
681
681
  }
682
682
  getMaterialType(e) {
683
683
  const a = this.parser.json.materials[e];
@@ -689,14 +689,14 @@ class ti {
689
689
  const i = [], s = A.extensions[this.name];
690
690
  if (s.clearcoatFactor !== void 0 && (a.clearcoat = s.clearcoatFactor), s.clearcoatTexture !== void 0 && i.push(t.assignTexture(a, "clearcoatMap", s.clearcoatTexture)), s.clearcoatRoughnessFactor !== void 0 && (a.clearcoatRoughness = s.clearcoatRoughnessFactor), s.clearcoatRoughnessTexture !== void 0 && i.push(t.assignTexture(a, "clearcoatRoughnessMap", s.clearcoatRoughnessTexture)), s.clearcoatNormalTexture !== void 0 && (i.push(t.assignTexture(a, "clearcoatNormalMap", s.clearcoatNormalTexture)), s.clearcoatNormalTexture.scale !== void 0)) {
691
691
  const r = s.clearcoatNormalTexture.scale;
692
- a.clearcoatNormalScale = new Bt(r, r);
692
+ a.clearcoatNormalScale = new Ct(r, r);
693
693
  }
694
694
  return Promise.all(i);
695
695
  }
696
696
  }
697
697
  class Ai {
698
698
  constructor(e) {
699
- this.parser = e, this.name = j.KHR_MATERIALS_DISPERSION;
699
+ this.parser = e, this.name = S.KHR_MATERIALS_DISPERSION;
700
700
  }
701
701
  getMaterialType(e) {
702
702
  const a = this.parser.json.materials[e];
@@ -711,7 +711,7 @@ class Ai {
711
711
  }
712
712
  class ii {
713
713
  constructor(e) {
714
- this.parser = e, this.name = j.KHR_MATERIALS_IRIDESCENCE;
714
+ this.parser = e, this.name = S.KHR_MATERIALS_IRIDESCENCE;
715
715
  }
716
716
  getMaterialType(e) {
717
717
  const a = this.parser.json.materials[e];
@@ -726,7 +726,7 @@ class ii {
726
726
  }
727
727
  class si {
728
728
  constructor(e) {
729
- this.parser = e, this.name = j.KHR_MATERIALS_SHEEN;
729
+ this.parser = e, this.name = S.KHR_MATERIALS_SHEEN;
730
730
  }
731
731
  getMaterialType(e) {
732
732
  const a = this.parser.json.materials[e];
@@ -736,7 +736,7 @@ class si {
736
736
  const t = this.parser, A = t.json.materials[e];
737
737
  if (!A.extensions || !A.extensions[this.name]) return Promise.resolve();
738
738
  const i = [];
739
- a.sheenColor = new he(0, 0, 0), a.sheenRoughness = 0, a.sheen = 1;
739
+ a.sheenColor = new le(0, 0, 0), a.sheenRoughness = 0, a.sheen = 1;
740
740
  const s = A.extensions[this.name];
741
741
  if (s.sheenColorFactor !== void 0) {
742
742
  const r = s.sheenColorFactor;
@@ -747,7 +747,7 @@ class si {
747
747
  }
748
748
  class ri {
749
749
  constructor(e) {
750
- this.parser = e, this.name = j.KHR_MATERIALS_TRANSMISSION;
750
+ this.parser = e, this.name = S.KHR_MATERIALS_TRANSMISSION;
751
751
  }
752
752
  getMaterialType(e) {
753
753
  const a = this.parser.json.materials[e];
@@ -762,7 +762,7 @@ class ri {
762
762
  }
763
763
  class ni {
764
764
  constructor(e) {
765
- this.parser = e, this.name = j.KHR_MATERIALS_VOLUME;
765
+ this.parser = e, this.name = S.KHR_MATERIALS_VOLUME;
766
766
  }
767
767
  getMaterialType(e) {
768
768
  const a = this.parser.json.materials[e];
@@ -774,12 +774,12 @@ class ni {
774
774
  const i = [], s = A.extensions[this.name];
775
775
  a.thickness = s.thicknessFactor !== void 0 ? s.thicknessFactor : 0, s.thicknessTexture !== void 0 && i.push(t.assignTexture(a, "thicknessMap", s.thicknessTexture)), a.attenuationDistance = s.attenuationDistance || 1 / 0;
776
776
  const r = s.attenuationColor || [1, 1, 1];
777
- return a.attenuationColor = new he().setRGB(r[0], r[1], r[2], K), Promise.all(i);
777
+ return a.attenuationColor = new le().setRGB(r[0], r[1], r[2], K), Promise.all(i);
778
778
  }
779
779
  }
780
780
  class oi {
781
781
  constructor(e) {
782
- this.parser = e, this.name = j.KHR_MATERIALS_IOR;
782
+ this.parser = e, this.name = S.KHR_MATERIALS_IOR;
783
783
  }
784
784
  getMaterialType(e) {
785
785
  const a = this.parser.json.materials[e];
@@ -794,7 +794,7 @@ class oi {
794
794
  }
795
795
  class ci {
796
796
  constructor(e) {
797
- this.parser = e, this.name = j.KHR_MATERIALS_SPECULAR;
797
+ this.parser = e, this.name = S.KHR_MATERIALS_SPECULAR;
798
798
  }
799
799
  getMaterialType(e) {
800
800
  const a = this.parser.json.materials[e];
@@ -806,12 +806,12 @@ class ci {
806
806
  const i = [], s = A.extensions[this.name];
807
807
  a.specularIntensity = s.specularFactor !== void 0 ? s.specularFactor : 1, s.specularTexture !== void 0 && i.push(t.assignTexture(a, "specularIntensityMap", s.specularTexture));
808
808
  const r = s.specularColorFactor || [1, 1, 1];
809
- return a.specularColor = new he().setRGB(r[0], r[1], r[2], K), s.specularColorTexture !== void 0 && i.push(t.assignTexture(a, "specularColorMap", s.specularColorTexture, re)), Promise.all(i);
809
+ return a.specularColor = new le().setRGB(r[0], r[1], r[2], K), s.specularColorTexture !== void 0 && i.push(t.assignTexture(a, "specularColorMap", s.specularColorTexture, re)), Promise.all(i);
810
810
  }
811
811
  }
812
- class di {
812
+ class bi {
813
813
  constructor(e) {
814
- this.parser = e, this.name = j.EXT_MATERIALS_BUMP;
814
+ this.parser = e, this.name = S.EXT_MATERIALS_BUMP;
815
815
  }
816
816
  getMaterialType(e) {
817
817
  const a = this.parser.json.materials[e];
@@ -824,9 +824,9 @@ class di {
824
824
  return a.bumpScale = s.bumpFactor !== void 0 ? s.bumpFactor : 1, s.bumpTexture !== void 0 && i.push(t.assignTexture(a, "bumpMap", s.bumpTexture)), Promise.all(i);
825
825
  }
826
826
  }
827
- class bi {
827
+ class di {
828
828
  constructor(e) {
829
- this.parser = e, this.name = j.KHR_MATERIALS_ANISOTROPY;
829
+ this.parser = e, this.name = S.KHR_MATERIALS_ANISOTROPY;
830
830
  }
831
831
  getMaterialType(e) {
832
832
  const a = this.parser.json.materials[e];
@@ -839,9 +839,9 @@ class bi {
839
839
  return s.anisotropyStrength !== void 0 && (a.anisotropy = s.anisotropyStrength), s.anisotropyRotation !== void 0 && (a.anisotropyRotation = s.anisotropyRotation), s.anisotropyTexture !== void 0 && i.push(t.assignTexture(a, "anisotropyMap", s.anisotropyTexture)), Promise.all(i);
840
840
  }
841
841
  }
842
- class li {
842
+ class hi {
843
843
  constructor(e) {
844
- this.parser = e, this.name = j.KHR_TEXTURE_BASISU;
844
+ this.parser = e, this.name = S.KHR_TEXTURE_BASISU;
845
845
  }
846
846
  loadTexture(e) {
847
847
  const a = this.parser, t = a.json, A = t.textures[e];
@@ -854,9 +854,9 @@ class li {
854
854
  return a.loadTextureImage(e, i.source, s);
855
855
  }
856
856
  }
857
- class hi {
857
+ class li {
858
858
  constructor(e) {
859
- this.parser = e, this.name = j.EXT_TEXTURE_WEBP, this.isSupported = null;
859
+ this.parser = e, this.name = S.EXT_TEXTURE_WEBP, this.isSupported = null;
860
860
  }
861
861
  loadTexture(e) {
862
862
  const a = this.name, t = this.parser, A = t.json, i = A.textures[e];
@@ -884,7 +884,7 @@ class hi {
884
884
  }
885
885
  class gi {
886
886
  constructor(e) {
887
- this.parser = e, this.name = j.EXT_TEXTURE_AVIF, this.isSupported = null;
887
+ this.parser = e, this.name = S.EXT_TEXTURE_AVIF, this.isSupported = null;
888
888
  }
889
889
  loadTexture(e) {
890
890
  const a = this.name, t = this.parser, A = t.json, i = A.textures[e];
@@ -912,7 +912,7 @@ class gi {
912
912
  }
913
913
  class fi {
914
914
  constructor(e) {
915
- this.name = j.EXT_MESHOPT_COMPRESSION, this.parser = e;
915
+ this.name = S.EXT_MESHOPT_COMPRESSION, this.parser = e;
916
916
  }
917
917
  loadBufferView(e) {
918
918
  const a = this.parser.json, t = a.bufferViews[e];
@@ -923,12 +923,12 @@ class fi {
923
923
  return null;
924
924
  }
925
925
  return i.then(function(r) {
926
- const o = A.byteOffset || 0, n = A.byteLength || 0, b = A.count, d = A.byteStride, g = new Uint8Array(r, o, n);
927
- return s.decodeGltfBufferAsync ? s.decodeGltfBufferAsync(b, d, g, A.mode, A.filter).then(function(h) {
928
- return h.buffer;
926
+ const o = A.byteOffset || 0, n = A.byteLength || 0, d = A.count, b = A.byteStride, g = new Uint8Array(r, o, n);
927
+ return s.decodeGltfBufferAsync ? s.decodeGltfBufferAsync(d, b, g, A.mode, A.filter).then(function(l) {
928
+ return l.buffer;
929
929
  }) : s.ready.then(function() {
930
- const h = new ArrayBuffer(b * d);
931
- return s.decodeGltfBuffer(new Uint8Array(h), b, d, g, A.mode, A.filter), h;
930
+ const l = new ArrayBuffer(d * b);
931
+ return s.decodeGltfBuffer(new Uint8Array(l), d, b, g, A.mode, A.filter), l;
932
932
  });
933
933
  });
934
934
  }
@@ -937,36 +937,36 @@ class fi {
937
937
  }
938
938
  class ui {
939
939
  constructor(e) {
940
- this.name = j.EXT_MESH_GPU_INSTANCING, this.parser = e;
940
+ this.name = S.EXT_MESH_GPU_INSTANCING, this.parser = e;
941
941
  }
942
942
  createNodeMesh(e) {
943
943
  const a = this.parser.json, t = a.nodes[e];
944
944
  if (!t.extensions || !t.extensions[this.name] || t.mesh === void 0) return null;
945
945
  const A = a.meshes[t.mesh];
946
- for (const o of A.primitives) if (o.mode !== H.TRIANGLES && o.mode !== H.TRIANGLE_STRIP && o.mode !== H.TRIANGLE_FAN && o.mode !== void 0) return null;
946
+ for (const o of A.primitives) if (o.mode !== J.TRIANGLES && o.mode !== J.TRIANGLE_STRIP && o.mode !== J.TRIANGLE_FAN && o.mode !== void 0) return null;
947
947
  const i = t.extensions[this.name].attributes, s = [], r = {};
948
948
  for (const o in i) s.push(this.parser.getDependency("accessor", i[o]).then((n) => (r[o] = n, r[o])));
949
949
  return s.length < 1 ? null : (s.push(this.parser.createNodeMesh(e)), Promise.all(s).then((o) => {
950
- const n = o.pop(), b = n.isGroup ? n.children : [n], d = o[0].count, g = [];
951
- for (const h of b) {
952
- const l = new je(), f = new M(), I = new mt(), p = new M(1, 1, 1), u = new sA(h.geometry, h.material, d);
953
- for (let B = 0; B < d; B++) r.TRANSLATION && f.fromBufferAttribute(r.TRANSLATION, B), r.ROTATION && I.fromBufferAttribute(r.ROTATION, B), r.SCALE && p.fromBufferAttribute(r.SCALE, B), u.setMatrixAt(B, l.compose(f, I, p));
954
- for (const B in r) if (B === "_COLOR_0") {
955
- const C = r[B];
956
- u.instanceColor = new wa(C.array, C.itemSize, C.normalized);
957
- } else B !== "TRANSLATION" && B !== "ROTATION" && B !== "SCALE" && h.geometry.setAttribute(B, r[B]);
958
- Et.prototype.copy.call(u, h), this.parser.assignFinalMaterial(u), g.push(u);
950
+ const n = o.pop(), d = n.isGroup ? n.children : [n], b = o[0].count, g = [];
951
+ for (const l of d) {
952
+ const h = new Se(), f = new D(), I = new pt(), m = new D(1, 1, 1), u = new sA(l.geometry, l.material, b);
953
+ for (let C = 0; C < b; C++) r.TRANSLATION && f.fromBufferAttribute(r.TRANSLATION, C), r.ROTATION && I.fromBufferAttribute(r.ROTATION, C), r.SCALE && m.fromBufferAttribute(r.SCALE, C), u.setMatrixAt(C, h.compose(f, I, m));
954
+ for (const C in r) if (C === "_COLOR_0") {
955
+ const B = r[C];
956
+ u.instanceColor = new wa(B.array, B.itemSize, B.normalized);
957
+ } else C !== "TRANSLATION" && C !== "ROTATION" && C !== "SCALE" && l.geometry.setAttribute(C, r[C]);
958
+ Et.prototype.copy.call(u, l), this.parser.assignFinalMaterial(u), g.push(u);
959
959
  }
960
960
  return n.isGroup ? (n.clear(), n.add(...g), n) : g[0];
961
961
  }));
962
962
  }
963
963
  }
964
- const Rt = "glTF", Ii = 1313821514, pi = 5130562;
965
- class Ci {
964
+ const vt = "glTF", Ii = 1313821514, mi = 5130562;
965
+ class Bi {
966
966
  constructor(e) {
967
- this.name = j.KHR_BINARY_GLTF, this.content = null, this.body = null;
967
+ this.name = S.KHR_BINARY_GLTF, this.content = null, this.body = null;
968
968
  const a = new DataView(e, 0, 12), t = new TextDecoder();
969
- if (this.header = { magic: t.decode(new Uint8Array(e.slice(0, 4))), version: a.getUint32(4, !0), length: a.getUint32(8, !0) }, this.header.magic !== Rt) throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");
969
+ if (this.header = { magic: t.decode(new Uint8Array(e.slice(0, 4))), version: a.getUint32(4, !0), length: a.getUint32(8, !0) }, this.header.magic !== vt) throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");
970
970
  if (this.header.version < 2) throw new Error("THREE.GLTFLoader: Legacy binary file detected.");
971
971
  const A = this.header.length - 12, i = new DataView(e, 12);
972
972
  let s = 0;
@@ -977,7 +977,7 @@ class Ci {
977
977
  if (s += 4, o === Ii) {
978
978
  const n = new Uint8Array(e, 12 + s, r);
979
979
  this.content = t.decode(n);
980
- } else if (o === pi) {
980
+ } else if (o === mi) {
981
981
  const n = 12 + s;
982
982
  this.body = e.slice(n, n + r);
983
983
  }
@@ -986,40 +986,40 @@ class Ci {
986
986
  if (this.content === null) throw new Error("THREE.GLTFLoader: JSON content not found.");
987
987
  }
988
988
  }
989
- class Bi {
989
+ class Ci {
990
990
  constructor(e, a) {
991
991
  if (!a) throw new Error("THREE.GLTFLoader: No DRACOLoader instance provided.");
992
- this.name = j.KHR_DRACO_MESH_COMPRESSION, this.json = e, this.dracoLoader = a, this.dracoLoader.preload();
992
+ this.name = S.KHR_DRACO_MESH_COMPRESSION, this.json = e, this.dracoLoader = a, this.dracoLoader.preload();
993
993
  }
994
994
  decodePrimitive(e, a) {
995
995
  const t = this.json, A = this.dracoLoader, i = e.extensions[this.name].bufferView, s = e.extensions[this.name].attributes, r = {}, o = {}, n = {};
996
- for (const b in s) {
997
- const d = ja[b] || b.toLowerCase();
998
- r[d] = s[b];
996
+ for (const d in s) {
997
+ const b = Sa[d] || d.toLowerCase();
998
+ r[b] = s[d];
999
999
  }
1000
- for (const b in e.attributes) {
1001
- const d = ja[b] || b.toLowerCase();
1002
- if (s[b] !== void 0) {
1003
- const g = t.accessors[e.attributes[b]], h = ke[g.componentType];
1004
- n[d] = h.name, o[d] = g.normalized === !0;
1000
+ for (const d in e.attributes) {
1001
+ const b = Sa[d] || d.toLowerCase();
1002
+ if (s[d] !== void 0) {
1003
+ const g = t.accessors[e.attributes[d]], l = xe[g.componentType];
1004
+ n[b] = l.name, o[b] = g.normalized === !0;
1005
1005
  }
1006
1006
  }
1007
- return a.getDependency("bufferView", i).then(function(b) {
1008
- return new Promise(function(d, g) {
1009
- A.decodeDracoFile(b, function(h) {
1010
- for (const l in h.attributes) {
1011
- const f = h.attributes[l], I = o[l];
1007
+ return a.getDependency("bufferView", i).then(function(d) {
1008
+ return new Promise(function(b, g) {
1009
+ A.decodeDracoFile(d, function(l) {
1010
+ for (const h in l.attributes) {
1011
+ const f = l.attributes[h], I = o[h];
1012
1012
  I !== void 0 && (f.normalized = I);
1013
1013
  }
1014
- d(h);
1014
+ b(l);
1015
1015
  }, r, n, K, g);
1016
1016
  });
1017
1017
  });
1018
1018
  }
1019
1019
  }
1020
- class mi {
1020
+ class pi {
1021
1021
  constructor() {
1022
- this.name = j.KHR_TEXTURE_TRANSFORM;
1022
+ this.name = S.KHR_TEXTURE_TRANSFORM;
1023
1023
  }
1024
1024
  extendTexture(e, a) {
1025
1025
  return (a.texCoord !== void 0 && a.texCoord !== e.channel || a.offset !== void 0 || a.rotation !== void 0 || a.scale !== void 0) && (e = e.clone(), a.texCoord !== void 0 && (e.channel = a.texCoord), a.offset !== void 0 && e.offset.fromArray(a.offset), a.rotation !== void 0 && (e.rotation = a.rotation), a.scale !== void 0 && e.repeat.fromArray(a.scale), e.needsUpdate = !0), e;
@@ -1027,10 +1027,10 @@ class mi {
1027
1027
  }
1028
1028
  class Ei {
1029
1029
  constructor() {
1030
- this.name = j.KHR_MESH_QUANTIZATION;
1030
+ this.name = S.KHR_MESH_QUANTIZATION;
1031
1031
  }
1032
1032
  }
1033
- class St extends jA {
1033
+ class Ft extends SA {
1034
1034
  constructor(e, a, t, A) {
1035
1035
  super(e, a, t, A);
1036
1036
  }
@@ -1040,29 +1040,29 @@ class St extends jA {
1040
1040
  return a;
1041
1041
  }
1042
1042
  interpolate_(e, a, t, A) {
1043
- const i = this.resultBuffer, s = this.sampleValues, r = this.valueSize, o = 2 * r, n = 3 * r, b = A - a, d = (t - a) / b, g = d * d, h = g * d, l = e * n, f = l - n, I = -2 * h + 3 * g, p = h - g, u = 1 - I, B = p - g + d;
1044
- for (let C = 0; C !== r; C++) {
1045
- const y = s[f + C + r], x = s[f + C + o] * b, w = s[l + C + r], m = s[l + C] * b;
1046
- i[C] = u * y + B * x + I * w + p * m;
1043
+ const i = this.resultBuffer, s = this.sampleValues, r = this.valueSize, o = 2 * r, n = 3 * r, d = A - a, b = (t - a) / d, g = b * b, l = g * b, h = e * n, f = h - n, I = -2 * l + 3 * g, m = l - g, u = 1 - I, C = m - g + b;
1044
+ for (let B = 0; B !== r; B++) {
1045
+ const y = s[f + B + r], k = s[f + B + o] * d, w = s[h + B + r], p = s[h + B] * d;
1046
+ i[B] = u * y + C * k + I * w + m * p;
1047
1047
  }
1048
1048
  return i;
1049
1049
  }
1050
1050
  }
1051
- const Qi = new mt();
1052
- class yi extends St {
1051
+ const Qi = new pt();
1052
+ class yi extends Ft {
1053
1053
  interpolate_(e, a, t, A) {
1054
1054
  const i = super.interpolate_(e, a, t, A);
1055
1055
  return Qi.fromArray(i).normalize().toArray(i), i;
1056
1056
  }
1057
1057
  }
1058
- const H = { 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 }, ke = { 5120: Int8Array, 5121: Uint8Array, 5122: Int16Array, 5123: Uint16Array, 5125: Uint32Array, 5126: Float32Array }, $a = { 9728: R, 9729: Ce, 9984: EA, 9985: QA, 9986: yA, 9987: $e }, et = { 33071: wA, 33648: xA, 10497: xa }, na = { SCALAR: 1, VEC2: 2, VEC3: 3, VEC4: 4, MAT2: 4, MAT3: 9, MAT4: 16 }, ja = { 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" }, oe = { scale: "scale", translation: "position", rotation: "quaternion", weights: "morphTargetInfluences" }, wi = { CUBICSPLINE: void 0, LINEAR: yt, STEP: kA }, xi = "OPAQUE", ki = "MASK", Di = "BLEND";
1058
+ const J = { 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 }, xe = { 5120: Int8Array, 5121: Uint8Array, 5122: Int16Array, 5123: Uint16Array, 5125: Uint32Array, 5126: Float32Array }, $a = { 9728: v, 9729: Be, 9984: EA, 9985: QA, 9986: yA, 9987: $e }, et = { 33071: wA, 33648: kA, 10497: ka }, na = { SCALAR: 1, VEC2: 2, VEC3: 3, VEC4: 4, MAT2: 4, MAT3: 9, MAT4: 16 }, Sa = { 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" }, oe = { scale: "scale", translation: "position", rotation: "quaternion", weights: "morphTargetInfluences" }, wi = { CUBICSPLINE: void 0, LINEAR: yt, STEP: xA }, ki = "OPAQUE", xi = "MASK", ji = "BLEND";
1059
1059
  function fe(c, e, a) {
1060
1060
  for (const t in a.extensions) c[t] === void 0 && (e.userData.gltfExtensions = e.userData.gltfExtensions || {}, e.userData.gltfExtensions[t] = a.extensions[t]);
1061
1061
  }
1062
1062
  function se(c, e) {
1063
1063
  e.extras !== void 0 && (typeof e.extras == "object" ? Object.assign(c.userData, e.extras) : console.warn("THREE.GLTFLoader: Ignoring primitive type .extras, " + e.extras));
1064
1064
  }
1065
- function ji(c, e) {
1065
+ function Si(c, e) {
1066
1066
  if (c.updateMorphTargets(), e.weights !== void 0) for (let a = 0, t = e.weights.length; a < t; a++) c.morphTargetInfluences[a] = e.weights[a];
1067
1067
  if (e.extras && Array.isArray(e.extras.targetNames)) {
1068
1068
  const a = e.extras.targetNames;
@@ -1072,9 +1072,9 @@ function ji(c, e) {
1072
1072
  } else console.warn("THREE.GLTFLoader: Invalid extras.targetNames length. Ignoring names.");
1073
1073
  }
1074
1074
  }
1075
- function Mi(c) {
1075
+ function Di(c) {
1076
1076
  let e;
1077
- const a = c.extensions && c.extensions[j.KHR_DRACO_MESH_COMPRESSION];
1077
+ const a = c.extensions && c.extensions[S.KHR_DRACO_MESH_COMPRESSION];
1078
1078
  if (e = a ? "draco:" + a.bufferView + ":" + a.indices + ":" + oa(a.attributes) : c.indices + ":" + oa(c.attributes) + ":" + c.mode, c.targets !== void 0) for (let t = 0, A = c.targets.length; t < A; t++) e += ":" + oa(c.targets[t]);
1079
1079
  return e;
1080
1080
  }
@@ -1084,7 +1084,7 @@ function oa(c) {
1084
1084
  for (let t = 0, A = a.length; t < A; t++) e += a[t] + ":" + c[a[t]] + ";";
1085
1085
  return e;
1086
1086
  }
1087
- function Ma(c) {
1087
+ function Da(c) {
1088
1088
  switch (c) {
1089
1089
  case Int8Array:
1090
1090
  return 1 / 127;
@@ -1098,8 +1098,8 @@ function Ma(c) {
1098
1098
  throw new Error("THREE.GLTFLoader: Unsupported normalized accessor component type.");
1099
1099
  }
1100
1100
  }
1101
- const Ri = new je();
1102
- class Si {
1101
+ const vi = new Se();
1102
+ class Fi {
1103
1103
  constructor(e = {}, a = {}) {
1104
1104
  this.json = e, this.extensions = {}, this.plugins = {}, this.options = a, this.cache = new ZA(), 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 = {};
1105
1105
  let t = !1, A = -1, i = !1, s = -1;
@@ -1109,7 +1109,7 @@ class Si {
1109
1109
  const o = r.match(/Version\/(\d+)/);
1110
1110
  A = t && o ? parseInt(o[1], 10) : -1, i = r.indexOf("Firefox") > -1, s = i ? r.match(/Firefox\/([0-9]+)\./)[1] : -1;
1111
1111
  }
1112
- typeof createImageBitmap > "u" || t && A < 17 || i && s < 98 ? this.textureLoader = new rA(this.options.manager) : this.textureLoader = new nA(this.options.manager), this.textureLoader.setCrossOrigin(this.options.crossOrigin), this.textureLoader.setRequestHeader(this.options.requestHeader), this.fileLoader = new Be(this.options.manager), this.fileLoader.setResponseType("arraybuffer"), this.options.crossOrigin === "use-credentials" && this.fileLoader.setWithCredentials(!0);
1112
+ typeof createImageBitmap > "u" || t && A < 17 || i && s < 98 ? this.textureLoader = new rA(this.options.manager) : this.textureLoader = new nA(this.options.manager), this.textureLoader.setCrossOrigin(this.options.crossOrigin), this.textureLoader.setRequestHeader(this.options.requestHeader), this.fileLoader = new Ce(this.options.manager), this.fileLoader.setResponseType("arraybuffer"), this.options.crossOrigin === "use-credentials" && this.fileLoader.setWithCredentials(!0);
1113
1113
  }
1114
1114
  setExtensions(e) {
1115
1115
  this.extensions = e;
@@ -1154,7 +1154,7 @@ class Si {
1154
1154
  const A = t.clone(), i = (s, r) => {
1155
1155
  const o = this.associations.get(s);
1156
1156
  o != null && this.associations.set(r, o);
1157
- for (const [n, b] of s.children.entries()) i(b, r.children[n]);
1157
+ for (const [n, d] of s.children.entries()) i(d, r.children[n]);
1158
1158
  };
1159
1159
  return i(t, A), A.name += "_instance_" + e.uses[a]++, A;
1160
1160
  }
@@ -1249,10 +1249,10 @@ class Si {
1249
1249
  loadBuffer(e) {
1250
1250
  const a = this.json.buffers[e], t = this.fileLoader;
1251
1251
  if (a.type && a.type !== "arraybuffer") throw new Error("THREE.GLTFLoader: " + a.type + " buffer type is not supported.");
1252
- if (a.uri === void 0 && e === 0) return Promise.resolve(this.extensions[j.KHR_BINARY_GLTF].body);
1252
+ if (a.uri === void 0 && e === 0) return Promise.resolve(this.extensions[S.KHR_BINARY_GLTF].body);
1253
1253
  const A = this.options;
1254
1254
  return new Promise(function(i, s) {
1255
- t.load(Pe.resolveURL(a.uri, A.path), i, void 0, function() {
1255
+ t.load(Le.resolveURL(a.uri, A.path), i, void 0, function() {
1256
1256
  s(new Error('THREE.GLTFLoader: Failed to load buffer "' + a.uri + '".'));
1257
1257
  });
1258
1258
  });
@@ -1267,26 +1267,26 @@ class Si {
1267
1267
  loadAccessor(e) {
1268
1268
  const a = this, t = this.json, A = this.json.accessors[e];
1269
1269
  if (A.bufferView === void 0 && A.sparse === void 0) {
1270
- const s = na[A.type], r = ke[A.componentType], o = A.normalized === !0, n = new r(A.count * s);
1271
- return Promise.resolve(new le(n, s, o));
1270
+ const s = na[A.type], r = xe[A.componentType], o = A.normalized === !0, n = new r(A.count * s);
1271
+ return Promise.resolve(new he(n, s, o));
1272
1272
  }
1273
1273
  const i = [];
1274
1274
  return A.bufferView !== void 0 ? i.push(this.getDependency("bufferView", A.bufferView)) : i.push(null), A.sparse !== void 0 && (i.push(this.getDependency("bufferView", A.sparse.indices.bufferView)), i.push(this.getDependency("bufferView", A.sparse.values.bufferView))), Promise.all(i).then(function(s) {
1275
- const r = s[0], o = na[A.type], n = ke[A.componentType], b = n.BYTES_PER_ELEMENT, d = b * o, g = A.byteOffset || 0, h = A.bufferView !== void 0 ? t.bufferViews[A.bufferView].byteStride : void 0, l = A.normalized === !0;
1275
+ const r = s[0], o = na[A.type], n = xe[A.componentType], d = n.BYTES_PER_ELEMENT, b = d * o, g = A.byteOffset || 0, l = A.bufferView !== void 0 ? t.bufferViews[A.bufferView].byteStride : void 0, h = A.normalized === !0;
1276
1276
  let f, I;
1277
- if (h && h !== d) {
1278
- const p = Math.floor(g / h), u = "InterleavedBuffer:" + A.bufferView + ":" + A.componentType + ":" + p + ":" + A.count;
1279
- let B = a.cache.get(u);
1280
- B || (f = new n(r, p * h, A.count * h / b), B = new oA(f, h / b), a.cache.add(u, B)), I = new cA(B, o, g % h / b, l);
1281
- } else f = r === null ? new n(A.count * o) : new n(r, g, A.count * o), I = new le(f, o, l);
1277
+ if (l && l !== b) {
1278
+ const m = Math.floor(g / l), u = "InterleavedBuffer:" + A.bufferView + ":" + A.componentType + ":" + m + ":" + A.count;
1279
+ let C = a.cache.get(u);
1280
+ C || (f = new n(r, m * l, A.count * l / d), C = new oA(f, l / d), a.cache.add(u, C)), I = new cA(C, o, g % l / d, h);
1281
+ } else f = r === null ? new n(A.count * o) : new n(r, g, A.count * o), I = new he(f, o, h);
1282
1282
  if (A.sparse !== void 0) {
1283
- const p = na.SCALAR, u = ke[A.sparse.indices.componentType], B = A.sparse.indices.byteOffset || 0, C = A.sparse.values.byteOffset || 0, y = new u(s[1], B, A.sparse.count * p), x = new n(s[2], C, A.sparse.count * o);
1284
- r !== null && (I = new le(I.array.slice(), I.itemSize, I.normalized)), I.normalized = !1;
1285
- for (let w = 0, m = y.length; w < m; w++) {
1283
+ const m = na.SCALAR, u = xe[A.sparse.indices.componentType], C = A.sparse.indices.byteOffset || 0, B = A.sparse.values.byteOffset || 0, y = new u(s[1], C, A.sparse.count * m), k = new n(s[2], B, A.sparse.count * o);
1284
+ r !== null && (I = new he(I.array.slice(), I.itemSize, I.normalized)), I.normalized = !1;
1285
+ for (let w = 0, p = y.length; w < p; w++) {
1286
1286
  const Q = y[w];
1287
- if (I.setX(Q, x[w * o]), o >= 2 && I.setY(Q, x[w * o + 1]), o >= 3 && I.setZ(Q, x[w * o + 2]), o >= 4 && I.setW(Q, x[w * o + 3]), o >= 5) throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.");
1287
+ if (I.setX(Q, k[w * o]), o >= 2 && I.setY(Q, k[w * o + 1]), o >= 3 && I.setZ(Q, k[w * o + 2]), o >= 4 && I.setW(Q, k[w * o + 3]), o >= 5) throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.");
1288
1288
  }
1289
- I.normalized = l;
1289
+ I.normalized = h;
1290
1290
  }
1291
1291
  return I;
1292
1292
  });
@@ -1303,10 +1303,10 @@ class Si {
1303
1303
  loadTextureImage(e, a, t) {
1304
1304
  const A = this, i = this.json, s = i.textures[e], r = i.images[a], o = (r.uri || r.bufferView) + ":" + s.sampler;
1305
1305
  if (this.textureCache[o]) return this.textureCache[o];
1306
- const n = this.loadImageSource(a, t).then(function(b) {
1307
- b.flipY = !1, b.name = s.name || r.name || "", b.name === "" && typeof r.uri == "string" && r.uri.startsWith("data:image/") === !1 && (b.name = r.uri);
1308
- const d = (i.samplers || {})[s.sampler] || {};
1309
- return b.magFilter = $a[d.magFilter] || Ce, b.minFilter = $a[d.minFilter] || $e, b.wrapS = et[d.wrapS] || xa, b.wrapT = et[d.wrapT] || xa, b.generateMipmaps = !b.isCompressedTexture && b.minFilter !== R && b.minFilter !== Ce, A.associations.set(b, { textures: e }), b;
1306
+ const n = this.loadImageSource(a, t).then(function(d) {
1307
+ d.flipY = !1, d.name = s.name || r.name || "", d.name === "" && typeof r.uri == "string" && r.uri.startsWith("data:image/") === !1 && (d.name = r.uri);
1308
+ const b = (i.samplers || {})[s.sampler] || {};
1309
+ return d.magFilter = $a[b.magFilter] || Be, d.minFilter = $a[b.minFilter] || $e, d.wrapS = et[b.wrapS] || ka, d.wrapT = et[b.wrapT] || ka, d.generateMipmaps = !d.isCompressedTexture && d.minFilter !== v && d.minFilter !== Be, A.associations.set(d, { textures: e }), d;
1310
1310
  }).catch(function() {
1311
1311
  return null;
1312
1312
  });
@@ -1314,40 +1314,40 @@ class Si {
1314
1314
  }
1315
1315
  loadImageSource(e, a) {
1316
1316
  const t = this, A = this.json, i = this.options;
1317
- if (this.sourceCache[e] !== void 0) return this.sourceCache[e].then((d) => d.clone());
1317
+ if (this.sourceCache[e] !== void 0) return this.sourceCache[e].then((b) => b.clone());
1318
1318
  const s = A.images[e], r = self.URL || self.webkitURL;
1319
1319
  let o = s.uri || "", n = !1;
1320
- if (s.bufferView !== void 0) o = t.getDependency("bufferView", s.bufferView).then(function(d) {
1320
+ if (s.bufferView !== void 0) o = t.getDependency("bufferView", s.bufferView).then(function(b) {
1321
1321
  n = !0;
1322
- const g = new Blob([d], { type: s.mimeType });
1322
+ const g = new Blob([b], { type: s.mimeType });
1323
1323
  return o = r.createObjectURL(g), o;
1324
1324
  });
1325
1325
  else if (s.uri === void 0) throw new Error("THREE.GLTFLoader: Image " + e + " is missing URI and bufferView");
1326
- const b = Promise.resolve(o).then(function(d) {
1327
- return new Promise(function(g, h) {
1328
- let l = g;
1329
- a.isImageBitmapLoader === !0 && (l = function(f) {
1326
+ const d = Promise.resolve(o).then(function(b) {
1327
+ return new Promise(function(g, l) {
1328
+ let h = g;
1329
+ a.isImageBitmapLoader === !0 && (h = function(f) {
1330
1330
  const I = new Na(f);
1331
1331
  I.needsUpdate = !0, g(I);
1332
- }), a.load(Pe.resolveURL(d, i.path), l, void 0, h);
1332
+ }), a.load(Le.resolveURL(b, i.path), h, void 0, l);
1333
1333
  });
1334
- }).then(function(d) {
1334
+ }).then(function(b) {
1335
1335
  var g;
1336
- return n === !0 && r.revokeObjectURL(o), se(d, s), d.userData.mimeType = s.mimeType || ((g = s.uri).search(/\.jpe?g($|\?)/i) > 0 || g.search(/^data\:image\/jpeg/) === 0 ? "image/jpeg" : g.search(/\.webp($|\?)/i) > 0 || g.search(/^data\:image\/webp/) === 0 ? "image/webp" : g.search(/\.ktx2($|\?)/i) > 0 || g.search(/^data\:image\/ktx2/) === 0 ? "image/ktx2" : "image/png"), d;
1337
- }).catch(function(d) {
1338
- throw console.error("THREE.GLTFLoader: Couldn't load texture", o), d;
1336
+ return n === !0 && r.revokeObjectURL(o), se(b, s), b.userData.mimeType = s.mimeType || ((g = s.uri).search(/\.jpe?g($|\?)/i) > 0 || g.search(/^data\:image\/jpeg/) === 0 ? "image/jpeg" : g.search(/\.webp($|\?)/i) > 0 || g.search(/^data\:image\/webp/) === 0 ? "image/webp" : g.search(/\.ktx2($|\?)/i) > 0 || g.search(/^data\:image\/ktx2/) === 0 ? "image/ktx2" : "image/png"), b;
1337
+ }).catch(function(b) {
1338
+ throw console.error("THREE.GLTFLoader: Couldn't load texture", o), b;
1339
1339
  });
1340
- return this.sourceCache[e] = b, b;
1340
+ return this.sourceCache[e] = d, d;
1341
1341
  }
1342
1342
  assignTexture(e, a, t, A) {
1343
1343
  const i = this;
1344
1344
  return this.getDependency("texture", t.index).then(function(s) {
1345
1345
  if (!s) return null;
1346
- if (t.texCoord !== void 0 && t.texCoord > 0 && ((s = s.clone()).channel = t.texCoord), i.extensions[j.KHR_TEXTURE_TRANSFORM]) {
1347
- const r = t.extensions !== void 0 ? t.extensions[j.KHR_TEXTURE_TRANSFORM] : void 0;
1346
+ if (t.texCoord !== void 0 && t.texCoord > 0 && ((s = s.clone()).channel = t.texCoord), i.extensions[S.KHR_TEXTURE_TRANSFORM]) {
1347
+ const r = t.extensions !== void 0 ? t.extensions[S.KHR_TEXTURE_TRANSFORM] : void 0;
1348
1348
  if (r) {
1349
1349
  const o = i.associations.get(s);
1350
- s = i.extensions[j.KHR_TEXTURE_TRANSFORM].extendTexture(s, r), i.associations.set(s, o);
1350
+ s = i.extensions[S.KHR_TEXTURE_TRANSFORM].extendTexture(s, r), i.associations.set(s, o);
1351
1351
  }
1352
1352
  }
1353
1353
  return A !== void 0 && (s.colorSpace = A), e[a] = s, s;
@@ -1360,7 +1360,7 @@ class Si {
1360
1360
  if (e.isPoints) {
1361
1361
  const r = "PointsMaterial:" + t.uuid;
1362
1362
  let o = this.cache.get(r);
1363
- o || (o = new dA(), ta.prototype.copy.call(o, t), o.color.copy(t.color), o.map = t.map, o.sizeAttenuation = !1, this.cache.add(r, o)), t = o;
1363
+ o || (o = new bA(), ta.prototype.copy.call(o, t), o.color.copy(t.color), o.map = t.map, o.sizeAttenuation = !1, this.cache.add(r, o)), t = o;
1364
1364
  } else if (e.isLine) {
1365
1365
  const r = "LineBasicMaterial:" + t.uuid;
1366
1366
  let o = this.cache.get(r);
@@ -1375,99 +1375,99 @@ class Si {
1375
1375
  e.material = t;
1376
1376
  }
1377
1377
  getMaterialType() {
1378
- return Ua;
1378
+ return Ha;
1379
1379
  }
1380
1380
  loadMaterial(e) {
1381
1381
  const a = this, t = this.json, A = this.extensions, i = t.materials[e];
1382
1382
  let s;
1383
1383
  const r = {}, o = [];
1384
- if ((i.extensions || {})[j.KHR_MATERIALS_UNLIT]) {
1385
- const b = A[j.KHR_MATERIALS_UNLIT];
1386
- s = b.getMaterialType(), o.push(b.extendParams(r, i, a));
1384
+ if ((i.extensions || {})[S.KHR_MATERIALS_UNLIT]) {
1385
+ const d = A[S.KHR_MATERIALS_UNLIT];
1386
+ s = d.getMaterialType(), o.push(d.extendParams(r, i, a));
1387
1387
  } else {
1388
- const b = i.pbrMetallicRoughness || {};
1389
- if (r.color = new he(1, 1, 1), r.opacity = 1, Array.isArray(b.baseColorFactor)) {
1390
- const d = b.baseColorFactor;
1391
- r.color.setRGB(d[0], d[1], d[2], K), r.opacity = d[3];
1388
+ const d = i.pbrMetallicRoughness || {};
1389
+ if (r.color = new le(1, 1, 1), r.opacity = 1, Array.isArray(d.baseColorFactor)) {
1390
+ const b = d.baseColorFactor;
1391
+ r.color.setRGB(b[0], b[1], b[2], K), r.opacity = b[3];
1392
1392
  }
1393
- b.baseColorTexture !== void 0 && o.push(a.assignTexture(r, "map", b.baseColorTexture, re)), r.metalness = b.metallicFactor !== void 0 ? b.metallicFactor : 1, r.roughness = b.roughnessFactor !== void 0 ? b.roughnessFactor : 1, b.metallicRoughnessTexture !== void 0 && (o.push(a.assignTexture(r, "metalnessMap", b.metallicRoughnessTexture)), o.push(a.assignTexture(r, "roughnessMap", b.metallicRoughnessTexture))), s = this._invokeOne(function(d) {
1394
- return d.getMaterialType && d.getMaterialType(e);
1395
- }), o.push(Promise.all(this._invokeAll(function(d) {
1396
- return d.extendMaterialParams && d.extendMaterialParams(e, r);
1393
+ d.baseColorTexture !== void 0 && o.push(a.assignTexture(r, "map", d.baseColorTexture, re)), r.metalness = d.metallicFactor !== void 0 ? d.metallicFactor : 1, r.roughness = d.roughnessFactor !== void 0 ? d.roughnessFactor : 1, d.metallicRoughnessTexture !== void 0 && (o.push(a.assignTexture(r, "metalnessMap", d.metallicRoughnessTexture)), o.push(a.assignTexture(r, "roughnessMap", d.metallicRoughnessTexture))), s = this._invokeOne(function(b) {
1394
+ return b.getMaterialType && b.getMaterialType(e);
1395
+ }), o.push(Promise.all(this._invokeAll(function(b) {
1396
+ return b.extendMaterialParams && b.extendMaterialParams(e, r);
1397
1397
  })));
1398
1398
  }
1399
- i.doubleSided === !0 && (r.side = bA);
1400
- const n = i.alphaMode || xi;
1401
- if (n === Di ? (r.transparent = !0, r.depthWrite = !1) : (r.transparent = !1, n === ki && (r.alphaTest = i.alphaCutoff !== void 0 ? i.alphaCutoff : 0.5)), i.normalTexture !== void 0 && s !== Le && (o.push(a.assignTexture(r, "normalMap", i.normalTexture)), r.normalScale = new Bt(1, 1), i.normalTexture.scale !== void 0)) {
1402
- const b = i.normalTexture.scale;
1403
- r.normalScale.set(b, b);
1399
+ i.doubleSided === !0 && (r.side = dA);
1400
+ const n = i.alphaMode || ki;
1401
+ if (n === ji ? (r.transparent = !0, r.depthWrite = !1) : (r.transparent = !1, n === xi && (r.alphaTest = i.alphaCutoff !== void 0 ? i.alphaCutoff : 0.5)), i.normalTexture !== void 0 && s !== Ge && (o.push(a.assignTexture(r, "normalMap", i.normalTexture)), r.normalScale = new Ct(1, 1), i.normalTexture.scale !== void 0)) {
1402
+ const d = i.normalTexture.scale;
1403
+ r.normalScale.set(d, d);
1404
1404
  }
1405
- if (i.occlusionTexture !== void 0 && s !== Le && (o.push(a.assignTexture(r, "aoMap", i.occlusionTexture)), i.occlusionTexture.strength !== void 0 && (r.aoMapIntensity = i.occlusionTexture.strength)), i.emissiveFactor !== void 0 && s !== Le) {
1406
- const b = i.emissiveFactor;
1407
- r.emissive = new he().setRGB(b[0], b[1], b[2], K);
1405
+ if (i.occlusionTexture !== void 0 && s !== Ge && (o.push(a.assignTexture(r, "aoMap", i.occlusionTexture)), i.occlusionTexture.strength !== void 0 && (r.aoMapIntensity = i.occlusionTexture.strength)), i.emissiveFactor !== void 0 && s !== Ge) {
1406
+ const d = i.emissiveFactor;
1407
+ r.emissive = new le().setRGB(d[0], d[1], d[2], K);
1408
1408
  }
1409
- return i.emissiveTexture !== void 0 && s !== Le && o.push(a.assignTexture(r, "emissiveMap", i.emissiveTexture, re)), Promise.all(o).then(function() {
1410
- const b = new s(r);
1411
- return i.name && (b.name = i.name), se(b, i), a.associations.set(b, { materials: e }), i.extensions && fe(A, b, i), b;
1409
+ return i.emissiveTexture !== void 0 && s !== Ge && o.push(a.assignTexture(r, "emissiveMap", i.emissiveTexture, re)), Promise.all(o).then(function() {
1410
+ const d = new s(r);
1411
+ return i.name && (d.name = i.name), se(d, i), a.associations.set(d, { materials: e }), i.extensions && fe(A, d, i), d;
1412
1412
  });
1413
1413
  }
1414
1414
  createUniqueName(e) {
1415
- const a = lA.sanitizeNodeName(e || "");
1415
+ const a = hA.sanitizeNodeName(e || "");
1416
1416
  return a in this.nodeNamesUsed ? a + "_" + ++this.nodeNamesUsed[a] : (this.nodeNamesUsed[a] = 0, a);
1417
1417
  }
1418
1418
  loadGeometries(e) {
1419
1419
  const a = this, t = this.extensions, A = this.primitiveCache;
1420
1420
  function i(r) {
1421
- return t[j.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(r, a).then(function(o) {
1421
+ return t[S.KHR_DRACO_MESH_COMPRESSION].decodePrimitive(r, a).then(function(o) {
1422
1422
  return at(o, r, a);
1423
1423
  });
1424
1424
  }
1425
1425
  const s = [];
1426
1426
  for (let r = 0, o = e.length; r < o; r++) {
1427
- const n = e[r], b = Mi(n), d = A[b];
1428
- if (d) s.push(d.promise);
1427
+ const n = e[r], d = Di(n), b = A[d];
1428
+ if (b) s.push(b.promise);
1429
1429
  else {
1430
1430
  let g;
1431
- g = n.extensions && n.extensions[j.KHR_DRACO_MESH_COMPRESSION] ? i(n) : at(new ea(), n, a), A[b] = { primitive: n, promise: g }, s.push(g);
1431
+ g = n.extensions && n.extensions[S.KHR_DRACO_MESH_COMPRESSION] ? i(n) : at(new ea(), n, a), A[d] = { primitive: n, promise: g }, s.push(g);
1432
1432
  }
1433
1433
  }
1434
1434
  return Promise.all(s);
1435
1435
  }
1436
1436
  loadMesh(e) {
1437
1437
  const a = this, t = this.json, A = this.extensions, i = t.meshes[e], s = i.primitives, r = [];
1438
- for (let n = 0, b = s.length; n < b; n++) {
1439
- const d = s[n].material === void 0 ? ((o = this.cache).DefaultMaterial === void 0 && (o.DefaultMaterial = new Ua({ color: 16777215, emissive: 0, metalness: 1, roughness: 1, transparent: !1, depthTest: !0, side: Ze })), o.DefaultMaterial) : this.getDependency("material", s[n].material);
1440
- r.push(d);
1438
+ for (let n = 0, d = s.length; n < d; n++) {
1439
+ const b = s[n].material === void 0 ? ((o = this.cache).DefaultMaterial === void 0 && (o.DefaultMaterial = new Ha({ color: 16777215, emissive: 0, metalness: 1, roughness: 1, transparent: !1, depthTest: !0, side: Ze })), o.DefaultMaterial) : this.getDependency("material", s[n].material);
1440
+ r.push(b);
1441
1441
  }
1442
1442
  var o;
1443
1443
  return r.push(a.loadGeometries(s)), Promise.all(r).then(function(n) {
1444
- const b = n.slice(0, n.length - 1), d = n[n.length - 1], g = [];
1445
- for (let l = 0, f = d.length; l < f; l++) {
1446
- const I = d[l], p = s[l];
1444
+ const d = n.slice(0, n.length - 1), b = n[n.length - 1], g = [];
1445
+ for (let h = 0, f = b.length; h < f; h++) {
1446
+ const I = b[h], m = s[h];
1447
1447
  let u;
1448
- const B = b[l];
1449
- if (p.mode === H.TRIANGLES || p.mode === H.TRIANGLE_STRIP || p.mode === H.TRIANGLE_FAN || p.mode === void 0) u = i.isSkinnedMesh === !0 ? new hA(I, B) : new ka(I, B), u.isSkinnedMesh === !0 && u.normalizeSkinWeights(), p.mode === H.TRIANGLE_STRIP ? u.geometry = Za(u.geometry, Ct) : p.mode === H.TRIANGLE_FAN && (u.geometry = Za(u.geometry, ya));
1450
- else if (p.mode === H.LINES) u = new pt(I, B);
1451
- else if (p.mode === H.LINE_STRIP) u = new gA(I, B);
1452
- else if (p.mode === H.LINE_LOOP) u = new fA(I, B);
1448
+ const C = d[h];
1449
+ if (m.mode === J.TRIANGLES || m.mode === J.TRIANGLE_STRIP || m.mode === J.TRIANGLE_FAN || m.mode === void 0) u = i.isSkinnedMesh === !0 ? new lA(I, C) : new xa(I, C), u.isSkinnedMesh === !0 && u.normalizeSkinWeights(), m.mode === J.TRIANGLE_STRIP ? u.geometry = Za(u.geometry, Bt) : m.mode === J.TRIANGLE_FAN && (u.geometry = Za(u.geometry, ya));
1450
+ else if (m.mode === J.LINES) u = new mt(I, C);
1451
+ else if (m.mode === J.LINE_STRIP) u = new gA(I, C);
1452
+ else if (m.mode === J.LINE_LOOP) u = new fA(I, C);
1453
1453
  else {
1454
- if (p.mode !== H.POINTS) throw new Error("THREE.GLTFLoader: Primitive mode unsupported: " + p.mode);
1455
- u = new uA(I, B);
1454
+ if (m.mode !== J.POINTS) throw new Error("THREE.GLTFLoader: Primitive mode unsupported: " + m.mode);
1455
+ u = new uA(I, C);
1456
1456
  }
1457
- Object.keys(u.geometry.morphAttributes).length > 0 && ji(u, i), u.name = a.createUniqueName(i.name || "mesh_" + e), se(u, i), p.extensions && fe(A, u, p), a.assignFinalMaterial(u), g.push(u);
1457
+ Object.keys(u.geometry.morphAttributes).length > 0 && Si(u, i), u.name = a.createUniqueName(i.name || "mesh_" + e), se(u, i), m.extensions && fe(A, u, m), a.assignFinalMaterial(u), g.push(u);
1458
1458
  }
1459
- for (let l = 0, f = g.length; l < f; l++) a.associations.set(g[l], { meshes: e, primitives: l });
1459
+ for (let h = 0, f = g.length; h < f; h++) a.associations.set(g[h], { meshes: e, primitives: h });
1460
1460
  if (g.length === 1) return i.extensions && fe(A, g[0], i), g[0];
1461
- const h = new Aa();
1462
- i.extensions && fe(A, h, i), a.associations.set(h, { meshes: e });
1463
- for (let l = 0, f = g.length; l < f; l++) h.add(g[l]);
1464
- return h;
1461
+ const l = new Aa();
1462
+ i.extensions && fe(A, l, i), a.associations.set(l, { meshes: e });
1463
+ for (let h = 0, f = g.length; h < f; h++) l.add(g[h]);
1464
+ return l;
1465
1465
  });
1466
1466
  }
1467
1467
  loadCamera(e) {
1468
1468
  let a;
1469
1469
  const t = this.json.cameras[e], A = t[t.type];
1470
- if (A) return t.type === "perspective" ? a = new IA(pA.radToDeg(A.yfov), A.aspectRatio || 1, A.znear || 1, A.zfar || 2e6) : t.type === "orthographic" && (a = new Qt(-A.xmag, A.xmag, A.ymag, -A.ymag, A.znear, A.zfar)), t.name && (a.name = this.createUniqueName(t.name)), se(a, t), Promise.resolve(a);
1470
+ if (A) return t.type === "perspective" ? a = new IA(mA.radToDeg(A.yfov), A.aspectRatio || 1, A.znear || 1, A.zfar || 2e6) : t.type === "orthographic" && (a = new Qt(-A.xmag, A.xmag, A.ymag, -A.ymag, A.znear, A.zfar)), t.name && (a.name = this.createUniqueName(t.name)), se(a, t), Promise.resolve(a);
1471
1471
  console.warn("THREE.GLTFLoader: Missing camera parameters.");
1472
1472
  }
1473
1473
  loadSkin(e) {
@@ -1475,33 +1475,33 @@ class Si {
1475
1475
  for (let A = 0, i = a.joints.length; A < i; A++) t.push(this._loadNodeShallow(a.joints[A]));
1476
1476
  return a.inverseBindMatrices !== void 0 ? t.push(this.getDependency("accessor", a.inverseBindMatrices)) : t.push(null), Promise.all(t).then(function(A) {
1477
1477
  const i = A.pop(), s = A, r = [], o = [];
1478
- for (let n = 0, b = s.length; n < b; n++) {
1479
- const d = s[n];
1480
- if (d) {
1481
- r.push(d);
1482
- const g = new je();
1478
+ for (let n = 0, d = s.length; n < d; n++) {
1479
+ const b = s[n];
1480
+ if (b) {
1481
+ r.push(b);
1482
+ const g = new Se();
1483
1483
  i !== null && g.fromArray(i.array, 16 * n), o.push(g);
1484
1484
  } else console.warn('THREE.GLTFLoader: Joint "%s" could not be found.', a.joints[n]);
1485
1485
  }
1486
- return new CA(r, o);
1486
+ return new BA(r, o);
1487
1487
  });
1488
1488
  }
1489
1489
  loadAnimation(e) {
1490
- const a = this.json, t = this, A = a.animations[e], i = A.name ? A.name : "animation_" + e, s = [], r = [], o = [], n = [], b = [];
1491
- for (let d = 0, g = A.channels.length; d < g; d++) {
1492
- const h = A.channels[d], l = A.samplers[h.sampler], f = h.target, I = f.node, p = A.parameters !== void 0 ? A.parameters[l.input] : l.input, u = A.parameters !== void 0 ? A.parameters[l.output] : l.output;
1493
- f.node !== void 0 && (s.push(this.getDependency("node", I)), r.push(this.getDependency("accessor", p)), o.push(this.getDependency("accessor", u)), n.push(l), b.push(f));
1490
+ const a = this.json, t = this, A = a.animations[e], i = A.name ? A.name : "animation_" + e, s = [], r = [], o = [], n = [], d = [];
1491
+ for (let b = 0, g = A.channels.length; b < g; b++) {
1492
+ const l = A.channels[b], h = A.samplers[l.sampler], f = l.target, I = f.node, m = A.parameters !== void 0 ? A.parameters[h.input] : h.input, u = A.parameters !== void 0 ? A.parameters[h.output] : h.output;
1493
+ f.node !== void 0 && (s.push(this.getDependency("node", I)), r.push(this.getDependency("accessor", m)), o.push(this.getDependency("accessor", u)), n.push(h), d.push(f));
1494
1494
  }
1495
- return Promise.all([Promise.all(s), Promise.all(r), Promise.all(o), Promise.all(n), Promise.all(b)]).then(function(d) {
1496
- const g = d[0], h = d[1], l = d[2], f = d[3], I = d[4], p = [];
1497
- for (let u = 0, B = g.length; u < B; u++) {
1498
- const C = g[u], y = h[u], x = l[u], w = f[u], m = I[u];
1499
- if (C === void 0) continue;
1500
- C.updateMatrix && C.updateMatrix();
1501
- const Q = t._createAnimationTracks(C, y, x, w, m);
1502
- if (Q) for (let k = 0; k < Q.length; k++) p.push(Q[k]);
1495
+ return Promise.all([Promise.all(s), Promise.all(r), Promise.all(o), Promise.all(n), Promise.all(d)]).then(function(b) {
1496
+ const g = b[0], l = b[1], h = b[2], f = b[3], I = b[4], m = [];
1497
+ for (let u = 0, C = g.length; u < C; u++) {
1498
+ const B = g[u], y = l[u], k = h[u], w = f[u], p = I[u];
1499
+ if (B === void 0) continue;
1500
+ B.updateMatrix && B.updateMatrix();
1501
+ const Q = t._createAnimationTracks(B, y, k, w, p);
1502
+ if (Q) for (let x = 0; x < Q.length; x++) m.push(Q[x]);
1503
1503
  }
1504
- return new BA(i, void 0, p);
1504
+ return new CA(i, void 0, m);
1505
1505
  });
1506
1506
  }
1507
1507
  createNodeMesh(e) {
@@ -1518,11 +1518,11 @@ class Si {
1518
1518
  for (let o = 0, n = s.length; o < n; o++) i.push(a.getDependency("node", s[o]));
1519
1519
  const r = t.skin === void 0 ? Promise.resolve(null) : a.getDependency("skin", t.skin);
1520
1520
  return Promise.all([A, Promise.all(i), r]).then(function(o) {
1521
- const n = o[0], b = o[1], d = o[2];
1522
- d !== null && n.traverse(function(g) {
1523
- g.isSkinnedMesh && g.bind(d, Ri);
1521
+ const n = o[0], d = o[1], b = o[2];
1522
+ b !== null && n.traverse(function(g) {
1523
+ g.isSkinnedMesh && g.bind(b, vi);
1524
1524
  });
1525
- for (let g = 0, h = b.length; g < h; g++) n.add(b[g]);
1525
+ for (let g = 0, l = d.length; g < l; g++) n.add(d[g]);
1526
1526
  return n;
1527
1527
  });
1528
1528
  }
@@ -1539,13 +1539,13 @@ class Si {
1539
1539
  }).forEach(function(n) {
1540
1540
  r.push(n);
1541
1541
  }), this.nodeCache[e] = Promise.all(r).then(function(n) {
1542
- let b;
1543
- if (b = i.isBone === !0 ? new mA() : n.length > 1 ? new Aa() : n.length === 1 ? n[0] : new Et(), b !== n[0]) for (let d = 0, g = n.length; d < g; d++) b.add(n[d]);
1544
- if (i.name && (b.userData.name = i.name, b.name = s), se(b, i), i.extensions && fe(t, b, i), i.matrix !== void 0) {
1545
- const d = new je();
1546
- d.fromArray(i.matrix), b.applyMatrix4(d);
1547
- } else i.translation !== void 0 && b.position.fromArray(i.translation), i.rotation !== void 0 && b.quaternion.fromArray(i.rotation), i.scale !== void 0 && b.scale.fromArray(i.scale);
1548
- return A.associations.has(b) || A.associations.set(b, {}), A.associations.get(b).nodes = e, b;
1542
+ let d;
1543
+ if (d = i.isBone === !0 ? new pA() : n.length > 1 ? new Aa() : n.length === 1 ? n[0] : new Et(), d !== n[0]) for (let b = 0, g = n.length; b < g; b++) d.add(n[b]);
1544
+ if (i.name && (d.userData.name = i.name, d.name = s), se(d, i), i.extensions && fe(t, d, i), i.matrix !== void 0) {
1545
+ const b = new Se();
1546
+ b.fromArray(i.matrix), d.applyMatrix4(b);
1547
+ } else i.translation !== void 0 && d.position.fromArray(i.translation), i.rotation !== void 0 && d.quaternion.fromArray(i.rotation), i.scale !== void 0 && d.scale.fromArray(i.scale);
1548
+ return A.associations.has(d) || A.associations.set(d, {}), A.associations.get(d).nodes = e, d;
1549
1549
  }), this.nodeCache[e];
1550
1550
  }
1551
1551
  loadScene(e) {
@@ -1554,14 +1554,14 @@ class Si {
1554
1554
  const s = t.nodes || [], r = [];
1555
1555
  for (let o = 0, n = s.length; o < n; o++) r.push(A.getDependency("node", s[o]));
1556
1556
  return Promise.all(r).then(function(o) {
1557
- for (let n = 0, b = o.length; n < b; n++) i.add(o[n]);
1557
+ for (let n = 0, d = o.length; n < d; n++) i.add(o[n]);
1558
1558
  return A.associations = ((n) => {
1559
- const b = /* @__PURE__ */ new Map();
1560
- for (const [d, g] of A.associations) (d instanceof ta || d instanceof Na) && b.set(d, g);
1561
- return n.traverse((d) => {
1562
- const g = A.associations.get(d);
1563
- g != null && b.set(d, g);
1564
- }), b;
1559
+ const d = /* @__PURE__ */ new Map();
1560
+ for (const [b, g] of A.associations) (b instanceof ta || b instanceof Na) && d.set(b, g);
1561
+ return n.traverse((b) => {
1562
+ const g = A.associations.get(b);
1563
+ g != null && d.set(b, g);
1564
+ }), d;
1565
1565
  })(i), i;
1566
1566
  });
1567
1567
  }
@@ -1572,29 +1572,29 @@ class Si {
1572
1572
  g.morphTargetInfluences && o.push(g.name ? g.name : g.uuid);
1573
1573
  }) : o.push(r), oe[i.path]) {
1574
1574
  case oe.weights:
1575
- n = _a;
1575
+ n = Oa;
1576
1576
  break;
1577
1577
  case oe.rotation:
1578
- n = Ha;
1578
+ n = Ja;
1579
1579
  break;
1580
1580
  case oe.position:
1581
1581
  case oe.scale:
1582
- n = Pa;
1582
+ n = La;
1583
1583
  break;
1584
1584
  default:
1585
- t.itemSize === 1 ? n = _a : n = Pa;
1585
+ t.itemSize === 1 ? n = Oa : n = La;
1586
1586
  }
1587
- const b = A.interpolation !== void 0 ? wi[A.interpolation] : yt, d = this._getArrayFromAccessor(t);
1588
- for (let g = 0, h = o.length; g < h; g++) {
1589
- const l = new n(o[g] + "." + oe[i.path], a.array, d, b);
1590
- A.interpolation === "CUBICSPLINE" && this._createCubicSplineTrackInterpolant(l), s.push(l);
1587
+ const d = A.interpolation !== void 0 ? wi[A.interpolation] : yt, b = this._getArrayFromAccessor(t);
1588
+ for (let g = 0, l = o.length; g < l; g++) {
1589
+ const h = new n(o[g] + "." + oe[i.path], a.array, b, d);
1590
+ A.interpolation === "CUBICSPLINE" && this._createCubicSplineTrackInterpolant(h), s.push(h);
1591
1591
  }
1592
1592
  return s;
1593
1593
  }
1594
1594
  _getArrayFromAccessor(e) {
1595
1595
  let a = e.array;
1596
1596
  if (e.normalized) {
1597
- const t = Ma(a.constructor), A = new Float32Array(a.length);
1597
+ const t = Da(a.constructor), A = new Float32Array(a.length);
1598
1598
  for (let i = 0, s = a.length; i < s; i++) A[i] = a[i] * t;
1599
1599
  a = A;
1600
1600
  }
@@ -1602,7 +1602,7 @@ class Si {
1602
1602
  }
1603
1603
  _createCubicSplineTrackInterpolant(e) {
1604
1604
  e.createInterpolant = function(a) {
1605
- return new (this instanceof Ha ? yi : St)(this.times, this.values, this.getValueSize() / 3, a);
1605
+ return new (this instanceof Ja ? yi : Ft)(this.times, this.values, this.getValueSize() / 3, a);
1606
1606
  }, e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline = !0;
1607
1607
  }
1608
1608
  }
@@ -1614,7 +1614,7 @@ function at(c, e, a) {
1614
1614
  });
1615
1615
  }
1616
1616
  for (const s in t) {
1617
- const r = ja[s] || s.toLowerCase();
1617
+ const r = Sa[s] || s.toLowerCase();
1618
1618
  r in c.attributes || A.push(i(t[s], r));
1619
1619
  }
1620
1620
  if (e.indices !== void 0 && !c.index) {
@@ -1623,71 +1623,71 @@ function at(c, e, a) {
1623
1623
  });
1624
1624
  A.push(s);
1625
1625
  }
1626
- return Da.workingColorSpace !== K && "COLOR_0" in t && console.warn(`THREE.GLTFLoader: Converting vertex colors from "srgb-linear" to "${Da.workingColorSpace}" not supported.`), se(c, e), function(s, r, o) {
1627
- const n = r.attributes, b = new va();
1626
+ return ja.workingColorSpace !== K && "COLOR_0" in t && console.warn(`THREE.GLTFLoader: Converting vertex colors from "srgb-linear" to "${ja.workingColorSpace}" not supported.`), se(c, e), function(s, r, o) {
1627
+ const n = r.attributes, d = new Ra();
1628
1628
  if (n.POSITION === void 0) return;
1629
1629
  {
1630
- const h = o.json.accessors[n.POSITION], l = h.min, f = h.max;
1631
- if (l === void 0 || f === void 0) return void console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");
1632
- if (b.set(new M(l[0], l[1], l[2]), new M(f[0], f[1], f[2])), h.normalized) {
1633
- const I = Ma(ke[h.componentType]);
1634
- b.min.multiplyScalar(I), b.max.multiplyScalar(I);
1630
+ const l = o.json.accessors[n.POSITION], h = l.min, f = l.max;
1631
+ if (h === void 0 || f === void 0) return void console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");
1632
+ if (d.set(new D(h[0], h[1], h[2]), new D(f[0], f[1], f[2])), l.normalized) {
1633
+ const I = Da(xe[l.componentType]);
1634
+ d.min.multiplyScalar(I), d.max.multiplyScalar(I);
1635
1635
  }
1636
1636
  }
1637
- const d = r.targets;
1638
- if (d !== void 0) {
1639
- const h = new M(), l = new M();
1640
- for (let f = 0, I = d.length; f < I; f++) {
1641
- const p = d[f];
1642
- if (p.POSITION !== void 0) {
1643
- const u = o.json.accessors[p.POSITION], B = u.min, C = u.max;
1644
- if (B !== void 0 && C !== void 0) {
1645
- if (l.setX(Math.max(Math.abs(B[0]), Math.abs(C[0]))), l.setY(Math.max(Math.abs(B[1]), Math.abs(C[1]))), l.setZ(Math.max(Math.abs(B[2]), Math.abs(C[2]))), u.normalized) {
1646
- const y = Ma(ke[u.componentType]);
1647
- l.multiplyScalar(y);
1637
+ const b = r.targets;
1638
+ if (b !== void 0) {
1639
+ const l = new D(), h = new D();
1640
+ for (let f = 0, I = b.length; f < I; f++) {
1641
+ const m = b[f];
1642
+ if (m.POSITION !== void 0) {
1643
+ const u = o.json.accessors[m.POSITION], C = u.min, B = u.max;
1644
+ if (C !== void 0 && B !== void 0) {
1645
+ if (h.setX(Math.max(Math.abs(C[0]), Math.abs(B[0]))), h.setY(Math.max(Math.abs(C[1]), Math.abs(B[1]))), h.setZ(Math.max(Math.abs(C[2]), Math.abs(B[2]))), u.normalized) {
1646
+ const y = Da(xe[u.componentType]);
1647
+ h.multiplyScalar(y);
1648
1648
  }
1649
- h.max(l);
1649
+ l.max(h);
1650
1650
  } else console.warn("THREE.GLTFLoader: Missing min/max properties for accessor POSITION.");
1651
1651
  }
1652
1652
  }
1653
- b.expandByVector(h);
1653
+ d.expandByVector(l);
1654
1654
  }
1655
- s.boundingBox = b;
1656
- const g = new DA();
1657
- b.getCenter(g.center), g.radius = b.min.distanceTo(b.max) / 2, s.boundingSphere = g;
1655
+ s.boundingBox = d;
1656
+ const g = new jA();
1657
+ d.getCenter(g.center), g.radius = d.min.distanceTo(d.max) / 2, s.boundingSphere = g;
1658
1658
  }(c, e, a), Promise.all(A).then(function() {
1659
1659
  return e.targets !== void 0 ? function(s, r, o) {
1660
- let n = !1, b = !1, d = !1;
1660
+ let n = !1, d = !1, b = !1;
1661
1661
  for (let f = 0, I = r.length; f < I; f++) {
1662
- const p = r[f];
1663
- if (p.POSITION !== void 0 && (n = !0), p.NORMAL !== void 0 && (b = !0), p.COLOR_0 !== void 0 && (d = !0), n && b && d) break;
1662
+ const m = r[f];
1663
+ if (m.POSITION !== void 0 && (n = !0), m.NORMAL !== void 0 && (d = !0), m.COLOR_0 !== void 0 && (b = !0), n && d && b) break;
1664
1664
  }
1665
- if (!n && !b && !d) return Promise.resolve(s);
1666
- const g = [], h = [], l = [];
1665
+ if (!n && !d && !b) return Promise.resolve(s);
1666
+ const g = [], l = [], h = [];
1667
1667
  for (let f = 0, I = r.length; f < I; f++) {
1668
- const p = r[f];
1668
+ const m = r[f];
1669
1669
  if (n) {
1670
- const u = p.POSITION !== void 0 ? o.getDependency("accessor", p.POSITION) : s.attributes.position;
1670
+ const u = m.POSITION !== void 0 ? o.getDependency("accessor", m.POSITION) : s.attributes.position;
1671
1671
  g.push(u);
1672
1672
  }
1673
- if (b) {
1674
- const u = p.NORMAL !== void 0 ? o.getDependency("accessor", p.NORMAL) : s.attributes.normal;
1675
- h.push(u);
1676
- }
1677
1673
  if (d) {
1678
- const u = p.COLOR_0 !== void 0 ? o.getDependency("accessor", p.COLOR_0) : s.attributes.color;
1674
+ const u = m.NORMAL !== void 0 ? o.getDependency("accessor", m.NORMAL) : s.attributes.normal;
1679
1675
  l.push(u);
1680
1676
  }
1677
+ if (b) {
1678
+ const u = m.COLOR_0 !== void 0 ? o.getDependency("accessor", m.COLOR_0) : s.attributes.color;
1679
+ h.push(u);
1680
+ }
1681
1681
  }
1682
- return Promise.all([Promise.all(g), Promise.all(h), Promise.all(l)]).then(function(f) {
1683
- const I = f[0], p = f[1], u = f[2];
1684
- return n && (s.morphAttributes.position = I), b && (s.morphAttributes.normal = p), d && (s.morphAttributes.color = u), s.morphTargetsRelative = !0, s;
1682
+ return Promise.all([Promise.all(g), Promise.all(l), Promise.all(h)]).then(function(f) {
1683
+ const I = f[0], m = f[1], u = f[2];
1684
+ return n && (s.morphAttributes.position = I), d && (s.morphAttributes.normal = m), b && (s.morphAttributes.color = u), s.morphTargetsRelative = !0, s;
1685
1685
  });
1686
1686
  }(c, e.targets, a) : c;
1687
1687
  });
1688
1688
  }
1689
1689
  const ca = /* @__PURE__ */ new WeakMap();
1690
- class vt extends Fa {
1690
+ class Rt extends Ma {
1691
1691
  constructor(e) {
1692
1692
  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" };
1693
1693
  }
@@ -1701,7 +1701,7 @@ class vt extends Fa {
1701
1701
  return this.workerLimit = e, this;
1702
1702
  }
1703
1703
  load(e, a, t, A) {
1704
- const i = new Be(this.manager);
1704
+ const i = new Ce(this.manager);
1705
1705
  i.setPath(this.path), i.setResponseType("arraybuffer"), i.setRequestHeader(this.requestHeader), i.setWithCredentials(this.withCredentials), i.load(e, (s) => {
1706
1706
  this.parse(s, a, A);
1707
1707
  }, t, A);
@@ -1723,8 +1723,8 @@ class vt extends Fa {
1723
1723
  if (e.byteLength === 0) throw new Error("THREE.DRACOLoader: Unable to re-decode a buffer with different settings. Buffer has already been transferred.");
1724
1724
  }
1725
1725
  let A;
1726
- const i = this.workerNextTaskID++, s = e.byteLength, r = this._getWorker(i, s).then((o) => (A = o, new Promise((n, b) => {
1727
- A._callbacks[i] = { resolve: n, reject: b }, A.postMessage({ type: "decode", id: i, taskConfig: a, buffer: e }, [e]);
1726
+ const i = this.workerNextTaskID++, s = e.byteLength, r = this._getWorker(i, s).then((o) => (A = o, new Promise((n, d) => {
1727
+ A._callbacks[i] = { resolve: n, reject: d }, A.postMessage({ type: "decode", id: i, taskConfig: a, buffer: e }, [e]);
1728
1728
  }))).then((o) => this._createGeometry(o.geometry));
1729
1729
  return r.catch(() => !0).then(() => {
1730
1730
  A && i && this._releaseTask(A, i);
@@ -1732,20 +1732,20 @@ class vt extends Fa {
1732
1732
  }
1733
1733
  _createGeometry(e) {
1734
1734
  const a = new ea();
1735
- e.index && a.setIndex(new le(e.index.array, 1));
1735
+ e.index && a.setIndex(new he(e.index.array, 1));
1736
1736
  for (let t = 0; t < e.attributes.length; t++) {
1737
- const A = e.attributes[t], i = A.name, s = A.array, r = A.itemSize, o = new le(s, r);
1737
+ const A = e.attributes[t], i = A.name, s = A.array, r = A.itemSize, o = new he(s, r);
1738
1738
  i === "color" && (this._assignVertexColorSpace(o, A.vertexColorSpace), o.normalized = !(s instanceof Float32Array)), a.setAttribute(i, o);
1739
1739
  }
1740
1740
  return a;
1741
1741
  }
1742
1742
  _assignVertexColorSpace(e, a) {
1743
1743
  if (a !== re) return;
1744
- const t = new he();
1745
- for (let A = 0, i = e.count; A < i; A++) t.fromBufferAttribute(e, A), Da.toWorkingColorSpace(t, re), e.setXYZ(A, t.r, t.g, t.b);
1744
+ const t = new le();
1745
+ for (let A = 0, i = e.count; A < i; A++) t.fromBufferAttribute(e, A), ja.toWorkingColorSpace(t, re), e.setXYZ(A, t.r, t.g, t.b);
1746
1746
  }
1747
1747
  _loadLibrary(e, a) {
1748
- const t = new Be(this.manager);
1748
+ const t = new Ce(this.manager);
1749
1749
  return t.setPath(this.decoderPath), t.setResponseType(a), t.setWithCredentials(this.withCredentials), new Promise((A, i) => {
1750
1750
  t.load(e, A, void 0, i);
1751
1751
  });
@@ -1759,7 +1759,7 @@ class vt extends Fa {
1759
1759
  return e ? a.push(this._loadLibrary("draco_decoder.js", "text")) : (a.push(this._loadLibrary("draco_wasm_wrapper.js", "text")), a.push(this._loadLibrary("draco_decoder.wasm", "arraybuffer"))), this.decoderPending = Promise.all(a).then((t) => {
1760
1760
  const A = t[0];
1761
1761
  e || (this.decoderConfig.wasmBinary = t[1]);
1762
- const i = vi.toString(), s = ["/* draco decoder */", A, "", "/* worker */", i.substring(i.indexOf("{") + 1, i.lastIndexOf("}"))].join(`
1762
+ const i = Ri.toString(), s = ["/* draco decoder */", A, "", "/* worker */", i.substring(i.indexOf("{") + 1, i.lastIndexOf("}"))].join(`
1763
1763
  `);
1764
1764
  this.workerSourceURL = URL.createObjectURL(new Blob([s]));
1765
1765
  }), this.decoderPending;
@@ -1799,10 +1799,10 @@ class vt extends Fa {
1799
1799
  return this.workerPool.length = 0, this.workerSourceURL !== "" && URL.revokeObjectURL(this.workerSourceURL), this;
1800
1800
  }
1801
1801
  }
1802
- function vi() {
1802
+ function Ri() {
1803
1803
  let c, e;
1804
1804
  function a(t, A, i, s, r, o) {
1805
- const n = o.num_components(), b = i.num_points() * n, d = b * r.BYTES_PER_ELEMENT, g = function(f, I) {
1805
+ const n = o.num_components(), d = i.num_points() * n, b = d * r.BYTES_PER_ELEMENT, g = function(f, I) {
1806
1806
  switch (I) {
1807
1807
  case Float32Array:
1808
1808
  return f.DT_FLOAT32;
@@ -1819,10 +1819,10 @@ function vi() {
1819
1819
  case Uint32Array:
1820
1820
  return f.DT_UINT32;
1821
1821
  }
1822
- }(t, r), h = t._malloc(d);
1823
- A.GetAttributeDataArrayForAllPoints(i, o, g, d, h);
1824
- const l = new r(t.HEAPF32.buffer, h, b).slice();
1825
- return t._free(h), { name: s, array: l, itemSize: n };
1822
+ }(t, r), l = t._malloc(b);
1823
+ A.GetAttributeDataArrayForAllPoints(i, o, g, b, l);
1824
+ const h = new r(t.HEAPF32.buffer, l, d).slice();
1825
+ return t._free(l), { name: s, array: h, itemSize: n };
1826
1826
  }
1827
1827
  onmessage = function(t) {
1828
1828
  const A = t.data;
@@ -1839,38 +1839,38 @@ function vi() {
1839
1839
  e.then((r) => {
1840
1840
  const o = r.draco, n = new o.Decoder();
1841
1841
  try {
1842
- const b = function(g, h, l, f) {
1843
- const I = f.attributeIDs, p = f.attributeTypes;
1844
- let u, B;
1845
- const C = h.GetEncodedGeometryType(l);
1846
- if (C === g.TRIANGULAR_MESH) u = new g.Mesh(), B = h.DecodeArrayToMesh(l, l.byteLength, u);
1842
+ const d = function(g, l, h, f) {
1843
+ const I = f.attributeIDs, m = f.attributeTypes;
1844
+ let u, C;
1845
+ const B = l.GetEncodedGeometryType(h);
1846
+ if (B === g.TRIANGULAR_MESH) u = new g.Mesh(), C = l.DecodeArrayToMesh(h, h.byteLength, u);
1847
1847
  else {
1848
- if (C !== g.POINT_CLOUD) throw new Error("THREE.DRACOLoader: Unexpected geometry type.");
1849
- u = new g.PointCloud(), B = h.DecodeArrayToPointCloud(l, l.byteLength, u);
1848
+ if (B !== g.POINT_CLOUD) throw new Error("THREE.DRACOLoader: Unexpected geometry type.");
1849
+ u = new g.PointCloud(), C = l.DecodeArrayToPointCloud(h, h.byteLength, u);
1850
1850
  }
1851
- if (!B.ok() || u.ptr === 0) throw new Error("THREE.DRACOLoader: Decoding failed: " + B.error_msg());
1851
+ if (!C.ok() || u.ptr === 0) throw new Error("THREE.DRACOLoader: Decoding failed: " + C.error_msg());
1852
1852
  const y = { index: null, attributes: [] };
1853
- for (const x in I) {
1854
- const w = self[p[x]];
1855
- let m, Q;
1856
- if (f.useUniqueIDs) Q = I[x], m = h.GetAttributeByUniqueId(u, Q);
1853
+ for (const k in I) {
1854
+ const w = self[m[k]];
1855
+ let p, Q;
1856
+ if (f.useUniqueIDs) Q = I[k], p = l.GetAttributeByUniqueId(u, Q);
1857
1857
  else {
1858
- if (Q = h.GetAttributeId(u, g[I[x]]), Q === -1) continue;
1859
- m = h.GetAttribute(u, Q);
1858
+ if (Q = l.GetAttributeId(u, g[I[k]]), Q === -1) continue;
1859
+ p = l.GetAttribute(u, Q);
1860
1860
  }
1861
- const k = a(g, h, u, x, w, m);
1862
- x === "color" && (k.vertexColorSpace = f.vertexColorSpace), y.attributes.push(k);
1861
+ const x = a(g, l, u, k, w, p);
1862
+ k === "color" && (x.vertexColorSpace = f.vertexColorSpace), y.attributes.push(x);
1863
1863
  }
1864
- return C === g.TRIANGULAR_MESH && (y.index = function(x, w, m) {
1865
- const Q = m.num_faces(), k = 3 * Q, D = 4 * k, F = x._malloc(D);
1866
- w.GetTrianglesUInt32Array(m, D, F);
1867
- const _ = new Uint32Array(x.HEAPF32.buffer, F, k).slice();
1868
- return x._free(F), { array: _, itemSize: 1 };
1869
- }(g, h, u)), g.destroy(u), y;
1870
- }(o, n, new Int8Array(i), s), d = b.attributes.map((g) => g.array.buffer);
1871
- b.index && d.push(b.index.array.buffer), self.postMessage({ type: "decode", id: A.id, geometry: b }, d);
1872
- } catch (b) {
1873
- console.error(b), self.postMessage({ type: "error", id: A.id, error: b.message });
1864
+ return B === g.TRIANGULAR_MESH && (y.index = function(k, w, p) {
1865
+ const Q = p.num_faces(), x = 3 * Q, j = 4 * x, M = k._malloc(j);
1866
+ w.GetTrianglesUInt32Array(p, j, M);
1867
+ const O = new Uint32Array(k.HEAPF32.buffer, M, x).slice();
1868
+ return k._free(M), { array: O, itemSize: 1 };
1869
+ }(g, l, u)), g.destroy(u), y;
1870
+ }(o, n, new Int8Array(i), s), b = d.attributes.map((g) => g.array.buffer);
1871
+ d.index && b.push(d.index.array.buffer), self.postMessage({ type: "decode", id: A.id, geometry: d }, b);
1872
+ } catch (d) {
1873
+ console.error(d), self.postMessage({ type: "error", id: A.id, error: d.message });
1874
1874
  } finally {
1875
1875
  o.destroy(n);
1876
1876
  }
@@ -1878,7 +1878,7 @@ function vi() {
1878
1878
  }
1879
1879
  };
1880
1880
  }
1881
- class Fi {
1881
+ class Mi {
1882
1882
  constructor(e = 4) {
1883
1883
  this.pool = e, this.queue = [], this.workers = [], this.workersResolve = [], this.workerStatus = 0;
1884
1884
  }
@@ -1915,13 +1915,13 @@ class Fi {
1915
1915
  this.workers.forEach((e) => e.terminate()), this.workersResolve.length = 0, this.workers.length = 0, this.queue.length = 0, this.workerStatus = 0;
1916
1916
  }
1917
1917
  }
1918
- const Ft = 9, Tt = 15, Lt = 16, Gt = 22, Ut = 37, Nt = 43, Pt = 76, _t = 83, Ht = 97, qt = 100, Ot = 103, Jt = 109, Kt = 165, zt = 166, Ta = 1000066e3;
1918
+ const Mt = 9, Tt = 15, Gt = 16, Ut = 22, Ht = 37, Nt = 43, Lt = 76, Ot = 83, Jt = 97, Pt = 100, qt = 103, _t = 109, Kt = 165, zt = 166, Ta = 1000066e3;
1919
1919
  class Ti {
1920
1920
  constructor() {
1921
1921
  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;
1922
1922
  }
1923
1923
  }
1924
- class Fe {
1924
+ class Me {
1925
1925
  constructor(e, a, t, A) {
1926
1926
  this._dataView = void 0, this._littleEndian = void 0, this._offset = void 0, this._dataView = new DataView(e.buffer, e.byteOffset + a, t), this._littleEndian = A, this._offset = 0;
1927
1927
  }
@@ -1960,34 +1960,34 @@ class Fe {
1960
1960
  return A < e && this._offset++, new Uint8Array(this._dataView.buffer, this._dataView.byteOffset + t, A);
1961
1961
  }
1962
1962
  }
1963
- const U = [171, 75, 84, 88, 32, 50, 48, 187, 13, 10, 26, 10];
1963
+ const H = [171, 75, 84, 88, 32, 50, 48, 187, 13, 10, 26, 10];
1964
1964
  function tt(c) {
1965
1965
  return new TextDecoder().decode(c);
1966
1966
  }
1967
- let da, ie, Ra;
1968
- const ba = { env: { emscripten_notify_memory_growth: function(c) {
1969
- Ra = new Uint8Array(ie.exports.memory.buffer);
1967
+ let ba, ie, va;
1968
+ const da = { env: { emscripten_notify_memory_growth: function(c) {
1969
+ va = new Uint8Array(ie.exports.memory.buffer);
1970
1970
  } } };
1971
- class Li {
1971
+ class Gi {
1972
1972
  init() {
1973
- return da || (da = typeof fetch < "u" ? fetch("data:application/wasm;base64," + At).then((e) => e.arrayBuffer()).then((e) => WebAssembly.instantiate(e, ba)).then(this._init) : WebAssembly.instantiate(Buffer.from(At, "base64"), ba).then(this._init), da);
1973
+ return ba || (ba = typeof fetch < "u" ? fetch("data:application/wasm;base64," + At).then((e) => e.arrayBuffer()).then((e) => WebAssembly.instantiate(e, da)).then(this._init) : WebAssembly.instantiate(Buffer.from(At, "base64"), da).then(this._init), ba);
1974
1974
  }
1975
1975
  _init(e) {
1976
- ie = e.instance, ba.env.emscripten_notify_memory_growth(0);
1976
+ ie = e.instance, da.env.emscripten_notify_memory_growth(0);
1977
1977
  }
1978
1978
  decode(e, a = 0) {
1979
1979
  if (!ie) throw new Error("ZSTDDecoder: Await .init() before decoding.");
1980
1980
  const t = e.byteLength, A = ie.exports.malloc(t);
1981
- Ra.set(e, A), a = a || Number(ie.exports.ZSTD_findDecompressedSize(A, t));
1982
- const i = ie.exports.malloc(a), s = ie.exports.ZSTD_decompress(i, a, A, t), r = Ra.slice(i, i + s);
1981
+ va.set(e, A), a = a || Number(ie.exports.ZSTD_findDecompressedSize(A, t));
1982
+ const i = ie.exports.malloc(a), s = ie.exports.ZSTD_decompress(i, a, A, t), r = va.slice(i, i + s);
1983
1983
  return ie.exports.free(A), ie.exports.free(i), r;
1984
1984
  }
1985
1985
  }
1986
- const At = "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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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", la = /* @__PURE__ */ new WeakMap();
1987
- let ha, ga = 0;
1988
- class P extends Fa {
1986
+ const At = "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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/QQ8hAiABIABJBEAgAUEEdCAAbiECCyAAQQh2IgEgAkEYbCIAQYwIaigCAGwgAEGICGooAgBqIgJBA3YgAmogAEGACGooAgAgAEGECGooAgAgAWxqSQs3ACAAIAMgBCAFQYAQEDMiBRADBEAgBQ8LIAUgBEkEfyABIAIgAyAFaiAEIAVrIAAQMgVBuH8LC78DAQN/IwBBIGsiBSQAIAVBCGogAiADEAYiAhADRQRAIAAgAWoiB0F9aiEGIAUgBBAOIARBBGohAiAFLQACIQMDQEEAIAAgBkkgBUEIahAEGwRAIAAgAiAFQQhqIAMQAkECdGoiBC8BADsAACAFQQhqIAQtAAIQASAAIAQtAANqIgQgAiAFQQhqIAMQAkECdGoiAC8BADsAACAFQQhqIAAtAAIQASAEIAAtAANqIQAMAQUgB0F+aiEEA0AgBUEIahAEIAAgBEtyRQRAIAAgAiAFQQhqIAMQAkECdGoiBi8BADsAACAFQQhqIAYtAAIQASAAIAYtAANqIQAMAQsLA0AgACAES0UEQCAAIAIgBUEIaiADEAJBAnRqIgYvAQA7AAAgBUEIaiAGLQACEAEgACAGLQADaiEADAELCwJAIAAgB08NACAAIAIgBUEIaiADEAIiA0ECdGoiAC0AADoAACAALQADQQFGBEAgBUEIaiAALQACEAEMAQsgBSgCDEEfSw0AIAVBCGogAiADQQJ0ai0AAhABIAUoAgxBIUkNACAFQSA2AgwLIAFBbCAFQQhqEAobIQILCwsgBUEgaiQAIAILkgIBBH8jAEFAaiIJJAAgCSADQTQQCyEDAkAgBEECSA0AIAMgBEECdGooAgAhCSADQTxqIAgQIyADQQE6AD8gAyACOgA+QQAhBCADKAI8IQoDQCAEIAlGDQEgACAEQQJ0aiAKNgEAIARBAWohBAwAAAsAC0EAIQkDQCAGIAlGRQRAIAMgBSAJQQF0aiIKLQABIgtBAnRqIgwoAgAhBCADQTxqIAotAABBCHQgCGpB//8DcRAjIANBAjoAPyADIAcgC2siCiACajoAPiAEQQEgASAKa3RqIQogAygCPCELA0AgACAEQQJ0aiALNgEAIARBAWoiBCAKSQ0ACyAMIAo2AgAgCUEBaiEJDAELCyADQUBrJAALowIBCX8jAEHQAGsiCSQAIAlBEGogBUE0EAsaIAcgBmshDyAHIAFrIRADQAJAIAMgCkcEQEEBIAEgByACIApBAXRqIgYtAAEiDGsiCGsiC3QhDSAGLQAAIQ4gCUEQaiAMQQJ0aiIMKAIAIQYgCyAPTwRAIAAgBkECdGogCyAIIAUgCEE0bGogCCAQaiIIQQEgCEEBShsiCCACIAQgCEECdGooAgAiCEEBdGogAyAIayAHIA4QYyAGIA1qIQgMAgsgCUEMaiAOECMgCUEBOgAPIAkgCDoADiAGIA1qIQggCSgCDCELA0AgBiAITw0CIAAgBkECdGogCzYBACAGQQFqIQYMAAALAAsgCUHQAGokAA8LIAwgCDYCACAKQQFqIQoMAAALAAs0ACAAIAMgBCAFEDYiBRADBEAgBQ8LIAUgBEkEfyABIAIgAyAFaiAEIAVrIAAQNAVBuH8LCyMAIAA/AEEQdGtB//8DakEQdkAAQX9GBEBBAA8LQQAQAEEBCzsBAX8gAgRAA0AgACABIAJBgCAgAkGAIEkbIgMQCyEAIAFBgCBqIQEgAEGAIGohACACIANrIgINAAsLCwYAIAAQAwsLqBUJAEGICAsNAQAAAAEAAAACAAAAAgBBoAgLswYBAAAAAQAAAAIAAAACAAAAJgAAAIIAAAAhBQAASgAAAGcIAAAmAAAAwAEAAIAAAABJBQAASgAAAL4IAAApAAAALAIAAIAAAABJBQAASgAAAL4IAAAvAAAAygIAAIAAAACKBQAASgAAAIQJAAA1AAAAcwMAAIAAAACdBQAASgAAAKAJAAA9AAAAgQMAAIAAAADrBQAASwAAAD4KAABEAAAAngMAAIAAAABNBgAASwAAAKoKAABLAAAAswMAAIAAAADBBgAATQAAAB8NAABNAAAAUwQAAIAAAAAjCAAAUQAAAKYPAABUAAAAmQQAAIAAAABLCQAAVwAAALESAABYAAAA2gQAAIAAAABvCQAAXQAAACMUAABUAAAARQUAAIAAAABUCgAAagAAAIwUAABqAAAArwUAAIAAAAB2CQAAfAAAAE4QAAB8AAAA0gIAAIAAAABjBwAAkQAAAJAHAACSAAAAAAAAAAEAAAABAAAABQAAAA0AAAAdAAAAPQAAAH0AAAD9AAAA/QEAAP0DAAD9BwAA/Q8AAP0fAAD9PwAA/X8AAP3/AAD9/wEA/f8DAP3/BwD9/w8A/f8fAP3/PwD9/38A/f//AP3//wH9//8D/f//B/3//w/9//8f/f//P/3//38AAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAAAMAAAAEAAAABQAAAAYAAAAHAAAACAAAAAkAAAAKAAAACwAAAAwAAAANAAAADgAAAA8AAAAQAAAAEQAAABIAAAATAAAAFAAAABUAAAAWAAAAFwAAABgAAAAZAAAAGgAAABsAAAAcAAAAHQAAAB4AAAAfAAAAIAAAACEAAAAiAAAAIwAAACUAAAAnAAAAKQAAACsAAAAvAAAAMwAAADsAAABDAAAAUwAAAGMAAACDAAAAAwEAAAMCAAADBAAAAwgAAAMQAAADIAAAA0AAAAOAAAADAAEAQeAPC1EBAAAAAQAAAAEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAEAAAABQAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAQcQQC4sBAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABIAAAAUAAAAFgAAABgAAAAcAAAAIAAAACgAAAAwAAAAQAAAAIAAAAAAAQAAAAIAAAAEAAAACAAAABAAAAAgAAAAQAAAAIAAAAAAAQBBkBIL5gQBAAAAAQAAAAEAAAABAAAAAgAAAAIAAAADAAAAAwAAAAQAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAAAEAAAAEAAAACAAAAAAAAAABAAEBBgAAAAAAAAQAAAAAEAAABAAAAAAgAAAFAQAAAAAAAAUDAAAAAAAABQQAAAAAAAAFBgAAAAAAAAUHAAAAAAAABQkAAAAAAAAFCgAAAAAAAAUMAAAAAAAABg4AAAAAAAEFEAAAAAAAAQUUAAAAAAABBRYAAAAAAAIFHAAAAAAAAwUgAAAAAAAEBTAAAAAgAAYFQAAAAAAABwWAAAAAAAAIBgABAAAAAAoGAAQAAAAADAYAEAAAIAAABAAAAAAAAAAEAQAAAAAAAAUCAAAAIAAABQQAAAAAAAAFBQAAACAAAAUHAAAAAAAABQgAAAAgAAAFCgAAAAAAAAULAAAAAAAABg0AAAAgAAEFEAAAAAAAAQUSAAAAIAABBRYAAAAAAAIFGAAAACAAAwUgAAAAAAADBSgAAAAAAAYEQAAAABAABgRAAAAAIAAHBYAAAAAAAAkGAAIAAAAACwYACAAAMAAABAAAAAAQAAAEAQAAACAAAAUCAAAAIAAABQMAAAAgAAAFBQAAACAAAAUGAAAAIAAABQgAAAAgAAAFCQAAACAAAAULAAAAIAAABQwAAAAAAAAGDwAAACAAAQUSAAAAIAABBRQAAAAgAAIFGAAAACAAAgUcAAAAIAADBSgAAAAgAAQFMAAAAAAAEAYAAAEAAAAPBgCAAAAAAA4GAEAAAAAADQYAIABBgBcLhwIBAAEBBQAAAAAAAAUAAAAAAAAGBD0AAAAAAAkF/QEAAAAADwX9fwAAAAAVBf3/HwAAAAMFBQAAAAAABwR9AAAAAAAMBf0PAAAAABIF/f8DAAAAFwX9/38AAAAFBR0AAAAAAAgE/QAAAAAADgX9PwAAAAAUBf3/DwAAAAIFAQAAABAABwR9AAAAAAALBf0HAAAAABEF/f8BAAAAFgX9/z8AAAAEBQ0AAAAQAAgE/QAAAAAADQX9HwAAAAATBf3/BwAAAAEFAQAAABAABgQ9AAAAAAAKBf0DAAAAABAF/f8AAAAAHAX9//8PAAAbBf3//wcAABoF/f//AwAAGQX9//8BAAAYBf3//wBBkBkLhgQBAAEBBgAAAAAAAAYDAAAAAAAABAQAAAAgAAAFBQAAAAAAAAUGAAAAAAAABQgAAAAAAAAFCQAAAAAAAAULAAAAAAAABg0AAAAAAAAGEAAAAAAAAAYTAAAAAAAABhYAAAAAAAAGGQAAAAAAAAYcAAAAAAAABh8AAAAAAAAGIgAAAAAAAQYlAAAAAAABBikAAAAAAAIGLwAAAAAAAwY7AAAAAAAEBlMAAAAAAAcGgwAAAAAACQYDAgAAEAAABAQAAAAAAAAEBQAAACAAAAUGAAAAAAAABQcAAAAgAAAFCQAAAAAAAAUKAAAAAAAABgwAAAAAAAAGDwAAAAAAAAYSAAAAAAAABhUAAAAAAAAGGAAAAAAAAAYbAAAAAAAABh4AAAAAAAAGIQAAAAAAAQYjAAAAAAABBicAAAAAAAIGKwAAAAAAAwYzAAAAAAAEBkMAAAAAAAUGYwAAAAAACAYDAQAAIAAABAQAAAAwAAAEBAAAABAAAAQFAAAAIAAABQcAAAAgAAAFCAAAACAAAAUKAAAAIAAABQsAAAAAAAAGDgAAAAAAAAYRAAAAAAAABhQAAAAAAAAGFwAAAAAAAAYaAAAAAAAABh0AAAAAAAAGIAAAAAAAEAYDAAEAAAAPBgOAAAAAAA4GA0AAAAAADQYDIAAAAAAMBgMQAAAAAAsGAwgAAAAACgYDBABBpB0L2QEBAAAAAwAAAAcAAAAPAAAAHwAAAD8AAAB/AAAA/wAAAP8BAAD/AwAA/wcAAP8PAAD/HwAA/z8AAP9/AAD//wAA//8BAP//AwD//wcA//8PAP//HwD//z8A//9/AP///wD///8B////A////wf///8P////H////z////9/AAAAAAEAAAACAAAABAAAAAAAAAACAAAABAAAAAgAAAAAAAAAAQAAAAIAAAABAAAABAAAAAQAAAAEAAAABAAAAAgAAAAIAAAACAAAAAcAAAAIAAAACQAAAAoAAAALAEGgIAsDwBBQ", ha = /* @__PURE__ */ new WeakMap();
1987
+ let la, ga = 0;
1988
+ class L extends Ma {
1989
1989
  constructor(e) {
1990
- super(e), this.transcoderPath = "", this.transcoderBinary = null, this.transcoderPending = null, this.workerPool = new Fi(), 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+.');
1990
+ super(e), this.transcoderPath = "", this.transcoderBinary = null, this.transcoderPending = null, this.workerPool = new Mi(), 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+.');
1991
1991
  }
1992
1992
  setTranscoderPath(e) {
1993
1993
  return this.transcoderPath = e, this;
@@ -2003,17 +2003,17 @@ class P extends Fa {
2003
2003
  }
2004
2004
  init() {
2005
2005
  if (!this.transcoderPending) {
2006
- const e = new Be(this.manager);
2006
+ const e = new Ce(this.manager);
2007
2007
  e.setPath(this.transcoderPath), e.setWithCredentials(this.withCredentials);
2008
- const a = e.loadAsync("basis_transcoder.js"), t = new Be(this.manager);
2008
+ const a = e.loadAsync("basis_transcoder.js"), t = new Ce(this.manager);
2009
2009
  t.setPath(this.transcoderPath), t.setResponseType("arraybuffer"), t.setWithCredentials(this.withCredentials);
2010
2010
  const A = t.loadAsync("basis_transcoder.wasm");
2011
2011
  this.transcoderPending = Promise.all([a, A]).then(([i, s]) => {
2012
- const r = P.BasisWorker.toString(), o = ["/* constants */", "let _EngineFormat = " + JSON.stringify(P.EngineFormat), "let _EngineType = " + JSON.stringify(P.EngineType), "let _TranscoderFormat = " + JSON.stringify(P.TranscoderFormat), "let _BasisFormat = " + JSON.stringify(P.BasisFormat), "/* basis_transcoder.js */", i, "/* worker */", r.substring(r.indexOf("{") + 1, r.lastIndexOf("}"))].join(`
2012
+ const r = L.BasisWorker.toString(), o = ["/* constants */", "let _EngineFormat = " + JSON.stringify(L.EngineFormat), "let _EngineType = " + JSON.stringify(L.EngineType), "let _TranscoderFormat = " + JSON.stringify(L.TranscoderFormat), "let _BasisFormat = " + JSON.stringify(L.BasisFormat), "/* basis_transcoder.js */", i, "/* worker */", r.substring(r.indexOf("{") + 1, r.lastIndexOf("}"))].join(`
2013
2013
  `);
2014
2014
  this.workerSourceURL = URL.createObjectURL(new Blob([o])), this.transcoderBinary = s, this.workerPool.setWorkerCreator(() => {
2015
- const n = new Worker(this.workerSourceURL), b = this.transcoderBinary.slice(0);
2016
- return n.postMessage({ type: "init", config: this.workerConfig, transcoderBinary: b }, [b]), n;
2015
+ const n = new Worker(this.workerSourceURL), d = this.transcoderBinary.slice(0);
2016
+ return n.postMessage({ type: "init", config: this.workerConfig, transcoderBinary: d }, [d]), n;
2017
2017
  });
2018
2018
  }), ga > 0 && console.warn("THREE.KTX2Loader: Multiple active KTX2 loaders may cause performance issues. Use a single KTX2Loader instance, or call .dispose() on old instances."), ga++;
2019
2019
  }
@@ -2021,102 +2021,102 @@ class P extends Fa {
2021
2021
  }
2022
2022
  load(e, a, t, A) {
2023
2023
  if (this.workerConfig === null) throw new Error("THREE.KTX2Loader: Missing initialization with `.detectSupport( renderer )`.");
2024
- const i = new Be(this.manager);
2024
+ const i = new Ce(this.manager);
2025
2025
  i.setResponseType("arraybuffer"), i.setWithCredentials(this.withCredentials), i.load(e, (s) => {
2026
2026
  this.parse(s, a, A);
2027
2027
  }, t, A);
2028
2028
  }
2029
2029
  parse(e, a, t) {
2030
2030
  if (this.workerConfig === null) throw new Error("THREE.KTX2Loader: Missing initialization with `.detectSupport( renderer )`.");
2031
- if (la.has(e))
2032
- return la.get(e).promise.then(a).catch(t);
2031
+ if (ha.has(e))
2032
+ return ha.get(e).promise.then(a).catch(t);
2033
2033
  this._createTexture(e).then((A) => a ? a(A) : null).catch(t);
2034
2034
  }
2035
2035
  _createTextureFrom(e, a) {
2036
- const { type: t, error: A, data: { faces: i, width: s, height: r, format: o, type: n, dfdFlags: b } } = e;
2036
+ const { type: t, error: A, data: { faces: i, width: s, height: r, format: o, type: n, dfdFlags: d } } = e;
2037
2037
  if (t === "error") return Promise.reject(A);
2038
- let d;
2039
- if (a.faceCount === 6) d = new MA(i, o, n);
2038
+ let b;
2039
+ if (a.faceCount === 6) b = new DA(i, o, n);
2040
2040
  else {
2041
2041
  const g = i[0].mipmaps;
2042
- d = a.layerCount > 1 ? new RA(g, s, r, a.layerCount, o, n) : new qa(g, s, r, o, n);
2042
+ b = a.layerCount > 1 ? new vA(g, s, r, a.layerCount, o, n) : new Pa(g, s, r, o, n);
2043
2043
  }
2044
- return d.minFilter = i[0].mipmaps.length === 1 ? Ce : $e, d.magFilter = Ce, d.generateMipmaps = !1, d.needsUpdate = !0, d.colorSpace = it(a), d.premultiplyAlpha = !!(1 & b), d;
2044
+ return b.minFilter = i[0].mipmaps.length === 1 ? Be : $e, b.magFilter = Be, b.generateMipmaps = !1, b.needsUpdate = !0, b.colorSpace = it(a), b.premultiplyAlpha = !!(1 & d), b;
2045
2045
  }
2046
2046
  async _createTexture(e, a = {}) {
2047
2047
  const t = function(r) {
2048
- const o = new Uint8Array(r.buffer, r.byteOffset, U.length);
2049
- if (o[0] !== U[0] || o[1] !== U[1] || o[2] !== U[2] || o[3] !== U[3] || o[4] !== U[4] || o[5] !== U[5] || o[6] !== U[6] || o[7] !== U[7] || o[8] !== U[8] || o[9] !== U[9] || o[10] !== U[10] || o[11] !== U[11]) throw new Error("Missing KTX 2.0 identifier.");
2050
- const n = new Ti(), b = 17 * Uint32Array.BYTES_PER_ELEMENT, d = new Fe(r, U.length, b, !0);
2051
- n.vkFormat = d._nextUint32(), n.typeSize = d._nextUint32(), n.pixelWidth = d._nextUint32(), n.pixelHeight = d._nextUint32(), n.pixelDepth = d._nextUint32(), n.layerCount = d._nextUint32(), n.faceCount = d._nextUint32();
2052
- const g = d._nextUint32();
2053
- n.supercompressionScheme = d._nextUint32();
2054
- const h = d._nextUint32(), l = d._nextUint32(), f = d._nextUint32(), I = d._nextUint32(), p = d._nextUint64(), u = d._nextUint64(), B = new Fe(r, U.length + b, 3 * g * 8, !0);
2055
- for (let S = 0; S < g; S++) n.levels.push({ levelData: new Uint8Array(r.buffer, r.byteOffset + B._nextUint64(), B._nextUint64()), uncompressedByteLength: B._nextUint64() });
2056
- const C = new Fe(r, h, l, !0), y = { vendorId: C._skip(4)._nextUint16(), descriptorType: C._nextUint16(), versionNumber: C._nextUint16(), descriptorBlockSize: C._nextUint16(), colorModel: C._nextUint8(), colorPrimaries: C._nextUint8(), transferFunction: C._nextUint8(), flags: C._nextUint8(), texelBlockDimension: [C._nextUint8(), C._nextUint8(), C._nextUint8(), C._nextUint8()], bytesPlane: [C._nextUint8(), C._nextUint8(), C._nextUint8(), C._nextUint8(), C._nextUint8(), C._nextUint8(), C._nextUint8(), C._nextUint8()], samples: [] }, x = (y.descriptorBlockSize / 4 - 6) / 4;
2057
- for (let S = 0; S < x; S++) {
2058
- const L = { bitOffset: C._nextUint16(), bitLength: C._nextUint8(), channelType: C._nextUint8(), samplePosition: [C._nextUint8(), C._nextUint8(), C._nextUint8(), C._nextUint8()], sampleLower: -1 / 0, sampleUpper: 1 / 0 };
2059
- 64 & L.channelType ? (L.sampleLower = C._nextInt32(), L.sampleUpper = C._nextInt32()) : (L.sampleLower = C._nextUint32(), L.sampleUpper = C._nextUint32()), y.samples[S] = L;
2048
+ const o = new Uint8Array(r.buffer, r.byteOffset, H.length);
2049
+ if (o[0] !== H[0] || o[1] !== H[1] || o[2] !== H[2] || o[3] !== H[3] || o[4] !== H[4] || o[5] !== H[5] || o[6] !== H[6] || o[7] !== H[7] || o[8] !== H[8] || o[9] !== H[9] || o[10] !== H[10] || o[11] !== H[11]) throw new Error("Missing KTX 2.0 identifier.");
2050
+ const n = new Ti(), d = 17 * Uint32Array.BYTES_PER_ELEMENT, b = new Me(r, H.length, d, !0);
2051
+ n.vkFormat = b._nextUint32(), n.typeSize = b._nextUint32(), n.pixelWidth = b._nextUint32(), n.pixelHeight = b._nextUint32(), n.pixelDepth = b._nextUint32(), n.layerCount = b._nextUint32(), n.faceCount = b._nextUint32();
2052
+ const g = b._nextUint32();
2053
+ n.supercompressionScheme = b._nextUint32();
2054
+ const l = b._nextUint32(), h = b._nextUint32(), f = b._nextUint32(), I = b._nextUint32(), m = b._nextUint64(), u = b._nextUint64(), C = new Me(r, H.length + d, 3 * g * 8, !0);
2055
+ for (let F = 0; F < g; F++) n.levels.push({ levelData: new Uint8Array(r.buffer, r.byteOffset + C._nextUint64(), C._nextUint64()), uncompressedByteLength: C._nextUint64() });
2056
+ const B = new Me(r, l, h, !0), y = { vendorId: B._skip(4)._nextUint16(), descriptorType: B._nextUint16(), versionNumber: B._nextUint16(), descriptorBlockSize: B._nextUint16(), colorModel: B._nextUint8(), colorPrimaries: B._nextUint8(), transferFunction: B._nextUint8(), flags: B._nextUint8(), texelBlockDimension: [B._nextUint8(), B._nextUint8(), B._nextUint8(), B._nextUint8()], bytesPlane: [B._nextUint8(), B._nextUint8(), B._nextUint8(), B._nextUint8(), B._nextUint8(), B._nextUint8(), B._nextUint8(), B._nextUint8()], samples: [] }, k = (y.descriptorBlockSize / 4 - 6) / 4;
2057
+ for (let F = 0; F < k; F++) {
2058
+ const G = { bitOffset: B._nextUint16(), bitLength: B._nextUint8(), channelType: B._nextUint8(), samplePosition: [B._nextUint8(), B._nextUint8(), B._nextUint8(), B._nextUint8()], sampleLower: -1 / 0, sampleUpper: 1 / 0 };
2059
+ 64 & G.channelType ? (G.sampleLower = B._nextInt32(), G.sampleUpper = B._nextInt32()) : (G.sampleLower = B._nextUint32(), G.sampleUpper = B._nextUint32()), y.samples[F] = G;
2060
2060
  }
2061
2061
  n.dataFormatDescriptor.length = 0, n.dataFormatDescriptor.push(y);
2062
- const w = new Fe(r, f, I, !0);
2062
+ const w = new Me(r, f, I, !0);
2063
2063
  for (; w._offset < I; ) {
2064
- const S = w._nextUint32(), L = w._scan(S), q = tt(L);
2065
- if (n.keyValue[q] = w._nextUint8Array(S - L.byteLength - 1), q.match(/^ktx/i)) {
2066
- const V = tt(n.keyValue[q]);
2067
- n.keyValue[q] = V.substring(0, V.lastIndexOf("\0"));
2064
+ const F = w._nextUint32(), G = w._scan(F), P = tt(G);
2065
+ if (n.keyValue[P] = w._nextUint8Array(F - G.byteLength - 1), P.match(/^ktx/i)) {
2066
+ const V = tt(n.keyValue[P]);
2067
+ n.keyValue[P] = V.substring(0, V.lastIndexOf("\0"));
2068
2068
  }
2069
- w._skip(S % 4 ? 4 - S % 4 : 0);
2069
+ w._skip(F % 4 ? 4 - F % 4 : 0);
2070
2070
  }
2071
2071
  if (u <= 0) return n;
2072
- const m = new Fe(r, p, u, !0), Q = m._nextUint16(), k = m._nextUint16(), D = m._nextUint32(), F = m._nextUint32(), _ = m._nextUint32(), aa = m._nextUint32(), Me = [];
2073
- for (let S = 0; S < g; S++) Me.push({ imageFlags: m._nextUint32(), rgbSliceByteOffset: m._nextUint32(), rgbSliceByteLength: m._nextUint32(), alphaSliceByteOffset: m._nextUint32(), alphaSliceByteLength: m._nextUint32() });
2074
- const qe = p + m._offset, Re = qe + D, Se = Re + F, ve = Se + _, Oe = new Uint8Array(r.buffer, r.byteOffset + qe, D), Je = new Uint8Array(r.buffer, r.byteOffset + Re, F), z = new Uint8Array(r.buffer, r.byteOffset + Se, _), me = new Uint8Array(r.buffer, r.byteOffset + ve, aa);
2075
- return n.globalData = { endpointCount: Q, selectorCount: k, imageDescs: Me, endpointsData: Oe, selectorsData: Je, tablesData: z, extendedData: me }, n;
2072
+ const p = new Me(r, m, u, !0), Q = p._nextUint16(), x = p._nextUint16(), j = p._nextUint32(), M = p._nextUint32(), O = p._nextUint32(), aa = p._nextUint32(), De = [];
2073
+ for (let F = 0; F < g; F++) De.push({ imageFlags: p._nextUint32(), rgbSliceByteOffset: p._nextUint32(), rgbSliceByteLength: p._nextUint32(), alphaSliceByteOffset: p._nextUint32(), alphaSliceByteLength: p._nextUint32() });
2074
+ const Pe = m + p._offset, ve = Pe + j, Fe = ve + M, Re = Fe + O, qe = new Uint8Array(r.buffer, r.byteOffset + Pe, j), _e = new Uint8Array(r.buffer, r.byteOffset + ve, M), z = new Uint8Array(r.buffer, r.byteOffset + Fe, O), pe = new Uint8Array(r.buffer, r.byteOffset + Re, aa);
2075
+ return n.globalData = { endpointCount: Q, selectorCount: x, imageDescs: De, endpointsData: qe, selectorsData: _e, tablesData: z, extendedData: pe }, n;
2076
2076
  }(new Uint8Array(e)), A = t.vkFormat === Ta && t.dataFormatDescriptor[0].colorModel === 167;
2077
2077
  if (!(t.vkFormat === 0 || A && !this.workerConfig.astcHDRSupported)) return async function(r) {
2078
2078
  const { vkFormat: o } = r;
2079
2079
  if (fa[o] === void 0) throw new Error("THREE.KTX2Loader: Unsupported vkFormat.");
2080
2080
  let n;
2081
- r.supercompressionScheme === 2 && (ha || (ha = new Promise(async (g) => {
2082
- const h = new Li();
2083
- await h.init(), g(h);
2084
- })), n = await ha);
2085
- const b = [];
2081
+ r.supercompressionScheme === 2 && (la || (la = new Promise(async (g) => {
2082
+ const l = new Gi();
2083
+ await l.init(), g(l);
2084
+ })), n = await la);
2085
+ const d = [];
2086
2086
  for (let g = 0; g < r.levels.length; g++) {
2087
- const h = Math.max(1, r.pixelWidth >> g), l = Math.max(1, r.pixelHeight >> g), f = r.pixelDepth ? Math.max(1, r.pixelDepth >> g) : 0, I = r.levels[g];
2088
- let p, u;
2089
- if (r.supercompressionScheme === 0) p = I.levelData;
2087
+ const l = Math.max(1, r.pixelWidth >> g), h = Math.max(1, r.pixelHeight >> g), f = r.pixelDepth ? Math.max(1, r.pixelDepth >> g) : 0, I = r.levels[g];
2088
+ let m, u;
2089
+ if (r.supercompressionScheme === 0) m = I.levelData;
2090
2090
  else {
2091
2091
  if (r.supercompressionScheme !== 2) throw new Error("THREE.KTX2Loader: Unsupported supercompressionScheme.");
2092
- p = n.decode(I.levelData, I.uncompressedByteLength);
2092
+ m = n.decode(I.levelData, I.uncompressedByteLength);
2093
2093
  }
2094
- u = ua[o] === v ? new Float32Array(p.buffer, p.byteOffset, p.byteLength / Float32Array.BYTES_PER_ELEMENT) : ua[o] === xe ? new Uint16Array(p.buffer, p.byteOffset, p.byteLength / Uint16Array.BYTES_PER_ELEMENT) : p, b.push({ data: u, width: h, height: l, depth: f });
2094
+ u = ua[o] === R ? new Float32Array(m.buffer, m.byteOffset, m.byteLength / Float32Array.BYTES_PER_ELEMENT) : ua[o] === ke ? new Uint16Array(m.buffer, m.byteOffset, m.byteLength / Uint16Array.BYTES_PER_ELEMENT) : m, d.push({ data: u, width: l, height: h, depth: f });
2095
2095
  }
2096
- let d;
2097
- if (Gi.has(fa[o])) d = r.pixelDepth === 0 ? new Ge(b[0].data, r.pixelWidth, r.pixelHeight) : new _A(b[0].data, r.pixelWidth, r.pixelHeight, r.pixelDepth);
2096
+ let b;
2097
+ if (Ui.has(fa[o])) b = r.pixelDepth === 0 ? new Ue(d[0].data, r.pixelWidth, r.pixelHeight) : new OA(d[0].data, r.pixelWidth, r.pixelHeight, r.pixelDepth);
2098
2098
  else {
2099
2099
  if (r.pixelDepth > 0) throw new Error("THREE.KTX2Loader: Unsupported pixelDepth.");
2100
- d = new qa(b, r.pixelWidth, r.pixelHeight), d.minFilter = b.length === 1 ? Ce : $e, d.magFilter = Ce;
2100
+ b = new Pa(d, r.pixelWidth, r.pixelHeight), b.minFilter = d.length === 1 ? Be : $e, b.magFilter = Be;
2101
2101
  }
2102
- return d.mipmaps = b, d.type = ua[o], d.format = fa[o], d.colorSpace = it(r), d.needsUpdate = !0, Promise.resolve(d);
2102
+ return b.mipmaps = d, b.type = ua[o], b.format = fa[o], b.colorSpace = it(r), b.needsUpdate = !0, Promise.resolve(b);
2103
2103
  }(t);
2104
2104
  const i = a, s = this.init().then(() => this.workerPool.postMessage({ type: "transcode", buffer: e, taskConfig: i }, [e])).then((r) => this._createTextureFrom(r.data, t));
2105
- return la.set(e, { promise: s }), s;
2105
+ return ha.set(e, { promise: s }), s;
2106
2106
  }
2107
2107
  dispose() {
2108
2108
  return this.workerPool.dispose(), this.workerSourceURL && URL.revokeObjectURL(this.workerSourceURL), ga--, this;
2109
2109
  }
2110
2110
  }
2111
- P.BasisFormat = { ETC1S: 0, UASTC: 1, UASTC_HDR: 2 }, P.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 }, P.EngineFormat = { RGBAFormat: ee, RGBA_ASTC_4x4_Format: wt, RGB_BPTC_UNSIGNED_Format: SA, RGBA_BPTC_Format: vA, RGBA_ETC2_EAC_Format: FA, RGBA_PVRTC_4BPPV1_Format: TA, RGBA_S3TC_DXT5_Format: LA, RGB_ETC1_Format: GA, RGB_ETC2_Format: UA, RGB_PVRTC_4BPPV1_Format: NA, RGBA_S3TC_DXT1_Format: PA }, P.EngineType = { UnsignedByteType: X, HalfFloatType: xe, FloatType: v }, P.BasisWorker = function() {
2111
+ L.BasisFormat = { ETC1S: 0, UASTC: 1, UASTC_HDR: 2 }, L.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 }, L.EngineFormat = { RGBAFormat: ee, RGBA_ASTC_4x4_Format: wt, RGB_BPTC_UNSIGNED_Format: FA, RGBA_BPTC_Format: RA, RGBA_ETC2_EAC_Format: MA, RGBA_PVRTC_4BPPV1_Format: TA, RGBA_S3TC_DXT5_Format: GA, RGB_ETC1_Format: UA, RGB_ETC2_Format: HA, RGB_PVRTC_4BPPV1_Format: NA, RGBA_S3TC_DXT1_Format: LA }, L.EngineType = { UnsignedByteType: X, HalfFloatType: ke, FloatType: R }, L.BasisWorker = function() {
2112
2112
  let c, e, a;
2113
2113
  const t = _EngineFormat, A = _EngineType, i = _TranscoderFormat, s = _BasisFormat;
2114
- self.addEventListener("message", function(d) {
2115
- const g = d.data;
2114
+ self.addEventListener("message", function(b) {
2115
+ const g = b.data;
2116
2116
  switch (g.type) {
2117
2117
  case "init":
2118
- c = g.config, h = g.transcoderBinary, e = new Promise((l) => {
2119
- a = { wasmBinary: h, onRuntimeInitialized: l }, BASIS(a);
2118
+ c = g.config, l = g.transcoderBinary, e = new Promise((h) => {
2119
+ a = { wasmBinary: l, onRuntimeInitialized: h }, BASIS(a);
2120
2120
  }).then(() => {
2121
2121
  a.initializeBasis(), a.KTX2File === void 0 && console.warn("THREE.KTX2Loader: Please update Basis Universal transcoder.");
2122
2122
  });
@@ -2124,12 +2124,12 @@ P.BasisFormat = { ETC1S: 0, UASTC: 1, UASTC_HDR: 2 }, P.TranscoderFormat = { ETC
2124
2124
  case "transcode":
2125
2125
  e.then(() => {
2126
2126
  try {
2127
- const { faces: l, buffers: f, width: I, height: p, hasAlpha: u, format: B, type: C, dfdFlags: y } = function(x) {
2128
- const w = new a.KTX2File(new Uint8Array(x));
2129
- function m() {
2127
+ const { faces: h, buffers: f, width: I, height: m, hasAlpha: u, format: C, type: B, dfdFlags: y } = function(k) {
2128
+ const w = new a.KTX2File(new Uint8Array(k));
2129
+ function p() {
2130
2130
  w.close(), w.delete();
2131
2131
  }
2132
- if (!w.isValid()) throw m(), new Error("THREE.KTX2Loader: Invalid or unsupported .ktx2 file");
2132
+ if (!w.isValid()) throw p(), new Error("THREE.KTX2Loader: Invalid or unsupported .ktx2 file");
2133
2133
  let Q;
2134
2134
  if (w.isUASTC()) Q = s.UASTC;
2135
2135
  else if (w.isETC1S()) Q = s.ETC1S;
@@ -2137,68 +2137,68 @@ P.BasisFormat = { ETC1S: 0, UASTC: 1, UASTC_HDR: 2 }, P.TranscoderFormat = { ETC
2137
2137
  if (!w.isHDR()) throw new Error("THREE.KTX2Loader: Unknown Basis encoding");
2138
2138
  Q = s.UASTC_HDR;
2139
2139
  }
2140
- const k = w.getWidth(), D = w.getHeight(), F = w.getLayers() || 1, _ = w.getLevels(), aa = w.getFaces(), Me = w.getHasAlpha(), qe = w.getDFDFlags(), { transcoderFormat: Re, engineFormat: Se, engineType: ve } = function(z, me, S, L) {
2141
- const q = o[z];
2142
- for (let V = 0; V < q.length; V++) {
2143
- const O = q[V];
2144
- if (!(O.if && !c[O.if]) && O.basisFormat.includes(z) && !(L && O.transcoderFormat.length < 2) && !(O.needsPowerOfTwo && (!n(me) || !n(S))))
2145
- return { transcoderFormat: O.transcoderFormat[L ? 1 : 0], engineFormat: O.engineFormat[L ? 1 : 0], engineType: O.engineType[0] };
2140
+ const x = w.getWidth(), j = w.getHeight(), M = w.getLayers() || 1, O = w.getLevels(), aa = w.getFaces(), De = w.getHasAlpha(), Pe = w.getDFDFlags(), { transcoderFormat: ve, engineFormat: Fe, engineType: Re } = function(z, pe, F, G) {
2141
+ const P = o[z];
2142
+ for (let V = 0; V < P.length; V++) {
2143
+ const q = P[V];
2144
+ if (!(q.if && !c[q.if]) && q.basisFormat.includes(z) && !(G && q.transcoderFormat.length < 2) && !(q.needsPowerOfTwo && (!n(pe) || !n(F))))
2145
+ return { transcoderFormat: q.transcoderFormat[G ? 1 : 0], engineFormat: q.engineFormat[G ? 1 : 0], engineType: q.engineType[0] };
2146
2146
  }
2147
2147
  throw new Error("THREE.KTX2Loader: Failed to identify transcoding target.");
2148
- }(Q, k, D, Me);
2149
- if (!k || !D || !_) throw m(), new Error("THREE.KTX2Loader: Invalid texture");
2150
- if (!w.startTranscoding()) throw m(), new Error("THREE.KTX2Loader: .startTranscoding failed");
2151
- const Oe = [], Je = [];
2148
+ }(Q, x, j, De);
2149
+ if (!x || !j || !O) throw p(), new Error("THREE.KTX2Loader: Invalid texture");
2150
+ if (!w.startTranscoding()) throw p(), new Error("THREE.KTX2Loader: .startTranscoding failed");
2151
+ const qe = [], _e = [];
2152
2152
  for (let z = 0; z < aa; z++) {
2153
- const me = [];
2154
- for (let S = 0; S < _; S++) {
2155
- const L = [];
2156
- let q, V;
2157
- for (let Ee = 0; Ee < F; Ee++) {
2158
- const Qe = w.getImageLevelInfo(S, Ee, z);
2159
- z !== 0 || S !== 0 || Ee !== 0 || Qe.origWidth % 4 == 0 && Qe.origHeight % 4 == 0 || console.warn("THREE.KTX2Loader: ETC1S and UASTC textures should use multiple-of-four dimensions."), _ > 1 ? (q = Qe.origWidth, V = Qe.origHeight) : (q = Qe.width, V = Qe.height);
2160
- let ye = new Uint8Array(w.getImageTranscodedSizeInBytes(S, Ee, 0, Re));
2161
- const Xt = w.transcodeImage(ye, S, Ee, z, Re, 0, -1, -1);
2162
- if (ve === A.HalfFloatType && (ye = new Uint16Array(ye.buffer, ye.byteOffset, ye.byteLength / Uint16Array.BYTES_PER_ELEMENT)), !Xt) throw m(), new Error("THREE.KTX2Loader: .transcodeImage failed.");
2163
- L.push(ye);
2153
+ const pe = [];
2154
+ for (let F = 0; F < O; F++) {
2155
+ const G = [];
2156
+ let P, V;
2157
+ for (let Ee = 0; Ee < M; Ee++) {
2158
+ const Qe = w.getImageLevelInfo(F, Ee, z);
2159
+ z !== 0 || F !== 0 || Ee !== 0 || Qe.origWidth % 4 == 0 && Qe.origHeight % 4 == 0 || console.warn("THREE.KTX2Loader: ETC1S and UASTC textures should use multiple-of-four dimensions."), O > 1 ? (P = Qe.origWidth, V = Qe.origHeight) : (P = Qe.width, V = Qe.height);
2160
+ let ye = new Uint8Array(w.getImageTranscodedSizeInBytes(F, Ee, 0, ve));
2161
+ const Xt = w.transcodeImage(ye, F, Ee, z, ve, 0, -1, -1);
2162
+ if (Re === A.HalfFloatType && (ye = new Uint16Array(ye.buffer, ye.byteOffset, ye.byteLength / Uint16Array.BYTES_PER_ELEMENT)), !Xt) throw p(), new Error("THREE.KTX2Loader: .transcodeImage failed.");
2163
+ G.push(ye);
2164
2164
  }
2165
- const O = b(L);
2166
- me.push({ data: O, width: q, height: V }), Je.push(O.buffer);
2165
+ const q = d(G);
2166
+ pe.push({ data: q, width: P, height: V }), _e.push(q.buffer);
2167
2167
  }
2168
- Oe.push({ mipmaps: me, width: k, height: D, format: Se, type: ve });
2168
+ qe.push({ mipmaps: pe, width: x, height: j, format: Fe, type: Re });
2169
2169
  }
2170
- return m(), { faces: Oe, buffers: Je, width: k, height: D, hasAlpha: Me, dfdFlags: qe, format: Se, type: ve };
2170
+ return p(), { faces: qe, buffers: _e, width: x, height: j, hasAlpha: De, dfdFlags: Pe, format: Fe, type: Re };
2171
2171
  }(g.buffer);
2172
- self.postMessage({ type: "transcode", id: g.id, data: { faces: l, width: I, height: p, hasAlpha: u, format: B, type: C, dfdFlags: y } }, f);
2173
- } catch (l) {
2174
- console.error(l), self.postMessage({ type: "error", id: g.id, error: l.message });
2172
+ self.postMessage({ type: "transcode", id: g.id, data: { faces: h, width: I, height: m, hasAlpha: u, format: C, type: B, dfdFlags: y } }, f);
2173
+ } catch (h) {
2174
+ console.error(h), self.postMessage({ type: "error", id: g.id, error: h.message });
2175
2175
  }
2176
2176
  });
2177
2177
  }
2178
- var h;
2178
+ var l;
2179
2179
  });
2180
- const r = [{ if: "astcSupported", basisFormat: [s.UASTC], transcoderFormat: [i.ASTC_4x4, i.ASTC_4x4], engineFormat: [t.RGBA_ASTC_4x4_Format, t.RGBA_ASTC_4x4_Format], engineType: [A.UnsignedByteType], priorityETC1S: 1 / 0, priorityUASTC: 1, needsPowerOfTwo: !1 }, { if: "bptcSupported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.BC7_M5, i.BC7_M5], engineFormat: [t.RGBA_BPTC_Format, t.RGBA_BPTC_Format], engineType: [A.UnsignedByteType], priorityETC1S: 3, priorityUASTC: 2, needsPowerOfTwo: !1 }, { if: "dxtSupported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.BC1, i.BC3], engineFormat: [t.RGBA_S3TC_DXT1_Format, t.RGBA_S3TC_DXT5_Format], engineType: [A.UnsignedByteType], priorityETC1S: 4, priorityUASTC: 5, needsPowerOfTwo: !1 }, { if: "etc2Supported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.ETC1, i.ETC2], engineFormat: [t.RGB_ETC2_Format, t.RGBA_ETC2_EAC_Format], engineType: [A.UnsignedByteType], priorityETC1S: 1, priorityUASTC: 3, needsPowerOfTwo: !1 }, { if: "etc1Supported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.ETC1], engineFormat: [t.RGB_ETC1_Format], engineType: [A.UnsignedByteType], priorityETC1S: 2, priorityUASTC: 4, needsPowerOfTwo: !1 }, { if: "pvrtcSupported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.PVRTC1_4_RGB, i.PVRTC1_4_RGBA], engineFormat: [t.RGB_PVRTC_4BPPV1_Format, t.RGBA_PVRTC_4BPPV1_Format], engineType: [A.UnsignedByteType], priorityETC1S: 5, priorityUASTC: 6, needsPowerOfTwo: !0 }, { if: "bptcSupported", basisFormat: [s.UASTC_HDR], transcoderFormat: [i.BC6H], engineFormat: [t.RGB_BPTC_UNSIGNED_Format], engineType: [A.HalfFloatType], priorityHDR: 1, needsPowerOfTwo: !1 }, { basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.RGBA32, i.RGBA32], engineFormat: [t.RGBAFormat, t.RGBAFormat], engineType: [A.UnsignedByteType, A.UnsignedByteType], priorityETC1S: 100, priorityUASTC: 100, needsPowerOfTwo: !1 }, { basisFormat: [s.UASTC_HDR], transcoderFormat: [i.RGBA_HALF], engineFormat: [t.RGBAFormat], engineType: [A.HalfFloatType], priorityHDR: 100, needsPowerOfTwo: !1 }], o = { [s.ETC1S]: r.filter((d) => d.basisFormat.includes(s.ETC1S)).sort((d, g) => d.priorityUASTC - g.priorityUASTC), [s.UASTC]: r.filter((d) => d.basisFormat.includes(s.UASTC)).sort((d, g) => d.priorityUASTC - g.priorityUASTC), [s.UASTC_HDR]: r.filter((d) => d.basisFormat.includes(s.UASTC_HDR)).sort((d, g) => d.priorityHDR - g.priorityHDR) };
2181
- function n(d) {
2182
- return d <= 2 || !(d & d - 1) && d !== 0;
2180
+ const r = [{ if: "astcSupported", basisFormat: [s.UASTC], transcoderFormat: [i.ASTC_4x4, i.ASTC_4x4], engineFormat: [t.RGBA_ASTC_4x4_Format, t.RGBA_ASTC_4x4_Format], engineType: [A.UnsignedByteType], priorityETC1S: 1 / 0, priorityUASTC: 1, needsPowerOfTwo: !1 }, { if: "bptcSupported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.BC7_M5, i.BC7_M5], engineFormat: [t.RGBA_BPTC_Format, t.RGBA_BPTC_Format], engineType: [A.UnsignedByteType], priorityETC1S: 3, priorityUASTC: 2, needsPowerOfTwo: !1 }, { if: "dxtSupported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.BC1, i.BC3], engineFormat: [t.RGBA_S3TC_DXT1_Format, t.RGBA_S3TC_DXT5_Format], engineType: [A.UnsignedByteType], priorityETC1S: 4, priorityUASTC: 5, needsPowerOfTwo: !1 }, { if: "etc2Supported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.ETC1, i.ETC2], engineFormat: [t.RGB_ETC2_Format, t.RGBA_ETC2_EAC_Format], engineType: [A.UnsignedByteType], priorityETC1S: 1, priorityUASTC: 3, needsPowerOfTwo: !1 }, { if: "etc1Supported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.ETC1], engineFormat: [t.RGB_ETC1_Format], engineType: [A.UnsignedByteType], priorityETC1S: 2, priorityUASTC: 4, needsPowerOfTwo: !1 }, { if: "pvrtcSupported", basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.PVRTC1_4_RGB, i.PVRTC1_4_RGBA], engineFormat: [t.RGB_PVRTC_4BPPV1_Format, t.RGBA_PVRTC_4BPPV1_Format], engineType: [A.UnsignedByteType], priorityETC1S: 5, priorityUASTC: 6, needsPowerOfTwo: !0 }, { if: "bptcSupported", basisFormat: [s.UASTC_HDR], transcoderFormat: [i.BC6H], engineFormat: [t.RGB_BPTC_UNSIGNED_Format], engineType: [A.HalfFloatType], priorityHDR: 1, needsPowerOfTwo: !1 }, { basisFormat: [s.ETC1S, s.UASTC], transcoderFormat: [i.RGBA32, i.RGBA32], engineFormat: [t.RGBAFormat, t.RGBAFormat], engineType: [A.UnsignedByteType, A.UnsignedByteType], priorityETC1S: 100, priorityUASTC: 100, needsPowerOfTwo: !1 }, { basisFormat: [s.UASTC_HDR], transcoderFormat: [i.RGBA_HALF], engineFormat: [t.RGBAFormat], engineType: [A.HalfFloatType], priorityHDR: 100, needsPowerOfTwo: !1 }], o = { [s.ETC1S]: r.filter((b) => b.basisFormat.includes(s.ETC1S)).sort((b, g) => b.priorityUASTC - g.priorityUASTC), [s.UASTC]: r.filter((b) => b.basisFormat.includes(s.UASTC)).sort((b, g) => b.priorityUASTC - g.priorityUASTC), [s.UASTC_HDR]: r.filter((b) => b.basisFormat.includes(s.UASTC_HDR)).sort((b, g) => b.priorityHDR - g.priorityHDR) };
2181
+ function n(b) {
2182
+ return b <= 2 || !(b & b - 1) && b !== 0;
2183
2183
  }
2184
- function b(d) {
2185
- if (d.length === 1) return d[0];
2184
+ function d(b) {
2185
+ if (b.length === 1) return b[0];
2186
2186
  let g = 0;
2187
- for (let f = 0; f < d.length; f++)
2188
- g += d[f].byteLength;
2189
- const h = new Uint8Array(g);
2190
- let l = 0;
2191
- for (let f = 0; f < d.length; f++) {
2192
- const I = d[f];
2193
- h.set(I, l), l += I.byteLength;
2187
+ for (let f = 0; f < b.length; f++)
2188
+ g += b[f].byteLength;
2189
+ const l = new Uint8Array(g);
2190
+ let h = 0;
2191
+ for (let f = 0; f < b.length; f++) {
2192
+ const I = b[f];
2193
+ l.set(I, h), h += I.byteLength;
2194
2194
  }
2195
- return h;
2195
+ return l;
2196
2196
  }
2197
2197
  };
2198
- const Gi = /* @__PURE__ */ new Set([ee, Ue, Ne]), fa = { [Jt]: ee, [Ht]: ee, [Ut]: ee, [Nt]: ee, [Ot]: Ue, [_t]: Ue, [Lt]: Ue, [Gt]: Ue, [qt]: Ne, [Pt]: Ne, [Tt]: Ne, [Ft]: Ne, [Ta]: wt, [zt]: Oa, [Kt]: Oa }, ua = { [Jt]: v, [Ht]: xe, [Ut]: X, [Nt]: X, [Ot]: v, [_t]: xe, [Lt]: X, [Gt]: X, [qt]: v, [Pt]: xe, [Tt]: X, [Ft]: X, [Ta]: xe, [zt]: X, [Kt]: X };
2198
+ const Ui = /* @__PURE__ */ new Set([ee, He, Ne]), fa = { [_t]: ee, [Jt]: ee, [Ht]: ee, [Nt]: ee, [qt]: He, [Ot]: He, [Gt]: He, [Ut]: He, [Pt]: Ne, [Lt]: Ne, [Tt]: Ne, [Mt]: Ne, [Ta]: wt, [zt]: qa, [Kt]: qa }, ua = { [_t]: R, [Jt]: ke, [Ht]: X, [Nt]: X, [qt]: R, [Ot]: ke, [Gt]: X, [Ut]: X, [Pt]: R, [Lt]: ke, [Tt]: X, [Mt]: X, [Ta]: ke, [zt]: X, [Kt]: X };
2199
2199
  function it(c) {
2200
2200
  const e = c.dataFormatDescriptor[0];
2201
- return e.colorPrimaries === 1 ? e.transferFunction === 2 ? re : K : e.colorPrimaries === 10 ? e.transferFunction === 2 ? "display-p3" : "display-p3-linear" : (e.colorPrimaries === 0 || console.warn(`THREE.KTX2Loader: Unsupported color primaries, "${e.colorPrimaries}"`), HA);
2201
+ return e.colorPrimaries === 1 ? e.transferFunction === 2 ? re : K : e.colorPrimaries === 10 ? e.transferFunction === 2 ? "display-p3" : "display-p3-linear" : (e.colorPrimaries === 0 || console.warn(`THREE.KTX2Loader: Unsupported color primaries, "${e.colorPrimaries}"`), JA);
2202
2202
  }
2203
2203
  async function st(c) {
2204
2204
  const e = c.split("?")[0].split(".").pop(), a = await fetch(c);
@@ -2209,50 +2209,50 @@ async function st(c) {
2209
2209
  }
2210
2210
  if (e === "subtree")
2211
2211
  return async function(t, A) {
2212
- const i = new DataView(t), s = i.getBigUint64(8, !0), r = i.getBigUint64(16, !0), o = 24, n = o + Number(s), b = n + (8 - n % 8) % 8, d = b + Number(r), g = t.slice(o, n), h = new TextDecoder().decode(g).trim(), l = JSON.parse(h);
2213
- if (!l.buffers) throw new Error("subtree has no buffers");
2214
- const f = l.buffers.map(async (p) => {
2215
- if (p.uri) {
2216
- const u = new URL(p.uri, A).href, B = await fetch(u);
2217
- if (!B.ok) throw new Error(`Failed to fetch binary file ${u}: ${B.statusText}`);
2218
- return new Uint8Array(await B.arrayBuffer());
2212
+ const i = new DataView(t), s = i.getBigUint64(8, !0), r = i.getBigUint64(16, !0), o = 24, n = o + Number(s), d = n + (8 - n % 8) % 8, b = d + Number(r), g = t.slice(o, n), l = new TextDecoder().decode(g).trim(), h = JSON.parse(l);
2213
+ if (!h.buffers) throw new Error("subtree has no buffers");
2214
+ const f = h.buffers.map(async (m) => {
2215
+ if (m.uri) {
2216
+ const u = new URL(m.uri, A).href, C = await fetch(u);
2217
+ if (!C.ok) throw new Error(`Failed to fetch binary file ${u}: ${C.statusText}`);
2218
+ return new Uint8Array(await C.arrayBuffer());
2219
2219
  }
2220
- return new Uint8Array(t.slice(b, d));
2220
+ return new Uint8Array(t.slice(d, b));
2221
2221
  }), I = await Promise.all(f);
2222
- return /* @__PURE__ */ function(p, u) {
2223
- function B(m, Q) {
2224
- if (!m) throw new Error("incomplete json subtree");
2225
- if (m.constant) {
2226
- if (m.constant == 0) return !1;
2227
- if (m.constant == 1) return !0;
2222
+ return /* @__PURE__ */ function(m, u) {
2223
+ function C(p, Q) {
2224
+ if (!p) throw new Error("incomplete json subtree");
2225
+ if (p.constant) {
2226
+ if (p.constant == 0) return !1;
2227
+ if (p.constant == 1) return !0;
2228
2228
  }
2229
- if (m.bitstream == null) throw new Error('json subtree "tileAvailability" does not specify a bitstream');
2230
- if (!p.bufferViews || !p.bufferViews[m.bitstream]) throw new Error('json subtree "bufferViews" does not specify a bitstream');
2231
- const k = p.bufferViews[m.bitstream];
2232
- return C(u[k.buffer], k.byteOffset, Q);
2229
+ if (p.bitstream == null) throw new Error('json subtree "tileAvailability" does not specify a bitstream');
2230
+ if (!m.bufferViews || !m.bufferViews[p.bitstream]) throw new Error('json subtree "bufferViews" does not specify a bitstream');
2231
+ const x = m.bufferViews[p.bitstream];
2232
+ return B(u[x.buffer], x.byteOffset, Q);
2233
2233
  }
2234
- function C(m, Q, k) {
2235
- const D = k % 8;
2236
- return m[Q + Math.floor(k / 8)] >> D & !0;
2234
+ function B(p, Q, x) {
2235
+ const j = x % 8;
2236
+ return p[Q + Math.floor(x / 8)] >> j & !0;
2237
2237
  }
2238
- function y(m) {
2238
+ function y(p) {
2239
2239
  let Q = 0;
2240
- return Q = m.z == null ? Ia(m.x, m.y, m.level) : Ca(m.x, m.y, m.z, m.level), B(p.tileAvailability, Q);
2240
+ return Q = p.z == null ? Ia(p.x, p.y, p.level) : Ba(p.x, p.y, p.z, p.level), C(m.tileAvailability, Q);
2241
2241
  }
2242
- function x(m) {
2242
+ function k(p) {
2243
2243
  let Q = 0;
2244
- Q = m.z == null ? Ia(m.x, m.y, m.level) : Ca(m.x, m.y, m.z, m.level);
2245
- const k = [];
2246
- return p.contentAvailability.forEach((D) => {
2247
- k.push(B(D, Q));
2248
- }), k;
2244
+ Q = p.z == null ? Ia(p.x, p.y, p.level) : Ba(p.x, p.y, p.z, p.level);
2245
+ const x = [];
2246
+ return m.contentAvailability.forEach((j) => {
2247
+ x.push(C(j, Q));
2248
+ }), x;
2249
2249
  }
2250
- function w(m) {
2250
+ function w(p) {
2251
2251
  let Q = 0;
2252
- return Q = m.z == null ? Ia(m.x, m.y) : Ca(m.x, m.y, m.z), B(p.childSubtreeAvailability, Q);
2252
+ return Q = p.z == null ? Ia(p.x, p.y) : Ba(p.x, p.y, p.z), C(m.childSubtreeAvailability, Q);
2253
2253
  }
2254
- return { isTileAvailable: y, isContentAvailable: x, isChildSubtreeAvailable: w };
2255
- }(l, I);
2254
+ return { isTileAvailable: y, isContentAvailable: k, isChildSubtreeAvailable: w };
2255
+ }(h, I);
2256
2256
  }(await a.arrayBuffer(), rt(c));
2257
2257
  throw new Error(`Unsupported file extension: ${e}`);
2258
2258
  }
@@ -2267,15 +2267,15 @@ function Ia(c, e, a) {
2267
2267
  let t = 0;
2268
2268
  return a && (t = (Math.pow(4, a) - 1) / 3), t + (nt(c) | nt(e) << 1);
2269
2269
  }
2270
- function pa(c) {
2270
+ function ma(c) {
2271
2271
  return c = 153391689 & ((c = 51130563 & ((c = 50393103 & ((c = 4278190335 & ((c &= 1023) ^ c << 16)) ^ c << 8)) ^ c << 4)) ^ c << 2);
2272
2272
  }
2273
- function Ca(c, e, a, t) {
2273
+ function Ba(c, e, a, t) {
2274
2274
  let A = 0;
2275
- return t && (A = (Math.pow(8, t) - 1) / 7), A + (pa(c) | pa(e) << 1 | pa(a) << 2);
2275
+ return t && (A = (Math.pow(8, t) - 1) / 7), A + (ma(c) | ma(e) << 1 | ma(a) << 2);
2276
2276
  }
2277
2277
  const Te = /* @__PURE__ */ new Map();
2278
- async function La(c, e) {
2278
+ async function Ga(c, e) {
2279
2279
  if (!c.root || !c.root.implicitTiling) return c;
2280
2280
  if (!c.root.content && !c.root.contents) throw new Error("implicit tiling requires a Template URI");
2281
2281
  let a = !0;
@@ -2283,59 +2283,59 @@ async function La(c, e) {
2283
2283
  let t = "";
2284
2284
  c.root.implicitTiling.subtrees && (c.root.implicitTiling.subtrees.uri ? t = c.root.implicitTiling.subtrees.uri : c.root.implicitTiling.subtrees.url && (t = c.root.implicitTiling.subtrees.url));
2285
2285
  let A = [];
2286
- c.root.content ? c.root.content.uri ? A.push(c.root.content.uri) : c.root.content.url && A.push(c.root.content.url) : c.root.contents && c.root.contents.forEach((h) => {
2287
- h.uri ? A.push(h.uri) : h.url && A.push(h.url);
2286
+ c.root.content ? c.root.content.uri ? A.push(c.root.content.uri) : c.root.content.url && A.push(c.root.content.url) : c.root.contents && c.root.contents.forEach((l) => {
2287
+ l.uri ? A.push(l.uri) : l.url && A.push(l.url);
2288
2288
  });
2289
- const i = function(h) {
2290
- const l = h.split("?")[0];
2291
- return l.substring(0, l.lastIndexOf("/") + 1);
2289
+ const i = function(l) {
2290
+ const h = l.split("?")[0];
2291
+ return h.substring(0, h.lastIndexOf("/") + 1);
2292
2292
  }(e);
2293
2293
  let s;
2294
2294
  a && (s = t.replace("{level}", 0).replace("{x}", 0).replace("{y}", 0)), a || (s = t.replace("{level}", 0).replace("{x}", 0).replace("{y}", 0).replace("{z}", 0));
2295
2295
  const r = { level: 0, x: 0, y: 0 }, o = { level: 0, x: 0, y: 0 };
2296
2296
  a || (r.z = 0, o.z = 0), Te.set(s, await st(i + s));
2297
- const n = Te.get(s), b = [];
2298
- n.isContentAvailable(o) && A.forEach((h) => {
2299
- let l;
2300
- a && (l = h.replace("{level}", r.level).replace("{x}", r.x).replace("{y}", r.y)), a || (l = h.replace("{level}", r.level).replace("{x}", r.x).replace("{y}", r.y).replace("{z}", r.z)), b.push({ uri: l });
2297
+ const n = Te.get(s), d = [];
2298
+ n.isContentAvailable(o) && A.forEach((l) => {
2299
+ let h;
2300
+ a && (h = l.replace("{level}", r.level).replace("{x}", r.x).replace("{y}", r.y)), a || (h = l.replace("{level}", r.level).replace("{x}", r.x).replace("{y}", r.y).replace("{z}", r.z)), d.push({ uri: h });
2301
2301
  });
2302
- const d = { geometricError: c.root.geometricError, boundingVolume: c.root.boundingVolume, refine: c.root.refine, globalAddress: r, localAddress: o, subtree: n, contents: b, getChildren: async () => g(d) };
2303
- return { root: d };
2304
- async function g(h) {
2305
- const l = [];
2306
- if (h.localAddress.level == c.root.implicitTiling.availableLevels - 1) return l;
2307
- if ((h.localAddress.level + 1) % c.root.implicitTiling.subtreeLevels == 0) {
2308
- const f = ze(h.localAddress), I = ze(h.globalAddress), p = ot(a, c.root.boundingVolume, I);
2302
+ const b = { geometricError: c.root.geometricError, boundingVolume: c.root.boundingVolume, refine: c.root.refine, globalAddress: r, localAddress: o, subtree: n, contents: d, getChildren: async () => g(b) };
2303
+ return { root: b };
2304
+ async function g(l) {
2305
+ const h = [];
2306
+ if (l.localAddress.level == c.root.implicitTiling.availableLevels - 1) return h;
2307
+ if ((l.localAddress.level + 1) % c.root.implicitTiling.subtreeLevels == 0) {
2308
+ const f = ze(l.localAddress), I = ze(l.globalAddress), m = ot(a, c.root.boundingVolume, I);
2309
2309
  for (let u = 0; u < f.length; u++) {
2310
- const B = f[u], C = I[u];
2311
- h.subtree.isChildSubtreeAvailable(B) && (a && t.replace("{level}", C.level).replace("{x}", C.x).replace("{y}", C.y), a || t.replace("{level}", C.level).replace("{x}", C.x).replace("{y}", C.y).replace("{z}", C.z)), Te.has(s) || Te.set(s, await st(i + s));
2312
- const y = Te.get(s), x = { level: 0, x: 0, y: 0 };
2313
- a || (x.z = 0);
2310
+ const C = f[u], B = I[u];
2311
+ l.subtree.isChildSubtreeAvailable(C) && (a && t.replace("{level}", B.level).replace("{x}", B.x).replace("{y}", B.y), a || t.replace("{level}", B.level).replace("{x}", B.x).replace("{y}", B.y).replace("{z}", B.z)), Te.has(s) || Te.set(s, await st(i + s));
2312
+ const y = Te.get(s), k = { level: 0, x: 0, y: 0 };
2313
+ a || (k.z = 0);
2314
2314
  const w = [];
2315
- y.isContentAvailable(x) && A.forEach((Q) => {
2316
- let k;
2317
- a && (k = Q.replace("{level}", C.level).replace("{x}", C.x).replace("{y}", C.y)), a || (k = Q.replace("{level}", C.level).replace("{x}", C.x).replace("{y}", C.y).replace("{z}", C.z)), w.push({ uri: k });
2315
+ y.isContentAvailable(k) && A.forEach((Q) => {
2316
+ let x;
2317
+ a && (x = Q.replace("{level}", B.level).replace("{x}", B.x).replace("{y}", B.y)), a || (x = Q.replace("{level}", B.level).replace("{x}", B.x).replace("{y}", B.y).replace("{z}", B.z)), w.push({ uri: x });
2318
2318
  });
2319
- const m = { geometricError: h.geometricError / 2, boundingVolume: p[u], refine: c.root.refine, globalAddress: C, localAddress: x, subtree: y, contents: w, getChildren: async () => g(m) };
2320
- l.push(m);
2319
+ const p = { geometricError: l.geometricError / 2, boundingVolume: m[u], refine: c.root.refine, globalAddress: B, localAddress: k, subtree: y, contents: w, getChildren: async () => g(p) };
2320
+ h.push(p);
2321
2321
  }
2322
2322
  } else {
2323
- const f = ze(h.localAddress), I = ze(h.globalAddress), p = ot(a, c.root.boundingVolume, I);
2323
+ const f = ze(l.localAddress), I = ze(l.globalAddress), m = ot(a, c.root.boundingVolume, I);
2324
2324
  for (let u = 0; u < f.length; u++) {
2325
- const B = f[u], C = I[u];
2326
- if (!h.subtree.isTileAvailable(B)) continue;
2327
- const y = [], x = h.subtree.isContentAvailable(B);
2328
- for (let m = 0; m < A.length; m++) {
2329
- if (!x[m]) continue;
2330
- const Q = A[m];
2331
- let k;
2332
- a && (k = Q.replace("{level}", C.level).replace("{x}", C.x).replace("{y}", C.y)), a || (k = Q.replace("{level}", C.level).replace("{x}", C.x).replace("{y}", C.y).replace("{z}", C.z)), y.push({ uri: k });
2325
+ const C = f[u], B = I[u];
2326
+ if (!l.subtree.isTileAvailable(C)) continue;
2327
+ const y = [], k = l.subtree.isContentAvailable(C);
2328
+ for (let p = 0; p < A.length; p++) {
2329
+ if (!k[p]) continue;
2330
+ const Q = A[p];
2331
+ let x;
2332
+ a && (x = Q.replace("{level}", B.level).replace("{x}", B.x).replace("{y}", B.y)), a || (x = Q.replace("{level}", B.level).replace("{x}", B.x).replace("{y}", B.y).replace("{z}", B.z)), y.push({ uri: x });
2333
2333
  }
2334
- const w = { geometricError: h.geometricError / 2, boundingVolume: p[u], refine: c.root.refine, globalAddress: C, localAddress: B, subtree: h.subtree, contents: y, getChildren: async () => g(w) };
2335
- l.push(w);
2334
+ const w = { geometricError: l.geometricError / 2, boundingVolume: m[u], refine: c.root.refine, globalAddress: B, localAddress: C, subtree: l.subtree, contents: y, getChildren: async () => g(w) };
2335
+ h.push(w);
2336
2336
  }
2337
2337
  }
2338
- return l.length > 0 ? l : void 0;
2338
+ return h.length > 0 ? h : void 0;
2339
2339
  }
2340
2340
  }
2341
2341
  function ze(c) {
@@ -2345,17 +2345,17 @@ function ze(c) {
2345
2345
  }
2346
2346
  function ot(c, e, a) {
2347
2347
  const t = [];
2348
- for (let A = 0; A < a.length; A++) t.push(Ui(c, e, a[A]));
2348
+ for (let A = 0; A < a.length; A++) t.push(Hi(c, e, a[A]));
2349
2349
  return t;
2350
2350
  }
2351
- function Ui(c, e, a) {
2351
+ function Hi(c, e, a) {
2352
2352
  if (e.region) return function(t, A, i) {
2353
- const [s, r, o, n, b, d] = A, g = (o - s) / 2 ** i.level, h = (n - r) / 2 ** i.level, l = t ? 0 : (d - b) / 2 ** i.level, f = s + g * i.x, I = r + h * i.y, p = f + g, u = I + h, B = t ? b : b + l * i.z, C = t ? d : B + l;
2354
- return { region: [f, I, p, u, B, C] };
2353
+ const [s, r, o, n, d, b] = A, g = (o - s) / 2 ** i.level, l = (n - r) / 2 ** i.level, h = t ? 0 : (b - d) / 2 ** i.level, f = s + g * i.x, I = r + l * i.y, m = f + g, u = I + l, C = t ? d : d + h * i.z, B = t ? b : C + h;
2354
+ return { region: [f, I, m, u, C, B] };
2355
2355
  }(c, e.region, a);
2356
2356
  if (e.box) return function(t, A, i) {
2357
- const s = A.slice(0, 3), r = [A.slice(3, 6), A.slice(6, 9), A.slice(9, 12)], o = 1 / Math.pow(2, i.level), n = [o, o, t ? 1 : o], b = r.map((h, l) => h.map((f) => f * n[l])), d = [s[0] - r[0][0] - r[1][0] - r[2][0], s[1] - r[0][1] - r[1][1] - r[2][1], s[2] - r[0][2] - r[1][2] - r[2][2]];
2358
- return { box: [d[0] + (2 * i.x + 1) * (b[0][0] + b[1][0] + b[2][0]), d[1] + (2 * i.y + 1) * (b[0][1] + b[1][1] + b[2][1]), t ? s[2] : d[2] + (2 * i.z + 1) * (b[0][2] + b[1][2] + b[2][2])].concat(...b) };
2357
+ const s = A.slice(0, 3), r = [A.slice(3, 6), A.slice(6, 9), A.slice(9, 12)], o = 1 / Math.pow(2, i.level), n = [o, o, t ? 1 : o], d = r.map((l, h) => l.map((f) => f * n[h])), b = [s[0] - r[0][0] - r[1][0] - r[2][0], s[1] - r[0][1] - r[1][1] - r[2][1], s[2] - r[0][2] - r[1][2] - r[2][2]];
2358
+ return { box: [b[0] + (2 * i.x + 1) * (d[0][0] + d[1][0] + d[2][0]), b[1] + (2 * i.y + 1) * (d[0][1] + d[1][1] + d[2][1]), t ? s[2] : b[2] + (2 * i.z + 1) * (d[0][2] + d[1][2] + d[2][2])].concat(...d) };
2359
2359
  }(c, e.box, a);
2360
2360
  throw new Error("Unsupported bounding volume type");
2361
2361
  }
@@ -2363,14 +2363,14 @@ function Ui(c, e, a) {
2363
2363
  var c, 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]);
2364
2364
  if (typeof WebAssembly != "object") return { supported: !1 };
2365
2365
  var a = WebAssembly.instantiate(function(n) {
2366
- for (var b = new Uint8Array(n.length), d = 0; d < n.length; ++d) {
2367
- var g = n.charCodeAt(d);
2368
- b[d] = g > 96 ? g - 97 : g > 64 ? g - 39 : g + 4;
2366
+ for (var d = new Uint8Array(n.length), b = 0; b < n.length; ++b) {
2367
+ var g = n.charCodeAt(b);
2368
+ d[b] = g > 96 ? g - 97 : g > 64 ? g - 39 : g + 4;
2369
2369
  }
2370
- var h = 0;
2371
- for (d = 0; d < n.length; ++d) b[h++] = b[d] < 60 ? e[b[d]] : 64 * (b[d] - 60) + b[++d];
2372
- return b.buffer.slice(0, h);
2373
- }("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(n) {
2370
+ var l = 0;
2371
+ for (b = 0; b < n.length; ++b) d[l++] = d[b] < 60 ? e[d[b]] : 64 * (d[b] - 60) + d[++b];
2372
+ return d.buffer.slice(0, l);
2373
+ }("b9H79TebbbeJq9Geueu9Geub9Gbb9Gvuuuuueu9Gduueu9Gluuuueu9Gvuuuuub9Gouuuuuub9Gluuuub9GiuuueuiKLdilevlevlooroowwvwbDDbelve9Weiiviebeoweuec:G:Qdkr;RiOo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWVbe8F9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949c919M9MWV9c9V919U9KbdE9TW79O9V9Wt9FW9U9J9V9KW9wWVtW949wWV79P9V9UbiY9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWVbl8E9TW79O9V9Wt9FW9U9J9V9KW69U9KW949c919M9MWV9c9V919U9Kbv8A9TW79O9V9Wt9FW9U9J9V9KW69U9KW949wWV79P9V9UboE9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JWbra9TW79O9V9Wt9FW9U9J9V9KW69U9KW949tWG91W9U9JW9c9V919U9KbwL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9p9JtbDK9TW79O9V9Wt9FW9U9J9V9KWS9P2tWV9r919HtbqL9TW79O9V9Wt9FW9U9J9V9KWS9P2tWVT949WbkE9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OWbPa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94J9H9J9OW9ttV9P9Wbsa9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9WbzK9TW79O9V9Wt9F79W9Ht9P9H29t9VVt9sW9T9H9WbHl79IV9RbODwebcekdQXq;A9pLdbk;QqeKu8Jjjjjbcjo9Rgv8Kjjjjbcbhodnalcefae0mbabcbRbN:kjjbc:GeV86bbavcjdfcbcjdzNjjjb8AdnaiTmbavcjdfadalz:tjjjb8Akabaefhrabcefhwavalfcbcbcjdal9RalcFe0EzNjjjb8Aavavcjdfalz:tjjjbhDcj;abal9Uc;WFbGgecjdaecjd6Ehqcbhkindndnaiak9nmbaDcjlfcbcjdzNjjjb8Aaqaiak9Rakaqfai6Egxcsfgecl4cifcd4hmadakal2fhPdndndnaec9WGgsTmbcbhzaPhHawhOxekdnaxmbalheinaraw9Ram6miawcbamzNjjjbamfhwaecufgembxvkkcbhAaPhOinaDaAfRbbhCaDcjlfheaOhoaxhXinaeaoRbbgQaC9RgCcetaCcKtcK91cr4786bbaoalfhoaecefheaQhCaXcufgXmbkaraw9Ram6mdaOcefhOawcbamzNjjjbamfhwaAcefgAal9hmbxlkkindnaxTmbaDazfRbbhCaDcjlfheaHhoaxhXinaeaoRbbgQaC9RgCcetaCcKtcK91cr4786bbaoalfhoaecefheaQhCaXcufgXmbkkaraO9Ram6mearaOcbamzNjjjbgLamfgw9RcK6mecbhKaDcjlfhOinaDcjlfaKfhYcwhAczhQceheindndnaegXce9hmbcuhoaYRbbmecbhodninaogecsSmeaecefhoaOaefcefRbbTmbkkcucbaecs6EhoxekaXcethocuaXtc;:bGcFb7hCcbheinaoaCaOaefRbb9nfhoaecefgecz9hmbkkaoaQaoaQ6geEhQaXaAaeEhAaXcetheaXcl6mbkdndndndnaAcufPdiebkaLaKco4fgeaeRbbcdciaAclSEaKci4coGtV86bbaAcw9hmeawaY8Pbb83bbawcwfaYcwf8Pbb83bbawczfhwxdkaLaKco4fgeaeRbbceaKci4coGtV86bbkdncwaA9Tg8Ambinawcb86bbawcefhwxbkkcuaAtcu7hYcbhEaOh3ina3hea8AhCcbhoinaeRbbgQaYcFeGgXaQaX6EaoaAtVhoaecefheaCcufgCmbkawao86bba3a8Afh3awcefhwaEa8AfgEcz6mbkcbheindnaOaefRbbgoaX6mbawao86bbawcefhwkaecefgecz9hmbkkdnaKczfgKas9pmbaOczfhOaraw9RcL0mekkaKas6meawTmeaHcefhHawhOazcefgzalSmixbkkcbhoxikcbhoaraw9Ralcaalca0E6mddnalc8F0mbawcbcaal9RgezNjjjbaefhwkawaDcjdfalz:tjjjbalfab9RhoxdkaDaPaxcufal2falz:tjjjb8Aaxakfhkawmbkcbhokavcjof8Kjjjjbaok9heeuaecaaeca0Eabcj;abae9Uc;WFbGgdcjdadcjd6Egdfcufad9Uae2adcl4cifcd4adV2fcefkmbcbabBdN:kjjbk:zse5u8Jjjjjbc;ae9Rgl8Kjjjjbcbhvdnaici9UgocHfae0mbabcbyd:e:kjjbgrc;GeV86bbalc;abfcFecjezNjjjb8AalcUfgw9cu83ibalc8WfgD9cu83ibalcyfgq9cu83ibalcafgk9cu83ibalcKfgx9cu83ibalczfgm9cu83ibal9cu83iwal9cu83ibabaefc9WfhPabcefgsaofhednaiTmbcmcsarcb9kgzEhHcbhOcbhAcbhCcbhXcbhQindnaeaP9nmbcbhvxikaQcufhvadaCcdtfgLydbhKaLcwfydbhYaLclfydbh8AcbhEdndndninalc;abfavcsGcitfgoydlh3dndndnaoydbgoaK9hmba3a8ASmekdnaoa8A9hmba3aY9hmbaEcefhExekaoaY9hmea3aK9hmeaEcdfhEkaEc870mdaXcufhvaLaEciGcx2goc:y1jjbfydbcdtfydbh3aLaocN1jjbfydbcdtfydbh8AaLaoc:q1jjbfydbcdtfydbhKcbhodnindnalavcsGcdtfydba39hmbaohYxdkcuhYavcufhvaocefgocz9hmbkkaOa3aOSgvaYce9iaYaH9oVgoGfhOdndndncbcsavEaYaoEgvcs9hmbarce9imba3a3aAa3cefaASgvEgAcefSmecmcsavEhvkasavaEcdtc;WeGV86bbavcs9hmea3aA9Rgvcetavc8F917hvinaeavcFb0crtavcFbGV86bbaecefheavcje6hoavcr4hvaoTmbka3hAxvkcPhvasaEcdtcPV86bba3hAkavTmiavaH9omicdhocehEaQhYxlkavcufhvaEclfgEc;ab9hmbkkdnaLceaYaOSceta8AaOSEcx2gvc:q1jjbfydbcdtfydbgKTaLavcN1jjbfydbcdtfydbg8AceSGaLavc:y1jjbfydbcdtfydbg3cdSGaOcb9hGazGg5ce9hmbaw9cu83ibaD9cu83ibaq9cu83ibak9cu83ibax9cu83ibam9cu83ibal9cu83iwal9cu83ibcbhOkcbhEaXcufgvhodnindnalaocsGcdtfydba8A9hmbaEhYxdkcuhYaocufhoaEcefgEcz9hmbkkcbhodnindnalavcsGcdtfydba39hmbaohExdkcuhEavcufhvaocefgocz9hmbkkaOaKaOSg8EfhLdndnaYcm0mbaYcefhYxekcbcsa8AaLSgvEhYaLavfhLkdndnaEcm0mbaEcefhExekcbcsa3aLSgvEhEaLavfhLkc9:cua8EEh8FcbhvaEaYcltVgacFeGhodndndninavcj1jjbfRbbaoSmeavcefgvcz9hmbxdkka5aKaO9havcm0VVmbasavc;WeV86bbxekasa8F86bbaeaa86bbaecefhekdna8EmbaKaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombkaKhAkdnaYcs9hmba8AaA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka8AhAkdnaEcs9hmba3aA9Rgvcetavc8F917hvinaeavcFb0gocrtavcFbGV86bbavcr4hvaecefheaombka3hAkalaXcdtfaKBdbaXcefcsGhvdndnaYPzbeeeeeeeeeeeeeebekalavcdtfa8ABdbaXcdfcsGhvkdndnaEPzbeeeeeeeeeeeeeebekalavcdtfa3BdbavcefcsGhvkcihoalc;abfaQcitfgEaKBdlaEa8ABdbaQcefcsGhYcdhEavhXaLhOxekcdhoalaXcdtfa3BdbcehEaXcefcsGhXaQhYkalc;abfaYcitfgva8ABdlava3Bdbalc;abfaQaEfcsGcitfgva3BdlavaKBdbascefhsaQaofcsGhQaCcifgCai6mbkkcbhvaeaP0mbcbhvinaeavfavcj1jjbfRbb86bbavcefgvcz9hmbkaeab9Ravfhvkalc;aef8KjjjjbavkZeeucbhddninadcefgdc8F0meceadtae6mbkkadcrfcFeGcr9Uci2cdfabci9U2cHfkmbcbabBd:e:kjjbk:ydewu8Jjjjjbcz9Rhlcbhvdnaicvfae0mbcbhvabcbRb:e:kjjbc;qeV86bbal9cb83iwabcefhoabaefc98fhrdnaiTmbcbhwcbhDindnaoar6mbcbskadaDcdtfydbgqalcwfawaqav9Rgvavc8F91gv7av9Rc507gwcdtfgkydb9Rgvc8E91c9:Gavcdt7awVhvinaoavcFb0gecrtavcFbGV86bbavcr4hvaocefhoaembkakaqBdbaqhvaDcefgDai9hmbkkcbhvaoar0mbaocbBbbaoab9RclfhvkavkBeeucbhddninadcefgdc8F0meceadtae6mbkkadcwfcFeGcr9Uab2cvfk:bvli99dui99ludnaeTmbcuadcetcuftcu7:Yhvdndncuaicuftcu7:YgoJbbbZMgr:lJbbb9p9DTmbar:Ohwxekcjjjj94hwkcbhicbhDinalclfIdbgrJbbbbJbbjZalIdbgq:lar:lMalcwfIdbgk:lMgr:varJbbbb9BEgrNhxaqarNhrdndnakJbbbb9GTmbaxhqxekJbbjZar:l:tgqaq:maxJbbbb9GEhqJbbjZax:l:tgxax:marJbbbb9GEhrkdndnalcxfIdbgxJbbj:;axJbbj:;9GEgkJbbjZakJbbjZ9FEavNJbbbZJbbb:;axJbbbb9GEMgx:lJbbb9p9DTmbax:Ohmxekcjjjj94hmkdndnaqJbbj:;aqJbbj:;9GEgxJbbjZaxJbbjZ9FEaoNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:OhPxekcjjjj94hPkdndnarJbbj:;arJbbj:;9GEgqJbbjZaqJbbjZ9FEaoNJbbbZJbbb:;arJbbbb9GEMgr:lJbbb9p9DTmbar:Ohsxekcjjjj94hskdndnadcl9hmbabaifgzas86bbazcifam86bbazcdfaw86bbazcefaP86bbxekabaDfgzas87ebazcofam87ebazclfaw87ebazcdfaP87ebkalczfhlaiclfhiaDcwfhDaecufgembkkk;hlld99eud99eudnaeTmbdndncuaicuftcu7:YgvJbbbZMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikaic;8FiGhrinabcofcicdalclfIdb:lalIdb:l9EgialcwfIdb:lalaicdtfIdb:l9EEgialcxfIdb:lalaicdtfIdb:l9EEgiarV87ebdndnJbbj:;JbbjZalaicdtfIdbJbbbb9DEgoalaicd7cdtfIdbJ;Zl:1ZNNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabcdfaq87ebdndnalaicefciGcdtfIdbJ;Zl:1ZNaoNgwJbbj:;awJbbj:;9GEgDJbbjZaDJbbjZ9FEavNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohqxekcjjjj94hqkabaq87ebdndnaoalaicufciGcdtfIdbJ;Zl:1ZNNgoJbbj:;aoJbbj:;9GEgwJbbjZawJbbjZ9FEavNJbbbZJbbb:;aoJbbbb9GEMgo:lJbbb9p9DTmbao:Ohixekcjjjj94hikabclfai87ebabcwfhbalczfhlaecufgembkkk;3viDue99eu8Jjjjjbcjd9Rgo8Kjjjjbadcd4hrdndndndnavcd9hmbadcl6meaohwarhDinawc:CuBdbawclfhwaDcufgDmbkaeTmiadcl6mdarcdthqalhkcbhxinaohwakhDarhminawawydbgPcbaDIdbgs:8cL4cFeGc:cufasJbbbb9BEgzaPaz9kEBdbaDclfhDawclfhwamcufgmmbkakaqfhkaxcefgxaeSmixbkkaeTmdxekaeTmekarcdthkavce9hhqadcl6hdcbhxindndndnaqmbadmdc:CuhDalhwarhminaDcbawIdbgs:8cL4cFeGc:cufasJbbbb9BEgPaDaP9kEhDawclfhwamcufgmmbxdkkc:CuhDdndnavPleddbdkadmdaohwalhmarhPinawcbamIdbgs:8cL4cFeGgzc;:bazc;:b9kEc:cufasJbbbb9BEBdbamclfhmawclfhwaPcufgPmbxdkkadmecbhwarhminaoawfcbalawfIdbgs:8cL4cFeGgPc8AaPc8A9kEc:cufasJbbbb9BEBdbawclfhwamcufgmmbkkadmbcbhwarhPinaDhmdnavceSmbaoawfydbhmkdndnalawfIdbgscjjj;8iamai9RcefgmcLt9R::NJbbbZJbbb:;asJbbbb9GEMgs:lJbbb9p9DTmbas:Ohzxekcjjjj94hzkabawfazcFFFrGamcKtVBdbawclfhwaPcufgPmbkkabakfhbalakfhlaxcefgxae9hmbkkaocjdf8Kjjjjbk;HqdCui998Jjjjjbc:qd9Rgv8Kjjjjbavc:Sefcbc;KbzNjjjb8AcbhodnadTmbcbhoaiTmbdnabae9hmbavcuadcdtgradcFFFFi0Ecbyd:m:kjjbHjjjjbbgeBd:SeavceBd:mdaeabarz:tjjjb8Akavc:GefcwfcbBdbav9cb83i:Geavc:Gefaeadaiavc:Sefz:njjjbavyd:Gehwadci9UgDcbyd:m:kjjbHjjjjbbhravc:Sefavyd:mdgqcdtfarBdbavaqcefgkBd:mdarcbaDzNjjjbhxavc:SefakcdtfcuaicdtaicFFFFi0Ecbyd:m:kjjbHjjjjbbgmBdbavaqcdfgPBd:mdawhramhkinakalIdbalarydbgscwascw6Ecdtfc;ebfIdbMUdbarclfhrakclfhkaicufgimbkavc:SefaPcdtfcuaDcdtadcFFFF970Ecbyd:m:kjjbHjjjjbbgPBdbdnadci6mbaehraPhkaDhiinakamarydbcdtfIdbamarclfydbcdtfIdbMamarcwfydbcdtfIdbMUdbarcxfhrakclfhkaicufgimbkkaqcifhoavc;qbfhzavhravyd:KehHavyd:OehOcbhscbhkcbhAcehCinarhXcihQaeakci2gLcdtfgrydbhdarclfydbhqabaAcx2fgicwfarcwfydbgKBdbaiclfaqBdbaiadBdbaxakfce86bbazaKBdwazaqBdlazadBdbaPakcdtfcbBdbdnasTmbcihQaXhiinazaQcdtfaiydbgrBdbaQaraK9harad9haraq9hGGfhQaiclfhiascufgsmbkkaAcefhAcbhsinaOaHaeasaLfcdtfydbcdtgifydbcdtfgKhrawaifgqydbgdhidnadTmbdninarydbakSmearclfhraicufgiTmdxbkkaraKadcdtfc98fydbBdbaqaqydbcufBdbkascefgsci9hmbkdndnaQTmbcuhkJbbbbhYcbhqavyd:KehKavyd:OehLindndnawazaqcdtfydbcdtgsfydbgrmbaqcefhqxekaqcs0hiamasfgdIdbh8AadalcbaqcefgqaiEcdtfIdbalarcwarcw6Ecdtfc;ebfIdbMgEUdbaEa8A:thEarcdthiaLaKasfydbcdtfhrinaParydbgscdtfgdaEadIdbMg8AUdba8AaYaYa8A9DgdEhYasakadEhkarclfhraic98fgimbkkaqaQ9hmbkakcu9hmekaCaD9pmdindnaxaCfRbbmbaChkxdkaDaCcefgC9hmbxikkaQczaQcz6EhsazhraXhzakcu9hmbkkaocdtavc:Seffc98fhrdninaoTmearydbcbyd1:kjjbH:bjjjbbarc98fhraocufhoxbkkavc:qdf8Kjjjjbk;IlevucuaicdtgvaicFFFFi0Egocbyd:m:kjjbHjjjjbbhralalyd9GgwcdtfarBdbalawcefBd9GabarBdbaocbyd:m:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdlcuadcdtadcFFFFi0Ecbyd:m:kjjbHjjjjbbhralalyd9GgocdtfarBdbalaocefBd9GabarBdwabydbcbavzNjjjb8Aadci9UhDdnadTmbabydbhoaehladhrinaoalydbcdtfgvavydbcefBdbalclfhlarcufgrmbkkdnaiTmbabydbhlabydlhrcbhvaihoinaravBdbarclfhralydbavfhvalclfhlaocufgombkkdnadci6mbabydlhrabydwhvcbhlinaecwfydbhoaeclfydbhdaraeydbcdtfgwawydbgwcefBdbavawcdtfalBdbaradcdtfgdadydbgdcefBdbavadcdtfalBdbaraocdtfgoaoydbgocefBdbavaocdtfalBdbaecxfheaDalcefgl9hmbkkdnaiTmbabydlheabydbhlinaeaeydbalydb9RBdbalclfhlaeclfheaicufgimbkkkQbabaeadaic:01jjbz:mjjjbkQbabaeadaic:C:jjjbz:mjjjbk9DeeuabcFeaicdtzNjjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk;Wkivuo99lu8Jjjjjbc;W;Gb9Rgl8Kjjjjbcbhvalcj;Gbfcbc;KbzNjjjb8AalcuadcdtadcFFFFi0Egocbyd:m:kjjbHjjjjbbgrBdj9GalceBd;G9GalcFFF;7rBdwal9cFFF;7;3FF:;Fb83dbalcFFF97Bd;S9Gal9cFFF;7FFF:;u83d;K9Gaicd4hwdndnadmbJFFuFhDJFFuuhqJFFuuhkJFFuFhxJFFuuhmJFFuFhPxekawcdthsaehzincbhiinalaifgHazaifIdbgDaHIdbgxaxaD9EEUdbalc;K;GbfaifgHaDaHIdbgxaxaD9DEUdbaiclfgicx9hmbkazasfhzavcefgvad9hmbkalIdwhqalId;S9GhDalIdlhkalId;O9GhxalIdbhmalId;K9GhPkdndnadTmbJbbbbJbbjZJbbbbaPam:tgPaPJbbbb9DEgPaxak: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;Gb9hmbkcbhHalaocbyd:m:kjjbHjjjjbbgiBd:e9GdnadTmbabhzinazaHBdbazclfhzadaHcefgH9hmbkabhHadhzinalaraHydbgecdtfydbcFrGcx2fgvavydbgvcefBdbaiavcdtfaeBdbaHclfhHazcufgzmbkaihHadhzinalaraHydbgecdtfydbcq4cFrGcx2fgvavydlgvcefBdlabavcdtfaeBdbaHclfhHazcufgzmbkabhHadhzinalaraHydbgecdtfydbcC4cFrGcx2fgvavydwgvcefBdwaiavcdtfaeBdbaHclfhHazcufgzmbkcbhHinabaiydbcdtfaHBdbaiclfhiadaHcefgH9hmbkkclhidninaic98Smealcj;Gbfaifydbcbyd1:kjjbH:bjjjbbaic98fhixbkkalc;W;Gbf8Kjjjjbk9teiucbcbyd:q:kjjbgeabcifc98GfgbBd:q:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd:q:kjjbgeabcrfc94GfgbBd:q:kjjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd:q:kjjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd:q:kjjbfgdBd:q:kjjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akkk:Iddbcjwk:edb4: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:bc:eqkzebbbebbbdbbba:vbb"), {}).then(function(n) {
2374
2374
  (c = n.instance).exports.__wasm_call_ctors(), c.exports.meshopt_encodeVertexVersion(0), c.exports.meshopt_encodeIndexVersion(1);
2375
2375
  });
2376
2376
  function t(n) {
@@ -2379,94 +2379,94 @@ function Ui(c, e, a) {
2379
2379
  function A(n) {
2380
2380
  return new Uint8Array(n.buffer, n.byteOffset, n.byteLength);
2381
2381
  }
2382
- function i(n, b, d, g, h) {
2383
- var l = c.exports.sbrk, f = l(b), I = l(g * h), p = new Uint8Array(c.exports.memory.buffer);
2384
- p.set(A(d), I);
2385
- var u = n(f, b, I, g, h), B = new Uint8Array(u);
2386
- return B.set(p.subarray(f, f + u)), l(f - l(0)), B;
2382
+ function i(n, d, b, g, l) {
2383
+ var h = c.exports.sbrk, f = h(d), I = h(g * l), m = new Uint8Array(c.exports.memory.buffer);
2384
+ m.set(A(b), I);
2385
+ var u = n(f, d, I, g, l), C = new Uint8Array(u);
2386
+ return C.set(m.subarray(f, f + u)), h(f - h(0)), C;
2387
2387
  }
2388
2388
  function s(n) {
2389
- for (var b = 0, d = 0; d < n.length; ++d)
2390
- var g = n[d];
2391
- return b;
2389
+ for (var d = 0, b = 0; b < n.length; ++b)
2390
+ var g = n[b];
2391
+ return d;
2392
2392
  }
2393
- function r(n, b) {
2394
- if (t(b == 2 || b == 4), b == 4) return new Uint32Array(n.buffer, n.byteOffset, n.byteLength / 4);
2395
- var d = new Uint16Array(n.buffer, n.byteOffset, n.byteLength / 2);
2396
- return new Uint32Array(d);
2393
+ function r(n, d) {
2394
+ if (t(d == 2 || d == 4), d == 4) return new Uint32Array(n.buffer, n.byteOffset, n.byteLength / 4);
2395
+ var b = new Uint16Array(n.buffer, n.byteOffset, n.byteLength / 2);
2396
+ return new Uint32Array(b);
2397
2397
  }
2398
- function o(n, b, d, g, h, l, f) {
2399
- var I = c.exports.sbrk, p = I(d * g), u = I(d * l), B = new Uint8Array(c.exports.memory.buffer);
2400
- B.set(A(b), u), n(p, d, g, h, u, f);
2401
- var C = new Uint8Array(d * g);
2402
- return C.set(B.subarray(p, p + d * g)), I(p - I(0)), C;
2398
+ function o(n, d, b, g, l, h, f) {
2399
+ var I = c.exports.sbrk, m = I(b * g), u = I(b * h), C = new Uint8Array(c.exports.memory.buffer);
2400
+ C.set(A(d), u), n(m, b, g, l, u, f);
2401
+ var B = new Uint8Array(b * g);
2402
+ return B.set(C.subarray(m, m + b * g)), I(m - I(0)), B;
2403
2403
  }
2404
2404
  })();
2405
2405
  var Vt = function() {
2406
2406
  var c = 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]);
2407
2407
  if (typeof WebAssembly != "object") return { supported: !1 };
2408
- var a, t = 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(i(t), {}).then(function(h) {
2409
- (a = h.instance).exports.__wasm_call_ctors();
2408
+ var a, t = WebAssembly.validate(c) ? i("b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q:6dkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq:p9sqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk:N8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhlaicefhodnaeTmbadTmbalc;WFbGglcjdalcjd6EhwcbhDinawaeaD9RaDawfae6Egqcsfglc9WGgkci2hxakcethmalcl4cifcd4hPabaDad2fhsakc;ab6hzcbhHincbhOaohAdndninaraA9RaP6meavcj;cbfaOak2fhCaAaPfhocbhidnazmbarao9Rc;Gb6mbcbhlinaCalfhidndndndndnaAalco4fRbbgXciGPlbedibkaipxbbbbbbbbbbbbbbbbpklbxikaiaopbblaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbaoclfaYpQbfaKc:q:yjjbfRbbfhoxdkaiaopbbwaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbaocwfaYpQbfaKc:q:yjjbfRbbfhoxekaiaopbbbpklbaoczfhokdndndndndnaXcd4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklzxikaiaopbblaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzaoclfaYpQbfaKc:q:yjjbfRbbfhoxdkaiaopbbwaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzaocwfaYpQbfaKc:q:yjjbfRbbfhoxekaiaopbbbpklzaoczfhokdndndndndnaXcl4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklaxikaiaopbblaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaaoclfaYpQbfaKc:q:yjjbfRbbfhoxdkaiaopbbwaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaaocwfaYpQbfaKc:q:yjjbfRbbfhoxekaiaopbbbpklaaoczfhokdndndndndnaXco4Plbedibkaipxbbbbbbbbbbbbbbbbpkl8WxikaiaopbblaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WaoclfaYpQbfaXc:q:yjjbfRbbfhoxdkaiaopbbwaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WaocwfaYpQbfaXc:q:yjjbfRbbfhoxekaiaopbbbpkl8Waoczfhokalc;abfhialcjefak0meaihlarao9Rc;Fb0mbkkdnaiak9pmbaici4hlinarao9RcK6miaCaifhXdndndndndnaAaico4fRbbalcoG4ciGPlbedibkaXpxbbbbbbbbbbbbbbbbpkbbxikaXaopbblaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkbbaoclfaYpQbfaKc:q:yjjbfRbbfhoxdkaXaopbbwaopbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkbbaocwfaYpQbfaKc:q:yjjbfRbbfhoxekaXaopbbbpkbbaoczfhokalcdfhlaiczfgiak6mbkkaoTmeaohAaOcefgOclSmdxbkkc9:hoxlkdnakTmbavcjdfaHfhiavaHfpbdbhYcbhXinaiavcj;cbfaXfglpblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLalakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEalamfpblbg3cep9Ta3aQp9op9Hp9rg3alaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfglaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaladfglaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaladfglaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaladfglaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaladfglaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaladfglaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaladfglaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaladfglaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaladfglaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaladfglaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaladfglaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaladfglaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaladfglaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaladfglaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaladfglaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaladfhiaXczfgXak6mbkkaHclfgHad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfgDae6mbkkcbc99arao9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk::seHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgwce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhDaicefgqarfhidnaeTmbcmcsawceSEhkcbhxcbhmcbhPcbhwcbhlindnaiaD9nmbc9:hoxikdndnaqRbbgoc;Ve0mbavc;abfalaocu7gscl4fcsGcitfgzydlhrazydbhzdnaocsGgHak9pmbavawasfcsGcdtfydbaxaHEhoaHThsdndnadcd9hmbabaPcetfgHaz87ebaHclfao87ebaHcdfar87ebxekabaPcdtfgHazBdbaHcwfaoBdbaHclfarBdbkaxasfhxcdhHavawcdtfaoBdbawasfhwcehsalhOxdkdndnaHcsSmbaHc987aHamffcefhoxekaicefhoai8SbbgHcFeGhsdndnaHcu9mmbaohixekaicvfhiascFbGhscrhHdninao8SbbgOcFbGaHtasVhsaOcu9kmeaocefhoaHcrfgHc8J9hmbxdkkaocefhikasce4cbasceG9R7amfhokdndnadcd9hmbabaPcetfgHaz87ebaHclfao87ebaHcdfar87ebxekabaPcdtfgHazBdbaHcwfaoBdbaHclfarBdbkcdhHavawcdtfaoBdbcehsawcefhwalhOaohmxekdnaocpe0mbaxcefgHavawaDaocsGfRbbgocl49RcsGcdtfydbaocz6gzEhravawao9RcsGcdtfydbaHazfgAaocsGgHEhoaHThCdndnadcd9hmbabaPcetfgHax87ebaHclfao87ebaHcdfar87ebxekabaPcdtfgHaxBdbaHcwfaoBdbaHclfarBdbkcdhsavawcdtfaxBdbavawcefgwcsGcdtfarBdbcihHavc;abfalcitfgOaxBdlaOarBdbavawazfgwcsGcdtfaoBdbalcefcsGhOawaCfhwaxhzaAaCfhxxekaxcbaiRbbgOEgzaoc;:eSgHfhraOcsGhCaOcl4hAdndnaOcs0mbarcefhoxekarhoavawaA9RcsGcdtfydbhrkdndnaCmbaocefhxxekaohxavawaO9RcsGcdtfydbhokdndnaHTmbaicefhHxekaicdfhHai8SbegscFeGhzdnascu9kmbaicofhXazcFbGhzcrhidninaH8SbbgscFbGaitazVhzascu9kmeaHcefhHaicrfgic8J9hmbkaXhHxekaHcefhHkazce4cbazceG9R7amfgmhzkdndnaAcsSmbaHhsxekaHcefhsaH8SbbgicFeGhrdnaicu9kmbaHcvfhXarcFbGhrcrhidninas8SbbgHcFbGaitarVhraHcu9kmeascefhsaicrfgic8J9hmbkaXhsxekascefhskarce4cbarceG9R7amfgmhrkdndnaCcsSmbashixekascefhias8SbbgocFeGhHdnaocu9kmbascvfhXaHcFbGhHcrhodninai8SbbgscFbGaotaHVhHascu9kmeaicefhiaocrfgoc8J9hmbkaXhixekaicefhikaHce4cbaHceG9R7amfgmhokdndnadcd9hmbabaPcetfgHaz87ebaHclfao87ebaHcdfar87ebxekabaPcdtfgHazBdbaHcwfaoBdbaHclfarBdbkcdhsavawcdtfazBdbavawcefgwcsGcdtfarBdbcihHavc;abfalcitfgXazBdlaXarBdbavawaOcz6aAcsSVfgwcsGcdtfaoBdbawaCTaCcsSVfhwalcefcsGhOkaqcefhqavc;abfaOcitfgOarBdlaOaoBdbavc;abfalasfcsGcitfgraoBdlarazBdbawcsGhwalaHfcsGhlaPcifgPae6mbkkcbc99aiaDSEhokavc;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:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalaeSmeaipxbbbbbbbbbbbbbbbbgqpklbaiabalcdtfgdaeciGglcdtgv;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;8qbbskdnalTmbcbhvabhdinadczfgxaxpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oaoarpmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgval6mbkkalaeSmbaiaeciGgvcitgdfcbcaad9R;8kbaiabalcitfglad;8qbbdnavTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmbediwDqkzHOAKY8AEgwczp:Reczp:Sep;6egraDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eawczp:Sep;6egwp;Gearp;Gep;Kep;Legopxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegrpxb;:FSb;:FSb;:FSb;:FSararp;Meaoaop;Meawaqawamp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFFbbFFbbFFbbFFbbp9oaoawp;Meaqp;Keczp:Rep9qgoarawp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogrpmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oaoarpmbezHdiOAlvCXorQLp9qpklbkalaiad;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:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalaeSmbaiaeciGgvcitgofcbcaao9R;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:Rep9qgxaDakp;Mearp;Keamp9oaqakp;Mearp;Keczp:Rep9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkawaiao;8qbbkk:Pddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbheabhdinadadpbbbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepkbbadczfhdaeclfgeav6mbkkdnavalSmbaialciGgecdtgdVcbc;abad9R;8kbaiabavcdtfgvad;8qbbdnaeTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjFbbjFbbjFbbjFp9opxbbjZbbjZbbjZbbjZp:Uep;Mepklbkavaiad;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz:Dbb") : i("b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q:Odkr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq;w8Wqdbk;esezu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9Uc;WFbGgocjdaocjd6EhDaicefhocbhqdnindndndnaeaq9nmbaDaeaq9RaqaDfae6Egkcsfglcl4cifcd4hxalc9WGgmTmecbhPawcjdfhsaohzinaraz9Rax6mvarazaxfgo9RcK6mvczhlcbhHinalgic9WfgOawcj;cbffhldndndndndnazaOco4fRbbaHcoG4ciGPlbedibkal9cb83ibalcwf9cb83ibxikalaoRblaoRbbgOco4gAaAciSgAE86bbawcj;cbfaifglcGfaoclfaAfgARbbaOcl4ciGgCaCciSgCE86bbalcVfaAaCfgARbbaOcd4ciGgCaCciSgCE86bbalc7faAaCfgARbbaOciGgOaOciSgOE86bbalctfaAaOfgARbbaoRbegOco4gCaCciSgCE86bbalc91faAaCfgARbbaOcl4ciGgCaCciSgCE86bbalc4faAaCfgARbbaOcd4ciGgCaCciSgCE86bbalc93faAaCfgARbbaOciGgOaOciSgOE86bbalc94faAaOfgARbbaoRbdgOco4gCaCciSgCE86bbalc95faAaCfgARbbaOcl4ciGgCaCciSgCE86bbalc96faAaCfgARbbaOcd4ciGgCaCciSgCE86bbalc97faAaCfgARbbaOciGgOaOciSgOE86bbalc98faAaOfgORbbaoRbigoco4gAaAciSgAE86bbalc99faOaAfgORbbaocl4ciGgAaAciSgAE86bbalc9:faOaAfgORbbaocd4ciGgAaAciSgAE86bbalcufaOaAfglRbbaociGgoaociSgoE86bbalaofhoxdkalaoRbwaoRbbgOcl4gAaAcsSgAE86bbawcj;cbfaifglcGfaocwfaAfgARbbaOcsGgOaOcsSgOE86bbalcVfaAaOfgORbbaoRbegAcl4gCaCcsSgCE86bbalc7faOaCfgORbbaAcsGgAaAcsSgAE86bbalctfaOaAfgORbbaoRbdgAcl4gCaCcsSgCE86bbalc91faOaCfgORbbaAcsGgAaAcsSgAE86bbalc4faOaAfgORbbaoRbigAcl4gCaCcsSgCE86bbalc93faOaCfgORbbaAcsGgAaAcsSgAE86bbalc94faOaAfgORbbaoRblgAcl4gCaCcsSgCE86bbalc95faOaCfgORbbaAcsGgAaAcsSgAE86bbalc96faOaAfgORbbaoRbvgAcl4gCaCcsSgCE86bbalc97faOaCfgORbbaAcsGgAaAcsSgAE86bbalc98faOaAfgORbbaoRbogAcl4gCaCcsSgCE86bbalc99faOaCfgORbbaAcsGgAaAcsSgAE86bbalc9:faOaAfgORbbaoRbrgocl4gAaAcsSgAE86bbalcufaOaAfglRbbaocsGgoaocsSgoE86bbalaofhoxekalao8Pbb83bbalcwfaocwf8Pbb83bbaoczfhokdnaiam9pmbaHcdfhHaiczfhlarao9RcL0mekkaiam6mvaoTmvdnakTmbawaPfRbbhHawcj;cbfhlashiakhOinaialRbbgzce4cbazceG9R7aHfgH86bbaiadfhialcefhlaOcufgOmbkkascefhsaohzaPcefgPad9hmbxikkcbc99arao9Radcaadca0ESEhoxlkaoaxad2fhCdnakmbadhlinaoTmlarao9Rax6mlaoaxfhoalcufglmbkaChoxekcbhmawcjdfhAinarao9Rax6miawamfRbbhHawcj;cbfhlaAhiakhOinaialRbbgzce4cbazceG9R7aHfgH86bbaiadfhialcefhlaOcufgOmbkaAcefhAaoaxfhoamcefgmad9hmbkaChokabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqaombkc9:hoxekc9:hokavcj;ebf8Kjjjjbaok;cseHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgwce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhDaicefgqarfhidnaeTmbcmcsawceSEhkcbhxcbhmcbhPcbhwcbhlindnaiaD9nmbc9:hoxikdndnaqRbbgoc;Ve0mbavc;abfalaocu7gscl4fcsGcitfgzydlhrazydbhzdnaocsGgHak9pmbavawasfcsGcdtfydbaxaHEhoaHThsdndnadcd9hmbabaPcetfgHaz87ebaHclfao87ebaHcdfar87ebxekabaPcdtfgHazBdbaHcwfaoBdbaHclfarBdbkaxasfhxcdhHavawcdtfaoBdbawasfhwcehsalhOxdkdndnaHcsSmbaHc987aHamffcefhoxekaicefhoai8SbbgHcFeGhsdndnaHcu9mmbaohixekaicvfhiascFbGhscrhHdninao8SbbgOcFbGaHtasVhsaOcu9kmeaocefhoaHcrfgHc8J9hmbxdkkaocefhikasce4cbasceG9R7amfhokdndnadcd9hmbabaPcetfgHaz87ebaHclfao87ebaHcdfar87ebxekabaPcdtfgHazBdbaHcwfaoBdbaHclfarBdbkcdhHavawcdtfaoBdbcehsawcefhwalhOaohmxekdnaocpe0mbaxcefgHavawaDaocsGfRbbgocl49RcsGcdtfydbaocz6gzEhravawao9RcsGcdtfydbaHazfgAaocsGgHEhoaHThCdndnadcd9hmbabaPcetfgHax87ebaHclfao87ebaHcdfar87ebxekabaPcdtfgHaxBdbaHcwfaoBdbaHclfarBdbkcdhsavawcdtfaxBdbavawcefgwcsGcdtfarBdbcihHavc;abfalcitfgOaxBdlaOarBdbavawazfgwcsGcdtfaoBdbalcefcsGhOawaCfhwaxhzaAaCfhxxekaxcbaiRbbgOEgzaoc;:eSgHfhraOcsGhCaOcl4hAdndnaOcs0mbarcefhoxekarhoavawaA9RcsGcdtfydbhrkdndnaCmbaocefhxxekaohxavawaO9RcsGcdtfydbhokdndnaHTmbaicefhHxekaicdfhHai8SbegscFeGhzdnascu9kmbaicofhXazcFbGhzcrhidninaH8SbbgscFbGaitazVhzascu9kmeaHcefhHaicrfgic8J9hmbkaXhHxekaHcefhHkazce4cbazceG9R7amfgmhzkdndnaAcsSmbaHhsxekaHcefhsaH8SbbgicFeGhrdnaicu9kmbaHcvfhXarcFbGhrcrhidninas8SbbgHcFbGaitarVhraHcu9kmeascefhsaicrfgic8J9hmbkaXhsxekascefhskarce4cbarceG9R7amfgmhrkdndnaCcsSmbashixekascefhias8SbbgocFeGhHdnaocu9kmbascvfhXaHcFbGhHcrhodninai8SbbgscFbGaotaHVhHascu9kmeaicefhiaocrfgoc8J9hmbkaXhixekaicefhikaHce4cbaHceG9R7amfgmhokdndnadcd9hmbabaPcetfgHaz87ebaHclfao87ebaHcdfar87ebxekabaPcdtfgHazBdbaHcwfaoBdbaHclfarBdbkcdhsavawcdtfazBdbavawcefgwcsGcdtfarBdbcihHavc;abfalcitfgXazBdlaXarBdbavawaOcz6aAcsSVfgwcsGcdtfaoBdbawaCTaCcsSVfhwalcefcsGhOkaqcefhqavc;abfaOcitfgOarBdlaOaoBdbavc;abfalasfcsGcitfgraoBdlarazBdbawcsGhwalaHfcsGhlaPcifgPae6mbkkcbc99aiaDSEhokavc;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;oiliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabaiavcefciGfcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavciGfgkcd7cetfaD87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:OhDxekcjjjj94hDkabaiavcufciGfcetfaD87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohvxekcjjjj94hvkabakcetfav87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2gdTmbinababydbgecwtcw91:Yaece91cjjj98Gcjjj;8if::NUdbabclfhbadcufgdmbkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklzNbb"), A = WebAssembly.instantiate(t, {}).then(function(l) {
2409
+ (a = l.instance).exports.__wasm_call_ctors();
2410
2410
  });
2411
- function i(h) {
2412
- for (var l = new Uint8Array(h.length), f = 0; f < h.length; ++f) {
2413
- var I = h.charCodeAt(f);
2414
- l[f] = I > 96 ? I - 97 : I > 64 ? I - 39 : I + 4;
2411
+ function i(l) {
2412
+ for (var h = new Uint8Array(l.length), f = 0; f < l.length; ++f) {
2413
+ var I = l.charCodeAt(f);
2414
+ h[f] = I > 96 ? I - 97 : I > 64 ? I - 39 : I + 4;
2415
2415
  }
2416
- var p = 0;
2417
- for (f = 0; f < h.length; ++f) l[p++] = l[f] < 60 ? e[l[f]] : 64 * (l[f] - 60) + l[++f];
2418
- return l.buffer.slice(0, p);
2419
- }
2420
- function s(h, l, f, I, p, u, B) {
2421
- var C = h.exports.sbrk, y = I + 3 & -4, x = C(y * p), w = C(u.length), m = new Uint8Array(h.exports.memory.buffer);
2422
- m.set(u, w);
2423
- var Q = l(x, I, p, w, u.length);
2424
- if (Q == 0 && B && B(x, y, p), f.set(m.subarray(x, x + I * p)), C(x - C(0)), Q != 0) throw new Error("Malformed buffer data: " + Q);
2425
- }
2426
- var r = { NONE: "", OCTAHEDRAL: "meshopt_decodeFilterOct", QUATERNION: "meshopt_decodeFilterQuat", EXPONENTIAL: "meshopt_decodeFilterExp" }, o = { ATTRIBUTES: "meshopt_decodeVertexBuffer", TRIANGLES: "meshopt_decodeIndexBuffer", INDICES: "meshopt_decodeIndexSequence" }, n = [], b = 0;
2427
- function d(h) {
2428
- var l = { object: new Worker(h), pending: 0, requests: {} };
2429
- return l.object.onmessage = function(f) {
2416
+ var m = 0;
2417
+ for (f = 0; f < l.length; ++f) h[m++] = h[f] < 60 ? e[h[f]] : 64 * (h[f] - 60) + h[++f];
2418
+ return h.buffer.slice(0, m);
2419
+ }
2420
+ function s(l, h, f, I, m, u, C) {
2421
+ var B = l.exports.sbrk, y = I + 3 & -4, k = B(y * m), w = B(u.length), p = new Uint8Array(l.exports.memory.buffer);
2422
+ p.set(u, w);
2423
+ var Q = h(k, I, m, w, u.length);
2424
+ if (Q == 0 && C && C(k, y, m), f.set(p.subarray(k, k + I * m)), B(k - B(0)), Q != 0) throw new Error("Malformed buffer data: " + Q);
2425
+ }
2426
+ var r = { NONE: "", OCTAHEDRAL: "meshopt_decodeFilterOct", QUATERNION: "meshopt_decodeFilterQuat", EXPONENTIAL: "meshopt_decodeFilterExp" }, o = { ATTRIBUTES: "meshopt_decodeVertexBuffer", TRIANGLES: "meshopt_decodeIndexBuffer", INDICES: "meshopt_decodeIndexSequence" }, n = [], d = 0;
2427
+ function b(l) {
2428
+ var h = { object: new Worker(l), pending: 0, requests: {} };
2429
+ return h.object.onmessage = function(f) {
2430
2430
  var I = f.data;
2431
- l.pending -= I.count, l.requests[I.id][I.action](I.value), delete l.requests[I.id];
2432
- }, l;
2431
+ h.pending -= I.count, h.requests[I.id][I.action](I.value), delete h.requests[I.id];
2432
+ }, h;
2433
2433
  }
2434
- function g(h) {
2435
- var l = h.data;
2436
- if (!l.id) return self.close();
2434
+ function g(l) {
2435
+ var h = l.data;
2436
+ if (!h.id) return self.close();
2437
2437
  self.ready.then(function(f) {
2438
2438
  try {
2439
- var I = new Uint8Array(l.count * l.size);
2440
- s(f, f.exports[l.mode], I, l.count, l.size, l.source, f.exports[l.filter]), self.postMessage({ id: l.id, count: l.count, action: "resolve", value: I }, [I.buffer]);
2441
- } catch (p) {
2442
- self.postMessage({ id: l.id, count: l.count, action: "reject", value: p });
2439
+ var I = new Uint8Array(h.count * h.size);
2440
+ s(f, f.exports[h.mode], I, h.count, h.size, h.source, f.exports[h.filter]), self.postMessage({ id: h.id, count: h.count, action: "resolve", value: I }, [I.buffer]);
2441
+ } catch (m) {
2442
+ self.postMessage({ id: h.id, count: h.count, action: "reject", value: m });
2443
2443
  }
2444
2444
  });
2445
2445
  }
2446
- return { ready: A, supported: !0, useWorkers: function(h) {
2447
- (function(l) {
2448
- for (var f = "self.ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(i(t)) + "]), {}).then(function(result) { result.instance.exports.__wasm_call_ctors(); return result.instance; });self.onmessage = " + g.name + ";" + s.toString() + g.toString(), I = new Blob([f], { type: "text/javascript" }), p = URL.createObjectURL(I), u = n.length; u < l; ++u) n[u] = d(p);
2449
- for (u = l; u < n.length; ++u) n[u].object.postMessage({});
2450
- n.length = l, URL.revokeObjectURL(p);
2451
- })(h);
2452
- }, decodeVertexBuffer: function(h, l, f, I, p) {
2453
- s(a, a.exports.meshopt_decodeVertexBuffer, h, l, f, I, a.exports[r[p]]);
2454
- }, decodeIndexBuffer: function(h, l, f, I) {
2455
- s(a, a.exports.meshopt_decodeIndexBuffer, h, l, f, I);
2456
- }, decodeIndexSequence: function(h, l, f, I) {
2457
- s(a, a.exports.meshopt_decodeIndexSequence, h, l, f, I);
2458
- }, decodeGltfBuffer: function(h, l, f, I, p, u) {
2459
- s(a, a.exports[o[p]], h, l, f, I, a.exports[r[u]]);
2460
- }, decodeGltfBufferAsync: function(h, l, f, I, p) {
2461
- return n.length > 0 ? function(u, B, C, y, x) {
2462
- for (var w = n[0], m = 1; m < n.length; ++m) n[m].pending < w.pending && (w = n[m]);
2463
- return new Promise(function(Q, k) {
2464
- var D = new Uint8Array(C), F = ++b;
2465
- w.pending += u, w.requests[F] = { resolve: Q, reject: k }, w.object.postMessage({ id: F, count: u, size: B, source: D, mode: y, filter: x }, [D.buffer]);
2446
+ return { ready: A, supported: !0, useWorkers: function(l) {
2447
+ (function(h) {
2448
+ for (var f = "self.ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(t) + "]), {}).then(function(result) { result.instance.exports.__wasm_call_ctors(); return result.instance; });self.onmessage = " + g.name + ";" + s.toString() + g.toString(), I = new Blob([f], { type: "text/javascript" }), m = URL.createObjectURL(I), u = n.length; u < h; ++u) n[u] = b(m);
2449
+ for (u = h; u < n.length; ++u) n[u].object.postMessage({});
2450
+ n.length = h, URL.revokeObjectURL(m);
2451
+ })(l);
2452
+ }, decodeVertexBuffer: function(l, h, f, I, m) {
2453
+ s(a, a.exports.meshopt_decodeVertexBuffer, l, h, f, I, a.exports[r[m]]);
2454
+ }, decodeIndexBuffer: function(l, h, f, I) {
2455
+ s(a, a.exports.meshopt_decodeIndexBuffer, l, h, f, I);
2456
+ }, decodeIndexSequence: function(l, h, f, I) {
2457
+ s(a, a.exports.meshopt_decodeIndexSequence, l, h, f, I);
2458
+ }, decodeGltfBuffer: function(l, h, f, I, m, u) {
2459
+ s(a, a.exports[o[m]], l, h, f, I, a.exports[r[u]]);
2460
+ }, decodeGltfBufferAsync: function(l, h, f, I, m) {
2461
+ return n.length > 0 ? function(u, C, B, y, k) {
2462
+ for (var w = n[0], p = 1; p < n.length; ++p) n[p].pending < w.pending && (w = n[p]);
2463
+ return new Promise(function(Q, x) {
2464
+ var j = new Uint8Array(B), M = ++d;
2465
+ w.pending += u, w.requests[M] = { resolve: Q, reject: x }, w.object.postMessage({ id: M, count: u, size: C, source: j, mode: y, filter: k }, [j.buffer]);
2466
2466
  });
2467
- }(h, l, f, o[I], r[p]) : A.then(function() {
2468
- var u = new Uint8Array(h * l);
2469
- return s(a, a.exports[o[I]], u, h, l, f, a.exports[r[p]]), u;
2467
+ }(l, h, f, o[I], r[m]) : A.then(function() {
2468
+ var u = new Uint8Array(l * h);
2469
+ return s(a, a.exports[o[I]], u, l, h, f, a.exports[r[m]]), u;
2470
2470
  });
2471
2471
  } };
2472
2472
  }();
@@ -2475,13 +2475,13 @@ var Vt = function() {
2475
2475
  if (typeof WebAssembly != "object") return { supported: !1 };
2476
2476
  var a = WebAssembly.instantiate(function(r) {
2477
2477
  for (var o = new Uint8Array(r.length), n = 0; n < r.length; ++n) {
2478
- var b = r.charCodeAt(n);
2479
- o[n] = b > 96 ? b - 97 : b > 64 ? b - 39 : b + 4;
2478
+ var d = r.charCodeAt(n);
2479
+ o[n] = d > 96 ? d - 97 : d > 64 ? d - 39 : d + 4;
2480
2480
  }
2481
- var d = 0;
2482
- for (n = 0; n < r.length; ++n) o[d++] = o[n] < 60 ? e[o[n]] : 64 * (o[n] - 60) + o[++n];
2483
- return o.buffer.slice(0, d);
2484
- }("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(r) {
2481
+ var b = 0;
2482
+ for (n = 0; n < r.length; ++n) o[b++] = o[n] < 60 ? e[o[n]] : 64 * (o[n] - 60) + o[++n];
2483
+ return o.buffer.slice(0, b);
2484
+ }("b9H79Tebbbe9Hk9Geueu9Geub9Gbb9Gsuuuuuuuuuuuu99uueu9Gvuuuuub9Gvuuuuue999Gquuuuuuu99uueu9Gwuuuuuu99ueu9Giuuue999Gluuuueu9GiuuueuizsdilvoirwDbqqbeqlve9Weiiviebeoweuecj:Pdkr:Tewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bbz9TW79O9V9Wt9F79P9T9W29P9M95bl8E9TW79O9V9Wt9F79P9T9W29P9M959x9Pt9OcttV9P9I91tW7bvQ9TW79O9V9Wt9F79P9T9W29P9M959q9V9P9Ut7boX9TW79O9V9Wt9F79P9T9W29P9M959t9J9H2Wbra9TW79O9V9Wt9F9V9Wt9P9T9P96W9wWVtW94SWt9J9O9sW9T9H9Wbwl79IV9RbDDwebcekdmxq;UMesdbk:kfvKue99euY99Qu8Jjjjjbc;W;qb9Rgs8Kjjjjbcbhzascxfcbc;Kbz:ljjjb8AdnabaeSmbabaeadcdtz:kjjjb8AkdnamcdGTmbalcrfci4gHcbyd;S1jjbHjjjjbbheascxfasyd2gOcdtfaeBdbasaOcefBd2aecbaHz:ljjjbhAcbhlcbhednadTmbcbhlabheadhHinaAaeydbgOci4fgCaCRbbgCceaOcrGgOtV86bbaCcu7aO4ceGalfhlaeclfheaHcufgHmbkcualcdtalcFFFFi0Ehekaecbyd;S1jjbHjjjjbbhzascxfasyd2gecdtfazBdbasaecefBd2alcd4alfhOcehHinaHgecethHaeaO6mbkcbhXcuaecdtgOaecFFFFi0Ecbyd;S1jjbHjjjjbbhHascxfasyd2gCcdtfaHBdbasaCcefBd2aHcFeaOz:ljjjbhQdnadTmbaecufhCcbhLinabaXcdtfgKydbgAc:v;t;h;Ev2hOcbhedndninaQaOaCGgOcdtfgYydbgHcuSmeazaHcdtfydbaASmdaecefgeaOfhOaeaC9nmbxdkkazaLcdtfaABdbaYaLBdbaLhHaLcefhLkaKaHBdbaXcefgXad9hmbkkaQcbyd;O1jjbH:bjjjbbasasyd2cufBd2kcualcefgecdtaecFFFFi0Ecbyd;S1jjbHjjjjbbh8Aascxfasyd2gecdtfa8ABdbasa8ABdlasaecefBd2cuadcitadcFFFFe0Ecbyd;S1jjbHjjjjbbhEascxfasyd2gecdtfaEBdbasaEBdwasaecefBd2asclfabadalcbz:cjjjbcualcdtg3alcFFFFi0Eg5cbyd;S1jjbHjjjjbbhQascxfasyd2gecdtfaQBdbasaecefBd2a5cbyd;S1jjbHjjjjbbh8Eascxfasyd2gecdtfa8EBdbasaecefBd2alcd4alfhOcehHinaHgecethHaeaO6mbkcbhLcuaecdtgOaecFFFFi0Ecbyd;S1jjbHjjjjbbhHascxfasyd2gCcdtfaHBdbasaCcefBd2aHcFeaOz:ljjjbhXdnalTmbavcd4hCaecufhHinaLhednazTmbazaLcdtfydbhekaiaeaC2cdtfgeydlgOcH4aO7c:F:b:DD2aeydbgOcH4aO7c;D;O:B8J27aeydwgecH4ae7c:3F;N8N27aHGheaLcdth8FdndndndndnazTmbaza8FfhKcbhOinaXaecdtfgYydbgAcuSmlaiazaAcdtfydbaC2cdtfaiaKydbaC2cdtfcxz:ojjjbTmiaOcefgOaefaHGheaOaH9nmbxdkkaiaLaC2cdtfhKcbhOinaXaecdtfgYydbgAcuSmiaiaAaC2cdtfaKcxz:ojjjbTmdaOcefgOaefaHGheaOaH9nmbkkcbhYkaYydbgecu9hmekaYaLBdbaLhekaQa8FfaeBdbaLcefgLal9hmbkcbhea8EhHinaHaeBdbaHclfhHalaecefge9hmbkcbheaQhHa8EhOindnaeaHydbgCSmbaOa8EaCcdtfgCydbBdbaCaeBdbkaHclfhHaOclfhOalaecefge9hmbkkcbhaaXcbyd;O1jjbH:bjjjbbasasyd2cufBd2alcbyd;S1jjbHjjjjbbhXascxfasyd2gecdtfaXBdbasaecefBd2a5cbyd;S1jjbHjjjjbbheascxfasyd2gHcdtfaeBdbasaHcefBd2a5cbyd;S1jjbHjjjjbbhHascxfasyd2gOcdtfaHBdbasaOcefBd2aecFea3z:ljjjbhhaHcFea3z:ljjjbhgdnalTmbaEcwfh8Jindna8AaagOcefgacdtfydbgCa8AaOcdtgefydbgHSmbaCaH9Rh8FaEaHcitfh3agaefh8KahaefhLcbhAindndna3aAcitfydbgYaO9hmbaLaOBdba8KaOBdbxekdna8AaYcdtg8LfgeclfydbgHaeydbgeSmbaEaecitgCfydbaOSmeaHae9Rh8Maecu7aHfhKa8JaCfhHcbheinaKaeSmeaecefheaHydbhCaHcwfhHaCaO9hmbkaea8M6mekaga8LfgeaOaYaeydbcuSEBdbaLaYaOaLydbcuSEBdbkaAcefgAa8F9hmbkkaaal9hmbkaQhHa8EhOaghCahhAcbheindndnaeaHydbgY9hmbdnaeaOydbgY9hmbaAydbhYdnaCydbgKcu9hmbaYcu9hmbaXaefcb86bbxikaXaefhLdnaeaKSmbaeaYSmbaLce86bbxikaLcl86bbxdkdnaea8EaYcdtgKfydb9hmbdnaCydbgLcuSmbaeaLSmbaAydbg8FcuSmbaea8FSmbagaKfydbg3cuSmba3aYSmbahaKfydbgKcuSmbaKaYSmbdnaQaLcdtfydbgYaQaKcdtfydb9hmbaYaQa8FcdtfydbgKSmbaKaQa3cdtfydb9hmbaXaefcd86bbxlkaXaefcl86bbxikaXaefcl86bbxdkaXaefcl86bbxekaXaefaXaYfRbb86bbkaHclfhHaOclfhOaCclfhCaAclfhAalaecefge9hmbkdnaqTmbdndnazTmbazheaQhHalhOindnaqaeydbfRbbTmbaXaHydbfcl86bbkaeclfheaHclfhHaOcufgOmbxdkkaQhealhHindnaqRbbTmbaXaeydbfcl86bbkaqcefhqaeclfheaHcufgHmbkkaQhealhOaXhHindnaXaeydbfRbbcl9hmbaHcl86bbkaeclfheaHcefhHaOcufgOmbkkamceGTmbaXhealhHindnaeRbbce9hmbaecl86bbkaecefheaHcufgHmbkkcualcx2alc;v:Q;v:Qe0Ecbyd;S1jjbHjjjjbbhaascxfasyd2gecdtfaaBdbasaecefBd2aaaialavazz:djjjbh8NdndnaDmbcbhycbh8Jxekcbh8JawhecbhHindnaeIdbJbbbb9ETmbasc;Wbfa8JcdtfaHBdba8Jcefh8JkaeclfheaDaHcefgH9hmbkcua8Jal2gecdtaecFFFFi0Ecbyd;S1jjbHjjjjbbhyascxfasyd2gecdtfayBdbasaecefBd2alTmba8JTmbarcd4hLdnazTmba8JcdthicbhYayhKinaoazaYcdtfydbaL2cdtfhAasc;WbfheaKhHa8JhOinaHaAaeydbcdtgCfIdbawaCfIdbNUdbaeclfheaHclfhHaOcufgOmbkaKaifhKaYcefgYal9hmbxdkka8JcdthicbhYayhKinaoaYaL2cdtfhAasc;WbfheaKhHa8JhOinaHaAaeydbcdtgCfIdbawaCfIdbNUdbaeclfheaHclfhHaOcufgOmbkaKaifhKaYcefgYal9hmbkkcualc8S2gHalc;D;O;f8U0EgCcbyd;S1jjbHjjjjbbheascxfasyd2gOcdtfaeBdbasaOcefBd2aecbaHz:ljjjbhqdndndndna8JTmbaCcbyd;S1jjbHjjjjbbhvascxfasyd2gecdtfavBdbcehOasaecefBd2avcbaHz:ljjjb8Acua8Jal2gecltgHaecFFFFb0Ecbyd;S1jjbHjjjjbbhrascxfasyd2gecdtfarBdbasaecefBd2arcbaHz:ljjjb8AadmexikcbhvadTmecbhrkcbhAabhHindnaaaHclfydbgYcx2fgeIdbaaaHydbgKcx2fgOIdbg8P:tgIaaaHcwfydbgLcx2fgCIdlaOIdlg8R:tg8SNaCIdba8P:tgRaeIdla8R:tg8UN:tg8Va8VNa8UaCIdwaOIdwg8W:tg8XNa8SaeIdwa8W:tg8UN:tg8Sa8SNa8UaRNa8XaIN:tgIaINMM:rgRJbbbb9ETmba8VaR:vh8VaIaR:vhIa8SaR:vh8SkaqaQaKcdtfydbc8S2fgea8SaR:rgRa8SNNg8UaeIdbMUdbaeaIaRaINg8YNg8XaeIdlMUdlaea8VaRa8VNg8ZNg80aeIdwMUdwaea8Ya8SNg8YaeIdxMUdxaea8Za8SNg81aeIdzMUdzaea8ZaINg8ZaeIdCMUdCaea8SaRa8Va8WNa8Sa8PNa8RaINMM:mg8RNg8PNg8SaeIdKMUdKaeaIa8PNgIaeId3MUd3aea8Va8PNg8VaeIdaMUdaaea8Pa8RNg8PaeId8KMUd8KaeaRaeIdyMUdyaqaQaYcdtfydbc8S2fgea8UaeIdbMUdbaea8XaeIdlMUdlaea80aeIdwMUdwaea8YaeIdxMUdxaea81aeIdzMUdzaea8ZaeIdCMUdCaea8SaeIdKMUdKaeaIaeId3MUd3aea8VaeIdaMUdaaea8PaeId8KMUd8KaeaRaeIdyMUdyaqaQaLcdtfydbc8S2fgea8UaeIdbMUdbaea8XaeIdlMUdlaea80aeIdwMUdwaea8YaeIdxMUdxaea81aeIdzMUdzaea8ZaeIdCMUdCaea8SaeIdKMUdKaeaIaeId3MUd3aea8VaeIdaMUdaaea8PaeId8KMUd8KaeaRaeIdyMUdyaHcxfhHaAcifgAad6mbkcbhiabhKinabaicdtfhYcbhHinaXaYaHc:G1jjbfydbcdtfydbgOfRbbhedndnaXaKaHfydbgCfRbbgAc99fcFeGcpe0mbaeceSmbaecd9hmekdnaAcufcFeGce0mbahaCcdtfydbaO9hmekdnaecufcFeGce0mbagaOcdtfydbaC9hmekdnaAcv2aefcj1jjbfRbbTmbaQaOcdtfydbaQaCcdtfydb0mekJbbacJbbacJbbjZaeceSEaAceSEh8ZdnaaaYaHc:K1jjbfydbcdtfydbcx2fgeIdwaaaCcx2fgAIdwg8R:tg8VaaaOcx2fgLIdwa8R:tg8Sa8SNaLIdbaAIdbg8W:tgIaINaLIdlaAIdlg8U:tgRaRNMMg8PNa8Va8SNaeIdba8W:tg80aINaRaeIdla8U:tg8YNMMg8Xa8SN:tg8Va8VNa80a8PNa8XaIN:tg8Sa8SNa8Ya8PNa8XaRN:tgIaINMM:rgRJbbbb9ETmba8VaR:vh8VaIaR:vhIa8SaR:vh8SkaqaQaCcdtfydbc8S2fgea8Sa8Za8P:rNgRa8SNNg8XaeIdbMUdbaeaIaRaINg8ZNg80aeIdlMUdlaea8VaRa8VNg8PNg8YaeIdwMUdwaea8Za8SNg8ZaeIdxMUdxaea8Pa8SNg81aeIdzMUdzaea8PaINgBaeIdCMUdCaea8SaRa8Va8RNa8Sa8WNa8UaINMM:mg8RNg8PNg8SaeIdKMUdKaeaIa8PNgIaeId3MUd3aea8Va8PNg8VaeIdaMUdaaea8Pa8RNg8PaeId8KMUd8KaeaRaeIdyMUdyaqaQaOcdtfydbc8S2fgea8XaeIdbMUdbaea80aeIdlMUdlaea8YaeIdwMUdwaea8ZaeIdxMUdxaea81aeIdzMUdzaeaBaeIdCMUdCaea8SaeIdKMUdKaeaIaeId3MUd3aea8VaeIdaMUdaaea8PaeId8KMUd8KaeaRaeIdyMUdykaHclfgHcx9hmbkaKcxfhKaicifgiad6mbkdna8JTmbcbhKinJbbbbh8WaaabaKcdtfgeclfydbgLcx2fgHIdwaaaeydbgicx2fgOIdwg8Y:tgIaINaHIdbaOIdbg81:tg8Va8VNaHIdlaOIdlgB:tgRaRNMMg8Zaaaecwfydbg8Fcx2fgeIdwa8Y:tg8PNaIaIa8PNa8VaeIdba81:tg8RNaRaeIdlaB:tg8UNMMg8SN:tJbbbbJbbjZa8Za8Pa8PNa8Ra8RNa8Ua8UNMMg80Na8Sa8SN:tg8X:va8XJbbbb9BEg8XNh83a80aINa8Pa8SN:ta8XNhUa8Za8UNaRa8SN:ta8XNh85a80aRNa8Ua8SN:ta8XNh86a8Za8RNa8Va8SN:ta8XNh87a80a8VNa8Ra8SN:ta8XNh88a8Va8UNa8RaRN:tg8Sa8SNaRa8PNa8UaIN:tg8Sa8SNaIa8RNa8Pa8VN:tg8Sa8SNMM:rJbbbZNh8Sayaia8J2g3cdtfhHaya8Fa8J2gwcdtfhOayaLa8J2g8LcdtfhCa8Y:mh89aB:mh8:a81:mhZcbhAa8JhYJbbbbh8UJbbbbh8XJbbbbh8ZJbbbbh80Jbbbbh8YJbbbbh81JbbbbhBJbbbbhnJbbbbhcinasc;WbfaAfgecwfa8SaUaCIdbaHIdbg8P:tgRNa83aOIdba8P:tg8RNMgINUdbaeclfa8Sa86aRNa85a8RNMg8VNUdbaea8Sa88aRNa87a8RNMgRNUdbaecxfa8Sa89aINa8:a8VNa8PaZaRNMMMg8PNUdba8SaIa8VNNa80Mh80a8SaIaRNNa8YMh8Ya8Sa8VaRNNa81Mh81a8Sa8Pa8PNNa8WMh8Wa8SaIa8PNNa8UMh8Ua8Sa8Va8PNNa8XMh8Xa8SaRa8PNNa8ZMh8Za8SaIaINNaBMhBa8Sa8Va8VNNanMhna8SaRaRNNacMhcaHclfhHaCclfhCaOclfhOaAczfhAaYcufgYmbkavaic8S2fgeacaeIdbMUdbaeanaeIdlMUdlaeaBaeIdwMUdwaea81aeIdxMUdxaea8YaeIdzMUdzaea80aeIdCMUdCaea8ZaeIdKMUdKaea8XaeId3MUd3aea8UaeIdaMUdaaea8WaeId8KMUd8Kaea8SaeIdyMUdyavaLc8S2fgeacaeIdbMUdbaeanaeIdlMUdlaeaBaeIdwMUdwaea81aeIdxMUdxaea8YaeIdzMUdzaea80aeIdCMUdCaea8ZaeIdKMUdKaea8XaeId3MUd3aea8UaeIdaMUdaaea8WaeId8KMUd8Kaea8SaeIdyMUdyava8Fc8S2fgeacaeIdbMUdbaeanaeIdlMUdlaeaBaeIdwMUdwaea81aeIdxMUdxaea8YaeIdzMUdzaea80aeIdCMUdCaea8ZaeIdKMUdKaea8XaeId3MUd3aea8UaeIdaMUdaaea8WaeId8KMUd8Kaea8SaeIdyMUdyara3cltfhYcbhHa8JhCinaYaHfgeasc;WbfaHfgOIdbaeIdbMUdbaeclfgAaOclfIdbaAIdbMUdbaecwfgAaOcwfIdbaAIdbMUdbaecxfgeaOcxfIdbaeIdbMUdbaHczfhHaCcufgCmbkara8LcltfhYcbhHa8JhCinaYaHfgeasc;WbfaHfgOIdbaeIdbMUdbaeclfgAaOclfIdbaAIdbMUdbaecwfgAaOcwfIdbaAIdbMUdbaecxfgeaOcxfIdbaeIdbMUdbaHczfhHaCcufgCmbkarawcltfhYcbhHa8JhCinaYaHfgeasc;WbfaHfgOIdbaeIdbMUdbaeclfgAaOclfIdbaAIdbMUdbaecwfgAaOcwfIdbaAIdbMUdbaecxfgeaOcxfIdbaeIdbMUdbaHczfhHaCcufgCmbkaKcifgKad6mbkkcbhOxekcehOcbhrkcbh8FdndnamcwGg9cmbJbbbbh8ZcbhJcbhocbhCxekcbhea5cbyd;S1jjbHjjjjbbhCascxfasyd2gHcdtfaCBdbasaHcefBd2dnalTmbaChHinaHaeBdbaHclfhHalaecefge9hmbkkdnaOmbcbhiinabaicdtfhLcbhKinaQaLaKcdtgec:G1jjbfydbcdtfydbcdtfydbhHdnaCaQaLaefydbcdtfydbgOcdtfgAydbgeaOSmbinaAaCaegOcdtfgYydbgeBdbaYhAaOae9hmbkkdnaCaHcdtfgAydbgeaHSmbinaAaCaegHcdtfgYydbgeBdbaYhAaHae9hmbkkdnaOaHSmbaCaOaHaOaH0EcdtfaOaHaOaH6EBdbkaKcefgKci9hmbkaicifgiad6mbkkcbhJdnalTmbcbhYindnaQaYcdtgefydbaY9hmbaYhHdnaCaefgKydbgeaYSmbaKhOinaOaCaegHcdtfgAydbgeBdbaAhOaHae9hmbkkaKaHBdbkaYcefgYal9hmbkcbheaQhOaChHcbhJindndnaeaOydbgA9hmbdnaeaHydbgA9hmbaHaJBdbaJcefhJxdkaHaCaAcdtfydbBdbxekaHaCaAcdtfydbBdbkaOclfhOaHclfhHalaecefge9hmbkkcuaJcltgeaJcjjjjiGEcbyd;S1jjbHjjjjbbhoascxfasyd2gHcdtfaoBdbasaHcefBd2aocbaez:ljjjbhAdnalTmbaChOaahealhYinaecwfIdbh8SaeclfIdbhIaAaOydbcltfgHaeIdbaHIdbMUdbaHclfgKaIaKIdbMUdbaHcwfgKa8SaKIdbMUdbaHcxfgHaHIdbJbbjZMUdbaOclfhOaecxfheaYcufgYmbkkdnaJTmbaAheaJhHinaecxfgOIdbh8SaOcbBdbaeaeIdbJbbbbJbbjZa8S:va8SJbbbb9BEg8SNUdbaeclfgOa8SaOIdbNUdbaecwfgOa8SaOIdbNUdbaeczfheaHcufgHmbkkdnalTmbaChOaahealhYinaAaOydbcltfgHcxfgKaecwfIdbaHcwfIdb:tg8Sa8SNaeIdbaHIdb:tg8Sa8SNaeclfIdbaHclfIdb:tg8Sa8SNMMg8SaKIdbgIaIa8S9DEUdbaOclfhOaecxfheaYcufgYmbkkdnaJmbcbhJJFFuuh8ZxekaAcxfheaAhHaJhOinaHaeIdbUdbaeczfheaHclfhHaOcufgOmbkJFFuuh8ZaAheaJhHinaeIdbg8Sa8Za8Za8S9EEh8ZaeclfheaHcufgHmbkkasydlh9ednalTmba9eclfhea9eydbhAaXhHalhYcbhOincbaeydbgKaA9RaHRbbcpeGEaOfhOaHcefhHaeclfheaKhAaYcufgYmbkaOce4h8Fkcuada8F9RcifgTcx2aTc;v:Q;v:Qe0Ecbyd;S1jjbHjjjjbbhDascxfasyd2gecdtfaDBdbasaecefBd2cuaTcdtaTcFFFFi0Ecbyd;S1jjbHjjjjbbhSascxfasyd2gecdtfaSBdbasaecefBd2a5cbyd;S1jjbHjjjjbbh8Mascxfasyd2gecdtfa8MBdbasaecefBd2alcbyd;S1jjbHjjjjbbh9hascxfasyd2gecdtfa9hBdbasaecefBd2axaxNa8NJbbjZamclGEg83a83N:vhcJbbbbhndnadak9nmbdnaTci6mba8Jclth9iaDcwfh6JbbbbhBJbbbbhninasclfabadalaQz:cjjjbabh8FcbhEcbh5inaba5cdtfh3cbheindnaQa8FaefydbgOcdtgifydbgYaQa3aec:W1jjbfydbcdtfydbgHcdtgwfydbgKSmbaXaHfRbbgLcv2aXaOfRbbgAfc;a1jjbfRbbg8AaAcv2aLfg8Lc;a1jjbfRbbg8KVcFeGTmbdnaKaY9nmba8Lcj1jjbfRbbcFeGmekaAcufhYdnaAaL9hmbaYcFeGce0mbahaifydbaH9hmekdndnaAclSmbaLcl9hmekdnaYcFeGce0mbahaifydbaH9hmdkaLcufcFeGce0mbagawfydbaO9hmekaDaEcx2fgAaHaOa8KcFeGgYEBdlaAaOaHaYEBdbaAaYa8AGcb9hBdwaEcefhEkaeclfgecx9hmbkdna5cifg5ad9pmba8Fcxfh8FaEcifaT9nmekkaETmdcbhiinJbbbbJbbjZaqaQaDaicx2fgAydlgKaAydbgYaAydwgHEgLcdtfydbc8S2fgeIdyg8S:va8SJbbbb9BEaeIdwaaaYaKaHEg8Fcx2fgHIdwgRNaeIdzaHIdbg8PNaeIdaMg8Sa8SMMaRNaeIdlaHIdlg8RNaeIdCaRNaeId3Mg8Sa8SMMa8RNaeIdba8PNaeIdxa8RNaeIdKMg8Sa8SMMa8PNaeId8KMMM:lNh80JbbbbJbbjZaqaQaYcdtfydbc8S2fgeIdyg8S:va8SJbbbb9BEaeIdwaaaKcx2fgHIdwg8VNaeIdzaHIdbg8WNaeIdaMg8Sa8SMMa8VNaeIdlaHIdlg8UNaeIdCa8VNaeId3Mg8Sa8SMMa8UNaeIdba8WNaeIdxa8UNaeIdKMg8Sa8SMMa8WNaeId8KMMM:lNh8YaAcwfh3aAclfhwdna8JTmbavaYc8S2fgOIdwa8VNaOIdza8WNaOIdaMg8Sa8SMMa8VNaOIdla8UNaOIdCa8VNaOId3Mg8Sa8SMMa8UNaOIdba8WNaOIdxa8UNaOIdKMg8Sa8SMMa8WNaOId8KMMMh8SayaKa8J2cdtfhHaraYa8J2cltfheaOIdyh8Xa8JhOinaHIdbgIaIa8XNaecxfIdba8VaecwfIdbNa8WaeIdbNa8UaeclfIdbNMMMgIaIM:tNa8SMh8SaHclfhHaeczfheaOcufgOmbkavaLc8S2fgOIdwaRNaOIdza8PNaOIdaMgIaIMMaRNaOIdla8RNaOIdCaRNaOId3MgIaIMMa8RNaOIdba8PNaOIdxa8RNaOIdKMgIaIMMa8PNaOId8KMMMhIaya8Fa8J2cdtfhHaraLa8J2cltfheaOIdyh8Wa8JhOinaHIdbg8Va8Va8WNaecxfIdbaRaecwfIdbNa8PaeIdbNa8RaeclfIdbNMMMg8Va8VM:tNaIMhIaHclfhHaeczfheaOcufgOmbka80aI:lMh80a8Ya8S:lMh8YkawaKa8Fa8Ya809FgeEBdbaAaYaLaeEBdba3a8Ya80aeEUdbaicefgiaE9hmbkasc;Wbfcbcj;qbz:ljjjb8Aa6heaEhHinasc;WbfaeydbcA4cF8FGgOcFAaOcFA6EcdtfgOaOydbcefBdbaecxfheaHcufgHmbkcbhecbhHinasc;WbfaefgOydbhAaOaHBdbaAaHfhHaeclfgecj;qb9hmbkcbhea6hHinasc;WbfaHydbcA4cF8FGgOcFAaOcFA6EcdtfgOaOydbgOcefBdbaSaOcdtfaeBdbaHcxfhHaEaecefge9hmbkadak9RgOci9Uh9kdnalTmbcbhea8MhHinaHaeBdbaHclfhHalaecefge9hmbkkcbh0a9hcbalz:ljjjbh9maOcO9Uh9na9kce4h9oasydwh9pcbh8KcbhwdninaDaSawcdtfydbcx2fg3Idwg8Sac9Emea8Ka9k9pmeJFFuuhIdna9oaE9pmbaDaSa9ocdtfydbcx2fIdwJbb;aZNhIkdna8SaI9ETmba8San9ETmba8Ka9n0mdkdna9maQa3ydlgicdtg9qfydbgAfg9rRbba9maQa3ydbgLcdtg9sfydbgHfg9tRbbVmbaXaLfRbbh9udna9eaHcdtfgeclfydbgOaeydbgeSmbaOae9RhKa9paecitfheaaaAcx2fg8Lcwfh5a8Lclfh9vaaaHcx2fg8Acwfh9wa8Aclfh9xcbhHceh8Fdnindna8MaeydbcdtfydbgOaASmba8MaeclfydbcdtfydbgYaASmbaOaYSmbaaaYcx2fgYIdbaaaOcx2fgOIdbg8V:tg8Sa9xIdbaOIdlgR:tg8WNa8AIdba8V:tg8UaYIdlaR:tgIN:tg8Pa8Sa9vIdbaR:tg8XNa8LIdba8V:tg80aIN:tgRNaIa9wIdbaOIdwg8R:tg8YNa8WaYIdwa8R:tg8VN:tg8WaIa5Idba8R:tg81Na8Xa8VN:tgINa8Va8UNa8Ya8SN:tg8Ra8Va80Na81a8SN:tg8SNMMa8Pa8PNa8Wa8WNa8Ra8RNMMaRaRNaIaINa8Sa8SNMMN:rJbbj8:N9FmdkaecwfheaHcefgHaK6h8FaKaH9hmbkka8FceGTmba9ocefh9oxeka3cwfhHdndndndna9uc9:fPdebdkaLheina8MaecdtgefaiBdba8EaefydbgeaL9hmbxikkdnagahaha9sfydbaiSEa8Ea9sfydbgLcdtfydbgecu9hmba8Ea9qfydbheka8Ma9sfaiBdbaehika8MaLcdtfaiBdbka9tce86bba9rce86bbaHIdbg8Sanana8S9DEhna0cefh0cecda9uceSEa8Kfh8KkawcefgwaE9hmbkka0TmddnalTmbcbhKcbhiindna8MaicdtgefydbgOaiSmbaQaOcdtfydbh8FdnaiaQaefydb9hg3mbaqa8Fc8S2fgeaqaic8S2fgHIdbaeIdbMUdbaeaHIdlaeIdlMUdlaeaHIdwaeIdwMUdwaeaHIdxaeIdxMUdxaeaHIdzaeIdzMUdzaeaHIdCaeIdCMUdCaeaHIdKaeIdKMUdKaeaHId3aeId3MUd3aeaHIdaaeIdaMUdaaeaHId8KaeId8KMUd8KaeaHIdyaeIdyMUdyka8JTmbavaOc8S2fgeavaic8S2gwfgHIdbaeIdbMUdbaeaHIdlaeIdlMUdlaeaHIdwaeIdwMUdwaeaHIdxaeIdxMUdxaeaHIdzaeIdzMUdzaeaHIdCaeIdCMUdCaeaHIdKaeIdKMUdKaeaHId3aeId3MUd3aeaHIdaaeIdaMUdaaeaHId8KaeId8KMUd8KaeaHIdyaeIdyMUdya9iaO2hLarhHa8JhAinaHaLfgeaHaKfgOIdbaeIdbMUdbaeclfgYaOclfIdbaYIdbMUdbaecwfgYaOcwfIdbaYIdbMUdbaecxfgeaOcxfIdbaeIdbMUdbaHczfhHaAcufgAmbka3mbJbbbbJbbjZaqawfgeIdyg8S:va8SJbbbb9BEaeIdwaaa8Fcx2fgHIdwg8SNaeIdzaHIdbgINaeIdaMg8Va8VMMa8SNaeIdlaHIdlg8VNaeIdCa8SNaeId3Mg8Sa8SMMa8VNaeIdbaINaeIdxa8VNaeIdKMg8Sa8SMMaINaeId8KMMM:lNg8SaBaBa8S9DEhBkaKa9ifhKaicefgial9hmbkcbhHahheindnaeydbgOcuSmbdnaHa8MaOcdtgAfydbgO9hmbcuhOahaAfydbgAcuSmba8MaAcdtfydbhOkaeaOBdbkaeclfhealaHcefgH9hmbkcbhHagheindnaeydbgOcuSmbdnaHa8MaOcdtgAfydbgO9hmbcuhOagaAfydbgAcuSmba8MaAcdtfydbhOkaeaOBdbkaeclfhealaHcefgH9hmbkkaBana8JEhBcbhYabhecbhKindna8MaeydbcdtfydbgHa8MaeclfydbcdtfydbgOSmbaHa8MaecwfydbcdtfydbgASmbaOaASmbabaYcdtfgLaHBdbaLcwfaABdbaLclfaOBdbaYcifhYkaecxfheaKcifgKad6mbkdndna9cTmbaYak9nmba8ZaB9FTmbcbhdabhecbhHindnaoaCaeydbgOcdtfydbcdtfIdbaB9ETmbabadcdtfgAaOBdbaAclfaeclfydbBdbaAcwfaecwfydbBdbadcifhdkaecxfheaHcifgHaY6mbkJFFuuh8ZaJTmeaoheaJhHJFFuuh8SinaeIdbgIa8Sa8SaI9EEg8Va8SaIaB9EgOEh8Sa8Va8ZaOEh8ZaeclfheaHcufgHmbxdkkaYhdkadak0mbxdkkasclfabadalaQz:cjjjbkdndnadak0mbadhOxekdna9cmbadhOxekdna8Zac9FmbadhOxekina8ZJbb;aZNg8Saca8Sac9DEh8VJbbbbh8SdnaJTmbaoheaJhHinaeIdbgIa8SaIa8V9FEa8SaIa8S9EEh8SaeclfheaHcufgHmbkkcbhOabhecbhHindnaoaCaeydbgAcdtfydbcdtfIdba8V9ETmbabaOcdtfgYaABdbaYclfaeclfydbBdbaYcwfaecwfydbBdbaOcifhOkaecxfheaHcifgHad6mbkJFFuuh8ZdnaJTmbaoheaJhHJFFuuhIinaeIdbgRaIaIaR9EEg8PaIaRa8V9EgAEhIa8Pa8ZaAEh8ZaeclfheaHcufgHmbkkdnaOad9hmbadhOxdka8Sanana8S9DEhnaOak9nmeaOhda8Zac9FmbkkdnamcjjjjlGTmbazmbaOTmbcbhQabheinaXaeydbgAfRbbc3thKaecwfgLydbhHdndnahaAcdtg8FfydbaeclfgiydbgCSmbcbhYagaCcdtfydbaA9hmekcjjjj94hYkaeaKaYVaAVBdbaXaCfRbbc3thKdndnahaCcdtfydbaHSmbcbhYagaHcdtfydbaC9hmekcjjjj94hYkaiaKaYVaCVBdbaXaHfRbbc3thYdndnahaHcdtfydbaASmbcbhCaga8FfydbaH9hmekcjjjj94hCkaLaYaCVaHVBdbaecxfheaQcifgQaO6mbkkdnazTmbaOTmbaOheinabazabydbcdtfydbBdbabclfhbaecufgembkkdnaPTmbaPa83an:rNUdbkasyd2gecdtascxffc98fhHdninaeTmeaHydbcbyd;O1jjbH:bjjjbbaHc98fhHaecufhexbkkasc;W;qbf8KjjjjbaOk;Yieouabydlhvabydbclfcbaicdtz:ljjjbhoadci9UhrdnadTmbdnalTmbaehwadhDinaoalawydbcdtfydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbxdkkaehwadhDinaoawydbcdtfgqaqydbcefBdbawclfhwaDcufgDmbkkdnaiTmbcbhDaohwinawydbhqawaDBdbawclfhwaqaDfhDaicufgimbkkdnadci6mbinaecwfydbhwaeclfydbhDaeydbhidnalTmbalawcdtfydbhwalaDcdtfydbhDalaicdtfydbhikavaoaicdtfgqydbcitfaDBdbavaqydbcitfawBdlaqaqydbcefBdbavaoaDcdtfgqydbcitfawBdbavaqydbcitfaiBdlaqaqydbcefBdbavaoawcdtfgwydbcitfaiBdbavawydbcitfaDBdlawawydbcefBdbaecxfhearcufgrmbkkabydbcbBdbk;Podvuv998Jjjjjbca9RgvcFFF;7rBd3av9cFFF;7;3FF:;Fb83dCavcFFF97Bdzav9cFFF;7FFF:;u83dwdnadTmbaicd4hodnabmbdnalTmbcbhrinaealarcdtfydbao2cdtfhwcbhiinavcCfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavcwfaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxikkaocdthrcbhwincbhiinavcCfaifgDaeaifIdbgqaDIdbgkakaq9EEUdbavcwfaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkaearfheawcefgwad9hmbxdkkdnalTmbcbhrinabarcx2fgiaealarcdtfydbao2cdtfgwIdbUdbaiawIdlUdlaiawIdwUdwcbhiinavcCfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavcwfaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkarcefgrad9hmbxdkkaocdthlcbhraehwinabarcx2fgiaearao2cdtfgDIdbUdbaiaDIdlUdlaiaDIdwUdwcbhiinavcCfaifgDawaifIdbgqaDIdbgkakaq9EEUdbavcwfaifgDaqaDIdbgkakaq9DEUdbaiclfgicx9hmbkawalfhwarcefgrad9hmbkkJbbbbavIdwavIdCgk:tgqaqJbbbb9DEgqavIdxavIdKgx:tgmamaq9DEgqavIdzavId3gm:tgPaPaq9DEhPdnabTmbadTmbJbbbbJbbjZaP:vaPJbbbb9BEhqinabaqabIdbak:tNUdbabclfgvaqavIdbax:tNUdbabcwfgvaqavIdbam:tNUdbabcxfhbadcufgdmbkkaPk8MbabaeadaialavcbcbcbcbcbaoarawaDz:bjjjbk8MbabaeadaialavaoarawaDaqakaxamaPz:bjjjbk:nCoDud99rue99lul998Jjjjjbc;Wb9Rgw8KjjjjbdndnarmbcbhDxekawcxfcbc;Kbz:ljjjb8Aawcuadcx2adc;v:Q;v:Qe0Ecbyd;S1jjbHjjjjbbgqBdxawceBd2aqaeadaicbz:djjjb8AawcuadcdtadcFFFFi0Egkcbyd;S1jjbHjjjjbbgxBdzawcdBd2adcd4adfhmceheinaegicetheaiam6mbkcbhPawcuaicdtgsaicFFFFi0Ecbyd;S1jjbHjjjjbbgzBdCawciBd2dndnar:ZgH:rJbbbZMgO:lJbbb9p9DTmbaO:Ohexekcjjjj94hekaicufhAc:bwhmcbhCadhXcbhQinaChLaeamgKcufaeaK9iEaPgDcefaeaD9kEhYdndnadTmbaYcuf:YhOaqhiaxheadhmindndnaiIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdbaONJbbbZMg8A:lJbbb9p9DTmba8A:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ljjjbh3cbh5cbh8Eindna3axa8EcdtfydbgCcm4aC7c:v;t;h;Ev2gics4ai7aAGgmcdtfgEydbgecuSmbaeaCSmbcehiina3amaifaAGgmcdtfgEydbgecuSmeaicefhiaeaC9hmbkkaEaCBdba5aecuSfh5a8Ecefg8Ead9hmbxdkkazcFeasz:ljjjb8Acbh5kaDaYa5ar0giEhPaLa5aiEhCdna5arSmbaYaKaiEgmaP9Rcd9imbdndnaQcl0mbdnaX:ZgOaL:Zg8A:taY:Yg8FaD:Y:tgaa8FaK:Y:tgha5:ZggaH:tNNNaOaH:tahNa8Aag:tNa8AaH:taaNagaO:tNM:va8FMJbbbZMgO:lJbbb9p9DTmbaO:Ohexdkcjjjj94hexekaPamfcd9Theka5aXaiEhXaQcefgQcs9hmekkdndnaCmbcihicbhDxekcbhiawakcbyd;S1jjbHjjjjbbg8EBdKawclBd2aPcuf:Yh8AdndnadTmbaqhiaxheadhmindndnaiIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhCxekcjjjj94hCkaCcCthCdndnaiclfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaEcqtaCVhCdndnaicwfIdba8ANJbbbZMgO:lJbbb9p9DTmbaO:OhExekcjjjj94hEkaeaCaEVBdbaicxfhiaeclfheamcufgmmbkazcFeasz:ljjjbh3cbhDcbh5inaxa5cdtgYfydbgCcm4aC7c:v;t;h;Ev2gics4ai7hecbhidndnina3aeaAGgmcdtfgEydbgecuSmednaxaecdtgEfydbaCSmbaicefgiamfheaiaA9nmekka8EaEfydbhixekaEa5BdbaDhiaDcefhDka8EaYfaiBdba5cefg5ad9hmbkcuaDc32giaDc;j:KM;jb0EhexekazcFeasz:ljjjb8AcbhDcbhekawaecbyd;S1jjbHjjjjbbgeBd3awcvBd2aecbaiz:ljjjbhEavcd4hxdnadTmbdnalTmbaxcdth3a8EhCalheaqhmadhAinaEaCydbc32fgiamIdbaiIdbMUdbaiamclfIdbaiIdlMUdlaiamcwfIdbaiIdwMUdwaiaeIdbaiIdxMUdxaiaeclfIdbaiIdzMUdzaiaecwfIdbaiIdCMUdCaiaiIdKJbbjZMUdKaCclfhCaea3fheamcxfhmaAcufgAmbxdkka8EhmaqheadhCinaEamydbc32fgiaeIdbaiIdbMUdbaiaeclfIdbaiIdlMUdlaiaecwfIdbaiIdwMUdwaiaiIdxJbbbbMUdxaiaiIdzJbbbbMUdzaiaiIdCJbbbbMUdCaiaiIdKJbbjZMUdKamclfhmaecxfheaCcufgCmbkkdnaDTmbaEhiaDheinaiaiIdbJbbbbJbbjZaicKfIdbgO:vaOJbbbb9BEgONUdbaiclfgmaOamIdbNUdbaicwfgmaOamIdbNUdbaicxfgmaOamIdbNUdbaiczfgmaOamIdbNUdbaicCfgmaOamIdbNUdbaic3fhiaecufgembkkcbhCawcuaDcdtgYaDcFFFFi0Egicbyd;S1jjbHjjjjbbgeBdaawcoBd2awaicbyd;S1jjbHjjjjbbg3Bd8KaecFeaYz:ljjjbh5dnadTmbJbbjZJbbjZa8A:vaPceSEaoNgOaONh8Aaxcdthxalheina8Aaec;C1jjbalEgmIdwaEa8EydbgAc32fgiIdC:tgOaONamIdbaiIdx:tgOaONamIdlaiIdz:tgOaONMMNaqcwfIdbaiIdw:tgOaONaqIdbaiIdb:tgOaONaqclfIdbaiIdl:tgOaONMMMhOdndna5aAcdtgifgmydbcuSmba3aifIdbaO9ETmekamaCBdba3aifaOUdbka8Eclfh8EaeaxfheaqcxfhqadaCcefgC9hmbkkaba5aYz:kjjjb8AcrhikaicdthiinaiTmeaic98fgiawcxffydbcbyd;O1jjbH:bjjjbbxbkkawc;Wbf8KjjjjbaDk:Odieui99iu8Jjjjjbca9RgicFFF;7rBd3ai9cFFF;7;3FF:;Fb83dCaicFFF97Bdzai9cFFF;7FFF:;u83dwdndnaembJbbjFhlJbbjFhvJbbjFhoxekadcd4cdthrcbhwincbhdinaicCfadfgDabadfIdbglaDIdbgvaval9EEUdbaicwfadfgDalaDIdbgvaval9DEUdbadclfgdcx9hmbkabarfhbawcefgwae9hmbkaiIdzaiId3:thoaiIdxaiIdK:thvaiIdwaiIdC:thlkJbbbbalalJbbbb9DEglavaval9DEglaoaoal9DEk9DeeuabcFeaicdtz:ljjjbhlcbhbdnadTmbindnalaeydbcdtfgiydbcu9hmbaiabBdbabcefhbkaeclfheadcufgdmbkkabk9teiucbcbyd;W1jjbgeabcifc98GfgbBd;W1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd;W1jjbgeabcrfc94GfgbBd;W1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd;W1jjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd;W1jjbfgdBd;W1jjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk6eiucbhidnadTmbdninabRbbglaeRbbgv9hmeaecefheabcefhbadcufgdmbxdkkalav9Rhikaikk:bedbcjwk9Oeeebeebebbeeebebbbbbebebbbbbbbbbebbbdbbbbbbbebbbebbbdbbbbbbbbbbbeeeeebebbebbebebbbeebbbbbbbbbbbbbbbbbbbbbc;OwkxebbbdbbbjNbb"), {}).then(function(r) {
2485
2485
  (c = r.instance).exports.__wasm_call_ctors();
2486
2486
  });
2487
2487
  function t(r) {
@@ -2490,30 +2490,54 @@ var Vt = function() {
2490
2490
  function A(r) {
2491
2491
  return new Uint8Array(r.buffer, r.byteOffset, r.byteLength);
2492
2492
  }
2493
- function i(r, o, n, b, d, g, h, l) {
2494
- var f = c.exports.sbrk, I = f(4 * l), p = f(n * b), u = f(n * g), B = new Uint8Array(c.exports.memory.buffer);
2495
- B.set(A(o), p), d && B.set(A(d), u);
2496
- var C = r(I, p, n, b, u, g, h, l);
2493
+ function i(r, o, n, d, b, g, l, h) {
2494
+ var f = c.exports.sbrk, I = f(4 * h), m = f(n * d), u = f(n * g), C = new Uint8Array(c.exports.memory.buffer);
2495
+ C.set(A(o), m), b && C.set(A(b), u);
2496
+ var B = r(I, m, n, d, u, g, l, h);
2497
2497
  new Uint8Array(c.exports.memory.buffer);
2498
- var y = new Uint32Array(C);
2499
- return A(y).set(B.subarray(I, I + 4 * C)), f(I - f(0)), y;
2498
+ var y = new Uint32Array(B);
2499
+ return A(y).set(C.subarray(I, I + 4 * B)), f(I - f(0)), y;
2500
2500
  }
2501
- var s = { LockBorder: 1 };
2502
- })();
2501
+ var s = { LockBorder: 1, Sparse: 2, ErrorAbsolute: 4, Prune: 8, _InternalDebug: 1 << 30 };
2502
+ })(), function() {
2503
+ var c, 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]);
2504
+ if (typeof WebAssembly != "object") return { supported: !1 };
2505
+ var a = WebAssembly.instantiate(function(s) {
2506
+ for (var r = new Uint8Array(s.length), o = 0; o < s.length; ++o) {
2507
+ var n = s.charCodeAt(o);
2508
+ r[o] = n > 96 ? n - 97 : n > 64 ? n - 39 : n + 4;
2509
+ }
2510
+ var d = 0;
2511
+ for (o = 0; o < s.length; ++o) r[d++] = r[o] < 60 ? e[r[o]] : 64 * (r[o] - 60) + r[++o];
2512
+ return r.buffer.slice(0, d);
2513
+ }("b9H79Tebbbefx9Geueu9Geub9Gbb9Giuuueu9Gkuuuuuuuuuu99eu9Gvuuuuueu9Gkuuuuuuuuu9999eu9Gruuuuuuub9Gkuuuuuuuuuuueu9Gouuuuuub9Giuuub9GluuuubiOHdilvorwDqrkbiibeilve9Weiiviebeoweuec:q:Odkr:Yewo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9I919P29K9nW79O2Wt79c9V919U9KbeX9TW79O9V9Wt9F9I919P29K9nW79O2Wt7bd39TW79O9V9Wt9F9J9V9T9W91tWJ2917tWV9c9V919U9K7br39TW79O9V9Wt9F9J9V9T9W91tW9nW79O2Wt9c9V919U9K7bDL9TW79O9V9Wt9F9V9Wt9P9T9P96W9nW79O2Wtbql79IV9RbkDwebcekdsPq;L9kHdbkIbabaec9:fgefcufae9Ugeabci9Uadfcufad9Ugbaeab0Ek:oAlPue99eux998Jjjjjbc:We9Rgk8Kjjjjbakc;mbfcbc;Kbz:njjjb8AakcuaocdtgxaocFFFFi0Egmcbyd:e1jjbHjjjjbbgPBd9makceBd:SeakaPBdnakamcbyd:e1jjbHjjjjbbgsBd9qakcdBd:SeakasBd9eakcualcdtalcFFFFi0Ecbyd:e1jjbHjjjjbbgzBd9uakazBd9iakciBd:SeaPcbaxz:njjjbhHalci9UhOdnalTmbaihPalhAinaHaPydbcdtfgCaCydbcefBdbaPclfhPaAcufgAmbkkdnaoTmbcbhPashAaHhCaohXinaAaPBdbaAclfhAaCydbaPfhPaCclfhCaXcufgXmbkkdnalci6mbcbhPaihAinaAcwfydbhCaAclfydbhXasaAydbcdtfgQaQydbgQcefBdbazaQcdtfaPBdbasaXcdtfgXaXydbgXcefBdbazaXcdtfaPBdbasaCcdtfgCaCydbgCcefBdbazaCcdtfaPBdbaAcxfhAaOaPcefgP9hmbkkdnaoTmbaHhAashPaohCinaPaPydbaAydb9RBdbaAclfhAaPclfhPaCcufgCmbkkakamcbyd:e1jjbHjjjjbbgPBd9yakclBd:SeaPaHaxz:mjjjbhmakaOcbyd:e1jjbHjjjjbbgPBd9CakcvBd:SeaPcbaOz:njjjbhLakcuaOcK2alcjjjjd0Ecbyd:e1jjbHjjjjbbgKBd9GakcoBd:SeJbbbbhYdnalci6g8Ambarcd4hxaihAaKhPaOhrJbbbbhEinavaAclfydbax2cdtfgCIdlh3avaAydbax2cdtfgXIdlhYavaAcwfydbax2cdtfgQIdlh5aCIdwh8EaXIdwh8FaQIdwhaaPaCIdbghaXIdbggMaQIdbg8JMJbbnn:vUdbaPclfaXIdlaCIdlMaQIdlMJbbnn:vUdbaQIdwh8KaCIdwh8LaXIdwh8MaPcxfa3aY:tg3aaa8F:tgaNa5aY:tg5a8Ea8F:tg8EN:tgYJbbbbJbbjZahag:tgha5Na8Jag:tgga3N:tg8Fa8FNaYaYNa8EagNaaahN:tgYaYNMM:rgg:vagJbbbb9BEg3NUdbaPczfaYa3NUdbaPcCfa8Fa3NUdbaPcwfa8Ka8Ma8LMMJbbnn:vUdbaEagMhEaAcxfhAaPcKfhParcufgrmbkaEaO:Z:vJbbbZNhYkakcuaOcdtalcFFFF970Ecbyd:e1jjbHjjjjbbgCBd9KakcrBd:SeaYaD:ZN:rhYdna8AmbcbhPaChAinaAaPBdbaAclfhAaOaPcefgP9hmbkkaYJbbbZNh8MakcuaOcltalcFFFFd0Ecbyd:e1jjbHjjjjbbg8ABd9OakcwBd:Secba8AaKaCaOz:djjjb8Aakaocbyd:e1jjbHjjjjbbgPBd2aPcFeaoz:njjjbhrakc8Wfcwf9cb83ibak9cb83i8WcbhPJbbbbhEJbbbbh5Jbbbbh8EJbbbbhYJbbbbh8FJbbbbhgcbhlinJbbbbh3dnaPTmbJbbjZaP:Z:vh3kaka8Ea3NgaUdaaka5a3NghUd3akaEa3Ng8JUdKJbbbbh3dnagagNaYaYNa8Fa8FNMMg8KJbbbb9BmbJbbjZa8K:r:vh3kakaga3NUd8Saka8Fa3NUdyakaYa3NUd8Kdndndnakyd8WgQakydUgAakcKfaeaiakc;abfaKamara8Maqz:ejjjbgCcuSmbdnaPaD9pmbaAaraiaCcx2fgXydbfRbbcFeSfaraXclfydbfRbbcFeSfaraXcwfydbfRbbcFeSfaw9nmdkaQaAcbaeaiakc;abfaKamara8MJbbbbz:ejjjbgCcu9hmekakaaUdCakahUdzaka8JUdxakcuBdwakcFFF;7rBdla8AcbaKaLakcxfakcwfakclfz:fjjjbakydwgCcuSmekdnakc8WfaiaCcx2fgOydbgPaOclfydbgAaOcwfydbgXarabaeadalawaDz:gjjjbTmbalcefhlJbbbbhEJbbbbh5Jbbbbh8EJbbbbhYJbbbbh8FJbbbbhgkamaPcdtfgPaPydbcufBdbamaAcdtfgPaPydbcufBdbamaXcdtfgPaPydbcufBdbcbhXinazasaOaXcdtfydbcdtgAfydbcdtfgxhPaHaAfgvydbgQhAdnaQTmbdninaPydbaCSmeaPclfhPaAcufgATmdxbkkaPaxaQcdtfc98fydbBdbavavydbcufBdbkaXcefgXci9hmbkaKaCcK2fgPIdbh3aPIdlhaaPIdwhhaPIdxh8JaPIdzh8KaPIdCh8LaLaCfce86bbaga8LMhga8Fa8KMh8FaYa8JMhYa8EahMh8Ea5aaMh5aEa3MhEakyd88hPxekkdnaPTmbdnakyd80gAaPci2fgCciGTmbadaCfcbaPaAcu7fciGcefz:njjjb8AkabalcltfgPak8Pi8W83dbaPcwfakc8Wfcwf8Pib83dbalcefhlkcahPdninaPc98Smeakc;mbfaPfydbcbydj1jjbH:bjjjbbaPc98fhPxbkkakc:Wef8Kjjjjbalk;3vivuv99lu8Jjjjjbca9Rgv8Kjjjjbdndnalcw0mbaiydbhoaeabcitfgralcdtcufBdlaraoBdbdnalcd6mbaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkkalabfhrxekcbhDavczfcwfcbBdbav9cb83izavcwfcbBdbav9cb83ibJbbjZhqJbbjZhkinadaiaDcdtfydbcK2fhwcbhrinavczfarfgoawarfIdbgxaoIdbgm:tgPakNamMgmUdbavarfgoaPaxam:tNaoIdbMUdbarclfgrcx9hmbkJbbjZaqJbbjZMgq:vhkaDcefgDal9hmbkcbhoadcbcecdavIdlgxavIdwgm9GEgravIdbgPam9GEaraPax9GEgscdtgrfhzavczfarfIdbhxaihralhwinaiaocdtfgDydbhHaDarydbgOBdbaraHBdbarclfhraoazaOcK2fIdbax9Dfhoawcufgwmbkaeabcitfhrdndnaocv6mbaoalc98f6mekaraiydbBdbaralcdtcufBdlaiclfhoalcufhwarcxfhrinaoydbhDarcuBdbarc98faDBdbarcwfhraoclfhoawcufgwmbkalabfhrxekaraxUdbaeabcitfgrarydlc98GasVBdlabcefaeadaiaoz:djjjbhwararydlciGawabcu7fcdtVBdlawaeadaiaocdtfalao9Rz:djjjbhrkavcaf8Kjjjjbark;Bloeue99vue99Due99dndnaembcuhkxekJbbjZaq:thxaiabcdtfhmavydbhPavydlhsavydwhzcbhHJFFuuhOcvhbcuhkindnaPamaHcdtfydbcdtgvfydbgATmbazasavfydbcdtfhiindndnawalaiydbgCcx2fgvclfydbgXfRbbcFeSawavydbgQfRbbcFeSfawavcwfydbgLfRbbcFeSfgKmbcbhvxekcehvaraQcdtfydbgYceSmbcehvaraXcdtfydbg8AceSmbcehvaraLcdtfydbgEceSmbdna8AcdSaYcdSfaEcdSfcd6mbaKcefhvxekaKcdfhvkdnavab9kmbdndnadTmbaoaCcK2fgQIdwadIdw:tg3a3NaQIdbadIdb:tg3a3NaQIdladIdl:tg3a3NMM:raD:vaxNJbbjZMJ9VO:d86JbbjZaQIdCadIdCNaQIdxadIdxNaQIdzadIdzNMMaqN:tg3a3J9VO:d869DENh3xekaraQcdtfydbaraXcdtfydbfaraLcdtfydbfc99f:Zh3kaCakavab6a3aO9DVgQEhkavabaQEhba3aOaQEhOkaiclfhiaAcufgAmbkkaHcefgHae9hmbkkakk;bddlue99dndndnabaecitfgrydlgwciGgDci9hmbarclfhqxekinabcbawcd4gwalaDcdtfIdbabaecitfIdb:tgkJbbbb9FEgDaecefgefadaialavaoz:fjjjbak:laoIdb9FTmdabaDaw7aefgecitfgrydlgwciGgDci9hmbkarclfhqkabaecitfhecuhbindnaiaeydbgDfRbbmbadaDcK2fgrIdwalIdw:tgkakNarIdbalIdb:tgkakNarIdlalIdl:tgkakNMM:rgkaoIdb9DTmbaoakUdbavaDBdbaqydbhwkaecwfheabcefgbawcd46mbkkk;yleoudnaladfgkRbbcFeSalaefgxRbbgmcFeSfabydwgPfalaifgsRbbcFeSfaD0abydxaq9pVgzce9hmbavawcltfgmab8Pdb83dbamcwfabcwfgm8Pdb83dbdndnamydbmbcbhqxekcbhDaohminalamabydbcdtfydbfcFe86bbamclfhmaDcefgDabydwgq6mbkkdnabydxglci2gDabydlgmfgPciGTmbaraPfcbalamcu7fciGcefz:njjjb8Aabydxci2hDabydlhmabydwhqkab9cb83dwababydbaqfBdbabaDcifc98GamfBdlaxRbbhmcbhPkdnamcFeGcFe9hmbaxaP86bbababydwgmcefBdwaoabydbcdtfamcdtfaeBdbkdnakRbbcFe9hmbakabydw86bbababydwgmcefBdwaoabydbcdtfamcdtfadBdbkdnasRbbcFe9hmbasabydw86bbababydwgmcefBdwaoabydbcdtfamcdtfaiBdbkarabydlfabydxci2faxRbb86bbarabydlfabydxci2fcefakRbb86bbarabydlfabydxci2fcdfasRbb86bbababydxcefBdxazk;Ckovud99euv99eul998Jjjjjbc:G;ae9Rgo8KjjjjbdndnadTmbavcd4hrcbhwcbhDindnaiaeclfydbar2cdtfgvIdbaiaeydbar2cdtfgqIdbgk:tgxaiaecwfydbar2cdtfgmIdlaqIdlgP:tgsNamIdbak:tgzavIdlaP:tgPN:tgkakNaPamIdwaqIdwgH:tgONasavIdwaH:tgHN:tgPaPNaHazNaOaxN:tgxaxNMM:rgsJbbbb9Bmbaoc:G:qefawcx2fgAakas:vUdwaAaxas:vUdlaAaPas:vUdbaocafawc8K2fgAaq8Pdb83dbaAav8Pdb83dxaAam8Pdb83dKaAcwfaqcwfydbBdbaAcCfavcwfydbBdbaAcafamcwfydbBdbawcefhwkaecxfheaDcifgDad6mbkab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbawTmeao9cb83iKao9cb83izaoczfaocafawci2z1jjjbaoIdKhCaoIdChXaoIdzhQao9cb83iwao9cb83ibaoaoc:G:qefawz1jjjbJbbjZhkaoIdwgPJbbbbJbbjZaPaPNaoIdbgPaPNaoIdlgsasNMM:rgx:vaxJbbbb9BEgzNhxasazNhsaPazNhzaoc:G:qefheawhvinaecwfIdbaxNaeIdbazNasaeclfIdbNMMgPakaPak9DEhkaecxfheavcufgvmbkabaCUdwabaXUdlabaQUdbabaoId3UdxdndnakJ;n;m;m899FmbJbbbbhPaoc:G:qefheaocafhvinaCavcwfIdb:taecwfIdbgHNaQavIdb:taeIdbgONaXavclfIdb:taeclfIdbgLNMMaxaHNazaONasaLNMM:vgHaPaHaP9EEhPavc8KfhvaecxfheawcufgwmbkabazUd3abc8KfaxUdbabcafasUdbabcKfaCaxaPN:tUdbabcCfaXasaPN:tUdbabaQazaPN:tUdzabJbbjZakakN:t:rgkUdydndnaxJbbj:;axJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;axJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohexekcjjjj94hekabc8Ufae86bbdndnasJbbj:;asJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;asJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohvxekcjjjj94hvkabcRfav86bbdndnazJbbj:;azJbbj:;9GEgPJbbjZaPJbbjZ9FEJbb;:9cNJbbbZJbbb:;azJbbbb9GEMgP:lJbbb9p9DTmbaP:Ohqxekcjjjj94hqkabaq86b8SdndnaecKtcK91:YJbb;:9c:vax:t:lavcKtcK91:YJbb;:9c:vas:t:laqcKtcK91:YJbb;:9c:vaz:t:lakMMMJbb;:9cNJbbjZMgk:lJbbb9p9DTmbak:Ohexekcjjjj94hekaecFbaecFb9iEhexekabcjjj;8iBdycFbhekabae86b8Vxekab9cb83dbabcyf9cb83dbabcaf9cb83dbabcKf9cb83dbabczf9cb83dbabcwf9cb83dbkaoc:G;aef8Kjjjjbk:mvdouq99cbhi8Jjjjjbca9RglczfcwfcbBdbal9cb83izalcwfcbBdbal9cb83ibdnadTmbcbhvinaeaifhocbhrinalczfarfgwavawydbgwaoarfIdbgDaearawcx2ffIdb9DEBdbalarfgwavawydbgwaDaearawcx2ffIdb9EEBdbarclfgrcx9hmbkaicxfhiavcefgvad9hmbkkJbbbbhDcbhrcbhicbhvinaealarfydbcx2fgwIdwaealczfarfydbcx2fgoIdw:tgqaqNawIdbaoIdb:tgqaqNawIdlaoIdl:tgqaqNMMgqaDaqaD9EgwEhDavaiawEhiarclfhravcefgvci9hmbkaealczfaicdtgvfydbcx2fgrIdwaealavfydbcx2fglIdwMJbbbZNhqarIdlalIdlMJbbbZNhkarIdbalIdbMJbbbZNhxaD:rJbbbZNhDdnadTmbindnaecwfIdbgmaq:tgPaPNaeIdbgsax:tgPaPNaeclfIdbgzak:tgPaPNMMgPaDaDN9ETmbaqaDaP:rgH:vJbbbZNJbbbZMgPNamJbbjZaP:tgONMhqakaPNazaONMhkaxaPNasaONMhxaDaHMJbbbZNhDkaecxfheadcufgdmbkkabaDUdxabaqUdwabakUdlabaxUdbkjeeiu8Jjjjjbcj8W9Rgr8Kjjjjbaici2hwdnaiTmbawceawce0EhDarhiinaiaeadRbbcdtfydbBdbadcefhdaiclfhiaDcufgDmbkkabarawaladaoz:hjjjbarcj8Wf8Kjjjjbk:Ylequ8Jjjjjbcjx9Rgl8Kjjjjbcbhvalcjqfcbaiz:njjjb8AdndnadTmbcjehoaehrincuhwarhDcuhqavhkdninawakaoalcjqfaDcefRbbfRbb9RcFeGci6aoalcjqfaDRbbfRbb9RcFeGci6faoalcjqfaDcdfRbbfRbb9RcFeGci6fgxaq9mgmEhwdnammbaxce0mdkaxaqaxaq9kEhqaDcifhDadakcefgk9hmbkkaeawci2fgDcdfRbbhqaDcefRbbhxaDRbbhkaeavci2fgDcifaDawav9Rci2z:qjjjb8Aakalcjqffaocefgo86bbaxalcjqffao86bbaDcdfaq86bbaDcefax86bbaDak86bbaqalcjqffao86bbarcifhravcefgvad9hmbkalcFeaiz:njjjbhoadci2gDceaDce0EhqcbhxindnaoaeRbbgkfgwRbbgDcFe9hmbawax86bbaocjdfaxcdtfabakcdtfydbBdbaxhDaxcefhxkaeaD86bbaecefheaqcufgqmbkaxcdthDxekcbhDkabalcjdfaDz:mjjjb8Aalcjxf8Kjjjjbk9teiucbcbyd11jjbgeabcifc98GfgbBd11jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaeczfheaiczfhiadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabk9teiucbcbyd11jjbgeabcrfc94GfgbBd11jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik9:eiuZbhedndncbyd11jjbgdaecztgi9nmbcuheadai9RcFFifcz4nbcuSmekadhekcbabae9Rcifc98Gcbyd11jjbfgdBd11jjbdnadZbcztge9nmbadae9RcFFifcz4nb8Akk:;Deludndndnadch9pmbabaeSmdaeabadfgi9Rcbadcet9R0mekabaead;8qbbxekaeab7ciGhldndndnabae9pmbdnalTmbadhvabhixikdnabciGmbadhvabhixdkadTmiabaeRbb86bbadcufhvdnabcefgiciGmbaecefhexdkavTmiabaeRbe86beadc9:fhvdnabcdfgiciGmbaecdfhexdkavTmiabaeRbd86bdadc99fhvdnabcifgiciGmbaecifhexdkavTmiabaeRbi86biabclfhiaeclfheadc98fhvxekdnalmbdnaiciGTmbadTmlabadcufgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc9:fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc99fgifglaeaifRbb86bbdnalciGmbaihdxekaiTmlabadc98fgdfaeadfRbb86bbkadcl6mbdnadc98fgocd4cefciGgiTmbaec98fhlabc98fhvinavadfaladfydbBdbadc98fhdaicufgimbkkaocx6mbaec9Wfhvabc9WfhoinaoadfgicxfavadfglcxfydbBdbaicwfalcwfydbBdbaiclfalclfydbBdbaialydbBdbadc9Wfgdci0mbkkadTmdadhidnadciGglTmbaecufhvabcufhoadhiinaoaifavaifRbb86bbaicufhialcufglmbkkadcl6mdaec98fhlabc98fhvinavaifgecifalaifgdcifRbb86bbaecdfadcdfRbb86bbaecefadcefRbb86bbaeadRbb86bbaic98fgimbxikkavcl6mbdnavc98fglcd4cefcrGgdTmbavadcdt9RhvinaiaeydbBdbaeclfheaiclfhiadcufgdmbkkalc36mbinaiaeydbBdbaiaeydlBdlaiaeydwBdwaiaeydxBdxaiaeydzBdzaiaeydCBdCaiaeydKBdKaiaeyd3Bd3aecafheaicafhiavc9Gfgvci0mbkkavTmbdndnavcrGgdmbavhlxekavc94GhlinaiaeRbb86bbaicefhiaecefheadcufgdmbkkavcw6mbinaiaeRbb86bbaiaeRbe86beaiaeRbd86bdaiaeRbi86biaiaeRbl86blaiaeRbv86bvaiaeRbo86boaiaeRbr86braicwfhiaecwfhealc94fglmbkkabkkAebcjwkxebbbdbbbzNbb"), {}).then(function(s) {
2514
+ (c = s.instance).exports.__wasm_call_ctors();
2515
+ });
2516
+ function t(s) {
2517
+ if (!s) throw new Error("Assertion failed");
2518
+ }
2519
+ function A(s) {
2520
+ return new Uint8Array(s.buffer, s.byteOffset, s.byteLength);
2521
+ }
2522
+ function i(s) {
2523
+ var r = new Float32Array(c.exports.memory.buffer, s, 12);
2524
+ return { centerX: r[0], centerY: r[1], centerZ: r[2], radius: r[3], coneApexX: r[4], coneApexY: r[5], coneApexZ: r[6], coneAxisX: r[7], coneAxisY: r[8], coneAxisZ: r[9], coneCutoff: r[10] };
2525
+ }
2526
+ }();
2503
2527
  let te = 0;
2504
2528
  class Ni {
2505
2529
  constructor(e) {
2506
- if (this.renderer = e.renderer, this.zUpToYUpMatrix = new E.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 Mt(), e && e.dracoLoader) this.gltfLoader.setDRACOLoader(e.dracoLoader), this.hasDracoLoader = !0;
2530
+ if (this.timeout = e.timeout != null ? e.timeout : 5e3, this.renderer = e.renderer, this.zUpToYUpMatrix = new E.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 Dt(), e && e.dracoLoader) this.gltfLoader.setDRACOLoader(e.dracoLoader), this.hasDracoLoader = !0;
2507
2531
  else {
2508
- const a = new vt();
2532
+ const a = new Rt();
2509
2533
  a.setDecoderPath("https://storage.googleapis.com/ogc-3d-tiles/draco/"), this.gltfLoader.setDRACOLoader(a), this.gltfLoader.hasDracoLoader = !0;
2510
2534
  }
2511
2535
  if (e && e.ktx2Loader) this.gltfLoader.setKTX2Loader(e.ktx2Loader), this.hasKTX2Loader = !0;
2512
2536
  else if (e && e.renderer) {
2513
- const a = new P();
2537
+ const a = new L();
2514
2538
  a.setTranscoderPath("https://storage.googleapis.com/ogc-3d-tiles/basis/").detectSupport(e.renderer), this.gltfLoader.setKTX2Loader(a), this.gltfLoader.hasKTX2Loader = !0;
2515
2539
  }
2516
- this.gltfLoader.setMeshoptDecoder(Vt), this.hasMeshOptDecoder = !0, this.b3dmDecoder = new Dt(this.gltfLoader), this.splatsDecoder = new XA(this.gltfLoader, this.renderer), this.cache = new xt(), this.register = {}, this.ready = [], this.downloads = [], this.nextReady = [], this.nextDownloads = [];
2540
+ this.gltfLoader.setMeshoptDecoder(Vt), this.hasMeshOptDecoder = !0, this.b3dmDecoder = new jt(this.gltfLoader), this.splatsDecoder = new XA(this.gltfLoader, this.renderer), this.cache = new kt(), this.register = {}, this.ready = [], this.downloads = [], this.nextReady = [], this.nextDownloads = [];
2517
2541
  }
2518
2542
  update() {
2519
2543
  const e = this;
@@ -2573,54 +2597,54 @@ class Ni {
2573
2597
  }
2574
2598
  }
2575
2599
  }
2576
- get(e, a, t, A, i, s, r, o, n, b, d, g) {
2577
- const h = this, l = ct(t), f = new AbortController();
2600
+ get(e, a, t, A, i, s, r, o, n, d, b, g) {
2601
+ const l = this, h = ct(t), f = new AbortController();
2578
2602
  if (e.signal.addEventListener("abort", () => {
2579
- h.register[l] && Object.keys(h.register[l]).length != 0 || f.abort("user abort");
2603
+ l.register[h] && Object.keys(l.register[h]).length != 0 || f.abort("user abort");
2580
2604
  }), !(t.includes(".b3dm") || t.includes(".json") || t.includes(".gltf") || t.includes(".glb"))) return void console.error("the 3DTiles cache can only be used to load B3DM, gltf and json data");
2581
- if (h.register[l] || (h.register[l] = {}), h.register[l][a] && console.error(" a tile should only be loaded once"), h.register[l][a] = A, h.cache.get(l)) this._meshReceived(h.cache, h.register, l, i, s, r, a);
2582
- else if (Object.keys(h.register[l]).length == 1) {
2605
+ if (l.register[h] || (l.register[h] = {}), l.register[h][a] && console.error(" a tile should only be loaded once"), l.register[h][a] = A, l.cache.get(h)) this._meshReceived(l.cache, l.register, h, i, s, r, a);
2606
+ else if (Object.keys(l.register[h]).length == 1) {
2583
2607
  let I;
2584
2608
  t.includes(".b3dm") ? I = () => {
2585
- var p;
2586
- p = h.proxy ? () => fetch(h.proxy, { method: "POST", body: t, signal: f.signal }) : () => fetch(t, { signal: f.signal }), te++, p().then((u) => {
2609
+ var m;
2610
+ m = l.proxy ? () => fetch(l.proxy, { method: "POST", body: t, signal: f.signal }) : () => fetch(t, { signal: f.signal }), te++, m().then((u) => {
2587
2611
  if (!u.ok) throw console.error("could not load tile with path : " + t), new Error(`couldn't load "${t}". Request failed with status ${u.status} : ${u.statusText}`);
2588
2612
  return u.arrayBuffer();
2589
- }).then((u) => this.b3dmDecoder.parseB3DM(u, (B) => {
2590
- h.meshCallback(B, d);
2591
- }, n, b)).then((u) => {
2592
- h.cache.put(l, u), this._meshReceived(h.cache, h.register, l, i, s, r, a), h._checkSize();
2613
+ }).then((u) => this.b3dmDecoder.parseB3DM(u, (C) => {
2614
+ l.meshCallback(C, b);
2615
+ }, n, d)).then((u) => {
2616
+ l.cache.put(h, u), this._meshReceived(l.cache, l.register, h, i, s, r, a), l._checkSize();
2593
2617
  }).catch((u) => {
2594
2618
  }).finally(() => {
2595
2619
  te--;
2596
2620
  });
2597
2621
  } : t.includes(".glb") || t.includes(".gltf") ? I = g ? () => {
2598
- var p;
2599
- p = h.proxy ? () => fetch(h.proxy, { method: "POST", body: t, signal: f.signal }) : () => fetch(t, { signal: f.signal }), te++, p().then((u) => {
2622
+ var m;
2623
+ m = l.proxy ? () => fetch(l.proxy, { method: "POST", body: t, signal: f.signal }) : () => fetch(t, { signal: f.signal }), te++, m().then((u) => {
2600
2624
  if (!u.ok) throw console.error("could not load tile with path : " + t), new Error(`couldn't load "${t}". Request failed with status ${u.status} : ${u.statusText}`);
2601
2625
  return u.arrayBuffer();
2602
- }).then((u) => this.splatsDecoder.parseSplats(u, n, b, g)).then((u) => {
2603
- h.cache.put(l, u), h._meshReceived(h.cache, h.register, l, i, s, r, a), h._checkSize();
2626
+ }).then((u) => this.splatsDecoder.parseSplats(u, n, d, g)).then((u) => {
2627
+ l.cache.put(h, u), l._meshReceived(l.cache, l.register, h, i, s, r, a), l._checkSize();
2604
2628
  }).catch((u) => {
2605
2629
  }).finally(() => {
2606
2630
  te--;
2607
2631
  });
2608
2632
  } : () => {
2609
- var p;
2610
- p = h.proxy ? () => fetch(h.proxy, { method: "POST", body: t, signal: f.signal }) : () => fetch(t, { signal: f.signal }), te++, p().then((u) => {
2633
+ var m;
2634
+ m = l.proxy ? () => fetch(l.proxy, { method: "POST", body: t, signal: f.signal }) : () => fetch(t, { signal: f.signal }), te++, m().then((u) => {
2611
2635
  if (!u.ok) throw console.error("could not load tile with path : " + t), new Error(`couldn't load "${t}". Request failed with status ${u.status} : ${u.statusText}`);
2612
2636
  return u.arrayBuffer();
2613
2637
  }).then(async (u) => {
2614
- await async function(B) {
2615
- return new Promise((C) => {
2638
+ await async function(C) {
2639
+ return new Promise((B) => {
2616
2640
  const y = setInterval(() => {
2617
- B.hasDracoLoader && !B.dracoLoader || B.hasKTX2Loader && !B.ktx2Loader || (clearInterval(y), C());
2641
+ C.hasDracoLoader && !C.dracoLoader || C.hasKTX2Loader && !C.ktx2Loader || (clearInterval(y), B());
2618
2642
  }, 10);
2619
2643
  });
2620
- }(this.gltfLoader), this.gltfLoader.parse(u, null, (B) => {
2621
- B.scene.asset = B.asset, n && B.scene.applyMatrix4(this.zUpToYUpMatrix), B.scene.traverse((C) => {
2622
- C.isMesh && (b && C.applyMatrix4(this.zUpToYUpMatrix), h.meshCallback && h.meshCallback(C, d)), C.isPoints && h.pointsCallback && h.pointsCallback(C, d);
2623
- }), h.cache.put(l, B.scene), h._meshReceived(h.cache, h.register, l, i, s, r, a), h._checkSize();
2644
+ }(this.gltfLoader), this.gltfLoader.parse(u, null, (C) => {
2645
+ C.scene.asset = C.asset, n && C.scene.applyMatrix4(this.zUpToYUpMatrix), C.scene.traverse((B) => {
2646
+ B.isMesh && (d && B.applyMatrix4(this.zUpToYUpMatrix), l.meshCallback && l.meshCallback(B, b)), B.isPoints && l.pointsCallback && l.pointsCallback(B, b);
2647
+ }), l.cache.put(h, C.scene), l._meshReceived(l.cache, l.register, h, i, s, r, a), l._checkSize();
2624
2648
  });
2625
2649
  }).catch((u) => {
2626
2650
  u !== "user abort" && u.code;
@@ -2628,12 +2652,12 @@ class Ni {
2628
2652
  te--;
2629
2653
  });
2630
2654
  } : t.includes(".json") && (I = () => {
2631
- var p;
2632
- p = h.proxy ? () => fetch(h.proxy, { method: "POST", body: t, signal: f.signal }) : () => fetch(t, { signal: f.signal }), te++, p().then((u) => {
2655
+ var m;
2656
+ m = l.proxy ? () => fetch(l.proxy, { method: "POST", body: t, signal: f.signal }) : () => fetch(t, { signal: f.signal }), te++, m().then((u) => {
2633
2657
  if (!u.ok) throw console.error("could not load tile with path : " + t), new Error(`couldn't load "${t}". Request failed with status ${u.status} : ${u.statusText}`);
2634
2658
  return u.json();
2635
- }).then((u) => La(u, t)).then((u) => {
2636
- h.cache.put(l, u), h._meshReceived(h.cache, h.register, l), h._checkSize();
2659
+ }).then((u) => Ga(u, t)).then((u) => {
2660
+ l.cache.put(h, u), l._meshReceived(l.cache, l.register, h), l._checkSize();
2637
2661
  }).catch((u) => {
2638
2662
  console.error(u);
2639
2663
  }).finally(() => {
@@ -2656,7 +2680,9 @@ class Ni {
2656
2680
  }
2657
2681
  invalidate(e, a) {
2658
2682
  const t = ct(e);
2659
- this.register[t] && (delete this.register[t][a], this._checkSize());
2683
+ this.register[t] && setTimeout(() => {
2684
+ delete this.register[t][a], this._checkSize();
2685
+ }, this.timeout);
2660
2686
  }
2661
2687
  _checkSize() {
2662
2688
  const e = this;
@@ -2685,7 +2711,7 @@ function ct(c) {
2685
2711
  function Y(c) {
2686
2712
  if (typeof c != "string") throw new TypeError("Path must be a string. Received " + JSON.stringify(c));
2687
2713
  }
2688
- function dt(c, e) {
2714
+ function bt(c, e) {
2689
2715
  for (var a, t = "", A = 0, i = -1, s = 0, r = 0; r <= c.length; ++r) {
2690
2716
  if (r < c.length) a = c.charCodeAt(r);
2691
2717
  else {
@@ -2713,16 +2739,16 @@ function dt(c, e) {
2713
2739
  }
2714
2740
  return t;
2715
2741
  }
2716
- var De = { resolve: function() {
2742
+ var je = { resolve: function() {
2717
2743
  for (var c, e = "", a = !1, t = arguments.length - 1; t >= -1 && !a; t--) {
2718
2744
  var A;
2719
2745
  t >= 0 ? A = arguments[t] : (c === void 0 && (c = process.cwd()), A = c), Y(A), A.length !== 0 && (e = A + "/" + e, a = A.charCodeAt(0) === 47);
2720
2746
  }
2721
- return e = dt(e, !a), a ? e.length > 0 ? "/" + e : "/" : e.length > 0 ? e : ".";
2747
+ return e = bt(e, !a), a ? e.length > 0 ? "/" + e : "/" : e.length > 0 ? e : ".";
2722
2748
  }, normalize: function(c) {
2723
2749
  if (Y(c), c.length === 0) return ".";
2724
2750
  var e = c.charCodeAt(0) === 47, a = c.charCodeAt(c.length - 1) === 47;
2725
- return (c = dt(c, !e)).length !== 0 || e || (c = "."), c.length > 0 && a && (c += "/"), e ? "/" + c : c;
2751
+ return (c = bt(c, !e)).length !== 0 || e || (c = "."), c.length > 0 && a && (c += "/"), e ? "/" + c : c;
2726
2752
  }, isAbsolute: function(c) {
2727
2753
  return Y(c), c.length > 0 && c.charCodeAt(0) === 47;
2728
2754
  }, join: function() {
@@ -2731,9 +2757,9 @@ var De = { resolve: function() {
2731
2757
  var a = arguments[e];
2732
2758
  Y(a), a.length > 0 && (c === void 0 ? c = a : c += "/" + a);
2733
2759
  }
2734
- return c === void 0 ? "." : De.normalize(c);
2760
+ return c === void 0 ? "." : je.normalize(c);
2735
2761
  }, relative: function(c, e) {
2736
- if (Y(c), Y(e), c === e || (c = De.resolve(c)) === (e = De.resolve(e))) return "";
2762
+ if (Y(c), Y(e), c === e || (c = je.resolve(c)) === (e = je.resolve(e))) return "";
2737
2763
  for (var a = 1; a < c.length && c.charCodeAt(a) === 47; ++a) ;
2738
2764
  for (var t = c.length, A = t - a, i = 1; i < e.length && e.charCodeAt(i) === 47; ++i) ;
2739
2765
  for (var s = e.length - i, r = A < s ? A : s, o = -1, n = 0; n <= r; ++n) {
@@ -2744,13 +2770,13 @@ var De = { resolve: function() {
2744
2770
  } else A > r && (c.charCodeAt(a + n) === 47 ? o = n : n === 0 && (o = 0));
2745
2771
  break;
2746
2772
  }
2747
- var b = c.charCodeAt(a + n);
2748
- if (b !== e.charCodeAt(i + n)) break;
2749
- b === 47 && (o = n);
2773
+ var d = c.charCodeAt(a + n);
2774
+ if (d !== e.charCodeAt(i + n)) break;
2775
+ d === 47 && (o = n);
2750
2776
  }
2751
- var d = "";
2752
- for (n = a + o + 1; n <= t; ++n) n !== t && c.charCodeAt(n) !== 47 || (d.length === 0 ? d += ".." : d += "/..");
2753
- return d.length > 0 ? d + e.slice(i + o) : (i += o, e.charCodeAt(i) === 47 && ++i, e.slice(i));
2777
+ var b = "";
2778
+ for (n = a + o + 1; n <= t; ++n) n !== t && c.charCodeAt(n) !== 47 || (b.length === 0 ? b += ".." : b += "/..");
2779
+ return b.length > 0 ? b + e.slice(i + o) : (i += o, e.charCodeAt(i) === 47 && ++i, e.slice(i));
2754
2780
  }, _makeLong: function(c) {
2755
2781
  return c;
2756
2782
  }, dirname: function(c) {
@@ -2810,16 +2836,16 @@ var De = { resolve: function() {
2810
2836
  if (c.length === 0) return e;
2811
2837
  var a, t = c.charCodeAt(0), A = t === 47;
2812
2838
  A ? (e.root = "/", a = 1) : a = 0;
2813
- for (var i = -1, s = 0, r = -1, o = !0, n = c.length - 1, b = 0; n >= a; --n) if ((t = c.charCodeAt(n)) !== 47) r === -1 && (o = !1, r = n + 1), t === 46 ? i === -1 ? i = n : b !== 1 && (b = 1) : i !== -1 && (b = -1);
2839
+ for (var i = -1, s = 0, r = -1, o = !0, n = c.length - 1, d = 0; n >= a; --n) if ((t = c.charCodeAt(n)) !== 47) r === -1 && (o = !1, r = n + 1), t === 46 ? i === -1 ? i = n : d !== 1 && (d = 1) : i !== -1 && (d = -1);
2814
2840
  else if (!o) {
2815
2841
  s = n + 1;
2816
2842
  break;
2817
2843
  }
2818
- return i === -1 || r === -1 || b === 0 || b === 1 && i === r - 1 && i === s + 1 ? r !== -1 && (e.base = e.name = s === 0 && A ? c.slice(1, r) : c.slice(s, r)) : (s === 0 && A ? (e.name = c.slice(1, i), e.base = c.slice(1, r)) : (e.name = c.slice(s, i), e.base = c.slice(s, r)), e.ext = c.slice(i, r)), s > 0 ? e.dir = c.slice(0, s - 1) : A && (e.dir = "/"), e;
2844
+ return i === -1 || r === -1 || d === 0 || d === 1 && i === r - 1 && i === s + 1 ? r !== -1 && (e.base = e.name = s === 0 && A ? c.slice(1, r) : c.slice(s, r)) : (s === 0 && A ? (e.name = c.slice(1, i), e.base = c.slice(1, r)) : (e.name = c.slice(s, i), e.base = c.slice(s, r)), e.ext = c.slice(i, r)), s > 0 ? e.dir = c.slice(0, s - 1) : A && (e.dir = "/"), e;
2819
2845
  }, sep: "/", delimiter: ":", win32: null, posix: null };
2820
- De.posix = De;
2821
- var bt, be = De;
2822
- class Pi {
2846
+ je.posix = je;
2847
+ var dt, de = je;
2848
+ class Li {
2823
2849
  constructor(e) {
2824
2850
  ge(this, "_toElementFn");
2825
2851
  if (e) {
@@ -2877,7 +2903,7 @@ class Pi {
2877
2903
  * @copyright Copyright (c) 2022 Kirk Qi <qilinaus@gmail.com>
2878
2904
  * @license MIT License
2879
2905
  */
2880
- class pe extends Pi {
2906
+ class me extends Li {
2881
2907
  constructor(a = [], t) {
2882
2908
  super(t);
2883
2909
  ge(this, "_elements", []);
@@ -2902,7 +2928,7 @@ class pe extends Pi {
2902
2928
  return this.elements[this.size - 1] ?? void 0;
2903
2929
  }
2904
2930
  static heapify(a, t) {
2905
- return new pe(a, t);
2931
+ return new me(a, t);
2906
2932
  }
2907
2933
  add(a) {
2908
2934
  return this._elements.push(a), this._bubbleUp(this.elements.length - 1);
@@ -2942,10 +2968,10 @@ class pe extends Pi {
2942
2968
  return [...this.elements];
2943
2969
  }
2944
2970
  clone() {
2945
- return new pe(this, { comparator: this.comparator, toElementFn: this.toElementFn });
2971
+ return new me(this, { comparator: this.comparator, toElementFn: this.toElementFn });
2946
2972
  }
2947
2973
  sort() {
2948
- const a = [], t = new pe(this, { comparator: this.comparator });
2974
+ const a = [], t = new me(this, { comparator: this.comparator });
2949
2975
  for (; t.size !== 0; ) {
2950
2976
  const A = t.poll();
2951
2977
  A !== void 0 && a.push(A);
@@ -2958,13 +2984,13 @@ class pe extends Pi {
2958
2984
  return a;
2959
2985
  }
2960
2986
  filter(a, t) {
2961
- const A = new pe([], { toElementFn: this.toElementFn, comparator: this.comparator });
2987
+ const A = new me([], { toElementFn: this.toElementFn, comparator: this.comparator });
2962
2988
  let i = 0;
2963
2989
  for (const s of this) a.call(t, s, i, this) && A.add(s), i++;
2964
2990
  return A;
2965
2991
  }
2966
2992
  map(a, t, A, i) {
2967
- const s = new pe([], { comparator: t, toElementFn: A });
2993
+ const s = new me([], { comparator: t, toElementFn: A });
2968
2994
  let r = 0;
2969
2995
  for (const o of this) s.add(a.call(i, o, r, this)), r++;
2970
2996
  return s;
@@ -2998,83 +3024,83 @@ class pe extends Pi {
2998
3024
  }
2999
3025
  (function(c) {
3000
3026
  c[c.VISIT = 0] = "VISIT", c[c.PROCESS = 1] = "PROCESS";
3001
- })(bt || (bt = {}));
3002
- class _e extends pe {
3027
+ })(dt || (dt = {}));
3028
+ class Oe extends me {
3003
3029
  constructor(e = [], a) {
3004
3030
  super(e, a);
3005
3031
  }
3006
3032
  clone() {
3007
- return new _e(this, { comparator: this.comparator, toElementFn: this.toElementFn });
3033
+ return new Oe(this, { comparator: this.comparator, toElementFn: this.toElementFn });
3008
3034
  }
3009
3035
  filter(e, a) {
3010
- const t = new _e([], { toElementFn: this.toElementFn, comparator: this.comparator });
3036
+ const t = new Oe([], { toElementFn: this.toElementFn, comparator: this.comparator });
3011
3037
  let A = 0;
3012
3038
  for (const i of this) e.call(a, i, A, this) && t.add(i), A++;
3013
3039
  return t;
3014
3040
  }
3015
3041
  map(e, a, t, A) {
3016
- const i = new _e([], { comparator: a, toElementFn: t });
3042
+ const i = new Oe([], { comparator: a, toElementFn: t });
3017
3043
  let s = 0;
3018
3044
  for (const r of this) i.add(e.call(A, r, s, this)), s++;
3019
3045
  return i;
3020
3046
  }
3021
3047
  }
3022
- class He extends _e {
3048
+ class Je extends Oe {
3023
3049
  constructor(e = [], a) {
3024
3050
  super(e, a);
3025
3051
  }
3026
3052
  clone() {
3027
- return new He(this, { comparator: this.comparator, toElementFn: this.toElementFn });
3053
+ return new Je(this, { comparator: this.comparator, toElementFn: this.toElementFn });
3028
3054
  }
3029
3055
  filter(e, a) {
3030
- const t = new He([], { toElementFn: this.toElementFn, comparator: this.comparator });
3056
+ const t = new Je([], { toElementFn: this.toElementFn, comparator: this.comparator });
3031
3057
  let A = 0;
3032
3058
  for (const i of this) e.call(a, i, A, this) && t.add(i), A++;
3033
3059
  return t;
3034
3060
  }
3035
3061
  map(e, a, t, A) {
3036
- const i = new He([], { comparator: a, toElementFn: t });
3062
+ const i = new Je([], { comparator: a, toElementFn: t });
3037
3063
  let s = 0;
3038
3064
  for (const r of this) i.add(e.call(A, r, s, this)), s++;
3039
3065
  return i;
3040
3066
  }
3041
3067
  }
3042
- function _i(c) {
3068
+ function Oi(c) {
3043
3069
  return new Worker("" + new URL("assets/PointsManager.worker-5fpGpVvf.js", import.meta.url).href, { type: "module", name: c == null ? void 0 : c.name });
3044
3070
  }
3045
- new va(), new M(), new M(), new M(), new M();
3046
- const Ve = new M(), Hi = new M(), Yt = new Sa();
3071
+ new Ra(), new D(), new D(), new D(), new D();
3072
+ const Ve = new D(), Ji = new D(), Yt = new Fa();
3047
3073
  Yt.set(1, 0, 0, 0, 0, 1, 0, -1, 0);
3048
- class qi extends ka {
3074
+ class Pi extends xa {
3049
3075
  constructor(e, a) {
3050
3076
  const A = Math.min(Math.ceil(8) * 512, Math.pow(512, 2));
3051
3077
  let i = 1 * Math.pow(512, 2);
3052
3078
  i = Math.floor(i / A) * A;
3053
- const s = new ne(512, 512, 1, { magFilter: R, minFilter: R, anisotropy: 0, depthBuffer: !1, resolveDepthBuffer: !1 });
3079
+ const s = new ne(512, 512, 1, { magFilter: v, minFilter: v, anisotropy: 0, depthBuffer: !1, resolveDepthBuffer: !1 });
3054
3080
  e.initRenderTarget(s);
3055
- const r = new ne(512, 512, 1, { magFilter: R, minFilter: R, anisotropy: 0, type: v, depthBuffer: !1, resolveDepthBuffer: !1 });
3056
- r.texture.type = v, e.initRenderTarget(r);
3057
- const o = new ne(512, 512, 1, { magFilter: R, minFilter: R, anisotropy: 0, type: v, depthBuffer: !1, resolveDepthBuffer: !1 });
3058
- o.texture.type = v, e.initRenderTarget(o);
3059
- const n = new ne(512, 512, 1, { magFilter: R, minFilter: R, anisotropy: 0, type: v, depthBuffer: !1, resolveDepthBuffer: !1 });
3060
- n.texture.type = v, e.initRenderTarget(n);
3061
- const b = new ia({ uniforms: { textureSize: { value: 512 }, numSlices: { value: 1 }, cov1Texture: { value: o.texture }, cov2Texture: { value: n.texture }, colorTexture: { value: s.texture }, positionTexture: { value: r.texture }, zUpToYUpMatrix3x3: { value: Yt }, sizeMultiplier: { value: 1 }, cropRadius: { value: Number.MAX_VALUE }, cameraNear: { value: 0.01 }, cameraFar: { value: 10 }, computeLinearDepth: { value: !0 } }, vertexShader: Oi(), fragmentShader: a || Ji(), transparent: !0, side: Ze, depthTest: !1, depthWrite: !1 }), d = new Ja(), g = new Float32Array([-0.5, 0.5, 0, 0.5, 0.5, 0, -0.5, -0.5, 0, 0.5, -0.5, 0]);
3062
- d.setIndex([0, 2, 1, 2, 3, 1]), d.setAttribute("position", new le(g, 3));
3063
- const h = new Uint32Array(i), l = new wa(h, 1, !1);
3064
- l.needsUpdate = !0, l.setUsage(Ka), d.setAttribute("order", l), d.instanceCount = 0, super(d, b), this.numBatches = 0, this.numVisibleBatches = 0, this.orderAttribute = l, this.textureSize = 512, this.numTextures = 1, this.batchSize = A, this.maxSplats = i, this.numSplatsRendered = 0, this.colorRenderTarget = s, this.positionRenderTarget = r, this.cov1RenderTarget = o, this.cov2RenderTarget = n, this.renderer = e, this.sortID = 0, this.freeAddresses = new He();
3081
+ const r = new ne(512, 512, 1, { magFilter: v, minFilter: v, anisotropy: 0, type: R, depthBuffer: !1, resolveDepthBuffer: !1 });
3082
+ r.texture.type = R, e.initRenderTarget(r);
3083
+ const o = new ne(512, 512, 1, { magFilter: v, minFilter: v, anisotropy: 0, type: R, depthBuffer: !1, resolveDepthBuffer: !1 });
3084
+ o.texture.type = R, e.initRenderTarget(o);
3085
+ const n = new ne(512, 512, 1, { magFilter: v, minFilter: v, anisotropy: 0, type: R, depthBuffer: !1, resolveDepthBuffer: !1 });
3086
+ n.texture.type = R, e.initRenderTarget(n);
3087
+ const d = new ia({ uniforms: { textureSize: { value: 512 }, numSlices: { value: 1 }, cov1Texture: { value: o.texture }, cov2Texture: { value: n.texture }, colorTexture: { value: s.texture }, positionTexture: { value: r.texture }, zUpToYUpMatrix3x3: { value: Yt }, sizeMultiplier: { value: 1 }, cropRadius: { value: Number.MAX_VALUE }, cameraNear: { value: 0.01 }, cameraFar: { value: 10 }, computeLinearDepth: { value: !0 } }, vertexShader: qi(), fragmentShader: a || _i(), transparent: !0, side: Ze, depthTest: !1, depthWrite: !1 }), b = new _a(), g = new Float32Array([-0.5, 0.5, 0, 0.5, 0.5, 0, -0.5, -0.5, 0, 0.5, -0.5, 0]);
3088
+ b.setIndex([0, 2, 1, 2, 3, 1]), b.setAttribute("position", new he(g, 3));
3089
+ const l = new Uint32Array(i), h = new wa(l, 1, !1);
3090
+ h.needsUpdate = !0, h.setUsage(Ka), b.setAttribute("order", h), b.instanceCount = 0, super(b, d), this.numBatches = 0, this.numVisibleBatches = 0, this.orderAttribute = h, this.textureSize = 512, this.numTextures = 1, this.batchSize = A, this.maxSplats = i, this.numSplatsRendered = 0, this.colorRenderTarget = s, this.positionRenderTarget = r, this.cov1RenderTarget = o, this.cov2RenderTarget = n, this.renderer = e, this.sortID = 0, this.freeAddresses = new Je();
3065
3091
  for (let I = 0; I < this.maxSplats; I += A) this.freeAddresses.add(I);
3066
- this.worker = new _i({ type: "module" }), this.sortListeners = [], this.worker.onmessage = (I) => {
3067
- const p = new Uint32Array(I.data.order);
3068
- if (this.numSplatsRendered = p.length, p.length > this.orderAttribute.count) {
3069
- const u = new Ja(), B = new Float32Array([-0.5, 0.5, 0, 0.5, 0.5, 0, -0.5, -0.5, 0, 0.5, -0.5, 0]), C = [0, 2, 1, 2, 3, 1];
3070
- u.setIndex(C), u.setAttribute("position", new le(B, 3));
3071
- const y = new Uint32Array(this.maxSplats), x = new wa(y, 1, !1);
3072
- x.needsUpdate = !0, x.setUsage(Ka), u.setAttribute("order", x), u.instanceCount = 0, this.geometry.dispose(), this.geometry = u, this.orderAttribute = x;
3092
+ this.worker = new Oi({ type: "module" }), this.sortListeners = [], this.worker.onmessage = (I) => {
3093
+ const m = new Uint32Array(I.data.order);
3094
+ if (this.numSplatsRendered = m.length, m.length > this.orderAttribute.count) {
3095
+ const u = new _a(), C = new Float32Array([-0.5, 0.5, 0, 0.5, 0.5, 0, -0.5, -0.5, 0, 0.5, -0.5, 0]), B = [0, 2, 1, 2, 3, 1];
3096
+ u.setIndex(B), u.setAttribute("position", new he(C, 3));
3097
+ const y = new Uint32Array(this.maxSplats), k = new wa(y, 1, !1);
3098
+ k.needsUpdate = !0, k.setUsage(Ka), u.setAttribute("order", k), u.instanceCount = 0, this.geometry.dispose(), this.geometry = u, this.orderAttribute = k;
3073
3099
  }
3074
- this.orderAttribute.clearUpdateRanges(), this.orderAttribute.set(p), this.orderAttribute.addUpdateRange(0, p.length), this.orderAttribute.needsUpdate = !0, this.geometry.instanceCount = I.data.count, this.geometry.needsUpdate = !0;
3100
+ this.orderAttribute.clearUpdateRanges(), this.orderAttribute.set(m), this.orderAttribute.addUpdateRange(0, m.length), this.orderAttribute.needsUpdate = !0, this.geometry.instanceCount = I.data.count, this.geometry.needsUpdate = !0;
3075
3101
  for (let u = this.sortListeners.length - 1; u >= 0; u--)
3076
3102
  this.sortListeners[u](I.data.id) && this.sortListeners.splice(u, 1);
3077
- }, this.cameraPosition = new M(0, 0, 0), this.rotateOnAxis(new M(1, 0, 0), 0.5 * Math.PI), this.frustumCulled = !1, this.copyMaterial2D = new ia({ uniforms: { sourceTexture: {} }, vertexShader: lt(), fragmentShader: `
3103
+ }, this.cameraPosition = new D(0, 0, 0), this.rotateOnAxis(new D(1, 0, 0), 0.5 * Math.PI), this.frustumCulled = !1, this.copyMaterial2D = new ia({ uniforms: { sourceTexture: {} }, vertexShader: ht(), fragmentShader: `
3078
3104
  precision highp float;
3079
3105
 
3080
3106
  uniform sampler2D sourceTexture;
@@ -3083,7 +3109,7 @@ in vec2 vUv;
3083
3109
 
3084
3110
  void main() {
3085
3111
  gl_FragColor = texture( sourceTexture, vUv );
3086
- }`, transparent: !1, side: Ze, depthTest: !1, depthWrite: !1 }), this.copyMaterial3D = new ia({ uniforms: { sourceTexture: {}, w: { value: 0 } }, vertexShader: lt(), fragmentShader: `
3112
+ }`, transparent: !1, side: Ze, depthTest: !1, depthWrite: !1 }), this.copyMaterial3D = new ia({ uniforms: { sourceTexture: {}, w: { value: 0 } }, vertexShader: ht(), fragmentShader: `
3087
3113
  precision highp float;
3088
3114
 
3089
3115
  uniform sampler3D sourceTexture;
@@ -3093,9 +3119,9 @@ in vec2 vUv;
3093
3119
 
3094
3120
  void main() {
3095
3121
  gl_FragColor = texture( sourceTexture, vec3(vUv, w) );
3096
- }`, transparent: !1, side: Ze, depthTest: !1, depthWrite: !1 }), this.copyCamera = new Qt(-0.5, 0.5, 0.5, -0.5, 0.1, 10), this.copyCamera.position.z = 1, this.copyScene = new qA();
3097
- const f = new OA(1, 1);
3098
- this.copyQuad = new ka(f, this.copyMaterial2D), this.copyScene.add(this.copyQuad), this.copyScene.matrixAutoUpdate = !1, this.copyQuad.matrixAutoUpdate = !1;
3122
+ }`, transparent: !1, side: Ze, depthTest: !1, depthWrite: !1 }), this.copyCamera = new Qt(-0.5, 0.5, 0.5, -0.5, 0.1, 10), this.copyCamera.position.z = 1, this.copyScene = new PA();
3123
+ const f = new qA(1, 1);
3124
+ this.copyQuad = new xa(f, this.copyMaterial2D), this.copyScene.add(this.copyQuad), this.copyScene.matrixAutoUpdate = !1, this.copyQuad.matrixAutoUpdate = !1;
3099
3125
  }
3100
3126
  dispose() {
3101
3127
  this.material.dispose(), this.copyMaterial2D.dispose(), this.copyMaterial3D.dispose(), this.cov1RenderTarget.dispose(), this.cov2RenderTarget.dispose(), this.positionRenderTarget.dispose(), this.colorRenderTarget.dispose(), this.worker.terminate(), this.worker = null, this.geometry.dispose();
@@ -3126,71 +3152,71 @@ void main() {
3126
3152
  raycast(e, a) {
3127
3153
  }
3128
3154
  addSplatsTile(e, a, t, A) {
3129
- const i = this, s = e.data ? e.data.array : e.array, r = e.data && e.data.isInterleavedBuffer ? e.data.stride : 3, o = e.data && e.data.isInterleavedBuffer ? e.offset : 0, n = Math.ceil(s.length / (this.batchSize * r)), b = [], d = [];
3155
+ const i = this, s = e.data ? e.data.array : e.array, r = e.data && e.data.isInterleavedBuffer ? e.data.stride : 3, o = e.data && e.data.isInterleavedBuffer ? e.offset : 0, n = Math.ceil(s.length / (this.batchSize * r)), d = [], b = [];
3130
3156
  let g = () => {
3131
3157
  };
3132
- const h = new Float32Array(s.length / r * 3);
3133
- for (let f = 0; f < s.length / 3; f++) h[3 * f] = s[f * r + o], h[3 * f + 1] = s[f * r + o + 1], h[3 * f + 2] = s[f * r + o + 2];
3134
- g = (f, I, p) => {
3135
- const u = p * p;
3136
- for (let B = 0; B < h.length; B += 3) {
3137
- Ve.set(h[B], -h[B + 2], h[B + 1]);
3138
- const C = Hi.copy(Ve).sub(f.origin).dot(f.direction);
3139
- C > 0 && f.distanceSqToPoint(Ve) < u && I.push({ distance: C, point: Ve.clone(), type: "splat" });
3158
+ const l = new Float32Array(s.length / r * 3);
3159
+ for (let f = 0; f < s.length / 3; f++) l[3 * f] = s[f * r + o], l[3 * f + 1] = s[f * r + o + 1], l[3 * f + 2] = s[f * r + o + 2];
3160
+ g = (f, I, m) => {
3161
+ const u = m * m;
3162
+ for (let C = 0; C < l.length; C += 3) {
3163
+ Ve.set(l[C], -l[C + 2], l[C + 1]);
3164
+ const B = Ji.copy(Ve).sub(f.origin).dot(f.direction);
3165
+ B > 0 && f.distanceSqToPoint(Ve) < u && I.push({ distance: B, point: Ve.clone(), type: "splat" });
3140
3166
  }
3141
3167
  }, n > this.freeAddresses.size && this.growTextures();
3142
3168
  for (let f = 0; f < n; f++) {
3143
3169
  const I = this.freeAddresses.poll();
3144
- isNaN(I) && console.log("insuficient texture size to store splats info"), b.push(I), d.push(3 * I);
3145
- const p = f * this.batchSize;
3146
- this.addSplatsBatch(p, I, e, a, t, A);
3170
+ isNaN(I) && console.log("insuficient texture size to store splats info"), d.push(I), b.push(3 * I);
3171
+ const m = f * this.batchSize;
3172
+ this.addSplatsBatch(m, I, e, a, t, A);
3147
3173
  }
3148
- i.worker.postMessage({ method: "addBatches", insertionIndexes: d, positions: s.buffer, offset: o, stride: r, batchSize: i.batchSize }, [s.buffer]);
3149
- let l = !1;
3174
+ i.worker.postMessage({ method: "addBatches", insertionIndexes: b, positions: s.buffer, offset: o, stride: r, batchSize: i.batchSize }, [s.buffer]);
3175
+ let h = !1;
3150
3176
  return { hide: () => {
3151
- l == 1 && (i.numVisibleBatches--, l = !1, i.worker.postMessage({ method: "hideBatches", insertionIndexes: d, xyz: [i.cameraPosition.x, i.cameraPosition.z, -i.cameraPosition.y], id: i.sortID++ }));
3177
+ h == 1 && (i.numVisibleBatches--, h = !1, i.worker.postMessage({ method: "hideBatches", insertionIndexes: b, xyz: [i.cameraPosition.x, i.cameraPosition.z, -i.cameraPosition.y], id: i.sortID++ }));
3152
3178
  }, show: (f) => {
3153
- if (l == 0) {
3154
- i.numVisibleBatches--, l = !0;
3155
- const I = i.sortID, p = (u) => u >= I && (f(), !0);
3156
- i.sortListeners.push(p), i.worker.postMessage({ method: "showBatches", insertionIndexes: d, xyz: [i.cameraPosition.x, i.cameraPosition.z, -i.cameraPosition.y], id: i.sortID++ });
3179
+ if (h == 0) {
3180
+ i.numVisibleBatches--, h = !0;
3181
+ const I = i.sortID, m = (u) => u >= I && (f(), !0);
3182
+ i.sortListeners.push(m), i.worker.postMessage({ method: "showBatches", insertionIndexes: b, xyz: [i.cameraPosition.x, i.cameraPosition.z, -i.cameraPosition.y], id: i.sortID++ });
3157
3183
  }
3158
3184
  }, remove: () => {
3159
- g = void 0, i.worker.postMessage({ method: "removeBatches", insertionIndexes: d, xyz: [i.cameraPosition.x, i.cameraPosition.z, -i.cameraPosition.y], id: i.sortID++ }), b.forEach((f) => i.freeAddresses.add(f));
3185
+ g = void 0, i.worker.postMessage({ method: "removeBatches", insertionIndexes: b, xyz: [i.cameraPosition.x, i.cameraPosition.z, -i.cameraPosition.y], id: i.sortID++ }), d.forEach((f) => i.freeAddresses.add(f));
3160
3186
  }, sort: this.sort, raycast: g, isSplatsBatch: !0 };
3161
3187
  }
3162
3188
  addSplatsBatch(e, a, t, A, i, s) {
3163
- const r = new Float32Array(4 * this.batchSize), o = new Uint8Array(4 * this.batchSize), n = new Float32Array(4 * this.batchSize), b = new Float32Array(4 * this.batchSize);
3189
+ const r = new Float32Array(4 * this.batchSize), o = new Uint8Array(4 * this.batchSize), n = new Float32Array(4 * this.batchSize), d = new Float32Array(4 * this.batchSize);
3164
3190
  for (let u = a; u < a + this.batchSize; u++) {
3165
- const B = u - a, C = 4 * B, y = e + B;
3191
+ const C = u - a, B = 4 * C, y = e + C;
3166
3192
  if (y >= t.count) break;
3167
- r[C] = t.getX(y), r[C + 1] = t.getY(y), r[C + 2] = t.getZ(y), Math.floor(255 * A.getX(y)), Math.floor(255 * A.getY(y)), Math.floor(255 * A.getZ(y)), Math.floor(255 * A.getW(y)), o[C] = Math.floor(255 * A.getX(y)), o[C + 1] = Math.floor(255 * A.getY(y)), o[C + 2] = Math.floor(255 * A.getZ(y)), o[C + 3] = Math.floor(255 * A.getW(y)), n[C] = i.getX(y), n[C + 1] = i.getY(y), n[C + 2] = i.getZ(y), b[C] = s.getX(y), b[C + 1] = s.getY(y), b[C + 2] = s.getZ(y);
3193
+ r[B] = t.getX(y), r[B + 1] = t.getY(y), r[B + 2] = t.getZ(y), Math.floor(255 * A.getX(y)), Math.floor(255 * A.getY(y)), Math.floor(255 * A.getZ(y)), Math.floor(255 * A.getW(y)), o[B] = Math.floor(255 * A.getX(y)), o[B + 1] = Math.floor(255 * A.getY(y)), o[B + 2] = Math.floor(255 * A.getZ(y)), o[B + 3] = Math.floor(255 * A.getW(y)), n[B] = i.getX(y), n[B + 1] = i.getY(y), n[B + 2] = i.getZ(y), d[B] = s.getX(y), d[B + 1] = s.getY(y), d[B + 2] = s.getZ(y);
3168
3194
  }
3169
- const d = Math.floor(a / Math.pow(this.textureSize, 2)), g = Math.ceil(this.batchSize / this.textureSize), h = [0, a / this.textureSize - d * this.textureSize, this.textureSize];
3170
- h.push(h[1] + g);
3171
- const l = new Ge(r, this.textureSize, g, ee, v);
3172
- l.generateMipmaps = !1, l.magFilter = R, l.minFilter = R, l.anisotropy = 0, l.needsUpdate = !0, this.renderer.initTexture(l), this.renderer.initRenderTarget(this.positionRenderTarget), this.copyTex2D(l, this.positionRenderTarget, h, d), l.dispose();
3173
- const f = new Ge(o, this.textureSize, g, ee, X);
3174
- f.generateMipmaps = !1, f.magFilter = R, f.minFilter = R, f.anisotropy = 0, f.needsUpdate = !0, this.renderer.initTexture(f), this.copyTex2D(f, this.colorRenderTarget, h, d), f.dispose();
3175
- const I = new Ge(n, this.textureSize, g, ee, v);
3176
- I.generateMipmaps = !1, I.magFilter = R, I.minFilter = R, I.anisotropy = 0, I.needsUpdate = !0, this.renderer.initTexture(I), this.copyTex2D(I, this.cov1RenderTarget, h, d), I.dispose();
3177
- const p = new Ge(b, this.textureSize, g, ee, v);
3178
- p.generateMipmaps = !1, p.magFilter = R, p.minFilter = R, p.anisotropy = 0, p.needsUpdate = !0, this.renderer.initTexture(p), this.copyTex2D(p, this.cov2RenderTarget, h, d), p.dispose();
3195
+ const b = Math.floor(a / Math.pow(this.textureSize, 2)), g = Math.ceil(this.batchSize / this.textureSize), l = [0, a / this.textureSize - b * this.textureSize, this.textureSize];
3196
+ l.push(l[1] + g);
3197
+ const h = new Ue(r, this.textureSize, g, ee, R);
3198
+ h.generateMipmaps = !1, h.magFilter = v, h.minFilter = v, h.anisotropy = 0, h.needsUpdate = !0, this.renderer.initTexture(h), this.renderer.initRenderTarget(this.positionRenderTarget), this.copyTex2D(h, this.positionRenderTarget, l, b), h.dispose();
3199
+ const f = new Ue(o, this.textureSize, g, ee, X);
3200
+ f.generateMipmaps = !1, f.magFilter = v, f.minFilter = v, f.anisotropy = 0, f.needsUpdate = !0, this.renderer.initTexture(f), this.copyTex2D(f, this.colorRenderTarget, l, b), f.dispose();
3201
+ const I = new Ue(n, this.textureSize, g, ee, R);
3202
+ I.generateMipmaps = !1, I.magFilter = v, I.minFilter = v, I.anisotropy = 0, I.needsUpdate = !0, this.renderer.initTexture(I), this.copyTex2D(I, this.cov1RenderTarget, l, b), I.dispose();
3203
+ const m = new Ue(d, this.textureSize, g, ee, R);
3204
+ m.generateMipmaps = !1, m.magFilter = v, m.minFilter = v, m.anisotropy = 0, m.needsUpdate = !0, this.renderer.initTexture(m), this.copyTex2D(m, this.cov2RenderTarget, l, b), m.dispose();
3179
3205
  }
3180
3206
  growTextures() {
3181
3207
  for (let s = this.maxSplats; s < this.maxSplats + this.textureSize * this.textureSize; s += this.batchSize) this.freeAddresses.add(s);
3182
3208
  this.maxSplats += this.textureSize * this.textureSize;
3183
- const e = this.numTextures + 1, a = new ne(this.textureSize, this.textureSize, e, { magFilter: R, minFilter: R, anisotropy: 0, depthBuffer: !1, resolveDepthBuffer: !1 });
3209
+ const e = this.numTextures + 1, a = new ne(this.textureSize, this.textureSize, e, { magFilter: v, minFilter: v, anisotropy: 0, depthBuffer: !1, resolveDepthBuffer: !1 });
3184
3210
  this.renderer.initRenderTarget(a), this.copyTex3D(this.colorRenderTarget.texture, a, this.numTextures), this.colorRenderTarget.dispose(), this.colorRenderTarget = a, this.material.uniforms.colorTexture.value = this.colorRenderTarget.texture;
3185
- const t = new ne(this.textureSize, this.textureSize, e, { magFilter: R, minFilter: R, anisotropy: 0, type: v, depthBuffer: !1, resolveDepthBuffer: !1 });
3186
- t.texture.type = v, this.renderer.initRenderTarget(t), this.copyTex3D(this.positionRenderTarget.texture, t, this.numTextures), this.positionRenderTarget.dispose(), this.positionRenderTarget = t, this.material.uniforms.positionTexture.value = this.positionRenderTarget.texture;
3187
- const A = new ne(this.textureSize, this.textureSize, e, { magFilter: R, minFilter: R, anisotropy: 0, type: v, depthBuffer: !1, resolveDepthBuffer: !1 });
3188
- A.texture.type = v, 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;
3189
- const i = new ne(this.textureSize, this.textureSize, e, { magFilter: R, minFilter: R, anisotropy: 0, type: v, depthBuffer: !1, resolveDepthBuffer: !1 });
3190
- i.texture.type = v, this.renderer.initRenderTarget(i), this.copyTex3D(this.cov2RenderTarget.texture, i, this.numTextures), this.cov2RenderTarget.dispose(), this.cov2RenderTarget = i, this.material.uniforms.cov2Texture.value = this.cov2RenderTarget.texture, this.numTextures = e, this.material.uniforms.numSlices.value = this.numTextures;
3211
+ const t = new ne(this.textureSize, this.textureSize, e, { magFilter: v, minFilter: v, anisotropy: 0, type: R, depthBuffer: !1, resolveDepthBuffer: !1 });
3212
+ t.texture.type = R, this.renderer.initRenderTarget(t), this.copyTex3D(this.positionRenderTarget.texture, t, this.numTextures), this.positionRenderTarget.dispose(), this.positionRenderTarget = t, this.material.uniforms.positionTexture.value = this.positionRenderTarget.texture;
3213
+ const A = new ne(this.textureSize, this.textureSize, e, { magFilter: v, minFilter: v, anisotropy: 0, type: R, depthBuffer: !1, resolveDepthBuffer: !1 });
3214
+ A.texture.type = R, 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;
3215
+ const i = new ne(this.textureSize, this.textureSize, e, { magFilter: v, minFilter: v, anisotropy: 0, type: R, depthBuffer: !1, resolveDepthBuffer: !1 });
3216
+ i.texture.type = R, this.renderer.initRenderTarget(i), this.copyTex3D(this.cov2RenderTarget.texture, i, this.numTextures), this.cov2RenderTarget.dispose(), this.cov2RenderTarget = i, this.material.uniforms.cov2Texture.value = this.cov2RenderTarget.texture, this.numTextures = e, this.material.uniforms.numSlices.value = this.numTextures;
3191
3217
  }
3192
3218
  }
3193
- function Oi() {
3219
+ function qi() {
3194
3220
  return `
3195
3221
  precision highp float;
3196
3222
  precision highp int;
@@ -3350,7 +3376,7 @@ void main() {
3350
3376
  }
3351
3377
  `;
3352
3378
  }
3353
- function Ji() {
3379
+ function _i() {
3354
3380
  return `
3355
3381
  precision highp float;
3356
3382
 
@@ -3381,7 +3407,7 @@ void main() {
3381
3407
 
3382
3408
  }`;
3383
3409
  }
3384
- function lt() {
3410
+ function ht() {
3385
3411
  return `
3386
3412
 
3387
3413
  out vec2 vUv;
@@ -3396,7 +3422,7 @@ const Ae = new E.Sphere(new E.Vector3(0, 0, 0), 1), ue = new $([0, 0, 0, 1, 0, 0
3396
3422
  new E.Box3();
3397
3423
  const ce = new E.Vector3(0, 0, 0), we = new E.Vector3(0, 0, 0), Ki = new E.Vector3(0, 1, 0), Ye = new E.Ray(), We = new E.Matrix4();
3398
3424
  new E.Matrix4(), new E.Frustum();
3399
- const Ba = new E.Vector3(), Xe = [], ht = new E.Quaternion(), Z = {};
3425
+ const Ca = new E.Vector3(), Xe = [], lt = new E.Quaternion(), Z = {};
3400
3426
  function zi() {
3401
3427
  var c = [];
3402
3428
  for (let e in Z) Z.hasOwnProperty(e) && Z[e] > 0 && c.push(e);
@@ -3406,7 +3432,7 @@ class Wt extends E.Object3D {
3406
3432
  constructor(e) {
3407
3433
  super();
3408
3434
  const a = this;
3409
- if (a.splatsMesh = e.splatsMesh, this.contentURL = [], e.domWidth && e.domHeight ? this.rendererSize = new E.Vector2(e.domWidth, e.domHeight) : this.rendererSize = new E.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 = jt(), e.tileLoader) this.tileLoader = e.tileLoader;
3435
+ if (a.splatsMesh = e.splatsMesh, this.contentURL = [], e.domWidth && e.domHeight ? this.rendererSize = new E.Vector2(e.domWidth, e.domHeight) : this.rendererSize = new E.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 = St(), e.tileLoader) this.tileLoader = e.tileLoader;
3410
3436
  else {
3411
3437
  const i = {};
3412
3438
  i.meshCallback = e.meshCallback ? e.meshCallback : (s, r) => {
@@ -3427,8 +3453,8 @@ class Wt extends E.Object3D {
3427
3453
  }
3428
3454
  (a.proxy ? () => fetch(a.proxy, { method: "POST", body: t, signal: a.abortController.signal }) : () => fetch(t, { signal: a.abortController.signal }))().then((i) => {
3429
3455
  if (!i.ok) throw new Error(`couldn't load "${e.url}". Request failed with status ${i.status} : ${i.statusText}`);
3430
- i.json().then((s) => La(s, t)).then((s) => {
3431
- a._setup({ rootPath: be.dirname(e.url), json: s });
3456
+ i.json().then((s) => Ga(s, t)).then((s) => {
3457
+ a._setup({ rootPath: de.dirname(e.url), json: s });
3432
3458
  });
3433
3459
  }).catch((i) => {
3434
3460
  a.displayErrors && gt(i);
@@ -3453,7 +3479,7 @@ class Wt extends E.Object3D {
3453
3479
  }
3454
3480
  async _setup(e) {
3455
3481
  const a = this;
3456
- if (e.json.extensionsRequired && e.json.extensionsRequired.includes("JDULTRA_gaussian_splats") && (a.splatsMesh = new qi(a.tileLoader.renderer), this.splatsMesh.setSplatsCropRadius(this.splatsCropRadius), this.splatsMesh.setSplatsSizeMultiplier(this.splatsSizeMultiplier), a.add(a.splatsMesh)), e.json.root ? (a.json = e.json.root, a.json.refine || (a.json.refine = e.json.refine), a.json.geometricError || (a.json.geometricError = e.json.geometricError), a.json.transform || (a.json.transform = e.json.transform), a.json.boundingVolume || (a.json.boundingVolume = e.json.boundingVolume)) : a.json = e.json, a.json.children || (a.json.getChildren ? a.json.children = await a.json.getChildren() : a.json.children = []), a.rootPath = e.json.rootPath ? e.json.rootPath : e.rootPath, a.json.refine ? a.refine = a.json.refine : a.refine = e.parentRefine, a.json.geometricError ? a.geometricError = a.json.geometricError : a.geometricError = e.parentGeometricError, a.json.transform) {
3482
+ if (e.json.extensionsRequired && (e.json.extensionsRequired.includes("JDULTRA_gaussian_splats") || e.json.extensionsRequired.includes("JDULTRA_gaussian_splats_V2")) && (a.splatsMesh = new Pi(a.tileLoader.renderer), this.splatsMesh.setSplatsCropRadius(this.splatsCropRadius), this.splatsMesh.setSplatsSizeMultiplier(this.splatsSizeMultiplier), a.add(a.splatsMesh)), e.json.root ? (a.json = e.json.root, a.json.refine || (a.json.refine = e.json.refine), a.json.geometricError || (a.json.geometricError = e.json.geometricError), a.json.transform || (a.json.transform = e.json.transform), a.json.boundingVolume || (a.json.boundingVolume = e.json.boundingVolume)) : a.json = e.json, a.json.children || (a.json.getChildren ? a.json.children = await a.json.getChildren() : a.json.children = []), a.rootPath = e.json.rootPath ? e.json.rootPath : e.rootPath, a.json.refine ? a.refine = a.json.refine : a.refine = e.parentRefine, a.json.geometricError ? a.geometricError = a.json.geometricError : a.geometricError = e.parentGeometricError, a.json.transform) {
3457
3483
  let A = new E.Matrix4();
3458
3484
  A.elements = a.json.transform, a.applyMatrix4(A);
3459
3485
  }
@@ -3469,7 +3495,7 @@ class Wt extends E.Object3D {
3469
3495
  function t(A) {
3470
3496
  A.uri && A.uri.includes("json") || A.url && A.url.includes("json") ? a.hasUnloadedJSONContent++ : a.hasMeshContent++;
3471
3497
  }
3472
- if (a.json.content ? (t(a.json.content), a.hasMeshContent == 0 && (a.level = Math.max(0, a.parentTile ? a.parentTile.level + 0.01 : 0)), a._load()) : a.json.contents && (a.json.contents.forEach((A) => t(A)), a.hasMeshContent == 0 && (a.level = Math.max(0, a.parentTile ? a.parentTile.level + 0.01 : 0))), a.centerModel && (we.copy(a.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]), ce), ht.setFromUnitVectors(ce.normalize(), Ki.normalize()), a.applyQuaternion(ht)), we.applyMatrix4(a.matrix), a.position.sub(we), a.updateMatrices()), a.onLoadCallback && a.onLoadCallback(a), a.isSetup = !0, a.level > 0 && a.drawBoundingVolume) if (a.bbox && console.log("double setup"), this.boundingVolume.aabb) {
3498
+ if (a.json.content ? (t(a.json.content), a.hasMeshContent == 0 && (a.level = Math.max(0, a.parentTile ? a.parentTile.level + 0.01 : 0)), a._load()) : a.json.contents && (a.json.contents.forEach((A) => t(A)), a.hasMeshContent == 0 && (a.level = Math.max(0, a.parentTile ? a.parentTile.level + 0.01 : 0))), a.centerModel && (we.copy(a.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]), ce), lt.setFromUnitVectors(ce.normalize(), Ki.normalize()), a.applyQuaternion(lt)), we.applyMatrix4(a.matrix), a.position.sub(we), a.updateMatrices()), a.onLoadCallback && a.onLoadCallback(a), a.isSetup = !0, a.level > 0 && a.drawBoundingVolume) if (a.bbox && console.log("double setup"), this.boundingVolume.aabb) {
3473
3499
  let A = this.boundingVolume.aabb.clone();
3474
3500
  A.applyMatrix4(this.matrixWorld), a.bbox = new E.Box3Helper(A, new E.Color(Math.random(), Math.random(), Math.random())), a.add(a.bbox), a.bbox.material.visible = !1;
3475
3501
  } else a.boundingVolume instanceof $ && (a.bbox = a.boundingVolume.helper(), a.add(a.bbox), a.bbox.material.visible = !1);
@@ -3503,21 +3529,21 @@ class Wt extends E.Object3D {
3503
3529
  async function A(i, s, r, o) {
3504
3530
  let n;
3505
3531
  i.uri ? n = i.uri : i.url && (n = i.url);
3506
- const b = /^(?:http|https|ftp|tcp|udp):\/\/\S+/;
3507
- if (b.test(t.rootPath) ? b.test(n) || (n = t._assembleURL(t.rootPath, n)) : be.isAbsolute(t.rootPath) && (n = t.rootPath + be.sep + n), n = t._extractQueryParams(n, t.queryParams), t.queryParams) {
3508
- var d = "";
3509
- for (let g in t.queryParams) t.queryParams.hasOwnProperty(g) && (d += "&" + g + "=" + t.queryParams[g]);
3510
- n.includes("?") ? n += d : n += "?" + d.substring(1);
3532
+ const d = /^(?:http|https|ftp|tcp|udp):\/\/\S+/;
3533
+ if (d.test(t.rootPath) ? d.test(n) || (n = t._assembleURL(t.rootPath, n)) : de.isAbsolute(t.rootPath) && (n = t.rootPath + de.sep + n), n = t._extractQueryParams(n, t.queryParams), t.queryParams) {
3534
+ var b = "";
3535
+ for (let g in t.queryParams) t.queryParams.hasOwnProperty(g) && (b += "&" + g + "=" + t.queryParams[g]);
3536
+ n.includes("?") ? n += b : n += "?" + b.substring(1);
3511
3537
  }
3512
3538
  if (n) if (t.contentURL.push(n), o && (n.includes(".b3dm") || n.includes(".glb") || n.includes(".gltf"))) try {
3513
3539
  t.tileLoader.get(t.abortController, t.uuid, n, (g) => {
3514
- t.deleted || (g.asset && g.asset.copyright && (g.asset.copyright.split(";").forEach((h) => {
3515
- Z[h] ? Z[h]++ : Z[h] = 1;
3516
- }), t.displayCopyright && ma()), t.meshContent.push(g), t.splatsMesh || (g.traverse((h) => {
3517
- if ((h.isMesh || h.isPoints) && h.layers.disable(0), h.isMesh && t.occlusionCullingService) {
3518
- const l = h.geometry.attributes.position, f = [];
3519
- for (let I = 0; I < l.count; I++) f.push(t.color.r, t.color.g, t.color.b);
3520
- h.geometry.setAttribute("color", new E.Float32BufferAttribute(f, 3));
3540
+ t.deleted || (g.asset && g.asset.copyright && (g.asset.copyright.split(";").forEach((l) => {
3541
+ Z[l] ? Z[l]++ : Z[l] = 1;
3542
+ }), t.displayCopyright && pa()), t.meshContent.push(g), t.splatsMesh || (g.traverse((l) => {
3543
+ if ((l.isMesh || l.isPoints) && l.layers.disable(0), l.isMesh && t.occlusionCullingService) {
3544
+ const h = l.geometry.attributes.position, f = [];
3545
+ for (let I = 0; I < h.count; I++) f.push(t.color.r, t.color.g, t.color.b);
3546
+ l.geometry.setAttribute("color", new E.Float32BufferAttribute(f, 3));
3521
3547
  }
3522
3548
  }), t.add(g), t.updateMatrices()));
3523
3549
  }, t.cameraOnLoad ? () => t.loadingStrategy == "IMMEDIATE" ? t._calculateDistanceToCamera(t.cameraOnLoad) : t.loadingStrategy == "INCREMENTAL" ? t.parentTile ? t.parentTile._calculateDistanceToCamera(t.cameraOnLoad) / Math.max(1, t.parentTile.level) : t._calculateDistanceToCamera(t.cameraOnLoad) / Math.max(1, t.level) : t.loadingStrategy == "PERLEVEL" ? t.parentTile ? t.level + t.parentTile._calculateDistanceToCamera(t.cameraOnLoad) : t.level + t._calculateDistanceToCamera(t.cameraOnLoad) : 0 : () => 0, () => t._getSiblings(), t.level, t.loadingStrategy, !t.json.boundingVolume.region, !!t.json.boundingVolume.region, t.geometricError, t.splatsMesh);
@@ -3525,7 +3551,7 @@ class Wt extends E.Object3D {
3525
3551
  t.displayErrors && gt(g);
3526
3552
  }
3527
3553
  else r && n.includes(".json") && (t.jsonRequested = n, t.tileLoader.get(t.abortController, t.uuid, n, async (g) => {
3528
- t.jsonReceived = !0, t.deleted || (g.rootPath = be.dirname(n), t.json.children.push(g), s == null ? delete t.json.content : t.json.contents.splice(s, 1), t.hasUnloadedJSONContent--);
3554
+ t.jsonReceived = !0, t.deleted || (g.rootPath = de.dirname(n), t.json.children.push(g), s == null ? delete t.json.content : t.json.contents.splice(s, 1), t.hasUnloadedJSONContent--);
3529
3555
  }));
3530
3556
  }
3531
3557
  }
@@ -3534,7 +3560,7 @@ class Wt extends E.Object3D {
3534
3560
  e.meshContent.forEach((a) => {
3535
3561
  a && a.asset && a.asset.copyright && (a.asset.copyright.split(";").forEach((t) => {
3536
3562
  Z[t] && Z[t]--;
3537
- }), e.displayCopyright && ma());
3563
+ }), e.displayCopyright && pa());
3538
3564
  }), e.childrenTiles.forEach((a) => a.dispose()), e.deleted = !0, e.splatsMesh && (e.meshContent.forEach((a) => a.hide()), e.parentTile || e.splatsMesh.dispose()), e.contentURL && (e.contentURL.forEach((a) => {
3539
3565
  e.tileLoader.invalidate(a, e.uuid);
3540
3566
  }), e.contentURL = []), e.abortController && !e.jsonRequested && e.abortController.abort("tile not needed"), this.parent = null, e.meshContent = [], e.bbox && e.bbox.dispose(), this.dispatchEvent({ type: "removed" });
@@ -3547,7 +3573,7 @@ class Wt extends E.Object3D {
3547
3573
  const t = e.meshContent[a];
3548
3574
  t && t.asset && t.asset.copyright && (t.asset.copyright.split(";").forEach((A) => {
3549
3575
  Z[A] && Z[A]--;
3550
- }), e.displayCopyright && ma()), e.remove(t);
3576
+ }), e.displayCopyright && pa()), e.remove(t);
3551
3577
  }
3552
3578
  e.splatsMesh && e.meshContent.forEach((a) => a.hide()), e.meshContent = [], e.contentURL.forEach((a) => {
3553
3579
  e.tileLoader.invalidate(a, e.uuid);
@@ -3581,7 +3607,7 @@ class Wt extends E.Object3D {
3581
3607
  const a = new E.Frustum();
3582
3608
  a.setFromProjectionMatrix(new E.Matrix4().multiplyMatrices(e.projectionMatrix, e.matrixWorldInverse));
3583
3609
  let t = [0], A = [0], i = [0], s = [0];
3584
- return this.refine == "REPLACE" ? this.loadingStrategy === "IMMEDIATE" ? (this._updateImmediate(e, a), this._statsImmediate(i, t, s, A)) : (this._update(e, a), this._stats(i, t, s, A)) : (this._update(e, a), this._stats(i, t, s, A)), t > 0 && (s[0] /= t[0]), this.splatsMesh && (Ba.copy(e.position), We.copy(this.matrixWorld).invert(), Ba.applyMatrix4(We), this.splatsMesh.sort(Ba)), { numTilesLoaded: t[0], numTilesRendered: A[0], maxLOD: i[0], percentageLoaded: s[0] };
3610
+ return this.refine == "REPLACE" ? this.loadingStrategy === "IMMEDIATE" ? (this._updateImmediate(e, a), this._statsImmediate(i, t, s, A)) : (this._update(e, a), this._stats(i, t, s, A)) : (this._update(e, a), this._stats(i, t, s, A)), t > 0 && (s[0] /= t[0]), this.splatsMesh && (Ca.copy(e.position), We.copy(this.matrixWorld).invert(), Ca.applyMatrix4(We), this.splatsMesh.sort(Ca)), { numTilesLoaded: t[0], numTilesRendered: A[0], maxLOD: i[0], percentageLoaded: s[0] };
3585
3611
  }
3586
3612
  _updateImmediate(e, a) {
3587
3613
  this._computeMetricRecursive(e, a), this._updateNodeVisibilityImmediate(), this._expandTreeImmediate(e), this.shouldBeVisible = this.metric > 0 || !!this.loadOutsideView, this._shouldBeVisibleUpdateImmediate(), this._trimTreeImmediate(), this._loadMeshImmediate();
@@ -3797,8 +3823,8 @@ class Wt extends E.Object3D {
3797
3823
  this.distanceBias = e, this.childrenTiles.forEach((a) => a.setDistanceBias(e));
3798
3824
  }
3799
3825
  _transformWGS84ToCartesian(e, a, t, A) {
3800
- const i = 6378137 / Math.sqrt(1 - 0.006694384442042 * Math.pow(Math.sin(a), 2)), s = Math.cos(a), r = Math.cos(e), o = Math.sin(a), n = i + t, b = n * s * r, d = n * s * Math.sin(e), g = (0.993305615557957 * i + t) * o;
3801
- A.set(b, d, g);
3826
+ const i = 6378137 / Math.sqrt(1 - 0.006694384442042 * Math.pow(Math.sin(a), 2)), s = Math.cos(a), r = Math.cos(e), o = Math.sin(a), n = i + t, d = n * s * r, b = n * s * Math.sin(e), g = (0.993305615557957 * i + t) * o;
3827
+ A.set(d, b, g);
3802
3828
  }
3803
3829
  }
3804
3830
  function gt(c) {
@@ -3807,7 +3833,7 @@ function gt(c) {
3807
3833
  e.remove();
3808
3834
  }, 8e3);
3809
3835
  }
3810
- function ma() {
3836
+ function pa() {
3811
3837
  W || ((W = document.createElement("div")).style.position = "fixed", W.style.bottom = "20px", W.style.left = "20px", W.style.color = "white", W.style.textShadow = "2px 2px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000", W.style.padding = "10px", W.style.backgroundColor = "rgba(0, 0, 0, 0.1)", document.body.appendChild(W));
3812
3838
  const c = zi();
3813
3839
  let e = "";
@@ -3815,15 +3841,15 @@ function ma() {
3815
3841
  e += a + ", ";
3816
3842
  }), e = e.slice(0, -2), W.textContent = e;
3817
3843
  }
3818
- const N = new E.Sphere(new E.Vector3(0, 0, 0), 1), de = new E.Vector3(0, 0, 0), Ea = new E.Vector3(0, 0, 0), Vi = new E.Vector3(0, 1, 0), Qa = new E.Vector2(), ft = new E.Quaternion(), ut = new E.Matrix4();
3819
- class Ga extends E.Object3D {
3844
+ const N = new E.Sphere(new E.Vector3(0, 0, 0), 1), be = new E.Vector3(0, 0, 0), Ea = new E.Vector3(0, 0, 0), Vi = new E.Vector3(0, 1, 0), Qa = new E.Vector2(), ft = new E.Quaternion(), ut = new E.Matrix4();
3845
+ class Ua extends E.Object3D {
3820
3846
  constructor(e) {
3821
3847
  super();
3822
3848
  const a = this;
3823
- if (e.queryParams && (this.queryParams = { ...e.queryParams }), this.uuid = jt(), 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), a.setup(e);
3849
+ if (e.queryParams && (this.queryParams = { ...e.queryParams }), this.uuid = St(), 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), a.setup(e);
3824
3850
  else if (e.url) {
3825
3851
  this.loadJson = (i, s) => {
3826
- const r = be.dirname(s);
3852
+ const r = de.dirname(s);
3827
3853
  a.setup({ rootPath: r, json: i, onLoadCallback: e.onLoadCallback });
3828
3854
  };
3829
3855
  var t = e.url;
@@ -3842,7 +3868,7 @@ class Ga extends E.Object3D {
3842
3868
  if (a.json.transform && !a.centerModel && (t.elements = a.json.transform), a.applyMatrix4(t), a.parentTile && a.parentTile.matrix && (a.matrix.premultiply(a.parentTile.matrix), a.matrix.decompose(a.position, a.quaternion, a.scale)), a.matrixWorldNeedsUpdate = !0, a.updateWorldMatrix(!0, !0), a.json.boundingVolume) if (a.json.boundingVolume.box) a.boundingVolume = new $(a.json.boundingVolume.box);
3843
3869
  else if (a.json.boundingVolume.region) {
3844
3870
  const i = a.json.boundingVolume.region;
3845
- a.transformWGS84ToCartesian(i[0], i[1], i[4], de), a.transformWGS84ToCartesian(i[2], i[3], i[5], Ea), de.lerp(Ea, 0.5), a.boundingVolume = new E.Sphere(new E.Vector3(de.x, de.y, de.z), de.distanceTo(Ea));
3871
+ a.transformWGS84ToCartesian(i[0], i[1], i[4], be), a.transformWGS84ToCartesian(i[2], i[3], i[5], Ea), be.lerp(Ea, 0.5), a.boundingVolume = new E.Sphere(new E.Vector3(be.x, be.y, be.z), be.distanceTo(Ea));
3846
3872
  } else if (a.json.boundingVolume.sphere) {
3847
3873
  const i = a.json.boundingVolume.sphere;
3848
3874
  a.boundingVolume = new E.Sphere(new E.Vector3(i[0], i[1], i[2]), i[3]);
@@ -3853,7 +3879,7 @@ class Ga extends E.Object3D {
3853
3879
  }
3854
3880
  if (a.json.content ? (A(a.json.content), a.load()) : a.json.contents && (a.json.contents.forEach((i) => A(i)), a.load()), a.centerModel) {
3855
3881
  const i = new E.Sphere();
3856
- a.boundingVolume instanceof $ ? i.copy(a.boundingVolume.sphere) : a.boundingVolume instanceof E.Sphere && i.copy(a.boundingVolume), this.json.boundingVolume.region && (a.transformWGS84ToCartesian(0.5 * (a.json.boundingVolume.region[0] + a.json.boundingVolume.region[2]), 0.5 * (a.json.boundingVolume.region[1] + a.json.boundingVolume.region[3]), 0.5 * (a.json.boundingVolume.region[4] + a.json.boundingVolume.region[5]), de), ft.setFromUnitVectors(de.normalize(), Vi.normalize()), a.master.applyQuaternion(ft), a.master.updateWorldMatrix(!1, !1)), ut.makeTranslation(-i.center.x * a.scale.x, -i.center.y * a.scale.y, -i.center.z * a.scale.z), a.master.matrix.multiply(ut), a.master.matrix.decompose(a.master.position, a.master.quaternion, a.master.scale);
3882
+ a.boundingVolume instanceof $ ? i.copy(a.boundingVolume.sphere) : a.boundingVolume instanceof E.Sphere && i.copy(a.boundingVolume), this.json.boundingVolume.region && (a.transformWGS84ToCartesian(0.5 * (a.json.boundingVolume.region[0] + a.json.boundingVolume.region[2]), 0.5 * (a.json.boundingVolume.region[1] + a.json.boundingVolume.region[3]), 0.5 * (a.json.boundingVolume.region[4] + a.json.boundingVolume.region[5]), be), ft.setFromUnitVectors(be.normalize(), Vi.normalize()), a.master.applyQuaternion(ft), a.master.updateWorldMatrix(!1, !1)), ut.makeTranslation(-i.center.x * a.scale.x, -i.center.y * a.scale.y, -i.center.z * a.scale.z), a.master.matrix.multiply(ut), a.master.matrix.decompose(a.master.position, a.master.quaternion, a.master.scale);
3857
3883
  }
3858
3884
  a.isSetup = !0, e.onLoadCallback && e.onLoadCallback(a);
3859
3885
  }
@@ -3884,7 +3910,7 @@ class Ga extends E.Object3D {
3884
3910
  let A;
3885
3911
  t.uri ? A = t.uri : t.url && (A = t.url);
3886
3912
  const i = /^(?:http|https|ftp|tcp|udp):\/\/\S+/;
3887
- if (i.test(e.rootPath) ? i.test(A) || (A = e.assembleURL(e.rootPath, A)) : be.isAbsolute(e.rootPath) && (A = e.rootPath + be.sep + A), A = e.extractQueryParams(A, e.queryParams), e.queryParams) {
3913
+ if (i.test(e.rootPath) ? i.test(A) || (A = e.assembleURL(e.rootPath, A)) : de.isAbsolute(e.rootPath) && (A = e.rootPath + de.sep + A), A = e.extractQueryParams(A, e.queryParams), e.queryParams) {
3888
3914
  var s = "";
3889
3915
  for (let r in e.queryParams) e.queryParams.hasOwnProperty(r) && (s += "&" + r + "=" + e.queryParams[r]);
3890
3916
  A.includes("?") ? A += s : A += "?" + s.substring(1);
@@ -3897,7 +3923,7 @@ class Ga extends E.Object3D {
3897
3923
  this.deleted || this.meshContent.add(e);
3898
3924
  }
3899
3925
  loadJson(e, a) {
3900
- this.deleted || (this.json.children && (this.jsonChildren = this.json.children), e.rootPath = be.dirname(a), this.jsonChildren.push(e), this.hasUnloadedJSONContent--);
3926
+ this.deleted || (this.json.children && (this.jsonChildren = this.json.children), e.rootPath = de.dirname(a), this.jsonChildren.push(e), this.hasUnloadedJSONContent--);
3901
3927
  }
3902
3928
  dispose() {
3903
3929
  const e = this;
@@ -3923,7 +3949,7 @@ class Ga extends E.Object3D {
3923
3949
  t.isSetup && (t.materialVisibility, t.boundingVolume && t.geometricError && (t.metric = t.calculateUpdateMetric(e, a)), t.childrenTiles.forEach((i) => i._update(e, a)), A(t.metric), function(i) {
3924
3950
  i < 0 && t.hasMeshContent || (!t.hasMeshContent && t.rootPath || i < t.master.geometricErrorMultiplier * t.geometricError && t.meshContent.size > 0) && t.json && t.jsonChildren && t.childrenTiles.length != t.jsonChildren.length && t.jsonChildren.forEach((s) => {
3925
3951
  if (!(s.root || s.children || s.getChildren || s.content || s.contents)) return;
3926
- let r = new Ga({ parentTile: t, queryParams: t.queryParams, parentGeometricError: t.geometricError, parentBoundingVolume: t.boundingVolume, parentRefinement: t.refinement, json: s, rootPath: t.rootPath, loadOutsideView: t.loadOutsideView, level: t.level + 1, tileLoader: t.tileLoader, cameraOnLoad: e, master: t.master, centerModel: !1 });
3952
+ let r = new Ua({ parentTile: t, queryParams: t.queryParams, parentGeometricError: t.geometricError, parentBoundingVolume: t.boundingVolume, parentRefinement: t.refinement, json: s, rootPath: t.rootPath, loadOutsideView: t.loadOutsideView, level: t.level + 1, tileLoader: t.tileLoader, cameraOnLoad: e, master: t.master, centerModel: !1 });
3927
3953
  t.childrenTiles.push(r);
3928
3954
  });
3929
3955
  }(t.metric), function(i) {
@@ -3994,13 +4020,13 @@ class Ga extends E.Object3D {
3994
4020
  return this.matrixWorld;
3995
4021
  }
3996
4022
  transformWGS84ToCartesian(e, a, t, A) {
3997
- const i = 6378137 / Math.sqrt(1 - 0.006694384442042 * Math.pow(Math.sin(a), 2)), s = Math.cos(a), r = Math.cos(e), o = Math.sin(a), n = i + t, b = n * s * r, d = n * s * Math.sin(e), g = (0.993305615557957 * i + t) * o;
3998
- A.set(b, d, g);
4023
+ const i = 6378137 / Math.sqrt(1 - 0.006694384442042 * Math.pow(Math.sin(a), 2)), s = Math.cos(a), r = Math.cos(e), o = Math.sin(a), n = i + t, d = n * s * r, b = n * s * Math.sin(e), g = (0.993305615557957 * i + t) * o;
4024
+ A.set(d, b, g);
3999
4025
  }
4000
4026
  }
4001
4027
  class as extends E.Object3D {
4002
4028
  constructor(e) {
4003
- super(), e.master = this, e.domWidth && e.domHeight ? this.rendererSize = new E.Vector2(e.domWidth, e.domHeight) : this.rendererSize = new E.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;
4029
+ super(), e.master = this, e.domWidth && e.domHeight ? this.rendererSize = new E.Vector2(e.domWidth, e.domHeight) : this.rendererSize = new E.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 Ua(e), e.static && (this.matrixAutoUpdate = !1), this.tileLoader = e.tileLoader;
4004
4030
  }
4005
4031
  _renderSize(e) {
4006
4032
  this.renderer ? this.renderer.getDrawingBufferSize(e) : e.copy(this.rendererSize);
@@ -4087,17 +4113,17 @@ class Wi {
4087
4113
  let Ie = 0;
4088
4114
  class ts {
4089
4115
  constructor(e, a) {
4090
- if (this.zUpToYUpMatrix = new E.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 = a.proxy, a && (this.meshCallback = a.meshCallback, this.pointsCallback = a.pointsCallback, a.maxCachedItems && (this.maxCachedItems = a.maxCachedItems), a.maxInstances && (this.maxInstances = a.maxInstances)), this.gltfLoader = new Mt(), a && a.dracoLoader) this.gltfLoader.setDRACOLoader(a.dracoLoader), this.hasDracoLoader = !0;
4116
+ if (this.zUpToYUpMatrix = new E.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 = a.proxy, a && (this.meshCallback = a.meshCallback, this.pointsCallback = a.pointsCallback, a.maxCachedItems && (this.maxCachedItems = a.maxCachedItems), a.maxInstances && (this.maxInstances = a.maxInstances)), this.gltfLoader = new Dt(), a && a.dracoLoader) this.gltfLoader.setDRACOLoader(a.dracoLoader), this.hasDracoLoader = !0;
4091
4117
  else {
4092
- const t = new vt();
4118
+ const t = new Rt();
4093
4119
  t.setDecoderPath("https://www.gstatic.com/draco/versioned/decoders/1.4.3/"), this.gltfLoader.setDRACOLoader(t), this.gltfLoader.hasDracoLoader = !0;
4094
4120
  }
4095
4121
  if (a && a.ktx2Loader) this.gltfLoader.setKTX2Loader(a.ktx2Loader), this.hasKTX2Loader = !0;
4096
4122
  else if (a && a.renderer) {
4097
- const t = new P();
4123
+ const t = new L();
4098
4124
  t.setTranscoderPath("https://storage.googleapis.com/ogc-3d-tiles/basis/").detectSupport(a.renderer), this.gltfLoader.setKTX2Loader(t), this.gltfLoader.hasKTX2Loader = !0;
4099
4125
  }
4100
- this.gltfLoader.setMeshoptDecoder(Vt), this.hasMeshOptDecoder = !0, this.b3dmDecoder = new Dt(this.gltfLoader), this.cache = new xt(), this.scene = e, this.ready = [], this.downloads = [], this.nextReady = [], this.nextDownloads = [];
4126
+ this.gltfLoader.setMeshoptDecoder(Vt), this.hasMeshOptDecoder = !0, this.b3dmDecoder = new jt(this.gltfLoader), this.cache = new kt(), this.scene = e, this.ready = [], this.downloads = [], this.nextReady = [], this.nextDownloads = [];
4101
4127
  }
4102
4128
  update() {
4103
4129
  const e = this;
@@ -4143,7 +4169,7 @@ class ts {
4143
4169
  a = e.proxy ? () => fetch(e.proxy, { method: "POST", body: t.path }) : () => fetch(t.path), Ie++, a().then((A) => {
4144
4170
  if (!A.ok) throw console.error("could not load tile with path : " + t.path), new Error(`couldn't load "${t.path}". Request failed with status ${A.status} : ${A.statusText}`);
4145
4171
  return A.json();
4146
- }).then((A) => La(A, t.path)).then((A) => {
4172
+ }).then((A) => Ga(A, t.path)).then((A) => {
4147
4173
  t.tile.setObject(A, t.path), e.ready.unshift(t);
4148
4174
  }).catch((A) => console.error(A)).finally(() => {
4149
4175
  Ie--;
@@ -4171,34 +4197,34 @@ class ts {
4171
4197
  }
4172
4198
  }
4173
4199
  }
4174
- get(e, a, t, A, i, s, r, o, n, b) {
4175
- const d = this, g = function(l) {
4176
- for (var f = l.split("/"), I = [], p = 0, u = 0; u < f.length; u++) {
4177
- var B = f[u];
4178
- B !== "." && B !== "" && B !== ".." ? I[p++] = B : B === ".." && p > 0 && p--;
4200
+ get(e, a, t, A, i, s, r, o, n, d) {
4201
+ const b = this, g = function(h) {
4202
+ for (var f = h.split("/"), I = [], m = 0, u = 0; u < f.length; u++) {
4203
+ var C = f[u];
4204
+ C !== "." && C !== "" && C !== ".." ? I[m++] = C : C === ".." && m > 0 && m--;
4179
4205
  }
4180
- if (p === 0) return "/";
4181
- var C = "";
4182
- for (u = 0; u < p; u++) C += "/" + I[u];
4183
- return C;
4206
+ if (m === 0) return "/";
4207
+ var B = "";
4208
+ for (u = 0; u < m; u++) B += "/" + I[u];
4209
+ return B;
4184
4210
  }(a);
4185
4211
  if (!(a.includes(".b3dm") || a.includes(".json") || a.includes(".glb") || a.includes(".gltf"))) return void console.error("the 3DTiles cache can only be used to load B3DM, gltf and json data");
4186
- const h = d.cache.get(g);
4187
- if (h) h.addInstance(A);
4212
+ const l = b.cache.get(g);
4213
+ if (l) l.addInstance(A);
4188
4214
  else if (a.includes(".b3dm") || a.includes(".glb") || a.includes(".gltf")) {
4189
- const l = new Yi(d.scene);
4190
- l.addInstance(A), d.cache.put(g, l);
4215
+ const h = new Yi(b.scene);
4216
+ h.addInstance(A), b.cache.put(g, h);
4191
4217
  const f = new AbortController();
4192
4218
  e.signal.addEventListener("abort", () => {
4193
- l.getCount() == 0 && f.abort();
4194
- }), this.downloads.push({ abortController: f, tile: l, key: g, path: a, distanceFunction: i, getSiblings: s, level: r, uuid: t, sceneZupToYup: o, meshZupToYup: n, geometricError: b, shouldDoDownload: () => !0 });
4219
+ h.getCount() == 0 && f.abort();
4220
+ }), this.downloads.push({ abortController: f, tile: h, key: g, path: a, distanceFunction: i, getSiblings: s, level: r, uuid: t, sceneZupToYup: o, meshZupToYup: n, geometricError: d, shouldDoDownload: () => !0 });
4195
4221
  } else if (a.includes(".json")) {
4196
- const l = new Wi();
4197
- l.addInstance(A), d.cache.put(g, l);
4222
+ const h = new Wi();
4223
+ h.addInstance(A), b.cache.put(g, h);
4198
4224
  const f = new AbortController();
4199
4225
  e.signal.addEventListener("abort", () => {
4200
- l.getCount() == 0 && f.abort();
4201
- }), this.downloads.push({ abortController: f, tile: l, key: g, path: a, distanceFunction: i, getSiblings: s, level: r, shouldDoDownload: () => !0 });
4226
+ h.getCount() == 0 && f.abort();
4227
+ }), this.downloads.push({ abortController: f, tile: h, key: g, path: a, distanceFunction: i, getSiblings: s, level: r, shouldDoDownload: () => !0 });
4202
4228
  }
4203
4229
  }
4204
4230
  _getNextDownloads() {
@@ -4244,7 +4270,7 @@ export {
4244
4270
  es as OcclusionCullingService,
4245
4271
  Ni as TileLoader,
4246
4272
  zi as getOGC3DTilesCopyrightInfo,
4247
- Ji as splatsFragmentShader,
4248
- Oi as splatsVertexShader
4273
+ _i as splatsFragmentShader,
4274
+ qi as splatsVertexShader
4249
4275
  };
4250
4276
  //# sourceMappingURL=threedtiles.es.js.map