@needle-tools/engine 5.1.9 → 5.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/SKILL.md +64 -4
- package/components.needle.json +1 -1
- package/dist/{needle-engine.bundle-CHq9xqXv.min.js → needle-engine.bundle-d-dLyN3s.min.js} +137 -136
- package/dist/{needle-engine.bundle-DYPk7VZg.umd.cjs → needle-engine.bundle-n5YALNtc.umd.cjs} +140 -139
- package/dist/{needle-engine.bundle-XZ6cKssu.js → needle-engine.bundle-ue2Lw4bF.js} +5267 -5101
- package/dist/needle-engine.d.ts +138 -26
- package/dist/needle-engine.js +522 -518
- package/dist/needle-engine.min.js +1 -1
- package/dist/needle-engine.umd.cjs +1 -1
- package/dist/three-examples.js +727 -781
- package/dist/three-examples.min.js +12 -12
- package/dist/three-examples.umd.cjs +9 -9
- package/lib/engine/api.d.ts +1 -1
- package/lib/engine/api.js +1 -1
- package/lib/engine/api.js.map +1 -1
- package/lib/engine/engine_init.js +2 -2
- package/lib/engine/engine_init.js.map +1 -1
- package/lib/engine/engine_license.d.ts +7 -7
- package/lib/engine/engine_license.js +71 -71
- package/lib/engine/engine_license.js.map +1 -1
- package/lib/engine/engine_materialpropertyblock.d.ts +13 -4
- package/lib/engine/engine_materialpropertyblock.js +16 -5
- package/lib/engine/engine_materialpropertyblock.js.map +1 -1
- package/lib/engine/engine_math.d.ts +13 -0
- package/lib/engine/engine_math.js +17 -0
- package/lib/engine/engine_math.js.map +1 -1
- package/lib/engine/engine_networking_blob.js +3 -3
- package/lib/engine/engine_networking_blob.js.map +1 -1
- package/lib/engine/engine_utils_qrcode.js +2 -2
- package/lib/engine/engine_utils_qrcode.js.map +1 -1
- package/lib/engine/postprocessing/postprocessing.d.ts +18 -0
- package/lib/engine/postprocessing/postprocessing.js +31 -2
- package/lib/engine/postprocessing/postprocessing.js.map +1 -1
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +2 -2
- package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js.map +1 -1
- package/lib/engine/webcomponents/needle menu/needle-menu.js +5 -5
- package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
- package/lib/engine/webcomponents/needle-engine.js +2 -2
- package/lib/engine/webcomponents/needle-engine.js.map +1 -1
- package/lib/engine/webcomponents/needle-engine.loading.js +2 -2
- package/lib/engine/webcomponents/needle-engine.loading.js.map +1 -1
- package/lib/engine/xr/TempXRContext.js +2 -2
- package/lib/engine/xr/TempXRContext.js.map +1 -1
- package/lib/engine/xr/XRHandMeshModel.d.ts +31 -0
- package/lib/engine/xr/XRHandMeshModel.js +153 -0
- package/lib/engine/xr/XRHandMeshModel.js.map +1 -0
- package/lib/engine-components/DragControls.d.ts +0 -5
- package/lib/engine-components/DragControls.js +0 -8
- package/lib/engine-components/DragControls.js.map +1 -1
- package/lib/engine-components/ReflectionProbe.js +3 -3
- package/lib/engine-components/ReflectionProbe.js.map +1 -1
- package/lib/engine-components/RendererInstancing.d.ts +34 -3
- package/lib/engine-components/RendererInstancing.js +92 -11
- package/lib/engine-components/RendererInstancing.js.map +1 -1
- package/lib/engine-components/RendererLightmap.js +1 -1
- package/lib/engine-components/RendererLightmap.js.map +1 -1
- package/lib/engine-components/SyncedRoom.js +5 -0
- package/lib/engine-components/SyncedRoom.js.map +1 -1
- package/lib/engine-components/export/usdz/USDZExporter.js +4 -4
- package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
- package/lib/engine-components/postprocessing/Effects/DepthOfField.js +10 -2
- package/lib/engine-components/postprocessing/Effects/DepthOfField.js.map +1 -1
- package/lib/engine-components/postprocessing/index.d.ts +4 -0
- package/lib/engine-components/postprocessing/index.js +7 -0
- package/lib/engine-components/postprocessing/index.js.map +1 -1
- package/lib/engine-components/splines/SplineWalker.js +9 -3
- package/lib/engine-components/splines/SplineWalker.js.map +1 -1
- package/lib/engine-components/utils/LookAt.d.ts +13 -4
- package/lib/engine-components/utils/LookAt.js +13 -4
- package/lib/engine-components/utils/LookAt.js.map +1 -1
- package/lib/engine-components/webxr/WebXR.js +1 -1
- package/lib/engine-components/webxr/WebXR.js.map +1 -1
- package/lib/engine-components/webxr/controllers/XRControllerModel.d.ts +1 -1
- package/lib/engine-components/webxr/controllers/XRControllerModel.js +12 -7
- package/lib/engine-components/webxr/controllers/XRControllerModel.js.map +1 -1
- package/package.json +2 -2
- package/plugins/common/license.js +4 -4
- package/plugins/vite/license.js +4 -4
- package/src/engine/api.ts +1 -1
- package/src/engine/engine_init.ts +2 -2
- package/src/engine/engine_license.ts +68 -68
- package/src/engine/engine_materialpropertyblock.ts +17 -5
- package/src/engine/engine_math.ts +17 -0
- package/src/engine/engine_networking_blob.ts +3 -3
- package/src/engine/engine_utils_qrcode.ts +2 -2
- package/src/engine/postprocessing/postprocessing.ts +32 -2
- package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +2 -2
- package/src/engine/webcomponents/needle menu/needle-menu.ts +5 -5
- package/src/engine/webcomponents/needle-engine.loading.ts +6 -6
- package/src/engine/webcomponents/needle-engine.ts +2 -2
- package/src/engine/xr/TempXRContext.ts +2 -2
- package/src/engine/xr/XRHandMeshModel.ts +179 -0
- package/src/engine-components/DragControls.ts +0 -7
- package/src/engine-components/ReflectionProbe.ts +3 -3
- package/src/engine-components/RendererInstancing.ts +92 -11
- package/src/engine-components/RendererLightmap.ts +1 -1
- package/src/engine-components/SyncedRoom.ts +5 -0
- package/src/engine-components/export/usdz/USDZExporter.ts +4 -4
- package/src/engine-components/postprocessing/Effects/DepthOfField.ts +10 -2
- package/src/engine-components/postprocessing/index.ts +7 -0
- package/src/engine-components/splines/SplineWalker.ts +9 -3
- package/src/engine-components/utils/LookAt.ts +13 -4
- package/src/engine-components/webxr/WebXR.ts +1 -1
- package/src/engine-components/webxr/controllers/XRControllerModel.ts +13 -7
package/dist/three-examples.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Mesh as Y, SphereGeometry as
|
|
2
|
-
class
|
|
1
|
+
import { Mesh as Y, SphereGeometry as fi, Vector3 as L, MeshBasicMaterial as DA, TrianglesDrawMode as Da, TriangleFanDrawMode as zn, TriangleStripDrawMode as ks, BufferAttribute as Ne, Float32BufferAttribute as Re, InstancedBufferAttribute as pi, InterleavedBuffer as vs, InterleavedBufferAttribute as JA, BufferGeometry as oA, Loader as NA, LoaderUtils as At, FileLoader as fA, MeshPhysicalMaterial as FA, Vector2 as Le, Color as De, LinearSRGBColorSpace as AA, SRGBColorSpace as Be, SpotLight as Ls, PointLight as Vn, DirectionalLight as Ns, Matrix4 as ue, InstancedMesh as Sa, Quaternion as Se, Object3D as SA, TextureLoader as di, ImageBitmapLoader as xa, LinearMipmapLinearFilter as Pt, NearestMipmapLinearFilter as Us, LinearMipmapNearestFilter as _s, NearestMipmapNearestFilter as Qi, LinearFilter as aA, NearestFilter as ln, RepeatWrapping as it, MirroredRepeatWrapping as Ps, ClampToEdgeWrapping as hn, PointsMaterial as xt, Material as kt, LineBasicMaterial as LA, MeshStandardMaterial as mi, DoubleSide as bi, PropertyBinding as UA, SkinnedMesh as Hs, LineSegments as In, Line as EA, LineLoop as Fa, Points as nn, Group as tt, PerspectiveCamera as En, MathUtils as we, OrthographicCamera as Os, Skeleton as qs, AnimationClip as Ks, Bone as Xn, InterpolateDiscrete as Ys, InterpolateLinear as wi, Texture as Wn, VectorKeyframeTrack as Zn, NumberKeyframeTrack as $n, QuaternionKeyframeTrack as ei, ColorManagement as $e, FrontSide as Js, Interpolant as Ra, Box3 as Cn, Sphere as yi, CompressedCubeTexture as Ma, CompressedArrayTexture as Ta, CompressedTexture as vt, NoColorSpace as un, RGBA_BPTC_Format as Ai, RGBA_S3TC_DXT5_Format as ti, RGBA_S3TC_DXT3_Format as _i, RGB_S3TC_DXT1_Format as Pi, RGBA_S3TC_DXT1_Format as ni, RGBA_ASTC_6x6_Format as Hi, RGBA_ASTC_4x4_Format as sn, RGBA_ETC2_EAC_Format as js, RGB_ETC2_Format as zs, RGBFormat as ii, RedFormat as gt, RGFormat as Ft, RGBAFormat as jA, UnsignedByteType as BA, HalfFloatType as eA, UnsignedInt101111Type as Vs, UnsignedInt5999Type as Xs, FloatType as pA, DataTexture as Ga, Data3DTexture as ka, RGB_PVRTC_4BPPV1_Format as va, RGB_ETC1_Format as La, RGBA_PVRTC_4BPPV1_Format as Na, RGB_BPTC_UNSIGNED_Format as Ua, NodeFrame as _a, ShaderLib as wA, ExtrudeGeometry as Pa, ShapePath as Ha, DataTextureLoader as Ws, DataUtils as lt, CylinderGeometry as Xe, BoxGeometry as Ye, OctahedronGeometry as qt, TorusGeometry as Ct, Euler as YA, Controls as Zs, Raycaster as Di, PlaneGeometry as Si, MOUSE as It, TOUCH as ht, Spherical as Oi, Ray as Oa, Plane as qa, ShaderMaterial as $s, Uniform$1 as Ka, Scene as si, WebGLRenderer as Ya, CanvasTexture as eo, REVISION as Ja, Source as ja, InstancedBufferGeometry as za, InstancedInterleavedBuffer as oi, WireframeGeometry as Va, UniformsUtils as Ao, UniformsLib as on, Vector4 as _A, Line3 as Xa, Matrix3 as to, Curve as Wa, MeshPhongMaterial as Lt, MeshLambertMaterial as Za, EquirectangularReflectionMapping as $a, AmbientLight as er, Uint16BufferAttribute as Ar, ShapeUtils as tr, DefaultLoadingManager as nr } from "./three-core.js";
|
|
2
|
+
class vl extends Y {
|
|
3
3
|
constructor(e, A, n, t = 128) {
|
|
4
4
|
if (A <= 0 || n <= 0 || t <= 0)
|
|
5
5
|
throw new Error("GroundedSkybox height, radius, and resolution must be positive.");
|
|
6
|
-
const i = new
|
|
6
|
+
const i = new fi(n, 2 * t, t);
|
|
7
7
|
i.scale(1, 1, -1);
|
|
8
8
|
const s = i.getAttribute("position"), o = new L();
|
|
9
9
|
for (let r = 0; r < s.count; ++r)
|
|
@@ -14,7 +14,7 @@ class Ll extends Y {
|
|
|
14
14
|
s.needsUpdate = !0, super(i, new DA({ map: e, depthWrite: !1 }));
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
|
-
function
|
|
17
|
+
function ir(a, e, A = !0) {
|
|
18
18
|
if (!e || !e.isReady)
|
|
19
19
|
throw new Error("BufferGeometryUtils: Initialized MikkTSpace library required.");
|
|
20
20
|
if (!a.hasAttribute("position") || !a.hasAttribute("normal") || !a.hasAttribute("uv"))
|
|
@@ -38,7 +38,7 @@ function sr(a, e, A = !0) {
|
|
|
38
38
|
i[s] *= -1;
|
|
39
39
|
return t.setAttribute("tangent", new Ne(i, 4)), a !== t && a.copy(t), a;
|
|
40
40
|
}
|
|
41
|
-
function
|
|
41
|
+
function sr(a, e = !1) {
|
|
42
42
|
const A = a[0].index !== null, n = new Set(Object.keys(a[0].attributes)), t = new Set(Object.keys(a[0].morphAttributes)), i = {}, s = {}, o = a[0].morphTargetsRelative, r = new oA();
|
|
43
43
|
let c = 0;
|
|
44
44
|
for (let g = 0; g < a.length; ++g) {
|
|
@@ -135,10 +135,10 @@ function ai(a) {
|
|
|
135
135
|
}
|
|
136
136
|
return t !== void 0 && (o.gpuType = t), o;
|
|
137
137
|
}
|
|
138
|
-
function
|
|
138
|
+
function or(a) {
|
|
139
139
|
return a.isInstancedInterleavedBufferAttribute || a.isInterleavedBufferAttribute ? Bn(a) : a.isInstancedBufferAttribute ? new pi().copy(a) : new Ne().copy(a);
|
|
140
140
|
}
|
|
141
|
-
function
|
|
141
|
+
function ar(a) {
|
|
142
142
|
let e, A = 0, n = 0;
|
|
143
143
|
for (let c = 0, g = a.length; c < g; ++c) {
|
|
144
144
|
const l = a[c];
|
|
@@ -153,8 +153,8 @@ function rr(a) {
|
|
|
153
153
|
const l = a[c], h = l.itemSize, u = l.count, B = new JA(t, h, i, l.normalized);
|
|
154
154
|
s.push(B), i += h;
|
|
155
155
|
for (let E = 0; E < u; E++)
|
|
156
|
-
for (let
|
|
157
|
-
B[r[
|
|
156
|
+
for (let f = 0; f < h; f++)
|
|
157
|
+
B[r[f]](E, l[o[f]](E));
|
|
158
158
|
}
|
|
159
159
|
return s;
|
|
160
160
|
}
|
|
@@ -166,7 +166,7 @@ function Bn(a) {
|
|
|
166
166
|
s.setX(o, a.getX(o)), n >= 2 && s.setY(o, a.getY(o)), n >= 3 && s.setZ(o, a.getZ(o)), n >= 4 && s.setW(o, a.getW(o));
|
|
167
167
|
return s;
|
|
168
168
|
}
|
|
169
|
-
function
|
|
169
|
+
function rr(a) {
|
|
170
170
|
const e = a.attributes, A = a.morphTargets, n = /* @__PURE__ */ new Map();
|
|
171
171
|
for (const t in e) {
|
|
172
172
|
const i = e[t];
|
|
@@ -177,7 +177,7 @@ function cr(a) {
|
|
|
177
177
|
i.isInterleavedBufferAttribute && (n.has(i) || n.set(i, Bn(i)), A[t] = n.get(i));
|
|
178
178
|
}
|
|
179
179
|
}
|
|
180
|
-
function
|
|
180
|
+
function cr(a) {
|
|
181
181
|
let e = 0;
|
|
182
182
|
for (const n in a.attributes) {
|
|
183
183
|
const t = a.getAttribute(n);
|
|
@@ -186,7 +186,7 @@ function gr(a) {
|
|
|
186
186
|
const A = a.getIndex();
|
|
187
187
|
return e += A ? A.count * A.itemSize * A.array.BYTES_PER_ELEMENT : 0, e;
|
|
188
188
|
}
|
|
189
|
-
function
|
|
189
|
+
function gr(a, e = 1e-4) {
|
|
190
190
|
e = Math.max(e, Number.EPSILON);
|
|
191
191
|
const A = {}, n = a.getIndex(), t = a.getAttribute("position"), i = n ? n.count : t.count;
|
|
192
192
|
let s = 0;
|
|
@@ -204,14 +204,14 @@ function lr(a, e = 1e-4) {
|
|
|
204
204
|
c[m][y] = new F.constructor(x, F.itemSize, F.normalized);
|
|
205
205
|
}));
|
|
206
206
|
}
|
|
207
|
-
const u = e * 0.5, B = Math.log10(1 / e), E = Math.pow(10, B),
|
|
207
|
+
const u = e * 0.5, B = Math.log10(1 / e), E = Math.pow(10, B), f = u * E;
|
|
208
208
|
for (let b = 0; b < i; b++) {
|
|
209
209
|
const d = n ? n.getX(b) : b;
|
|
210
210
|
let m = "";
|
|
211
211
|
for (let w = 0, R = o.length; w < R; w++) {
|
|
212
212
|
const F = o[w], y = a.getAttribute(F), x = y.itemSize;
|
|
213
213
|
for (let N = 0; N < x; N++)
|
|
214
|
-
m += `${~~(y[l[N]](d) * E +
|
|
214
|
+
m += `${~~(y[l[N]](d) * E + f)},`;
|
|
215
215
|
}
|
|
216
216
|
if (m in A)
|
|
217
217
|
g.push(A[m]);
|
|
@@ -248,7 +248,7 @@ function lr(a, e = 1e-4) {
|
|
|
248
248
|
return p.setIndex(g), p;
|
|
249
249
|
}
|
|
250
250
|
function ri(a, e) {
|
|
251
|
-
if (e ===
|
|
251
|
+
if (e === Da)
|
|
252
252
|
return console.warn("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Geometry already defined as triangles."), a;
|
|
253
253
|
if (e === zn || e === ks) {
|
|
254
254
|
let A = a.getIndex();
|
|
@@ -274,7 +274,7 @@ function ri(a, e) {
|
|
|
274
274
|
} else
|
|
275
275
|
return console.error("THREE.BufferGeometryUtils.toTrianglesDrawMode(): Unknown draw mode:", e), a;
|
|
276
276
|
}
|
|
277
|
-
function
|
|
277
|
+
function lr(a) {
|
|
278
278
|
const e = new L(), A = new L(), n = new L(), t = new L(), i = new L(), s = new L(), o = new L(), r = new L(), c = new L();
|
|
279
279
|
function g(Ae, re, te, Z, ne, le, Ie, ie) {
|
|
280
280
|
e.fromBufferAttribute(re, ne), A.fromBufferAttribute(re, le), n.fromBufferAttribute(re, Ie);
|
|
@@ -291,14 +291,14 @@ function hr(a) {
|
|
|
291
291
|
}
|
|
292
292
|
const l = a.geometry, h = a.material;
|
|
293
293
|
let u, B, E;
|
|
294
|
-
const
|
|
294
|
+
const f = l.index, p = l.attributes.position, b = l.morphAttributes.position, d = l.morphTargetsRelative, m = l.attributes.normal, w = l.morphAttributes.position, R = l.groups, F = l.drawRange;
|
|
295
295
|
let y, x, N, _, P, X, U;
|
|
296
296
|
const q = new Float32Array(p.count * p.itemSize), H = new Float32Array(m.count * m.itemSize);
|
|
297
|
-
if (
|
|
297
|
+
if (f !== null)
|
|
298
298
|
if (Array.isArray(h))
|
|
299
299
|
for (y = 0, N = R.length; y < N; y++)
|
|
300
300
|
for (P = R[y], X = Math.max(P.start, F.start), U = Math.min(P.start + P.count, F.start + F.count), x = X, _ = U; x < _; x += 3)
|
|
301
|
-
u =
|
|
301
|
+
u = f.getX(x), B = f.getX(x + 1), E = f.getX(x + 2), g(
|
|
302
302
|
a,
|
|
303
303
|
p,
|
|
304
304
|
b,
|
|
@@ -318,8 +318,8 @@ function hr(a) {
|
|
|
318
318
|
H
|
|
319
319
|
);
|
|
320
320
|
else
|
|
321
|
-
for (X = Math.max(0, F.start), U = Math.min(
|
|
322
|
-
u =
|
|
321
|
+
for (X = Math.max(0, F.start), U = Math.min(f.count, F.start + F.count), y = X, N = U; y < N; y += 3)
|
|
322
|
+
u = f.getX(y), B = f.getX(y + 1), E = f.getX(y + 2), g(
|
|
323
323
|
a,
|
|
324
324
|
p,
|
|
325
325
|
b,
|
|
@@ -389,7 +389,7 @@ function hr(a) {
|
|
|
389
389
|
morphedNormalAttribute: oe
|
|
390
390
|
};
|
|
391
391
|
}
|
|
392
|
-
function
|
|
392
|
+
function hr(a) {
|
|
393
393
|
if (a.groups.length === 0)
|
|
394
394
|
return console.warn("THREE.BufferGeometryUtils.mergeGroups(): No groups are defined. Nothing to merge."), a;
|
|
395
395
|
let e = a.groups;
|
|
@@ -419,14 +419,14 @@ function Ir(a) {
|
|
|
419
419
|
}
|
|
420
420
|
return a;
|
|
421
421
|
}
|
|
422
|
-
function
|
|
422
|
+
function Ir(a, e = Math.PI / 3) {
|
|
423
423
|
const A = Math.cos(e), n = (1 + 1e-10) * 100, t = [new L(), new L(), new L()], i = new L(), s = new L(), o = new L(), r = new L();
|
|
424
424
|
function c(E) {
|
|
425
|
-
const
|
|
426
|
-
return `${
|
|
425
|
+
const f = ~~(E.x * n), p = ~~(E.y * n), b = ~~(E.z * n);
|
|
426
|
+
return `${f},${p},${b}`;
|
|
427
427
|
}
|
|
428
428
|
const g = a.index ? a.toNonIndexed() : a, l = g.attributes.position, h = {};
|
|
429
|
-
for (let E = 0,
|
|
429
|
+
for (let E = 0, f = l.count / 3; E < f; E++) {
|
|
430
430
|
const p = 3 * E, b = t[0].fromBufferAttribute(l, p + 0), d = t[1].fromBufferAttribute(l, p + 1), m = t[2].fromBufferAttribute(l, p + 2);
|
|
431
431
|
i.subVectors(m, d), s.subVectors(b, d);
|
|
432
432
|
const w = new L().crossVectors(i, s).normalize();
|
|
@@ -436,7 +436,7 @@ function ur(a, e = Math.PI / 3) {
|
|
|
436
436
|
}
|
|
437
437
|
}
|
|
438
438
|
const u = new Float32Array(l.count * 3), B = new Ne(u, 3, !1);
|
|
439
|
-
for (let E = 0,
|
|
439
|
+
for (let E = 0, f = l.count / 3; E < f; E++) {
|
|
440
440
|
const p = 3 * E, b = t[0].fromBufferAttribute(l, p + 0), d = t[1].fromBufferAttribute(l, p + 1), m = t[2].fromBufferAttribute(l, p + 2);
|
|
441
441
|
i.subVectors(m, d), s.subVectors(b, d), o.crossVectors(i, s).normalize();
|
|
442
442
|
for (let w = 0; w < 3; w++) {
|
|
@@ -451,23 +451,23 @@ function ur(a, e = Math.PI / 3) {
|
|
|
451
451
|
}
|
|
452
452
|
return g.setAttribute("normal", B), g;
|
|
453
453
|
}
|
|
454
|
-
const
|
|
454
|
+
const Ll = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
455
455
|
__proto__: null,
|
|
456
|
-
computeMikkTSpaceTangents:
|
|
457
|
-
computeMorphedAttributes:
|
|
458
|
-
deepCloneAttribute:
|
|
456
|
+
computeMikkTSpaceTangents: ir,
|
|
457
|
+
computeMorphedAttributes: lr,
|
|
458
|
+
deepCloneAttribute: or,
|
|
459
459
|
deinterleaveAttribute: Bn,
|
|
460
|
-
deinterleaveGeometry:
|
|
461
|
-
estimateBytesUsed:
|
|
462
|
-
interleaveAttributes:
|
|
460
|
+
deinterleaveGeometry: rr,
|
|
461
|
+
estimateBytesUsed: cr,
|
|
462
|
+
interleaveAttributes: ar,
|
|
463
463
|
mergeAttributes: ai,
|
|
464
|
-
mergeGeometries:
|
|
465
|
-
mergeGroups:
|
|
466
|
-
mergeVertices:
|
|
467
|
-
toCreasedNormals:
|
|
464
|
+
mergeGeometries: sr,
|
|
465
|
+
mergeGroups: hr,
|
|
466
|
+
mergeVertices: gr,
|
|
467
|
+
toCreasedNormals: Ir,
|
|
468
468
|
toTrianglesDrawMode: ri
|
|
469
469
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
470
|
-
class
|
|
470
|
+
class ur extends NA {
|
|
471
471
|
constructor(e) {
|
|
472
472
|
super(e), this.dracoLoader = null, this.ktx2Loader = null, this.meshoptDecoder = null, this.pluginCallbacks = [], this.register(function(A) {
|
|
473
473
|
return new pr(A);
|
|
@@ -488,7 +488,7 @@ class no extends NA {
|
|
|
488
488
|
}), this.register(function(A) {
|
|
489
489
|
return new yr(A);
|
|
490
490
|
}), this.register(function(A) {
|
|
491
|
-
return new
|
|
491
|
+
return new fr(A);
|
|
492
492
|
}), this.register(function(A) {
|
|
493
493
|
return new Dr(A);
|
|
494
494
|
}), this.register(function(A) {
|
|
@@ -518,7 +518,7 @@ class no extends NA {
|
|
|
518
518
|
this.manager.itemStart(e);
|
|
519
519
|
const o = function(c) {
|
|
520
520
|
t ? t(c) : console.error(c), i.manager.itemError(e), i.manager.itemEnd(e);
|
|
521
|
-
}, r = new
|
|
521
|
+
}, r = new fA(this.manager);
|
|
522
522
|
r.setPath(this.path), r.setResponseType("arraybuffer"), r.setRequestHeader(this.requestHeader), r.setWithCredentials(this.withCredentials), r.load(e, function(c) {
|
|
523
523
|
try {
|
|
524
524
|
i.parse(c, s, function(g) {
|
|
@@ -555,7 +555,7 @@ class no extends NA {
|
|
|
555
555
|
return;
|
|
556
556
|
}
|
|
557
557
|
else if (e instanceof ArrayBuffer)
|
|
558
|
-
if (c.decode(new Uint8Array(e, 0, 4)) ===
|
|
558
|
+
if (c.decode(new Uint8Array(e, 0, 4)) === no) {
|
|
559
559
|
try {
|
|
560
560
|
o[ce.KHR_BINARY_GLTF] = new kr(e);
|
|
561
561
|
} catch (h) {
|
|
@@ -600,7 +600,7 @@ class no extends NA {
|
|
|
600
600
|
const h = i.extensionsUsed[l], u = i.extensionsRequired || [];
|
|
601
601
|
switch (h) {
|
|
602
602
|
case ce.KHR_MATERIALS_UNLIT:
|
|
603
|
-
o[h] = new
|
|
603
|
+
o[h] = new Cr();
|
|
604
604
|
break;
|
|
605
605
|
case ce.KHR_DRACO_MESH_COMPRESSION:
|
|
606
606
|
o[h] = new vr(i, this.dracoLoader);
|
|
@@ -711,7 +711,7 @@ class Er {
|
|
|
711
711
|
});
|
|
712
712
|
}
|
|
713
713
|
}
|
|
714
|
-
let
|
|
714
|
+
let Cr = class {
|
|
715
715
|
constructor() {
|
|
716
716
|
this.name = ce.KHR_MATERIALS_UNLIT;
|
|
717
717
|
}
|
|
@@ -731,7 +731,7 @@ let fr = class {
|
|
|
731
731
|
}
|
|
732
732
|
return Promise.all(t);
|
|
733
733
|
}
|
|
734
|
-
},
|
|
734
|
+
}, fr = class {
|
|
735
735
|
constructor(e) {
|
|
736
736
|
this.parser = e, this.name = ce.KHR_MATERIALS_EMISSIVE_STRENGTH;
|
|
737
737
|
}
|
|
@@ -1028,9 +1028,9 @@ let Gr = class {
|
|
|
1028
1028
|
return o.length < 1 ? null : (o.push(this.parser.createNodeMesh(e)), Promise.all(o).then((c) => {
|
|
1029
1029
|
const g = c.pop(), l = g.isGroup ? g.children : [g], h = c[0].count, u = [];
|
|
1030
1030
|
for (const B of l) {
|
|
1031
|
-
const E = new ue(),
|
|
1031
|
+
const E = new ue(), f = new L(), p = new Se(), b = new L(1, 1, 1), d = new Sa(B.geometry, B.material, h);
|
|
1032
1032
|
for (let m = 0; m < h; m++)
|
|
1033
|
-
r.TRANSLATION &&
|
|
1033
|
+
r.TRANSLATION && f.fromBufferAttribute(r.TRANSLATION, m), r.ROTATION && p.fromBufferAttribute(r.ROTATION, m), r.SCALE && b.fromBufferAttribute(r.SCALE, m), d.setMatrixAt(m, E.compose(f, p, b));
|
|
1034
1034
|
for (const m in r)
|
|
1035
1035
|
if (m === "_COLOR_0") {
|
|
1036
1036
|
const w = r[m];
|
|
@@ -1042,30 +1042,30 @@ let Gr = class {
|
|
|
1042
1042
|
}));
|
|
1043
1043
|
}
|
|
1044
1044
|
};
|
|
1045
|
-
const
|
|
1045
|
+
const no = "glTF", ft = 12, qi = { JSON: 1313821514, BIN: 5130562 };
|
|
1046
1046
|
class kr {
|
|
1047
1047
|
constructor(e) {
|
|
1048
1048
|
this.name = ce.KHR_BINARY_GLTF, this.content = null, this.body = null;
|
|
1049
|
-
const A = new DataView(e, 0,
|
|
1049
|
+
const A = new DataView(e, 0, ft), n = new TextDecoder();
|
|
1050
1050
|
if (this.header = {
|
|
1051
1051
|
magic: n.decode(new Uint8Array(e.slice(0, 4))),
|
|
1052
1052
|
version: A.getUint32(4, !0),
|
|
1053
1053
|
length: A.getUint32(8, !0)
|
|
1054
|
-
}, this.header.magic !==
|
|
1054
|
+
}, this.header.magic !== no)
|
|
1055
1055
|
throw new Error("THREE.GLTFLoader: Unsupported glTF-Binary header.");
|
|
1056
1056
|
if (this.header.version < 2)
|
|
1057
1057
|
throw new Error("THREE.GLTFLoader: Legacy binary file detected.");
|
|
1058
|
-
const t = this.header.length -
|
|
1058
|
+
const t = this.header.length - ft, i = new DataView(e, ft);
|
|
1059
1059
|
let s = 0;
|
|
1060
1060
|
for (; s < t; ) {
|
|
1061
1061
|
const o = i.getUint32(s, !0);
|
|
1062
1062
|
s += 4;
|
|
1063
1063
|
const r = i.getUint32(s, !0);
|
|
1064
1064
|
if (s += 4, r === qi.JSON) {
|
|
1065
|
-
const c = new Uint8Array(e,
|
|
1065
|
+
const c = new Uint8Array(e, ft + s, o);
|
|
1066
1066
|
this.content = n.decode(c);
|
|
1067
1067
|
} else if (r === qi.BIN) {
|
|
1068
|
-
const c =
|
|
1068
|
+
const c = ft + s;
|
|
1069
1069
|
this.body = e.slice(c, c + o);
|
|
1070
1070
|
}
|
|
1071
1071
|
s += o;
|
|
@@ -1097,8 +1097,8 @@ class vr {
|
|
|
1097
1097
|
return new Promise(function(l, h) {
|
|
1098
1098
|
t.decodeDracoFile(g, function(u) {
|
|
1099
1099
|
for (const B in u.attributes) {
|
|
1100
|
-
const E = u.attributes[B],
|
|
1101
|
-
|
|
1100
|
+
const E = u.attributes[B], f = r[B];
|
|
1101
|
+
f !== void 0 && (E.normalized = f);
|
|
1102
1102
|
}
|
|
1103
1103
|
l(u);
|
|
1104
1104
|
}, o, c, AA, h);
|
|
@@ -1119,7 +1119,7 @@ class Nr {
|
|
|
1119
1119
|
this.name = ce.KHR_MESH_QUANTIZATION;
|
|
1120
1120
|
}
|
|
1121
1121
|
}
|
|
1122
|
-
class
|
|
1122
|
+
class io extends Ra {
|
|
1123
1123
|
constructor(e, A, n, t) {
|
|
1124
1124
|
super(e, A, n, t);
|
|
1125
1125
|
}
|
|
@@ -1130,16 +1130,16 @@ class so extends Ma {
|
|
|
1130
1130
|
return A;
|
|
1131
1131
|
}
|
|
1132
1132
|
interpolate_(e, A, n, t) {
|
|
1133
|
-
const i = this.resultBuffer, s = this.sampleValues, o = this.valueSize, r = o * 2, c = o * 3, g = t - A, l = (n - A) / g, h = l * l, u = h * l, B = e * c, E = B - c,
|
|
1133
|
+
const i = this.resultBuffer, s = this.sampleValues, o = this.valueSize, r = o * 2, c = o * 3, g = t - A, l = (n - A) / g, h = l * l, u = h * l, B = e * c, E = B - c, f = -2 * u + 3 * h, p = u - h, b = 1 - f, d = p - h + l;
|
|
1134
1134
|
for (let m = 0; m !== o; m++) {
|
|
1135
1135
|
const w = s[E + m + o], R = s[E + m + r] * g, F = s[B + m + o], y = s[B + m] * g;
|
|
1136
|
-
i[m] = b * w + d * R +
|
|
1136
|
+
i[m] = b * w + d * R + f * F + p * y;
|
|
1137
1137
|
}
|
|
1138
1138
|
return i;
|
|
1139
1139
|
}
|
|
1140
1140
|
}
|
|
1141
1141
|
const Ur = new Se();
|
|
1142
|
-
class _r extends
|
|
1142
|
+
class _r extends io {
|
|
1143
1143
|
interpolate_(e, A, n, t) {
|
|
1144
1144
|
const i = super.interpolate_(e, A, n, t);
|
|
1145
1145
|
return Ur.fromArray(i).normalize().toArray(i), i;
|
|
@@ -1313,7 +1313,7 @@ class jr {
|
|
|
1313
1313
|
const r = o.match(/Version\/(\d+)/);
|
|
1314
1314
|
t = n && r ? parseInt(r[1], 10) : -1, i = o.indexOf("Firefox") > -1, s = i ? o.match(/Firefox\/([0-9]+)\./)[1] : -1;
|
|
1315
1315
|
}
|
|
1316
|
-
typeof createImageBitmap > "u" || n && t < 17 || i && s < 98 ? this.textureLoader = new di(this.options.manager) : this.textureLoader = new
|
|
1316
|
+
typeof createImageBitmap > "u" || n && t < 17 || i && s < 98 ? this.textureLoader = new di(this.options.manager) : this.textureLoader = new xa(this.options.manager), this.textureLoader.setCrossOrigin(this.options.crossOrigin), this.textureLoader.setRequestHeader(this.options.requestHeader), this.fileLoader = new fA(this.options.manager), this.fileLoader.setResponseType("arraybuffer"), this.options.crossOrigin === "use-credentials" && this.fileLoader.setWithCredentials(!0);
|
|
1317
1317
|
}
|
|
1318
1318
|
setExtensions(e) {
|
|
1319
1319
|
this.extensions = e;
|
|
@@ -1535,23 +1535,23 @@ class jr {
|
|
|
1535
1535
|
const i = [];
|
|
1536
1536
|
return t.bufferView !== void 0 ? i.push(this.getDependency("bufferView", t.bufferView)) : i.push(null), t.sparse !== void 0 && (i.push(this.getDependency("bufferView", t.sparse.indices.bufferView)), i.push(this.getDependency("bufferView", t.sparse.values.bufferView))), Promise.all(i).then(function(s) {
|
|
1537
1537
|
const o = s[0], r = mn[t.type], c = ut[t.componentType], g = c.BYTES_PER_ELEMENT, l = g * r, h = t.byteOffset || 0, u = t.bufferView !== void 0 ? n.bufferViews[t.bufferView].byteStride : void 0, B = t.normalized === !0;
|
|
1538
|
-
let E,
|
|
1538
|
+
let E, f;
|
|
1539
1539
|
if (u && u !== l) {
|
|
1540
1540
|
const p = Math.floor(h / u), b = "InterleavedBuffer:" + t.bufferView + ":" + t.componentType + ":" + p + ":" + t.count;
|
|
1541
1541
|
let d = A.cache.get(b);
|
|
1542
|
-
d || (E = new c(o, p * u, t.count * u / g), d = new vs(E, u / g), A.cache.add(b, d)),
|
|
1542
|
+
d || (E = new c(o, p * u, t.count * u / g), d = new vs(E, u / g), A.cache.add(b, d)), f = new JA(d, r, h % u / g, B);
|
|
1543
1543
|
} else
|
|
1544
|
-
o === null ? E = new c(t.count * r) : E = new c(o, h, t.count * r),
|
|
1544
|
+
o === null ? E = new c(t.count * r) : E = new c(o, h, t.count * r), f = new Ne(E, r, B);
|
|
1545
1545
|
if (t.sparse !== void 0) {
|
|
1546
1546
|
const p = mn.SCALAR, b = ut[t.sparse.indices.componentType], d = t.sparse.indices.byteOffset || 0, m = t.sparse.values.byteOffset || 0, w = new b(s[1], d, t.sparse.count * p), R = new c(s[2], m, t.sparse.count * r);
|
|
1547
|
-
o !== null && (
|
|
1547
|
+
o !== null && (f = new Ne(f.array.slice(), f.itemSize, f.normalized)), f.normalized = !1;
|
|
1548
1548
|
for (let F = 0, y = w.length; F < y; F++) {
|
|
1549
1549
|
const x = w[F];
|
|
1550
|
-
if (
|
|
1550
|
+
if (f.setX(x, R[F * r]), r >= 2 && f.setY(x, R[F * r + 1]), r >= 3 && f.setZ(x, R[F * r + 2]), r >= 4 && f.setW(x, R[F * r + 3]), r >= 5) throw new Error("THREE.GLTFLoader: Unsupported itemSize in sparse BufferAttribute.");
|
|
1551
1551
|
}
|
|
1552
|
-
|
|
1552
|
+
f.normalized = B;
|
|
1553
1553
|
}
|
|
1554
|
-
return
|
|
1554
|
+
return f;
|
|
1555
1555
|
});
|
|
1556
1556
|
}
|
|
1557
1557
|
/**
|
|
@@ -1599,8 +1599,8 @@ class jr {
|
|
|
1599
1599
|
return new Promise(function(h, u) {
|
|
1600
1600
|
let B = h;
|
|
1601
1601
|
A.isImageBitmapLoader === !0 && (B = function(E) {
|
|
1602
|
-
const
|
|
1603
|
-
|
|
1602
|
+
const f = new Wn(E);
|
|
1603
|
+
f.needsUpdate = !0, h(f);
|
|
1604
1604
|
}), A.load(At.resolveURL(l, i.path), B, void 0, u);
|
|
1605
1605
|
});
|
|
1606
1606
|
}).then(function(l) {
|
|
@@ -1748,22 +1748,22 @@ class jr {
|
|
|
1748
1748
|
return o.push(A.loadGeometries(s)), Promise.all(o).then(function(r) {
|
|
1749
1749
|
const c = r.slice(0, r.length - 1), g = r[r.length - 1], l = [];
|
|
1750
1750
|
for (let u = 0, B = g.length; u < B; u++) {
|
|
1751
|
-
const E = g[u],
|
|
1751
|
+
const E = g[u], f = s[u];
|
|
1752
1752
|
let p;
|
|
1753
1753
|
const b = c[u];
|
|
1754
|
-
if (
|
|
1755
|
-
p = i.isSkinnedMesh === !0 ? new Hs(E, b) : new Y(E, b), p.isSkinnedMesh === !0 && p.normalizeSkinWeights(),
|
|
1756
|
-
else if (
|
|
1754
|
+
if (f.mode === IA.TRIANGLES || f.mode === IA.TRIANGLE_STRIP || f.mode === IA.TRIANGLE_FAN || f.mode === void 0)
|
|
1755
|
+
p = i.isSkinnedMesh === !0 ? new Hs(E, b) : new Y(E, b), p.isSkinnedMesh === !0 && p.normalizeSkinWeights(), f.mode === IA.TRIANGLE_STRIP ? p.geometry = ri(p.geometry, ks) : f.mode === IA.TRIANGLE_FAN && (p.geometry = ri(p.geometry, zn));
|
|
1756
|
+
else if (f.mode === IA.LINES)
|
|
1757
1757
|
p = new In(E, b);
|
|
1758
|
-
else if (
|
|
1758
|
+
else if (f.mode === IA.LINE_STRIP)
|
|
1759
1759
|
p = new EA(E, b);
|
|
1760
|
-
else if (
|
|
1761
|
-
p = new
|
|
1762
|
-
else if (
|
|
1760
|
+
else if (f.mode === IA.LINE_LOOP)
|
|
1761
|
+
p = new Fa(E, b);
|
|
1762
|
+
else if (f.mode === IA.POINTS)
|
|
1763
1763
|
p = new nn(E, b);
|
|
1764
1764
|
else
|
|
1765
|
-
throw new Error("THREE.GLTFLoader: Primitive mode unsupported: " +
|
|
1766
|
-
Object.keys(p.geometry.morphAttributes).length > 0 && qr(p, i), p.name = A.createUniqueName(i.name || "mesh_" + e), kA(p, i),
|
|
1765
|
+
throw new Error("THREE.GLTFLoader: Primitive mode unsupported: " + f.mode);
|
|
1766
|
+
Object.keys(p.geometry.morphAttributes).length > 0 && qr(p, i), p.name = A.createUniqueName(i.name || "mesh_" + e), kA(p, i), f.extensions && WA(t, p, f), A.assignFinalMaterial(p), l.push(p);
|
|
1767
1767
|
}
|
|
1768
1768
|
for (let u = 0, B = l.length; u < B; u++)
|
|
1769
1769
|
A.associations.set(l[u], {
|
|
@@ -1825,8 +1825,8 @@ class jr {
|
|
|
1825
1825
|
const A = this.json, n = this, t = A.animations[e], i = t.name ? t.name : "animation_" + e, s = [], o = [], r = [], c = [], g = [];
|
|
1826
1826
|
let l = 0, h = t.channels.length;
|
|
1827
1827
|
for (l = 0, h = t.channels.length; l < h; l++) {
|
|
1828
|
-
const u = t.channels[l], B = t.samplers[u.sampler], E = u.target,
|
|
1829
|
-
E.node !== void 0 && (s.push(this.getDependency("node",
|
|
1828
|
+
const u = t.channels[l], B = t.samplers[u.sampler], E = u.target, f = E.node, p = t.parameters !== void 0 ? t.parameters[B.input] : B.input, b = t.parameters !== void 0 ? t.parameters[B.output] : B.output;
|
|
1829
|
+
E.node !== void 0 && (s.push(this.getDependency("node", f)), o.push(this.getDependency("accessor", p)), r.push(this.getDependency("accessor", b)), c.push(B), g.push(E));
|
|
1830
1830
|
}
|
|
1831
1831
|
return Promise.all([
|
|
1832
1832
|
Promise.all(s),
|
|
@@ -1835,9 +1835,9 @@ class jr {
|
|
|
1835
1835
|
Promise.all(c),
|
|
1836
1836
|
Promise.all(g)
|
|
1837
1837
|
]).then(function(u) {
|
|
1838
|
-
const B = u[0], E = u[1],
|
|
1838
|
+
const B = u[0], E = u[1], f = u[2], p = u[3], b = u[4], d = [];
|
|
1839
1839
|
for (l = 0, h = B.length; l < h; l++) {
|
|
1840
|
-
const m = B[l], w = E[l], R =
|
|
1840
|
+
const m = B[l], w = E[l], R = f[l], F = p[l], y = b[l];
|
|
1841
1841
|
if (m === void 0) continue;
|
|
1842
1842
|
m.updateMatrix && m.updateMatrix();
|
|
1843
1843
|
const x = n._createAnimationTracks(m, w, R, F, y);
|
|
@@ -1982,13 +1982,13 @@ class jr {
|
|
|
1982
1982
|
}
|
|
1983
1983
|
_createCubicSplineTrackInterpolant(e) {
|
|
1984
1984
|
e.createInterpolant = function(n) {
|
|
1985
|
-
const t = this instanceof ei ? _r :
|
|
1985
|
+
const t = this instanceof ei ? _r : io;
|
|
1986
1986
|
return new t(this.times, this.values, this.getValueSize() / 3, n);
|
|
1987
1987
|
}, e.createInterpolant.isInterpolantFactoryMethodGLTFCubicSpline = !0;
|
|
1988
1988
|
}
|
|
1989
1989
|
}
|
|
1990
1990
|
function zr(a, e, A) {
|
|
1991
|
-
const n = e.attributes, t = new
|
|
1991
|
+
const n = e.attributes, t = new Cn();
|
|
1992
1992
|
if (n.POSITION !== void 0) {
|
|
1993
1993
|
const o = A.json.accessors[n.POSITION], r = o.min, c = o.max;
|
|
1994
1994
|
if (r !== void 0 && c !== void 0) {
|
|
@@ -2049,7 +2049,7 @@ function Ji(a, e, A) {
|
|
|
2049
2049
|
return e.targets !== void 0 ? Or(a, e.targets, A) : a;
|
|
2050
2050
|
});
|
|
2051
2051
|
}
|
|
2052
|
-
var
|
|
2052
|
+
var Xl = (function() {
|
|
2053
2053
|
var a = "b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q;iekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:P8Yqdbk;3sezu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhDcbhqinaqae9pmeaDaeaq9RaqaDfae6Egkcsfgocl4cifcd4hxdndndndnaoc9WGgmTmbcbhPcehsawcjdfhzalhHinaraH9Rax6midnaraHaxfgl9RcK6mbczhoinawcj;cbfaogifgoc9WfhOdndndndndnaHaic9WfgAco4fRbbaAci4coG4ciGPlbedibkaO9cb83ibaOcwf9cb83ibxikaOalRblalRbbgAco4gCaCciSgCE86bbaocGfalclfaCfgORbbaAcl4ciGgCaCciSgCE86bbaocVfaOaCfgORbbaAcd4ciGgCaCciSgCE86bbaoc7faOaCfgORbbaAciGgAaAciSgAE86bbaoctfaOaAfgARbbalRbegOco4gCaCciSgCE86bbaoc91faAaCfgARbbaOcl4ciGgCaCciSgCE86bbaoc4faAaCfgARbbaOcd4ciGgCaCciSgCE86bbaoc93faAaCfgARbbaOciGgOaOciSgOE86bbaoc94faAaOfgARbbalRbdgOco4gCaCciSgCE86bbaoc95faAaCfgARbbaOcl4ciGgCaCciSgCE86bbaoc96faAaCfgARbbaOcd4ciGgCaCciSgCE86bbaoc97faAaCfgARbbaOciGgOaOciSgOE86bbaoc98faAaOfgORbbalRbiglco4gAaAciSgAE86bbaoc99faOaAfgORbbalcl4ciGgAaAciSgAE86bbaoc9:faOaAfgORbbalcd4ciGgAaAciSgAE86bbaocufaOaAfgoRbbalciGglalciSglE86bbaoalfhlxdkaOalRbwalRbbgAcl4gCaCcsSgCE86bbaocGfalcwfaCfgORbbaAcsGgAaAcsSgAE86bbaocVfaOaAfgORbbalRbegAcl4gCaCcsSgCE86bbaoc7faOaCfgORbbaAcsGgAaAcsSgAE86bbaoctfaOaAfgORbbalRbdgAcl4gCaCcsSgCE86bbaoc91faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc4faOaAfgORbbalRbigAcl4gCaCcsSgCE86bbaoc93faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc94faOaAfgORbbalRblgAcl4gCaCcsSgCE86bbaoc95faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc96faOaAfgORbbalRbvgAcl4gCaCcsSgCE86bbaoc97faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc98faOaAfgORbbalRbogAcl4gCaCcsSgCE86bbaoc99faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc9:faOaAfgORbbalRbrglcl4gAaAcsSgAE86bbaocufaOaAfgoRbbalcsGglalcsSglE86bbaoalfhlxekaOal8Pbb83bbaOcwfalcwf8Pbb83bbalczfhlkdnaiam9pmbaiczfhoaral9RcL0mekkaiam6mialTmidnakTmbawaPfRbbhOcbhoazhiinaiawcj;cbfaofRbbgAce4cbaAceG9R7aOfgO86bbaiadfhiaocefgoak9hmbkkazcefhzaPcefgPad6hsalhHaPad9hmexvkkcbhlasceGmdxikalaxad2fhCdnakTmbcbhHcehsawcjdfhminaral9Rax6mialTmdalaxfhlawaHfRbbhOcbhoamhiinaiawcj;cbfaofRbbgAce4cbaAceG9R7aOfgO86bbaiadfhiaocefgoak9hmbkamcefhmaHcefgHad6hsaHad9hmbkaChlxikcbhocehsinaral9Rax6mdalTmealaxfhlaocefgoad6hsadao9hmbkaChlxdkcbhlasceGTmekc9:hoxikabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqalmbkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;ebf8Kjjjjbaok;yzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhDcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgrc;Ve0mbavc;abfalarcl4cu7fcsGcitfgPydlhsaPydbhzdnarcsGgPak9pmbavaiarcu7fcsGcdtfydbaxaPEhraPThPdndnadcd9hmbabaDcetfgHaz87ebaHcdfas87ebaHclfar87ebxekabaDcdtfgHazBdbaHclfasBdbaHcwfarBdbkaxaPfhxavc;abfalcitfgHarBdbaHasBdlavaicdtfarBdbavc;abfalcefcsGglcitfgHazBdbaHarBdlaiaPfhialcefhlxdkdndnaPcsSmbamaPfaPc987fcefhmxekaocefhrao8SbbgPcFeGhHdndnaPcu9mmbarhoxekaocvfhoaHcFbGhHcrhPdninar8SbbgOcFbGaPtaHVhHaOcu9kmearcefhraPcrfgPc8J9hmbxdkkarcefhokaHce4cbaHceG9R7amfhmkdndnadcd9hmbabaDcetfgraz87ebarcdfas87ebarclfam87ebxekabaDcdtfgrazBdbarclfasBdbarcwfamBdbkavc;abfalcitfgramBdbarasBdlavaicdtfamBdbavc;abfalcefcsGglcitfgrazBdbaramBdlaicefhialcefhlxekdnarcpe0mbaxcefgOavaiaqarcsGfRbbgPcl49RcsGcdtfydbaPcz6gHEhravaiaP9RcsGcdtfydbaOaHfgsaPcsGgOEhPaOThOdndnadcd9hmbabaDcetfgzax87ebazcdfar87ebazclfaP87ebxekabaDcdtfgzaxBdbazclfarBdbazcwfaPBdbkavaicdtfaxBdbavc;abfalcitfgzarBdbazaxBdlavaicefgicsGcdtfarBdbavc;abfalcefcsGcitfgzaPBdbazarBdlavaiaHfcsGgicdtfaPBdbavc;abfalcdfcsGglcitfgraxBdbaraPBdlalcefhlaiaOfhiasaOfhxxekaxcbaoRbbgzEgAarc;:eSgrfhsazcsGhCazcl4hXdndnazcs0mbascefhOxekashOavaiaX9RcsGcdtfydbhskdndnaCmbaOcefhxxekaOhxavaiaz9RcsGcdtfydbhOkdndnarTmbaocefhrxekaocdfhrao8SbegHcFeGhPdnaHcu9kmbaocofhAaPcFbGhPcrhodninar8SbbgHcFbGaotaPVhPaHcu9kmearcefhraocrfgoc8J9hmbkaAhrxekarcefhrkaPce4cbaPceG9R7amfgmhAkdndnaXcsSmbarhPxekarcefhPar8SbbgocFeGhHdnaocu9kmbarcvfhsaHcFbGhHcrhodninaP8SbbgrcFbGaotaHVhHarcu9kmeaPcefhPaocrfgoc8J9hmbkashPxekaPcefhPkaHce4cbaHceG9R7amfgmhskdndnaCcsSmbaPhoxekaPcefhoaP8SbbgrcFeGhHdnarcu9kmbaPcvfhOaHcFbGhHcrhrdninao8SbbgPcFbGartaHVhHaPcu9kmeaocefhoarcrfgrc8J9hmbkaOhoxekaocefhokaHce4cbaHceG9R7amfgmhOkdndnadcd9hmbabaDcetfgraA87ebarcdfas87ebarclfaO87ebxekabaDcdtfgraABdbarclfasBdbarcwfaOBdbkavc;abfalcitfgrasBdbaraABdlavaicdtfaABdbavc;abfalcefcsGcitfgraOBdbarasBdlavaicefgicsGcdtfasBdbavc;abfalcdfcsGcitfgraABdbaraOBdlavaiazcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiaDcifgDae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:llevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok: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:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabavcefciGaiVcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:Ohkxekcjjjj94hkkabavcdfciGaiVcetfak87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:Ohqxekcjjjj94hqkabavcufciGaiVcetfaq87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohqxekcjjjj94hqkabavciGaiVcetfaq87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2geTmbinababydbgdcwtcw91:Yadce91cjjj;8ifcjjj98G::NUdbabclfhbaecufgembkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaiczfhiaeczfheadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklz9Kbb", e = "b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q;Aekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;t9tqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk;h8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhwcbhDinaDae9pmeawaeaD9RaDawfae6Egqcsfgoc9WGgkci2hxakcethmaocl4cifcd4hPabaDad2fhscbhzdnincehHalhOcbhAdninaraO9RaP6miavcj;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:yjjbfRbbfhlxekaXalpbbbpklbalczfhlkaocdfhoaiczfgiak6mbkkalTmbaAci6hHalhOaAcefgohAaoclSmdxekkcbhlaHceGmdkdnakTmbavcjdfazfhiavazfpbdbhYcbhXinaiavcj;cbfaXfgopblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLaoakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEaoamfpblbg3cep9Ta3aQp9op9Hp9rg3aoaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfhiaXczfgXak6mbkkazclfgzad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfhDc9:hoalmexikkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk;uzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhDcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgrc;Ve0mbavc;abfalarcl4cu7fcsGcitfgPydlhsaPydbhzdnarcsGgPak9pmbavaiarcu7fcsGcdtfydbaxaPEhraPThPdndnadcd9hmbabaDcetfgHaz87ebaHcdfas87ebaHclfar87ebxekabaDcdtfgHazBdbaHclfasBdbaHcwfarBdbkaxaPfhxavc;abfalcitfgHarBdbaHasBdlavaicdtfarBdbavc;abfalcefcsGglcitfgHazBdbaHarBdlaiaPfhialcefhlxdkdndnaPcsSmbamaPfaPc987fcefhmxekaocefhrao8SbbgPcFeGhHdndnaPcu9mmbarhoxekaocvfhoaHcFbGhHcrhPdninar8SbbgOcFbGaPtaHVhHaOcu9kmearcefhraPcrfgPc8J9hmbxdkkarcefhokaHce4cbaHceG9R7amfhmkdndnadcd9hmbabaDcetfgraz87ebarcdfas87ebarclfam87ebxekabaDcdtfgrazBdbarclfasBdbarcwfamBdbkavc;abfalcitfgramBdbarasBdlavaicdtfamBdbavc;abfalcefcsGglcitfgrazBdbaramBdlaicefhialcefhlxekdnarcpe0mbaxcefgOavaiaqarcsGfRbbgPcl49RcsGcdtfydbaPcz6gHEhravaiaP9RcsGcdtfydbaOaHfgsaPcsGgOEhPaOThOdndnadcd9hmbabaDcetfgzax87ebazcdfar87ebazclfaP87ebxekabaDcdtfgzaxBdbazclfarBdbazcwfaPBdbkavaicdtfaxBdbavc;abfalcitfgzarBdbazaxBdlavaicefgicsGcdtfarBdbavc;abfalcefcsGcitfgzaPBdbazarBdlavaiaHfcsGgicdtfaPBdbavc;abfalcdfcsGglcitfgraxBdbaraPBdlalcefhlaiaOfhiasaOfhxxekaxcbaoRbbgzEgAarc;:eSgrfhsazcsGhCazcl4hXdndnazcs0mbascefhOxekashOavaiaX9RcsGcdtfydbhskdndnaCmbaOcefhxxekaOhxavaiaz9RcsGcdtfydbhOkdndnarTmbaocefhrxekaocdfhrao8SbegHcFeGhPdnaHcu9kmbaocofhAaPcFbGhPcrhodninar8SbbgHcFbGaotaPVhPaHcu9kmearcefhraocrfgoc8J9hmbkaAhrxekarcefhrkaPce4cbaPceG9R7amfgmhAkdndnaXcsSmbarhPxekarcefhPar8SbbgocFeGhHdnaocu9kmbarcvfhsaHcFbGhHcrhodninaP8SbbgrcFbGaotaHVhHarcu9kmeaPcefhPaocrfgoc8J9hmbkashPxekaPcefhPkaHce4cbaHceG9R7amfgmhskdndnaCcsSmbaPhoxekaPcefhoaP8SbbgrcFeGhHdnarcu9kmbaPcvfhOaHcFbGhHcrhrdninao8SbbgPcFbGartaHVhHaPcu9kmeaocefhoarcrfgrc8J9hmbkaOhoxekaocefhokaHce4cbaHceG9R7amfgmhOkdndnadcd9hmbabaDcetfgraA87ebarcdfas87ebarclfaO87ebxekabaDcdtfgraABdbarclfasBdbarcwfaOBdbkavc;abfalcitfgrasBdbaraABdlavaicdtfaABdbavc;abfalcefcsGcitfgraOBdbarasBdlavaicefgicsGcdtfasBdbavc;abfalcdfcsGcitfgraABdbaraOBdlavaiazcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiaDcifgDae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:llevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:EPliuo97eue978Jjjjjbca9Rhidndnadcl9hmbdnaec98GglTmbcbhvabhdinadadpbbbgocKp: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:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalae9pmeaiaeciGgvcdtgdVcbczad9R;8kbaiabalcdtfglad;8qbbdnavTmbaiaipblbgocKp: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:RepxbbFbbbFbbbFbbbFbp9op9qpklbkalaiad;8qbbskdnaec98GgxTmbcbhvabhdinadczfglalpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;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;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oawaopmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgvax6mbkkaxae9pmbaiaeciGgvcitgdfcbcaad9R;8kbaiabaxcitfglad;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;ab9Rhidnadcd4ae2glc98GgvTmbcbhdabheinaeaepbbbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepkbbaeczfheadclfgdav6mbkkdnaval9pmbaialciGgdcdtgeVcbc;abae9R;8kbaiabavcdtfgvae;8qbbdnadTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepklbkavaiae;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz9Tbb", A = 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]), n = 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]);
|
|
2054
2054
|
if (typeof WebAssembly != "object")
|
|
2055
2055
|
return {
|
|
@@ -2096,7 +2096,7 @@ var Wl = (function() {
|
|
|
2096
2096
|
}, b;
|
|
2097
2097
|
}
|
|
2098
2098
|
function B(p) {
|
|
2099
|
-
for (var b = "var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(o(t)) + "]), {}).then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });self.onmessage = workerProcess;" + r.toString() +
|
|
2099
|
+
for (var b = "var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(o(t)) + "]), {}).then(function(result) { instance = result.instance; instance.exports.__wasm_call_ctors(); });self.onmessage = workerProcess;" + r.toString() + f.toString(), d = new Blob([b], { type: "text/javascript" }), m = URL.createObjectURL(d), w = 0; w < p; ++w)
|
|
2100
2100
|
l[w] = u(m);
|
|
2101
2101
|
URL.revokeObjectURL(m);
|
|
2102
2102
|
}
|
|
@@ -2108,7 +2108,7 @@ var Wl = (function() {
|
|
|
2108
2108
|
R.pending += p, R.requests[_] = { resolve: y, reject: x }, R.object.postMessage({ id: _, count: p, size: b, source: N, mode: m, filter: w }, [N.buffer]);
|
|
2109
2109
|
});
|
|
2110
2110
|
}
|
|
2111
|
-
function
|
|
2111
|
+
function f(p) {
|
|
2112
2112
|
s.then(function() {
|
|
2113
2113
|
var b = p.data;
|
|
2114
2114
|
try {
|
|
@@ -2146,7 +2146,7 @@ var Wl = (function() {
|
|
|
2146
2146
|
};
|
|
2147
2147
|
})();
|
|
2148
2148
|
const yn = /* @__PURE__ */ new WeakMap();
|
|
2149
|
-
class
|
|
2149
|
+
class Wl extends NA {
|
|
2150
2150
|
constructor(e) {
|
|
2151
2151
|
super(e), this.decoderPath = "", this.decoderConfig = {}, this.decoderBinary = null, this.decoderPending = null, this.workerLimit = 4, this.workerPool = [], this.workerNextTaskID = 1, this.workerSourceURL = "", this.defaultAttributeIDs = {
|
|
2152
2152
|
position: "POSITION",
|
|
@@ -2170,7 +2170,7 @@ class Zl extends NA {
|
|
|
2170
2170
|
return this.workerLimit = e, this;
|
|
2171
2171
|
}
|
|
2172
2172
|
load(e, A, n, t) {
|
|
2173
|
-
const i = new
|
|
2173
|
+
const i = new fA(this.manager);
|
|
2174
2174
|
i.setPath(this.path), i.setResponseType("arraybuffer"), i.setRequestHeader(this.requestHeader), i.setWithCredentials(this.withCredentials), i.load(e, (s) => {
|
|
2175
2175
|
this.parse(s, A, t);
|
|
2176
2176
|
}, n, t);
|
|
@@ -2227,7 +2227,7 @@ class Zl extends NA {
|
|
|
2227
2227
|
n.fromBufferAttribute(e, t), $e.toWorkingColorSpace(n, Be), e.setXYZ(t, n.r, n.g, n.b);
|
|
2228
2228
|
}
|
|
2229
2229
|
_loadLibrary(e, A) {
|
|
2230
|
-
const n = new
|
|
2230
|
+
const n = new fA(this.manager);
|
|
2231
2231
|
return n.setPath(this.decoderPath), n.setResponseType(A), n.setWithCredentials(this.withCredentials), new Promise((t, i) => {
|
|
2232
2232
|
n.load(e, t, void 0, i);
|
|
2233
2233
|
});
|
|
@@ -2330,17 +2330,17 @@ function Vr() {
|
|
|
2330
2330
|
if (!u.ok() || h.ptr === 0)
|
|
2331
2331
|
throw new Error("THREE.DRACOLoader: Decoding failed: " + u.error_msg());
|
|
2332
2332
|
const E = { index: null, attributes: [] };
|
|
2333
|
-
for (const
|
|
2334
|
-
const p = self[l[
|
|
2333
|
+
for (const f in g) {
|
|
2334
|
+
const p = self[l[f]];
|
|
2335
2335
|
let b, d;
|
|
2336
2336
|
if (c.useUniqueIDs)
|
|
2337
|
-
d = g[
|
|
2337
|
+
d = g[f], b = o.GetAttributeByUniqueId(h, d);
|
|
2338
2338
|
else {
|
|
2339
|
-
if (d = o.GetAttributeId(h, s[g[
|
|
2339
|
+
if (d = o.GetAttributeId(h, s[g[f]]), d === -1) continue;
|
|
2340
2340
|
b = o.GetAttribute(h, d);
|
|
2341
2341
|
}
|
|
2342
|
-
const m = t(s, o, h,
|
|
2343
|
-
|
|
2342
|
+
const m = t(s, o, h, f, p, b);
|
|
2343
|
+
f === "color" && (m.vertexColorSpace = c.vertexColorSpace), E.attributes.push(m);
|
|
2344
2344
|
}
|
|
2345
2345
|
return B === s.TRIANGULAR_MESH && (E.index = n(s, o, h)), s.destroy(h), E;
|
|
2346
2346
|
}
|
|
@@ -2351,8 +2351,8 @@ function Vr() {
|
|
|
2351
2351
|
return s._free(h), { array: u, itemSize: 1 };
|
|
2352
2352
|
}
|
|
2353
2353
|
function t(s, o, r, c, g, l) {
|
|
2354
|
-
const h = l.num_components(), B = r.num_points() * h, E = B * g.BYTES_PER_ELEMENT,
|
|
2355
|
-
o.GetAttributeDataArrayForAllPoints(r, l,
|
|
2354
|
+
const h = l.num_components(), B = r.num_points() * h, E = B * g.BYTES_PER_ELEMENT, f = i(s, g), p = s._malloc(E);
|
|
2355
|
+
o.GetAttributeDataArrayForAllPoints(r, l, f, E, p);
|
|
2356
2356
|
const b = new g(s.HEAPF32.buffer, p, B).slice();
|
|
2357
2357
|
return s._free(p), {
|
|
2358
2358
|
name: c,
|
|
@@ -2418,7 +2418,7 @@ class Xr {
|
|
|
2418
2418
|
this.workers.forEach((e) => e.terminate()), this.workersResolve.length = 0, this.workers.length = 0, this.queue.length = 0, this.workerStatus = 0;
|
|
2419
2419
|
}
|
|
2420
2420
|
}
|
|
2421
|
-
const Wr = 0, ji = 2, Zr = 1, zi = 2, $r = 0, ec = 1, Ac = 10, tc = 0,
|
|
2421
|
+
const Wr = 0, ji = 2, Zr = 1, zi = 2, $r = 0, ec = 1, Ac = 10, tc = 0, so = 9, oo = 15, ao = 16, ro = 22, co = 37, go = 43, lo = 76, ho = 83, Io = 97, uo = 100, Bo = 103, Eo = 109, Co = 122, fo = 123, nc = 131, ic = 132, sc = 133, oc = 134, ac = 137, rc = 138, cc = 141, gc = 142, lc = 145, hc = 146, po = 148, Qo = 152, Ic = 157, uc = 158, mo = 165, bo = 166, xi = 1000066e3;
|
|
2422
2422
|
class pt {
|
|
2423
2423
|
constructor(e, A, n, t) {
|
|
2424
2424
|
this._dataView = void 0, this._littleEndian = void 0, this._offset = void 0, this._dataView = new DataView(e.buffer, e.byteOffset + A, n), this._littleEndian = t, this._offset = 0;
|
|
@@ -2470,7 +2470,7 @@ function Bc(a) {
|
|
|
2470
2470
|
for (let te = 0, Z = Math.max(A.levelCount, 1); te < Z; te++) A.levels.push({ levelData: new Uint8Array(a.buffer, a.byteOffset + h._nextUint64(), h._nextUint64()), uncompressedByteLength: h._nextUint64() });
|
|
2471
2471
|
const u = new pt(a, i, s, !0);
|
|
2472
2472
|
u._skip(4);
|
|
2473
|
-
const B = u._nextUint16(), E = u._nextUint16(),
|
|
2473
|
+
const B = u._nextUint16(), E = u._nextUint16(), f = u._nextUint16(), p = u._nextUint16(), b = { vendorId: B, descriptorType: E, versionNumber: f, colorModel: u._nextUint8(), colorPrimaries: u._nextUint8(), transferFunction: u._nextUint8(), flags: u._nextUint8(), texelBlockDimension: [u._nextUint8(), u._nextUint8(), u._nextUint8(), u._nextUint8()], bytesPlane: [u._nextUint8(), u._nextUint8(), u._nextUint8(), u._nextUint8(), u._nextUint8(), u._nextUint8(), u._nextUint8(), u._nextUint8()], samples: [] }, d = (p / 4 - 6) / 4;
|
|
2474
2474
|
for (let te = 0; te < d; te++) {
|
|
2475
2475
|
const Z = { bitOffset: u._nextUint16(), bitLength: u._nextUint8(), channelType: u._nextUint8(), samplePosition: [u._nextUint8(), u._nextUint8(), u._nextUint8(), u._nextUint8()], sampleLower: Number.NEGATIVE_INFINITY, sampleUpper: Number.POSITIVE_INFINITY };
|
|
2476
2476
|
64 & Z.channelType ? (Z.sampleLower = u._nextInt32(), Z.sampleUpper = u._nextInt32()) : (Z.sampleLower = u._nextUint32(), Z.sampleUpper = u._nextUint32()), b.samples[te] = Z;
|
|
@@ -2510,9 +2510,9 @@ class Ec {
|
|
|
2510
2510
|
return GA.exports.free(t), GA.exports.free(i), o;
|
|
2511
2511
|
}
|
|
2512
2512
|
}
|
|
2513
|
-
const Xi = "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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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", fc = "display-p3", Cc = "display-p3-linear", xn = /* @__PURE__ */ new WeakMap();
|
|
2513
|
+
const Xi = "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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/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", Cc = "display-p3", fc = "display-p3-linear", xn = /* @__PURE__ */ new WeakMap();
|
|
2514
2514
|
let Fn = 0, Rn;
|
|
2515
|
-
class
|
|
2515
|
+
class CA extends NA {
|
|
2516
2516
|
/**
|
|
2517
2517
|
* Constructs a new KTX2 loader.
|
|
2518
2518
|
*
|
|
@@ -2592,18 +2592,18 @@ class fA extends NA {
|
|
|
2592
2592
|
// TODO: Make this method private
|
|
2593
2593
|
init() {
|
|
2594
2594
|
if (!this.transcoderPending) {
|
|
2595
|
-
const e = new
|
|
2595
|
+
const e = new fA(this.manager);
|
|
2596
2596
|
e.setPath(this.transcoderPath), e.setWithCredentials(this.withCredentials);
|
|
2597
|
-
const A = e.loadAsync("basis_transcoder.js"), n = new
|
|
2597
|
+
const A = e.loadAsync("basis_transcoder.js"), n = new fA(this.manager);
|
|
2598
2598
|
n.setPath(this.transcoderPath), n.setResponseType("arraybuffer"), n.setWithCredentials(this.withCredentials);
|
|
2599
2599
|
const t = n.loadAsync("basis_transcoder.wasm");
|
|
2600
2600
|
this.transcoderPending = Promise.all([A, t]).then(([i, s]) => {
|
|
2601
|
-
const o =
|
|
2601
|
+
const o = CA.BasisWorker.toString(), r = [
|
|
2602
2602
|
"/* constants */",
|
|
2603
|
-
"let _EngineFormat = " + JSON.stringify(
|
|
2604
|
-
"let _EngineType = " + JSON.stringify(
|
|
2605
|
-
"let _TranscoderFormat = " + JSON.stringify(
|
|
2606
|
-
"let _BasisFormat = " + JSON.stringify(
|
|
2603
|
+
"let _EngineFormat = " + JSON.stringify(CA.EngineFormat),
|
|
2604
|
+
"let _EngineType = " + JSON.stringify(CA.EngineType),
|
|
2605
|
+
"let _TranscoderFormat = " + JSON.stringify(CA.TranscoderFormat),
|
|
2606
|
+
"let _BasisFormat = " + JSON.stringify(CA.BasisFormat),
|
|
2607
2607
|
"/* basis_transcoder.js */",
|
|
2608
2608
|
i,
|
|
2609
2609
|
"/* worker */",
|
|
@@ -2632,7 +2632,7 @@ class fA extends NA {
|
|
|
2632
2632
|
load(e, A, n, t) {
|
|
2633
2633
|
if (this.workerConfig === null)
|
|
2634
2634
|
throw new Error("THREE.KTX2Loader: Missing initialization with `.detectSupport( renderer )`.");
|
|
2635
|
-
const i = new
|
|
2635
|
+
const i = new fA(this.manager);
|
|
2636
2636
|
i.setPath(this.path), i.setCrossOrigin(this.crossOrigin), i.setWithCredentials(this.withCredentials), i.setResponseType("arraybuffer"), i.load(e, (s) => {
|
|
2637
2637
|
this.parse(s, A, t);
|
|
2638
2638
|
}, n, t);
|
|
@@ -2657,12 +2657,12 @@ class fA extends NA {
|
|
|
2657
2657
|
if (n === "error") return Promise.reject(t);
|
|
2658
2658
|
let l;
|
|
2659
2659
|
if (A.faceCount === 6)
|
|
2660
|
-
l = new
|
|
2660
|
+
l = new Ma(i, r, c);
|
|
2661
2661
|
else {
|
|
2662
2662
|
const h = i[0].mipmaps;
|
|
2663
|
-
l = A.layerCount > 1 ? new
|
|
2663
|
+
l = A.layerCount > 1 ? new Ta(h, s, o, A.layerCount, r, c) : new vt(h, s, o, r, c);
|
|
2664
2664
|
}
|
|
2665
|
-
return l.minFilter = i[0].mipmaps.length === 1 ? aA : Pt, l.magFilter = aA, l.generateMipmaps = !1, l.needsUpdate = !0, l.colorSpace =
|
|
2665
|
+
return l.minFilter = i[0].mipmaps.length === 1 ? aA : Pt, l.magFilter = aA, l.generateMipmaps = !1, l.needsUpdate = !0, l.colorSpace = wo(A), l.premultiplyAlpha = !!(g & Zr), l;
|
|
2666
2666
|
}
|
|
2667
2667
|
/**
|
|
2668
2668
|
* @private
|
|
@@ -2685,12 +2685,12 @@ class fA extends NA {
|
|
|
2685
2685
|
this.workerPool.dispose(), this.workerSourceURL && URL.revokeObjectURL(this.workerSourceURL), Fn--;
|
|
2686
2686
|
}
|
|
2687
2687
|
}
|
|
2688
|
-
|
|
2688
|
+
CA.BasisFormat = {
|
|
2689
2689
|
ETC1S: 0,
|
|
2690
2690
|
UASTC: 1,
|
|
2691
2691
|
UASTC_HDR: 2
|
|
2692
2692
|
};
|
|
2693
|
-
|
|
2693
|
+
CA.TranscoderFormat = {
|
|
2694
2694
|
ETC1: 0,
|
|
2695
2695
|
ETC2: 1,
|
|
2696
2696
|
BC1: 2,
|
|
@@ -2712,25 +2712,25 @@ fA.TranscoderFormat = {
|
|
|
2712
2712
|
RGB_HALF: 24,
|
|
2713
2713
|
RGBA_HALF: 25
|
|
2714
2714
|
};
|
|
2715
|
-
|
|
2715
|
+
CA.EngineFormat = {
|
|
2716
2716
|
RGBAFormat: jA,
|
|
2717
2717
|
RGBA_ASTC_4x4_Format: sn,
|
|
2718
|
-
RGB_BPTC_UNSIGNED_Format:
|
|
2718
|
+
RGB_BPTC_UNSIGNED_Format: Ua,
|
|
2719
2719
|
RGBA_BPTC_Format: Ai,
|
|
2720
2720
|
RGBA_ETC2_EAC_Format: js,
|
|
2721
|
-
RGBA_PVRTC_4BPPV1_Format:
|
|
2721
|
+
RGBA_PVRTC_4BPPV1_Format: Na,
|
|
2722
2722
|
RGBA_S3TC_DXT5_Format: ti,
|
|
2723
|
-
RGB_ETC1_Format:
|
|
2723
|
+
RGB_ETC1_Format: La,
|
|
2724
2724
|
RGB_ETC2_Format: zs,
|
|
2725
|
-
RGB_PVRTC_4BPPV1_Format:
|
|
2725
|
+
RGB_PVRTC_4BPPV1_Format: va,
|
|
2726
2726
|
RGBA_S3TC_DXT1_Format: ni
|
|
2727
2727
|
};
|
|
2728
|
-
|
|
2728
|
+
CA.EngineType = {
|
|
2729
2729
|
UnsignedByteType: BA,
|
|
2730
2730
|
HalfFloatType: eA,
|
|
2731
2731
|
FloatType: pA
|
|
2732
2732
|
};
|
|
2733
|
-
|
|
2733
|
+
CA.BasisWorker = function() {
|
|
2734
2734
|
let a, e, A;
|
|
2735
2735
|
const n = _EngineFormat, t = _EngineType, i = _TranscoderFormat, s = _BasisFormat;
|
|
2736
2736
|
self.addEventListener("message", function(B) {
|
|
@@ -2742,10 +2742,10 @@ fA.BasisWorker = function() {
|
|
|
2742
2742
|
case "transcode":
|
|
2743
2743
|
e.then(() => {
|
|
2744
2744
|
try {
|
|
2745
|
-
const { faces:
|
|
2746
|
-
self.postMessage({ type: "transcode", id: E.id, data: { faces:
|
|
2747
|
-
} catch (
|
|
2748
|
-
console.error(
|
|
2745
|
+
const { faces: f, buffers: p, width: b, height: d, hasAlpha: m, format: w, type: R, dfdFlags: F } = r(E.buffer);
|
|
2746
|
+
self.postMessage({ type: "transcode", id: E.id, data: { faces: f, width: b, height: d, hasAlpha: m, format: w, type: R, dfdFlags: F } }, p);
|
|
2747
|
+
} catch (f) {
|
|
2748
|
+
console.error(f), self.postMessage({ type: "error", id: E.id, error: f.message });
|
|
2749
2749
|
}
|
|
2750
2750
|
});
|
|
2751
2751
|
break;
|
|
@@ -2760,11 +2760,11 @@ fA.BasisWorker = function() {
|
|
|
2760
2760
|
}
|
|
2761
2761
|
function r(B) {
|
|
2762
2762
|
const E = new A.KTX2File(new Uint8Array(B));
|
|
2763
|
-
function
|
|
2763
|
+
function f() {
|
|
2764
2764
|
E.close(), E.delete();
|
|
2765
2765
|
}
|
|
2766
2766
|
if (!E.isValid())
|
|
2767
|
-
throw
|
|
2767
|
+
throw f(), new Error("THREE.KTX2Loader: Invalid or unsupported .ktx2 file");
|
|
2768
2768
|
let p;
|
|
2769
2769
|
if (E.isUASTC())
|
|
2770
2770
|
p = s.UASTC;
|
|
@@ -2776,9 +2776,9 @@ fA.BasisWorker = function() {
|
|
|
2776
2776
|
throw new Error("THREE.KTX2Loader: Unknown Basis encoding");
|
|
2777
2777
|
const b = E.getWidth(), d = E.getHeight(), m = E.getLayers() || 1, w = E.getLevels(), R = E.getFaces(), F = E.getHasAlpha(), y = E.getDFDFlags(), { transcoderFormat: x, engineFormat: N, engineType: _ } = l(p, b, d, F);
|
|
2778
2778
|
if (!b || !d || !w)
|
|
2779
|
-
throw
|
|
2779
|
+
throw f(), new Error("THREE.KTX2Loader: Invalid texture");
|
|
2780
2780
|
if (!E.startTranscoding())
|
|
2781
|
-
throw
|
|
2781
|
+
throw f(), new Error("THREE.KTX2Loader: .startTranscoding failed");
|
|
2782
2782
|
const P = [], X = [];
|
|
2783
2783
|
for (let U = 0; U < R; U++) {
|
|
2784
2784
|
const q = [];
|
|
@@ -2791,7 +2791,7 @@ fA.BasisWorker = function() {
|
|
|
2791
2791
|
let ne = new Uint8Array(E.getImageTranscodedSizeInBytes(H, te, 0, x));
|
|
2792
2792
|
const le = E.transcodeImage(ne, H, te, U, x, 0, -1, -1);
|
|
2793
2793
|
if (_ === t.HalfFloatType && (ne = new Uint16Array(ne.buffer, ne.byteOffset, ne.byteLength / Uint16Array.BYTES_PER_ELEMENT)), !le)
|
|
2794
|
-
throw
|
|
2794
|
+
throw f(), new Error("THREE.KTX2Loader: .transcodeImage failed.");
|
|
2795
2795
|
$.push(ne);
|
|
2796
2796
|
}
|
|
2797
2797
|
const re = u($);
|
|
@@ -2799,7 +2799,7 @@ fA.BasisWorker = function() {
|
|
|
2799
2799
|
}
|
|
2800
2800
|
P.push({ mipmaps: q, width: b, height: d, format: N, type: _ });
|
|
2801
2801
|
}
|
|
2802
|
-
return
|
|
2802
|
+
return f(), { faces: P, buffers: X, width: b, height: d, hasAlpha: F, dfdFlags: y, format: N, type: _ };
|
|
2803
2803
|
}
|
|
2804
2804
|
const c = [
|
|
2805
2805
|
{
|
|
@@ -2898,11 +2898,11 @@ fA.BasisWorker = function() {
|
|
|
2898
2898
|
[s.UASTC]: c.filter((B) => B.basisFormat.includes(s.UASTC)).sort((B, E) => B.priorityUASTC - E.priorityUASTC),
|
|
2899
2899
|
[s.UASTC_HDR]: c.filter((B) => B.basisFormat.includes(s.UASTC_HDR)).sort((B, E) => B.priorityHDR - E.priorityHDR)
|
|
2900
2900
|
};
|
|
2901
|
-
function l(B, E,
|
|
2901
|
+
function l(B, E, f, p) {
|
|
2902
2902
|
const b = g[B];
|
|
2903
2903
|
for (let d = 0; d < b.length; d++) {
|
|
2904
2904
|
const m = b[d];
|
|
2905
|
-
if (m.if && !a[m.if] || !m.basisFormat.includes(B) || p && m.transcoderFormat.length < 2 || m.needsPowerOfTwo && !(h(E) && h(
|
|
2905
|
+
if (m.if && !a[m.if] || !m.basisFormat.includes(B) || p && m.transcoderFormat.length < 2 || m.needsPowerOfTwo && !(h(E) && h(f))) continue;
|
|
2906
2906
|
const w = m.transcoderFormat[p ? 1 : 0], R = m.engineFormat[p ? 1 : 0], F = m.engineType[0];
|
|
2907
2907
|
return { transcoderFormat: w, engineFormat: R, engineType: F };
|
|
2908
2908
|
}
|
|
@@ -2918,37 +2918,37 @@ fA.BasisWorker = function() {
|
|
|
2918
2918
|
const d = B[b];
|
|
2919
2919
|
E += d.byteLength;
|
|
2920
2920
|
}
|
|
2921
|
-
const
|
|
2921
|
+
const f = new Uint8Array(E);
|
|
2922
2922
|
let p = 0;
|
|
2923
2923
|
for (let b = 0; b < B.length; b++) {
|
|
2924
2924
|
const d = B[b];
|
|
2925
|
-
|
|
2925
|
+
f.set(d, p), p += d.byteLength;
|
|
2926
2926
|
}
|
|
2927
|
-
return
|
|
2927
|
+
return f;
|
|
2928
2928
|
}
|
|
2929
2929
|
};
|
|
2930
2930
|
const pc = /* @__PURE__ */ new Set([jA, ii, Ft, gt]), Mn = {
|
|
2931
|
-
[
|
|
2932
|
-
[
|
|
2931
|
+
[Eo]: jA,
|
|
2932
|
+
[Io]: jA,
|
|
2933
|
+
[co]: jA,
|
|
2933
2934
|
[go]: jA,
|
|
2934
|
-
[
|
|
2935
|
-
[
|
|
2936
|
-
[
|
|
2935
|
+
[Bo]: Ft,
|
|
2936
|
+
[ho]: Ft,
|
|
2937
|
+
[ao]: Ft,
|
|
2937
2938
|
[ro]: Ft,
|
|
2938
|
-
[
|
|
2939
|
-
[
|
|
2940
|
-
[ho]: gt,
|
|
2941
|
-
[ao]: gt,
|
|
2939
|
+
[uo]: gt,
|
|
2940
|
+
[lo]: gt,
|
|
2942
2941
|
[oo]: gt,
|
|
2943
|
-
[
|
|
2942
|
+
[so]: gt,
|
|
2943
|
+
[fo]: ii,
|
|
2944
2944
|
[Co]: ii,
|
|
2945
|
-
[
|
|
2946
|
-
[
|
|
2945
|
+
[po]: zs,
|
|
2946
|
+
[Qo]: js,
|
|
2947
2947
|
[xi]: sn,
|
|
2948
2948
|
[uc]: sn,
|
|
2949
2949
|
[Ic]: sn,
|
|
2950
|
-
[wo]: Hi,
|
|
2951
2950
|
[bo]: Hi,
|
|
2951
|
+
[mo]: Hi,
|
|
2952
2952
|
[sc]: ni,
|
|
2953
2953
|
[oc]: ni,
|
|
2954
2954
|
[nc]: Pi,
|
|
@@ -2960,25 +2960,25 @@ const pc = /* @__PURE__ */ new Set([jA, ii, Ft, gt]), Mn = {
|
|
|
2960
2960
|
[hc]: Ai,
|
|
2961
2961
|
[lc]: Ai
|
|
2962
2962
|
}, dt = {
|
|
2963
|
-
[fo]: pA,
|
|
2964
|
-
[uo]: eA,
|
|
2965
|
-
[go]: BA,
|
|
2966
|
-
[lo]: BA,
|
|
2967
2963
|
[Eo]: pA,
|
|
2968
2964
|
[Io]: eA,
|
|
2969
|
-
[ro]: BA,
|
|
2970
2965
|
[co]: BA,
|
|
2966
|
+
[go]: BA,
|
|
2971
2967
|
[Bo]: pA,
|
|
2972
2968
|
[ho]: eA,
|
|
2973
2969
|
[ao]: BA,
|
|
2970
|
+
[ro]: BA,
|
|
2971
|
+
[uo]: pA,
|
|
2972
|
+
[lo]: eA,
|
|
2974
2973
|
[oo]: BA,
|
|
2975
|
-
[
|
|
2974
|
+
[so]: BA,
|
|
2975
|
+
[fo]: Xs,
|
|
2976
2976
|
[Co]: Vs,
|
|
2977
|
+
[po]: BA,
|
|
2977
2978
|
[Qo]: BA,
|
|
2978
|
-
[mo]: BA,
|
|
2979
2979
|
[xi]: eA,
|
|
2980
|
-
[
|
|
2981
|
-
[
|
|
2980
|
+
[bo]: BA,
|
|
2981
|
+
[mo]: BA
|
|
2982
2982
|
};
|
|
2983
2983
|
async function dc(a) {
|
|
2984
2984
|
const { vkFormat: e } = a;
|
|
@@ -3022,18 +3022,18 @@ async function dc(a) {
|
|
|
3022
3022
|
const t = a.levelCount === 0 || n.length > 1;
|
|
3023
3023
|
let i;
|
|
3024
3024
|
if (pc.has(Mn[e]))
|
|
3025
|
-
i = a.pixelDepth === 0 ? new
|
|
3025
|
+
i = a.pixelDepth === 0 ? new Ga(n[0].data, a.pixelWidth, a.pixelHeight) : new ka(n[0].data, a.pixelWidth, a.pixelHeight, a.pixelDepth), i.minFilter = t ? Qi : ln, i.magFilter = ln, i.generateMipmaps = a.levelCount === 0;
|
|
3026
3026
|
else {
|
|
3027
3027
|
if (a.pixelDepth > 0) throw new Error("THREE.KTX2Loader: Unsupported pixelDepth.");
|
|
3028
3028
|
i = new vt(n, a.pixelWidth, a.pixelHeight), i.minFilter = t ? Pt : aA, i.magFilter = aA;
|
|
3029
3029
|
}
|
|
3030
|
-
return i.mipmaps = n, i.type = dt[e], i.format = Mn[e], i.colorSpace =
|
|
3030
|
+
return i.mipmaps = n, i.type = dt[e], i.format = Mn[e], i.colorSpace = wo(a), i.needsUpdate = !0, Promise.resolve(i);
|
|
3031
3031
|
}
|
|
3032
|
-
function
|
|
3032
|
+
function wo(a) {
|
|
3033
3033
|
const e = a.dataFormatDescriptor[0];
|
|
3034
|
-
return e.colorPrimaries === ec ? e.transferFunction === zi ? Be : AA : e.colorPrimaries === Ac ? e.transferFunction === zi ?
|
|
3034
|
+
return e.colorPrimaries === ec ? e.transferFunction === zi ? Be : AA : e.colorPrimaries === Ac ? e.transferFunction === zi ? Cc : fc : e.colorPrimaries === $r ? un : (console.warn(`THREE.KTX2Loader: Unsupported color primaries, "${e.colorPrimaries}"`), un);
|
|
3035
3035
|
}
|
|
3036
|
-
const Qc = new
|
|
3036
|
+
const Qc = new _a();
|
|
3037
3037
|
Qc.camera = new En();
|
|
3038
3038
|
wA.basic, wA.basic, wA.points, wA.standard, wA.physical, wA.phong;
|
|
3039
3039
|
var an = function() {
|
|
@@ -3080,15 +3080,15 @@ var an = function() {
|
|
|
3080
3080
|
an.Panel = function(a, e, A) {
|
|
3081
3081
|
var n = 1 / 0, t = 0, i = Math.round, s = i(window.devicePixelRatio || 1), o = 80 * s, r = 48 * s, c = 3 * s, g = 2 * s, l = 3 * s, h = 15 * s, u = 74 * s, B = 30 * s, E = document.createElement("canvas");
|
|
3082
3082
|
E.width = o, E.height = r, E.style.cssText = "width:80px;height:48px";
|
|
3083
|
-
var
|
|
3084
|
-
return
|
|
3083
|
+
var f = E.getContext("2d");
|
|
3084
|
+
return f.font = "bold " + 9 * s + "px Helvetica,Arial,sans-serif", f.textBaseline = "top", f.fillStyle = A, f.fillRect(0, 0, o, r), f.fillStyle = e, f.fillText(a, c, g), f.fillRect(l, h, u, B), f.fillStyle = A, f.globalAlpha = 0.9, f.fillRect(l, h, u, B), {
|
|
3085
3085
|
dom: E,
|
|
3086
3086
|
update: function(p, b) {
|
|
3087
|
-
n = Math.min(n, p), t = Math.max(t, p),
|
|
3087
|
+
n = Math.min(n, p), t = Math.max(t, p), f.fillStyle = A, f.globalAlpha = 1, f.fillRect(0, 0, o, h), f.fillStyle = e, f.fillText(i(p) + " " + a + " (" + i(n) + "-" + i(t) + ")", c, g), f.drawImage(E, l + s, h, u - s, B, l, h, u - s, B), f.fillRect(l + u - s, h, s, B), f.fillStyle = A, f.globalAlpha = 0.9, f.fillRect(l + u - s, h, s, i((1 - p / b) * B));
|
|
3088
3088
|
}
|
|
3089
3089
|
};
|
|
3090
3090
|
};
|
|
3091
|
-
class
|
|
3091
|
+
class Zl extends Pa {
|
|
3092
3092
|
constructor(e, A = {}) {
|
|
3093
3093
|
const n = A.font;
|
|
3094
3094
|
if (n === void 0)
|
|
@@ -3100,12 +3100,12 @@ class $l extends Ha {
|
|
|
3100
3100
|
this.type = "TextGeometry";
|
|
3101
3101
|
}
|
|
3102
3102
|
}
|
|
3103
|
-
class
|
|
3103
|
+
class $l extends NA {
|
|
3104
3104
|
constructor(e) {
|
|
3105
3105
|
super(e);
|
|
3106
3106
|
}
|
|
3107
3107
|
load(e, A, n, t) {
|
|
3108
|
-
const i = this, s = new
|
|
3108
|
+
const i = this, s = new fA(this.manager);
|
|
3109
3109
|
s.setPath(this.path), s.setRequestHeader(this.requestHeader), s.setWithCredentials(this.withCredentials), s.load(e, function(o) {
|
|
3110
3110
|
const r = i.parse(JSON.parse(o));
|
|
3111
3111
|
A && A(r);
|
|
@@ -3147,29 +3147,29 @@ function wc(a, e, A, n, t) {
|
|
|
3147
3147
|
console.error('THREE.Font: character "' + a + '" does not exists in font family ' + t.familyName + ".");
|
|
3148
3148
|
return;
|
|
3149
3149
|
}
|
|
3150
|
-
const s = new
|
|
3150
|
+
const s = new Ha();
|
|
3151
3151
|
let o, r, c, g, l, h, u, B;
|
|
3152
3152
|
if (i.o) {
|
|
3153
3153
|
const E = i._cachedOutline || (i._cachedOutline = i.o.split(" "));
|
|
3154
|
-
for (let
|
|
3155
|
-
switch (E[
|
|
3154
|
+
for (let f = 0, p = E.length; f < p; )
|
|
3155
|
+
switch (E[f++]) {
|
|
3156
3156
|
case "m":
|
|
3157
|
-
o = E[
|
|
3157
|
+
o = E[f++] * e + A, r = E[f++] * e + n, s.moveTo(o, r);
|
|
3158
3158
|
break;
|
|
3159
3159
|
case "l":
|
|
3160
|
-
o = E[
|
|
3160
|
+
o = E[f++] * e + A, r = E[f++] * e + n, s.lineTo(o, r);
|
|
3161
3161
|
break;
|
|
3162
3162
|
case "q":
|
|
3163
|
-
c = E[
|
|
3163
|
+
c = E[f++] * e + A, g = E[f++] * e + n, l = E[f++] * e + A, h = E[f++] * e + n, s.quadraticCurveTo(l, h, c, g);
|
|
3164
3164
|
break;
|
|
3165
3165
|
case "b":
|
|
3166
|
-
c = E[
|
|
3166
|
+
c = E[f++] * e + A, g = E[f++] * e + n, l = E[f++] * e + A, h = E[f++] * e + n, u = E[f++] * e + A, B = E[f++] * e + n, s.bezierCurveTo(l, h, u, B, c, g);
|
|
3167
3167
|
break;
|
|
3168
3168
|
}
|
|
3169
3169
|
}
|
|
3170
3170
|
return { offsetX: i.ha * e, path: s };
|
|
3171
3171
|
}
|
|
3172
|
-
var Me = Uint8Array, iA = Uint16Array, Fi = Int32Array,
|
|
3172
|
+
var Me = Uint8Array, iA = Uint16Array, Fi = Int32Array, fn = new Me([
|
|
3173
3173
|
0,
|
|
3174
3174
|
0,
|
|
3175
3175
|
0,
|
|
@@ -3238,16 +3238,16 @@ var Me = Uint8Array, iA = Uint16Array, Fi = Int32Array, Cn = new Me([
|
|
|
3238
3238
|
/* unused */
|
|
3239
3239
|
0,
|
|
3240
3240
|
0
|
|
3241
|
-
]), hi = new Me([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]),
|
|
3241
|
+
]), hi = new Me([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]), yo = function(a, e) {
|
|
3242
3242
|
for (var A = new iA(31), n = 0; n < 31; ++n)
|
|
3243
3243
|
A[n] = e += 1 << a[n - 1];
|
|
3244
3244
|
for (var t = new Fi(A[30]), n = 1; n < 30; ++n)
|
|
3245
3245
|
for (var i = A[n]; i < A[n + 1]; ++i)
|
|
3246
3246
|
t[i] = i - A[n] << 5 | n;
|
|
3247
3247
|
return { b: A, r: t };
|
|
3248
|
-
},
|
|
3249
|
-
|
|
3250
|
-
var
|
|
3248
|
+
}, Do = yo(fn, 2), So = Do.b, Ii = Do.r;
|
|
3249
|
+
So[28] = 258, Ii[258] = 28;
|
|
3250
|
+
var xo = yo(pn, 0), yc = xo.b, Wi = xo.r, ui = new iA(32768);
|
|
3251
3251
|
for (var me = 0; me < 32768; ++me) {
|
|
3252
3252
|
var qA = (me & 43690) >> 1 | (me & 21845) << 1;
|
|
3253
3253
|
qA = (qA & 52428) >> 2 | (qA & 13107) << 2, qA = (qA & 61680) >> 4 | (qA & 3855) << 4, ui[me] = ((qA & 65280) >> 8 | (qA & 255) << 8) >> 1;
|
|
@@ -3329,14 +3329,14 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3329
3329
|
var RA = new Me(Math.max(VA * 2, rA));
|
|
3330
3330
|
RA.set(A), A = RA;
|
|
3331
3331
|
}
|
|
3332
|
-
}, g = e.f || 0, l = e.p || 0, h = e.b || 0, u = e.l, B = e.d, E = e.m,
|
|
3332
|
+
}, g = e.f || 0, l = e.p || 0, h = e.b || 0, u = e.l, B = e.d, E = e.m, f = e.n, p = t * 8;
|
|
3333
3333
|
do {
|
|
3334
3334
|
if (!u) {
|
|
3335
3335
|
g = uA(a, l, 1);
|
|
3336
3336
|
var b = uA(a, l + 1, 3);
|
|
3337
3337
|
if (l += 3, b)
|
|
3338
3338
|
if (b == 1)
|
|
3339
|
-
u = Sc, B = Fc, E = 9,
|
|
3339
|
+
u = Sc, B = Fc, E = 9, f = 5;
|
|
3340
3340
|
else if (b == 2) {
|
|
3341
3341
|
var R = uA(a, l, 31) + 257, F = uA(a, l + 10, 15) + 4, y = R + uA(a, l + 5, 31) + 1;
|
|
3342
3342
|
l += 14;
|
|
@@ -3356,7 +3356,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3356
3356
|
}
|
|
3357
3357
|
}
|
|
3358
3358
|
var oe = x.subarray(0, R), Ae = x.subarray(R);
|
|
3359
|
-
E = Tn(oe),
|
|
3359
|
+
E = Tn(oe), f = Tn(Ae), u = xA(oe, E, 1), B = xA(Ae, f, 1);
|
|
3360
3360
|
} else
|
|
3361
3361
|
Ze(1);
|
|
3362
3362
|
else {
|
|
@@ -3374,7 +3374,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3374
3374
|
}
|
|
3375
3375
|
}
|
|
3376
3376
|
o && c(h + 131072);
|
|
3377
|
-
for (var re = (1 << E) - 1, te = (1 <<
|
|
3377
|
+
for (var re = (1 << E) - 1, te = (1 << f) - 1, Z = l; ; Z = l) {
|
|
3378
3378
|
var H = u[Gn(a, l) & re], ne = H >> 4;
|
|
3379
3379
|
if (l += H & 15, l > p) {
|
|
3380
3380
|
r && Ze(0);
|
|
@@ -3388,8 +3388,8 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3388
3388
|
} else {
|
|
3389
3389
|
var le = ne - 254;
|
|
3390
3390
|
if (ne > 264) {
|
|
3391
|
-
var _ = ne - 257, Ie =
|
|
3392
|
-
le = uA(a, l, (1 << Ie) - 1) +
|
|
3391
|
+
var _ = ne - 257, Ie = fn[_];
|
|
3392
|
+
le = uA(a, l, (1 << Ie) - 1) + So[_], l += Ie;
|
|
3393
3393
|
}
|
|
3394
3394
|
var ie = B[Gn(a, l) & te], Oe = ie >> 4;
|
|
3395
3395
|
ie || Ze(3), l += ie & 15;
|
|
@@ -3413,7 +3413,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3413
3413
|
A[h] = A[h - Ae];
|
|
3414
3414
|
}
|
|
3415
3415
|
}
|
|
3416
|
-
e.l = u, e.p = Z, e.b = h, e.f = g, u && (g = 1, e.m = E, e.d = B, e.n =
|
|
3416
|
+
e.l = u, e.p = Z, e.b = h, e.f = g, u && (g = 1, e.m = E, e.d = B, e.n = f);
|
|
3417
3417
|
} while (!g);
|
|
3418
3418
|
return h != A.length && s ? Mi(A, 0, h) : A.subarray(0, h);
|
|
3419
3419
|
}, TA = function(a, e, A) {
|
|
@@ -3429,7 +3429,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3429
3429
|
a[n] && A.push({ s: n, f: a[n] });
|
|
3430
3430
|
var t = A.length, i = A.slice();
|
|
3431
3431
|
if (!t)
|
|
3432
|
-
return { t:
|
|
3432
|
+
return { t: Ro, l: 0 };
|
|
3433
3433
|
if (t == 1) {
|
|
3434
3434
|
var s = new Me(A[0].s + 1);
|
|
3435
3435
|
return s[A[0].s] = 1, { t: s, l: 1 };
|
|
@@ -3444,7 +3444,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3444
3444
|
i[n].s > h && (h = i[n].s);
|
|
3445
3445
|
var u = new iA(h + 1), B = Bi(A[g - 1], u, 0);
|
|
3446
3446
|
if (B > e) {
|
|
3447
|
-
var n = 0, E = 0,
|
|
3447
|
+
var n = 0, E = 0, f = B - e, p = 1 << f;
|
|
3448
3448
|
for (i.sort(function(R, F) {
|
|
3449
3449
|
return u[F.s] - u[R.s] || R.f - F.f;
|
|
3450
3450
|
}); n < t; ++n) {
|
|
@@ -3454,7 +3454,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3454
3454
|
else
|
|
3455
3455
|
break;
|
|
3456
3456
|
}
|
|
3457
|
-
for (E >>=
|
|
3457
|
+
for (E >>= f; E > 0; ) {
|
|
3458
3458
|
var d = i[n].s;
|
|
3459
3459
|
u[d] < e ? E -= 1 << e - u[d]++ - 1 : ++n;
|
|
3460
3460
|
}
|
|
@@ -3494,7 +3494,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3494
3494
|
for (var A = 0, n = 0; n < e.length; ++n)
|
|
3495
3495
|
A += a[n] * e[n];
|
|
3496
3496
|
return A;
|
|
3497
|
-
},
|
|
3497
|
+
}, Fo = function(a, e, A) {
|
|
3498
3498
|
var n = A.length, t = Ri(e + 2);
|
|
3499
3499
|
a[t] = n & 255, a[t + 1] = n >> 8, a[t + 2] = a[t] ^ 255, a[t + 3] = a[t + 1] ^ 255;
|
|
3500
3500
|
for (var i = 0; i < n; ++i)
|
|
@@ -3502,7 +3502,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3502
3502
|
return (t + 4 + n) * 8;
|
|
3503
3503
|
}, $i = function(a, e, A, n, t, i, s, o, r, c, g) {
|
|
3504
3504
|
TA(e, g++, A), ++t[256];
|
|
3505
|
-
for (var l = kn(t, 15), h = l.t, u = l.l, B = kn(i, 15), E = B.t,
|
|
3505
|
+
for (var l = kn(t, 15), h = l.t, u = l.l, B = kn(i, 15), E = B.t, f = B.l, p = Zi(h), b = p.c, d = p.n, m = Zi(E), w = m.c, R = m.n, F = new iA(19), y = 0; y < b.length; ++y)
|
|
3506
3506
|
++F[b[y] & 31];
|
|
3507
3507
|
for (var y = 0; y < w.length; ++y)
|
|
3508
3508
|
++F[w[y] & 31];
|
|
@@ -3510,10 +3510,10 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3510
3510
|
;
|
|
3511
3511
|
var X = c + 5 << 3, U = mt(t, zA) + mt(i, Ut) + s, q = mt(t, h) + mt(i, E) + s + 14 + 3 * P + mt(F, N) + 2 * F[16] + 3 * F[17] + 7 * F[18];
|
|
3512
3512
|
if (r >= 0 && X <= U && X <= q)
|
|
3513
|
-
return
|
|
3513
|
+
return Fo(e, g, a.subarray(r, r + c));
|
|
3514
3514
|
var H, $, oe, Ae;
|
|
3515
3515
|
if (TA(e, g, 1 + (q < U)), g += 2, q < U) {
|
|
3516
|
-
H = xA(h, u, 0), $ = h, oe = xA(E,
|
|
3516
|
+
H = xA(h, u, 0), $ = h, oe = xA(E, f, 0), Ae = E;
|
|
3517
3517
|
var re = xA(N, _, 0);
|
|
3518
3518
|
TA(e, g, d - 257), TA(e, g + 5, R - 1), TA(e, g + 10, P - 4), g += 14;
|
|
3519
3519
|
for (var y = 0; y < P; ++y)
|
|
@@ -3530,22 +3530,22 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3530
3530
|
var Ie = n[y];
|
|
3531
3531
|
if (Ie > 255) {
|
|
3532
3532
|
var le = Ie >> 18 & 31;
|
|
3533
|
-
Qt(e, g, H[le + 257]), g += $[le + 257], le > 7 && (TA(e, g, Ie >> 23 & 31), g +=
|
|
3533
|
+
Qt(e, g, H[le + 257]), g += $[le + 257], le > 7 && (TA(e, g, Ie >> 23 & 31), g += fn[le]);
|
|
3534
3534
|
var ie = Ie & 31;
|
|
3535
3535
|
Qt(e, g, oe[ie]), g += Ae[ie], ie > 3 && (Qt(e, g, Ie >> 5 & 8191), g += pn[ie]);
|
|
3536
3536
|
} else
|
|
3537
3537
|
Qt(e, g, H[Ie]), g += $[Ie];
|
|
3538
3538
|
}
|
|
3539
3539
|
return Qt(e, g, H[256]), g + $[256];
|
|
3540
|
-
}, Tc = /* @__PURE__ */ new Fi([65540, 131080, 131088, 131104, 262176, 1048704, 1048832, 2114560, 2117632]),
|
|
3540
|
+
}, Tc = /* @__PURE__ */ new Fi([65540, 131080, 131088, 131104, 262176, 1048704, 1048832, 2114560, 2117632]), Ro = /* @__PURE__ */ new Me(0), Gc = function(a, e, A, n, t, i) {
|
|
3541
3541
|
var s = i.z || a.length, o = new Me(n + s + 5 * (1 + Math.ceil(s / 7e3)) + t), r = o.subarray(n, o.length - t), c = i.l, g = (i.r || 0) & 7;
|
|
3542
3542
|
if (e) {
|
|
3543
3543
|
g && (r[0] = i.r >> 3);
|
|
3544
|
-
for (var l = Tc[e - 1], h = l >> 13, u = l & 8191, B = (1 << A) - 1, E = i.p || new iA(32768),
|
|
3544
|
+
for (var l = Tc[e - 1], h = l >> 13, u = l & 8191, B = (1 << A) - 1, E = i.p || new iA(32768), f = i.h || new iA(B + 1), p = Math.ceil(A / 3), b = 2 * p, d = function(st) {
|
|
3545
3545
|
return (a[st] ^ a[st + 1] << p ^ a[st + 2] << b) & B;
|
|
3546
3546
|
}, m = new Fi(25e3), w = new iA(288), R = new iA(32), F = 0, y = 0, x = i.i || 0, N = 0, _ = i.w || 0, P = 0; x + 2 < s; ++x) {
|
|
3547
|
-
var X = d(x), U = x & 32767, q =
|
|
3548
|
-
if (E[U] = q,
|
|
3547
|
+
var X = d(x), U = x & 32767, q = f[X];
|
|
3548
|
+
if (E[U] = q, f[X] = U, _ <= x) {
|
|
3549
3549
|
var H = s - x;
|
|
3550
3550
|
if ((F > 7e3 || N > 24576) && (H > 423 || !c)) {
|
|
3551
3551
|
g = $i(a, r, 0, m, w, R, y, N, P, x - P, g), N = F = y = 0, P = x;
|
|
@@ -3574,18 +3574,18 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3574
3574
|
if (Ae) {
|
|
3575
3575
|
m[N++] = 268435456 | Ii[oe] << 18 | Wi[Ae];
|
|
3576
3576
|
var rA = Ii[oe] & 31, VA = Wi[Ae] & 31;
|
|
3577
|
-
y +=
|
|
3577
|
+
y += fn[rA] + pn[VA], ++w[257 + rA], ++R[VA], _ = x + oe, ++F;
|
|
3578
3578
|
} else
|
|
3579
3579
|
m[N++] = a[x], ++w[a[x]];
|
|
3580
3580
|
}
|
|
3581
3581
|
}
|
|
3582
3582
|
for (x = Math.max(x, _); x < s; ++x)
|
|
3583
3583
|
m[N++] = a[x], ++w[a[x]];
|
|
3584
|
-
g = $i(a, r, c, m, w, R, y, N, P, x - P, g), c || (i.r = g & 7 | r[g / 8 | 0] << 3, g -= 7, i.h =
|
|
3584
|
+
g = $i(a, r, c, m, w, R, y, N, P, x - P, g), c || (i.r = g & 7 | r[g / 8 | 0] << 3, g -= 7, i.h = f, i.p = E, i.i = x, i.w = _);
|
|
3585
3585
|
} else {
|
|
3586
3586
|
for (var x = i.w || 0; x < s + c; x += 65535) {
|
|
3587
3587
|
var RA = x + 65535;
|
|
3588
|
-
RA >= s && (r[g / 8 | 0] = c, RA = s), g =
|
|
3588
|
+
RA >= s && (r[g / 8 | 0] = c, RA = s), g = Fo(r, g + 1, a.subarray(x, RA));
|
|
3589
3589
|
}
|
|
3590
3590
|
i.i = s;
|
|
3591
3591
|
}
|
|
@@ -3615,7 +3615,7 @@ var Dc = /* @__PURE__ */ xA(zA, 9, 0), Sc = /* @__PURE__ */ xA(zA, 9, 1), xc = /
|
|
|
3615
3615
|
s.set(i), s.set(a, i.length), a = s, t.w = i.length;
|
|
3616
3616
|
}
|
|
3617
3617
|
return Gc(a, e.level == null ? 6 : e.level, e.mem == null ? t.l ? Math.ceil(Math.max(8, Math.min(13, Math.log(a.length))) * 1.5) : 20 : 12 + e.mem, A, n, t);
|
|
3618
|
-
},
|
|
3618
|
+
}, Mo = function(a, e) {
|
|
3619
3619
|
var A = {};
|
|
3620
3620
|
for (var n in a)
|
|
3621
3621
|
A[n] = a[n];
|
|
@@ -3634,14 +3634,14 @@ function Uc(a, e) {
|
|
|
3634
3634
|
function Rt(a, e) {
|
|
3635
3635
|
return Mc(a.subarray(Nc(a), -4), { i: 2 }, e, e);
|
|
3636
3636
|
}
|
|
3637
|
-
var
|
|
3637
|
+
var To = function(a, e, A, n) {
|
|
3638
3638
|
for (var t in a) {
|
|
3639
3639
|
var i = a[t], s = e + t, o = n;
|
|
3640
|
-
Array.isArray(i) && (o =
|
|
3640
|
+
Array.isArray(i) && (o = Mo(n, i[1]), i = i[0]), i instanceof Me ? A[s] = [i, o] : (A[s += "/"] = [new Me(0), o], To(i, s, A, n));
|
|
3641
3641
|
}
|
|
3642
3642
|
}, es = typeof TextEncoder < "u" && /* @__PURE__ */ new TextEncoder(), _c = typeof TextDecoder < "u" && /* @__PURE__ */ new TextDecoder(), Pc = 0;
|
|
3643
3643
|
try {
|
|
3644
|
-
_c.decode(
|
|
3644
|
+
_c.decode(Ro, { stream: !0 }), Pc = 1;
|
|
3645
3645
|
} catch {
|
|
3646
3646
|
}
|
|
3647
3647
|
function As(a, e) {
|
|
@@ -3674,23 +3674,23 @@ var Ei = function(a) {
|
|
|
3674
3674
|
var h = new Date(A.mtime == null ? Date.now() : A.mtime), u = h.getFullYear() - 1980;
|
|
3675
3675
|
if ((u < 0 || u > 119) && Ze(10), Pe(a, e, u << 25 | h.getMonth() + 1 << 21 | h.getDate() << 16 | h.getHours() << 11 | h.getMinutes() << 5 | h.getSeconds() >> 1), e += 4, i != -1 && (Pe(a, e, A.crc), Pe(a, e + 4, i < 0 ? -i - 2 : i), Pe(a, e + 8, A.size)), Pe(a, e + 12, r), Pe(a, e + 14, l), e += 16, s != null && (Pe(a, e, g), Pe(a, e + 6, A.attrs), Pe(a, e + 10, s), e += 14), a.set(n, e), e += r, l)
|
|
3676
3676
|
for (var B in c) {
|
|
3677
|
-
var E = c[B],
|
|
3678
|
-
Pe(a, e, +B), Pe(a, e + 2,
|
|
3677
|
+
var E = c[B], f = E.length;
|
|
3678
|
+
Pe(a, e, +B), Pe(a, e + 2, f), a.set(E, e + 4), e += 4 + f;
|
|
3679
3679
|
}
|
|
3680
3680
|
return g && (a.set(o, e), e += g), e;
|
|
3681
3681
|
}, Hc = function(a, e, A, n, t) {
|
|
3682
3682
|
Pe(a, e, 101010256), Pe(a, e + 8, A), Pe(a, e + 10, A), Pe(a, e + 12, n), Pe(a, e + 16, t);
|
|
3683
3683
|
};
|
|
3684
|
-
function
|
|
3684
|
+
function eh(a, e) {
|
|
3685
3685
|
e || (e = {});
|
|
3686
3686
|
var A = {}, n = [];
|
|
3687
|
-
|
|
3687
|
+
To(a, "", A, e);
|
|
3688
3688
|
var t = 0, i = 0;
|
|
3689
3689
|
for (var s in A) {
|
|
3690
|
-
var o = A[s], r = o[0], c = o[1], g = c.level == 0 ? 0 : 8, l = As(s), h = l.length, u = c.comment, B = u && As(u), E = B && B.length,
|
|
3690
|
+
var o = A[s], r = o[0], c = o[1], g = c.level == 0 ? 0 : 8, l = As(s), h = l.length, u = c.comment, B = u && As(u), E = B && B.length, f = Ei(c.extra);
|
|
3691
3691
|
h > 65535 && Ze(11);
|
|
3692
3692
|
var p = g ? Uc(r, c) : r, b = p.length, d = vc();
|
|
3693
|
-
d.p(r), n.push(
|
|
3693
|
+
d.p(r), n.push(Mo(c, {
|
|
3694
3694
|
size: r.length,
|
|
3695
3695
|
crc: d.d(),
|
|
3696
3696
|
c: p,
|
|
@@ -3699,7 +3699,7 @@ function Ah(a, e) {
|
|
|
3699
3699
|
u: h != s.length || B && u.length != E,
|
|
3700
3700
|
o: t,
|
|
3701
3701
|
compression: g
|
|
3702
|
-
})), t += 30 + h +
|
|
3702
|
+
})), t += 30 + h + f + b, i += 76 + 2 * (h + f) + (E || 0) + b;
|
|
3703
3703
|
}
|
|
3704
3704
|
for (var m = new Me(i + 22), w = t, R = i - t, F = 0; F < n.length; ++F) {
|
|
3705
3705
|
var l = n[F];
|
|
@@ -3709,53 +3709,53 @@ function Ah(a, e) {
|
|
|
3709
3709
|
}
|
|
3710
3710
|
return Hc(m, t, n.length, R, w), m;
|
|
3711
3711
|
}
|
|
3712
|
-
class
|
|
3712
|
+
class Ah extends Ws {
|
|
3713
3713
|
constructor(e) {
|
|
3714
3714
|
super(e), this.type = eA;
|
|
3715
3715
|
}
|
|
3716
3716
|
parse(e) {
|
|
3717
3717
|
const x = Math.pow(2.7182818, 2.2);
|
|
3718
|
-
function N(I,
|
|
3718
|
+
function N(I, C) {
|
|
3719
3719
|
let Q = 0;
|
|
3720
3720
|
for (let M = 0; M < 65536; ++M)
|
|
3721
|
-
(M == 0 || I[M >> 3] & 1 << (M & 7)) && (
|
|
3721
|
+
(M == 0 || I[M >> 3] & 1 << (M & 7)) && (C[Q++] = M);
|
|
3722
3722
|
const D = Q - 1;
|
|
3723
|
-
for (; Q < 65536; )
|
|
3723
|
+
for (; Q < 65536; ) C[Q++] = 0;
|
|
3724
3724
|
return D;
|
|
3725
3725
|
}
|
|
3726
3726
|
function _(I) {
|
|
3727
|
-
for (let
|
|
3728
|
-
I[
|
|
3727
|
+
for (let C = 0; C < 16384; C++)
|
|
3728
|
+
I[C] = {}, I[C].len = 0, I[C].lit = 0, I[C].p = null;
|
|
3729
3729
|
}
|
|
3730
3730
|
const P = { l: 0, c: 0, lc: 0 };
|
|
3731
|
-
function X(I,
|
|
3731
|
+
function X(I, C, Q, D, M) {
|
|
3732
3732
|
for (; Q < I; )
|
|
3733
|
-
|
|
3734
|
-
Q -= I, P.l =
|
|
3733
|
+
C = C << 8 | vi(D, M), Q += 8;
|
|
3734
|
+
Q -= I, P.l = C >> Q & (1 << I) - 1, P.c = C, P.lc = Q;
|
|
3735
3735
|
}
|
|
3736
3736
|
const U = new Array(59);
|
|
3737
3737
|
function q(I) {
|
|
3738
3738
|
for (let Q = 0; Q <= 58; ++Q) U[Q] = 0;
|
|
3739
3739
|
for (let Q = 0; Q < 65537; ++Q) U[I[Q]] += 1;
|
|
3740
|
-
let
|
|
3740
|
+
let C = 0;
|
|
3741
3741
|
for (let Q = 58; Q > 0; --Q) {
|
|
3742
|
-
const D =
|
|
3743
|
-
U[Q] =
|
|
3742
|
+
const D = C + U[Q] >> 1;
|
|
3743
|
+
U[Q] = C, C = D;
|
|
3744
3744
|
}
|
|
3745
3745
|
for (let Q = 0; Q < 65537; ++Q) {
|
|
3746
3746
|
const D = I[Q];
|
|
3747
3747
|
D > 0 && (I[Q] = D | U[D]++ << 6);
|
|
3748
3748
|
}
|
|
3749
3749
|
}
|
|
3750
|
-
function H(I,
|
|
3751
|
-
const k =
|
|
3750
|
+
function H(I, C, Q, D, M, S) {
|
|
3751
|
+
const k = C;
|
|
3752
3752
|
let O = 0, v = 0;
|
|
3753
3753
|
for (; D <= M; D++) {
|
|
3754
|
-
if (k.value -
|
|
3754
|
+
if (k.value - C.value > Q) return !1;
|
|
3755
3755
|
X(6, O, v, I, k);
|
|
3756
3756
|
const G = P.l;
|
|
3757
3757
|
if (O = P.c, v = P.lc, S[D] = G, G == 63) {
|
|
3758
|
-
if (k.value -
|
|
3758
|
+
if (k.value - C.value > Q)
|
|
3759
3759
|
throw new Error("Something wrong with hufUnpackEncTable");
|
|
3760
3760
|
X(8, O, v, I, k);
|
|
3761
3761
|
let T = P.l + 6;
|
|
@@ -3779,9 +3779,9 @@ class th extends Ws {
|
|
|
3779
3779
|
function oe(I) {
|
|
3780
3780
|
return I >> 6;
|
|
3781
3781
|
}
|
|
3782
|
-
function Ae(I,
|
|
3783
|
-
for (;
|
|
3784
|
-
const M = oe(I[
|
|
3782
|
+
function Ae(I, C, Q, D) {
|
|
3783
|
+
for (; C <= Q; C++) {
|
|
3784
|
+
const M = oe(I[C]), S = $(I[C]);
|
|
3785
3785
|
if (M >> S)
|
|
3786
3786
|
throw new Error("Invalid table entry");
|
|
3787
3787
|
if (S > 14) {
|
|
@@ -3795,26 +3795,26 @@ class th extends Ws {
|
|
|
3795
3795
|
k.p[v] = O[v];
|
|
3796
3796
|
} else
|
|
3797
3797
|
k.p = new Array(1);
|
|
3798
|
-
k.p[k.lit - 1] =
|
|
3798
|
+
k.p[k.lit - 1] = C;
|
|
3799
3799
|
} else if (S) {
|
|
3800
3800
|
let k = 0;
|
|
3801
3801
|
for (let O = 1 << 14 - S; O > 0; O--) {
|
|
3802
3802
|
const v = D[(M << 14 - S) + k];
|
|
3803
3803
|
if (v.len || v.p)
|
|
3804
3804
|
throw new Error("Invalid table entry");
|
|
3805
|
-
v.len = S, v.lit =
|
|
3805
|
+
v.len = S, v.lit = C, k++;
|
|
3806
3806
|
}
|
|
3807
3807
|
}
|
|
3808
3808
|
}
|
|
3809
3809
|
return !0;
|
|
3810
3810
|
}
|
|
3811
3811
|
const re = { c: 0, lc: 0 };
|
|
3812
|
-
function te(I,
|
|
3813
|
-
I = I << 8 | vi(Q, D),
|
|
3812
|
+
function te(I, C, Q, D) {
|
|
3813
|
+
I = I << 8 | vi(Q, D), C += 8, re.c = I, re.lc = C;
|
|
3814
3814
|
}
|
|
3815
3815
|
const Z = { c: 0, lc: 0 };
|
|
3816
|
-
function ne(I,
|
|
3817
|
-
if (I ==
|
|
3816
|
+
function ne(I, C, Q, D, M, S, k, O, v) {
|
|
3817
|
+
if (I == C) {
|
|
3818
3818
|
D < 8 && (te(Q, D, M, S), Q = re.c, D = re.lc), D -= 8;
|
|
3819
3819
|
let G = Q >> D;
|
|
3820
3820
|
if (G = new Uint8Array([G])[0], O.value + G > v)
|
|
@@ -3832,36 +3832,36 @@ class th extends Ws {
|
|
|
3832
3832
|
return I & 65535;
|
|
3833
3833
|
}
|
|
3834
3834
|
function Ie(I) {
|
|
3835
|
-
const
|
|
3836
|
-
return
|
|
3835
|
+
const C = le(I);
|
|
3836
|
+
return C > 32767 ? C - 65536 : C;
|
|
3837
3837
|
}
|
|
3838
3838
|
const ie = { a: 0, b: 0 };
|
|
3839
|
-
function Oe(I,
|
|
3840
|
-
const Q = Ie(I), M = Ie(
|
|
3839
|
+
function Oe(I, C) {
|
|
3840
|
+
const Q = Ie(I), M = Ie(C), S = Q + (M & 1) + (M >> 1), k = S, O = S - M;
|
|
3841
3841
|
ie.a = k, ie.b = O;
|
|
3842
3842
|
}
|
|
3843
|
-
function ke(I,
|
|
3844
|
-
const Q = le(I), D = le(
|
|
3843
|
+
function ke(I, C) {
|
|
3844
|
+
const Q = le(I), D = le(C), M = Q - (D >> 1) & 65535, S = D + M - 32768 & 65535;
|
|
3845
3845
|
ie.a = S, ie.b = M;
|
|
3846
3846
|
}
|
|
3847
|
-
function PA(I,
|
|
3847
|
+
function PA(I, C, Q, D, M, S, k) {
|
|
3848
3848
|
const O = k < 16384, v = Q > M ? M : Q;
|
|
3849
3849
|
let G = 1, T, K;
|
|
3850
3850
|
for (; G <= v; ) G <<= 1;
|
|
3851
3851
|
for (G >>= 1, T = G, G >>= 1; G >= 1; ) {
|
|
3852
3852
|
K = 0;
|
|
3853
3853
|
const V = K + S * (M - T), J = S * G, ee = S * T, j = D * G, W = D * T;
|
|
3854
|
-
let se,
|
|
3854
|
+
let se, fe, ye, nA;
|
|
3855
3855
|
for (; K <= V; K += ee) {
|
|
3856
3856
|
let Qe = K;
|
|
3857
3857
|
const he = K + D * (Q - T);
|
|
3858
3858
|
for (; Qe <= he; Qe += W) {
|
|
3859
3859
|
const Te = Qe + j, lA = Qe + J, ve = lA + j;
|
|
3860
|
-
O ? (Oe(I[Qe +
|
|
3860
|
+
O ? (Oe(I[Qe + C], I[lA + C]), se = ie.a, ye = ie.b, Oe(I[Te + C], I[ve + C]), fe = ie.a, nA = ie.b, Oe(se, fe), I[Qe + C] = ie.a, I[Te + C] = ie.b, Oe(ye, nA), I[lA + C] = ie.a, I[ve + C] = ie.b) : (ke(I[Qe + C], I[lA + C]), se = ie.a, ye = ie.b, ke(I[Te + C], I[ve + C]), fe = ie.a, nA = ie.b, ke(se, fe), I[Qe + C] = ie.a, I[Te + C] = ie.b, ke(ye, nA), I[lA + C] = ie.a, I[ve + C] = ie.b);
|
|
3861
3861
|
}
|
|
3862
3862
|
if (Q & G) {
|
|
3863
3863
|
const Te = Qe + J;
|
|
3864
|
-
O ? Oe(I[Qe +
|
|
3864
|
+
O ? Oe(I[Qe + C], I[Te + C]) : ke(I[Qe + C], I[Te + C]), se = ie.a, I[Te + C] = ie.b, I[Qe + C] = se;
|
|
3865
3865
|
}
|
|
3866
3866
|
}
|
|
3867
3867
|
if (M & G) {
|
|
@@ -3869,19 +3869,19 @@ class th extends Ws {
|
|
|
3869
3869
|
const he = K + D * (Q - T);
|
|
3870
3870
|
for (; Qe <= he; Qe += W) {
|
|
3871
3871
|
const Te = Qe + j;
|
|
3872
|
-
O ? Oe(I[Qe +
|
|
3872
|
+
O ? Oe(I[Qe + C], I[Te + C]) : ke(I[Qe + C], I[Te + C]), se = ie.a, I[Te + C] = ie.b, I[Qe + C] = se;
|
|
3873
3873
|
}
|
|
3874
3874
|
}
|
|
3875
3875
|
T = G, G >>= 1;
|
|
3876
3876
|
}
|
|
3877
3877
|
return K;
|
|
3878
3878
|
}
|
|
3879
|
-
function Ve(I,
|
|
3879
|
+
function Ve(I, C, Q, D, M, S, k, O, v) {
|
|
3880
3880
|
let G = 0, T = 0;
|
|
3881
3881
|
const K = k, V = Math.trunc(D.value + (M + 7) / 8);
|
|
3882
3882
|
for (; D.value < V; )
|
|
3883
3883
|
for (te(G, T, Q, D), G = re.c, T = re.lc; T >= 14; ) {
|
|
3884
|
-
const ee = G >> T - 14 & 16383, j =
|
|
3884
|
+
const ee = G >> T - 14 & 16383, j = C[ee];
|
|
3885
3885
|
if (j.len)
|
|
3886
3886
|
T -= j.len, ne(j.lit, S, G, T, Q, D, O, v, K), G = Z.c, T = Z.lc;
|
|
3887
3887
|
else {
|
|
@@ -3903,7 +3903,7 @@ class th extends Ws {
|
|
|
3903
3903
|
}
|
|
3904
3904
|
const J = 8 - M & 7;
|
|
3905
3905
|
for (G >>= J, T -= J; T > 0; ) {
|
|
3906
|
-
const ee =
|
|
3906
|
+
const ee = C[G << 14 - T & 16383];
|
|
3907
3907
|
if (ee.len)
|
|
3908
3908
|
T -= ee.len, ne(ee.lit, S, G, T, Q, D, O, v, K), G = Z.c, T = Z.lc;
|
|
3909
3909
|
else
|
|
@@ -3911,10 +3911,10 @@ class th extends Ws {
|
|
|
3911
3911
|
}
|
|
3912
3912
|
return !0;
|
|
3913
3913
|
}
|
|
3914
|
-
function rA(I,
|
|
3915
|
-
const k = { value: 0 }, O = Q.value, v = gA(
|
|
3914
|
+
function rA(I, C, Q, D, M, S) {
|
|
3915
|
+
const k = { value: 0 }, O = Q.value, v = gA(C, Q), G = gA(C, Q);
|
|
3916
3916
|
Q.value += 4;
|
|
3917
|
-
const T = gA(
|
|
3917
|
+
const T = gA(C, Q);
|
|
3918
3918
|
if (Q.value += 4, v < 0 || v >= 65537 || G < 0 || G >= 65537)
|
|
3919
3919
|
throw new Error("Something wrong with HUF_ENCSIZE");
|
|
3920
3920
|
const K = new Array(65537), V = new Array(16384);
|
|
@@ -3924,37 +3924,37 @@ class th extends Ws {
|
|
|
3924
3924
|
throw new Error("Something wrong with hufUncompress");
|
|
3925
3925
|
Ae(K, v, G, V), Ve(K, V, I, Q, T, G, S, M, k);
|
|
3926
3926
|
}
|
|
3927
|
-
function VA(I,
|
|
3927
|
+
function VA(I, C, Q) {
|
|
3928
3928
|
for (let D = 0; D < Q; ++D)
|
|
3929
|
-
|
|
3929
|
+
C[D] = I[C[D]];
|
|
3930
3930
|
}
|
|
3931
3931
|
function RA(I) {
|
|
3932
|
-
for (let
|
|
3933
|
-
const Q = I[
|
|
3934
|
-
I[
|
|
3932
|
+
for (let C = 1; C < I.length; C++) {
|
|
3933
|
+
const Q = I[C - 1] + I[C] - 128;
|
|
3934
|
+
I[C] = Q;
|
|
3935
3935
|
}
|
|
3936
3936
|
}
|
|
3937
|
-
function st(I,
|
|
3937
|
+
function st(I, C) {
|
|
3938
3938
|
let Q = 0, D = Math.floor((I.length + 1) / 2), M = 0;
|
|
3939
3939
|
const S = I.length - 1;
|
|
3940
|
-
for (; !(M > S || (
|
|
3941
|
-
|
|
3940
|
+
for (; !(M > S || (C[M++] = I[Q++], M > S)); )
|
|
3941
|
+
C[M++] = I[D++];
|
|
3942
3942
|
}
|
|
3943
3943
|
function Gi(I) {
|
|
3944
|
-
let
|
|
3944
|
+
let C = I.byteLength;
|
|
3945
3945
|
const Q = new Array();
|
|
3946
3946
|
let D = 0;
|
|
3947
3947
|
const M = new DataView(I);
|
|
3948
|
-
for (;
|
|
3948
|
+
for (; C > 0; ) {
|
|
3949
3949
|
const S = M.getInt8(D++);
|
|
3950
3950
|
if (S < 0) {
|
|
3951
3951
|
const k = -S;
|
|
3952
|
-
|
|
3952
|
+
C -= k + 1;
|
|
3953
3953
|
for (let O = 0; O < k; O++)
|
|
3954
3954
|
Q.push(M.getUint8(D++));
|
|
3955
3955
|
} else {
|
|
3956
3956
|
const k = S;
|
|
3957
|
-
|
|
3957
|
+
C -= 2;
|
|
3958
3958
|
const O = M.getUint8(D++);
|
|
3959
3959
|
for (let v = 0; v < k + 1; v++)
|
|
3960
3960
|
Q.push(O);
|
|
@@ -3962,38 +3962,38 @@ class th extends Ws {
|
|
|
3962
3962
|
}
|
|
3963
3963
|
return Q;
|
|
3964
3964
|
}
|
|
3965
|
-
function
|
|
3965
|
+
function zo(I, C, Q, D, M, S) {
|
|
3966
3966
|
let k = new DataView(S.buffer);
|
|
3967
|
-
const O = Q[I.idx[0]].width, v = Q[I.idx[0]].height, G = 3, T = Math.floor(O / 8), K = Math.ceil(O / 8), V = Math.ceil(v / 8), J = O - (K - 1) * 8, ee = v - (V - 1) * 8, j = { value: 0 }, W = new Array(G), se = new Array(G),
|
|
3967
|
+
const O = Q[I.idx[0]].width, v = Q[I.idx[0]].height, G = 3, T = Math.floor(O / 8), K = Math.ceil(O / 8), V = Math.ceil(v / 8), J = O - (K - 1) * 8, ee = v - (V - 1) * 8, j = { value: 0 }, W = new Array(G), se = new Array(G), fe = new Array(G), ye = new Array(G), nA = new Array(G);
|
|
3968
3968
|
for (let he = 0; he < G; ++he)
|
|
3969
|
-
nA[he] =
|
|
3969
|
+
nA[he] = C[I.idx[he]], W[he] = he < 1 ? 0 : W[he - 1] + K * V, se[he] = new Float32Array(64), fe[he] = new Uint16Array(64), ye[he] = new Uint16Array(K * 64);
|
|
3970
3970
|
for (let he = 0; he < V; ++he) {
|
|
3971
3971
|
let Te = 8;
|
|
3972
3972
|
he == V - 1 && (Te = ee);
|
|
3973
3973
|
let lA = 8;
|
|
3974
|
-
for (let
|
|
3975
|
-
|
|
3974
|
+
for (let Ce = 0; Ce < K; ++Ce) {
|
|
3975
|
+
Ce == K - 1 && (lA = J);
|
|
3976
3976
|
for (let de = 0; de < G; ++de)
|
|
3977
|
-
|
|
3978
|
-
|
|
3977
|
+
fe[de].fill(0), fe[de][0] = M[W[de]++], Vo(j, D, fe[de]), Xo(fe[de], se[de]), Wo(se[de]);
|
|
3978
|
+
Zo(se);
|
|
3979
3979
|
for (let de = 0; de < G; ++de)
|
|
3980
|
-
|
|
3980
|
+
$o(se[de], ye[de], Ce * 64);
|
|
3981
3981
|
}
|
|
3982
3982
|
let ve = 0;
|
|
3983
|
-
for (let
|
|
3984
|
-
const de = Q[I.idx[
|
|
3983
|
+
for (let Ce = 0; Ce < G; ++Ce) {
|
|
3984
|
+
const de = Q[I.idx[Ce]].type;
|
|
3985
3985
|
for (let MA = 8 * he; MA < 8 * he + Te; ++MA) {
|
|
3986
|
-
ve = nA[
|
|
3986
|
+
ve = nA[Ce][MA];
|
|
3987
3987
|
for (let Et = 0; Et < T; ++Et) {
|
|
3988
3988
|
const dA = Et * 64 + (MA & 7) * 8;
|
|
3989
|
-
k.setUint16(ve + 0 * de, ye[
|
|
3989
|
+
k.setUint16(ve + 0 * de, ye[Ce][dA + 0], !0), k.setUint16(ve + 2 * de, ye[Ce][dA + 1], !0), k.setUint16(ve + 4 * de, ye[Ce][dA + 2], !0), k.setUint16(ve + 6 * de, ye[Ce][dA + 3], !0), k.setUint16(ve + 8 * de, ye[Ce][dA + 4], !0), k.setUint16(ve + 10 * de, ye[Ce][dA + 5], !0), k.setUint16(ve + 12 * de, ye[Ce][dA + 6], !0), k.setUint16(ve + 14 * de, ye[Ce][dA + 7], !0), ve += 16 * de;
|
|
3990
3990
|
}
|
|
3991
3991
|
}
|
|
3992
3992
|
if (T != K)
|
|
3993
3993
|
for (let MA = 8 * he; MA < 8 * he + Te; ++MA) {
|
|
3994
|
-
const Et = nA[
|
|
3994
|
+
const Et = nA[Ce][MA] + 8 * T * 2 * de, dA = T * 64 + (MA & 7) * 8;
|
|
3995
3995
|
for (let Ot = 0; Ot < lA; ++Ot)
|
|
3996
|
-
k.setUint16(Et + Ot * 2 * de, ye[
|
|
3996
|
+
k.setUint16(Et + Ot * 2 * de, ye[Ce][dA + Ot], !0);
|
|
3997
3997
|
}
|
|
3998
3998
|
}
|
|
3999
3999
|
}
|
|
@@ -4005,68 +4005,68 @@ class th extends Ws {
|
|
|
4005
4005
|
if (Q[he].type == 2)
|
|
4006
4006
|
for (let lA = 0; lA < v; ++lA) {
|
|
4007
4007
|
const ve = nA[he][lA];
|
|
4008
|
-
for (let
|
|
4009
|
-
Qe[
|
|
4010
|
-
for (let
|
|
4011
|
-
k.setFloat32(ve +
|
|
4008
|
+
for (let Ce = 0; Ce < O; ++Ce)
|
|
4009
|
+
Qe[Ce] = k.getUint16(ve + Ce * 2 * Te, !0);
|
|
4010
|
+
for (let Ce = 0; Ce < O; ++Ce)
|
|
4011
|
+
k.setFloat32(ve + Ce * 2 * Te, z(Qe[Ce]), !0);
|
|
4012
4012
|
}
|
|
4013
4013
|
}
|
|
4014
4014
|
}
|
|
4015
|
-
function
|
|
4015
|
+
function Vo(I, C, Q) {
|
|
4016
4016
|
let D, M = 1;
|
|
4017
4017
|
for (; M < 64; )
|
|
4018
|
-
D =
|
|
4018
|
+
D = C[I.value], D == 65280 ? M = 64 : D >> 8 == 255 ? M += D & 255 : (Q[M] = D, M++), I.value++;
|
|
4019
4019
|
}
|
|
4020
|
-
function
|
|
4021
|
-
|
|
4020
|
+
function Xo(I, C) {
|
|
4021
|
+
C[0] = z(I[0]), C[1] = z(I[1]), C[2] = z(I[5]), C[3] = z(I[6]), C[4] = z(I[14]), C[5] = z(I[15]), C[6] = z(I[27]), C[7] = z(I[28]), C[8] = z(I[2]), C[9] = z(I[4]), C[10] = z(I[7]), C[11] = z(I[13]), C[12] = z(I[16]), C[13] = z(I[26]), C[14] = z(I[29]), C[15] = z(I[42]), C[16] = z(I[3]), C[17] = z(I[8]), C[18] = z(I[12]), C[19] = z(I[17]), C[20] = z(I[25]), C[21] = z(I[30]), C[22] = z(I[41]), C[23] = z(I[43]), C[24] = z(I[9]), C[25] = z(I[11]), C[26] = z(I[18]), C[27] = z(I[24]), C[28] = z(I[31]), C[29] = z(I[40]), C[30] = z(I[44]), C[31] = z(I[53]), C[32] = z(I[10]), C[33] = z(I[19]), C[34] = z(I[23]), C[35] = z(I[32]), C[36] = z(I[39]), C[37] = z(I[45]), C[38] = z(I[52]), C[39] = z(I[54]), C[40] = z(I[20]), C[41] = z(I[22]), C[42] = z(I[33]), C[43] = z(I[38]), C[44] = z(I[46]), C[45] = z(I[51]), C[46] = z(I[55]), C[47] = z(I[60]), C[48] = z(I[21]), C[49] = z(I[34]), C[50] = z(I[37]), C[51] = z(I[47]), C[52] = z(I[50]), C[53] = z(I[56]), C[54] = z(I[59]), C[55] = z(I[61]), C[56] = z(I[35]), C[57] = z(I[36]), C[58] = z(I[48]), C[59] = z(I[49]), C[60] = z(I[57]), C[61] = z(I[58]), C[62] = z(I[62]), C[63] = z(I[63]);
|
|
4022
4022
|
}
|
|
4023
|
-
function
|
|
4024
|
-
const
|
|
4023
|
+
function Wo(I) {
|
|
4024
|
+
const C = 0.5 * Math.cos(0.7853975), Q = 0.5 * Math.cos(3.14159 / 16), D = 0.5 * Math.cos(3.14159 / 8), M = 0.5 * Math.cos(3 * 3.14159 / 16), S = 0.5 * Math.cos(5 * 3.14159 / 16), k = 0.5 * Math.cos(3 * 3.14159 / 8), O = 0.5 * Math.cos(7 * 3.14159 / 16), v = new Array(4), G = new Array(4), T = new Array(4), K = new Array(4);
|
|
4025
4025
|
for (let V = 0; V < 8; ++V) {
|
|
4026
4026
|
const J = V * 8;
|
|
4027
|
-
v[0] = D * I[J + 2], v[1] = k * I[J + 2], v[2] = D * I[J + 6], v[3] = k * I[J + 6], G[0] = Q * I[J + 1] + M * I[J + 3] + S * I[J + 5] + O * I[J + 7], G[1] = M * I[J + 1] - O * I[J + 3] - Q * I[J + 5] - S * I[J + 7], G[2] = S * I[J + 1] - Q * I[J + 3] + O * I[J + 5] + M * I[J + 7], G[3] = O * I[J + 1] - S * I[J + 3] + M * I[J + 5] - Q * I[J + 7], T[0] =
|
|
4027
|
+
v[0] = D * I[J + 2], v[1] = k * I[J + 2], v[2] = D * I[J + 6], v[3] = k * I[J + 6], G[0] = Q * I[J + 1] + M * I[J + 3] + S * I[J + 5] + O * I[J + 7], G[1] = M * I[J + 1] - O * I[J + 3] - Q * I[J + 5] - S * I[J + 7], G[2] = S * I[J + 1] - Q * I[J + 3] + O * I[J + 5] + M * I[J + 7], G[3] = O * I[J + 1] - S * I[J + 3] + M * I[J + 5] - Q * I[J + 7], T[0] = C * (I[J + 0] + I[J + 4]), T[3] = C * (I[J + 0] - I[J + 4]), T[1] = v[0] + v[3], T[2] = v[1] - v[2], K[0] = T[0] + T[1], K[1] = T[3] + T[2], K[2] = T[3] - T[2], K[3] = T[0] - T[1], I[J + 0] = K[0] + G[0], I[J + 1] = K[1] + G[1], I[J + 2] = K[2] + G[2], I[J + 3] = K[3] + G[3], I[J + 4] = K[3] - G[3], I[J + 5] = K[2] - G[2], I[J + 6] = K[1] - G[1], I[J + 7] = K[0] - G[0];
|
|
4028
4028
|
}
|
|
4029
4029
|
for (let V = 0; V < 8; ++V)
|
|
4030
|
-
v[0] = D * I[16 + V], v[1] = k * I[16 + V], v[2] = D * I[48 + V], v[3] = k * I[48 + V], G[0] = Q * I[8 + V] + M * I[24 + V] + S * I[40 + V] + O * I[56 + V], G[1] = M * I[8 + V] - O * I[24 + V] - Q * I[40 + V] - S * I[56 + V], G[2] = S * I[8 + V] - Q * I[24 + V] + O * I[40 + V] + M * I[56 + V], G[3] = O * I[8 + V] - S * I[24 + V] + M * I[40 + V] - Q * I[56 + V], T[0] =
|
|
4030
|
+
v[0] = D * I[16 + V], v[1] = k * I[16 + V], v[2] = D * I[48 + V], v[3] = k * I[48 + V], G[0] = Q * I[8 + V] + M * I[24 + V] + S * I[40 + V] + O * I[56 + V], G[1] = M * I[8 + V] - O * I[24 + V] - Q * I[40 + V] - S * I[56 + V], G[2] = S * I[8 + V] - Q * I[24 + V] + O * I[40 + V] + M * I[56 + V], G[3] = O * I[8 + V] - S * I[24 + V] + M * I[40 + V] - Q * I[56 + V], T[0] = C * (I[V] + I[32 + V]), T[3] = C * (I[V] - I[32 + V]), T[1] = v[0] + v[3], T[2] = v[1] - v[2], K[0] = T[0] + T[1], K[1] = T[3] + T[2], K[2] = T[3] - T[2], K[3] = T[0] - T[1], I[0 + V] = K[0] + G[0], I[8 + V] = K[1] + G[1], I[16 + V] = K[2] + G[2], I[24 + V] = K[3] + G[3], I[32 + V] = K[3] - G[3], I[40 + V] = K[2] - G[2], I[48 + V] = K[1] - G[1], I[56 + V] = K[0] - G[0];
|
|
4031
4031
|
}
|
|
4032
|
-
function
|
|
4033
|
-
for (let
|
|
4034
|
-
const Q = I[0][
|
|
4035
|
-
I[0][
|
|
4032
|
+
function Zo(I) {
|
|
4033
|
+
for (let C = 0; C < 64; ++C) {
|
|
4034
|
+
const Q = I[0][C], D = I[1][C], M = I[2][C];
|
|
4035
|
+
I[0][C] = Q + 1.5747 * M, I[1][C] = Q - 0.1873 * D - 0.4682 * M, I[2][C] = Q + 1.8556 * D;
|
|
4036
4036
|
}
|
|
4037
4037
|
}
|
|
4038
|
-
function
|
|
4038
|
+
function $o(I, C, Q) {
|
|
4039
4039
|
for (let D = 0; D < 64; ++D)
|
|
4040
|
-
|
|
4040
|
+
C[Q + D] = lt.toHalfFloat(ea(I[D]));
|
|
4041
4041
|
}
|
|
4042
|
-
function
|
|
4042
|
+
function ea(I) {
|
|
4043
4043
|
return I <= 1 ? Math.sign(I) * Math.pow(Math.abs(I), 2.2) : Math.sign(I) * Math.pow(x, Math.abs(I) - 1);
|
|
4044
4044
|
}
|
|
4045
4045
|
function dn(I) {
|
|
4046
4046
|
return new DataView(I.array.buffer, I.offset.value, I.size);
|
|
4047
4047
|
}
|
|
4048
|
-
function
|
|
4049
|
-
const
|
|
4048
|
+
function Aa(I) {
|
|
4049
|
+
const C = I.viewer.buffer.slice(I.offset.value, I.offset.value + I.size), Q = new Uint8Array(Gi(C)), D = new Uint8Array(Q.length);
|
|
4050
4050
|
return RA(Q), st(Q, D), new DataView(D.buffer);
|
|
4051
4051
|
}
|
|
4052
4052
|
function Qn(I) {
|
|
4053
|
-
const
|
|
4053
|
+
const C = I.array.slice(I.offset.value, I.offset.value + I.size), Q = Rt(C), D = new Uint8Array(Q.length);
|
|
4054
4054
|
return RA(Q), st(Q, D), new DataView(D.buffer);
|
|
4055
4055
|
}
|
|
4056
|
-
function
|
|
4057
|
-
const
|
|
4056
|
+
function ta(I) {
|
|
4057
|
+
const C = I.viewer, Q = { value: I.offset.value }, D = new Uint16Array(I.columns * I.lines * (I.inputChannels.length * I.type)), M = new Uint8Array(8192);
|
|
4058
4058
|
let S = 0;
|
|
4059
4059
|
const k = new Array(I.inputChannels.length);
|
|
4060
4060
|
for (let ee = 0, j = I.inputChannels.length; ee < j; ee++)
|
|
4061
4061
|
k[ee] = {}, k[ee].start = S, k[ee].end = k[ee].start, k[ee].nx = I.columns, k[ee].ny = I.lines, k[ee].size = I.type, S += k[ee].nx * k[ee].ny * k[ee].size;
|
|
4062
|
-
const O = Bt(
|
|
4062
|
+
const O = Bt(C, Q), v = Bt(C, Q);
|
|
4063
4063
|
if (v >= 8192)
|
|
4064
4064
|
throw new Error("Something is wrong with PIZ_COMPRESSION BITMAP_SIZE");
|
|
4065
4065
|
if (O <= v)
|
|
4066
4066
|
for (let ee = 0; ee < v - O + 1; ee++)
|
|
4067
|
-
M[ee + O] = HA(
|
|
4068
|
-
const G = new Uint16Array(65536), T = N(M, G), K = gA(
|
|
4069
|
-
rA(I.array,
|
|
4067
|
+
M[ee + O] = HA(C, Q);
|
|
4068
|
+
const G = new Uint16Array(65536), T = N(M, G), K = gA(C, Q);
|
|
4069
|
+
rA(I.array, C, Q, K, D, S);
|
|
4070
4070
|
for (let ee = 0; ee < I.inputChannels.length; ++ee) {
|
|
4071
4071
|
const j = k[ee];
|
|
4072
4072
|
for (let W = 0; W < k[ee].size; ++W)
|
|
@@ -4085,13 +4085,13 @@ class th extends Ws {
|
|
|
4085
4085
|
const J = new Uint8Array(D.buffer.byteLength);
|
|
4086
4086
|
for (let ee = 0; ee < I.lines; ee++)
|
|
4087
4087
|
for (let j = 0; j < I.inputChannels.length; j++) {
|
|
4088
|
-
const W = k[j], se = W.nx * W.size,
|
|
4089
|
-
J.set(
|
|
4088
|
+
const W = k[j], se = W.nx * W.size, fe = new Uint8Array(D.buffer, W.end * 2, se * 2);
|
|
4089
|
+
J.set(fe, V), V += se * 2, W.end += se;
|
|
4090
4090
|
}
|
|
4091
4091
|
return new DataView(J.buffer);
|
|
4092
4092
|
}
|
|
4093
|
-
function
|
|
4094
|
-
const
|
|
4093
|
+
function na(I) {
|
|
4094
|
+
const C = I.array.slice(I.offset.value, I.offset.value + I.size), Q = Rt(C), D = I.inputChannels.length * I.lines * I.columns * I.totalBytes, M = new ArrayBuffer(D), S = new DataView(M);
|
|
4095
4095
|
let k = 0, O = 0;
|
|
4096
4096
|
const v = new Array(4);
|
|
4097
4097
|
for (let G = 0; G < I.lines; G++)
|
|
@@ -4117,25 +4117,25 @@ class th extends Ws {
|
|
|
4117
4117
|
return S;
|
|
4118
4118
|
}
|
|
4119
4119
|
function ki(I) {
|
|
4120
|
-
const
|
|
4121
|
-
version: tA(
|
|
4122
|
-
unknownUncompressedSize: tA(
|
|
4123
|
-
unknownCompressedSize: tA(
|
|
4124
|
-
acCompressedSize: tA(
|
|
4125
|
-
dcCompressedSize: tA(
|
|
4126
|
-
rleCompressedSize: tA(
|
|
4127
|
-
rleUncompressedSize: tA(
|
|
4128
|
-
rleRawSize: tA(
|
|
4129
|
-
totalAcUncompressedCount: tA(
|
|
4130
|
-
totalDcUncompressedCount: tA(
|
|
4131
|
-
acCompression: tA(
|
|
4120
|
+
const C = I.viewer, Q = { value: I.offset.value }, D = new Uint8Array(I.columns * I.lines * (I.inputChannels.length * I.type * 2)), M = {
|
|
4121
|
+
version: tA(C, Q),
|
|
4122
|
+
unknownUncompressedSize: tA(C, Q),
|
|
4123
|
+
unknownCompressedSize: tA(C, Q),
|
|
4124
|
+
acCompressedSize: tA(C, Q),
|
|
4125
|
+
dcCompressedSize: tA(C, Q),
|
|
4126
|
+
rleCompressedSize: tA(C, Q),
|
|
4127
|
+
rleUncompressedSize: tA(C, Q),
|
|
4128
|
+
rleRawSize: tA(C, Q),
|
|
4129
|
+
totalAcUncompressedCount: tA(C, Q),
|
|
4130
|
+
totalDcUncompressedCount: tA(C, Q),
|
|
4131
|
+
acCompression: tA(C, Q)
|
|
4132
4132
|
};
|
|
4133
4133
|
if (M.version < 2)
|
|
4134
4134
|
throw new Error("EXRLoader.parse: " + XA.compression + " version " + M.version + " is unsupported");
|
|
4135
4135
|
const S = new Array();
|
|
4136
|
-
let k = Bt(
|
|
4136
|
+
let k = Bt(C, Q) - 2;
|
|
4137
4137
|
for (; k > 0; ) {
|
|
4138
|
-
const j = Ht(
|
|
4138
|
+
const j = Ht(C.buffer, Q), W = HA(C, Q), se = W >> 2 & 3, fe = (W >> 4) - 1, ye = new Int8Array([fe])[0], nA = HA(C, Q);
|
|
4139
4139
|
S.push({
|
|
4140
4140
|
name: j,
|
|
4141
4141
|
index: ye,
|
|
@@ -4154,15 +4154,15 @@ class th extends Ws {
|
|
|
4154
4154
|
for (let j = 0; j < I.inputChannels.length; ++j) {
|
|
4155
4155
|
const W = v[j];
|
|
4156
4156
|
for (let se = 0; se < S.length; ++se) {
|
|
4157
|
-
const
|
|
4158
|
-
W.name ==
|
|
4157
|
+
const fe = S[se];
|
|
4158
|
+
W.name == fe.name && (W.compression = fe.compression, fe.index >= 0 && (G.idx[fe.index] = j), W.offset = j);
|
|
4159
4159
|
}
|
|
4160
4160
|
}
|
|
4161
4161
|
let T, K, V;
|
|
4162
4162
|
if (M.acCompressedSize > 0)
|
|
4163
4163
|
switch (M.acCompression) {
|
|
4164
4164
|
case 0:
|
|
4165
|
-
T = new Uint16Array(M.totalAcUncompressedCount), rA(I.array,
|
|
4165
|
+
T = new Uint16Array(M.totalAcUncompressedCount), rA(I.array, C, Q, M.acCompressedSize, T, M.totalAcUncompressedCount);
|
|
4166
4166
|
break;
|
|
4167
4167
|
case 1:
|
|
4168
4168
|
const j = I.array.slice(Q.value, Q.value + M.totalAcUncompressedCount), W = Rt(j);
|
|
@@ -4188,19 +4188,19 @@ class th extends Ws {
|
|
|
4188
4188
|
for (let j = 0; j < I.lines; ++j)
|
|
4189
4189
|
for (let W = 0; W < v.length; ++W)
|
|
4190
4190
|
ee[W].push(J), J += v[W].width * I.type * 2;
|
|
4191
|
-
|
|
4191
|
+
zo(G, ee, v, T, K, D);
|
|
4192
4192
|
for (let j = 0; j < v.length; ++j) {
|
|
4193
4193
|
const W = v[j];
|
|
4194
4194
|
if (!W.decoded)
|
|
4195
4195
|
switch (W.compression) {
|
|
4196
4196
|
case 2:
|
|
4197
|
-
let se = 0,
|
|
4197
|
+
let se = 0, fe = 0;
|
|
4198
4198
|
for (let ye = 0; ye < I.lines; ++ye) {
|
|
4199
4199
|
let nA = ee[j][se];
|
|
4200
4200
|
for (let Qe = 0; Qe < W.width; ++Qe) {
|
|
4201
4201
|
for (let he = 0; he < 2 * W.type; ++he)
|
|
4202
|
-
D[nA++] = V[
|
|
4203
|
-
|
|
4202
|
+
D[nA++] = V[fe + he * W.width * W.height];
|
|
4203
|
+
fe++;
|
|
4204
4204
|
}
|
|
4205
4205
|
se++;
|
|
4206
4206
|
}
|
|
@@ -4212,72 +4212,72 @@ class th extends Ws {
|
|
|
4212
4212
|
}
|
|
4213
4213
|
return new DataView(D.buffer);
|
|
4214
4214
|
}
|
|
4215
|
-
function Ht(I,
|
|
4215
|
+
function Ht(I, C) {
|
|
4216
4216
|
const Q = new Uint8Array(I);
|
|
4217
4217
|
let D = 0;
|
|
4218
|
-
for (; Q[
|
|
4218
|
+
for (; Q[C.value + D] != 0; )
|
|
4219
4219
|
D += 1;
|
|
4220
4220
|
const M = new TextDecoder().decode(
|
|
4221
|
-
Q.slice(
|
|
4221
|
+
Q.slice(C.value, C.value + D)
|
|
4222
4222
|
);
|
|
4223
|
-
return
|
|
4223
|
+
return C.value = C.value + D + 1, M;
|
|
4224
4224
|
}
|
|
4225
|
-
function
|
|
4225
|
+
function ia(I, C, Q) {
|
|
4226
4226
|
const D = new TextDecoder().decode(
|
|
4227
|
-
new Uint8Array(I).slice(
|
|
4227
|
+
new Uint8Array(I).slice(C.value, C.value + Q)
|
|
4228
4228
|
);
|
|
4229
|
-
return
|
|
4229
|
+
return C.value = C.value + Q, D;
|
|
4230
4230
|
}
|
|
4231
|
-
function
|
|
4232
|
-
const Q = cA(I,
|
|
4231
|
+
function sa(I, C) {
|
|
4232
|
+
const Q = cA(I, C), D = gA(I, C);
|
|
4233
4233
|
return [Q, D];
|
|
4234
4234
|
}
|
|
4235
|
-
function
|
|
4236
|
-
const Q = gA(I,
|
|
4235
|
+
function oa(I, C) {
|
|
4236
|
+
const Q = gA(I, C), D = gA(I, C);
|
|
4237
4237
|
return [Q, D];
|
|
4238
4238
|
}
|
|
4239
|
-
function cA(I,
|
|
4240
|
-
const Q = I.getInt32(
|
|
4241
|
-
return
|
|
4239
|
+
function cA(I, C) {
|
|
4240
|
+
const Q = I.getInt32(C.value, !0);
|
|
4241
|
+
return C.value = C.value + 4, Q;
|
|
4242
4242
|
}
|
|
4243
|
-
function gA(I,
|
|
4244
|
-
const Q = I.getUint32(
|
|
4245
|
-
return
|
|
4243
|
+
function gA(I, C) {
|
|
4244
|
+
const Q = I.getUint32(C.value, !0);
|
|
4245
|
+
return C.value = C.value + 4, Q;
|
|
4246
4246
|
}
|
|
4247
|
-
function vi(I,
|
|
4248
|
-
const Q = I[
|
|
4249
|
-
return
|
|
4247
|
+
function vi(I, C) {
|
|
4248
|
+
const Q = I[C.value];
|
|
4249
|
+
return C.value = C.value + 1, Q;
|
|
4250
4250
|
}
|
|
4251
|
-
function HA(I,
|
|
4252
|
-
const Q = I.getUint8(
|
|
4253
|
-
return
|
|
4251
|
+
function HA(I, C) {
|
|
4252
|
+
const Q = I.getUint8(C.value);
|
|
4253
|
+
return C.value = C.value + 1, Q;
|
|
4254
4254
|
}
|
|
4255
|
-
const tA = function(I,
|
|
4255
|
+
const tA = function(I, C) {
|
|
4256
4256
|
let Q;
|
|
4257
|
-
return "getBigInt64" in DataView.prototype ? Q = Number(I.getBigInt64(
|
|
4257
|
+
return "getBigInt64" in DataView.prototype ? Q = Number(I.getBigInt64(C.value, !0)) : Q = I.getUint32(C.value + 4, !0) + Number(I.getUint32(C.value, !0) << 32), C.value += 8, Q;
|
|
4258
4258
|
};
|
|
4259
|
-
function qe(I,
|
|
4260
|
-
const Q = I.getFloat32(
|
|
4261
|
-
return
|
|
4259
|
+
function qe(I, C) {
|
|
4260
|
+
const Q = I.getFloat32(C.value, !0);
|
|
4261
|
+
return C.value += 4, Q;
|
|
4262
4262
|
}
|
|
4263
|
-
function
|
|
4264
|
-
return lt.toHalfFloat(qe(I,
|
|
4263
|
+
function aa(I, C) {
|
|
4264
|
+
return lt.toHalfFloat(qe(I, C));
|
|
4265
4265
|
}
|
|
4266
4266
|
function z(I) {
|
|
4267
|
-
const
|
|
4268
|
-
return (I >> 15 ? -1 : 1) * (
|
|
4267
|
+
const C = (I & 31744) >> 10, Q = I & 1023;
|
|
4268
|
+
return (I >> 15 ? -1 : 1) * (C ? C === 31 ? Q ? NaN : 1 / 0 : Math.pow(2, C - 15) * (1 + Q / 1024) : 6103515625e-14 * (Q / 1024));
|
|
4269
4269
|
}
|
|
4270
|
-
function Bt(I,
|
|
4271
|
-
const Q = I.getUint16(
|
|
4272
|
-
return
|
|
4270
|
+
function Bt(I, C) {
|
|
4271
|
+
const Q = I.getUint16(C.value, !0);
|
|
4272
|
+
return C.value += 2, Q;
|
|
4273
4273
|
}
|
|
4274
|
-
function
|
|
4275
|
-
return z(Bt(I,
|
|
4274
|
+
function ra(I, C) {
|
|
4275
|
+
return z(Bt(I, C));
|
|
4276
4276
|
}
|
|
4277
|
-
function
|
|
4277
|
+
function ca(I, C, Q, D) {
|
|
4278
4278
|
const M = Q.value, S = [];
|
|
4279
4279
|
for (; Q.value < M + D - 1; ) {
|
|
4280
|
-
const k = Ht(
|
|
4280
|
+
const k = Ht(C, Q), O = cA(I, Q), v = HA(I, Q);
|
|
4281
4281
|
Q.value += 3;
|
|
4282
4282
|
const G = cA(I, Q), T = cA(I, Q);
|
|
4283
4283
|
S.push({
|
|
@@ -4290,11 +4290,11 @@ class th extends Ws {
|
|
|
4290
4290
|
}
|
|
4291
4291
|
return Q.value += 1, S;
|
|
4292
4292
|
}
|
|
4293
|
-
function
|
|
4294
|
-
const Q = qe(I,
|
|
4293
|
+
function ga(I, C) {
|
|
4294
|
+
const Q = qe(I, C), D = qe(I, C), M = qe(I, C), S = qe(I, C), k = qe(I, C), O = qe(I, C), v = qe(I, C), G = qe(I, C);
|
|
4295
4295
|
return { redX: Q, redY: D, greenX: M, greenY: S, blueX: k, blueY: O, whiteX: v, whiteY: G };
|
|
4296
4296
|
}
|
|
4297
|
-
function
|
|
4297
|
+
function la(I, C) {
|
|
4298
4298
|
const Q = [
|
|
4299
4299
|
"NO_COMPRESSION",
|
|
4300
4300
|
"RLE_COMPRESSION",
|
|
@@ -4306,29 +4306,29 @@ class th extends Ws {
|
|
|
4306
4306
|
"B44A_COMPRESSION",
|
|
4307
4307
|
"DWAA_COMPRESSION",
|
|
4308
4308
|
"DWAB_COMPRESSION"
|
|
4309
|
-
], D = HA(I,
|
|
4309
|
+
], D = HA(I, C);
|
|
4310
4310
|
return Q[D];
|
|
4311
4311
|
}
|
|
4312
|
-
function
|
|
4313
|
-
const Q = cA(I,
|
|
4312
|
+
function ha(I, C) {
|
|
4313
|
+
const Q = cA(I, C), D = cA(I, C), M = cA(I, C), S = cA(I, C);
|
|
4314
4314
|
return { xMin: Q, yMin: D, xMax: M, yMax: S };
|
|
4315
4315
|
}
|
|
4316
|
-
function
|
|
4316
|
+
function Ia(I, C) {
|
|
4317
4317
|
const Q = [
|
|
4318
4318
|
"INCREASING_Y",
|
|
4319
4319
|
"DECREASING_Y",
|
|
4320
4320
|
"RANDOM_Y"
|
|
4321
|
-
], D = HA(I,
|
|
4321
|
+
], D = HA(I, C);
|
|
4322
4322
|
return Q[D];
|
|
4323
4323
|
}
|
|
4324
|
-
function
|
|
4324
|
+
function ua(I, C) {
|
|
4325
4325
|
const Q = [
|
|
4326
4326
|
"ENVMAP_LATLONG",
|
|
4327
4327
|
"ENVMAP_CUBE"
|
|
4328
|
-
], D = HA(I,
|
|
4328
|
+
], D = HA(I, C);
|
|
4329
4329
|
return Q[D];
|
|
4330
4330
|
}
|
|
4331
|
-
function
|
|
4331
|
+
function Ba(I, C) {
|
|
4332
4332
|
const Q = [
|
|
4333
4333
|
"ONE_LEVEL",
|
|
4334
4334
|
"MIPMAP_LEVELS",
|
|
@@ -4336,7 +4336,7 @@ class th extends Ws {
|
|
|
4336
4336
|
], D = [
|
|
4337
4337
|
"ROUND_DOWN",
|
|
4338
4338
|
"ROUND_UP"
|
|
4339
|
-
], M = gA(I,
|
|
4339
|
+
], M = gA(I, C), S = gA(I, C), k = HA(I, C);
|
|
4340
4340
|
return {
|
|
4341
4341
|
xSize: M,
|
|
4342
4342
|
ySize: S,
|
|
@@ -4344,85 +4344,85 @@ class th extends Ws {
|
|
|
4344
4344
|
roundingMode: D[k >> 4]
|
|
4345
4345
|
};
|
|
4346
4346
|
}
|
|
4347
|
-
function
|
|
4348
|
-
const Q = qe(I,
|
|
4347
|
+
function Ea(I, C) {
|
|
4348
|
+
const Q = qe(I, C), D = qe(I, C);
|
|
4349
4349
|
return [Q, D];
|
|
4350
4350
|
}
|
|
4351
|
-
function Ca(I,
|
|
4352
|
-
const Q = qe(I,
|
|
4351
|
+
function Ca(I, C) {
|
|
4352
|
+
const Q = qe(I, C), D = qe(I, C), M = qe(I, C);
|
|
4353
4353
|
return [Q, D, M];
|
|
4354
4354
|
}
|
|
4355
|
-
function
|
|
4355
|
+
function fa(I, C, Q, D, M) {
|
|
4356
4356
|
if (D === "string" || D === "stringvector" || D === "iccProfile")
|
|
4357
|
-
return
|
|
4357
|
+
return ia(C, Q, M);
|
|
4358
4358
|
if (D === "chlist")
|
|
4359
|
-
return
|
|
4359
|
+
return ca(I, C, Q, M);
|
|
4360
4360
|
if (D === "chromaticities")
|
|
4361
|
-
return
|
|
4361
|
+
return ga(I, Q);
|
|
4362
4362
|
if (D === "compression")
|
|
4363
|
-
return
|
|
4363
|
+
return la(I, Q);
|
|
4364
4364
|
if (D === "box2i")
|
|
4365
|
-
return
|
|
4365
|
+
return ha(I, Q);
|
|
4366
4366
|
if (D === "envmap")
|
|
4367
|
-
return
|
|
4367
|
+
return ua(I, Q);
|
|
4368
4368
|
if (D === "tiledesc")
|
|
4369
|
-
return
|
|
4369
|
+
return Ba(I, Q);
|
|
4370
4370
|
if (D === "lineOrder")
|
|
4371
|
-
return
|
|
4371
|
+
return Ia(I, Q);
|
|
4372
4372
|
if (D === "float")
|
|
4373
4373
|
return qe(I, Q);
|
|
4374
4374
|
if (D === "v2f")
|
|
4375
|
-
return
|
|
4375
|
+
return Ea(I, Q);
|
|
4376
4376
|
if (D === "v3f")
|
|
4377
4377
|
return Ca(I, Q);
|
|
4378
4378
|
if (D === "int")
|
|
4379
4379
|
return cA(I, Q);
|
|
4380
4380
|
if (D === "rational")
|
|
4381
|
-
return
|
|
4381
|
+
return sa(I, Q);
|
|
4382
4382
|
if (D === "timecode")
|
|
4383
|
-
return
|
|
4383
|
+
return oa(I, Q);
|
|
4384
4384
|
if (D === "preview")
|
|
4385
4385
|
return Q.value += M, "skipped";
|
|
4386
4386
|
Q.value += M;
|
|
4387
4387
|
}
|
|
4388
|
-
function
|
|
4388
|
+
function pa(I, C) {
|
|
4389
4389
|
const Q = Math.log2(I);
|
|
4390
|
-
return
|
|
4390
|
+
return C == "ROUND_DOWN" ? Math.floor(Q) : Math.ceil(Q);
|
|
4391
4391
|
}
|
|
4392
|
-
function
|
|
4392
|
+
function da(I, C, Q) {
|
|
4393
4393
|
let D = 0;
|
|
4394
4394
|
switch (I.levelMode) {
|
|
4395
4395
|
case "ONE_LEVEL":
|
|
4396
4396
|
D = 1;
|
|
4397
4397
|
break;
|
|
4398
4398
|
case "MIPMAP_LEVELS":
|
|
4399
|
-
D =
|
|
4399
|
+
D = pa(Math.max(C, Q), I.roundingMode) + 1;
|
|
4400
4400
|
break;
|
|
4401
4401
|
case "RIPMAP_LEVELS":
|
|
4402
4402
|
throw new Error("THREE.EXRLoader: RIPMAP_LEVELS tiles currently unsupported.");
|
|
4403
4403
|
}
|
|
4404
4404
|
return D;
|
|
4405
4405
|
}
|
|
4406
|
-
function Li(I,
|
|
4406
|
+
function Li(I, C, Q, D) {
|
|
4407
4407
|
const M = new Array(I);
|
|
4408
4408
|
for (let S = 0; S < I; S++) {
|
|
4409
4409
|
const k = 1 << S;
|
|
4410
|
-
let O =
|
|
4411
|
-
D == "ROUND_UP" && O * k <
|
|
4410
|
+
let O = C / k | 0;
|
|
4411
|
+
D == "ROUND_UP" && O * k < C && (O += 1);
|
|
4412
4412
|
const v = Math.max(O, 1);
|
|
4413
4413
|
M[S] = (v + Q - 1) / Q | 0;
|
|
4414
4414
|
}
|
|
4415
4415
|
return M;
|
|
4416
4416
|
}
|
|
4417
|
-
function
|
|
4418
|
-
const I = this,
|
|
4417
|
+
function Qa() {
|
|
4418
|
+
const I = this, C = I.offset, Q = { value: 0 };
|
|
4419
4419
|
for (let D = 0; D < I.tileCount; D++) {
|
|
4420
|
-
const M = cA(I.viewer,
|
|
4421
|
-
|
|
4420
|
+
const M = cA(I.viewer, C), S = cA(I.viewer, C);
|
|
4421
|
+
C.value += 8, I.size = gA(I.viewer, C);
|
|
4422
4422
|
const k = M * I.blockWidth, O = S * I.blockHeight;
|
|
4423
4423
|
I.columns = k + I.blockWidth > I.width ? I.width - k : I.blockWidth, I.lines = O + I.blockHeight > I.height ? I.height - O : I.blockHeight;
|
|
4424
4424
|
const v = I.columns * I.totalBytes, T = I.size < I.lines * v ? I.uncompress(I) : dn(I);
|
|
4425
|
-
|
|
4425
|
+
C.value += I.size;
|
|
4426
4426
|
for (let K = 0; K < I.lines; K++) {
|
|
4427
4427
|
const V = K * I.columns * I.totalBytes;
|
|
4428
4428
|
for (let J = 0; J < I.inputChannels.length; J++) {
|
|
@@ -4430,21 +4430,21 @@ class th extends Ws {
|
|
|
4430
4430
|
if (W === void 0) continue;
|
|
4431
4431
|
Q.value = V + j;
|
|
4432
4432
|
const se = (I.height - (1 + O + K)) * I.outLineWidth;
|
|
4433
|
-
for (let
|
|
4434
|
-
const ye = se + (
|
|
4433
|
+
for (let fe = 0; fe < I.columns; fe++) {
|
|
4434
|
+
const ye = se + (fe + k) * I.outputChannels + W;
|
|
4435
4435
|
I.byteArray[ye] = I.getter(T, Q);
|
|
4436
4436
|
}
|
|
4437
4437
|
}
|
|
4438
4438
|
}
|
|
4439
4439
|
}
|
|
4440
4440
|
}
|
|
4441
|
-
function
|
|
4442
|
-
const I = this,
|
|
4441
|
+
function ma() {
|
|
4442
|
+
const I = this, C = I.offset, Q = { value: 0 };
|
|
4443
4443
|
for (let D = 0; D < I.height / I.blockHeight; D++) {
|
|
4444
|
-
const M = cA(I.viewer,
|
|
4445
|
-
I.size = gA(I.viewer,
|
|
4444
|
+
const M = cA(I.viewer, C) - XA.dataWindow.yMin;
|
|
4445
|
+
I.size = gA(I.viewer, C), I.lines = M + I.blockHeight > I.height ? I.height - M : I.blockHeight;
|
|
4446
4446
|
const S = I.columns * I.totalBytes, O = I.size < I.lines * S ? I.uncompress(I) : dn(I);
|
|
4447
|
-
|
|
4447
|
+
C.value += I.size;
|
|
4448
4448
|
for (let v = 0; v < I.blockHeight; v++) {
|
|
4449
4449
|
const G = D * I.blockHeight, T = v + I.scanOrder(G);
|
|
4450
4450
|
if (T >= I.height) continue;
|
|
@@ -4454,15 +4454,15 @@ class th extends Ws {
|
|
|
4454
4454
|
if (W !== void 0) {
|
|
4455
4455
|
Q.value = K + j;
|
|
4456
4456
|
for (let se = 0; se < I.columns; se++) {
|
|
4457
|
-
const
|
|
4458
|
-
I.byteArray[
|
|
4457
|
+
const fe = V + se * I.outputChannels + W;
|
|
4458
|
+
I.byteArray[fe] = I.getter(O, Q);
|
|
4459
4459
|
}
|
|
4460
4460
|
}
|
|
4461
4461
|
}
|
|
4462
4462
|
}
|
|
4463
4463
|
}
|
|
4464
4464
|
}
|
|
4465
|
-
function
|
|
4465
|
+
function ba(I, C, Q) {
|
|
4466
4466
|
const D = {};
|
|
4467
4467
|
if (I.getUint32(0, !0) != 20000630)
|
|
4468
4468
|
throw new Error("THREE.EXRLoader: Provided file doesn't appear to be in OpenEXR format.");
|
|
@@ -4476,11 +4476,11 @@ class th extends Ws {
|
|
|
4476
4476
|
}, Q.value = 8;
|
|
4477
4477
|
let S = !0;
|
|
4478
4478
|
for (; S; ) {
|
|
4479
|
-
const k = Ht(
|
|
4479
|
+
const k = Ht(C, Q);
|
|
4480
4480
|
if (k == 0)
|
|
4481
4481
|
S = !1;
|
|
4482
4482
|
else {
|
|
4483
|
-
const O = Ht(
|
|
4483
|
+
const O = Ht(C, Q), v = gA(I, Q), G = fa(I, C, Q, O, v);
|
|
4484
4484
|
G === void 0 ? console.warn(`THREE.EXRLoader: Skipped unknown header attribute type '${O}'.`) : D[k] = G;
|
|
4485
4485
|
}
|
|
4486
4486
|
}
|
|
@@ -4488,10 +4488,10 @@ class th extends Ws {
|
|
|
4488
4488
|
throw console.error("THREE.EXRHeader:", D), new Error("THREE.EXRLoader: Provided file is currently unsupported.");
|
|
4489
4489
|
return D;
|
|
4490
4490
|
}
|
|
4491
|
-
function
|
|
4491
|
+
function wa(I, C, Q, D, M) {
|
|
4492
4492
|
const S = {
|
|
4493
4493
|
size: 0,
|
|
4494
|
-
viewer:
|
|
4494
|
+
viewer: C,
|
|
4495
4495
|
array: Q,
|
|
4496
4496
|
offset: D,
|
|
4497
4497
|
width: I.dataWindow.xMax - I.dataWindow.xMin + 1,
|
|
@@ -4513,7 +4513,7 @@ class th extends Ws {
|
|
|
4513
4513
|
S.blockHeight = 1, S.uncompress = dn;
|
|
4514
4514
|
break;
|
|
4515
4515
|
case "RLE_COMPRESSION":
|
|
4516
|
-
S.blockHeight = 1, S.uncompress =
|
|
4516
|
+
S.blockHeight = 1, S.uncompress = Aa;
|
|
4517
4517
|
break;
|
|
4518
4518
|
case "ZIPS_COMPRESSION":
|
|
4519
4519
|
S.blockHeight = 1, S.uncompress = Qn;
|
|
@@ -4522,10 +4522,10 @@ class th extends Ws {
|
|
|
4522
4522
|
S.blockHeight = 16, S.uncompress = Qn;
|
|
4523
4523
|
break;
|
|
4524
4524
|
case "PIZ_COMPRESSION":
|
|
4525
|
-
S.blockHeight = 32, S.uncompress =
|
|
4525
|
+
S.blockHeight = 32, S.uncompress = ta;
|
|
4526
4526
|
break;
|
|
4527
4527
|
case "PXR24_COMPRESSION":
|
|
4528
|
-
S.blockHeight = 16, S.uncompress =
|
|
4528
|
+
S.blockHeight = 16, S.uncompress = na;
|
|
4529
4529
|
break;
|
|
4530
4530
|
case "DWAA_COMPRESSION":
|
|
4531
4531
|
S.blockHeight = 32, S.uncompress = ki;
|
|
@@ -4556,7 +4556,7 @@ class th extends Ws {
|
|
|
4556
4556
|
if (S.type == 1)
|
|
4557
4557
|
switch (M) {
|
|
4558
4558
|
case pA:
|
|
4559
|
-
S.getter =
|
|
4559
|
+
S.getter = ra;
|
|
4560
4560
|
break;
|
|
4561
4561
|
case eA:
|
|
4562
4562
|
S.getter = Bt;
|
|
@@ -4568,7 +4568,7 @@ class th extends Ws {
|
|
|
4568
4568
|
S.getter = qe;
|
|
4569
4569
|
break;
|
|
4570
4570
|
case eA:
|
|
4571
|
-
S.getter =
|
|
4571
|
+
S.getter = aa;
|
|
4572
4572
|
}
|
|
4573
4573
|
else
|
|
4574
4574
|
throw new Error("EXRLoader.parse: unsupported pixelType " + S.type + " for " + I.compression + ".");
|
|
@@ -4590,23 +4590,23 @@ class th extends Ws {
|
|
|
4590
4590
|
S.decodeChannels[T.name] !== void 0 && (S.channelByteOffsets[T.name] = G), G += T.pixelType * 2;
|
|
4591
4591
|
if (S.totalBytes = G, S.outLineWidth = S.width * S.outputChannels, I.lineOrder === "INCREASING_Y" ? S.scanOrder = (T) => T : S.scanOrder = (T) => S.height - 1 - T, S.outputChannels == 4 ? (S.format = jA, S.colorSpace = AA) : (S.format = gt, S.colorSpace = un), I.spec.singleTile) {
|
|
4592
4592
|
S.blockHeight = I.tiles.ySize, S.blockWidth = I.tiles.xSize;
|
|
4593
|
-
const T =
|
|
4593
|
+
const T = da(I.tiles, S.width, S.height), K = Li(T, S.width, I.tiles.xSize, I.tiles.roundingMode), V = Li(T, S.height, I.tiles.ySize, I.tiles.roundingMode);
|
|
4594
4594
|
S.tileCount = K[0] * V[0];
|
|
4595
4595
|
for (let J = 0; J < T; J++)
|
|
4596
4596
|
for (let ee = 0; ee < V[J]; ee++)
|
|
4597
4597
|
for (let j = 0; j < K[J]; j++)
|
|
4598
|
-
tA(
|
|
4599
|
-
S.decode =
|
|
4598
|
+
tA(C, D);
|
|
4599
|
+
S.decode = Qa.bind(S);
|
|
4600
4600
|
} else {
|
|
4601
4601
|
S.blockWidth = S.width;
|
|
4602
4602
|
const T = Math.ceil(S.height / S.blockHeight);
|
|
4603
4603
|
for (let K = 0; K < T; K++)
|
|
4604
|
-
tA(
|
|
4605
|
-
S.decode =
|
|
4604
|
+
tA(C, D);
|
|
4605
|
+
S.decode = ma.bind(S);
|
|
4606
4606
|
}
|
|
4607
4607
|
return S;
|
|
4608
4608
|
}
|
|
4609
|
-
const Ni = { value: 0 }, Ui = new DataView(e),
|
|
4609
|
+
const Ni = { value: 0 }, Ui = new DataView(e), ya = new Uint8Array(e), XA = ba(Ui, e, Ni), ot = wa(XA, Ui, ya, Ni, this.type);
|
|
4610
4610
|
return ot.decode(), {
|
|
4611
4611
|
header: XA,
|
|
4612
4612
|
width: ot.width,
|
|
@@ -4627,7 +4627,7 @@ class th extends Ws {
|
|
|
4627
4627
|
return super.load(e, i, n, t);
|
|
4628
4628
|
}
|
|
4629
4629
|
}
|
|
4630
|
-
class
|
|
4630
|
+
class th extends Ws {
|
|
4631
4631
|
constructor(e) {
|
|
4632
4632
|
super(e), this.type = eA;
|
|
4633
4633
|
}
|
|
@@ -4725,9 +4725,9 @@ class nh extends Ws {
|
|
|
4725
4725
|
}, E = function(y, x, N, _) {
|
|
4726
4726
|
const P = y[x + 3], X = Math.pow(2, P - 128) / 255;
|
|
4727
4727
|
N[_ + 0] = lt.toHalfFloat(Math.min(y[x + 0] * X, 65504)), N[_ + 1] = lt.toHalfFloat(Math.min(y[x + 1] * X, 65504)), N[_ + 2] = lt.toHalfFloat(Math.min(y[x + 2] * X, 65504)), N[_ + 3] = lt.toHalfFloat(1);
|
|
4728
|
-
},
|
|
4729
|
-
|
|
4730
|
-
const p = h(
|
|
4728
|
+
}, f = new Uint8Array(e);
|
|
4729
|
+
f.pos = 0;
|
|
4730
|
+
const p = h(f), b = p.width, d = p.height, m = u(f.subarray(f.pos), b, d);
|
|
4731
4731
|
let w, R, F;
|
|
4732
4732
|
switch (this.type) {
|
|
4733
4733
|
case pA:
|
|
@@ -4778,7 +4778,7 @@ const ZA = new Di(), Ke = new L(), KA = new L(), be = new Se(), ns = {
|
|
|
4778
4778
|
Y: new L(0, 1, 0),
|
|
4779
4779
|
Z: new L(0, 0, 1)
|
|
4780
4780
|
}, vn = { type: "change" }, is = { type: "mouseDown", mode: null }, ss = { type: "mouseUp", mode: null }, os = { type: "objectChange" };
|
|
4781
|
-
class
|
|
4781
|
+
class nh extends Zs {
|
|
4782
4782
|
constructor(e, A = null) {
|
|
4783
4783
|
super(void 0, A);
|
|
4784
4784
|
const n = new jc(this);
|
|
@@ -4800,8 +4800,8 @@ class ih extends Zs {
|
|
|
4800
4800
|
}), s[d] = m, i[d] = m, t[d] = m;
|
|
4801
4801
|
}
|
|
4802
4802
|
o("camera", e), o("object", void 0), o("enabled", !0), o("axis", null), o("mode", "translate"), o("translationSnap", null), o("rotationSnap", null), o("scaleSnap", null), o("space", "world"), o("size", 1), o("dragging", !1), o("showX", !0), o("showY", !0), o("showZ", !0);
|
|
4803
|
-
const r = new L(), c = new L(), g = new Se(), l = new Se(), h = new L(), u = new Se(), B = new L(), E = new L(),
|
|
4804
|
-
o("worldPosition", r), o("worldPositionStart", c), o("worldQuaternion", g), o("worldQuaternionStart", l), o("cameraPosition", h), o("cameraQuaternion", u), o("pointStart", B), o("pointEnd", E), o("rotationAxis",
|
|
4803
|
+
const r = new L(), c = new L(), g = new Se(), l = new Se(), h = new L(), u = new Se(), B = new L(), E = new L(), f = new L(), p = 0, b = new L();
|
|
4804
|
+
o("worldPosition", r), o("worldPositionStart", c), o("worldQuaternion", g), o("worldQuaternionStart", l), o("cameraPosition", h), o("cameraQuaternion", u), o("pointStart", B), o("pointEnd", E), o("rotationAxis", f), o("rotationAngle", p), o("eye", b), this._offset = new L(), this._startNorm = new L(), this._endNorm = new L(), this._cameraScale = new L(), this._parentPosition = new L(), this._parentQuaternion = new Se(), this._parentQuaternionInv = new Se(), this._parentScale = new L(), this._worldScaleStart = new L(), this._worldQuaternionInv = new Se(), this._worldScale = new L(), this._positionStart = new L(), this._quaternionStart = new Se(), this._scaleStart = new L(), this._getPointer = Oc.bind(this), this._onPointerDown = Kc.bind(this), this._onPointerHover = qc.bind(this), this._onPointerMove = Yc.bind(this), this._onPointerUp = Jc.bind(this), A !== null && this.connect();
|
|
4805
4805
|
}
|
|
4806
4806
|
connect() {
|
|
4807
4807
|
this.domElement.addEventListener("pointerdown", this._onPointerDown), this.domElement.addEventListener("pointermove", this._onPointerHover), this.domElement.addEventListener("pointerup", this._onPointerUp), this.domElement.style.touchAction = "none";
|
|
@@ -4986,14 +4986,14 @@ class zc extends SA {
|
|
|
4986
4986
|
B.color.setHex(7895160);
|
|
4987
4987
|
const E = new Xe(0, 0.04, 0.1, 12);
|
|
4988
4988
|
E.translate(0, 0.05, 0);
|
|
4989
|
-
const
|
|
4990
|
-
|
|
4989
|
+
const f = new Ye(0.08, 0.08, 0.08);
|
|
4990
|
+
f.translate(0, 0.04, 0);
|
|
4991
4991
|
const p = new oA();
|
|
4992
4992
|
p.setAttribute("position", new Re([0, 0, 0, 1, 0, 0], 3));
|
|
4993
4993
|
const b = new Xe(75e-4, 75e-4, 0.5, 3);
|
|
4994
4994
|
b.translate(0, 0.25, 0);
|
|
4995
4995
|
function d(q, H) {
|
|
4996
|
-
const $ = new
|
|
4996
|
+
const $ = new Ct(q, 75e-4, 3, 64, H * Math.PI * 2);
|
|
4997
4997
|
return $.rotateY(Math.PI / 2), $.rotateX(Math.PI / 2), $;
|
|
4998
4998
|
}
|
|
4999
4999
|
function m() {
|
|
@@ -5094,35 +5094,35 @@ class zc extends SA {
|
|
|
5094
5094
|
]
|
|
5095
5095
|
}, N = {
|
|
5096
5096
|
XYZE: [
|
|
5097
|
-
[new Y(new
|
|
5097
|
+
[new Y(new fi(0.25, 10, 8), n)]
|
|
5098
5098
|
],
|
|
5099
5099
|
X: [
|
|
5100
|
-
[new Y(new
|
|
5100
|
+
[new Y(new Ct(0.5, 0.1, 4, 24), n), [0, 0, 0], [0, -Math.PI / 2, -Math.PI / 2]]
|
|
5101
5101
|
],
|
|
5102
5102
|
Y: [
|
|
5103
|
-
[new Y(new
|
|
5103
|
+
[new Y(new Ct(0.5, 0.1, 4, 24), n), [0, 0, 0], [Math.PI / 2, 0, 0]]
|
|
5104
5104
|
],
|
|
5105
5105
|
Z: [
|
|
5106
|
-
[new Y(new
|
|
5106
|
+
[new Y(new Ct(0.5, 0.1, 4, 24), n), [0, 0, 0], [0, 0, -Math.PI / 2]]
|
|
5107
5107
|
],
|
|
5108
5108
|
E: [
|
|
5109
|
-
[new Y(new
|
|
5109
|
+
[new Y(new Ct(0.75, 0.1, 2, 24), n)]
|
|
5110
5110
|
]
|
|
5111
5111
|
}, _ = {
|
|
5112
5112
|
X: [
|
|
5113
|
-
[new Y(
|
|
5113
|
+
[new Y(f, i), [0.5, 0, 0], [0, 0, -Math.PI / 2]],
|
|
5114
5114
|
[new Y(b, i), [0, 0, 0], [0, 0, -Math.PI / 2]],
|
|
5115
|
-
[new Y(
|
|
5115
|
+
[new Y(f, i), [-0.5, 0, 0], [0, 0, Math.PI / 2]]
|
|
5116
5116
|
],
|
|
5117
5117
|
Y: [
|
|
5118
|
-
[new Y(
|
|
5118
|
+
[new Y(f, s), [0, 0.5, 0]],
|
|
5119
5119
|
[new Y(b, s)],
|
|
5120
|
-
[new Y(
|
|
5120
|
+
[new Y(f, s), [0, -0.5, 0], [0, 0, Math.PI]]
|
|
5121
5121
|
],
|
|
5122
5122
|
Z: [
|
|
5123
|
-
[new Y(
|
|
5123
|
+
[new Y(f, o), [0, 0, 0.5], [Math.PI / 2, 0, 0]],
|
|
5124
5124
|
[new Y(b, o), [0, 0, 0], [Math.PI / 2, 0, 0]],
|
|
5125
|
-
[new Y(
|
|
5125
|
+
[new Y(f, o), [0, 0, -0.5], [-Math.PI / 2, 0, 0]]
|
|
5126
5126
|
],
|
|
5127
5127
|
XY: [
|
|
5128
5128
|
[new Y(new Ye(0.15, 0.15, 0.01), g), [0.15, 0.15, 0]]
|
|
@@ -5249,7 +5249,7 @@ class Vc extends Y {
|
|
|
5249
5249
|
QA.length() === 0 ? this.quaternion.copy(this.cameraQuaternion) : (cs.lookAt(Ke.set(0, 0, 0), QA, pe), this.quaternion.setFromRotationMatrix(cs)), super.updateMatrixWorld(e);
|
|
5250
5250
|
}
|
|
5251
5251
|
}
|
|
5252
|
-
const gs = { type: "change" }, Ti = { type: "start" },
|
|
5252
|
+
const gs = { type: "change" }, Ti = { type: "start" }, Go = { type: "end" }, Xc = { type: "endMovement" }, jt = new Oa(), ls = new qa(), Wc = Math.cos(70 * we.DEG2RAD), Ge = new L();
|
|
5253
5253
|
new L();
|
|
5254
5254
|
const We = 2 * Math.PI, Ee = {
|
|
5255
5255
|
NONE: -1,
|
|
@@ -5261,7 +5261,7 @@ const We = 2 * Math.PI, Ee = {
|
|
|
5261
5261
|
TOUCH_DOLLY_PAN: 5,
|
|
5262
5262
|
TOUCH_DOLLY_ROTATE: 6
|
|
5263
5263
|
}, $A = 1e-6;
|
|
5264
|
-
let
|
|
5264
|
+
let ih = class extends Zs {
|
|
5265
5265
|
constructor(e, A = null) {
|
|
5266
5266
|
super(e, A), this.state = Ee.NONE, this.enabled = !0, this.target = new L(), this.cursor = new L(), this.minDistance = 0, this.maxDistance = 1 / 0, this.minZoom = 0, this.maxZoom = 1 / 0, this.minTargetRadius = 0, this.maxTargetRadius = 1 / 0, this.minPolarAngle = 0, this.maxPolarAngle = Math.PI, this.minAzimuthAngle = -1 / 0, this.maxAzimuthAngle = 1 / 0, this.enableDamping = !1, this.dampingFactor = 0.05, this.enableZoom = !0, this.zoomSpeed = 1, this.enableRotate = !0, this.rotateSpeed = 1, this.enablePan = !0, this.panSpeed = 1, this.screenSpacePanning = !0, this.keyPanSpeed = 7, this.zoomToCursor = !1, this.autoRotate = !1, this.autoRotateSpeed = 2, this.keys = { LEFT: "ArrowLeft", UP: "ArrowUp", RIGHT: "ArrowRight", BOTTOM: "ArrowDown" }, this.mouseButtons = { LEFT: It.ROTATE, MIDDLE: It.DOLLY, RIGHT: It.PAN }, this.touches = { ONE: ht.ROTATE, TWO: ht.DOLLY_PAN }, this.target0 = this.target.clone(), this.position0 = this.object.position.clone(), this.zoom0 = this.object.zoom, this._domElementKeyEvents = null, this._lastPosition = new L(), this._lastQuaternion = new Se(), this._lastTargetPosition = new L(), this._quat = new Se().setFromUnitVectors(e.up, new L(0, 1, 0)), this._quatInverse = this._quat.clone().invert(), this._spherical = new Oi(), this._sphericalDelta = new Oi(), this._scale = 1, this._currentScale = 1, this._panOffset = new L(), this._rotateStart = new Le(), this._rotateEnd = new Le(), this._rotateDelta = new Le(), this._panStart = new Le(), this._panEnd = new Le(), this._panDelta = new Le(), this._dollyStart = new Le(), this._dollyEnd = new Le(), this._dollyDelta = new Le(), this._dollyDirection = new L(), this._mouse = new Le(), this._performCursorZoom = !1, this._pointers = [], this._pointerPositions = {}, this._controlActive = !1, this._lastIsDamping = !1, this._isDamping = !1, this._onPointerMove = $c.bind(this), this._onPointerDown = Zc.bind(this), this._onPointerUp = eg.bind(this), this._onContextMenu = ag.bind(this), this._onMouseWheel = ng.bind(this), this._onKeyDown = ig.bind(this), this._onTouchStart = sg.bind(this), this._onTouchMove = og.bind(this), this._onMouseDown = Ag.bind(this), this._onMouseMove = tg.bind(this), this._interceptControlDown = rg.bind(this), this._interceptControlUp = cg.bind(this), this.domElement !== null && this.connect(), this.update();
|
|
5267
5267
|
}
|
|
@@ -5529,7 +5529,7 @@ function $c(a) {
|
|
|
5529
5529
|
function eg(a) {
|
|
5530
5530
|
switch (this._removePointer(a), this._pointers.length) {
|
|
5531
5531
|
case 0:
|
|
5532
|
-
this.domElement.releasePointerCapture(a.pointerId), this.domElement.removeEventListener("pointermove", this._onPointerMove), window.removeEventListener("pointerup", this._onPointerUp), this.dispatchEvent(
|
|
5532
|
+
this.domElement.releasePointerCapture(a.pointerId), this.domElement.removeEventListener("pointermove", this._onPointerMove), window.removeEventListener("pointerup", this._onPointerUp), this.dispatchEvent(Go), this.state = Ee.NONE;
|
|
5533
5533
|
break;
|
|
5534
5534
|
case 1:
|
|
5535
5535
|
const e = this._pointers[0], A = this._pointerPositions[e];
|
|
@@ -5597,7 +5597,7 @@ function tg(a) {
|
|
|
5597
5597
|
}
|
|
5598
5598
|
}
|
|
5599
5599
|
function ng(a) {
|
|
5600
|
-
this.enabled === !1 || this.enableZoom === !1 || this.state !== Ee.NONE || (a.preventDefault(), this.dispatchEvent(Ti), this._handleMouseWheel(this._customWheelEvent(a)), this.dispatchEvent(
|
|
5600
|
+
this.enabled === !1 || this.enableZoom === !1 || this.state !== Ee.NONE || (a.preventDefault(), this.dispatchEvent(Ti), this._handleMouseWheel(this._customWheelEvent(a)), this.dispatchEvent(Go));
|
|
5601
5601
|
}
|
|
5602
5602
|
function ig(a) {
|
|
5603
5603
|
this.enabled === !1 || this.enablePan === !1 || this._handleKeyDown(a);
|
|
@@ -5668,7 +5668,7 @@ function rg(a) {
|
|
|
5668
5668
|
function cg(a) {
|
|
5669
5669
|
a.key === "Control" && (this._controlActive = !1, this.domElement.getRootNode().removeEventListener("keyup", this._interceptControlUp, { passive: !0, capture: !0 }));
|
|
5670
5670
|
}
|
|
5671
|
-
class
|
|
5671
|
+
class oh extends EA {
|
|
5672
5672
|
constructor(e, A = 1, n = 16, t = 2) {
|
|
5673
5673
|
const i = new oA(), s = n + t * 2, o = new Float32Array((s * 3 + 3) * 3);
|
|
5674
5674
|
i.setAttribute("position", new Ne(o, 3));
|
|
@@ -5680,9 +5680,9 @@ class ah extends EA {
|
|
|
5680
5680
|
let c = 0, g = 0, l, h;
|
|
5681
5681
|
const u = this.geometry, B = u.attributes.position;
|
|
5682
5682
|
u.clearGroups();
|
|
5683
|
-
function E(
|
|
5684
|
-
const m = (p -
|
|
5685
|
-
for (B.setXYZ(c, 0, 0, 0), g++, l =
|
|
5683
|
+
function E(f, p, b, d) {
|
|
5684
|
+
const m = (p - f) / b;
|
|
5685
|
+
for (B.setXYZ(c, 0, 0, 0), g++, l = f; l < p; l += m)
|
|
5686
5686
|
h = c + g, B.setXYZ(h, Math.sin(l) * A, 0, Math.cos(l) * A), B.setXYZ(h + 1, Math.sin(Math.min(l + m, p)) * A, 0, Math.cos(Math.min(l + m, p)) * A), B.setXYZ(h + 2, 0, 0, 0), g += 3;
|
|
5687
5687
|
u.addGroup(c, g, d), c += g, g = 0;
|
|
5688
5688
|
}
|
|
@@ -5692,7 +5692,7 @@ class ah extends EA {
|
|
|
5692
5692
|
this.geometry.dispose(), this.material[0].dispose(), this.material[1].dispose();
|
|
5693
5693
|
}
|
|
5694
5694
|
}
|
|
5695
|
-
const
|
|
5695
|
+
const ah = {
|
|
5696
5696
|
name: "HorizontalBlurShader",
|
|
5697
5697
|
uniforms: {
|
|
5698
5698
|
tDiffuse: { value: null },
|
|
@@ -5738,7 +5738,7 @@ const rh = {
|
|
|
5738
5738
|
|
|
5739
5739
|
}`
|
|
5740
5740
|
)
|
|
5741
|
-
},
|
|
5741
|
+
}, rh = {
|
|
5742
5742
|
name: "VerticalBlurShader",
|
|
5743
5743
|
uniforms: {
|
|
5744
5744
|
tDiffuse: { value: null },
|
|
@@ -5788,7 +5788,7 @@ const rh = {
|
|
|
5788
5788
|
let yt, Nn, at, zt;
|
|
5789
5789
|
function Un(a, e = 1 / 0, A = null) {
|
|
5790
5790
|
Nn || (Nn = new Si(2, 2, 1, 1)), at || (at = new $s({
|
|
5791
|
-
uniforms: { blitTexture: new
|
|
5791
|
+
uniforms: { blitTexture: new Ka(a) },
|
|
5792
5792
|
vertexShader: `
|
|
5793
5793
|
varying vec2 vUv;
|
|
5794
5794
|
void main(){
|
|
@@ -5810,7 +5810,7 @@ function Un(a, e = 1 / 0, A = null) {
|
|
|
5810
5810
|
}`
|
|
5811
5811
|
})), at.uniforms.blitTexture.value = a, at.defines.IS_SRGB = a.colorSpace == Be, at.needsUpdate = !0, zt || (zt = new Y(Nn, at), zt.frustumCulled = !1);
|
|
5812
5812
|
const n = new En(), t = new si();
|
|
5813
|
-
t.add(zt), A === null && (A = yt = new
|
|
5813
|
+
t.add(zt), A === null && (A = yt = new Ya({ antialias: !1 }));
|
|
5814
5814
|
const i = Math.min(a.image.width, e), s = Math.min(a.image.height, e);
|
|
5815
5815
|
A.setSize(i, s), A.clear(), A.render(t, n);
|
|
5816
5816
|
const o = document.createElement("canvas"), r = o.getContext("2d");
|
|
@@ -5846,7 +5846,7 @@ const hs = {
|
|
|
5846
5846
|
"unsigned short"
|
|
5847
5847
|
]
|
|
5848
5848
|
};
|
|
5849
|
-
class
|
|
5849
|
+
class ko {
|
|
5850
5850
|
constructor() {
|
|
5851
5851
|
this.pluginCallbacks = [], this.register(function(e) {
|
|
5852
5852
|
return new pg(e);
|
|
@@ -5892,7 +5892,7 @@ class vo {
|
|
|
5892
5892
|
* @param {Object} options options
|
|
5893
5893
|
*/
|
|
5894
5894
|
parse(e, A, n, t) {
|
|
5895
|
-
const i = new
|
|
5895
|
+
const i = new fg(), s = [];
|
|
5896
5896
|
for (let o = 0, r = this.pluginCallbacks.length; o < r; o++)
|
|
5897
5897
|
s.push(this.pluginCallbacks[o](i));
|
|
5898
5898
|
i.setPlugins(s), i.write(e, A, t).catch(n);
|
|
@@ -5955,7 +5955,7 @@ function Bg(a) {
|
|
|
5955
5955
|
function Eg(a) {
|
|
5956
5956
|
return Gt(a.elements, [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]);
|
|
5957
5957
|
}
|
|
5958
|
-
function
|
|
5958
|
+
function Cg(a, e, A) {
|
|
5959
5959
|
const n = {
|
|
5960
5960
|
min: new Array(a.itemSize).fill(Number.POSITIVE_INFINITY),
|
|
5961
5961
|
max: new Array(a.itemSize).fill(Number.NEGATIVE_INFINITY)
|
|
@@ -5967,11 +5967,11 @@ function fg(a, e, A) {
|
|
|
5967
5967
|
}
|
|
5968
5968
|
return n;
|
|
5969
5969
|
}
|
|
5970
|
-
function
|
|
5970
|
+
function vo(a) {
|
|
5971
5971
|
return Math.ceil(a / 4) * 4;
|
|
5972
5972
|
}
|
|
5973
5973
|
function Pn(a, e = 0) {
|
|
5974
|
-
const A =
|
|
5974
|
+
const A = vo(a.byteLength);
|
|
5975
5975
|
if (A !== a.byteLength) {
|
|
5976
5976
|
const n = new Uint8Array(A);
|
|
5977
5977
|
if (n.set(new Uint8Array(a)), e !== 0)
|
|
@@ -5984,7 +5984,7 @@ function Pn(a, e = 0) {
|
|
|
5984
5984
|
function Es() {
|
|
5985
5985
|
return typeof document > "u" && typeof OffscreenCanvas < "u" ? new OffscreenCanvas(1, 1) : document.createElement("canvas");
|
|
5986
5986
|
}
|
|
5987
|
-
function
|
|
5987
|
+
function Cs(a, e) {
|
|
5988
5988
|
if (a.toBlob !== void 0)
|
|
5989
5989
|
return new Promise((n) => a.toBlob(n, e));
|
|
5990
5990
|
let A;
|
|
@@ -5993,12 +5993,12 @@ function fs(a, e) {
|
|
|
5993
5993
|
quality: A
|
|
5994
5994
|
});
|
|
5995
5995
|
}
|
|
5996
|
-
class
|
|
5996
|
+
class fg {
|
|
5997
5997
|
constructor() {
|
|
5998
5998
|
this.plugins = [], this.options = {}, this.pending = [], this.buffers = [], this.byteOffset = 0, this.buffers = [], this.nodeMap = /* @__PURE__ */ new Map(), this.skins = [], this.extensionsUsed = {}, this.extensionsRequired = {}, this.uids = /* @__PURE__ */ new Map(), this.uid = 0, this.json = {
|
|
5999
5999
|
asset: {
|
|
6000
6000
|
version: "2.0",
|
|
6001
|
-
generator: "THREE.GLTFExporter r" +
|
|
6001
|
+
generator: "THREE.GLTFExporter r" + Ja
|
|
6002
6002
|
}
|
|
6003
6003
|
}, this.cache = {
|
|
6004
6004
|
meshes: /* @__PURE__ */ new Map(),
|
|
@@ -6036,15 +6036,15 @@ class Cg {
|
|
|
6036
6036
|
h.readAsArrayBuffer(c), h.onloadend = function() {
|
|
6037
6037
|
const u = Pn(h.result), B = new DataView(new ArrayBuffer(Bs));
|
|
6038
6038
|
B.setUint32(0, u.byteLength, !0), B.setUint32(4, ug, !0);
|
|
6039
|
-
const E = Pn(Bg(JSON.stringify(s)), 32),
|
|
6040
|
-
|
|
6039
|
+
const E = Pn(Bg(JSON.stringify(s)), 32), f = new DataView(new ArrayBuffer(Bs));
|
|
6040
|
+
f.setUint32(0, E.byteLength, !0), f.setUint32(4, Ig, !0);
|
|
6041
6041
|
const p = new ArrayBuffer(us), b = new DataView(p);
|
|
6042
6042
|
b.setUint32(0, lg, !0), b.setUint32(4, hg, !0);
|
|
6043
|
-
const d = us +
|
|
6043
|
+
const d = us + f.byteLength + E.byteLength + B.byteLength + u.byteLength;
|
|
6044
6044
|
b.setUint32(8, d, !0);
|
|
6045
6045
|
const m = new Blob([
|
|
6046
6046
|
p,
|
|
6047
|
-
|
|
6047
|
+
f,
|
|
6048
6048
|
E,
|
|
6049
6049
|
B,
|
|
6050
6050
|
u
|
|
@@ -6167,7 +6167,7 @@ class Cg {
|
|
|
6167
6167
|
}
|
|
6168
6168
|
c.putImageData(g, 0, 0);
|
|
6169
6169
|
const h = (e || A).clone();
|
|
6170
|
-
return h.source = new
|
|
6170
|
+
return h.source = new ja(r), h.colorSpace = un, h.channel = (e || A).channel, e && A && e.channel !== A.channel && console.warn("THREE.GLTFExporter: UV channels for metalnessMap and roughnessMap textures must match."), h;
|
|
6171
6171
|
}
|
|
6172
6172
|
/**
|
|
6173
6173
|
* Process a buffer to append to the default one.
|
|
@@ -6205,12 +6205,12 @@ class Cg {
|
|
|
6205
6205
|
}
|
|
6206
6206
|
let r = e.itemSize * o;
|
|
6207
6207
|
i === ge.ARRAY_BUFFER && (r = Math.ceil(r / 4) * 4);
|
|
6208
|
-
const c =
|
|
6208
|
+
const c = vo(t * r), g = new DataView(new ArrayBuffer(c));
|
|
6209
6209
|
let l = 0;
|
|
6210
6210
|
for (let B = n; B < n + t; B++) {
|
|
6211
6211
|
for (let E = 0; E < e.itemSize; E++) {
|
|
6212
|
-
let
|
|
6213
|
-
e.itemSize > 4 ?
|
|
6212
|
+
let f;
|
|
6213
|
+
e.itemSize > 4 ? f = e.array[B * e.itemSize + E] : (E === 0 ? f = e.getX(B) : E === 1 ? f = e.getY(B) : E === 2 ? f = e.getZ(B) : E === 3 && (f = e.getW(B)), e.normalized === !0 && (f = we.normalize(f, e.array))), A === ge.FLOAT ? g.setFloat32(l, f, !0) : A === ge.INT ? g.setInt32(l, f, !0) : A === ge.UNSIGNED_INT ? g.setUint32(l, f, !0) : A === ge.SHORT ? g.setInt16(l, f, !0) : A === ge.UNSIGNED_SHORT ? g.setUint16(l, f, !0) : A === ge.BYTE ? g.setInt8(l, f) : A === ge.UNSIGNED_BYTE && g.setUint8(l, f), l += o;
|
|
6214
6214
|
}
|
|
6215
6215
|
l % r !== 0 && (l += r - l % r);
|
|
6216
6216
|
}
|
|
@@ -6278,7 +6278,7 @@ class Cg {
|
|
|
6278
6278
|
else
|
|
6279
6279
|
throw new Error("THREE.GLTFExporter: Unsupported bufferAttribute component type: " + e.array.constructor.name);
|
|
6280
6280
|
if (n === void 0 && (n = 0), (t === void 0 || t === 1 / 0) && (t = e.count), t === 0) return null;
|
|
6281
|
-
const r =
|
|
6281
|
+
const r = Cg(e, n, t);
|
|
6282
6282
|
let c;
|
|
6283
6283
|
A !== void 0 && (c = e === A.index ? ge.ELEMENT_ARRAY_BUFFER : ge.ARRAY_BUFFER);
|
|
6284
6284
|
const g = this.processBufferView(e, o, n, t, c), l = {
|
|
@@ -6314,21 +6314,21 @@ class Cg {
|
|
|
6314
6314
|
});
|
|
6315
6315
|
if (n === !0 && (B.translate(0, u.height), B.scale(1, -1)), e.data !== void 0) {
|
|
6316
6316
|
A !== jA && console.error("GLTFExporter: Only RGBAFormat is supported.", A), (e.width > r.maxTextureSize || e.height > r.maxTextureSize) && console.warn("GLTFExporter: Image size is bigger than maxTextureSize", e);
|
|
6317
|
-
const
|
|
6318
|
-
for (let p = 0; p <
|
|
6319
|
-
|
|
6320
|
-
B.putImageData(new ImageData(
|
|
6317
|
+
const f = new Uint8ClampedArray(e.height * e.width * 4);
|
|
6318
|
+
for (let p = 0; p < f.length; p += 4)
|
|
6319
|
+
f[p + 0] = e.data[p + 0], f[p + 1] = e.data[p + 1], f[p + 2] = e.data[p + 2], f[p + 3] = e.data[p + 3];
|
|
6320
|
+
B.putImageData(new ImageData(f, e.width, e.height), 0, 0);
|
|
6321
6321
|
} else if (typeof HTMLImageElement < "u" && e instanceof HTMLImageElement || typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement || typeof ImageBitmap < "u" && e instanceof ImageBitmap || typeof OffscreenCanvas < "u" && e instanceof OffscreenCanvas)
|
|
6322
6322
|
B.drawImage(e, 0, 0, u.width, u.height);
|
|
6323
6323
|
else
|
|
6324
6324
|
throw new Error("THREE.GLTFExporter: Invalid image type. Use HTMLImageElement, HTMLCanvasElement, ImageBitmap or OffscreenCanvas.");
|
|
6325
6325
|
r.binary === !0 ? c.push(
|
|
6326
|
-
|
|
6327
|
-
h.bufferView =
|
|
6326
|
+
Cs(u, t).then((f) => i.processBufferViewImage(f)).then((f) => {
|
|
6327
|
+
h.bufferView = f;
|
|
6328
6328
|
})
|
|
6329
6329
|
) : u.toDataURL !== void 0 ? h.uri = u.toDataURL(t) : c.push(
|
|
6330
|
-
|
|
6331
|
-
h.uri =
|
|
6330
|
+
Cs(u, t).then((f) => new FileReader().readAsDataURL(f)).then((f) => {
|
|
6331
|
+
h.uri = f;
|
|
6332
6332
|
})
|
|
6333
6333
|
);
|
|
6334
6334
|
const E = o.images.push(h) - 1;
|
|
@@ -6513,16 +6513,16 @@ class Cg {
|
|
|
6513
6513
|
}
|
|
6514
6514
|
c.weights = w, R.length > 0 && (c.extras = {}, c.extras.targetNames = R);
|
|
6515
6515
|
}
|
|
6516
|
-
const
|
|
6517
|
-
if (
|
|
6516
|
+
const f = Array.isArray(e.material);
|
|
6517
|
+
if (f && o.groups.length === 0) return null;
|
|
6518
6518
|
let p = !1;
|
|
6519
|
-
if (
|
|
6519
|
+
if (f && o.index === null) {
|
|
6520
6520
|
const w = [];
|
|
6521
6521
|
for (let R = 0, F = o.attributes.position.count; R < F; R++)
|
|
6522
6522
|
w[R] = R;
|
|
6523
6523
|
o.setIndex(w), p = !0;
|
|
6524
6524
|
}
|
|
6525
|
-
const b =
|
|
6525
|
+
const b = f ? e.material : [e.material], d = f ? o.groups : [{ materialIndex: 0, start: void 0, count: void 0 }];
|
|
6526
6526
|
for (let w = 0, R = d.length; w < R; w++) {
|
|
6527
6527
|
const F = {
|
|
6528
6528
|
mode: r,
|
|
@@ -6610,7 +6610,7 @@ class Cg {
|
|
|
6610
6610
|
*/
|
|
6611
6611
|
processAnimation(e, A) {
|
|
6612
6612
|
const n = this.json, t = this.nodeMap;
|
|
6613
|
-
n.animations || (n.animations = []), e =
|
|
6613
|
+
n.animations || (n.animations = []), e = ko.Utils.mergeMorphTargetTracks(e.clone(), A);
|
|
6614
6614
|
const i = e.tracks, s = [], o = [];
|
|
6615
6615
|
for (let r = 0; r < i.length; ++r) {
|
|
6616
6616
|
const c = i[r], g = UA.parseTrackName(c.name);
|
|
@@ -6996,7 +6996,7 @@ class Tg {
|
|
|
6996
6996
|
t.instanceColor && (h._COLOR_0 = n.processAccessor(t.instanceColor)), A.extensions = A.extensions || {}, A.extensions[this.name] = { attributes: h }, n.extensionsUsed[this.name] = !0, n.extensionsRequired[this.name] = !0;
|
|
6997
6997
|
}
|
|
6998
6998
|
}
|
|
6999
|
-
|
|
6999
|
+
ko.Utils = {
|
|
7000
7000
|
insertKeyframe: function(a, e) {
|
|
7001
7001
|
const n = a.getValueSize(), t = new a.TimeBufferType(a.times.length + 1), i = new a.ValueBufferType(a.values.length + n), s = a.createInterpolant(new a.ValueBufferType(n));
|
|
7002
7002
|
let o;
|
|
@@ -7086,7 +7086,7 @@ const xe = {
|
|
|
7086
7086
|
VISIBILITY: "visibility"
|
|
7087
7087
|
})
|
|
7088
7088
|
};
|
|
7089
|
-
async function
|
|
7089
|
+
async function Lo(a) {
|
|
7090
7090
|
const e = await fetch(a);
|
|
7091
7091
|
if (e.ok)
|
|
7092
7092
|
return e.json();
|
|
@@ -7095,7 +7095,7 @@ async function No(a) {
|
|
|
7095
7095
|
async function Gg(a) {
|
|
7096
7096
|
if (!a)
|
|
7097
7097
|
throw new Error("No basePath supplied");
|
|
7098
|
-
return await
|
|
7098
|
+
return await Lo(`${a}/profilesList.json`);
|
|
7099
7099
|
}
|
|
7100
7100
|
async function kg(a, e, A = null, n = !0) {
|
|
7101
7101
|
if (!a)
|
|
@@ -7123,7 +7123,7 @@ async function kg(a, e, A = null, n = !0) {
|
|
|
7123
7123
|
deprecated: !!r.deprecated
|
|
7124
7124
|
};
|
|
7125
7125
|
}
|
|
7126
|
-
const s = await
|
|
7126
|
+
const s = await Lo(i.profilePath);
|
|
7127
7127
|
let o;
|
|
7128
7128
|
if (n) {
|
|
7129
7129
|
let r;
|
|
@@ -7300,7 +7300,7 @@ function qg(a, e) {
|
|
|
7300
7300
|
const { type: n, touchPointNodeName: t, visualResponses: i } = A;
|
|
7301
7301
|
if (n === xe.ComponentType.TOUCHPAD)
|
|
7302
7302
|
if (A.touchPointNode = e.getObjectByName(t), A.touchPointNode) {
|
|
7303
|
-
const s = new
|
|
7303
|
+
const s = new fi(1e-3), o = new DA({ color: 255 }), r = new Y(s, o);
|
|
7304
7304
|
A.touchPointNode.add(r);
|
|
7305
7305
|
} else
|
|
7306
7306
|
console.warn(`Could not find touch dot, ${A.touchPointNodeName}, in touchpad component ${A.id}`);
|
|
@@ -7320,16 +7320,16 @@ function qg(a, e) {
|
|
|
7320
7320
|
});
|
|
7321
7321
|
});
|
|
7322
7322
|
}
|
|
7323
|
-
function
|
|
7323
|
+
function fs(a, e) {
|
|
7324
7324
|
qg(a.motionController, e), a.envMap && e.traverse((A) => {
|
|
7325
7325
|
A.isMesh && (A.material.envMap = a.envMap, A.material.needsUpdate = !0);
|
|
7326
7326
|
}), a.layers.mask != 0 && e.traverse((A) => {
|
|
7327
7327
|
A.layers.mask = a.layers.mask;
|
|
7328
7328
|
}), a.add(e);
|
|
7329
7329
|
}
|
|
7330
|
-
class
|
|
7330
|
+
class ch {
|
|
7331
7331
|
constructor(e = null, A = null) {
|
|
7332
|
-
this.gltfLoader = e, this.path = Pg, this._assetCache = {}, this.onLoad = A, this.gltfLoader || (this.gltfLoader = new
|
|
7332
|
+
this.gltfLoader = e, this.path = Pg, this._assetCache = {}, this.onLoad = A, this.gltfLoader || (this.gltfLoader = new ur());
|
|
7333
7333
|
}
|
|
7334
7334
|
setPath(e) {
|
|
7335
7335
|
return this.path = e, this;
|
|
@@ -7347,14 +7347,14 @@ class gh {
|
|
|
7347
7347
|
);
|
|
7348
7348
|
const r = this._assetCache[A.motionController.assetUrl];
|
|
7349
7349
|
if (r)
|
|
7350
|
-
n = r.scene.clone(),
|
|
7350
|
+
n = r.scene.clone(), fs(A, n), this.onLoad && this.onLoad(n);
|
|
7351
7351
|
else {
|
|
7352
7352
|
if (!this.gltfLoader)
|
|
7353
7353
|
throw new Error("GLTFLoader not set.");
|
|
7354
7354
|
this.gltfLoader.setPath(""), this.gltfLoader.load(
|
|
7355
7355
|
A.motionController.assetUrl,
|
|
7356
7356
|
(c) => {
|
|
7357
|
-
this._assetCache[A.motionController.assetUrl] = c, n = c.scene.clone(),
|
|
7357
|
+
this._assetCache[A.motionController.assetUrl] = c, n = c.scene.clone(), fs(A, n), this.onLoad && this.onLoad(n);
|
|
7358
7358
|
},
|
|
7359
7359
|
null,
|
|
7360
7360
|
() => {
|
|
@@ -7370,61 +7370,8 @@ class gh {
|
|
|
7370
7370
|
}), A;
|
|
7371
7371
|
}
|
|
7372
7372
|
}
|
|
7373
|
-
const
|
|
7374
|
-
class
|
|
7375
|
-
constructor(e, A, n, t, i = null, s = null) {
|
|
7376
|
-
this.controller = A, this.handModel = e, this.bones = [], i === null && (i = new no(), i.setPath(n || Kg)), i.load(`${t}.glb`, (o) => {
|
|
7377
|
-
const r = o.scene.children[0];
|
|
7378
|
-
this.handModel.add(r), r.layers.mask = this.handModel.layers.mask;
|
|
7379
|
-
const c = r.getObjectByProperty("type", "SkinnedMesh");
|
|
7380
|
-
c.frustumCulled = !1, c.castShadow = !0, c.receiveShadow = !0, [
|
|
7381
|
-
"wrist",
|
|
7382
|
-
"thumb-metacarpal",
|
|
7383
|
-
"thumb-phalanx-proximal",
|
|
7384
|
-
"thumb-phalanx-distal",
|
|
7385
|
-
"thumb-tip",
|
|
7386
|
-
"index-finger-metacarpal",
|
|
7387
|
-
"index-finger-phalanx-proximal",
|
|
7388
|
-
"index-finger-phalanx-intermediate",
|
|
7389
|
-
"index-finger-phalanx-distal",
|
|
7390
|
-
"index-finger-tip",
|
|
7391
|
-
"middle-finger-metacarpal",
|
|
7392
|
-
"middle-finger-phalanx-proximal",
|
|
7393
|
-
"middle-finger-phalanx-intermediate",
|
|
7394
|
-
"middle-finger-phalanx-distal",
|
|
7395
|
-
"middle-finger-tip",
|
|
7396
|
-
"ring-finger-metacarpal",
|
|
7397
|
-
"ring-finger-phalanx-proximal",
|
|
7398
|
-
"ring-finger-phalanx-intermediate",
|
|
7399
|
-
"ring-finger-phalanx-distal",
|
|
7400
|
-
"ring-finger-tip",
|
|
7401
|
-
"pinky-finger-metacarpal",
|
|
7402
|
-
"pinky-finger-phalanx-proximal",
|
|
7403
|
-
"pinky-finger-phalanx-intermediate",
|
|
7404
|
-
"pinky-finger-phalanx-distal",
|
|
7405
|
-
"pinky-finger-tip"
|
|
7406
|
-
].forEach((l) => {
|
|
7407
|
-
const h = r.getObjectByName(l);
|
|
7408
|
-
h !== void 0 ? h.jointName = l : console.warn(`Couldn't find ${l} in ${t} hand mesh`), this.bones.push(h);
|
|
7409
|
-
}), s && s(r);
|
|
7410
|
-
});
|
|
7411
|
-
}
|
|
7412
|
-
updateMesh() {
|
|
7413
|
-
const e = this.controller.joints;
|
|
7414
|
-
for (let A = 0; A < this.bones.length; A++) {
|
|
7415
|
-
const n = this.bones[A];
|
|
7416
|
-
if (n) {
|
|
7417
|
-
const t = e[n.jointName];
|
|
7418
|
-
if (t.visible) {
|
|
7419
|
-
const i = t.position;
|
|
7420
|
-
n.position.copy(i), n.quaternion.copy(t.quaternion);
|
|
7421
|
-
}
|
|
7422
|
-
}
|
|
7423
|
-
}
|
|
7424
|
-
}
|
|
7425
|
-
}
|
|
7426
|
-
const ps = new fn(), Vt = new L();
|
|
7427
|
-
class Uo extends Va {
|
|
7373
|
+
const ps = new Cn(), Vt = new L();
|
|
7374
|
+
class No extends za {
|
|
7428
7375
|
constructor() {
|
|
7429
7376
|
super(), this.isLineSegmentsGeometry = !0, this.type = "LineSegmentsGeometry";
|
|
7430
7377
|
const e = [-1, 2, 0, 1, 2, 0, -1, 1, 0, 1, 1, 0, -1, 0, 0, 1, 0, 0, -1, -1, 0, 1, -1, 0], A = [-1, 2, 1, 2, -1, 1, 1, 1, -1, -1, 1, -1, -1, -2, 1, -2], n = [0, 2, 1, 2, 3, 1, 2, 4, 3, 4, 5, 3, 4, 6, 5, 6, 7, 5];
|
|
@@ -7453,14 +7400,14 @@ class Uo extends Va {
|
|
|
7453
7400
|
return this.setPositions(e.attributes.position.array), this;
|
|
7454
7401
|
}
|
|
7455
7402
|
fromMesh(e) {
|
|
7456
|
-
return this.fromWireframeGeometry(new
|
|
7403
|
+
return this.fromWireframeGeometry(new Va(e.geometry)), this;
|
|
7457
7404
|
}
|
|
7458
7405
|
fromLineSegments(e) {
|
|
7459
7406
|
const A = e.geometry;
|
|
7460
7407
|
return this.setPositions(A.attributes.position.array), this;
|
|
7461
7408
|
}
|
|
7462
7409
|
computeBoundingBox() {
|
|
7463
|
-
this.boundingBox === null && (this.boundingBox = new
|
|
7410
|
+
this.boundingBox === null && (this.boundingBox = new Cn());
|
|
7464
7411
|
const e = this.attributes.instanceStart, A = this.attributes.instanceEnd;
|
|
7465
7412
|
e !== void 0 && A !== void 0 && (this.boundingBox.setFromBufferAttribute(e), ps.setFromBufferAttribute(A), this.boundingBox.union(ps));
|
|
7466
7413
|
}
|
|
@@ -7877,7 +7824,7 @@ wA.line = {
|
|
|
7877
7824
|
`
|
|
7878
7825
|
)
|
|
7879
7826
|
};
|
|
7880
|
-
class
|
|
7827
|
+
class Uo extends $s {
|
|
7881
7828
|
constructor(e) {
|
|
7882
7829
|
super({
|
|
7883
7830
|
type: "LineMaterial",
|
|
@@ -7955,12 +7902,12 @@ class _o extends $s {
|
|
|
7955
7902
|
this.defines && (e === !0 !== this.alphaToCoverage && (this.needsUpdate = !0), e === !0 ? this.defines.USE_ALPHA_TO_COVERAGE = "" : delete this.defines.USE_ALPHA_TO_COVERAGE);
|
|
7956
7903
|
}
|
|
7957
7904
|
}
|
|
7958
|
-
const Hn = new _A(), ds = new L(), Qs = new L(), Ue = new _A(), _e = new _A(), mA = new _A(), On = new L(), qn = new ue(), He = new
|
|
7905
|
+
const Hn = new _A(), ds = new L(), Qs = new L(), Ue = new _A(), _e = new _A(), mA = new _A(), On = new L(), qn = new ue(), He = new Xa(), ms = new L(), Xt = new Cn(), Wt = new yi(), bA = new _A();
|
|
7959
7906
|
let yA, nt;
|
|
7960
7907
|
function bs(a, e, A) {
|
|
7961
7908
|
return bA.set(0, 0, -e, 1).applyMatrix4(a.projectionMatrix), bA.multiplyScalar(1 / bA.w), bA.x = nt / A.width, bA.y = nt / A.height, bA.applyMatrix4(a.projectionMatrixInverse), bA.multiplyScalar(1 / bA.w), Math.abs(Math.max(bA.x, bA.y));
|
|
7962
7909
|
}
|
|
7963
|
-
function
|
|
7910
|
+
function Kg(a, e) {
|
|
7964
7911
|
const A = a.matrixWorld, n = a.geometry, t = n.attributes.instanceStart, i = n.attributes.instanceEnd, s = Math.min(n.instanceCount, t.count);
|
|
7965
7912
|
for (let o = 0, r = s; o < r; o++) {
|
|
7966
7913
|
He.start.fromBufferAttribute(t, o), He.end.fromBufferAttribute(i, o), He.applyMatrix4(A);
|
|
@@ -7977,7 +7924,7 @@ function Yg(a, e) {
|
|
|
7977
7924
|
});
|
|
7978
7925
|
}
|
|
7979
7926
|
}
|
|
7980
|
-
function
|
|
7927
|
+
function Yg(a, e, A) {
|
|
7981
7928
|
const n = e.projectionMatrix, i = a.material.resolution, s = a.matrixWorld, o = a.geometry, r = o.attributes.instanceStart, c = o.attributes.instanceEnd, g = Math.min(o.instanceCount, r.count), l = -e.near;
|
|
7982
7929
|
yA.at(1, mA), mA.w = 1, mA.applyMatrix4(e.matrixWorldInverse), mA.applyMatrix4(n), mA.multiplyScalar(1 / mA.w), mA.x *= i.x / 2, mA.y *= i.y / 2, mA.z = 0, On.copy(mA), qn.multiplyMatrices(e.matrixWorldInverse, s);
|
|
7983
7930
|
for (let h = 0, u = g; h < u; h++) {
|
|
@@ -7993,7 +7940,7 @@ function Jg(a, e, A) {
|
|
|
7993
7940
|
Ue.applyMatrix4(n), _e.applyMatrix4(n), Ue.multiplyScalar(1 / Ue.w), _e.multiplyScalar(1 / _e.w), Ue.x *= i.x / 2, Ue.y *= i.y / 2, _e.x *= i.x / 2, _e.y *= i.y / 2, He.start.copy(Ue), He.start.z = 0, He.end.copy(_e), He.end.z = 0;
|
|
7994
7941
|
const E = He.closestPointToPointParameter(On, !0);
|
|
7995
7942
|
He.at(E, ms);
|
|
7996
|
-
const
|
|
7943
|
+
const f = we.lerp(Ue.z, _e.z, E), p = f >= -1 && f <= 1, b = On.distanceTo(ms) < nt * 0.5;
|
|
7997
7944
|
if (p && b) {
|
|
7998
7945
|
He.start.fromBufferAttribute(r, h), He.end.fromBufferAttribute(c, h), He.start.applyMatrix4(s), He.end.applyMatrix4(s);
|
|
7999
7946
|
const d = new L(), m = new L();
|
|
@@ -8010,8 +7957,8 @@ function Jg(a, e, A) {
|
|
|
8010
7957
|
}
|
|
8011
7958
|
}
|
|
8012
7959
|
}
|
|
8013
|
-
class
|
|
8014
|
-
constructor(e = new
|
|
7960
|
+
class Jg extends Y {
|
|
7961
|
+
constructor(e = new No(), A = new Uo({ color: Math.random() * 16777215 })) {
|
|
8015
7962
|
super(e, A), this.isLineSegments2 = !0, this.type = "LineSegments2";
|
|
8016
7963
|
}
|
|
8017
7964
|
// for backwards-compatibility, but could be a method of LineSegmentsGeometry...
|
|
@@ -8046,14 +7993,14 @@ class jg extends Y {
|
|
|
8046
7993
|
const l = Math.max(t.near, Xt.distanceToPoint(yA.origin));
|
|
8047
7994
|
g = bs(t, l, r.resolution);
|
|
8048
7995
|
}
|
|
8049
|
-
Xt.expandByScalar(g), yA.intersectsBox(Xt) !== !1 && (n ?
|
|
7996
|
+
Xt.expandByScalar(g), yA.intersectsBox(Xt) !== !1 && (n ? Kg(this, A) : Yg(this, t, A));
|
|
8050
7997
|
}
|
|
8051
7998
|
onBeforeRender(e) {
|
|
8052
7999
|
const A = this.material.uniforms;
|
|
8053
8000
|
A && A.resolution && (e.getViewport(Hn), this.material.uniforms.resolution.value.set(Hn.z, Hn.w));
|
|
8054
8001
|
}
|
|
8055
8002
|
}
|
|
8056
|
-
class
|
|
8003
|
+
class jg extends No {
|
|
8057
8004
|
constructor() {
|
|
8058
8005
|
super(), this.isLineGeometry = !0, this.type = "LineGeometry";
|
|
8059
8006
|
}
|
|
@@ -8074,24 +8021,24 @@ class zg extends Uo {
|
|
|
8074
8021
|
return this.setPositions(A.attributes.position.array), this;
|
|
8075
8022
|
}
|
|
8076
8023
|
}
|
|
8077
|
-
class
|
|
8078
|
-
constructor(e = new
|
|
8024
|
+
class gh extends Jg {
|
|
8025
|
+
constructor(e = new jg(), A = new Uo({ color: Math.random() * 16777215 })) {
|
|
8079
8026
|
super(e, A), this.isLine2 = !0, this.type = "Line2";
|
|
8080
8027
|
}
|
|
8081
8028
|
}
|
|
8082
|
-
class
|
|
8029
|
+
class lh extends Y {
|
|
8083
8030
|
constructor(e) {
|
|
8084
|
-
const A = new
|
|
8031
|
+
const A = new zg(e), n = new Si(A.image.width * 1e-3, A.image.height * 1e-3), t = new DA({ map: A, toneMapped: !1, transparent: !0 });
|
|
8085
8032
|
super(n, t);
|
|
8086
8033
|
function i(s) {
|
|
8087
8034
|
t.map.dispatchDOMEvent(s);
|
|
8088
8035
|
}
|
|
8089
8036
|
this.addEventListener("mousedown", i), this.addEventListener("mousemove", i), this.addEventListener("mouseup", i), this.addEventListener("click", i), this.dispose = function() {
|
|
8090
|
-
n.dispose(), t.dispose(), t.map.dispose(),
|
|
8037
|
+
n.dispose(), t.dispose(), t.map.dispose(), Ci.delete(e), this.removeEventListener("mousedown", i), this.removeEventListener("mousemove", i), this.removeEventListener("mouseup", i), this.removeEventListener("click", i);
|
|
8091
8038
|
};
|
|
8092
8039
|
}
|
|
8093
8040
|
}
|
|
8094
|
-
class
|
|
8041
|
+
class zg extends eo {
|
|
8095
8042
|
constructor(e) {
|
|
8096
8043
|
super(ws(e)), this.dom = e, this.anisotropy = 16, this.colorSpace = Be, this.minFilter = aA, this.magFilter = aA;
|
|
8097
8044
|
const A = new MutationObserver(() => {
|
|
@@ -8100,7 +8047,7 @@ class Vg extends eo {
|
|
|
8100
8047
|
A.observe(e, n), this.observer = A;
|
|
8101
8048
|
}
|
|
8102
8049
|
dispatchDOMEvent(e) {
|
|
8103
|
-
e.data &&
|
|
8050
|
+
e.data && Vg(this.dom, e.type, e.data.x, e.data.y);
|
|
8104
8051
|
}
|
|
8105
8052
|
update() {
|
|
8106
8053
|
this.image = ws(this.dom), this.needsUpdate = !0, this.scheduleUpdate = null;
|
|
@@ -8109,7 +8056,7 @@ class Vg extends eo {
|
|
|
8109
8056
|
this.observer && this.observer.disconnect(), this.scheduleUpdate = clearTimeout(this.scheduleUpdate), super.dispose();
|
|
8110
8057
|
}
|
|
8111
8058
|
}
|
|
8112
|
-
const
|
|
8059
|
+
const Ci = /* @__PURE__ */ new WeakMap();
|
|
8113
8060
|
function ws(a) {
|
|
8114
8061
|
const e = document.createRange(), A = new De();
|
|
8115
8062
|
function n(h) {
|
|
@@ -8117,16 +8064,16 @@ function ws(a) {
|
|
|
8117
8064
|
let B = !1;
|
|
8118
8065
|
function E() {
|
|
8119
8066
|
if (B && (B = !1, h.restore()), u.length === 0) return;
|
|
8120
|
-
let
|
|
8067
|
+
let f = -1 / 0, p = -1 / 0, b = 1 / 0, d = 1 / 0;
|
|
8121
8068
|
for (let m = 0; m < u.length; m++) {
|
|
8122
8069
|
const w = u[m];
|
|
8123
|
-
|
|
8070
|
+
f = Math.max(f, w.x), p = Math.max(p, w.y), b = Math.min(b, w.x + w.width), d = Math.min(d, w.y + w.height);
|
|
8124
8071
|
}
|
|
8125
|
-
h.save(), h.beginPath(), h.rect(
|
|
8072
|
+
h.save(), h.beginPath(), h.rect(f, p, b - f, d - p), h.clip(), B = !0;
|
|
8126
8073
|
}
|
|
8127
8074
|
return {
|
|
8128
|
-
add: function(
|
|
8129
|
-
u.push(
|
|
8075
|
+
add: function(f) {
|
|
8076
|
+
u.push(f), E();
|
|
8130
8077
|
},
|
|
8131
8078
|
remove: function() {
|
|
8132
8079
|
u.pop(), E();
|
|
@@ -8136,21 +8083,21 @@ function ws(a) {
|
|
|
8136
8083
|
function t(h, u, B, E) {
|
|
8137
8084
|
E !== "" && (h.textTransform === "uppercase" && (E = E.toUpperCase()), g.font = h.fontWeight + " " + h.fontSize + " " + h.fontFamily, g.textBaseline = "top", g.fillStyle = h.color, g.fillText(E, u, B + parseFloat(h.fontSize) * 0.1));
|
|
8138
8085
|
}
|
|
8139
|
-
function i(h, u, B, E,
|
|
8140
|
-
B < 2 *
|
|
8086
|
+
function i(h, u, B, E, f) {
|
|
8087
|
+
B < 2 * f && (f = B / 2), E < 2 * f && (f = E / 2), g.beginPath(), g.moveTo(h + f, u), g.arcTo(h + B, u, h + B, u + E, f), g.arcTo(h + B, u + E, h, u + E, f), g.arcTo(h, u + E, h, u, f), g.arcTo(h, u, h + B, u, f), g.closePath();
|
|
8141
8088
|
}
|
|
8142
|
-
function s(h, u, B, E,
|
|
8089
|
+
function s(h, u, B, E, f, p) {
|
|
8143
8090
|
const b = h[u + "Width"], d = h[u + "Style"], m = h[u + "Color"];
|
|
8144
|
-
b !== "0px" && d !== "none" && m !== "transparent" && m !== "rgba(0, 0, 0, 0)" && (g.strokeStyle = m, g.lineWidth = parseFloat(b), g.beginPath(), g.moveTo(B, E), g.lineTo(B +
|
|
8091
|
+
b !== "0px" && d !== "none" && m !== "transparent" && m !== "rgba(0, 0, 0, 0)" && (g.strokeStyle = m, g.lineWidth = parseFloat(b), g.beginPath(), g.moveTo(B, E), g.lineTo(B + f, E + p), g.stroke());
|
|
8145
8092
|
}
|
|
8146
8093
|
function o(h, u) {
|
|
8147
8094
|
if (h.nodeType === Node.COMMENT_NODE || h.nodeName === "SCRIPT" || h.style && h.style.display === "none")
|
|
8148
8095
|
return;
|
|
8149
|
-
let B = 0, E = 0,
|
|
8096
|
+
let B = 0, E = 0, f = 0, p = 0;
|
|
8150
8097
|
if (h.nodeType === Node.TEXT_NODE) {
|
|
8151
8098
|
e.selectNode(h);
|
|
8152
8099
|
const d = e.getBoundingClientRect();
|
|
8153
|
-
B = d.left - r.left - 0.5, E = d.top - r.top - 0.5,
|
|
8100
|
+
B = d.left - r.left - 0.5, E = d.top - r.top - 0.5, f = d.width, p = d.height, t(u, B, E, h.nodeValue.trim());
|
|
8154
8101
|
} else if (h instanceof HTMLCanvasElement) {
|
|
8155
8102
|
const d = h.getBoundingClientRect();
|
|
8156
8103
|
B = d.left - r.left - 0.5, E = d.top - r.top - 0.5, g.save();
|
|
@@ -8158,10 +8105,10 @@ function ws(a) {
|
|
|
8158
8105
|
g.scale(1 / m, 1 / m), g.drawImage(h, B, E), g.restore();
|
|
8159
8106
|
} else if (h instanceof HTMLImageElement) {
|
|
8160
8107
|
const d = h.getBoundingClientRect();
|
|
8161
|
-
B = d.left - r.left - 0.5, E = d.top - r.top - 0.5,
|
|
8108
|
+
B = d.left - r.left - 0.5, E = d.top - r.top - 0.5, f = d.width, p = d.height, g.drawImage(h, B, E, f, p);
|
|
8162
8109
|
} else {
|
|
8163
8110
|
const d = h.getBoundingClientRect();
|
|
8164
|
-
B = d.left - r.left - 0.5, E = d.top - r.top - 0.5,
|
|
8111
|
+
B = d.left - r.left - 0.5, E = d.top - r.top - 0.5, f = d.width, p = d.height, u = window.getComputedStyle(h), i(B, E, f, p, parseFloat(u.borderRadius));
|
|
8165
8112
|
const m = u.backgroundColor;
|
|
8166
8113
|
m !== "transparent" && m !== "rgba(0, 0, 0, 0)" && (g.fillStyle = m, g.fill());
|
|
8167
8114
|
const w = ["borderTop", "borderLeft", "borderBottom", "borderRight"];
|
|
@@ -8174,12 +8121,12 @@ function ws(a) {
|
|
|
8174
8121
|
const y = parseFloat(u.borderTopWidth);
|
|
8175
8122
|
u.borderTopWidth !== "0px" && u.borderTopStyle !== "none" && u.borderTopColor !== "transparent" && u.borderTopColor !== "rgba(0, 0, 0, 0)" && (g.strokeStyle = u.borderTopColor, g.lineWidth = y, g.stroke());
|
|
8176
8123
|
} else
|
|
8177
|
-
s(u, "borderTop", B, E,
|
|
8124
|
+
s(u, "borderTop", B, E, f, 0), s(u, "borderLeft", B, E, 0, p), s(u, "borderBottom", B, E + p, f, 0), s(u, "borderRight", B + f, E, 0, p);
|
|
8178
8125
|
if (h instanceof HTMLInputElement) {
|
|
8179
8126
|
let y = u.accentColor;
|
|
8180
8127
|
(y === void 0 || y === "auto") && (y = u.color), A.set(y);
|
|
8181
8128
|
const N = Math.sqrt(0.299 * A.r ** 2 + 0.587 * A.g ** 2 + 0.114 * A.b ** 2) < 0.5 ? "white" : "#111111";
|
|
8182
|
-
if (h.type === "radio" && (i(B, E,
|
|
8129
|
+
if (h.type === "radio" && (i(B, E, f, p, p), g.fillStyle = "white", g.strokeStyle = y, g.lineWidth = 1, g.fill(), g.stroke(), h.checked && (i(B + 2, E + 2, f - 4, p - 4, p), g.fillStyle = y, g.strokeStyle = N, g.lineWidth = 2, g.fill(), g.stroke())), h.type === "checkbox" && (i(B, E, f, p, 2), g.fillStyle = h.checked ? y : "white", g.strokeStyle = h.checked ? N : y, g.lineWidth = 1, g.stroke(), g.fill(), h.checked)) {
|
|
8183
8130
|
const _ = g.textAlign;
|
|
8184
8131
|
g.textAlign = "center";
|
|
8185
8132
|
const P = {
|
|
@@ -8188,31 +8135,31 @@ function ws(a) {
|
|
|
8188
8135
|
fontSize: p + "px",
|
|
8189
8136
|
fontWeight: "bold"
|
|
8190
8137
|
};
|
|
8191
|
-
t(P, B +
|
|
8138
|
+
t(P, B + f / 2, E, "✔"), g.textAlign = _;
|
|
8192
8139
|
}
|
|
8193
8140
|
if (h.type === "range") {
|
|
8194
|
-
const [_, P, X] = ["min", "max", "value"].map((q) => parseFloat(h[q])), U = (X - _) / (P - _) * (
|
|
8195
|
-
i(B, E + p / 4,
|
|
8141
|
+
const [_, P, X] = ["min", "max", "value"].map((q) => parseFloat(h[q])), U = (X - _) / (P - _) * (f - p);
|
|
8142
|
+
i(B, E + p / 4, f, p / 2, p / 4), g.fillStyle = N, g.strokeStyle = y, g.lineWidth = 1, g.fill(), g.stroke(), i(B, E + p / 4, U + p / 2, p / 2, p / 4), g.fillStyle = y, g.fill(), i(B + U, E, p, p, p / 2), g.fillStyle = y, g.fill();
|
|
8196
8143
|
}
|
|
8197
|
-
(h.type === "color" || h.type === "text" || h.type === "number") && (l.add({ x: B, y: E, width:
|
|
8144
|
+
(h.type === "color" || h.type === "text" || h.type === "number") && (l.add({ x: B, y: E, width: f, height: p }), t(u, B + parseInt(u.paddingLeft), E + parseInt(u.paddingTop), h.value), l.remove());
|
|
8198
8145
|
}
|
|
8199
8146
|
}
|
|
8200
8147
|
const b = u.overflow === "auto" || u.overflow === "hidden";
|
|
8201
|
-
b && l.add({ x: B, y: E, width:
|
|
8148
|
+
b && l.add({ x: B, y: E, width: f, height: p });
|
|
8202
8149
|
for (let d = 0; d < h.childNodes.length; d++)
|
|
8203
8150
|
o(h.childNodes[d], u);
|
|
8204
8151
|
b && l.remove();
|
|
8205
8152
|
}
|
|
8206
8153
|
const r = a.getBoundingClientRect();
|
|
8207
|
-
let c =
|
|
8208
|
-
c === void 0 && (c = document.createElement("canvas"), c.width = r.width, c.height = r.height,
|
|
8154
|
+
let c = Ci.get(a);
|
|
8155
|
+
c === void 0 && (c = document.createElement("canvas"), c.width = r.width, c.height = r.height, Ci.set(a, c));
|
|
8209
8156
|
const g = c.getContext(
|
|
8210
8157
|
"2d"
|
|
8211
8158
|
/*, { alpha: false }*/
|
|
8212
8159
|
), l = new n(g);
|
|
8213
8160
|
return g.clearRect(0, 0, c.width, c.height), o(a), c;
|
|
8214
8161
|
}
|
|
8215
|
-
function
|
|
8162
|
+
function Vg(a, e, A, n) {
|
|
8216
8163
|
const t = {
|
|
8217
8164
|
clientX: A * a.offsetWidth + a.offsetLeft,
|
|
8218
8165
|
clientY: n * a.offsetHeight + a.offsetTop,
|
|
@@ -8235,7 +8182,7 @@ function Xg(a, e, A, n) {
|
|
|
8235
8182
|
s(a);
|
|
8236
8183
|
}
|
|
8237
8184
|
const cn = new Le(), rt = { type: "", data: cn }, ys = new Di();
|
|
8238
|
-
class
|
|
8185
|
+
class hh extends tt {
|
|
8239
8186
|
listenToPointerEvents(e, A) {
|
|
8240
8187
|
const n = this, t = new Di(), i = e.domElement;
|
|
8241
8188
|
function s(o) {
|
|
@@ -8270,7 +8217,7 @@ class uh extends tt {
|
|
|
8270
8217
|
}
|
|
8271
8218
|
}
|
|
8272
8219
|
const Dt = new L(), St = new L(), Ds = new to();
|
|
8273
|
-
class
|
|
8220
|
+
class Ih extends In {
|
|
8274
8221
|
constructor(e, A = 1, n = 16711680) {
|
|
8275
8222
|
const t = new oA(), i = e.geometry.attributes.normal.count, s = new Re(i * 2 * 3, 3);
|
|
8276
8223
|
t.setAttribute("position", s), super(t, new LA({ color: n, toneMapped: !1 })), this.object = e, this.size = A, this.type = "VertexNormalsHelper", this.matrixAutoUpdate = !1, this.update();
|
|
@@ -8290,7 +8237,7 @@ class Bh extends In {
|
|
|
8290
8237
|
this.geometry.dispose(), this.material.dispose();
|
|
8291
8238
|
}
|
|
8292
8239
|
}
|
|
8293
|
-
function
|
|
8240
|
+
function _o(a, e, A) {
|
|
8294
8241
|
const n = A.length - a - 1;
|
|
8295
8242
|
if (e >= A[n])
|
|
8296
8243
|
return n - 1;
|
|
@@ -8301,7 +8248,7 @@ function Po(a, e, A) {
|
|
|
8301
8248
|
e < A[s] ? i = s : t = s, s = Math.floor((t + i) / 2);
|
|
8302
8249
|
return s;
|
|
8303
8250
|
}
|
|
8304
|
-
function
|
|
8251
|
+
function Xg(a, e, A, n) {
|
|
8305
8252
|
const t = [], i = [], s = [];
|
|
8306
8253
|
t[0] = 1;
|
|
8307
8254
|
for (let o = 1; o <= A; ++o) {
|
|
@@ -8315,15 +8262,15 @@ function Wg(a, e, A, n) {
|
|
|
8315
8262
|
}
|
|
8316
8263
|
return t;
|
|
8317
8264
|
}
|
|
8318
|
-
function
|
|
8319
|
-
const t =
|
|
8265
|
+
function Wg(a, e, A, n) {
|
|
8266
|
+
const t = _o(a, n, e), i = Xg(t, n, a, e), s = new _A(0, 0, 0, 0);
|
|
8320
8267
|
for (let o = 0; o <= a; ++o) {
|
|
8321
8268
|
const r = A[t - a + o], c = i[o], g = r.w * c;
|
|
8322
8269
|
s.x += r.x * g, s.y += r.y * g, s.z += r.z * g, s.w += r.w * c;
|
|
8323
8270
|
}
|
|
8324
8271
|
return s;
|
|
8325
8272
|
}
|
|
8326
|
-
function
|
|
8273
|
+
function Zg(a, e, A, n, t) {
|
|
8327
8274
|
const i = [];
|
|
8328
8275
|
for (let l = 0; l <= A; ++l)
|
|
8329
8276
|
i[l] = 0;
|
|
@@ -8341,8 +8288,8 @@ function $g(a, e, A, n, t) {
|
|
|
8341
8288
|
for (let u = 0; u < l; ++u) {
|
|
8342
8289
|
const B = c[u + 1], E = r[l - u];
|
|
8343
8290
|
o[l][u] = B + E;
|
|
8344
|
-
const
|
|
8345
|
-
o[u][l] = h + B *
|
|
8291
|
+
const f = o[u][l - 1] / o[l][u];
|
|
8292
|
+
o[u][l] = h + B * f, h = E * f;
|
|
8346
8293
|
}
|
|
8347
8294
|
o[l][l] = h;
|
|
8348
8295
|
}
|
|
@@ -8355,13 +8302,13 @@ function $g(a, e, A, n, t) {
|
|
|
8355
8302
|
B[E] = i.slice(0);
|
|
8356
8303
|
B[0][0] = 1;
|
|
8357
8304
|
for (let E = 1; E <= n; ++E) {
|
|
8358
|
-
let
|
|
8305
|
+
let f = 0;
|
|
8359
8306
|
const p = l - E, b = A - E;
|
|
8360
|
-
l >= E && (B[u][0] = B[h][0] / o[b + 1][p],
|
|
8307
|
+
l >= E && (B[u][0] = B[h][0] / o[b + 1][p], f = B[u][0] * o[p][b]);
|
|
8361
8308
|
const d = p >= -1 ? 1 : -p, m = l - 1 <= b ? E - 1 : A - l;
|
|
8362
8309
|
for (let R = d; R <= m; ++R)
|
|
8363
|
-
B[u][R] = (B[h][R] - B[h][R - 1]) / o[b + 1][p + R],
|
|
8364
|
-
l <= b && (B[u][E] = -B[h][E - 1] / o[b + 1][l],
|
|
8310
|
+
B[u][R] = (B[h][R] - B[h][R - 1]) / o[b + 1][p + R], f += B[u][R] * o[p + R][b];
|
|
8311
|
+
l <= b && (B[u][E] = -B[h][E - 1] / o[b + 1][l], f += B[u][E] * o[l][b]), s[E][l] = f;
|
|
8365
8312
|
const w = h;
|
|
8366
8313
|
h = u, u = w;
|
|
8367
8314
|
}
|
|
@@ -8374,8 +8321,8 @@ function $g(a, e, A, n, t) {
|
|
|
8374
8321
|
}
|
|
8375
8322
|
return s;
|
|
8376
8323
|
}
|
|
8377
|
-
function
|
|
8378
|
-
const i = t < a ? t : a, s = [], o =
|
|
8324
|
+
function $g(a, e, A, n, t) {
|
|
8325
|
+
const i = t < a ? t : a, s = [], o = _o(a, n, e), r = Zg(o, n, a, i, e), c = [];
|
|
8379
8326
|
for (let g = 0; g < A.length; ++g) {
|
|
8380
8327
|
const l = A[g].clone(), h = l.w;
|
|
8381
8328
|
l.x *= h, l.y *= h, l.z *= h, c[g] = l;
|
|
@@ -8390,7 +8337,7 @@ function el(a, e, A, n, t) {
|
|
|
8390
8337
|
s[g] = new _A(0, 0, 0);
|
|
8391
8338
|
return s;
|
|
8392
8339
|
}
|
|
8393
|
-
function
|
|
8340
|
+
function el(a, e) {
|
|
8394
8341
|
let A = 1;
|
|
8395
8342
|
for (let t = 2; t <= a; ++t)
|
|
8396
8343
|
A *= t;
|
|
@@ -8401,7 +8348,7 @@ function Al(a, e) {
|
|
|
8401
8348
|
n *= t;
|
|
8402
8349
|
return A / n;
|
|
8403
8350
|
}
|
|
8404
|
-
function
|
|
8351
|
+
function Al(a) {
|
|
8405
8352
|
const e = a.length, A = [], n = [];
|
|
8406
8353
|
for (let i = 0; i < e; ++i) {
|
|
8407
8354
|
const s = a[i];
|
|
@@ -8411,16 +8358,16 @@ function tl(a) {
|
|
|
8411
8358
|
for (let i = 0; i < e; ++i) {
|
|
8412
8359
|
const s = A[i].clone();
|
|
8413
8360
|
for (let o = 1; o <= i; ++o)
|
|
8414
|
-
s.sub(t[i - o].clone().multiplyScalar(
|
|
8361
|
+
s.sub(t[i - o].clone().multiplyScalar(el(i, o) * n[o]));
|
|
8415
8362
|
t[i] = s.divideScalar(n[0]);
|
|
8416
8363
|
}
|
|
8417
8364
|
return t;
|
|
8418
8365
|
}
|
|
8419
|
-
function
|
|
8420
|
-
const i =
|
|
8421
|
-
return
|
|
8366
|
+
function tl(a, e, A, n, t) {
|
|
8367
|
+
const i = $g(a, e, A, n, t);
|
|
8368
|
+
return Al(i);
|
|
8422
8369
|
}
|
|
8423
|
-
class
|
|
8370
|
+
class nl extends Wa {
|
|
8424
8371
|
constructor(e, A, n, t, i) {
|
|
8425
8372
|
super(), this.degree = e, this.knots = A, this.controlPoints = [], this.startKnot = t || 0, this.endKnot = i || this.knots.length - 1;
|
|
8426
8373
|
for (let s = 0; s < n.length; ++s) {
|
|
@@ -8429,21 +8376,21 @@ class il extends Za {
|
|
|
8429
8376
|
}
|
|
8430
8377
|
}
|
|
8431
8378
|
getPoint(e, A = new L()) {
|
|
8432
|
-
const n = A, t = this.knots[this.startKnot] + e * (this.knots[this.endKnot] - this.knots[this.startKnot]), i =
|
|
8379
|
+
const n = A, t = this.knots[this.startKnot] + e * (this.knots[this.endKnot] - this.knots[this.startKnot]), i = Wg(this.degree, this.knots, this.controlPoints, t);
|
|
8433
8380
|
return i.w !== 1 && i.divideScalar(i.w), n.set(i.x, i.y, i.z);
|
|
8434
8381
|
}
|
|
8435
8382
|
getTangent(e, A = new L()) {
|
|
8436
|
-
const n = A, t = this.knots[0] + e * (this.knots[this.knots.length - 1] - this.knots[0]), i =
|
|
8383
|
+
const n = A, t = this.knots[0] + e * (this.knots[this.knots.length - 1] - this.knots[0]), i = tl(this.degree, this.knots, this.controlPoints, t, 1);
|
|
8437
8384
|
return n.copy(i[1]).normalize(), n;
|
|
8438
8385
|
}
|
|
8439
8386
|
}
|
|
8440
8387
|
let ae, Fe, je;
|
|
8441
|
-
class
|
|
8388
|
+
class uh extends NA {
|
|
8442
8389
|
constructor(e) {
|
|
8443
8390
|
super(e);
|
|
8444
8391
|
}
|
|
8445
8392
|
load(e, A, n, t) {
|
|
8446
|
-
const i = this, s = i.path === "" ? At.extractUrlBase(e) : i.path, o = new
|
|
8393
|
+
const i = this, s = i.path === "" ? At.extractUrlBase(e) : i.path, o = new fA(this.manager);
|
|
8447
8394
|
o.setPath(i.path), o.setResponseType("arraybuffer"), o.setRequestHeader(i.requestHeader), o.setWithCredentials(i.withCredentials), o.load(e, function(r) {
|
|
8448
8395
|
try {
|
|
8449
8396
|
A(i.parse(r, s));
|
|
@@ -8453,30 +8400,30 @@ class Eh extends NA {
|
|
|
8453
8400
|
}, n, t);
|
|
8454
8401
|
}
|
|
8455
8402
|
parse(e, A) {
|
|
8456
|
-
if (
|
|
8457
|
-
ae = new
|
|
8403
|
+
if (cl(e))
|
|
8404
|
+
ae = new rl().parse(e);
|
|
8458
8405
|
else {
|
|
8459
|
-
const t =
|
|
8460
|
-
if (!
|
|
8406
|
+
const t = Oo(e);
|
|
8407
|
+
if (!gl(t))
|
|
8461
8408
|
throw new Error("THREE.FBXLoader: Unknown format.");
|
|
8462
8409
|
if (xs(t) < 7e3)
|
|
8463
8410
|
throw new Error("THREE.FBXLoader: FBX version not supported, FileVersion: " + xs(t));
|
|
8464
|
-
ae = new
|
|
8411
|
+
ae = new al().parse(t);
|
|
8465
8412
|
}
|
|
8466
8413
|
const n = new di(this.manager).setPath(this.resourcePath || A).setCrossOrigin(this.crossOrigin);
|
|
8467
|
-
return new
|
|
8414
|
+
return new il(n, this.manager).parse(ae);
|
|
8468
8415
|
}
|
|
8469
8416
|
getFbxTree() {
|
|
8470
8417
|
return ae;
|
|
8471
8418
|
}
|
|
8472
8419
|
}
|
|
8473
|
-
class
|
|
8420
|
+
class il {
|
|
8474
8421
|
constructor(e, A) {
|
|
8475
8422
|
this.textureLoader = e, this.manager = A;
|
|
8476
8423
|
}
|
|
8477
8424
|
parse() {
|
|
8478
8425
|
Fe = this.parseConnections();
|
|
8479
|
-
const e = this.parseImages(), A = this.parseTextures(e), n = this.parseMaterials(A), t = this.parseDeformers(), i = new
|
|
8426
|
+
const e = this.parseImages(), A = this.parseTextures(e), n = this.parseMaterials(A), t = this.parseDeformers(), i = new sl().parse(t);
|
|
8480
8427
|
return this.parseScene(t, i, n), je;
|
|
8481
8428
|
}
|
|
8482
8429
|
// Parses FBXTree.Connections which holds parent-child connections between objects (e.g. material -> texture, model->geometry )
|
|
@@ -8625,7 +8572,7 @@ class sl {
|
|
|
8625
8572
|
o = new Lt();
|
|
8626
8573
|
break;
|
|
8627
8574
|
case "lambert":
|
|
8628
|
-
o = new
|
|
8575
|
+
o = new Za();
|
|
8629
8576
|
break;
|
|
8630
8577
|
default:
|
|
8631
8578
|
console.warn('THREE.FBXLoader: unknown material type "%s". Defaulting to MeshPhongMaterial.', i), o = new Lt();
|
|
@@ -8663,7 +8610,7 @@ class sl {
|
|
|
8663
8610
|
t.normalMap = i.getTexture(A, s.ID);
|
|
8664
8611
|
break;
|
|
8665
8612
|
case "ReflectionColor":
|
|
8666
|
-
t.envMap = i.getTexture(A, s.ID), t.envMap !== void 0 && (t.envMap.mapping =
|
|
8613
|
+
t.envMap = i.getTexture(A, s.ID), t.envMap !== void 0 && (t.envMap.mapping = $a, t.envMap.colorSpace = Be);
|
|
8667
8614
|
break;
|
|
8668
8615
|
case "SpecularColor":
|
|
8669
8616
|
t.specularMap = i.getTexture(A, s.ID), t.specularMap !== void 0 && (t.specularMap.colorSpace = Be);
|
|
@@ -8760,12 +8707,12 @@ class sl {
|
|
|
8760
8707
|
}), this.bindSkeleton(e.skeletons, A, t), this.addGlobalSceneSettings(), je.traverse(function(r) {
|
|
8761
8708
|
if (r.userData.transformData) {
|
|
8762
8709
|
r.parent && (r.userData.transformData.parentMatrix = r.parent.matrix, r.userData.transformData.parentMatrixWorld = r.parent.matrixWorld);
|
|
8763
|
-
const c =
|
|
8710
|
+
const c = Ho(r.userData.transformData);
|
|
8764
8711
|
r.applyMatrix4(c), r.updateWorldMatrix();
|
|
8765
8712
|
}
|
|
8766
8713
|
r.isSkinnedMesh && (r.computeBoundingBox(), r.computeBoundingSphere(), r.boundingBox.expandByScalar(3), r.boundingSphere.radius *= 3);
|
|
8767
8714
|
});
|
|
8768
|
-
const o = new
|
|
8715
|
+
const o = new ol().parse();
|
|
8769
8716
|
je.children.length === 1 && je.children[0].isGroup && (je.children[0].animations = o, je = je.children[0]), je.animations = o;
|
|
8770
8717
|
}
|
|
8771
8718
|
// parse nodes in FBXTree.Objects.Model
|
|
@@ -8973,14 +8920,14 @@ class sl {
|
|
|
8973
8920
|
const e = ae.GlobalSettings.AmbientColor.value, A = e[0], n = e[1], t = e[2];
|
|
8974
8921
|
if (A !== 0 || n !== 0 || t !== 0) {
|
|
8975
8922
|
const i = new De().setRGB(A, n, t, Be);
|
|
8976
|
-
je.add(new
|
|
8923
|
+
je.add(new er(i, 1));
|
|
8977
8924
|
}
|
|
8978
8925
|
}
|
|
8979
8926
|
"UnitScaleFactor" in ae.GlobalSettings && (je.userData.unitScaleFactor = ae.GlobalSettings.UnitScaleFactor.value);
|
|
8980
8927
|
}
|
|
8981
8928
|
}
|
|
8982
8929
|
}
|
|
8983
|
-
class
|
|
8930
|
+
class sl {
|
|
8984
8931
|
constructor() {
|
|
8985
8932
|
this.negativeMaterialIndices = !1;
|
|
8986
8933
|
}
|
|
@@ -9019,7 +8966,7 @@ class ol {
|
|
|
9019
8966
|
});
|
|
9020
8967
|
const r = s[0], c = {};
|
|
9021
8968
|
"RotationOrder" in r && (c.eulerOrder = _t(r.RotationOrder.value)), "InheritType" in r && (c.inheritType = parseInt(r.InheritType.value)), "GeometricTranslation" in r && (c.translation = r.GeometricTranslation.value), "GeometricRotation" in r && (c.rotation = r.GeometricRotation.value), "GeometricScaling" in r && (c.scale = r.GeometricScaling.value);
|
|
9022
|
-
const g =
|
|
8969
|
+
const g = Ho(c);
|
|
9023
8970
|
return this.genGeometry(A, o, i, g);
|
|
9024
8971
|
}
|
|
9025
8972
|
// Generate a BufferGeometry from a node in FBXTree.Objects.Geometry
|
|
@@ -9027,7 +8974,7 @@ class ol {
|
|
|
9027
8974
|
const i = new oA();
|
|
9028
8975
|
e.attrName && (i.name = e.attrName);
|
|
9029
8976
|
const s = this.parseGeoNode(e, A), o = this.genBuffers(s), r = new Re(o.vertex, 3);
|
|
9030
|
-
if (r.applyMatrix4(t), i.setAttribute("position", r), o.colors.length > 0 && i.setAttribute("color", new Re(o.colors, 3)), A && (i.setAttribute("skinIndex", new
|
|
8977
|
+
if (r.applyMatrix4(t), i.setAttribute("position", r), o.colors.length > 0 && i.setAttribute("color", new Re(o.colors, 3)), A && (i.setAttribute("skinIndex", new Ar(o.weightsIndices, 4)), i.setAttribute("skinWeight", new Re(o.vertexWeights, 4)), i.FBX_Deformer = A), o.normal.length > 0) {
|
|
9031
8978
|
const c = new to().getNormalMatrix(t), g = new Re(o.normal, 3);
|
|
9032
8979
|
g.applyNormalMatrix(c), i.setAttribute("normal", g);
|
|
9033
8980
|
}
|
|
@@ -9076,8 +9023,8 @@ class ol {
|
|
|
9076
9023
|
let n = 0, t = 0, i = !1, s = [], o = [], r = [], c = [], g = [], l = [];
|
|
9077
9024
|
const h = this;
|
|
9078
9025
|
return e.vertexIndices.forEach(function(u, B) {
|
|
9079
|
-
let E,
|
|
9080
|
-
u < 0 && (u = u ^ -1,
|
|
9026
|
+
let E, f = !1;
|
|
9027
|
+
u < 0 && (u = u ^ -1, f = !0);
|
|
9081
9028
|
let p = [], b = [];
|
|
9082
9029
|
if (s.push(u * 3, u * 3 + 1, u * 3 + 2), e.color) {
|
|
9083
9030
|
const d = Zt(B, n, u, e.color);
|
|
@@ -9112,7 +9059,7 @@ class ol {
|
|
|
9112
9059
|
e.material && e.material.mappingType !== "AllSame" && (E = Zt(B, n, u, e.material)[0], E < 0 && (h.negativeMaterialIndices = !0, E = 0)), e.uv && e.uv.forEach(function(d, m) {
|
|
9113
9060
|
const w = Zt(B, n, u, d);
|
|
9114
9061
|
c[m] === void 0 && (c[m] = []), c[m].push(w[0]), c[m].push(w[1]);
|
|
9115
|
-
}), t++,
|
|
9062
|
+
}), t++, f && (h.genFace(A, e, s, E, o, r, c, g, l, t), n++, t = 0, s = [], o = [], r = [], c = [], g = [], l = []);
|
|
9116
9063
|
}), A;
|
|
9117
9064
|
}
|
|
9118
9065
|
// See https://www.khronos.org/opengl/wiki/Calculating_a_Surface_Normal
|
|
@@ -9151,14 +9098,14 @@ class ol {
|
|
|
9151
9098
|
u[n[p + 2]]
|
|
9152
9099
|
)
|
|
9153
9100
|
);
|
|
9154
|
-
const { tangent: B, bitangent: E } = this.getNormalTangentAndBitangent(h),
|
|
9101
|
+
const { tangent: B, bitangent: E } = this.getNormalTangentAndBitangent(h), f = [];
|
|
9155
9102
|
for (const p of h)
|
|
9156
|
-
|
|
9157
|
-
l =
|
|
9103
|
+
f.push(this.flattenVertex(p, B, E));
|
|
9104
|
+
l = tr.triangulateShape(f, []);
|
|
9158
9105
|
} else g === 2 ? (console.warn("THREE.FBXLoader: Edge topology detected. This is currently not supported. The resulting mesh will not be correct."), l = [[0, 1, 2]]) : l = [[0, 1, 2]];
|
|
9159
9106
|
for (const [h, u, B] of l)
|
|
9160
|
-
e.vertex.push(A.vertexPositions[n[h * 3]]), e.vertex.push(A.vertexPositions[n[h * 3 + 1]]), e.vertex.push(A.vertexPositions[n[h * 3 + 2]]), e.vertex.push(A.vertexPositions[n[u * 3]]), e.vertex.push(A.vertexPositions[n[u * 3 + 1]]), e.vertex.push(A.vertexPositions[n[u * 3 + 2]]), e.vertex.push(A.vertexPositions[n[B * 3]]), e.vertex.push(A.vertexPositions[n[B * 3 + 1]]), e.vertex.push(A.vertexPositions[n[B * 3 + 2]]), A.skeleton && (e.vertexWeights.push(r[h * 4]), e.vertexWeights.push(r[h * 4 + 1]), e.vertexWeights.push(r[h * 4 + 2]), e.vertexWeights.push(r[h * 4 + 3]), e.vertexWeights.push(r[u * 4]), e.vertexWeights.push(r[u * 4 + 1]), e.vertexWeights.push(r[u * 4 + 2]), e.vertexWeights.push(r[u * 4 + 3]), e.vertexWeights.push(r[B * 4]), e.vertexWeights.push(r[B * 4 + 1]), e.vertexWeights.push(r[B * 4 + 2]), e.vertexWeights.push(r[B * 4 + 3]), e.weightsIndices.push(c[h * 4]), e.weightsIndices.push(c[h * 4 + 1]), e.weightsIndices.push(c[h * 4 + 2]), e.weightsIndices.push(c[h * 4 + 3]), e.weightsIndices.push(c[u * 4]), e.weightsIndices.push(c[u * 4 + 1]), e.weightsIndices.push(c[u * 4 + 2]), e.weightsIndices.push(c[u * 4 + 3]), e.weightsIndices.push(c[B * 4]), e.weightsIndices.push(c[B * 4 + 1]), e.weightsIndices.push(c[B * 4 + 2]), e.weightsIndices.push(c[B * 4 + 3])), A.color && (e.colors.push(s[h * 3]), e.colors.push(s[h * 3 + 1]), e.colors.push(s[h * 3 + 2]), e.colors.push(s[u * 3]), e.colors.push(s[u * 3 + 1]), e.colors.push(s[u * 3 + 2]), e.colors.push(s[B * 3]), e.colors.push(s[B * 3 + 1]), e.colors.push(s[B * 3 + 2])), A.material && A.material.mappingType !== "AllSame" && (e.materialIndex.push(t), e.materialIndex.push(t), e.materialIndex.push(t)), A.normal && (e.normal.push(i[h * 3]), e.normal.push(i[h * 3 + 1]), e.normal.push(i[h * 3 + 2]), e.normal.push(i[u * 3]), e.normal.push(i[u * 3 + 1]), e.normal.push(i[u * 3 + 2]), e.normal.push(i[B * 3]), e.normal.push(i[B * 3 + 1]), e.normal.push(i[B * 3 + 2])), A.uv && A.uv.forEach(function(E,
|
|
9161
|
-
e.uvs[
|
|
9107
|
+
e.vertex.push(A.vertexPositions[n[h * 3]]), e.vertex.push(A.vertexPositions[n[h * 3 + 1]]), e.vertex.push(A.vertexPositions[n[h * 3 + 2]]), e.vertex.push(A.vertexPositions[n[u * 3]]), e.vertex.push(A.vertexPositions[n[u * 3 + 1]]), e.vertex.push(A.vertexPositions[n[u * 3 + 2]]), e.vertex.push(A.vertexPositions[n[B * 3]]), e.vertex.push(A.vertexPositions[n[B * 3 + 1]]), e.vertex.push(A.vertexPositions[n[B * 3 + 2]]), A.skeleton && (e.vertexWeights.push(r[h * 4]), e.vertexWeights.push(r[h * 4 + 1]), e.vertexWeights.push(r[h * 4 + 2]), e.vertexWeights.push(r[h * 4 + 3]), e.vertexWeights.push(r[u * 4]), e.vertexWeights.push(r[u * 4 + 1]), e.vertexWeights.push(r[u * 4 + 2]), e.vertexWeights.push(r[u * 4 + 3]), e.vertexWeights.push(r[B * 4]), e.vertexWeights.push(r[B * 4 + 1]), e.vertexWeights.push(r[B * 4 + 2]), e.vertexWeights.push(r[B * 4 + 3]), e.weightsIndices.push(c[h * 4]), e.weightsIndices.push(c[h * 4 + 1]), e.weightsIndices.push(c[h * 4 + 2]), e.weightsIndices.push(c[h * 4 + 3]), e.weightsIndices.push(c[u * 4]), e.weightsIndices.push(c[u * 4 + 1]), e.weightsIndices.push(c[u * 4 + 2]), e.weightsIndices.push(c[u * 4 + 3]), e.weightsIndices.push(c[B * 4]), e.weightsIndices.push(c[B * 4 + 1]), e.weightsIndices.push(c[B * 4 + 2]), e.weightsIndices.push(c[B * 4 + 3])), A.color && (e.colors.push(s[h * 3]), e.colors.push(s[h * 3 + 1]), e.colors.push(s[h * 3 + 2]), e.colors.push(s[u * 3]), e.colors.push(s[u * 3 + 1]), e.colors.push(s[u * 3 + 2]), e.colors.push(s[B * 3]), e.colors.push(s[B * 3 + 1]), e.colors.push(s[B * 3 + 2])), A.material && A.material.mappingType !== "AllSame" && (e.materialIndex.push(t), e.materialIndex.push(t), e.materialIndex.push(t)), A.normal && (e.normal.push(i[h * 3]), e.normal.push(i[h * 3 + 1]), e.normal.push(i[h * 3 + 2]), e.normal.push(i[u * 3]), e.normal.push(i[u * 3 + 1]), e.normal.push(i[u * 3 + 2]), e.normal.push(i[B * 3]), e.normal.push(i[B * 3 + 1]), e.normal.push(i[B * 3 + 2])), A.uv && A.uv.forEach(function(E, f) {
|
|
9108
|
+
e.uvs[f] === void 0 && (e.uvs[f] = []), e.uvs[f].push(o[f][h * 2]), e.uvs[f].push(o[f][h * 2 + 1]), e.uvs[f].push(o[f][u * 2]), e.uvs[f].push(o[f][u * 2 + 1]), e.uvs[f].push(o[f][B * 2]), e.uvs[f].push(o[f][B * 2 + 1]);
|
|
9162
9109
|
});
|
|
9163
9110
|
}
|
|
9164
9111
|
addMorphTargets(e, A, n, t) {
|
|
@@ -9179,8 +9126,8 @@ class ol {
|
|
|
9179
9126
|
genMorphGeometry(e, A, n, t, i) {
|
|
9180
9127
|
const s = A.Vertices !== void 0 ? A.Vertices.a : [], o = A.PolygonVertexIndex !== void 0 ? A.PolygonVertexIndex.a : [], r = n.Vertices !== void 0 ? n.Vertices.a : [], c = n.Indexes !== void 0 ? n.Indexes.a : [], g = e.attributes.position.count * 3, l = new Float32Array(g);
|
|
9181
9128
|
for (let E = 0; E < c.length; E++) {
|
|
9182
|
-
const
|
|
9183
|
-
l[
|
|
9129
|
+
const f = c[E] * 3;
|
|
9130
|
+
l[f] = r[E * 3], l[f + 1] = r[E * 3 + 1], l[f + 2] = r[E * 3 + 2];
|
|
9184
9131
|
}
|
|
9185
9132
|
const h = {
|
|
9186
9133
|
vertexIndices: o,
|
|
@@ -9267,11 +9214,11 @@ class ol {
|
|
|
9267
9214
|
for (let l = 0; l < n; ++l)
|
|
9268
9215
|
i.push(i[l]);
|
|
9269
9216
|
}
|
|
9270
|
-
const g = new
|
|
9217
|
+
const g = new nl(n, t, i, o, r).getPoints(i.length * 12);
|
|
9271
9218
|
return new oA().setFromPoints(g);
|
|
9272
9219
|
}
|
|
9273
9220
|
}
|
|
9274
|
-
class
|
|
9221
|
+
class ol {
|
|
9275
9222
|
// take raw animation clips and turn them into three.js animation clips
|
|
9276
9223
|
parse() {
|
|
9277
9224
|
const e = [], A = this.parseClips();
|
|
@@ -9315,7 +9262,7 @@ class al {
|
|
|
9315
9262
|
for (const n in A) {
|
|
9316
9263
|
const t = {
|
|
9317
9264
|
id: A[n].id,
|
|
9318
|
-
times: A[n].KeyTime.a.map(
|
|
9265
|
+
times: A[n].KeyTime.a.map(ll),
|
|
9319
9266
|
values: A[n].KeyValueFloat.a
|
|
9320
9267
|
}, i = Fe.get(t.id);
|
|
9321
9268
|
if (i !== void 0) {
|
|
@@ -9362,11 +9309,11 @@ class al {
|
|
|
9362
9309
|
if (i[c] === void 0) {
|
|
9363
9310
|
const l = Fe.get(r.ID).parents.filter(function(p) {
|
|
9364
9311
|
return p.relationship !== void 0;
|
|
9365
|
-
})[0].ID, h = Fe.get(l).parents[0].ID, u = Fe.get(h).parents[0].ID, B = Fe.get(u).parents[0].ID, E = ae.Objects.Model[B],
|
|
9312
|
+
})[0].ID, h = Fe.get(l).parents[0].ID, u = Fe.get(h).parents[0].ID, B = Fe.get(u).parents[0].ID, E = ae.Objects.Model[B], f = {
|
|
9366
9313
|
modelName: E.attrName ? UA.sanitizeNodeName(E.attrName) : "",
|
|
9367
9314
|
morphName: ae.Objects.Deformer[l].attrName
|
|
9368
9315
|
};
|
|
9369
|
-
i[c] =
|
|
9316
|
+
i[c] = f;
|
|
9370
9317
|
}
|
|
9371
9318
|
i[c][g.attr] = g;
|
|
9372
9319
|
}
|
|
@@ -9518,7 +9465,7 @@ class al {
|
|
|
9518
9465
|
Math.abs(h[2])
|
|
9519
9466
|
];
|
|
9520
9467
|
if (u[0] >= 180 || u[1] >= 180 || u[2] >= 180) {
|
|
9521
|
-
const E = Math.max(...u) / 180,
|
|
9468
|
+
const E = Math.max(...u) / 180, f = new YA(...c, t), p = new YA(...l, t), b = new Se().setFromEuler(f), d = new Se().setFromEuler(p);
|
|
9522
9469
|
b.dot(d) && d.set(-d.x, -d.y, -d.z, -d.w);
|
|
9523
9470
|
const m = e.times[o - 1], w = e.times[o] - m, R = new Se(), F = new YA();
|
|
9524
9471
|
for (let y = 0; y < 1; y += 1 / E)
|
|
@@ -9529,7 +9476,7 @@ class al {
|
|
|
9529
9476
|
return [i, s];
|
|
9530
9477
|
}
|
|
9531
9478
|
}
|
|
9532
|
-
class
|
|
9479
|
+
class al {
|
|
9533
9480
|
getPrevNode() {
|
|
9534
9481
|
return this.nodeStack[this.currentIndent - 2];
|
|
9535
9482
|
}
|
|
@@ -9549,7 +9496,7 @@ class rl {
|
|
|
9549
9496
|
this.currentProp = e, this.currentPropName = A;
|
|
9550
9497
|
}
|
|
9551
9498
|
parse(e) {
|
|
9552
|
-
this.currentIndent = 0, this.allNodes = new
|
|
9499
|
+
this.currentIndent = 0, this.allNodes = new Po(), this.nodeStack = [], this.currentProp = [], this.currentPropName = "";
|
|
9553
9500
|
const A = this, n = e.split(/[\r\n]+/);
|
|
9554
9501
|
return n.forEach(function(t, i) {
|
|
9555
9502
|
const s = t.match(/^[\s\t]*;/), o = t.match(/^[\s\t]*$/);
|
|
@@ -9583,7 +9530,7 @@ class rl {
|
|
|
9583
9530
|
let l = i.split(",").slice(3);
|
|
9584
9531
|
l = l.map(function(h) {
|
|
9585
9532
|
return h.trim().replace(/^"/, "");
|
|
9586
|
-
}), t = "connections", i = [c, g],
|
|
9533
|
+
}), t = "connections", i = [c, g], Il(i, l), s[t] === void 0 && (s[t] = []);
|
|
9587
9534
|
}
|
|
9588
9535
|
t === "Node" && (s.id = i), t in s && Array.isArray(s[t]) ? s[t].push(i) : t !== "a" ? s[t] = i : s.a = i, this.setCurrentProp(s, t), t === "a" && i.slice(-1) !== "," && (s.a = Yn(i));
|
|
9589
9536
|
}
|
|
@@ -9624,14 +9571,14 @@ class rl {
|
|
|
9624
9571
|
}, this.setCurrentProp(this.getPrevNode(), i);
|
|
9625
9572
|
}
|
|
9626
9573
|
}
|
|
9627
|
-
class
|
|
9574
|
+
class rl {
|
|
9628
9575
|
parse(e) {
|
|
9629
9576
|
const A = new Ss(e);
|
|
9630
9577
|
A.skip(23);
|
|
9631
9578
|
const n = A.getUint32();
|
|
9632
9579
|
if (n < 6400)
|
|
9633
9580
|
throw new Error("THREE.FBXLoader: FBX version not supported, FileVersion: " + n);
|
|
9634
|
-
const t = new
|
|
9581
|
+
const t = new Po();
|
|
9635
9582
|
for (; !this.endOfContent(A); ) {
|
|
9636
9583
|
const i = this.parseNode(A, n);
|
|
9637
9584
|
i !== null && t.add(i.name, i);
|
|
@@ -9848,16 +9795,16 @@ class Ss {
|
|
|
9848
9795
|
return t >= 0 && (n = new Uint8Array(this.dv.buffer, A, t)), this._textDecoder.decode(n);
|
|
9849
9796
|
}
|
|
9850
9797
|
}
|
|
9851
|
-
class
|
|
9798
|
+
class Po {
|
|
9852
9799
|
add(e, A) {
|
|
9853
9800
|
this[e] = A;
|
|
9854
9801
|
}
|
|
9855
9802
|
}
|
|
9856
|
-
function
|
|
9803
|
+
function cl(a) {
|
|
9857
9804
|
const e = "Kaydara FBX Binary \0";
|
|
9858
|
-
return a.byteLength >= e.length && e ===
|
|
9805
|
+
return a.byteLength >= e.length && e === Oo(a, 0, e.length);
|
|
9859
9806
|
}
|
|
9860
|
-
function
|
|
9807
|
+
function gl(a) {
|
|
9861
9808
|
const e = ["K", "a", "y", "d", "a", "r", "a", "\\", "F", "B", "X", "\\", "B", "i", "n", "a", "r", "y", "\\", "\\"];
|
|
9862
9809
|
let A = 0;
|
|
9863
9810
|
function n(t) {
|
|
@@ -9875,10 +9822,10 @@ function xs(a) {
|
|
|
9875
9822
|
return parseInt(A[1]);
|
|
9876
9823
|
throw new Error("THREE.FBXLoader: Cannot find the version number for the file given.");
|
|
9877
9824
|
}
|
|
9878
|
-
function
|
|
9825
|
+
function ll(a) {
|
|
9879
9826
|
return a / 46186158e3;
|
|
9880
9827
|
}
|
|
9881
|
-
const
|
|
9828
|
+
const hl = [];
|
|
9882
9829
|
function Zt(a, e, A, n) {
|
|
9883
9830
|
let t;
|
|
9884
9831
|
switch (n.mappingType) {
|
|
@@ -9899,10 +9846,10 @@ function Zt(a, e, A, n) {
|
|
|
9899
9846
|
}
|
|
9900
9847
|
n.referenceType === "IndexToDirect" && (t = n.indices[t]);
|
|
9901
9848
|
const i = t * n.dataSize, s = i + n.dataSize;
|
|
9902
|
-
return
|
|
9849
|
+
return ul(hl, n.buffer, i, s);
|
|
9903
9850
|
}
|
|
9904
9851
|
const Kn = new YA(), ct = new L();
|
|
9905
|
-
function
|
|
9852
|
+
function Ho(a) {
|
|
9906
9853
|
const e = new ue(), A = new ue(), n = new ue(), t = new ue(), i = new ue(), s = new ue(), o = new ue(), r = new ue(), c = new ue(), g = new ue(), l = new ue(), h = new ue(), u = a.inheritType ? a.inheritType : 0;
|
|
9907
9854
|
a.translation && e.setPosition(ct.fromArray(a.translation));
|
|
9908
9855
|
const B = _t(0);
|
|
@@ -9919,18 +9866,18 @@ function Oo(a) {
|
|
|
9919
9866
|
_.push(B), t.makeRotationFromEuler(Kn.fromArray(_)), t.invert();
|
|
9920
9867
|
}
|
|
9921
9868
|
a.scale && i.scale(ct.fromArray(a.scale)), a.scalingOffset && o.setPosition(ct.fromArray(a.scalingOffset)), a.scalingPivot && s.setPosition(ct.fromArray(a.scalingPivot)), a.rotationOffset && r.setPosition(ct.fromArray(a.rotationOffset)), a.rotationPivot && c.setPosition(ct.fromArray(a.rotationPivot)), a.parentMatrixWorld && (l.copy(a.parentMatrix), g.copy(a.parentMatrixWorld));
|
|
9922
|
-
const E = A.clone().multiply(n).multiply(t),
|
|
9923
|
-
|
|
9869
|
+
const E = A.clone().multiply(n).multiply(t), f = new ue();
|
|
9870
|
+
f.extractRotation(g);
|
|
9924
9871
|
const p = new ue();
|
|
9925
9872
|
p.copyPosition(g);
|
|
9926
|
-
const b = p.clone().invert().multiply(g), d =
|
|
9873
|
+
const b = p.clone().invert().multiply(g), d = f.clone().invert().multiply(b), m = i, w = new ue();
|
|
9927
9874
|
if (u === 0)
|
|
9928
|
-
w.copy(
|
|
9875
|
+
w.copy(f).multiply(E).multiply(d).multiply(m);
|
|
9929
9876
|
else if (u === 1)
|
|
9930
|
-
w.copy(
|
|
9877
|
+
w.copy(f).multiply(d).multiply(E).multiply(m);
|
|
9931
9878
|
else {
|
|
9932
9879
|
const P = new ue().scale(new L().setFromMatrixScale(l)).clone().invert(), X = d.clone().multiply(P);
|
|
9933
|
-
w.copy(
|
|
9880
|
+
w.copy(f).multiply(E).multiply(X).multiply(m);
|
|
9934
9881
|
}
|
|
9935
9882
|
const R = c.clone().invert(), F = s.clone().invert();
|
|
9936
9883
|
let y = e.clone().multiply(r).multiply(c).multiply(A).multiply(n).multiply(t).multiply(R).multiply(o).multiply(s).multiply(i).multiply(F);
|
|
@@ -9961,19 +9908,19 @@ function Yn(a) {
|
|
|
9961
9908
|
return parseFloat(A);
|
|
9962
9909
|
});
|
|
9963
9910
|
}
|
|
9964
|
-
function
|
|
9911
|
+
function Oo(a, e, A) {
|
|
9965
9912
|
return e === void 0 && (e = 0), A === void 0 && (A = a.byteLength), new TextDecoder().decode(new Uint8Array(a, e, A));
|
|
9966
9913
|
}
|
|
9967
|
-
function
|
|
9914
|
+
function Il(a, e) {
|
|
9968
9915
|
for (let A = 0, n = a.length, t = e.length; A < t; A++, n++)
|
|
9969
9916
|
a[n] = e[A];
|
|
9970
9917
|
}
|
|
9971
|
-
function
|
|
9918
|
+
function ul(a, e, A, n) {
|
|
9972
9919
|
for (let t = A, i = 0; t < n; t++, i++)
|
|
9973
9920
|
a[i] = e[t];
|
|
9974
9921
|
return a;
|
|
9975
9922
|
}
|
|
9976
|
-
class
|
|
9923
|
+
class Bl extends NA {
|
|
9977
9924
|
constructor(e) {
|
|
9978
9925
|
super(e);
|
|
9979
9926
|
}
|
|
@@ -9991,7 +9938,7 @@ class El extends NA {
|
|
|
9991
9938
|
* you must call setResourcePath() explicitly prior to load.
|
|
9992
9939
|
*/
|
|
9993
9940
|
load(e, A, n, t) {
|
|
9994
|
-
const i = this, s = this.path === "" ? At.extractUrlBase(e) : this.path, o = new
|
|
9941
|
+
const i = this, s = this.path === "" ? At.extractUrlBase(e) : this.path, o = new fA(this.manager);
|
|
9995
9942
|
o.setPath(this.path), o.setRequestHeader(this.requestHeader), o.setWithCredentials(this.withCredentials), o.load(e, function(r) {
|
|
9996
9943
|
try {
|
|
9997
9944
|
A(i.parse(r, s));
|
|
@@ -10035,11 +9982,11 @@ class El extends NA {
|
|
|
10035
9982
|
} else
|
|
10036
9983
|
t[l] = h;
|
|
10037
9984
|
}
|
|
10038
|
-
const o = new
|
|
9985
|
+
const o = new El(this.resourcePath || A, this.materialOptions);
|
|
10039
9986
|
return o.setCrossOrigin(this.crossOrigin), o.setManager(this.manager), o.setMaterials(s), o;
|
|
10040
9987
|
}
|
|
10041
9988
|
}
|
|
10042
|
-
class
|
|
9989
|
+
class El {
|
|
10043
9990
|
constructor(e = "", A = {}) {
|
|
10044
9991
|
this.baseUrl = e, this.options = A, this.materialsInfo = {}, this.materials = {}, this.materialsArray = [], this.nameLookup = {}, this.crossOrigin = "anonymous", this.side = this.options.side !== void 0 ? this.options.side : Js, this.wrap = this.options.wrap !== void 0 ? this.options.wrap : it;
|
|
10045
9992
|
}
|
|
@@ -10158,15 +10105,15 @@ class fl {
|
|
|
10158
10105
|
return i = t.indexOf("-bm"), i >= 0 && (A.bumpScale = parseFloat(t[i + 1]), t.splice(i, 2)), i = t.indexOf("-s"), i >= 0 && (n.scale.set(parseFloat(t[i + 1]), parseFloat(t[i + 2])), t.splice(i, 4)), i = t.indexOf("-o"), i >= 0 && (n.offset.set(parseFloat(t[i + 1]), parseFloat(t[i + 2])), t.splice(i, 4)), n.url = t.join(" ").trim(), n;
|
|
10159
10106
|
}
|
|
10160
10107
|
loadTexture(e, A, n, t, i) {
|
|
10161
|
-
const s = this.manager !== void 0 ? this.manager :
|
|
10108
|
+
const s = this.manager !== void 0 ? this.manager : nr;
|
|
10162
10109
|
let o = s.getHandler(e);
|
|
10163
10110
|
o === null && (o = new di(s)), o.setCrossOrigin && o.setCrossOrigin(this.crossOrigin);
|
|
10164
10111
|
const r = o.load(e, n, t, i);
|
|
10165
10112
|
return A !== void 0 && (r.mapping = A), r;
|
|
10166
10113
|
}
|
|
10167
10114
|
}
|
|
10168
|
-
const Cl = /^[og]\s*(.+)?/,
|
|
10169
|
-
function
|
|
10115
|
+
const Cl = /^[og]\s*(.+)?/, fl = /^mtllib /, pl = /^usemtl /, dl = /^usemap /, Fs = /\s+/, Rs = new L(), Jn = new L(), Ms = new L(), Ts = new L(), hA = new L(), $t = new De();
|
|
10116
|
+
function Ql() {
|
|
10170
10117
|
const a = {
|
|
10171
10118
|
objects: [],
|
|
10172
10119
|
object: {},
|
|
@@ -10326,12 +10273,12 @@ function ml() {
|
|
|
10326
10273
|
};
|
|
10327
10274
|
return a.startObject("", !1), a;
|
|
10328
10275
|
}
|
|
10329
|
-
class
|
|
10276
|
+
class Bh extends NA {
|
|
10330
10277
|
constructor(e) {
|
|
10331
|
-
super(e), this.materials = null, this.materialsLoader = new
|
|
10278
|
+
super(e), this.materials = null, this.materialsLoader = new Bl(e);
|
|
10332
10279
|
}
|
|
10333
10280
|
load(e, A, n, t) {
|
|
10334
|
-
const i = this, s = new
|
|
10281
|
+
const i = this, s = new fA(this.manager);
|
|
10335
10282
|
s.setPath(this.path), s.setRequestHeader(this.requestHeader), s.setWithCredentials(this.withCredentials), s.load(e, async function(o) {
|
|
10336
10283
|
try {
|
|
10337
10284
|
const r = i.parse(o, !0);
|
|
@@ -10361,7 +10308,7 @@ class fh extends NA {
|
|
|
10361
10308
|
return this.materials = e, this;
|
|
10362
10309
|
}
|
|
10363
10310
|
parse(e, A = !1) {
|
|
10364
|
-
const n = new
|
|
10311
|
+
const n = new Ql();
|
|
10365
10312
|
e.indexOf(`\r
|
|
10366
10313
|
`) !== -1 && (e = e.replace(/\r\n/g, `
|
|
10367
10314
|
`)), e.indexOf(`\\
|
|
@@ -10406,24 +10353,24 @@ class fh extends NA {
|
|
|
10406
10353
|
} else if (c === "f") {
|
|
10407
10354
|
const l = r.slice(1).trim().split(Fs), h = [];
|
|
10408
10355
|
for (let B = 0, E = l.length; B < E; B++) {
|
|
10409
|
-
const
|
|
10410
|
-
if (
|
|
10411
|
-
const p =
|
|
10356
|
+
const f = l[B];
|
|
10357
|
+
if (f.length > 0) {
|
|
10358
|
+
const p = f.split("/");
|
|
10412
10359
|
h.push(p);
|
|
10413
10360
|
}
|
|
10414
10361
|
}
|
|
10415
10362
|
const u = h[0];
|
|
10416
10363
|
for (let B = 1, E = h.length - 1; B < E; B++) {
|
|
10417
|
-
const
|
|
10364
|
+
const f = h[B], p = h[B + 1];
|
|
10418
10365
|
n.addFace(
|
|
10419
10366
|
u[0],
|
|
10420
|
-
|
|
10367
|
+
f[0],
|
|
10421
10368
|
p[0],
|
|
10422
10369
|
u[1],
|
|
10423
|
-
|
|
10370
|
+
f[1],
|
|
10424
10371
|
p[1],
|
|
10425
10372
|
u[2],
|
|
10426
|
-
|
|
10373
|
+
f[2],
|
|
10427
10374
|
p[2]
|
|
10428
10375
|
);
|
|
10429
10376
|
}
|
|
@@ -10445,11 +10392,11 @@ class fh extends NA {
|
|
|
10445
10392
|
} else if ((i = Cl.exec(r)) !== null) {
|
|
10446
10393
|
const g = (" " + i[0].slice(1).trim()).slice(1);
|
|
10447
10394
|
n.startObject(g);
|
|
10448
|
-
} else if (
|
|
10395
|
+
} else if (pl.test(r))
|
|
10449
10396
|
n.object.startMaterial(r.substring(7).trim(), n.materialLibraries);
|
|
10450
|
-
else if (
|
|
10397
|
+
else if (fl.test(r))
|
|
10451
10398
|
n.materialLibraries.push(r.substring(7).trim());
|
|
10452
|
-
else if (
|
|
10399
|
+
else if (dl.test(r))
|
|
10453
10400
|
console.warn('THREE.OBJLoader: Rendering identifier "usemap" not supported. Textures must be defined in MTL files.');
|
|
10454
10401
|
else if (c === "s") {
|
|
10455
10402
|
if (i = r.split(" "), i.length > 1) {
|
|
@@ -10476,7 +10423,7 @@ class fh extends NA {
|
|
|
10476
10423
|
const h = new oA();
|
|
10477
10424
|
h.setAttribute("position", new Re(o.vertices, 3)), o.normals.length > 0 && h.setAttribute("normal", new Re(o.normals, 3)), o.colors.length > 0 && (l = !0, h.setAttribute("color", new Re(o.colors, 3))), o.hasUVIndices === !0 && h.setAttribute("uv", new Re(o.uvs, 2));
|
|
10478
10425
|
const u = [];
|
|
10479
|
-
for (let E = 0,
|
|
10426
|
+
for (let E = 0, f = r.length; E < f; E++) {
|
|
10480
10427
|
const p = r[E], b = p.name + "_" + p.smooth + "_" + l;
|
|
10481
10428
|
let d = e.materials[b];
|
|
10482
10429
|
if (this.materials !== null) {
|
|
@@ -10492,7 +10439,7 @@ class fh extends NA {
|
|
|
10492
10439
|
}
|
|
10493
10440
|
let B;
|
|
10494
10441
|
if (u.length > 1) {
|
|
10495
|
-
for (let E = 0,
|
|
10442
|
+
for (let E = 0, f = r.length; E < f; E++) {
|
|
10496
10443
|
const p = r[E];
|
|
10497
10444
|
h.addGroup(p.groupStart, p.groupCount, E);
|
|
10498
10445
|
}
|
|
@@ -10510,7 +10457,7 @@ class fh extends NA {
|
|
|
10510
10457
|
return A;
|
|
10511
10458
|
}
|
|
10512
10459
|
}
|
|
10513
|
-
class
|
|
10460
|
+
class Eh {
|
|
10514
10461
|
constructor() {
|
|
10515
10462
|
this.isPass = !0, this.enabled = !0, this.needsSwap = !0, this.clear = !1, this.renderToScreen = !1;
|
|
10516
10463
|
}
|
|
@@ -10523,125 +10470,124 @@ class Ch {
|
|
|
10523
10470
|
}
|
|
10524
10471
|
}
|
|
10525
10472
|
new Os(-1, 1, 1, -1, 0, 1);
|
|
10526
|
-
class
|
|
10473
|
+
class ml extends oA {
|
|
10527
10474
|
constructor() {
|
|
10528
10475
|
super(), this.setAttribute("position", new Re([-1, 3, 0, -1, -1, 0, 3, -1, 0], 3)), this.setAttribute("uv", new Re([0, 2, 0, 0, 2, 0], 2));
|
|
10529
10476
|
}
|
|
10530
10477
|
}
|
|
10531
|
-
new
|
|
10532
|
-
const
|
|
10533
|
-
let
|
|
10534
|
-
|
|
10478
|
+
new ml();
|
|
10479
|
+
const bl = typeof TextDecoder > "u" ? (0, module.require)("util").TextDecoder : TextDecoder;
|
|
10480
|
+
let qo = new bl("utf-8", { ignoreBOM: !0, fatal: !0 });
|
|
10481
|
+
qo.decode();
|
|
10535
10482
|
let en = null;
|
|
10536
|
-
function
|
|
10483
|
+
function wl() {
|
|
10537
10484
|
return (en === null || en.buffer !== ze.memory.buffer) && (en = new Uint8Array(ze.memory.buffer)), en;
|
|
10538
10485
|
}
|
|
10539
|
-
function
|
|
10540
|
-
return
|
|
10486
|
+
function yl(a, e) {
|
|
10487
|
+
return qo.decode(wl().subarray(a, a + e));
|
|
10541
10488
|
}
|
|
10542
10489
|
const vA = new Array(32).fill(void 0);
|
|
10543
10490
|
vA.push(void 0, null, !0, !1);
|
|
10544
10491
|
let Nt = vA.length;
|
|
10545
|
-
function
|
|
10492
|
+
function Dl(a) {
|
|
10546
10493
|
Nt === vA.length && vA.push(vA.length + 1);
|
|
10547
10494
|
const e = Nt;
|
|
10548
10495
|
return Nt = vA[e], vA[e] = a, e;
|
|
10549
10496
|
}
|
|
10550
|
-
function
|
|
10497
|
+
function Sl(a) {
|
|
10551
10498
|
return vA[a];
|
|
10552
10499
|
}
|
|
10553
|
-
function
|
|
10500
|
+
function xl(a) {
|
|
10554
10501
|
a < 36 || (vA[a] = Nt, Nt = a);
|
|
10555
10502
|
}
|
|
10556
|
-
function
|
|
10557
|
-
const e =
|
|
10558
|
-
return
|
|
10503
|
+
function Fl(a) {
|
|
10504
|
+
const e = Sl(a);
|
|
10505
|
+
return xl(a), e;
|
|
10559
10506
|
}
|
|
10560
10507
|
let An = null;
|
|
10561
|
-
function
|
|
10508
|
+
function Ko() {
|
|
10562
10509
|
return (An === null || An.buffer !== ze.memory.buffer) && (An = new Float32Array(ze.memory.buffer)), An;
|
|
10563
10510
|
}
|
|
10564
10511
|
let gn = 0;
|
|
10565
10512
|
function jn(a, e) {
|
|
10566
10513
|
const A = e(a.length * 4);
|
|
10567
|
-
return
|
|
10514
|
+
return Ko().set(a, A / 4), gn = a.length, A;
|
|
10568
10515
|
}
|
|
10569
10516
|
let tn = null;
|
|
10570
10517
|
function Gs() {
|
|
10571
10518
|
return (tn === null || tn.buffer !== ze.memory.buffer) && (tn = new Int32Array(ze.memory.buffer)), tn;
|
|
10572
10519
|
}
|
|
10573
|
-
function
|
|
10574
|
-
return
|
|
10520
|
+
function Rl(a, e) {
|
|
10521
|
+
return Ko().subarray(a / 4, a / 4 + e);
|
|
10575
10522
|
}
|
|
10576
|
-
function
|
|
10523
|
+
function Ml(a, e, A) {
|
|
10577
10524
|
try {
|
|
10578
10525
|
const h = ze.__wbindgen_add_to_stack_pointer(-16);
|
|
10579
10526
|
var n = jn(a, ze.__wbindgen_malloc), t = gn, i = jn(e, ze.__wbindgen_malloc), s = gn, o = jn(A, ze.__wbindgen_malloc), r = gn;
|
|
10580
10527
|
ze.generateTangents(h, n, t, i, s, o, r);
|
|
10581
|
-
var c = Gs()[h / 4 + 0], g = Gs()[h / 4 + 1], l =
|
|
10528
|
+
var c = Gs()[h / 4 + 0], g = Gs()[h / 4 + 1], l = Rl(c, g).slice();
|
|
10582
10529
|
return ze.__wbindgen_free(c, g * 4), l;
|
|
10583
10530
|
} finally {
|
|
10584
10531
|
ze.__wbindgen_add_to_stack_pointer(16);
|
|
10585
10532
|
}
|
|
10586
10533
|
}
|
|
10587
|
-
const
|
|
10588
|
-
var A =
|
|
10589
|
-
return
|
|
10590
|
-
},
|
|
10591
|
-
throw
|
|
10592
|
-
}, Gl = "data:application/octet-stream;base64,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TQ0WIARBAnRqIgQgBCgCAEEBajYCACACQQRqIQIgA0F/aiIDDQALCyABQdgFaigCACABKALgBUUNFUEAIQJBADYCAEEBIQQDQCABQfgCaiABQdgFahBjIAEoAvwCIgMgBEF/aiIHTQ0UIAEoAvgCIAJqKAIAIQMgAUHwAmogAUHoBWoQYyABKAL0AiINIAdNDRMgASgC8AIgAmooAgAhByABQdgFaigCACENIAEoAuAFIhEgBE0NEiACIA1qQQRqIAMgB2o2AgAgAkEEaiECIARBAWoiBEGAEEcNAAsgCEEJTwRAQQAhBCABQZgGakEAQQRBCCAGGyALG2ohCCAFIQMDQCABQegCaiADKAIAEGEgAUGYBmogACABKALoAiABKALsAhAxIDAgLiAIKgIAEDwhAiABQeACaiABQdgFahBjIAEoAuQCIgYgAk0NEiABQcgFaigCACABKALQBSINIAJBAnQiBiABKALgAmooAgAiC00NESABQdgCaiABQfgFahBjIAEoAtwCIg0gAk0NECALQQJ0aiABKALYAiAGaigCAEECdGogBDYCACABQfgFaigCACELIAEoAoAGIgcgAk0NDyAGIAtqIgIgAigCAEEBajYCACADQQRqIQMgCiAEQQFqIgRHDQALCyABQdACaiABQegFahBjIAEoAtQCRQ0MIAEoAtACKAIAIQNBBCECQQEhBANAIAFByAJqIAFB6AVqEGMgASgCzAIiCiAETQ0MIAMgASgCyAIgAmooAgBJBEAgAUHAAmogAUHoBWoQYyABKALEAiIDIARNDQwgASgCwAIgAmooAgAhAwsgAkEEaiECIARBAWoiBEGAEEcNAAsgAUHgA2oiAkIANwIAIAJBCGpCADcCACABQaAGaiABQegDaikDADcDACABIAEpA+ADNwOYBiABQYgGaiABQZgGaiADEEEgASgCiAYhCiABKAKQBiELQQAhBgNAIAFBuAJqIAFB2AVqEGMgASgCvAIiAyAGTQ0KIAFByAVqKAIAIQIgASgC0AUiBCAGQQJ0IgggASgCuAJqKAIAIgNNDQkgAUGwAmogAUHoBWoQYyABKAK0AiIEIAZNDQggASgCsAIgCGooAgAiCEECTwRAIAIgA0ECdGohBEEAIQMgCiECA0AgAUGoAmogBSAEKAIAIgdBAnRqKAIAEGEgAUGYBmogACABKAKoAiABKAKsAhAxIAMgC0YNCSACIAEoApgGNgIAIAJBBGogASgCnAY2AgAgASgCoAYhDSACQQxqIAc2AgAgAkEIaiANNgIAIARBBGohBCACQRBqIQIgCCADQQFqIgNHDQALIAUgCiAAQQAgCEF/ahAECyAGQQFqIgZBgBBHDQALIBNBASATQQFLGyEFIA5BPGohAyABQYgGahBSIAFB+AVqKAIAGiABQfgFahBWIAFB6AVqKAIAGiABQegFahBWIAFB2AVqKAIAGiABQdgFahBWIAFByAVqKAIAGiABQcgFahBWQQAhAkEAIQRBACEGQQAhBwNAIAFBoAJqIAFBwANqEGMgASgCpAIiCiAETQ0GIAEoAqACIAJqKAIAIQogAUGYAmogAUHAA2oQYyABKAKcAiILIARBAWpNDQUgASgCmAIgAmpBBGooAgAhCyABQZACaiABQcADahBjIAEoApQCIgggBEECak0NBCABKAKQAiACakEIaigCACEIIAFBiAJqIAoQYSABQYgGaiAAIAEoAogCIAEoAowCEDEgAUGAAmogCxBhIAFB4ANqIAAgASgCgAIgASgChAIQMSABQfgBaiAIEGEgAUGYBmogACABKAL4ASABKAL8ARAxAkACQCABQYgGaiABQeADahALDQAgAUGIBmogAUGYBmoQCw0AIAFB4ANqIAFBmAZqEAtFDQELIAwgBk0NBCADIAMoAgBBAXI2AgAgB0EBaiEHCyACQQxqIQIgBEEDaiEEIANByABqIQMgBSAGQQFqIgZHDQALIA4gAUHAA2ooAgAgEyAHayIKIBMQECABQcADaigCACELAkACQCAKRQRAQX8hBgwBC0EAIQYDQCAOIAZByABsaiIDQn83AgAgA0EIakF/NgIAIANBDGpCADcCACADQRRqQQA2AgAgA0E8aiADQRhqIQIgAygCPCEEQQMhAwNAIAJCADcCACACQRhqQgA3AgAgAkEQakIANwIAIAJBCGpCADcCACAEQQRyIQQgA0F/aiIDDQALIAQ2AgAgBkEBaiIGIApHDQALIAFBpAZqIQYgAUHsA2ohDEEAIQUDQCABQfABaiALIAVBDGxqIgMoAgAQYSABQagFaiAAIAEoAvABIAEoAvQBEDEgAUHoAWogA0EEaiICKAIAEGEgAUG4BWogACABKALoASABKALsARAxIAFB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AkAgASgCRBAxIAEpA4gGISsgASgCkAYhFyABQThqIAIQYSABQYgGaiAAIAEoAjggASgCPBAxIAEoAogGIQIgASgCjAYhECABKAKQBiESIAFBMGogHRBhIAFBiAZqIAAgASgCMCABKAI0EDEgASkDiAYhLCABKAKQBiEdIAEgFzYCgAYgASArNwP4BSABIBI2ApAGIAEgEDYCjAYgASACNgKIBiABQcgFaiABQfgFaiABQYgGahAVIAEgHTYCgAYgASAsNwP4BSABIBI2ApAGIAEgEDYCjAYgASACNgKIBiABQdgFaiABQfgFaiABQYgGahAVIBYgAUHQBWoiECgCADYCACABIAEpA8gFNwP4BSABQbgFaiABQcgFahARITUgBCAYKAIANgIAIAEgASkDuAU3A4gGIAFBKGogAUGIBmogGRBoIAEoAigiAiABKAIsIhJHBEADQCACIDUgAioCAJQ4AgAgEiACQQRqIgJHDQALCyABQcgFaiABQfgFaiABQYgGahAVIAQgECgCADYCACABIAEpA8gFNwOIBiABQYgGahBRBEAgBCAQKAIANgIAIAEgASkDyAU3A4gGIAFByAVqIAFBiAZqECMLIBYgAUHgBWoiECgCADYCACABIAEpA9gFNwP4BSABQbgFaiABQdgFahARITUgBCAYKAIANgIAIAEgASkDuAU3A4gGIAFBIGogAUGIBmogGRBoIAEoAiAiAiABKAIkIhJHBEADQCACIDUgAioCAJQ4AgAgEiACQQRqIgJHDQALCyABQdgFaiABQfgFaiABQYgGahAVIAQgECgCADYCACABIAEpA9gFNwOIBiABQYgGahBRBEAgBCAQKAIANgIAIAEgASkD2AU3A4gGIAFB2AVqIAFBiAZqECMLQwAAgD8gAUHIBWogAUHYBWoQESI1QwAAgL+XIDVDAACAP14buxAOIA8qAjQhNSAPKgIwITcgFiADKAIANgIAIAEgASkDmAY3A/gFIAEgMjgCkAYgASAvOAKMBiABIDM4AogGIAFBGGogAUGIBmogGRBotiEvIAEoAhgiAiABKAIcIg9HBEADQCACIAIqAgAgL5Q4AgAgDyACQQRqIgJHDQALCyABQZgGaiABQfgFaiABQYgGahAWIBYgFUEIaiIPKAIANgIAIAEgFSkCADcD+AUgASAxOAKQBiABIDA4AowGIAEgNDgCiAYgAUEQaiABQYgGaiAZEGggASgCECICIAEoAhQiEEcEQANAIAIgAioCACAvlDgCACAQIAJBBGoiAkcNAAsLIAFB6AVqIAFB+AVqIAFBiAZqEBYgDyABQfAFaigCADYCACAVIAEpA+gFNwIAIAEgNyAvlCABKgKkBpI4AqQGIAEgNSAvlCABKgK0BpI4ArQGIC4gL5IhLgsgCSAHQQFqIgdHDQALDAQLIAkgD0HcgsAAED8ACyAFIAJB7ILAABA/AAsgDCACQfyCwAAQPwALIAwgB0GMg8AAED8ACyAEIAMoAgA2AgAgASABKQOYBjcDiAYgAUGIBmoQUQRAIAQgAygCADYCACABIAEpA5gGNwOIBiABQZgGaiABQYgGahAjCyAEIBVBCGoiAigCADYCACABIBUpAgA3A4gGIAFBiAZqEFEEQCAEIAIoAgA2AgAgASAVKQIANwOIBiABQfgFaiABQYgGahAjIAIgAUGABmooAgA2AgAgFSABKQP4BTcCAAsgLkMAAAAAXkEBc0UEQCABIAEqAqQGIC6VOAKkBiABIAEqArQGIC6VOAK0BgsgASgC4AQiAiAMTQ0DIAEoAtgEIAxBKGxqIAFBmAZqQSgQTiAMQQFqIQwLICAEQCAIKAJAIAggKGpBxABqLQAAaiICICJPDQICfyAUIAJBKGxqIgIoAiBBAUcEQCABKALgBCIEIAVNDQYgAiABKALYBCAFQShsakEoEDsaQQEMAQsgASgC4AQiBCAFTQ0GIAFBmAZqIAIgASgC2AQgBUEobGoQBSACIAFBmAZqQSgQTkECCyEFIAJBIGogBTYCACACICYtAAA6ACQgESgCABogERBWIB9BAWoiHyANKAIASA0BDAYLC0F/QQRBrIPAABA/AAsgAiAiQbyDwAAQPwALIAwgAkGcg8AAED8ACyAFIARBzIPAABA/AAsgBSAEQdyDwAAQPwALICNBAWoiIyAGRw0ACyABQfgEaigCABogAUH4BGoQViABQegEahBJIAFB6ARqEFIgAUHYBGoQVCABKALIBCEUIAEoAtADIQsLIAFBwANqKAIAIQUgCiATSARAIBtBAUghCSAKIQMDQCALIANByABsaiIELQA8QQJxRQRAIANBA2whDCAEQUBrIQhBACEGA0ACQCAJDQAgBSAGIAxqQQJ0aigCACEOQQAhAgNAAkAgAiAOIAUgAkECdGooAgAiB0ciDWohAiAHIA5GDQAgAiAbSA0BCwsgDQ0AIBQgCCgCACAEIAZqQcQAai0AAGpBKGxqIBQgCyACQQNuIg5ByABsaiIHKAJAIAcgAiAOQQNsa2pBxABqLQAAakEobGpBKBA7GgsgBkEBaiIGQQNHDQALCyADICVGIANBAWohA0UNAAsLIApBAU4EQCALQcQAaiEEQQAhBQNAAkAgCyAFQcgAbGoiAy0APEECcUUNACABQQA2AugDIAFCADcD4AMgAUEIaiADKAI4IgYCf0EBQQEgA0HFAGotAABBH3F0QQEgAy0AREEfcXRyQQEgA0HGAGotAABBH3F0ciICQQJxRQ0AGkECIAJBBHFFDQAaQQBBAyACQQhxGwsiDhBmEGEgAUGYBmogACABKAIIIAEoAgwQMSABQegDaiABQaAGaigCADYCACABIAEpA5gGNwPgAyADQUBrIQNBACECA0AgASAGIAIgBGotAAAiCRBmEGEgAUGYBmogACABKAIAIAEoAgQQMSABQZgGaiABQeADahALBEAgFCADKAIAIgMgDmpBKGxqIBQgAyAJakEobGpBKBA7GgwCCyACQQFqIgJBA0cNAAsLIARByABqIQQgBUEBaiIFIApHDQALCyABKALQBCEFQQAhBkEAIQkDQEEAIAUgCWsiAyADIAVLGyEKIBQgCUEobGohDkEAIQNBACEEA0AgBCAKRg0DIAMgDmoiAikCACErIAEgAkEIaigCADYC6AMgASArNwLgAyAAIAFB4ANqIAJBDGoqAgAgAkEcaioCACACQSRqLQAAEB8gBEEBaiEEIANBKGoiA0H4AEcNAAsgBCAJaiEJIAZBAWoiBiATRw0ACyABQcgEahBUIAFBuARqKAIAGiABQbgEahBWIAFBqARqEFIgAUHQA2oQUyABQcADaigCABogAUHAA2oQVkEBIQILIAFB4AZqJAAgAg8LIAQgCWogBUHMgsAAED8ACyAGIAxBvILAABA/AAsgBEECaiAIQayCwAAQPwALIARBAWogC0GcgsAAED8ACyAEIApBjILAABA/AAsgCyALQdyFwAAQPwALIAYgBEHMhcAAED8ACyADIARBvIXAABA/AAsgBiADQayFwAAQPwALIAQgA0GchcAAED8ACyAEIApBjIXAABA/AAtBAEEAQfyEwAAQPwALIAIgB0HshMAAED8ACyACIA1B3ITAABA/AAsgCyANQcyEwAAQPwALIAIgBkG8hMAAED8ACyAEIBFBrITAABA/AAsgBEF/aiANQZyEwAAQPwALIARBf2ogA0GMhMAAED8ACyAEIBFB7IPAABA/AAtBAEEAQfyDwAAQPwALvQECAX8CfCMAQTBrIgEkAAJAAkBBgAhEAAAAAACAdz4iAkQxY2IaYbTgPSIDob1CNIinQf8PcWtBEEoNAAwBC0GACEQA0HLPpXd3PkRzcAMuihmzOyIDob1CNIinQf8PcWtBMkgEQEQA0HLPpXd3PiECDAELRM7Ocs+ld3c+IgJE7TI+8kfXGbsiA6EaCyAARM7Ocs+ld3c+OQMAIABBAjYCCCAAIAJEzs5yz6V3dz6hIAOhOQMQIAFBMGokAAuHCQMIfwN+CH0jAEGgAWsiBSQAIAVBOGogASADQQR0aiIHQQhqKAIAIgY2AgAgBUHIAGogBjYCACAFIAcpAgAiDTcDMCAFIA03A0BBASEMIANBAWoiCiAETARAIAEgCkEEdGohCQNAQQAhBkEAIQgDQAJAAkAgBUEwaiAGaioCACAGIAlqKgIAIhBeBEAgBUEwaiAIQQJ0aiEHDAELIAVBQGsgBmoiByoCACAQXUEBcw0BCyAHIBA4AgALIAhBAWohCCAGQQRqIgZBDEcNAAsgCUEQaiEJIApBAWoiCiAETA0ACwsCQCAFKgJEIAUqAjSTIhIgBSoCQCAFKgIwkyIQXkEBc0VBACASIAUqAkggBSoCOJMiEV4bDQBBACEMIBEgEF5BAXMNAEECIQwLAkAgDEECdCIGIAVBQGtqKgIAIhIgBUEwaiAGaioCACIQkkMAAAA/lCIRIBJgRUEAIBEgEF9BAXMbRQRAIAMgBEoNASADIQcDQCAFQShqIAAgASAHQQR0aigCDEECdGoiCigCACIGEGEgBUHQAGogAiAFKAIoIAUoAiwQMSAFQSBqIAYQYSAFQeAAaiACIAUoAiAgBSgCJBAvIAVBGGogBhBhIAIgBSgCGCAFKAIcED0hDQJAIAcgA0wNACANp74hEyANQiCIp74hFEEBIQkgBSoCaCEVIAUqAmQhFiAFKgJgIRcgBSoCWCERIAUqAlQhEiAFKgJQIRAgAyEGA0AgBUEQaiAAIAEgBkEEdGooAgxBAnRqIggoAgAiCxBhIAVB8ABqIAIgBSgCECAFKAIUEDEgBUEIaiALEGEgBUGAAWogAiAFKAIIIAUoAgwQLyAFIAsQYSACIAUoAgAgBSgCBBA9IQ0CQAJAIBAgBSoCcFwNACASIAUqAnRcDQAgESAFKgJ4XA0AIBcgBSoCgAFcDQAgFiAFKgKEAVwgFCANQiCIp75cciATIA2nvlxyDQAgFSAFKgKIAVwNAEEAIQkMAQsgBkEBaiEGCyAGIAdIQQAgCUEBcRsNAAsgCUEBcQ0AIAogCCgCADYCAAsgB0EBaiIHIARMDQALDAELIAMiCCAEIgZIBEAgDEECdCEJA0BBASEHAkAgCCAGTg0AA0AgCCABIAhBBHRqIAlqKgIAIBFdIgdqIQggB0EBcw0BIAggBkgNAAsLAkAgCCAGTg0AA0ACQCAGIAEgBkEEdGogCWoqAgAgEV0iC0EBcyIKayEGIAsNACAIIAZIDQELCyAHIApyDQAgASAIQQR0aiIHKQIAIQ4gASAGQQR0aiILQQhqIgopAgAhDyAHIAspAgA3AgAgB0EIaiIHKQIAIQ0gByAPNwIAIAogDTcCACALIA43AgAgBkF/aiEGIAhBAWohCAsgCCAGSA0ACwsCQCAGIAhHBEAgBiEHIAghBgwBCyABIAZBBHRqIAxBAnRqKgIAIBFdRQRAIAZBf2ohBwwBCyAGIQcgBkEBaiEGCyAHIANKBEAgACABIAIgAyAHEAQLIAYgBE4NACAAIAEgAiAGIAQQBAsgBUGgAWokAAunCAMNfwF+An0jAEEwayIDJAAgAEElEFoiBUEQaiEHAkACQCABKgIMIAIqAgxcDQAgASoCHCACKgIcXA0AIAJBDGohCCABQQxqIQlBfCEGIAIhCiACIQAgASELIAEhBANAIAZBAWoiDiAGTwRAAkAgBCAJRgRAIAtBEGohDCAJQQxqIQkgC0EMaiILIQQMAQsgBEEEaiEMCwJAIAAgCEYEQCAKQRBqIQ0gCEEMaiEIIApBDGoiCiEADAELIABBBGohDQsgACoCACERIAQqAgAgDiEGIA0hACAMIQQgEVsNAQwCCwsgAkEcaiEIIAFBHGohCUF8IQYgAkEQaiIKIQAgAUEQaiIOIQsgDiEEAkADQCAGQQFqIg8gBkkNAQJAIAQgCUYEQCALQRBqIQwgCUEMaiEJIAtBDGoiCyEEDAELIARBBGohDAsCQCAAIAhGBEAgCkEQaiENIAhBDGohCCAKQQxqIgohAAwBCyAAQQRqIQ0LIAAqAgAhESAEKgIAIA8hBiANIQAgDCEEIBFbDQALDAELIAUgASgCHDYCHCAFIAEpAgA3AgAgByAOKQIANwIAIAVBCGogAUEIaikCADcCACAHQQhqIA5BCGooAgA2AgAMAQsgBSABKgIMIAIqAgySQwAAAD+UOAIMIAUgASoCHCACKgIckkMAAAA/lDgCHCADQRhqIgwgAUEIaigCACIANgIAIAMgASkCACIQNwMQIAUgEDcCACAFQQhqIAA2AgAgA0EoaiINIAJBCGooAgA2AgAgAyACKQIANwMgIANBCGpBAEEDEGggAygCCCIAIAMoAgwiBEkEQCAEIABrIQYgBSAAQQJ0IgRqIQAgA0EgaiAEaiEEA0AgACAEKgIAIAAqAgCSOAIAIABBBGohACAEQQRqIQQgBkF/aiIGDQALCyAMIAFBGGooAgA2AgAgAyABKQIQNwMQIA0gAkEYaigCADYCACADIAIpAhA3AyAgA0EAQQMQaCADKAIAIgAgAygCBCIBSQRAIAEgAGshBiAAQQJ0IgEgA0EQamohACADQSBqIAFqIQQDQCAAIAQqAgAgACoCAJI4AgAgAEEEaiEAIARBBGohBCAGQX9qIgYNAAsLIAcgAykDEDcCACAHQQhqIANBGGooAgA2AgACQAJAIAUqAgCLQwAAgABeDQAgBSoCBItDAACAAF4NACAFKgIIi0MAAIAAXkUNAQsgA0EoaiAFQQhqKAIANgIAIAMgBSkCADcDICAFIANBIGoQIwsCQCAFKgIQi0MAAIAAXg0AIAUqAhSLQwAAgABeDQAgBSoCGItDAACAAF5BAXMNAQsgA0EoaiAHQQhqIgAoAgA2AgAgAyAHKQIANwMgIANBEGogA0EgahAjIAAgA0EYaigCADYCACAHIAMpAxA3AgALIANBMGokAAuuBgENfyADQQFOBEAgAiEGIAEhBwNAIAlBA2whEEEBIQggBiEFQQAhBANAIAJBACAIIARBGEYbIBBqQQJ0aigCACEKIAUoAgAhDSAEIAdqIg9BCGogCTYCACAPQQRqIAogDSANIApIIgsbNgIAIA8gDSAKIAsbNgIAIAhBAWohCCAFQQRqIQUgBEEMaiIEQSRHDQALIAZBDGohBiAHQSRqIQcgCUEBaiIJIANHDQALC0EAIQYgAUEAIANBA2wiDEF/akEAQcrLgRMQDSAMQQJOBEAgAUEMaiEEQQEhBQNAIAEgBkEMbGooAgAgBCgCAEcEQCABIAYgBUF/akEBQcrLgRMQDSAFIQYLIARBDGohBCAMIAVBAWoiBUcNAAsgAUEQaiEEQQAhBkEBIQUDQAJAIAEgBkEMbGoiAygCACAEQXxqKAIARgRAIAMoAgQgBCgCAEYNAQsgASAGIAVBf2pBAkHKy4ETEA0gBSEGCyAEQQxqIQQgDCAFQQFqIgVHDQALCyAMQQFOBEBBACEDA0AgASADQQxsaiIGKAIEIQ4gAiAGKAIIIg1BDGxqIgcoAgQhCwJAIAcoAgAiBSAGKAIAIgpGIAUgDkZyRQRAIAcoAgghBkEBIQQMAQtBACEEIAogC0YgCyAORnJFBEAgBygCCCELQQIhBCAFIQYMAQsgCyEGIAUhCwsCQCADQQFqIgMgDE4NACAAIA1ByABsaiAEQQJ0aiIPKAIAQX9HDQBBACEJQQEhCCADIQUCQANAAkAgCiABIAVBDGxqIgcoAgBHDQAgDiAHKAIERw0AIAhBAXFFDQIgAiAHKAIIIhBBDGxqIggoAgQhBwJAIAgoAgAiBCAKRiAEIA5GckUEQCAIKAIIIQRBASEJIAchCAwBC0EAIQkgByAKRiAHIA5GckUEQCAIKAIIIQhBAiEJDAELIAQhCCAHIQQLIAUgBiAIRyAEIAtHciAAIBBByABsaiAJQQJ0aigCAEF/R3IiCGoiBSAMSA0BCwsgCEEBcQ0BCyAPIAEgBUEMbGooAggiBjYCACAAIAZByABsaiAJQQJ0aiANNgIACyADIAxHDQALCwvqBAEHf0ErQYCAxAAgACgCACIDQQFxIgQbIQYgAiAEaiEEQfCPwABBACADQQRxGyEHAkACQCAAKAIIQQFHBEAgACAGIAcQRw0BDAILIABBDGooAgAiBSAETQRAIAAgBiAHEEcNAQwCCwJAAkACQAJAIANBCHEEQCAAKAIEIQggAEEwNgIEIAAtACAhCSAAQQE6ACAgACAGIAcQRw0FQQAhAyAFIARrIgQhBUEBIAAtACAiBiAGQQNGG0EDcUEBaw4DAgECAwtBACEDIAUgBGsiBCEFAkACQAJAQQEgAC0AICIIIAhBA0YbQQNxQQFrDgMBAAECCyAEQQF2IQMgBEEBakEBdiEFDAELQQAhBSAEIQMLIANBAWohAwNAIANBf2oiA0UNBCAAKAIYIAAoAgQgACgCHCgCEBECAEUNAAtBAQ8LIARBAXYhAyAEQQFqQQF2IQUMAQtBACEFIAQhAwsgA0EBaiEDAkADQCADQX9qIgNFDQEgACgCGCAAKAIEIAAoAhwoAhARAgBFDQALQQEPCyAAKAIEIQQgACgCGCABIAIgACgCHCgCDBEEAA0BIAVBAWohAyAAKAIcIQEgACgCGCECA0AgA0F/aiIDBEAgAiAEIAEoAhARAgBFDQEMAwsLIAAgCToAICAAIAg2AgRBAA8LIAAoAgQhBCAAIAYgBxBHDQAgACgCGCABIAIgACgCHCgCDBEEAA0AIAVBAWohAyAAKAIcIQEgACgCGCEAA0AgA0F/aiIDRQRAQQAPCyAAIAQgASgCEBECAEUNAAsLQQEPCyAAKAIYIAEgAiAAQRxqKAIAKAIMEQQAC/0FAQt/IwBBMGsiAiQAIAJBJGpB2I3AADYCACACQQM6ACggAkKAgICAgAQ3AwggAiAANgIgIAJBADYCGCACQQA2AhACfwJAAkACQCABKAIIIgMEQCABKAIAIQUgASgCBCIHIAFBDGooAgAiBCAEIAdLGyIERQ0BIAAgBSgCACAFKAIEQeSNwAAoAgARBAANAyAFQQxqIQAgASgCFCEGIAEoAhAhCyAEIQgDQCACIANBHGotAAA6ACggAiADQQRqKQIAQiCJNwMIIANBGGooAgAhAUEAIQlBACEKAkACQAJAIANBFGooAgBBAWsOAgACAQsgASAGTwRAIAEgBkG4ksAAED8ACyABQQN0IAtqIgwoAgRBHkcNASAMKAIAKAIAIQELQQEhCgsgAiABNgIUIAIgCjYCECADQRBqKAIAIQECQAJAAkAgA0EMaigCAEEBaw4CAAIBCyABIAZPBEAgASAGQbiSwAAQPwALIAFBA3QgC2oiCigCBEEeRw0BIAooAgAoAgAhAQtBASEJCyACIAE2AhwgAiAJNgIYIAMoAgAiASAGSQRAIAsgAUEDdGoiASgCACACQQhqIAEoAgQRAgANBSAIQX9qIghFDQQgA0EgaiEDIABBfGohASAAKAIAIQkgAEEIaiEAIAIoAiAgASgCACAJIAIoAiQoAgwRBABFDQEMBQsLIAEgBkGoksAAED8ACyABKAIAIQUgASgCBCIHIAFBFGooAgAiBCAEIAdLGyIERQ0AIAEoAhAhAyAAIAUoAgAgBSgCBEHkjcAAKAIAEQQADQIgBUEMaiEAIAQhAQNAIAMoAgAgAkEIaiADQQRqKAIAEQIADQMgAUF/aiIBRQ0CIANBCGohAyAAQXxqIQggACgCACEGIABBCGohACACKAIgIAgoAgAgBiACKAIkKAIMEQQARQ0ACwwCC0EAIQQLIAcgBEsEQCACKAIgIAUgBEEDdGoiACgCACAAKAIEIAIoAiQoAgwRBAANAQtBAAwBC0EBCyACQTBqJAAL1AQCAX8FfCMAQSBrIgAkAAJ8AkACQAJAAkAgAEEIahADIAArAxghBCAAKwMIIQEgACgCEEEDcQ4DAQIDAAsgASABIAEgAaIiAaIiAkRJVVVVVVXFP6IgASAERAAAAAAAAOA/oiACIAEgASABoqIgAUR81c9aOtnlPaJE65wriublWr6goiABIAFEff6xV+Mdxz6iRNVhwRmgASq/oKJEpvgQERERgT+goKKhoiAEoaChDAMLRAAAAAAAAPA/IAEgAaIiAkQAAAAAAADgP6IiA6EiBUQAAAAAAADwPyAFoSADoSACIAIgAiACRJAVyxmgAfo+okR3UcEWbMFWv6CiRExVVVVVVaU/oKIgAiACoiIDIAOiIAIgAkTUOIi+6fqovaJExLG0vZ7uIT6gokStUpyAT36SvqCioKIgASAEoqGgoAwCCyABIAEgASABoiIBoiICRElVVVVVVcU/oiABIAREAAAAAAAA4D+iIAIgASABIAGioiABRHzVz1o62eU9okTrnCuK5uVavqCiIAEgAUR9/rFX4x3HPqJE1WHBGaABKr+gokSm+BARERGBP6CgoqGiIAShoKGaDAELRAAAAAAAAPA/IAEgAaIiAkQAAAAAAADgP6IiA6EiBUQAAAAAAADwPyAFoSADoSACIAIgAiACRJAVyxmgAfo+okR3UcEWbMFWv6CiRExVVVVVVaU/oKIgAiACoiIDIAOiIAIgAkTUOIi+6fqovaJExLG0vZ7uIT6gokStUpyAT36SvqCioKIgASAEoqGgoJoMAAsgAEEgaiQAC7EEAQh/AkAgAigCACIFBEAgAUF/aiEKIABBAnQhCUEAIAFrIQsDQCAFQQhqIQYgBSgCCCIHQQFxBEADQCAGIAdBfnE2AgACf0EAIAUoAgQiB0F8cSIGRQ0AGkEAIAYgBi0AAEEBcRsLIQECQCAFKAIAIghBfHEiDEUNAEEAIAwgCEECcRsiCEUNACAIIAgoAgRBA3EgBnI2AgQgBSgCBCIHQXxxIQYLIAUgBgR/IAYgBigCAEEDcSAFKAIAQXxxcjYCACAFKAIEBSAHC0EDcTYCBCAFIAUoAgAiBUEDcTYCACAFQQJxBEAgASABKAIAQQJyNgIACyACIAE2AgAgAUEIaiEGIAEiBSgCCCIHQQFxDQALCwJAIAUoAgBBfHEiASAGayAJSQ0AIAYgAyAAIAQoAhARAgBBAnRqQQhqIAEgCWsgC3EiAUsEQCAGIApxDQEgAiAGKAIAQXxxNgIAIAUhAQwECyABQQA2AgAgAUF4aiIBQgA3AgAgASAFKAIAQXxxNgIAAkAgBSgCACIAQXxxIgJFDQBBACACIABBAnEbIgBFDQAgACAAKAIEQQNxIAFyNgIECyABIAEoAgRBA3EgBXI2AgQgBSAFKAIAQQNxIAFyNgIAIAYgBigCAEF+cTYCACAFKAIAIgBBAnFFDQMgBSAAQX1xNgIAIAEgASgCAEECcjYCAAwDCyACIAUoAggiBTYCACAFDQALC0EADwsgASABKAIAQQFyNgIAIAFBCGoLvQQCC38CfSMAQfAAayICJAAgAkEwaiAAEF8gAkFAayABEF8gAkHYAGogAkE4aikDADcDACACIAIpAzA3A1AgAkEQaiACQcgAaikDADcDACACIAIpA0A3AwggAkHgAGoiACACQQhqIgEpAgA3AgAgAEEIaiABQQhqKQIANwIAIAJBCGogAkHQAGogAkHgAGoQTCACQSRqKAIAIgMgAigCFCIEayELIAQgA0F/c2ohDCACQRxqKAIAIQcgAkEgaigCACEIIAIoAhghACACKAIMIQkgAigCECEGIAIoAgghAQJ/A0ACQAJAIAQEfwJAAkAgASAGRgRAIAlBEGohBSAGQQxqIQYgCUEMaiIJIQEMAQsgAUEEaiEFIAFFDQELIAMEfyAAIAhGBEAgB0EQaiEKIAhBDGohCCAHQQxqIgchAAwFCyAAQQRqIQogAA0EIARBf2ohDCAKIQAgA0F/agVBAAshASACIAY2AhAgAiAFNgIIIAIgDDYCFCACIAE2AiQMAgsgAyELIAUhASAEQX9qBUEACyEFIAIgBjYCECACIAE2AgggAiAFNgIUIAIgCzYCJAsgAiAJNgIMIAIgCDYCICACIAA2AhggAiAHNgIcQQEMAgsgBEF/aiEEIANBf2ohAyAAKgIAIQ0gASoCACAKIQAgBSEBIA1bDQALIAIgBjYCECACIAU2AgggAiAENgIUIAIgAzYCJCACIAk2AgwgAiAINgIgIAIgCjYCGCACIAc2AhxBAAsgAkHwAGokAAuUAQIDfwJ9IwBBIGsiASQAIAFBGGpBAEEBEGggASgCGCICIAEoAhwiA0kEQCAAKgIAIgQgBJQgAEEEaioCACIEIASUkiAAQQhqKgIAIgQgBJSSIQVDAAAAACEEA0ACQCACRQRAIAJBAWohAgwBC0G8hsAAQcSHwAAQXAALIAQgBZIhBCACIANHDQALCyABQSBqJAAgBAvAAwIJfwJ+IANBAnQhDAJAA0AgAiABa0EBaiIFQQJIDQEgBUECRwRAIAAgBCAEIAR3IARBACAEa3hyakEDaiIEIAVwIAFqQQxsaiAMaigCACENIAIhBiABIQUDQCAMIAVBDGwiCGohByAFIQoDQCAIQQxqIQggCkEBaiEKIAAgB2ogB0EMaiEHKAIAIA1IDQALIApBf2ohBSAMIAZBDGwiCWohByAGIQsDQCAJQXRqIQkgC0F/aiELIAAgB2ogB0F0aiEHKAIAIA1KDQALIAUgC0EBaiIGTARAIAAgCGoiBkF0aiIFKQIAIQ4gACAJaiIHQRRqIggoAgAhCSAFIAdBDGoiBykCADcCACAGQXxqKAIAIQYgBUEIaiAJNgIAIAggBjYCACAHIA43AgAgCyEGIAohBQsgBSAGTA0ACyAGIAFKBEAgACABIAYgAyAEEA0LIAUiASACSA0BDAILCyAAIAFBDGxqIgEgA0ECdCIDaigCACAAIAJBDGxqIgAgA2ooAgBMDQAgASkCBCEOIAApAgAhDyABQQhqIABBCGooAgA2AgAgASgCACECIAEgDzcCACAAIA43AgQgACACNgIACwvFBQMBfwF+AnwCfAJAAkAgAL0iAkIgiKdB/////wdxIgFB//+//wNNBEAgAUGAgID/A0kNASACQn9XDQJEAAAAAAAA8D8gAKFEAAAAAAAA4D+iIgAgAJ8iBL1CgICAgHCDvyIDIAOioSAEIAOgoyAEIAAgACAAIAAgACAARAn3/Q3hPQI/okSIsgF14O9JP6CiRDuPaLUogqS/oKJEVUSIDlXByT+gokR9b+sDEtbUv6CiRFVVVVVVVcU/oKIgACAAIAAgAESCki6xxbizP6JEWQGNG2wG5r+gokTIilmc5SoAQKCiREstihwnOgPAoKJEAAAAAAAA8D+go6KgIAOgIgAgAKAPCyACpyABQYCAwIB8anIEQEQAAAAAAAAAACAAIAChow8LRAAAAAAAAAAARBgtRFT7IQlAIAJCf1UbDwtEGC1EVPsh+T8gAUGBgIDjA0kNARpEB1wUMyamkTwgACAAoiIDIAMgAyADIAMgA0QJ9/0N4T0CP6JEiLIBdeDvST+gokQ7j2i1KIKkv6CiRFVEiA5Vwck/oKJEfW/rAxLW1L+gokRVVVVVVVXFP6CiIAMgAyADIANEgpIuscW4sz+iRFkBjRtsBua/oKJEyIpZnOUqAECgokRLLYocJzoDwKCiRAAAAAAAAPA/oKMgAKKhIAChRBgtRFT7Ifk/oA8LRBgtRFT7Ifk/IABEAAAAAAAA8D+gRAAAAAAAAOA/oiIAnyIDIAMgACAAIAAgACAAIABECff9DeE9Aj+iRIiyAXXg70k/oKJEO49otSiCpL+gokRVRIgOVcHJP6CiRH1v6wMS1tS/oKJEVVVVVVVVxT+goiAAIAAgACAARIKSLrHFuLM/okRZAY0bbAbmv6CiRMiKWZzlKgBAoKJESy2KHCc6A8CgokQAAAAAAADwP6CjokQHXBQzJqaRvKCgoSIAIACgCwu6AwEEfyMAQRBrIgIkACAAKAIAIQQCQAJAAkACfwJAAkAgAUGAAU8EQCACQQA2AgwgAUGAEEkNASACQQxqIQAgAUGAgARJBEAgAiABQT9xQYABcjoADiACIAFBDHZB4AFyOgAMIAIgAUEGdkE/cUGAAXI6AA1BAyEBDAYLIAIgAUE/cUGAAXI6AA8gAiABQRJ2QfABcjoADCACIAFBBnZBP3FBgAFyOgAOIAIgAUEMdkE/cUGAAXI6AA1BBCEBDAULIAQoAggiACAEQQRqKAIARwRAIAQoAgAhBQwECwJAIABBAWoiAyAASQ0AIABBAXQiBSADIAUgA0sbIgNBCCADQQhLGyEDIAAEQCADQQBIDQEgBCgCACIFRQ0DIAUgAEEBIAMQYgwECyADQQBODQILEGsACyACIAFBP3FBgAFyOgANIAIgAUEGdkHAAXI6AAwgAkEMaiEAQQIhAQwDCyADQQEQZwsiBQRAIAQgBTYCACAEQQRqIAM2AgAgBCgCCCEADAELIANBARBwAAsgACAFaiABOgAAIAQgBCgCCEEBajYCCAwBCyAEIAAgACABahAiCyACQRBqJABBAAuRAwEKfyMAQdAAayIKJAAgA0F/aiIHQQFOBEADQCAEQQFqIQYCfyAGIAAgBEHIAGxqIgUoAjggBUGAAWooAgBHDQAaIAUoAjwiCEEBcSAAIAZByABsaiIGKAI8IglBAXFHBEAgBkE8aiAJQQJyNgIAIAVBPGogCEECcjYCAAsgBEECagsiBCAHSA0ACwsCQCACQQFIDQBBACEHIAEhBkEBIQQDQAJ/AkAgACAHQcgAbGoiCS0APEEBcQRAIAQgA0gNAQwECyAHQQJqIgUgBCAEIAVIGwwBCwNAAkAgACAEQcgAbGooAjxBAXEiBSAEaiEEIAVFDQAgBCADSA0BCwsgBQ0CIARBAWogASAEQQxsaiEMQQAhCANAIAYgCGoiCygCACENIAsgCCAMaiILKAIANgIAIAsgDTYCACAIQQRqIghBDEcNAAsgCkEIaiAJQcgAEE4gCSAAIARByABsaiIEQcgAEDsaIAQgCkEIakHIABBOCyEEIAZBDGohBiAHQQFqIgcgAkcNAAsLIApB0ABqJAALOQIBfwF9IwBBEGsiAiQAIAAqAgAgASoCAJQgACoCBCABKgIElJIgACoCCCABKgIIlJIgAkEQaiQAC8oCAQ1/IARBAUgEQEEADwsgACEKIAMhCwNAIAAgCUHIAGxqIhBBPGohD0F/IQ1BACEHA0ACQCAPLQAAQQRxDQAgByAKaiIOQQxqIgUoAgANACAHIAtqKAIAIQYgBSABIAhBBHRqIhE2AgAgESAGNgIIIAUoAgAgDy0AAEEDdkEBcToADCAFKAIAQQA2AgAgBSgCACACIAxBAnRqNgIEIAUoAgAiBigCBCAGKAIAQQJ0aiAJNgIAIAYgBigCAEEBajYCACAQIA1BAiAHG0ECdGooAgAhBiAOKAIAIg5BAE4EQCADIAAgDiAFKAIAEBcLIAZBAE4EQCADIAAgBiAFKAIAEBcLIAhBAWohCCAFKAIAKAIAIAxqIQwLIA1BAWohDSAHQQRqIgdBDEcNAAsgCkHIAGohCiALQQxqIQsgCUEBaiIJIARHDQALIAgLygIBA38gACgCACIEQQA2AgAgBEF4aiIFIAUoAgBBfnE2AgACQAJAIAIgAygCFBEGAEUNAAJAIARBfGoiAygCAEF8cSIABEAgACgCACIGQQFxRQ0BCyAFKAIAIgBBfHEiAkUNAUEAIAIgAEECcRsiAEUNASAALQAAQQFxDQEgBCAAKAIIQXxxNgIAIAAgBUEBcjYCCA8LAkACQCAFKAIAIgRBfHEiAkUEQCAAIQEMAQsgACEBQQAgAiAEQQJxGyIERQ0AIAQgBCgCBEEDcSAAcjYCBCADKAIAIgJBfHEiAUUNASAFKAIAQXxxIQIgASgCACEGCyABIAZBA3EgAnI2AgAgAygCACECCyADIAJBA3E2AgAgBSAFKAIAIgFBA3E2AgAgAUECcUUNASAAIAAoAgBBAnI2AgAPCyAEIAEoAgA2AgAgASAFNgIACwu3AgIFfwF+IwBBMGsiBCQAQSchAgJAIABCkM4AVARAIAAhBwwBCwNAIARBCWogAmoiA0F8aiAAIABCkM4AgCIHQpDOAH59pyIFQf//A3FB5ABuIgZBAXRBxJDAAGovAAA7AAAgA0F+aiAFIAZB5ABsa0H//wNxQQF0QcSQwABqLwAAOwAAIAJBfGohAiAAQv/B1y9WIAchAA0ACwsgB6ciA0HjAEoEQCACQX5qIgIgBEEJamogB6ciAyADQf//A3FB5ABuIgNB5ABsa0H//wNxQQF0QcSQwABqLwAAOwAACwJAIANBCk4EQCACQX5qIgIgBEEJamogA0EBdEHEkMAAai8AADsAAAwBCyACQX9qIgIgBEEJamogA0EwajoAAAsgASAEQQlqIAJqQScgAmsQByAEQTBqJAALqAEBA38jAEEwayIDJAAgA0EoaiIEIAFBCGooAgA2AgAgAyABKQIANwMgIAAgAykDIDcCACAAQQhqIAQoAgA2AgAgA0EIakEAQQMQaCADKAIIIgEgAygCDCIESQRAIAQgAWshBCAAIAFBAnQiBWohASACIAVqIQADQCABIAEqAgAgACoCAJM4AgAgAUEEaiEBIABBBGohACAEQX9qIgQNAAsLIANBMGokAAuoAQEDfyMAQTBrIgMkACADQShqIgQgAUEIaigCADYCACADIAEpAgA3AyAgACADKQMgNwIAIABBCGogBCgCADYCACADQQhqQQBBAxBoIAMoAggiASADKAIMIgRJBEAgBCABayEEIAAgAUECdCIFaiEBIAIgBWohAANAIAEgACoCACABKgIAkjgCACABQQRqIQEgAEEEaiEAIARBf2oiBA0ACwsgA0EwaiQAC7wCAQd/AkADQEEAIQZBACEHAkAgAygCCCIEIAAgAkEMbGoiBSgCAEYNAEEBIQcgBCAFKAIERgRAQQEhBgwBC0ECIQYgBSgCCCAERw0CCwJAIANFDQAgASACQcgAbGoiBCAGQQJ0aiIIQQxqIgkoAgANAAJAIAQoAjwiBUEEcUUNACAEKAIMDQAgBEEQaigCAA0AIARBFGooAgANACAEQTxqIgogBUF3cSIFNgIAIAogAy0ADEEDdCAFciIFNgIACyAFQQhxQQN2IAMtAAxBAEdzDQAgAygCBCADKAIAQQJ0aiACNgIAIAMgAygCAEEBajYCACAJIAM2AgAgBCAGQX9qQQIgBxtBAnRqKAIAIQIgCCgCACIEQQBOBEAgACABIAQgAxAXCyACQX9KDQELCw8LQX9BA0GkjcAAED8AC6oCAgN/AX4jAEEwayIDJAACfwJAAkAgACgCBCIEIAFrIAJJBEAgASACaiICIAFJDQJBBCEBAkAgBEEBdCIFIAIgBSACSxsiAkEEIAJBBEsbrULIAH4iBkIgiKdFBEAgBqchAgwBCyAAKAIEIQRBACEBCwJAIAQEQCAAKAIAIQUgA0EoakEENgIAIAMgBEHIAGw2AiQgAyAFNgIgDAELIANBADYCIAsgA0EQaiACIAEgA0EgahAtIANBGGooAgAhASADKAIUIQIgAygCEEEBRg0BIAAgAjYCACAAIAFByABuNgIECyADQTBqJAAPCyADQQhqIAIgARBoIAMoAgghASADKAIMDAELIAMgAkEAEGggAygCACEBIAMoAgQLIgAEQCABIAAQcAALEGsAC6cCAgN/AX4jAEEwayIDJAACfwJAAkAgACgCBCIEIAFrIAJJBEAgASACaiICIAFJDQJBBCEBAkAgBEEBdCIFIAIgBSACSxsiAkEEIAJBBEsbrUIofiIGQiCIp0UEQCAGpyECDAELIAAoAgQhBEEAIQELAkAgBARAIAAoAgAhBSADQShqQQQ2AgAgAyAEQShsNgIkIAMgBTYCIAwBCyADQQA2AiALIANBEGogAiABIANBIGoQLSADQRhqKAIAIQEgAygCFCECIAMoAhBBAUYNASAAIAI2AgAgACABQShuNgIECyADQTBqJAAPCyADQQhqIAIgARBoIAMoAgghASADKAIMDAELIAMgAkEAEGggAygCACEBIAMoAgQLIgAEQCABIAAQcAALEGsAC6cCAgN/AX4jAEEwayIDJAACfwJAAkAgACgCBCIEIAFrIAJJBEAgASACaiICIAFJDQJBBCEBAkAgBEEBdCIFIAIgBSACSxsiAkEEIAJBBEsbrUIMfiIGQiCIp0UEQCAGpyECDAELIAAoAgQhBEEAIQELAkAgBARAIAAoAgAhBSADQShqQQQ2AgAgAyAEQQxsNgIkIAMgBTYCIAwBCyADQQA2AiALIANBEGogAiABIANBIGoQLSADQRhqKAIAIQEgAygCFCECIAMoAhBBAUYNASAAIAI2AgAgACABQQxuNgIECyADQTBqJAAPCyADQQhqIAIgARBoIAMoAgghASADKAIMDAELIAMgAkEAEGggAygCACEBIAMoAgQLIgAEQCABIAAQcAALEGsAC6gCAQN/IwBBMGsiAyQAAn8CQAJAIAAoAgQiBCABayACSQRAIAEgAmoiAiABSQ0CQQQhAQJAIARBAXQiBSACIAUgAksbIgJBBCACQQRLGyICQf////8DcSACRgRAIAJBAnQhAgwBCyAAKAIEIQRBACEBCwJAIAQEQCAAKAIAIQUgA0EoakEENgIAIAMgBEECdDYCJCADIAU2AiAMAQsgA0EANgIgCyADQRBqIAIgASADQSBqEC0gA0EYaigCACEBIAMoAhQhAiADKAIQQQFGDQEgACACNgIAIAAgAUECdjYCBAsgA0EwaiQADwsgA0EIaiACIAEQaCADKAIIIQEgAygCDAwBCyADIAJBABBoIAMoAgAhASADKAIECyIABEAgASAAEHAACxBrAAuoAgEDfyMAQTBrIgMkAAJ/AkACQCAAKAIEIgQgAWsgAkkEQCABIAJqIgIgAUkNAkEEIQECQCAEQQF0IgUgAiAFIAJLGyICQQQgAkEESxsiAkH/////AHEgAkYEQCACQQR0IQIMAQsgACgCBCEEQQAhAQsCQCAEBEAgACgCACEFIANBKGpBBDYCACADIARBBHQ2AiQgAyAFNgIgDAELIANBADYCIAsgA0EQ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aiEDIAUoAggiBiAFKAIMIgdJBEAgByAGayEIA0AgAikCACEJIANBCGogAkEIaikCADcCACADIAk3AgAgA0EQaiEDIAhBf2oiCA0ACyAEIAdqIAZrIQQLIAAgAQR/IAIpAgAhCSADQQhqIAJBCGopAgA3AgAgAyAJNwIAIARBAWoFIAQLNgIIIAVBEGokAAuqAQMBfwN+An0jAEEgayICJAAgAkEYaiABKAIAEGEgACACKAIYIAIoAhwQPSEDIAJBEGogASgCBBBhIAAgAigCECACKAIUED0hBCACQQhqIAEoAggQYSAAIAIoAgggAigCDBA9IQUgAkEgaiQAIASnviADp74iBpMgBUIgiKe+IANCIIinviIHk5QgBEIgiKe+IAeTIAWnviAGk5STIgaMIAYgBkMAAAAAXRsLsQEBBX8jAEEQayIDJAACQCAAKAIEIgIgAU8EQAJAIAIEQCACQQJ0IQIgACgCACEEAkAgAUECdCIFRQRAQQQhBiACRQ0BIAQgAkEEEGoMAQsgBCACQQQgBRBiIgZFDQILIAAgBjYCACAAIAFB/////wNxNgIECyADQRBqJAAPCyADQQhqIAVBBBBoIAMoAgwiAEUNASADKAIIIAAQcAALQcWIwABBJEHsiMAAEEgACxBrAAu2AQEBfyMAQRBrIgMkAAJAIABFDQAgAyAANgIEIAFFDQACQCACQQRLDQAgAUEDakECdkF/aiIAQf8BSw0AIANBoJXAADYCCCADIABBAnRBpJXAAGoiACgCADYCDCADQQRqIANBDGogA0EIakGUicAAEBMgACADKAIMNgIADAELIANBoJXAACgCADYCDCADQQRqIANBDGpB/IjAAEH8iMAAEBNBoJXAACADKAIMNgIACyADQRBqJAALmQEBBn8jAEEQayIFJAAgACAAKAIIIAEQGCAAKAIAIAAoAgghAyAFQQhqQQEgARBoIANByABsaiEEIAUoAggiBiAFKAIMIgdJBEAgByAGayEIA0AgBCACQcgAEDtByABqIQQgCEF/aiIIDQALIAMgB2ogBmshAwsgACABBH8gBCACQcgAEDsaIANBAWoFIAMLNgIIIAVBEGokAAuVAQEGfyMAQRBrIgUkACAAIAAoAgggARAZIAAoAgAgACgCCCEDIAVBCGpBASABEGggA0EobGohBCAFKAIIIgYgBSgC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AWoiAiABIAJLG0GHgARqIgFBEHZAACICQX9GBEBBACEDQQEMAQsgAkEQdCIDQgA3AwAgA0EANgIIIAMgAyABQYCAfHFqQQJyNgIAQQALIQIgACADNgIEIAAgAjYCAAtvAQF/AkAgASAATwRAIAJFDQEgACEDA0AgAyABLQAAOgAAIAFBAWohASADQQFqIQMgAkF/aiICDQALDAELIAJFDQAgAUF/aiEBIABBf2ohAwNAIAIgA2ogASACai0AADoAACACQX9qIgINAAsLIAALbwECfwJ/IAIgAJMgASAAk5VDAAAARZQiAEMAAADPYCIDQQFzIABD////Tl9FckUEQCAAqAwBC0H/////B0GAgICAeCADGyIEIARBACAAQ////05fGyADGwsiA0EAIANBAEobIgNB/w8gA0H/D0gbC2YBAX8CQCAAQSBqKAIAIgMgAUEGbCACQQF0aiIBSwRAIAMgAUEBciICTQ0BIAAoAhgiACACQQJ0ajUCAEIghiAAIAFBAnRqNQIAhA8LIAEgA0HsgMAAED8ACyACIANB/IDAABA/AAtrAQJ/IwBBEGsiBiQAAkAgACABIAIgAyAEEAoiBQ0AIAZBCGogAyAAIAEgBCgCDBEFAEEAIQUgBigCCA0AIAYoAgwiBSACKAIANgIIIAIgBTYCACAAIAEgAiADIAQQCiEFCyAGQRBqJAAgBQtsAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0EcakECNgIAIANBLGpBHTYCACADQgI3AgwgA0G0kMAANgIIIANBHTYCJCADIANBIGo2AhggAyADNgIoIAMgA0EEajYCICADQQhqIAIQWQALVAEBfyMAQSBrIgIkACACIAAoAgA2AgQgAkEYaiABQRBqKQIANwMAIAJBEGogAUEIaikCADcDACACIAEpAgA3AwggAkEEaiACQQhqEAggAkEgaiQAC1kCAX8BfiMAQSBrIgMkACADQQhqIAIQNyADKQMIIQQgAEEANgIIIAAgBDcCACADQRhqIAFBCGopAgA3AwAgAyABKQIANwMQIAAgAiADQRBqECcgA0EgaiQAC1kCAX8BfiMAQSBrIgMkACADQQhqIAIQNCADKQMIIQQgAEEANgIIIAAgBDcCACADQRhqIAFBCGooAgA2AgAgAyABKQIANwMQIAAgAiADQRBqECYgA0EgaiQAC1kCAX8BfiMAQSBrIgMkACADQQhqIAIQNyADKQMIIQQgAEEANgIIIAAgBDcCACADQRhqIAFBCGopAgA3AwAgAyABKQIANwMQIAAgAiADQRBqECAgA0EgaiQAC1QBAn8gASgCACECIAFBADYCAAJAIAIEQCABKAIEIQNBCEEEEGciAUUNASABIAM2AgQgASACNgIAIABByI3AADYCBCAAIAE2AgAPCwALQQhBBBBwAAtKAgF/AX4jAEHQAGsiAyQAIAMgAhA2IAMpAwAhBCAAQQA2AgggACAENwIAIANBCGogAUHIABBOIAAgAiADQQhqECsgA0HQAGokAAtHAgF/AX4jAEEwayIDJAAgAyACEDUgAykDACEEIABBADYCCCAAIAQ3AgAgA0EIaiABQSgQTiAAIAIgA0EIahAsIANBMGokAAtKAAJ/IAFBgIDEAEcEQEEBIAAoAhggASAAQRxqKAIAKAIQEQIADQEaCyACRQRAQQAPCyAAKAIYIAJBACAAQRxqKAIAKAIMEQQACwtHAQF/IwBBIGsiAyQAIANBFGpBADYCACADQfCPwAA2AhAgA0IBNwIEIAMgATYCHCADIAA2AhggAyADQRhqNgIAIAMgAhBZAAs8AQF/IAAoAggiAQRAIAFBBHQhASAAKAIAQQRqIQADQCAAKAIAGiAAEFYgAEEQaiEAIAFBcGoiAQ0ACwsLOAAgAEIANwIAIABBCGpBADYCACAAQSRqQQA6AAAgAEEcakIANwIAIABBFGpCADcCACAAQgA3AgwLRAECfyABKAIEIQIgASgCACEDQQhBBBBnIgFFBEBBCEEEEHAACyABIAI2AgQgASADNgIAIABBoI/AADYCBCAAIAE2AgALPQAgAEIANwIgIAAgASkCADcCACAAIAIpAgA3AhAgAEEIaiABQQhqKQIANwIAIABBGGogAkEIaikCADcCAAtbAQN/IwBBEGsiASQAIAAoAgwiAkUEQEGAjsAAQStByI7AABBIAAsgACgCCCIDRQRAQYCOwABBK0HYjsAAEEgACyABIAI2AgggASAANgIEIAEgAzYCACABEFgACysAIAIEQANAIAAgAS0AADoAACABQQFqIQEgAEEBaiEAIAJBf2oiAg0ACwsLKQEBfyADIAIQLiIEBEAgBCAAIAMgASABIANLGxBOIAAgASACECoLIAQLLAACQCAAQXxNBEAgAEUEQEEEIQAMAgsgACAAQX1JQQJ0EGciAA0BCwALIAALNwEBf0EBIQECQCAAKgIAi0MAAIAAXg0AIAAqAgSLQwAAgABeDQAgACoCCItDAACAAF4hAQsgAQsmAQF/AkAgACgCBCIBRQ0AIAAoAgAgAUEEdCIBRQ0AIAFBBBBqCwsnAQF/AkAgACgCBCIBRQ0AIAAoAgAgAUHIAGwiAUUNACABQQQQagsLJgEBfwJAIAAoAgQiAUUNACAAKAIAIAFBKGwiAUUNACABQQQQagsLJgEBfwJAIAAoAgQiAUUNACAAKAIAIAFBDGwiAUUNACABQQQQagsLJgEBfwJAIAAoAgQiAUUNACAAKAIAIAFBAnQiAUUNACABQQQQagsLLAEBfyMAQRBrIgEkACABQQhqIABBCGooAgA2AgAgASAAKQIANwMAIAEQWwALLAEBfyMAQRBrIgEkACABQQhqIABBCGooAgA2AgAgASAAKQIANwMAIAEQMwALNAEBfyMAQRBrIgIkACACIAE2AgwgAiAANgIIIAJB8I/AADYCBCACQfCPwAA2AgAgAhBNAAspAQF/IAEEQCAAIQIDQCACQQA6AAAgAkEBaiECIAFBf2oiAQ0ACwsgAAsrAQF/IwBBEGsiASQAIAEgACkCADcDCCABQQhqQbSNwABBACAAKAIIECUACycBAX8jAEEQayICJAAgAiABNgIIIAJBHTYCBCACIAA2AgAgAhBXAAsmAQF/AkAgACgCACIBRQ0AIABBBGooAgAiAEUNACABIABBARBqCwsmAQF/AkAgACgCBCIBRQ0AIABBCGooAgAiAEUNACABIABBARBqCwshACAAQQM2AgwgACABNgIEIAAgATYCACAAIAFBDGo2AggLHQAgASgCAEUEQAALIABByI3AADYCBCAAIAE2AgALFgAgACABQQNxNgIEIAAgAUECdjYCAAsMACAAIAEgAiADEE8LFgAgACABKAIINgIEIAAgASgCADYCAAsPACABBEAgACABQQQQagsLEgAgACgCACABIAEgAmoQIkEACw0AIAFBA3EgAEECdHILCAAgACABEC4LEAAgACACNgIEIAAgATYCAAsTACAAQaCPwAA2AgQgACABNgIACwoAIAAgASACECoLEQBBzI/AAEERQeCPwAAQSAALDgAgACgCABoDQAwACwALCwAgADUCACABEBQLCwAgACMAaiQAIwALCwAgAItDAACAAF4LGQAgACABQcSdwAAoAgAiAEEPIAAbEQEAAAsFAEGABAsEAEEBCwQAIAELBABBAAsNAEL0+Z7m7qOq+f4ACw0AQve47vqqzNXu5QALDABC6dCi28yi6rtGCwMAAQsDAAELC6QVAgBBgIDAAAvBCnNyYy9saWIucnMAAAAAEAAKAAAANgAAAA0AAAAAABAACgAAADcAAAANAAAAAAAQAAoAAAA4AAAADQAAAAAAEAAKAAAAPgAAAA0AAAAAABAACgAAAD8AAAANAAAAAAAQAAoAAABAAAAADQAAAAAAEAAKAAAARgAAAA0AAAAAABAACgAAAEcAAAANAAAARmFpbGVkIHRvIGdlbmVyYXRlIHRhbmdlbnRzLi9Vc2Vycy9kb25tY2N1cmR5Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVjODIzL21pa2t0c3BhY2UtMC4yLjAvc3JjL2dlbmVyYXRlZC5ycwCoABAAYwAAANcAAAASAAAAqAAQAGMAAADYAAAAEgAAAKgAEABjAAAA2QAAABIAAACoABAAYwAAAN4AAAANAAAAqAAQAGMAAAAjAQAAOAAAAKgAEABjAAAA/QEAABUAAACoABAAYwAAAA8CAABAAAAAqAAQAGMAAAAVAgAAEQAAAKgAEABjAAAAFgIAABEAAACoABAAYwAAABgCAAARAAAAqAAQAGMAAAAjAgAAGQAAAKgAEABjAAAAJAIAADIAAACoABAAYwAAACoCAAAcAAAAqAAQAGMAAAAmAgAANAAAAKgAEABjAAAAvQUAAAkAAACoABAAYwAAAMAFAAAFAAAAqAAQAGMAAADDBQAAHAAAAKgAEABjAAAAwwUAADMAAACoABAAYwAAAMMFAAAJAAAAqAAQAGMAAADTBQAAIwAAAKgAEABjAAAA0wUAABcAAACoABAAYwAAANQFAAAYAAAAqAAQAGMAAADVBQAACQAAAKgAEABjAAAA3AUAABEAAACoABAAYwAAAN8FAAAYAAAAqAAQAGMAAADgBQAAGQAAAKgAEABjAAAA6AUAAC0AAACoABAAYwAAAOgFAAAhAAAAqAAQAGMAAADpBQAAGAAAAKgAEABjAAAA8gUAABEAAACoABAAYwAAAKcGAAANAAAAqAAQAGMAAACuBgAAEQAAAKgAEABjAAAArwYAABEAAACoABAAYwAAALAGAAARAAAAqAAQAGMAAAD9BgAACQAAAE1hdHJpeCBzbGljaW5nIG91dCBvZiBib3VuZHMuL1VzZXJzL2Rvbm1jY3VyZHkvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2M2Mjk5ZGI5ZWM4MjMvbmFsZ2VicmEtMC4xOS4wL3NyYy9iYXNlL21hdHJpeF9zbGljZS5ycwBZAxAAagAAAOMAAAAJAAAAL1VzZXJzL2Rvbm1jY3VyZHkvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMucnNUcmllZCB0byBzaHJpbmsgdG8gYSBsYXJnZXIgY2FwYWNpdHkAAADUAxAAcQAAAMUBAAAJAAAAAQAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAQAAAAEAAAABgAAAAcAAAAIAAAACQAAAAAAAAABAAAAAgAAAAMAAAAEAAAAL1VzZXJzL2Rvbm1jY3VyZHkvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvbnVtL21vZC5yc8QEEABwAAAAnQIAAAUAQdCKwAAL0AphdHRlbXB0IHRvIGNhbGN1bGF0ZSB0aGUgcmVtYWluZGVyIHdpdGggYSBkaXZpc29yIG9mIHplcm9NYXRyaXggc2xpY2luZyBvdXQgb2YgYm91bmRzLi9Vc2Vycy9kb25tY2N1cmR5Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVjODIzL25hbGdlYnJhLTAuMTkuMC9zcmMvYmFzZS9tYXRyaXhfc2xpY2UucnOmBRAAagAAAOMAAAAJAAAAL1VzZXJzL2Rvbm1jY3VyZHkvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2M2Mjk5ZGI5ZWM4MjMvbWlra3RzcGFjZS0wLjIuMC9zcmMvZ2VuZXJhdGVkLnJzACAGEABjAAAA2wIAABkAAAAgBhAAYwAAANsCAAAyAAAAIAYQAGMAAAB+AwAACAAAAAoAAAAIAAAABAAAAAsAAAAMAAAADQAAAAgAAAAEAAAADgAAABAAAAAEAAAABAAAABEAAAASAAAAEwAAABAAAAAAAAAAAQAAABQAAABjYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlbGlicmFyeS9zdGQvc3JjL3Bhbmlja2luZy5ycwArBxAAHAAAAO0BAAAfAAAAKwcQABwAAADuAQAAHgAAABUAAAAQAAAABAAAABYAAAAXAAAAEAAAAAgAAAAEAAAAGAAAABkAAAAaAAAADAAAAAQAAAAbAAAAEAAAAAgAAAAEAAAAHAAAAGxpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMucnNjYXBhY2l0eSBvdmVyZmxvdwAAALAHEAAcAAAAHgIAAAUAAAAfAAAAAAAAAAEAAAAgAAAAaW5kZXggb3V0IG9mIGJvdW5kczogdGhlIGxlbiBpcyAgYnV0IHRoZSBpbmRleCBpcyAAAAAIEAAgAAAAIAgQABIAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OWxpYnJhcnkvY29yZS9zcmMvZm10L21vZC5ycwAMCRAAGwAAAFUEAAARAAAADAkQABsAAABfBAAAJAAAAAMAAAAEAAAABAAAAAYAAACD+aIARE5uAPwpFQDRVycA3TT1AGLbwAA8mZUAQZBDAGNR/gC73qsAt2HFADpuJADSTUIASQbgAAnqLgAcktEA6x3+ACmxHADoPqcA9TWCAES7LgCc6YQAtCZwAEF+XwDWkTkAU4M5AJz0OQCLX4QAKPm9APgfOwDe/5cAD5gFABEv7wAKWosAbR9tAM9+NgAJyycARk+3AJ5mPwAt6l8Auid1AOXrxwA9e/EA9zkHAJJSigD7a+oAH7FfAAhdjQAwA1YAe/xGAPCrawAgvM8ANvSaAOOpHQBeYZEACBvmAIWZZQCgFF8AjUBoAIDY/wAnc00ABgYxAMpWFQDJqHMAe+JgAGuMwAAAAABA+yH5PwAAAAAtRHQ+AAAAgJhG+DwAAABgUcx4OwAAAICDG/A5AAAAQCAlejgAAACAIoLjNgAAAAAd82k1AHsJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJvY2Vzc2VkLWJ5AwVydXN0Yx0xLjQ5LjAgKGUxODg0YThlMyAyMDIwLTEyLTI5KQZ3YWxydXMGMC4xOC4wDHdhc20tYmluZGdlbhIwLjIuNzMgKDNjZWZlMmM4Mik=";
|
|
10593
|
-
let ze,
|
|
10594
|
-
const
|
|
10595
|
-
"./mikktspace_module_bg.js": { __wbindgen_string_new:
|
|
10534
|
+
const Yo = function(a, e) {
|
|
10535
|
+
var A = yl(a, e);
|
|
10536
|
+
return Dl(A);
|
|
10537
|
+
}, Jo = function(a) {
|
|
10538
|
+
throw Fl(a);
|
|
10539
|
+
}, Tl = "data:application/octet-stream;base64,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TQ0WIARBAnRqIgQgBCgCAEEBajYCACACQQRqIQIgA0F/aiIDDQALCyABQdgFaigCACABKALgBUUNFUEAIQJBADYCAEEBIQQDQCABQfgCaiABQdgFahBjIAEoAvwCIgMgBEF/aiIHTQ0UIAEoAvgCIAJqKAIAIQMgAUHwAmogAUHoBWoQYyABKAL0AiINIAdNDRMgASgC8AIgAmooAgAhByABQdgFaigCACENIAEoAuAFIhEgBE0NEiACIA1qQQRqIAMgB2o2AgAgAkEEaiECIARBAWoiBEGAEEcNAAsgCEEJTwRAQQAhBCABQZgGakEAQQRBCCAGGyALG2ohCCAFIQMDQCABQegCaiADKAIAEGEgAUGYBmogACABKALoAiABKALsAhAxIDAgLiAIKgIAEDwhAiABQeACaiABQdgFahBjIAEoAuQCIgYgAk0NEiABQcgFaigCACABKALQBSINIAJBAnQiBiABKALgAmooAgAiC00NESABQdgCaiABQfgFahBjIAEoAtwCIg0gAk0NECALQQJ0aiABKALYAiAGaigCAEECdGogBDYCACABQfgFaigCACELIAEoAoAGIgcgAk0NDyAGIAtqIgIgAigCAEEBajYCACADQQRqIQMgCiAEQQFqIgRHDQALCyABQdACaiABQegFahBjIAEoAtQCRQ0MIAEoAtACKAIAIQNBBCECQQEhBANAIAFByAJqIAFB6AVqEGMgASgCzAIiCiAETQ0MIAMgASgCyAIgAmooAgBJBEAgAUHAAmogAUHoBWoQYyABKALEAiIDIARNDQwgASgCwAIgAmooAgAhAwsgAkEEaiECIARBAWoiBEGAEEcNAAsgAUHgA2oiAkIANwIAIAJBCGpCADcCACABQaAGaiABQegDaikDADcDACABIAEpA+ADNwOYBiABQYgGaiABQZgGaiADEEEgASgCiAYhCiABKAKQBiELQQAhBgNAIAFBuAJqIAFB2AVqEGMgASgCvAIiAyAGTQ0KIAFByAVqKAIAIQIgASgC0AUiBCAGQQJ0IgggASgCuAJqKAIAIgNNDQkgAUGwAmogAUHoBWoQYyABKAK0AiIEIAZNDQggASgCsAIgCGooAgAiCEECTwRAIAIgA0ECdGohBEEAIQMgCiECA0AgAUGoAmogBSAEKAIAIgdBAnRqKAIAEGEgAUGYBmogACABKAKoAiABKAKsAhAxIAMgC0YNCSACIAEoApgGNgIAIAJBBGogASgCnAY2AgAgASgCoAYhDSACQQxqIAc2AgAgAkEIaiANNgIAIARBBGohBCACQRBqIQIgCCADQQFqIgNHDQALIAUgCiAAQQAgCEF/ahAECyAGQQFqIgZBgBBHDQALIBNBASATQQFLGyEFIA5BPGohAyABQYgGahBSIAFB+AVqKAIAGiABQfgFahBWIAFB6AVqKAIAGiABQegFahBWIAFB2AVqKAIAGiABQdgFahBWIAFByAVqKAIAGiABQcgFahBWQQAhAkEAIQRBACEGQQAhBwNAIAFBoAJqIAFBwANqEGMgASgCpAIiCiAETQ0GIAEoAqACIAJqKAIAIQogAUGYAmogAUHAA2oQYyABKAKcAiILIARBAWpNDQUgASgCmAIgAmpBBGooAgAhCyABQZACaiABQcADahBjIAEoApQCIgggBEECak0NBCABKAKQAiACakEIaigCACEIIAFBiAJqIAoQYSABQYgGaiAAIAEoAogCIAEoAowCEDEgAUGAAmogCxBhIAFB4ANqIAAgASgCgAIgASgChAIQMSABQfgBaiAIEGEgAUGYBmogACABKAL4ASABKAL8ARAxAkACQCABQYgGaiABQeADahALDQAgAUGIBmogAUGYBmoQCw0AIAFB4ANqIAFBmAZqEAtFDQELIAwgBk0NBCADIAMoAgBBAXI2AgAgB0EBaiEHCyACQQxqIQIgBEEDaiEEIANByABqIQMgBSAGQQFqIgZHDQALIA4gAUHAA2ooAgAgEyAHayIKIBMQECABQcADaigCACELAkACQCAKRQRAQX8hBgwBC0EAIQYDQCAOIAZByABsaiIDQn83AgAgA0EIakF/NgIAIANBDGpCADcCACADQRRqQQA2AgAgA0E8aiADQRhqIQIgAygCPCEEQQMhAwNAIAJCADcCACACQRhqQgA3AgAgAkEQakIANwIAIAJBCGpCADcCACAEQQRyIQQgA0F/aiIDDQALIAQ2AgAgBkEBaiIGIApHDQALIAFBpAZqIQYgAUHsA2ohDEEAIQUDQCABQfABaiALIAVBDGxqIgMoAgAQYSABQagFaiAAIAEoAvABIAEoAvQBEDEgAUHoAWogA0EEaiICKAIAEGEgAUG4BWogACABKALoASABKALsARAxIAFB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AkAgASgCRBAxIAEpA4gGISsgASgCkAYhFyABQThqIAIQYSABQYgGaiAAIAEoAjggASgCPBAxIAEoAogGIQIgASgCjAYhECABKAKQBiESIAFBMGogHRBhIAFBiAZqIAAgASgCMCABKAI0EDEgASkDiAYhLCABKAKQBiEdIAEgFzYCgAYgASArNwP4BSABIBI2ApAGIAEgEDYCjAYgASACNgKIBiABQcgFaiABQfgFaiABQYgGahAVIAEgHTYCgAYgASAsNwP4BSABIBI2ApAGIAEgEDYCjAYgASACNgKIBiABQdgFaiABQfgFaiABQYgGahAVIBYgAUHQBWoiECgCADYCACABIAEpA8gFNwP4BSABQbgFaiABQcgFahARITUgBCAYKAIANgIAIAEgASkDuAU3A4gGIAFBKGogAUGIBmogGRBoIAEoAigiAiABKAIsIhJHBEADQCACIDUgAioCAJQ4AgAgEiACQQRqIgJHDQALCyABQcgFaiABQfgFaiABQYgGahAVIAQgECgCADYCACABIAEpA8gFNwOIBiABQYgGahBRBEAgBCAQKAIANgIAIAEgASkDyAU3A4gGIAFByAVqIAFBiAZqECMLIBYgAUHgBWoiECgCADYCACABIAEpA9gFNwP4BSABQbgFaiABQdgFahARITUgBCAYKAIANgIAIAEgASkDuAU3A4gGIAFBIGogAUGIBmogGRBoIAEoAiAiAiABKAIkIhJHBEADQCACIDUgAioCAJQ4AgAgEiACQQRqIgJHDQALCyABQdgFaiABQfgFaiABQYgGahAVIAQgECgCADYCACABIAEpA9gFNwOIBiABQYgGahBRBEAgBCAQKAIANgIAIAEgASkD2AU3A4gGIAFB2AVqIAFBiAZqECMLQwAAgD8gAUHIBWogAUHYBWoQESI1QwAAgL+XIDVDAACAP14buxAOIA8qAjQhNSAPKgIwITcgFiADKAIANgIAIAEgASkDmAY3A/gFIAEgMjgCkAYgASAvOAKMBiABIDM4AogGIAFBGGogAUGIBmogGRBotiEvIAEoAhgiAiABKAIcIg9HBEADQCACIAIqAgAgL5Q4AgAgDyACQQRqIgJHDQALCyABQZgGaiABQfgFaiABQYgGahAWIBYgFUEIaiIPKAIANgIAIAEgFSkCADcD+AUgASAxOAKQBiABIDA4AowGIAEgNDgCiAYgAUEQaiABQYgGaiAZEGggASgCECICIAEoAhQiEEcEQANAIAIgAioCACAvlDgCACAQIAJBBGoiAkcNAAsLIAFB6AVqIAFB+AVqIAFBiAZqEBYgDyABQfAFaigCADYCACAVIAEpA+gFNwIAIAEgNyAvlCABKgKkBpI4AqQGIAEgNSAvlCABKgK0BpI4ArQGIC4gL5IhLgsgCSAHQQFqIgdHDQALDAQLIAkgD0HcgsAAED8ACyAFIAJB7ILAABA/AAsgDCACQfyCwAAQPwALIAwgB0GMg8AAED8ACyAEIAMoAgA2AgAgASABKQOYBjcDiAYgAUGIBmoQUQRAIAQgAygCADYCACABIAEpA5gGNwOIBiABQZgGaiABQYgGahAjCyAEIBVBCGoiAigCADYCACABIBUpAgA3A4gGIAFBiAZqEFEEQCAEIAIoAgA2AgAgASAVKQIANwOIBiABQfgFaiABQYgGahAjIAIgAUGABmooAgA2AgAgFSABKQP4BTcCAAsgLkMAAAAAXkEBc0UEQCABIAEqAqQGIC6VOAKkBiABIAEqArQGIC6VOAK0BgsgASgC4AQiAiAMTQ0DIAEoAtgEIAxBKGxqIAFBmAZqQSgQTiAMQQFqIQwLICAEQCAIKAJAIAggKGpBxABqLQAAaiICICJPDQICfyAUIAJBKGxqIgIoAiBBAUcEQCABKALgBCIEIAVNDQYgAiABKALYBCAFQShsakEoEDsaQQEMAQsgASgC4AQiBCAFTQ0GIAFBmAZqIAIgASgC2AQgBUEobGoQBSACIAFBmAZqQSgQTkECCyEFIAJBIGogBTYCACACICYtAAA6ACQgESgCABogERBWIB9BAWoiHyANKAIASA0BDAYLC0F/QQRBrIPAABA/AAsgAiAiQbyDwAAQPwALIAwgAkGcg8AAED8ACyAFIARBzIPAABA/AAsgBSAEQdyDwAAQPwALICNBAWoiIyAGRw0ACyABQfgEaigCABogAUH4BGoQViABQegEahBJIAFB6ARqEFIgAUHYBGoQVCABKALIBCEUIAEoAtADIQsLIAFBwANqKAIAIQUgCiATSARAIBtBAUghCSAKIQMDQCALIANByABsaiIELQA8QQJxRQRAIANBA2whDCAEQUBrIQhBACEGA0ACQCAJDQAgBSAGIAxqQQJ0aigCACEOQQAhAgNAAkAgAiAOIAUgAkECdGooAgAiB0ciDWohAiAHIA5GDQAgAiAbSA0BCwsgDQ0AIBQgCCgCACAEIAZqQcQAai0AAGpBKGxqIBQgCyACQQNuIg5ByABsaiIHKAJAIAcgAiAOQQNsa2pBxABqLQAAakEobGpBKBA7GgsgBkEBaiIGQQNHDQALCyADICVGIANBAWohA0UNAAsLIApBAU4EQCALQcQAaiEEQQAhBQNAAkAgCyAFQcgAbGoiAy0APEECcUUNACABQQA2AugDIAFCADcD4AMgAUEIaiADKAI4IgYCf0EBQQEgA0HFAGotAABBH3F0QQEgAy0AREEfcXRyQQEgA0HGAGotAABBH3F0ciICQQJxRQ0AGkECIAJBBHFFDQAaQQBBAyACQQhxGwsiDhBmEGEgAUGYBmogACABKAIIIAEoAgwQMSABQegDaiABQaAGaigCADYCACABIAEpA5gGNwPgAyADQUBrIQNBACECA0AgASAGIAIgBGotAAAiCRBmEGEgAUGYBmogACABKAIAIAEoAgQQMSABQZgGaiABQeADahALBEAgFCADKAIAIgMgDmpBKGxqIBQgAyAJakEobGpBKBA7GgwCCyACQQFqIgJBA0cNAAsLIARByABqIQQgBUEBaiIFIApHDQALCyABKALQBCEFQQAhBkEAIQkDQEEAIAUgCWsiAyADIAVLGyEKIBQgCUEobGohDkEAIQNBACEEA0AgBCAKRg0DIAMgDmoiAikCACErIAEgAkEIaigCADYC6AMgASArNwLgAyAAIAFB4ANqIAJBDGoqAgAgAkEcaioCACACQSRqLQAAEB8gBEEBaiEEIANBKGoiA0H4AEcNAAsgBCAJaiEJIAZBAWoiBiATRw0ACyABQcgEahBUIAFBuARqKAIAGiABQbgEahBWIAFBqARqEFIgAUHQA2oQUyABQcADaigCABogAUHAA2oQVkEBIQILIAFB4AZqJAAgAg8LIAQgCWogBUHMgsAAED8ACyAGIAxBvILAABA/AAsgBEECaiAIQayCwAAQPwALIARBAWogC0GcgsAAED8ACyAEIApBjILAABA/AAsgCyALQdyFwAAQPwALIAYgBEHMhcAAED8ACyADIARBvIXAABA/AAsgBiADQayFwAAQPwALIAQgA0GchcAAED8ACyAEIApBjIXAABA/AAtBAEEA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AiALIANBEGogAiABIANBIGoQLSADQRhqKAIAIQEgAygCFCECIAMoAhBBAUYNASAAIAI2AgAgACABQShuNgIECyADQTBqJAAPCyADQQhqIAIgARBoIAMoAgghASADKAIMDAELIAMgAkEAEGggAygCACEBIAMoAgQLIgAEQCABIAAQcAALEGsAC6cCAgN/AX4jAEEwayIDJAACfwJAAkAgACgCBCIEIAFrIAJJBEAgASACaiICIAFJDQJBBCEBAkAgBEEBdCIFIAIgBSACSxsiAkEEIAJBBEsbrUIMfiIGQiCIp0UEQCAGpyECDAELIAAoAgQhBEEAIQELAkAgBARAIAAoAgAhBSADQShqQQQ2AgAgAyAEQQxsNgIkIAMgBTYCIAwBCyADQQA2AiALIANBEGogAiABIANBIGoQLSADQRhqKAIAIQEgAygCFCECIAMoAhBBAUYNASAAIAI2AgAgACABQQxuNgIECyADQTBqJAAPCyADQQhqIAIgARBoIAMoAgghASADKAIMDAELIAMgAkEAEGggAygCACEBIAMoAgQLIgAEQCABIAAQcAALEGsAC6gCAQN/IwBBMGsiAyQAAn8CQAJAIAAoAgQiBCABayACSQRAIAEgAmoiAiABSQ0CQQQhAQJAIARBAXQiBSACIAUgAksbIgJBBCACQQRLGyICQf////8DcSACRgRAIAJBAnQhAgwBCyAAKAIEIQRBACEBCwJAIAQEQCAAKAIAIQUgA0EoakEENgIAIAMgBEECdDYCJCADIAU2AiAMAQsgA0EANgIgCyADQRBqIAIgASADQSBqEC0gA0EYaigCACEBIAMoAhQhAiADKAIQQQFGDQEgACACNgIAIAAgAUECdjYCBAsgA0EwaiQADwsgA0EIaiACIAEQaCADKAIIIQEgAygCDAwBCyADIAJBABBoIAMoAgAhASADKAIECyIABEAgASAAEHAACxBrAAuoAgEDfyMAQTBrIgMkAAJ/AkACQCAAKAIEIgQgAWsgAkkEQCABIAJqIgIgAUkNAkEEIQECQCAEQQF0IgUgAiAFIAJLGyICQQQgAkEESxsiAkH/////AHEgAkYEQCACQQR0IQIMAQsgACgCBCEEQQAhAQsCQCAEBEAgACgCACEFIANBKGpBBDYCACADIARBBHQ2AiQgAyAFNgIgDAELIANBADYCIAsgA0EQ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aiEDIAUoAggiBiAFKAIMIgdJBEAgByAGayEIA0AgAikCACEJIANBCGogAkEIaikCADcCACADIAk3AgAgA0EQaiEDIAhBf2oiCA0ACyAEIAdqIAZrIQQLIAAgAQR/IAIpAgAhCSADQQhqIAJBCGopAgA3AgAgAyAJNwIAIARBAWoFIAQLNgIIIAVBEGokAAuqAQMBfwN+An0jAEEgayICJAAgAkEYaiABKAIAEGEgACACKAIYIAIoAhwQPSEDIAJBEGogASgCBBBhIAAgAigCECACKAIUED0hBCACQQhqIAEoAggQYSAAIAIoAgggAigCDBA9IQUgAkEgaiQAIASnviADp74iBpMgBUIgiKe+IANCIIinviIHk5QgBEIgiKe+IAeTIAWnviAGk5STIgaMIAYgBkMAAAAAXRsLsQEBBX8jAEEQayIDJAACQCAAKAIEIgIgAU8EQAJAIAIEQCACQQJ0IQIgACgCACEEAkAgAUECdCIFRQRAQQQhBiACRQ0BIAQgAkEEEGoMAQsgBCACQQQgBRBiIgZFDQILIAAgBjYCACAAIAFB/////wNxNgIECyADQRBqJAAPCyADQQhqIAVBBBBoIAMoAgwiAEUNASADKAIIIAAQcAALQcWIwABBJEHsiMAAEEgACxBrAAu2AQEBfyMAQRBrIgMkAAJAIABFDQAgAyAANgIEIAFFDQACQCACQQRLDQAgAUEDakECdkF/aiIAQf8BSw0AIANBoJXAADYCCCADIABBAnRBpJXAAGoiACgCADYCDCADQQRqIANBDGogA0EIakGUicAAEBMgACADKAIMNgIADAELIANBoJXAACgCADYCDCADQQRqIANBDGpB/IjAAEH8iMAAEBNBoJXAACADKAIMNgIACyADQRBqJAALmQEBBn8jAEEQayIFJAAgACAAKAIIIAEQGCAAKAIAIAAoAgghAyAFQQhqQQEgARBoIANByABsaiEEIAUoAggiBiAFKAIMIgdJBEAgByAGayEIA0AgBCACQcgAEDtByABqIQQgCEF/aiIIDQALIAMgB2ogBmshAwsgACABBH8gBCACQcgAEDsaIANBAWoFIAMLNgIIIAVBEGokAAuVAQEGfyMAQRBrIgUkACAAIAAoAgggARAZIAAoAgAgACgCCCEDIAVBCGpBASABEGggA0EobGohBCAFKAIIIgYgBSgC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AWoiAiABIAJLG0GHgARqIgFBEHZAACICQX9GBEBBACEDQQEMAQsgAkEQdCIDQgA3AwAgA0EANgIIIAMgAyABQYCAfHFqQQJyNgIAQQALIQIgACADNgIEIAAgAjYCAAtvAQF/AkAgASAATwRAIAJFDQEgACEDA0AgAyABLQAAOgAAIAFBAWohASADQQFqIQMgAkF/aiICDQALDAELIAJFDQAgAUF/aiEBIABBf2ohAwNAIAIgA2ogASACai0AADoAACACQX9qIgINAAsLIAALbwECfwJ/IAIgAJMgASAAk5VDAAAARZQiAEMAAADPYCIDQQFzIABD////Tl9FckUEQCAAqAwBC0H/////B0GAgICAeCADGyIEIARBACAAQ////05fGyADGwsiA0EAIANBAEobIgNB/w8gA0H/D0gbC2YBAX8CQCAAQSBqKAIAIgMgAUEGbCACQQF0aiIBSwRAIAMgAUEBciICTQ0BIAAoAhgiACACQQJ0ajUCAEIghiAAIAFBAnRqNQIAhA8LIAEgA0HsgMAAED8ACyACIANB/IDAABA/AAtrAQJ/IwBBEGsiBiQAAkAgACABIAIgAyAEEAoiBQ0AIAZBCGogAyAAIAEgBCgCDBEFAEEAIQUgBigCCA0AIAYoAgwiBSACKAIANgIIIAIgBTYCACAAIAEgAiADIAQQCiEFCyAGQRBqJAAgBQtsAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0EcakECNgIAIANBLGpBHTYCACADQgI3AgwgA0G0kMAANgIIIANBHTYCJCADIANBIGo2AhggAyADNgIoIAMgA0EEajYCICADQQhqIAIQWQALVAEBfyMAQSBrIgIkACACIAAoAgA2AgQgAkEYaiABQRBqKQIANwMAIAJBEGogAUEIaikCADcDACACIAEpAgA3AwggAkEEaiACQQhqEAggAkEgaiQAC1kCAX8BfiMAQSBrIgMkACADQQhqIAIQNyADKQMIIQQgAEEANgIIIAAgBDcCACADQRhqIAFBCGopAgA3AwAgAyABKQIANwMQIAAgAiADQRBqECcgA0EgaiQAC1kCAX8BfiMAQSBrIgMkACADQQhqIAIQNCADKQMIIQQgAEEANgIIIAAgBDcCACADQRhqIAFBCGooAgA2AgAgAyABKQIANwMQIAAgAiADQRBqECYgA0EgaiQAC1kCAX8BfiMAQSBrIgMkACADQQhqIAIQNyADKQMIIQQgAEEANgIIIAAgBDcCACADQRhqIAFBCGopAgA3AwAgAyABKQIANwMQIAAgAiADQRBqECAgA0EgaiQAC1QBAn8gASgCACECIAFBADYCAAJAIAIEQCABKAIEIQNBCEEEEGciAUUNASABIAM2AgQgASACNgIAIABByI3AADYCBCAAIAE2AgAPCwALQQhBBBBwAAtKAgF/AX4jAEHQAGsiAyQAIAMgAhA2IAMpAwAhBCAAQQA2AgggACAENwIAIANBCGogAUHIABBOIAAgAiADQQhqECsgA0HQAGokAAtHAgF/AX4jAEEwayIDJAAgAyACEDUgAykDACEEIABBADYCCCAAIAQ3AgAgA0EIaiABQSgQTiAAIAIgA0EIahAsIANBMGokAAtKAAJ/IAFBgIDEAEcEQEEBIAAoAhggASAAQRxqKAIAKAIQEQIADQEaCyACRQRAQQAPCyAAKAIYIAJBACAAQRxqKAIAKAIMEQQACwtHAQF/IwBBIGsiAyQAIANBFGpBADYCACADQfCPwAA2AhAgA0IBNwIEIAMgATYCHCADIAA2AhggAyADQRhqNgIAIAMgAhBZAAs8AQF/IAAoAggiAQRAIAFBBHQhASAAKAIAQQRqIQADQCAAKAIAGiAAEFYgAEEQaiEAIAFBcGoiAQ0ACwsLOAAgAEIANwIAIABBCGpBADYCACAAQSRqQQA6AAAgAEEcakIANwIAIABBFGpCADcCACAAQgA3AgwLRAECfyABKAIEIQIgASgCACEDQQhBBBBnIgFFBEBBCEEEEHAACyABIAI2AgQgASADNgIAIABBoI/AADYCBCAAIAE2AgALPQAgAEIANwIgIAAgASkCADcCACAAIAIpAgA3AhAgAEEIaiABQQhqKQIANwIAIABBGGogAkEIaikCADcCAAtbAQN/IwBBEGsiASQAIAAoAgwiAkUEQEGAjsAAQStByI7AABBIAAsgACgCCCIDRQRAQYCOwABBK0HYjsAAEEgACyABIAI2AgggASAANgIEIAEgAzYCACABEFgACysAIAIEQANAIAAgAS0AADoAACABQQFqIQEgAEEBaiEAIAJBf2oiAg0ACwsLKQEBfyADIAIQLiIEBEAgBCAAIAMgASABIANLGxBOIAAgASACECoLIAQLLAACQCAAQXxNBEAgAEUEQEEEIQAMAgsgACAAQX1JQQJ0EGciAA0BCwALIAALNwEBf0EBIQECQCAAKgIAi0MAAIAAXg0AIAAqAgSLQwAAgABeDQAgACoCCItDAACAAF4hAQsgAQsmAQF/AkAgACgCBCIBRQ0AIAAoAgAgAUEEdCIBRQ0AIAFBBBBqCwsnAQF/AkAgACgCBCIBRQ0AIAAoAgAgAUHIAGwiAUUNACABQQQQagsLJgEBfwJAIAAoAgQiAUUNACAAKAIAIAFBKGwiAUUNACABQQQQagsLJgEBfwJAIAAoAgQiAUUNACAAKAIAIAFBDGwiAUUNACABQQQQagsLJgEBfwJAIAAoAgQiAUUNACAAKAIAIAFBAnQiAUUNACABQQQQagsLLAEBfyMAQRBrIgEkACABQQhqIABBCGooAgA2AgAgASAAKQIANwMAIAEQWwALLAEBfyMAQRBrIgEkACABQQhqIABBCGooAgA2AgAgASAAKQIANwMAIAEQMwALNAEBfyMAQRBrIgIkACACIAE2AgwgAiAANgIIIAJB8I/AADYCBCACQfCPwAA2AgAgAhBNAAspAQF/IAEEQCAAIQIDQCACQQA6AAAgAkEBaiECIAFBf2oiAQ0ACwsgAAsrAQF/IwBBEGsiASQAIAEgACkCADcDCCABQQhqQbSNwABBACAAKAIIECUACycBAX8jAEEQayICJAAgAiABNgIIIAJBHTYCBCACIAA2AgAgAhBXAAsmAQF/AkAgACgCACIBRQ0AIABBBGooAgAiAEUNACABIABBARBqCwsmAQF/AkAgACgCBCIBRQ0AIABBCGooAgAiAEUNACABIABBARBqCwshACAAQQM2AgwgACABNgIEIAAgATYCACAAIAFBDGo2AggLHQAgASgCAEUEQAALIABByI3AADYCBCAAIAE2AgALFgAgACABQQNxNgIEIAAgAUECdjYCAAsMACAAIAEgAiADEE8LFgAgACABKAIINgIEIAAgASgCADYCAAsPACABBEAgACABQQQQagsLEgAgACgCACABIAEgAmoQIkEACw0AIAFBA3EgAEECdHILCAAgACABEC4LEAAgACACNgIEIAAgATYCAAsTACAAQaCPwAA2AgQgACABNgIACwoAIAAgASACECoLEQBBzI/AAEERQeCPwAAQSAALDgAgACgCABoDQAwACwALCwAgADUCACABEBQLCwAgACMAaiQAIwALCwAgAItDAACAAF4LGQAgACABQcSdwAAoAgAiAEEPIAAbEQEAAAsFAEGABAsEAEEBCwQAIAELBABBAAsNAEL0+Z7m7qOq+f4ACw0AQve47vqqzNXu5QALDABC6dCi28yi6rtGCwMAAQsDAAELC6QVAgBBgIDAAAvBCnNyYy9saWIucnMAAAAAEAAKAAAANgAAAA0AAAAAABAACgAAADcAAAANAAAAAAAQAAoAAAA4AAAADQAAAAAAEAAKAAAAPgAAAA0AAAAAABAACgAAAD8AAAANAAAAAAAQAAoAAABAAAAADQAAAAAAEAAKAAAARgAAAA0AAAAAABAACgAAAEcAAAANAAAARmFpbGVkIHRvIGdlbmVyYXRlIHRhbmdlbnRzLi9Vc2Vycy9kb25tY2N1cmR5Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVjODIzL21pa2t0c3BhY2UtMC4yLjAvc3JjL2dlbmVyYXRlZC5ycwCoABAAYwAAANcAAAASAAAAqAAQAGMAAADYAAAAEgAAAKgAEABjAAAA2QAAABIAAACoABAAYwAAAN4AAAANAAAAqAAQAGMAAAAjAQAAOAAAAKgAEABjAAAA/QEAABUAAACoABAAYwAAAA8CAABAAAAAqAAQAGMAAAAVAgAAEQAAAKgAEABjAAAAFgIAABEAAACoABAAYwAAABgCAAARAAAAqAAQAGMAAAAjAgAAGQAAAKgAEABjAAAAJAIAADIAAACoABAAYwAAACoCAAAcAAAAqAAQAGMAAAAmAgAANAAAAKgAEABjAAAAvQUAAAkAAACoABAAYwAAAMAFAAAFAAAAqAAQAGMAAADDBQAAHAAAAKgAEABjAAAAwwUAADMAAACoABAAYwAAAMMFAAAJAAAAqAAQAGMAAADTBQAAIwAAAKgAEABjAAAA0wUAABcAAACoABAAYwAAANQFAAAYAAAAqAAQAGMAAADVBQAACQAAAKgAEABjAAAA3AUAABEAAACoABAAYwAAAN8FAAAYAAAAqAAQAGMAAADgBQAAGQAAAKgAEABjAAAA6AUAAC0AAACoABAAYwAAAOgFAAAhAAAAqAAQAGMAAADpBQAAGAAAAKgAEABjAAAA8gUAABEAAACoABAAYwAAAKcGAAANAAAAqAAQAGMAAACuBgAAEQAAAKgAEABjAAAArwYAABEAAACoABAAYwAAALAGAAARAAAAqAAQAGMAAAD9BgAACQAAAE1hdHJpeCBzbGljaW5nIG91dCBvZiBib3VuZHMuL1VzZXJzL2Rvbm1jY3VyZHkvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2M2Mjk5ZGI5ZWM4MjMvbmFsZ2VicmEtMC4xOS4wL3NyYy9iYXNlL21hdHJpeF9zbGljZS5ycwBZAxAAagAAAOMAAAAJAAAAL1VzZXJzL2Rvbm1jY3VyZHkvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMucnNUcmllZCB0byBzaHJpbmsgdG8gYSBsYXJnZXIgY2FwYWNpdHkAAADUAxAAcQAAAMUBAAAJAAAAAQAAAAAAAAABAAAAAgAAAAMAAAAEAAAABQAAAAQAAAAEAAAABgAAAAcAAAAIAAAACQAAAAAAAAABAAAAAgAAAAMAAAAEAAAAL1VzZXJzL2Rvbm1jY3VyZHkvLnJ1c3R1cC90b29sY2hhaW5zL3N0YWJsZS14ODZfNjQtYXBwbGUtZGFyd2luL2xpYi9ydXN0bGliL3NyYy9ydXN0L2xpYnJhcnkvY29yZS9zcmMvbnVtL21vZC5yc8QEEABwAAAAnQIAAAUAQdCKwAAL0AphdHRlbXB0IHRvIGNhbGN1bGF0ZSB0aGUgcmVtYWluZGVyIHdpdGggYSBkaXZpc29yIG9mIHplcm9NYXRyaXggc2xpY2luZyBvdXQgb2YgYm91bmRzLi9Vc2Vycy9kb25tY2N1cmR5Ly5jYXJnby9yZWdpc3RyeS9zcmMvZ2l0aHViLmNvbS0xZWNjNjI5OWRiOWVjODIzL25hbGdlYnJhLTAuMTkuMC9zcmMvYmFzZS9tYXRyaXhfc2xpY2UucnOmBRAAagAAAOMAAAAJAAAAL1VzZXJzL2Rvbm1jY3VyZHkvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9naXRodWIuY29tLTFlY2M2Mjk5ZGI5ZWM4MjMvbWlra3RzcGFjZS0wLjIuMC9zcmMvZ2VuZXJhdGVkLnJzACAGEABjAAAA2wIAABkAAAAgBhAAYwAAANsCAAAyAAAAIAYQAGMAAAB+AwAACAAAAAoAAAAIAAAABAAAAAsAAAAMAAAADQAAAAgAAAAEAAAADgAAABAAAAAEAAAABAAAABEAAAASAAAAEwAAABAAAAAAAAAAAQAAABQAAABjYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlbGlicmFyeS9zdGQvc3JjL3Bhbmlja2luZy5ycwArBxAAHAAAAO0BAAAfAAAAKwcQABwAAADuAQAAHgAAABUAAAAQAAAABAAAABYAAAAXAAAAEAAAAAgAAAAEAAAAGAAAABkAAAAaAAAADAAAAAQAAAAbAAAAEAAAAAgAAAAEAAAAHAAAAGxpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMucnNjYXBhY2l0eSBvdmVyZmxvdwAAALAHEAAcAAAAHgIAAAUAAAAfAAAAAAAAAAEAAAAgAAAAaW5kZXggb3V0IG9mIGJvdW5kczogdGhlIGxlbiBpcyAgYnV0IHRoZSBpbmRleCBpcyAAAAAIEAAgAAAAIAgQABIAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OWxpYnJhcnkvY29yZS9zcmMvZm10L21vZC5ycwAMCRAAGwAAAFUEAAARAAAADAkQABsAAABfBAAAJAAAAAMAAAAEAAAABAAAAAYAAACD+aIARE5uAPwpFQDRVycA3TT1AGLbwAA8mZUAQZBDAGNR/gC73qsAt2HFADpuJADSTUIASQbgAAnqLgAcktEA6x3+ACmxHADoPqcA9TWCAES7LgCc6YQAtCZwAEF+XwDWkTkAU4M5AJz0OQCLX4QAKPm9APgfOwDe/5cAD5gFABEv7wAKWosAbR9tAM9+NgAJyycARk+3AJ5mPwAt6l8Auid1AOXrxwA9e/EA9zkHAJJSigD7a+oAH7FfAAhdjQAwA1YAe/xGAPCrawAgvM8ANvSaAOOpHQBeYZEACBvmAIWZZQCgFF8AjUBoAIDY/wAnc00ABgYxAMpWFQDJqHMAe+JgAGuMwAAAAABA+yH5PwAAAAAtRHQ+AAAAgJhG+DwAAABgUcx4OwAAAICDG/A5AAAAQCAlejgAAACAIoLjNgAAAAAd82k1AHsJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJvY2Vzc2VkLWJ5AwVydXN0Yx0xLjQ5LjAgKGUxODg0YThlMyAyMDIwLTEyLTI5KQZ3YWxydXMGMC4xOC4wDHdhc20tYmluZGdlbhIwLjIuNzMgKDNjZWZlMmM4Mik=";
|
|
10540
|
+
let ze, jo = !1;
|
|
10541
|
+
const Gl = fetch(Tl).then((a) => a.arrayBuffer()).then((a) => WebAssembly.instantiate(a, {
|
|
10542
|
+
"./mikktspace_module_bg.js": { __wbindgen_string_new: Yo, __wbindgen_rethrow: Jo }
|
|
10596
10543
|
})).then((a) => {
|
|
10597
|
-
ze = a.instance.exports,
|
|
10598
|
-
}),
|
|
10544
|
+
ze = a.instance.exports, jo = !0;
|
|
10545
|
+
}), Ch = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
10599
10546
|
__proto__: null,
|
|
10600
|
-
__wbindgen_rethrow:
|
|
10601
|
-
__wbindgen_string_new:
|
|
10602
|
-
generateTangents:
|
|
10547
|
+
__wbindgen_rethrow: Jo,
|
|
10548
|
+
__wbindgen_string_new: Yo,
|
|
10549
|
+
generateTangents: Ml,
|
|
10603
10550
|
get isReady() {
|
|
10604
|
-
return
|
|
10551
|
+
return jo;
|
|
10605
10552
|
},
|
|
10606
|
-
ready:
|
|
10553
|
+
ready: Gl,
|
|
10607
10554
|
get wasm() {
|
|
10608
10555
|
return ze;
|
|
10609
10556
|
}
|
|
10610
10557
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
10611
10558
|
export {
|
|
10612
|
-
|
|
10613
|
-
|
|
10614
|
-
|
|
10615
|
-
|
|
10559
|
+
Ll as BufferGeometryUtils,
|
|
10560
|
+
Wl as DRACOLoader,
|
|
10561
|
+
Ah as EXRLoader,
|
|
10562
|
+
uh as FBXLoader,
|
|
10616
10563
|
mc as Font,
|
|
10617
|
-
|
|
10618
|
-
|
|
10619
|
-
|
|
10620
|
-
|
|
10621
|
-
|
|
10622
|
-
|
|
10623
|
-
|
|
10624
|
-
|
|
10625
|
-
|
|
10626
|
-
|
|
10627
|
-
|
|
10628
|
-
|
|
10629
|
-
|
|
10630
|
-
|
|
10631
|
-
|
|
10632
|
-
|
|
10633
|
-
|
|
10564
|
+
$l as FontLoader,
|
|
10565
|
+
ko as GLTFExporter,
|
|
10566
|
+
ur as GLTFLoader,
|
|
10567
|
+
vl as GroundedSkybox,
|
|
10568
|
+
lh as HTMLMesh,
|
|
10569
|
+
ah as HorizontalBlurShader,
|
|
10570
|
+
hh as InteractiveGroup,
|
|
10571
|
+
CA as KTX2Loader,
|
|
10572
|
+
gh as Line2,
|
|
10573
|
+
jg as LineGeometry,
|
|
10574
|
+
Uo as LineMaterial,
|
|
10575
|
+
Xl as MeshoptDecoder,
|
|
10576
|
+
Bh as OBJLoader,
|
|
10577
|
+
ih as OrbitControls,
|
|
10578
|
+
Eh as Pass,
|
|
10579
|
+
oh as PositionalAudioHelper,
|
|
10580
|
+
th as RGBELoader,
|
|
10634
10581
|
an as Stats,
|
|
10635
|
-
|
|
10636
|
-
|
|
10582
|
+
Zl as TextGeometry,
|
|
10583
|
+
nh as TransformControls,
|
|
10637
10584
|
zc as TransformControlsGizmo,
|
|
10638
|
-
|
|
10639
|
-
|
|
10640
|
-
|
|
10641
|
-
|
|
10642
|
-
|
|
10643
|
-
ph as mikktspace_module,
|
|
10585
|
+
Ih as VertexNormalsHelper,
|
|
10586
|
+
rh as VerticalBlurShader,
|
|
10587
|
+
ch as XRControllerModelFactory,
|
|
10588
|
+
gr as mergeVertices,
|
|
10589
|
+
Ch as mikktspace_module,
|
|
10644
10590
|
Qc as nodeFrame,
|
|
10645
10591
|
As as strToU8,
|
|
10646
|
-
|
|
10592
|
+
eh as zipSync
|
|
10647
10593
|
};
|