@galacean/engine 1.3.26 → 1.3.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/browser.js CHANGED
@@ -9052,6 +9052,28 @@
9052
9052
  */ Shader.find = function find(name1) {
9053
9053
  return Shader._shaderMap[name1];
9054
9054
  };
9055
+ /**
9056
+ * @internal
9057
+ */ Shader._clear = function _clear(engine) {
9058
+ var shaderMap = Shader._shaderMap;
9059
+ for(var key in shaderMap){
9060
+ var shader = shaderMap[key];
9061
+ var subShaders = shader._subShaders;
9062
+ for(var i = 0, n = subShaders.length; i < n; i++){
9063
+ var passes = subShaders[i].passes;
9064
+ for(var j = 0, m = passes.length; j < m; j++){
9065
+ var pass = passes[j];
9066
+ var passShaderProgramPools = pass._shaderProgramPools;
9067
+ for(var k = passShaderProgramPools.length - 1; k >= 0; k--){
9068
+ var shaderProgramPool = passShaderProgramPools[k];
9069
+ if (shaderProgramPool.engine !== engine) continue;
9070
+ shaderProgramPool._destroy();
9071
+ passShaderProgramPools.splice(k, 1);
9072
+ }
9073
+ }
9074
+ }
9075
+ }
9076
+ };
9055
9077
  Shader._applyConstRenderStates = function _applyConstRenderStates(renderState, key, value) {
9056
9078
  switch(key){
9057
9079
  case exports.RenderStateDataKey.BlendStateEnabled0:
@@ -13264,6 +13286,7 @@
13264
13286
  program.uploadUnGroupTextures();
13265
13287
  (pass._renderState || blitMaterial.renderState)._applyStates(engine, false, pass._renderStateDataMap, blitMaterial.shaderData);
13266
13288
  rhi.drawPrimitive(blitMesh._primitive, blitMesh.subMesh, program);
13289
+ rendererShaderData.setTexture(PipelineUtils._blitTextureProperty, null);
13267
13290
  };
13268
13291
  return PipelineUtils;
13269
13292
  }();
@@ -13602,6 +13625,7 @@
13602
13625
  }
13603
13626
  this._renderPipeline.render(context, cubeFace, mipLevel, ignoreClearFlags);
13604
13627
  engine._renderCount++;
13628
+ context.camera = null;
13605
13629
  };
13606
13630
  _proto.setReplacementShader = function setReplacementShader(shader, replacementTag, failureStrategy) {
13607
13631
  if (failureStrategy === void 0) failureStrategy = exports.ReplacementFailureStrategy.KeepOriginalShader;
@@ -14345,10 +14369,8 @@
14345
14369
  _proto._drawMask = function _drawMask(context, pipelineStageTagValue, master) {
14346
14370
  var incrementMaskQueue = MaskManager.getMaskIncrementRenderQueue();
14347
14371
  incrementMaskQueue.renderQueueType = this.renderQueueType;
14348
- incrementMaskQueue.clear();
14349
14372
  var decrementMaskQueue = MaskManager.getMaskDecrementRenderQueue();
14350
14373
  decrementMaskQueue.renderQueueType = this.renderQueueType;
14351
- decrementMaskQueue.clear();
14352
14374
  var camera = context.camera;
14353
14375
  var engine = camera.engine;
14354
14376
  camera.scene._maskManager.buildMaskRenderElement(master, incrementMaskQueue, decrementMaskQueue);
@@ -14356,9 +14378,11 @@
14356
14378
  incrementMaskQueue._batch(engine._batcherManager);
14357
14379
  primitiveChunkManagerMask.uploadBuffer();
14358
14380
  incrementMaskQueue.render(context, pipelineStageTagValue, 1);
14381
+ incrementMaskQueue.clear();
14359
14382
  decrementMaskQueue._batch(engine._batcherManager);
14360
14383
  primitiveChunkManagerMask.uploadBuffer();
14361
14384
  decrementMaskQueue.render(context, pipelineStageTagValue, 2);
14385
+ decrementMaskQueue.clear();
14362
14386
  };
14363
14387
  RenderQueue.compareForOpaque = function compareForOpaque(a, b) {
14364
14388
  return a.priority - b.priority || a.distanceForSort - b.distanceForSort;
@@ -23629,6 +23653,7 @@
23629
23653
  * @internal
23630
23654
  */ var BasicResources = /*#__PURE__*/ function() {
23631
23655
  var BasicResources = function BasicResources(engine) {
23656
+ this.engine = engine;
23632
23657
  // prettier-ignore
23633
23658
  var vertices = new Float32Array([
23634
23659
  -1,
@@ -23688,6 +23713,11 @@
23688
23713
  }
23689
23714
  };
23690
23715
  var _proto = BasicResources.prototype;
23716
+ /**
23717
+ * @internal
23718
+ */ _proto._getBlinnPhongMaterial = function _getBlinnPhongMaterial() {
23719
+ return this._blinnPhongMaterial || (this._blinnPhongMaterial = new BlinnPhongMaterial(this.engine));
23720
+ };
23691
23721
  _proto._createBlitMesh = function _createBlitMesh(engine, vertices) {
23692
23722
  var mesh = new ModelMesh(engine);
23693
23723
  mesh._addReferCount(1);
@@ -24432,12 +24462,24 @@
24432
24462
  this._onCancelHandler && this._onCancelHandler();
24433
24463
  return this;
24434
24464
  };
24435
- /**
24436
- * Return a new resource Promise through the provided asset promise collection.
24437
- * The resolved of the new AssetPromise will be triggered when all the Promises in the provided set are completed.
24438
- * @param - Promise Collection
24439
- * @returns AssetPromise
24440
- */ AssetPromise.all = function all(promises) {
24465
+ AssetPromise.resolve = function resolve(value) {
24466
+ if (value === undefined) {
24467
+ return new AssetPromise(function(resolve) {
24468
+ return resolve();
24469
+ });
24470
+ } else if (_instanceof1$2(value, AssetPromise) || _instanceof1$2(value, Promise)) {
24471
+ return new AssetPromise(function(resolve, reject) {
24472
+ value.then(function(resolved) {
24473
+ return resolve(resolved);
24474
+ }, reject);
24475
+ });
24476
+ } else {
24477
+ return new AssetPromise(function(resolve) {
24478
+ return resolve(value);
24479
+ });
24480
+ }
24481
+ };
24482
+ AssetPromise.all = function all(values) {
24441
24483
  return new AssetPromise(function(resolve, reject, setTaskCompleteProgress) {
24442
24484
  var onComplete = function onComplete(index, resultValue) {
24443
24485
  completed++;
@@ -24448,7 +24490,7 @@
24448
24490
  }
24449
24491
  };
24450
24492
  var onProgress = function onProgress(promise, index) {
24451
- if (_instanceof1$2(promise, Promise) || _instanceof1$2(promise, AssetPromise)) {
24493
+ if (_instanceof1$2(promise, AssetPromise) || _instanceof1$2(promise, Promise)) {
24452
24494
  promise.then(function(value) {
24453
24495
  onComplete(index, value);
24454
24496
  }, reject);
@@ -24458,14 +24500,14 @@
24458
24500
  });
24459
24501
  }
24460
24502
  };
24461
- var count = promises.length;
24503
+ var count = Array.from(values).length;
24462
24504
  var results = new Array(count);
24463
24505
  var completed = 0;
24464
24506
  if (count === 0) {
24465
24507
  return resolve(results);
24466
24508
  }
24467
24509
  for(var i = 0; i < count; i++){
24468
- onProgress(promises[i], i);
24510
+ onProgress(values[i], i);
24469
24511
  }
24470
24512
  });
24471
24513
  };
@@ -25042,12 +25084,12 @@
25042
25084
  var obj = this._objectPool[refId];
25043
25085
  var promise;
25044
25086
  if (obj) {
25045
- promise = Promise.resolve(obj);
25087
+ promise = AssetPromise.resolve(obj);
25046
25088
  } else {
25047
25089
  var resourceConfig = this._editorResourceConfig[refId];
25048
25090
  if (!resourceConfig) {
25049
- Logger.warn("refId:" + refId + " is not find in this._editorResourceConfig.");
25050
- return Promise.resolve(null);
25091
+ Logger.warn("refId:" + refId + " is not find in this._idResourceMap.");
25092
+ return AssetPromise.resolve(null);
25051
25093
  }
25052
25094
  var url = resourceConfig.virtualPath;
25053
25095
  if (key) {
@@ -25992,16 +26034,24 @@
25992
26034
  }
25993
26035
  return shape.collider.entity.layer & layerMask && shape.isSceneQuery;
25994
26036
  };
26037
+ var outIDX;
26038
+ var outDistance;
26039
+ var outPosition;
26040
+ var outNormal;
25995
26041
  if (hitResult != undefined) {
25996
26042
  var result = this._nativePhysicsScene.raycast(ray, distance, onRaycast, function(idx, distance, position, normal) {
25997
- var hitShape = _this._scene.engine._physicalObjectsMap[idx];
25998
- hitResult.entity = hitShape._collider.entity;
25999
- hitResult.shape = hitShape;
26000
- hitResult.distance = distance;
26001
- hitResult.normal.copyFrom(normal);
26002
- hitResult.point.copyFrom(position);
26043
+ outIDX = idx;
26044
+ outDistance = distance;
26045
+ outPosition = position;
26046
+ outNormal = normal;
26003
26047
  });
26004
26048
  if (result) {
26049
+ var hitShape = this._scene.engine._physicalObjectsMap[outIDX];
26050
+ hitResult.entity = hitShape._collider.entity;
26051
+ hitResult.shape = hitShape;
26052
+ hitResult.distance = outDistance;
26053
+ hitResult.point.copyFrom(outPosition);
26054
+ hitResult.normal.copyFrom(outNormal);
26005
26055
  return true;
26006
26056
  } else {
26007
26057
  hitResult.entity = null;
@@ -28665,21 +28715,15 @@
28665
28715
  var _this_xrManager;
28666
28716
  this._sceneManager._destroyAllScene();
28667
28717
  this._resourceManager._destroy();
28668
- this._textDefaultFont = null;
28669
- this._fontMap = null;
28670
28718
  this.inputManager._destroy();
28671
28719
  this._batcherManager.destroy();
28672
28720
  (_this_xrManager = this.xrManager) == null ? void 0 : _this_xrManager._destroy();
28673
28721
  this.dispatch("shutdown", this);
28674
28722
  // Cancel animation
28675
28723
  this.pause();
28724
+ Shader._clear(this);
28676
28725
  this._hardwareRenderer.destroy();
28677
28726
  this.removeAllEventListeners();
28678
- this._animate = null;
28679
- this._sceneManager = null;
28680
- this._resourceManager = null;
28681
- this._canvas = null;
28682
- this._time = null;
28683
28727
  this._waitingDestroy = false;
28684
28728
  this._destroyed = true;
28685
28729
  };
@@ -28847,6 +28891,7 @@
28847
28891
  this._hardwareRenderer.resetState();
28848
28892
  this._lastRenderState = new RenderState();
28849
28893
  // Clear shader pools
28894
+ Shader._clear(this);
28850
28895
  this._shaderProgramPools.length = 0;
28851
28896
  var resourceManager = this.resourceManager;
28852
28897
  // Restore graphic resources
@@ -31923,11 +31968,13 @@
31923
31968
  * @param time - The time to sample an animation
31924
31969
  */ _proto._sampleAnimation = function _sampleAnimation(entity, time) {
31925
31970
  var _this = this, curveBindings = _this._curveBindings;
31971
+ var components = AnimationCurveOwner._components;
31926
31972
  for(var i = curveBindings.length - 1; i >= 0; i--){
31927
31973
  var curve = curveBindings[i];
31928
31974
  var targetEntity = entity.findByPath(curve.relativePath);
31929
31975
  if (targetEntity) {
31930
- var component = curve.typeIndex > 0 ? targetEntity.getComponents(curve.type, AnimationCurveOwner._components)[curve.typeIndex] : targetEntity.getComponent(curve.type);
31976
+ var component = curve.typeIndex > 0 ? targetEntity.getComponents(curve.type, components)[curve.typeIndex] : targetEntity.getComponent(curve.type);
31977
+ components.length = 0;
31931
31978
  if (!component) {
31932
31979
  continue;
31933
31980
  }
@@ -33514,13 +33561,15 @@
33514
33561
  var curveLayerOwner = animatorStateData.curveLayerOwner;
33515
33562
  var _animatorState_clip = animatorState.clip, curves = _animatorState_clip._curveBindings;
33516
33563
  var layerCurveOwnerPool = animatorLayerData.curveOwnerPool;
33564
+ var components = AnimationCurveOwner._components;
33517
33565
  for(var i = curves.length - 1; i >= 0; i--){
33518
33566
  var curve = curves[i];
33519
33567
  var relativePath = curve.relativePath;
33520
33568
  var targetEntity = curve.relativePath === "" ? entity : entity.findByPath(curve.relativePath);
33521
33569
  if (targetEntity) {
33522
33570
  var _curveOwnerPool, _instanceId, _propertyOwners, _property, _layerCurveOwnerPool, _instanceId1, _layerPropertyOwners, _property1;
33523
- var component = curve.typeIndex > 0 ? targetEntity.getComponents(curve.type, AnimationCurveOwner._components)[curve.typeIndex] : targetEntity.getComponent(curve.type);
33571
+ var component = curve.typeIndex > 0 ? targetEntity.getComponents(curve.type, components)[curve.typeIndex] : targetEntity.getComponent(curve.type);
33572
+ components.length = 0;
33524
33573
  if (!component) {
33525
33574
  continue;
33526
33575
  }
@@ -42129,7 +42178,7 @@
42129
42178
  exports.MeshDecoder = /*#__PURE__*/ function() {
42130
42179
  var MeshDecoder = function MeshDecoder() {};
42131
42180
  MeshDecoder.decode = function decode(engine, bufferReader) {
42132
- return new Promise(function(resolve) {
42181
+ return new AssetPromise(function(resolve) {
42133
42182
  var modelMesh = new ModelMesh(engine);
42134
42183
  var jsonDataString = bufferReader.nextStr();
42135
42184
  var encodedMeshData = JSON.parse(jsonDataString);
@@ -42262,7 +42311,7 @@
42262
42311
  exports.Texture2DDecoder = /*#__PURE__*/ function() {
42263
42312
  var Texture2DDecoder = function Texture2DDecoder() {};
42264
42313
  Texture2DDecoder.decode = function decode(engine, bufferReader) {
42265
- return new Promise(function(resolve, reject) {
42314
+ return new AssetPromise(function(resolve, reject) {
42266
42315
  var objectId = bufferReader.nextStr();
42267
42316
  var mipmap = !!bufferReader.nextUint8();
42268
42317
  var filterMode = bufferReader.nextUint8();
@@ -42578,7 +42627,7 @@
42578
42627
  exports.AnimationClipDecoder = /*#__PURE__*/ function() {
42579
42628
  var AnimationClipDecoder = function AnimationClipDecoder() {};
42580
42629
  AnimationClipDecoder.decode = function decode(engine, bufferReader) {
42581
- return new Promise(function(resolve) {
42630
+ return new AssetPromise(function(resolve) {
42582
42631
  var name = bufferReader.nextStr();
42583
42632
  var clip = new AnimationClip(name);
42584
42633
  var eventsLen = bufferReader.nextUint16();
@@ -43511,6 +43560,202 @@
43511
43560
  "font"
43512
43561
  ], false)
43513
43562
  ], FontLoader);
43563
+ // Source: https://github.com/zeux/meshoptimizer/blob/master/js/meshopt_decoder.js
43564
+ var ready;
43565
+ function getMeshoptDecoder() {
43566
+ var unpack = function unpack(data) {
43567
+ var result = new Uint8Array(data.length);
43568
+ for(var i = 0; i < data.length; ++i){
43569
+ var ch = data.charCodeAt(i);
43570
+ result[i] = ch > 96 ? ch - 97 : ch > 64 ? ch - 39 : ch + 4;
43571
+ }
43572
+ var write = 0;
43573
+ for(var i1 = 0; i1 < data.length; ++i1){
43574
+ result[write++] = result[i1] < 60 ? wasmpack[result[i1]] : (result[i1] - 60) * 64 + result[++i1];
43575
+ }
43576
+ return result.buffer.slice(0, write);
43577
+ };
43578
+ var decode = function decode(fun, target, count, size, source, filter) {
43579
+ var sbrk = instance.exports.sbrk;
43580
+ var count4 = count + 3 & ~3;
43581
+ var tp = sbrk(count4 * size);
43582
+ var sp = sbrk(source.length);
43583
+ var heap = new Uint8Array(instance.exports.memory.buffer);
43584
+ heap.set(source, sp);
43585
+ var res = fun(tp, count, size, sp, source.length);
43586
+ if (res == 0 && filter) {
43587
+ filter(tp, count4, size);
43588
+ }
43589
+ target.set(heap.subarray(tp, tp + count * size));
43590
+ sbrk(tp - sbrk(0));
43591
+ if (res != 0) {
43592
+ throw new Error("Malformed buffer data: " + res);
43593
+ }
43594
+ };
43595
+ var createWorker = function createWorker(url) {
43596
+ var worker = {
43597
+ object: new Worker(url),
43598
+ pending: 0,
43599
+ requests: {}
43600
+ };
43601
+ worker.object.onmessage = function(event) {
43602
+ var data = event.data;
43603
+ worker.pending -= data.count;
43604
+ worker.requests[data.id][data.action](data.value);
43605
+ delete worker.requests[data.id];
43606
+ };
43607
+ return worker;
43608
+ };
43609
+ var initWorkers = function initWorkers(count) {
43610
+ var source = "var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(unpack(wasm)) + "]), {})" + ".then(function(result) {instance = result.instance; instance.exports.__wasm_call_ctors();});\n" + "self.onmessage = workerProcess;\n" + 'function decode(fun, target, count, size, source, filter) {\n const sbrk = instance.exports.sbrk;\n const count4 = (count + 3) & ~3;\n const tp = sbrk(count4 * size);\n const sp = sbrk(source.length);\n const heap = new Uint8Array(instance.exports.memory.buffer);\n heap.set(source, sp);\n const res = fun(tp, count, size, sp, source.length);\n if (res == 0 && filter) {\n filter(tp, count4, size);\n }\n target.set(heap.subarray(tp, tp + count * size));\n sbrk(tp - sbrk(0));\n if (res != 0) {\n throw new Error("Malformed buffer data: " + res);\n }\n }\n' + 'function workerProcess(event) {\n ready.then(function () {\n const data = event.data;\n try {\n const target = new Uint8Array(data.count * data.size);\n decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);\n self.postMessage({ id: data.id, count: data.count, action: "resolve", value: target }, [target.buffer]);\n } catch (error) {\n self.postMessage({\n id: data.id,\n count: data.count,\n action: "reject",\n value: error\n });\n }\n });\n }';
43611
+ var blob = new Blob([
43612
+ source
43613
+ ], {
43614
+ type: "text/javascript"
43615
+ });
43616
+ var url = URL.createObjectURL(blob);
43617
+ for(var i = 0; i < count; ++i){
43618
+ workers[i] = createWorker(url);
43619
+ }
43620
+ URL.revokeObjectURL(url);
43621
+ };
43622
+ var decodeWorker = function decodeWorker(count, size, source, mode, filter) {
43623
+ var worker = workers[0];
43624
+ for(var i = 1; i < workers.length; ++i){
43625
+ if (workers[i].pending < worker.pending) {
43626
+ worker = workers[i];
43627
+ }
43628
+ }
43629
+ return new Promise(function(resolve, reject) {
43630
+ var data = new Uint8Array(source);
43631
+ var id = requestId++;
43632
+ worker.pending += count;
43633
+ worker.requests[id] = {
43634
+ resolve: resolve,
43635
+ reject: reject
43636
+ };
43637
+ worker.object.postMessage({
43638
+ id: id,
43639
+ count: count,
43640
+ size: size,
43641
+ source: data,
43642
+ mode: mode,
43643
+ filter: filter
43644
+ }, [
43645
+ data.buffer
43646
+ ]);
43647
+ });
43648
+ };
43649
+ if (ready) return ready;
43650
+ var wasm_base = "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";
43651
+ var wasm_simd = "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";
43652
+ var wasmpack = new Uint8Array([
43653
+ 32,
43654
+ 0,
43655
+ 65,
43656
+ 2,
43657
+ 1,
43658
+ 106,
43659
+ 34,
43660
+ 33,
43661
+ 3,
43662
+ 128,
43663
+ 11,
43664
+ 4,
43665
+ 13,
43666
+ 64,
43667
+ 6,
43668
+ 253,
43669
+ 10,
43670
+ 7,
43671
+ 15,
43672
+ 116,
43673
+ 127,
43674
+ 5,
43675
+ 8,
43676
+ 12,
43677
+ 40,
43678
+ 16,
43679
+ 19,
43680
+ 54,
43681
+ 20,
43682
+ 9,
43683
+ 27,
43684
+ 255,
43685
+ 113,
43686
+ 17,
43687
+ 42,
43688
+ 67,
43689
+ 24,
43690
+ 23,
43691
+ 146,
43692
+ 148,
43693
+ 18,
43694
+ 14,
43695
+ 22,
43696
+ 45,
43697
+ 70,
43698
+ 69,
43699
+ 56,
43700
+ 114,
43701
+ 101,
43702
+ 21,
43703
+ 25,
43704
+ 63,
43705
+ 75,
43706
+ 136,
43707
+ 108,
43708
+ 28,
43709
+ 118,
43710
+ 29,
43711
+ 73,
43712
+ 115
43713
+ ]);
43714
+ // @ts-ignore
43715
+ var wasm = SystemInfo._detectSIMDSupported() ? wasm_simd : wasm_base;
43716
+ var instance;
43717
+ ready = WebAssembly.instantiate(unpack(wasm)).then(function(result) {
43718
+ instance = result.instance;
43719
+ instance.exports.__wasm_call_ctors();
43720
+ }).then(function() {
43721
+ return {
43722
+ workerCount: 4,
43723
+ ready: ready,
43724
+ useWorkers: function useWorkers(workerCount) {
43725
+ this.workerCount = workerCount != null ? workerCount : this.workerCount;
43726
+ initWorkers(this.workerCount);
43727
+ },
43728
+ decodeGltfBuffer: function decodeGltfBuffer(count, stride, source, mode, filter) {
43729
+ if (this.workerCount > 0 && workers.length === 0) this.useWorkers();
43730
+ if (workers.length > 0) return decodeWorker(count, stride, source, decoders[mode], filters[filter]);
43731
+ return ready.then(function() {
43732
+ var target = new Uint8Array(count * stride);
43733
+ decode(instance.exports[decoders[mode]], target, count, stride, source, instance.exports[filters[filter]]);
43734
+ return target;
43735
+ });
43736
+ },
43737
+ release: function release() {
43738
+ for(var i = 0; i < workers.length; i++){
43739
+ workers[i].object.terminate();
43740
+ }
43741
+ }
43742
+ };
43743
+ });
43744
+ var filters = {
43745
+ NONE: "",
43746
+ OCTAHEDRAL: "meshopt_decodeFilterOct",
43747
+ QUATERNION: "meshopt_decodeFilterQuat",
43748
+ EXPONENTIAL: "meshopt_decodeFilterExp"
43749
+ };
43750
+ var decoders = {
43751
+ ATTRIBUTES: "meshopt_decodeVertexBuffer",
43752
+ TRIANGLES: "meshopt_decodeIndexBuffer",
43753
+ INDICES: "meshopt_decodeIndexSequence"
43754
+ };
43755
+ var workers = [];
43756
+ var requestId = 0;
43757
+ return ready;
43758
+ }
43514
43759
  /**
43515
43760
  * The glTF resource.
43516
43761
  */ var GLTFResource = /*#__PURE__*/ function(ReferResource1) {
@@ -43537,14 +43782,15 @@
43537
43782
  materials && this._disassociationSuperResource(materials);
43538
43783
  if (meshes) {
43539
43784
  for(var i = 0, n = meshes.length; i < n; i++){
43540
- this._disassociationSuperResource(meshes[i]);
43785
+ var meshArr = meshes[i];
43786
+ meshArr && this._disassociationSuperResource(meshArr);
43541
43787
  }
43542
43788
  }
43543
43789
  };
43544
43790
  _proto._disassociationSuperResource = function _disassociationSuperResource(resources) {
43545
43791
  for(var i = 0, n = resources.length; i < n; i++){
43546
- // @ts-ignore
43547
- resources[i]._disassociationSuperResource(this);
43792
+ var _resources_i;
43793
+ (_resources_i = resources[i]) == null ? void 0 : _resources_i._disassociationSuperResource(this);
43548
43794
  }
43549
43795
  };
43550
43796
  _create_class(GLTFResource, [
@@ -43733,6 +43979,7 @@
43733
43979
  this.params = params;
43734
43980
  this.accessorBufferCache = {};
43735
43981
  this.needAnimatorController = false;
43982
+ this./** @internal */ _getPromises = [];
43736
43983
  this._resourceCache = new Map();
43737
43984
  this._progress = {
43738
43985
  taskDetail: {},
@@ -43757,7 +44004,7 @@
43757
44004
  var _this = this;
43758
44005
  var parser = GLTFParserContext._parsers[type];
43759
44006
  if (!parser) {
43760
- return Promise.resolve(null);
44007
+ return AssetPromise.resolve(null);
43761
44008
  }
43762
44009
  var cache = this._resourceCache;
43763
44010
  var cacheKey = index === undefined ? "" + type : type + ":" + index;
@@ -43773,7 +44020,7 @@
43773
44020
  if (index === undefined) {
43774
44021
  resource = type === 8 ? glTFItems.map(function(_, index) {
43775
44022
  return _this.get(type, index);
43776
- }) : Promise.all(glTFItems.map(function(_, index) {
44023
+ }) : AssetPromise.all(glTFItems.map(function(_, index) {
43777
44024
  return _this.get(type, index);
43778
44025
  }));
43779
44026
  } else {
@@ -43781,12 +44028,15 @@
43781
44028
  isSubAsset && this._handleSubAsset(resource, type, index);
43782
44029
  }
43783
44030
  } else {
43784
- resource = Promise.resolve(null);
44031
+ resource = AssetPromise.resolve(null);
43785
44032
  }
43786
44033
  } else {
43787
44034
  resource = parser.parse(this, index);
43788
44035
  isSubAsset && this._handleSubAsset(resource, type, index);
43789
44036
  }
44037
+ if (_instanceof1(resource, AssetPromise)) {
44038
+ this._getPromises.push(resource);
44039
+ }
43790
44040
  cache.set(cacheKey, resource);
43791
44041
  return resource;
43792
44042
  };
@@ -43795,7 +44045,7 @@
43795
44045
  var promise = this.get(0).then(function(json) {
43796
44046
  _this.glTF = json;
43797
44047
  _this.needAnimatorController = !!(json.skins || json.animations);
43798
- return Promise.all([
44048
+ return AssetPromise.all([
43799
44049
  _this.get(1),
43800
44050
  _this.get(5),
43801
44051
  _this.get(6),
@@ -43826,6 +44076,8 @@
43826
44076
  task.total += 1;
43827
44077
  taskPromise.then(function() {
43828
44078
  _this._setTaskCompleteProgress(++task.loaded, task.total);
44079
+ }, function(e) {
44080
+ Logger.error("Failed to complete task", e);
43829
44081
  });
43830
44082
  };
43831
44083
  _proto._handleSubAsset = function _handleSubAsset(resource, type, index) {
@@ -43858,6 +44110,8 @@
43858
44110
  _this.resourceManager._onSubAssetSuccess(url, "defaultSceneRoot", item);
43859
44111
  }
43860
44112
  }
44113
+ }).catch(function(e) {
44114
+ Logger.error("GLTFParserContext", "Failed to load " + glTFResourceKey + " " + index + ": " + e);
43861
44115
  });
43862
44116
  }
43863
44117
  };
@@ -44037,13 +44291,15 @@
44037
44291
  bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(bufferIndex, TypedArray, offset1, count1));
44038
44292
  }
44039
44293
  return bufferInfo;
44294
+ }).catch(function(e) {
44295
+ Logger.error("GLTFUtil getAccessorBuffer error", e);
44040
44296
  });
44041
44297
  } else {
44042
44298
  var count = accessorCount * dataElementSize;
44043
44299
  var data = new TypedArray(count);
44044
44300
  var bufferInfo = new BufferInfo(data, false, elementStride);
44045
44301
  bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(undefined, TypedArray, undefined, count));
44046
- promise = Promise.resolve(bufferInfo);
44302
+ promise = AssetPromise.resolve(bufferInfo);
44047
44303
  }
44048
44304
  return accessor.sparse ? promise.then(function(bufferInfo) {
44049
44305
  return GLTFUtils.processingSparseData(context, accessor, bufferInfo).then(function() {
@@ -44078,7 +44334,7 @@
44078
44334
  var _accessor_sparse = accessor.sparse, count = _accessor_sparse.count, indices = _accessor_sparse.indices, values = _accessor_sparse.values;
44079
44335
  var indicesBufferView = bufferViews[indices.bufferView];
44080
44336
  var valuesBufferView = bufferViews[values.bufferView];
44081
- return Promise.all([
44337
+ return AssetPromise.all([
44082
44338
  context.get(exports.GLTFParserType.BufferView, indices.bufferView),
44083
44339
  context.get(exports.GLTFParserType.BufferView, values.bufferView)
44084
44340
  ]).then(function(param) {
@@ -44105,6 +44361,8 @@
44105
44361
  }
44106
44362
  }
44107
44363
  bufferInfo.data = data;
44364
+ }).catch(function(e) {
44365
+ Logger.error("GLTFUtil processingSparseData error", e);
44108
44366
  });
44109
44367
  };
44110
44368
  GLTFUtils.getIndexFormat = function getIndexFormat(type) {
@@ -45609,11 +45867,10 @@
45609
45867
  for(var _len = arguments.length, extra = new Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++){
45610
45868
  extra[_key - 5] = arguments[_key];
45611
45869
  }
45870
+ var _parser;
45871
+ var _parser1;
45612
45872
  var parser = GLTFParser.getExtensionParser(extensionName, exports.GLTFExtensionMode.AdditiveParse);
45613
- if (parser) {
45614
- var _parser;
45615
- (_parser = parser).additiveParse.apply(_parser, [].concat(context, parseResource, extensionSchema, ownerSchema, extra));
45616
- }
45873
+ (_parser1 = parser) == null ? void 0 : (_parser = _parser1).additiveParse.apply(_parser, [].concat(context, parseResource, extensionSchema, ownerSchema, extra));
45617
45874
  };
45618
45875
  return GLTFParser;
45619
45876
  }();
@@ -45681,7 +45938,7 @@
45681
45938
  var animationInfo = context.glTF.animations[index];
45682
45939
  var _animationInfo_name = animationInfo.name, name = _animationInfo_name === void 0 ? "AnimationClip" + index : _animationInfo_name;
45683
45940
  var animationClipPromise = GLTFParser.executeExtensionsCreateAndParse(animationInfo.extensions, context, animationInfo) || exports.GLTFAnimationParser._parseStandardProperty(context, new AnimationClip(name), animationInfo);
45684
- return Promise.resolve(animationClipPromise).then(function(animationClip) {
45941
+ return AssetPromise.resolve(animationClipPromise).then(function(animationClip) {
45685
45942
  GLTFParser.executeExtensionsAdditiveAndParse(animationInfo.extensions, context, animationClip, animationInfo);
45686
45943
  return animationClip;
45687
45944
  });
@@ -45693,7 +45950,7 @@
45693
45950
  var glTFSampler = samplers[j];
45694
45951
  var inputAccessor = accessors[glTFSampler.input];
45695
45952
  var outputAccessor = accessors[glTFSampler.output];
45696
- var promise = Promise.all([
45953
+ var promise = AssetPromise.all([
45697
45954
  GLTFUtils.getAccessorBuffer(context, bufferViews, inputAccessor),
45698
45955
  GLTFUtils.getAccessorBuffer(context, bufferViews, outputAccessor)
45699
45956
  ]).then(function(bufferInfos) {
@@ -45744,7 +46001,7 @@
45744
46001
  // parse samplers
45745
46002
  for(var j = 0, m = len; j < m; j++)_loop(j);
45746
46003
  promises.push(context.get(exports.GLTFParserType.Scene));
45747
- return Promise.all(promises).then(function() {
46004
+ return AssetPromise.all(promises).then(function() {
45748
46005
  for(var j = 0, m = channels.length; j < m; j++){
45749
46006
  var glTFChannel = channels[j];
45750
46007
  var target = glTFChannel.target;
@@ -45873,7 +46130,7 @@
45873
46130
  var _proto = GLTFBufferParser.prototype;
45874
46131
  _proto.parse = function parse(context, index) {
45875
46132
  var buffers = context.glTF.buffers;
45876
- return context.buffers ? Promise.resolve(context.buffers[index]) : this._parseSingleBuffer(context, buffers[index]);
46133
+ return context.buffers ? AssetPromise.resolve(context.buffers[index]) : this._parseSingleBuffer(context, buffers[index]);
45877
46134
  };
45878
46135
  _proto._parseSingleBuffer = function _parseSingleBuffer(context, bufferInfo) {
45879
46136
  var glTFResource = context.glTFResource, contentRestorer = context.contentRestorer, resourceManager = context.resourceManager;
@@ -45958,18 +46215,15 @@
45958
46215
  material.name = materialInfo.name;
45959
46216
  exports.GLTFMaterialParser._parseStandardProperty(context, material, materialInfo);
45960
46217
  }
45961
- return Promise.resolve(material).then(function(material) {
45962
- material || (material = exports.GLTFMaterialParser._getDefaultMaterial(engine));
46218
+ return AssetPromise.resolve(material).then(function(material) {
46219
+ // @ts-ignore
46220
+ material || (material = engine._basicResources._getBlinnPhongMaterial());
45963
46221
  GLTFParser.executeExtensionsAdditiveAndParse(materialInfo.extensions, context, material, materialInfo);
45964
46222
  // @ts-ignore
45965
46223
  material._associationSuperResource(glTFResource);
45966
46224
  return material;
45967
46225
  });
45968
46226
  };
45969
- /** @internal */ GLTFMaterialParser1._getDefaultMaterial = function _getDefaultMaterial(engine) {
45970
- var _GLTFMaterialParser;
45971
- return (_GLTFMaterialParser = exports.GLTFMaterialParser)._defaultMaterial || (_GLTFMaterialParser._defaultMaterial = new BlinnPhongMaterial(engine));
45972
- };
45973
46227
  /**
45974
46228
  * @internal
45975
46229
  */ GLTFMaterialParser1._checkOtherTextureTransform = function _checkOtherTextureTransform(texture, textureName) {
@@ -45991,6 +46245,8 @@
45991
46245
  context.get(exports.GLTFParserType.Texture, baseColorTexture.index).then(function(texture) {
45992
46246
  material.baseTexture = texture;
45993
46247
  GLTFParser.executeExtensionsAdditiveAndParse(baseColorTexture.extensions, context, material, baseColorTexture);
46248
+ }).catch(function(e) {
46249
+ Logger.error("GLTFMaterialParser: baseColorTexture error", e);
45994
46250
  });
45995
46251
  }
45996
46252
  if (material.constructor === PBRMaterial) {
@@ -46000,6 +46256,8 @@
46000
46256
  exports.GLTFMaterialParser._checkOtherTextureTransform(metallicRoughnessTexture, "Roughness metallic");
46001
46257
  context.get(exports.GLTFParserType.Texture, metallicRoughnessTexture.index).then(function(texture) {
46002
46258
  material.roughnessMetallicTexture = texture;
46259
+ }).catch(function(e) {
46260
+ Logger.error("GLTFMaterialParser: metallicRoughnessTexture error", e);
46003
46261
  });
46004
46262
  }
46005
46263
  }
@@ -46009,6 +46267,8 @@
46009
46267
  exports.GLTFMaterialParser._checkOtherTextureTransform(emissiveTexture, "Emissive");
46010
46268
  context.get(exports.GLTFParserType.Texture, emissiveTexture.index).then(function(texture) {
46011
46269
  material.emissiveTexture = texture;
46270
+ }).catch(function(e) {
46271
+ Logger.error("GLTFMaterialParser: emissiveTexture error", e);
46012
46272
  });
46013
46273
  }
46014
46274
  if (emissiveFactor) {
@@ -46019,6 +46279,8 @@
46019
46279
  exports.GLTFMaterialParser._checkOtherTextureTransform(normalTexture, "Normal");
46020
46280
  context.get(exports.GLTFParserType.Texture, index).then(function(texture) {
46021
46281
  material.normalTexture = texture;
46282
+ }).catch(function(e) {
46283
+ Logger.error("GLTFMaterialParser: emissiveTexture error", e);
46022
46284
  });
46023
46285
  if (scale !== undefined) {
46024
46286
  material.normalTextureIntensity = scale;
@@ -46029,6 +46291,8 @@
46029
46291
  exports.GLTFMaterialParser._checkOtherTextureTransform(occlusionTexture, "Occlusion");
46030
46292
  context.get(exports.GLTFParserType.Texture, index1).then(function(texture) {
46031
46293
  material.occlusionTexture = texture;
46294
+ }).catch(function(e) {
46295
+ Logger.error("GLTFMaterialParser: occlusionTexture error", e);
46032
46296
  });
46033
46297
  if (strength !== undefined) {
46034
46298
  material.occlusionTextureIntensity = strength;
@@ -46072,7 +46336,7 @@
46072
46336
  _proto.parse = function parse(context, index) {
46073
46337
  var _loop = function _loop(i, length) {
46074
46338
  var gltfPrimitive = meshInfo.primitives[i];
46075
- primitivePromises[i] = new Promise(function(resolve) {
46339
+ primitivePromises[i] = new AssetPromise(function(resolve, reject) {
46076
46340
  var mesh = GLTFParser.executeExtensionsCreateAndParse(gltfPrimitive.extensions, context, gltfPrimitive, meshInfo);
46077
46341
  if (mesh) {
46078
46342
  if (_instanceof1(mesh, ModelMesh)) {
@@ -46093,7 +46357,7 @@
46093
46357
  var meshRestoreInfo = new ModelMeshRestoreInfo();
46094
46358
  meshRestoreInfo.mesh = mesh1;
46095
46359
  context.contentRestorer.meshes.push(meshRestoreInfo);
46096
- exports.GLTFMeshParser._parseMeshFromGLTFPrimitive(context, mesh1, meshRestoreInfo, meshInfo, gltfPrimitive, glTF, context.params.keepMeshData).then(resolve);
46360
+ exports.GLTFMeshParser._parseMeshFromGLTFPrimitive(context, mesh1, meshRestoreInfo, meshInfo, gltfPrimitive, glTF, context.params.keepMeshData).then(resolve, reject);
46097
46361
  }
46098
46362
  });
46099
46363
  };
@@ -46102,7 +46366,7 @@
46102
46366
  var engine = glTFResource.engine;
46103
46367
  var primitivePromises = new Array();
46104
46368
  for(var i = 0, length = meshInfo.primitives.length; i < length; i++)_loop(i);
46105
- return Promise.all(primitivePromises);
46369
+ return AssetPromise.all(primitivePromises);
46106
46370
  };
46107
46371
  /**
46108
46372
  * @internal
@@ -46185,7 +46449,7 @@
46185
46449
  var bufferBindIndex = 0;
46186
46450
  var promises = new Array();
46187
46451
  for(var attribute in attributes)_loop(attribute);
46188
- return Promise.all(promises).then(function() {
46452
+ return AssetPromise.all(promises).then(function() {
46189
46453
  mesh.setVertexElements(vertexElements);
46190
46454
  // Indices
46191
46455
  if (indices !== undefined) {
@@ -46235,7 +46499,7 @@
46235
46499
  var tangentTarget = targets["TANGENT"];
46236
46500
  var hasNormal = normalTarget !== undefined;
46237
46501
  var hasTangent = tangentTarget !== undefined;
46238
- var promise = Promise.all([
46502
+ var promise = AssetPromise.all([
46239
46503
  _this._getBlendShapeData(context, glTF, accessors[targets["POSITION"]]),
46240
46504
  hasNormal ? _this._getBlendShapeData(context, glTF, accessors[normalTarget]) : null,
46241
46505
  hasTangent ? _this._getBlendShapeData(context, glTF, accessors[tangentTarget]) : null
@@ -46256,7 +46520,7 @@
46256
46520
  var blendShapeCount = glTFTargets.length;
46257
46521
  var blendShapeCollection = new Array(blendShapeCount);
46258
46522
  for(var i = 0; i < blendShapeCount; i++)_loop(i);
46259
- return Promise.all(promises).then(function() {
46523
+ return AssetPromise.all(promises).then(function() {
46260
46524
  for(var _iterator = _create_for_of_iterator_helper_loose(blendShapeCollection), _step; !(_step = _iterator()).done;){
46261
46525
  var blendShape = _step.value;
46262
46526
  mesh.addBlendShape(blendShape.blendShape);
@@ -46303,7 +46567,7 @@
46303
46567
  for(var i1 = 0; i1 < sceneNodes.length; i1++){
46304
46568
  promises.push(this._parseEntityComponent(context, sceneNodes[i1]));
46305
46569
  }
46306
- return Promise.all(promises).then(function() {
46570
+ return AssetPromise.all(promises).then(function() {
46307
46571
  GLTFParser.executeExtensionsAdditiveAndParse(sceneExtensions, context, sceneRoot, sceneInfo);
46308
46572
  return sceneRoot;
46309
46573
  });
@@ -46321,7 +46585,7 @@
46321
46585
  if (meshID !== undefined) {
46322
46586
  promise = this._createRenderer(context, entityInfo, entity);
46323
46587
  }
46324
- return Promise.resolve(promise).then(function() {
46588
+ return AssetPromise.resolve(promise).then(function() {
46325
46589
  var promises = [];
46326
46590
  var children = entityInfo.children;
46327
46591
  if (children) {
@@ -46329,7 +46593,7 @@
46329
46593
  promises.push(_this._parseEntityComponent(context, children[i]));
46330
46594
  }
46331
46595
  }
46332
- return Promise.all(promises);
46596
+ return AssetPromise.all(promises);
46333
46597
  });
46334
46598
  };
46335
46599
  _proto._createCamera = function _createCamera(resource, cameraSchema, entity) {
@@ -46378,13 +46642,14 @@
46378
46642
  var _glTFMeshPrimitives_i_material;
46379
46643
  materialPromises[i] = context.get(exports.GLTFParserType.Material, (_glTFMeshPrimitives_i_material = glTFMeshPrimitives[i].material) != null ? _glTFMeshPrimitives_i_material : -1);
46380
46644
  }
46381
- return Promise.all([
46645
+ return AssetPromise.all([
46382
46646
  context.get(exports.GLTFParserType.Mesh, meshID),
46383
46647
  skinID !== undefined && context.get(exports.GLTFParserType.Skin, skinID),
46384
- Promise.all(materialPromises)
46648
+ AssetPromise.all(materialPromises)
46385
46649
  ]).then(function(param) {
46386
46650
  var _loop = function _loop(i) {
46387
- var material = materials[i] || exports.GLTFMaterialParser._getDefaultMaterial(context.glTFResource.engine);
46651
+ // @ts-ignore
46652
+ var material = materials[i] || context.glTFResource.engine._basicResources._getBlinnPhongMaterial();
46388
46653
  var glTFPrimitive = glTFMeshPrimitives[i];
46389
46654
  var mesh = meshes[i];
46390
46655
  var renderer = void 0;
@@ -46414,6 +46679,8 @@
46414
46679
  };
46415
46680
  var meshes = param[0], skin = param[1], materials = param[2];
46416
46681
  for(var i = 0; i < rendererCount; i++)_loop(i);
46682
+ }).catch(function(e) {
46683
+ Logger.error("GLTFSceneParser: create renderer error", e);
46417
46684
  });
46418
46685
  };
46419
46686
  _proto._computeLocalBounds = function _computeLocalBounds(skinnedMeshRenderer, mesh, bones, rootBone, inverseBindMatrices) {
@@ -46497,7 +46764,7 @@
46497
46764
  }
46498
46765
  return skin;
46499
46766
  });
46500
- return Promise.resolve(skinPromise);
46767
+ return AssetPromise.resolve(skinPromise);
46501
46768
  };
46502
46769
  _proto._findSkeletonRootBone = function _findSkeletonRootBone(joints, entities) {
46503
46770
  var paths = {};
@@ -46547,7 +46814,7 @@
46547
46814
  if (!texture) {
46548
46815
  texture = exports.GLTFTextureParser._parseTexture(context, imageIndex, textureIndex, sampler, textureName);
46549
46816
  }
46550
- return Promise.resolve(texture).then(function(texture) {
46817
+ return AssetPromise.resolve(texture).then(function(texture) {
46551
46818
  GLTFParser.executeExtensionsAdditiveAndParse(extensions, context, texture, textureInfo);
46552
46819
  // @ts-ignore
46553
46820
  texture._associationSuperResource(glTFResource);
@@ -46594,6 +46861,8 @@
46594
46861
  context.contentRestorer.bufferTextures.push(bufferTextureRestoreInfo);
46595
46862
  return texture;
46596
46863
  });
46864
+ }).catch(function(e) {
46865
+ Logger.error("GLTFTextureParser: image buffer error", e);
46597
46866
  });
46598
46867
  }
46599
46868
  return texture;
@@ -46636,7 +46905,7 @@
46636
46905
  }
46637
46906
  }
46638
46907
  }
46639
- return Promise.resolve(null);
46908
+ return AssetPromise.resolve(null);
46640
46909
  };
46641
46910
  return GLTFValidator;
46642
46911
  }(GLTFParser);
@@ -46654,6 +46923,8 @@
46654
46923
  var extensions = bufferView.extensions, _bufferView_byteOffset = bufferView.byteOffset, byteOffset = _bufferView_byteOffset === void 0 ? 0 : _bufferView_byteOffset, byteLength = bufferView.byteLength, bufferIndex = bufferView.buffer;
46655
46924
  return extensions ? GLTFParser.executeExtensionsCreateAndParse(extensions, context, bufferView) : context.get(exports.GLTFParserType.Buffer, bufferIndex).then(function(buffer) {
46656
46925
  return new Uint8Array(buffer, byteOffset, byteLength);
46926
+ }).catch(function(e) {
46927
+ Logger.error("GLTFBufferViewParser: buffer error", e);
46657
46928
  });
46658
46929
  };
46659
46930
  return GLTFBufferViewParser;
@@ -46670,11 +46941,13 @@
46670
46941
  _proto.parse = function parse(context) {
46671
46942
  var _this = this;
46672
46943
  if (!context.needAnimatorController) {
46673
- return Promise.resolve(null);
46944
+ return AssetPromise.resolve(null);
46674
46945
  }
46675
46946
  return context.get(exports.GLTFParserType.Animation).then(function(animations) {
46676
46947
  var animatorController = _this._createAnimatorController(context, animations);
46677
- return Promise.resolve(animatorController);
46948
+ return AssetPromise.resolve(animatorController);
46949
+ }).catch(function(e) {
46950
+ Logger.error("GLTFAnimatorControllerParser: animator controller error", e);
46678
46951
  });
46679
46952
  };
46680
46953
  _proto._createAnimatorController = function _createAnimatorController(context, animations) {
@@ -46704,202 +46977,6 @@
46704
46977
  exports.GLTFAnimatorControllerParser = __decorate([
46705
46978
  registerGLTFParser(exports.GLTFParserType.AnimatorController)
46706
46979
  ], exports.GLTFAnimatorControllerParser);
46707
- // Source: https://github.com/zeux/meshoptimizer/blob/master/js/meshopt_decoder.js
46708
- var ready;
46709
- function getMeshoptDecoder() {
46710
- var unpack = function unpack(data) {
46711
- var result = new Uint8Array(data.length);
46712
- for(var i = 0; i < data.length; ++i){
46713
- var ch = data.charCodeAt(i);
46714
- result[i] = ch > 96 ? ch - 97 : ch > 64 ? ch - 39 : ch + 4;
46715
- }
46716
- var write = 0;
46717
- for(var i1 = 0; i1 < data.length; ++i1){
46718
- result[write++] = result[i1] < 60 ? wasmpack[result[i1]] : (result[i1] - 60) * 64 + result[++i1];
46719
- }
46720
- return result.buffer.slice(0, write);
46721
- };
46722
- var decode = function decode(fun, target, count, size, source, filter) {
46723
- var sbrk = instance.exports.sbrk;
46724
- var count4 = count + 3 & ~3;
46725
- var tp = sbrk(count4 * size);
46726
- var sp = sbrk(source.length);
46727
- var heap = new Uint8Array(instance.exports.memory.buffer);
46728
- heap.set(source, sp);
46729
- var res = fun(tp, count, size, sp, source.length);
46730
- if (res == 0 && filter) {
46731
- filter(tp, count4, size);
46732
- }
46733
- target.set(heap.subarray(tp, tp + count * size));
46734
- sbrk(tp - sbrk(0));
46735
- if (res != 0) {
46736
- throw new Error("Malformed buffer data: " + res);
46737
- }
46738
- };
46739
- var createWorker = function createWorker(url) {
46740
- var worker = {
46741
- object: new Worker(url),
46742
- pending: 0,
46743
- requests: {}
46744
- };
46745
- worker.object.onmessage = function(event) {
46746
- var data = event.data;
46747
- worker.pending -= data.count;
46748
- worker.requests[data.id][data.action](data.value);
46749
- delete worker.requests[data.id];
46750
- };
46751
- return worker;
46752
- };
46753
- var initWorkers = function initWorkers(count) {
46754
- var source = "var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(unpack(wasm)) + "]), {})" + ".then(function(result) {instance = result.instance; instance.exports.__wasm_call_ctors();});\n" + "self.onmessage = workerProcess;\n" + 'function decode(fun, target, count, size, source, filter) {\n const sbrk = instance.exports.sbrk;\n const count4 = (count + 3) & ~3;\n const tp = sbrk(count4 * size);\n const sp = sbrk(source.length);\n const heap = new Uint8Array(instance.exports.memory.buffer);\n heap.set(source, sp);\n const res = fun(tp, count, size, sp, source.length);\n if (res == 0 && filter) {\n filter(tp, count4, size);\n }\n target.set(heap.subarray(tp, tp + count * size));\n sbrk(tp - sbrk(0));\n if (res != 0) {\n throw new Error("Malformed buffer data: " + res);\n }\n }\n' + 'function workerProcess(event) {\n ready.then(function () {\n const data = event.data;\n try {\n const target = new Uint8Array(data.count * data.size);\n decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);\n self.postMessage({ id: data.id, count: data.count, action: "resolve", value: target }, [target.buffer]);\n } catch (error) {\n self.postMessage({\n id: data.id,\n count: data.count,\n action: "reject",\n value: error\n });\n }\n });\n }';
46755
- var blob = new Blob([
46756
- source
46757
- ], {
46758
- type: "text/javascript"
46759
- });
46760
- var url = URL.createObjectURL(blob);
46761
- for(var i = 0; i < count; ++i){
46762
- workers[i] = createWorker(url);
46763
- }
46764
- URL.revokeObjectURL(url);
46765
- };
46766
- var decodeWorker = function decodeWorker(count, size, source, mode, filter) {
46767
- var worker = workers[0];
46768
- for(var i = 1; i < workers.length; ++i){
46769
- if (workers[i].pending < worker.pending) {
46770
- worker = workers[i];
46771
- }
46772
- }
46773
- return new Promise(function(resolve, reject) {
46774
- var data = new Uint8Array(source);
46775
- var id = requestId++;
46776
- worker.pending += count;
46777
- worker.requests[id] = {
46778
- resolve: resolve,
46779
- reject: reject
46780
- };
46781
- worker.object.postMessage({
46782
- id: id,
46783
- count: count,
46784
- size: size,
46785
- source: data,
46786
- mode: mode,
46787
- filter: filter
46788
- }, [
46789
- data.buffer
46790
- ]);
46791
- });
46792
- };
46793
- if (ready) return ready;
46794
- var wasm_base = "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";
46795
- var wasm_simd = "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";
46796
- var wasmpack = new Uint8Array([
46797
- 32,
46798
- 0,
46799
- 65,
46800
- 2,
46801
- 1,
46802
- 106,
46803
- 34,
46804
- 33,
46805
- 3,
46806
- 128,
46807
- 11,
46808
- 4,
46809
- 13,
46810
- 64,
46811
- 6,
46812
- 253,
46813
- 10,
46814
- 7,
46815
- 15,
46816
- 116,
46817
- 127,
46818
- 5,
46819
- 8,
46820
- 12,
46821
- 40,
46822
- 16,
46823
- 19,
46824
- 54,
46825
- 20,
46826
- 9,
46827
- 27,
46828
- 255,
46829
- 113,
46830
- 17,
46831
- 42,
46832
- 67,
46833
- 24,
46834
- 23,
46835
- 146,
46836
- 148,
46837
- 18,
46838
- 14,
46839
- 22,
46840
- 45,
46841
- 70,
46842
- 69,
46843
- 56,
46844
- 114,
46845
- 101,
46846
- 21,
46847
- 25,
46848
- 63,
46849
- 75,
46850
- 136,
46851
- 108,
46852
- 28,
46853
- 118,
46854
- 29,
46855
- 73,
46856
- 115
46857
- ]);
46858
- // @ts-ignore
46859
- var wasm = SystemInfo._detectSIMDSupported() ? wasm_simd : wasm_base;
46860
- var instance;
46861
- ready = WebAssembly.instantiate(unpack(wasm)).then(function(result) {
46862
- instance = result.instance;
46863
- instance.exports.__wasm_call_ctors();
46864
- }).then(function() {
46865
- return {
46866
- workerCount: 4,
46867
- ready: ready,
46868
- useWorkers: function useWorkers(workerCount) {
46869
- this.workerCount = workerCount != null ? workerCount : this.workerCount;
46870
- initWorkers(this.workerCount);
46871
- },
46872
- decodeGltfBuffer: function decodeGltfBuffer(count, stride, source, mode, filter) {
46873
- if (this.workerCount > 0 && workers.length === 0) this.useWorkers();
46874
- if (workers.length > 0) return decodeWorker(count, stride, source, decoders[mode], filters[filter]);
46875
- return ready.then(function() {
46876
- var target = new Uint8Array(count * stride);
46877
- decode(instance.exports[decoders[mode]], target, count, stride, source, instance.exports[filters[filter]]);
46878
- return target;
46879
- });
46880
- },
46881
- release: function release() {
46882
- for(var i = 0; i < workers.length; i++){
46883
- workers[i].object.terminate();
46884
- }
46885
- }
46886
- };
46887
- });
46888
- var filters = {
46889
- NONE: "",
46890
- OCTAHEDRAL: "meshopt_decodeFilterOct",
46891
- QUATERNION: "meshopt_decodeFilterQuat",
46892
- EXPONENTIAL: "meshopt_decodeFilterExp"
46893
- };
46894
- var decoders = {
46895
- ATTRIBUTES: "meshopt_decodeVertexBuffer",
46896
- TRIANGLES: "meshopt_decodeIndexBuffer",
46897
- INDICES: "meshopt_decodeIndexSequence"
46898
- };
46899
- var workers = [];
46900
- var requestId = 0;
46901
- return ready;
46902
- }
46903
46980
  exports.GLTFLoader = /*#__PURE__*/ function(Loader1) {
46904
46981
  var GLTFLoader = function GLTFLoader() {
46905
46982
  return Loader1.apply(this, arguments);
@@ -46923,10 +47000,19 @@
46923
47000
  var context = new GLTFParserContext(glTFResource, resourceManager, _extends({
46924
47001
  keepMeshData: false
46925
47002
  }, params));
46926
- return new AssetPromise(function(resolve, reject, setTaskCompleteProgress, setTaskDetailProgress) {
47003
+ return new AssetPromise(function(resolve, reject, setTaskCompleteProgress, setTaskDetailProgress, onTaskCancel) {
46927
47004
  context._setTaskCompleteProgress = setTaskCompleteProgress;
46928
47005
  context._setTaskDetailProgress = setTaskDetailProgress;
46929
- context.parse().then(resolve).catch(reject);
47006
+ onTaskCancel(function() {
47007
+ var getPromises = context._getPromises;
47008
+ for(var i = 0, n = getPromises.length; i < n; i++){
47009
+ getPromises[i].cancel();
47010
+ }
47011
+ });
47012
+ context.parse().then(resolve).catch(function(e) {
47013
+ glTFResource.destroy();
47014
+ reject(e);
47015
+ });
46930
47016
  });
46931
47017
  };
46932
47018
  /**
@@ -48446,18 +48532,24 @@
48446
48532
  exports.GLTFMaterialParser._checkOtherTextureTransform(clearcoatTexture, "Clear coat");
48447
48533
  context.get(exports.GLTFParserType.Texture, clearcoatTexture.index).then(function(texture) {
48448
48534
  material.clearCoatTexture = texture;
48535
+ }).catch(function(e) {
48536
+ Logger.error("KHR_materials_clearcoat: clearcoat texture error", e);
48449
48537
  });
48450
48538
  }
48451
48539
  if (clearcoatRoughnessTexture) {
48452
48540
  exports.GLTFMaterialParser._checkOtherTextureTransform(clearcoatRoughnessTexture, "Clear coat roughness");
48453
48541
  context.get(exports.GLTFParserType.Texture, clearcoatRoughnessTexture.index).then(function(texture) {
48454
48542
  material.clearCoatRoughnessTexture = texture;
48543
+ }).catch(function(e) {
48544
+ Logger.error("KHR_materials_clearcoat: clearcoat roughness texture error", e);
48455
48545
  });
48456
48546
  }
48457
48547
  if (clearcoatNormalTexture) {
48458
48548
  exports.GLTFMaterialParser._checkOtherTextureTransform(clearcoatNormalTexture, "Clear coat normal");
48459
48549
  context.get(exports.GLTFParserType.Texture, clearcoatNormalTexture.index).then(function(texture) {
48460
48550
  material.clearCoatNormalTexture = texture;
48551
+ }).catch(function(e) {
48552
+ Logger.error("KHR_materials_clearcoat: clearcoat normal texture error", e);
48461
48553
  });
48462
48554
  }
48463
48555
  };
@@ -48498,6 +48590,8 @@
48498
48590
  context.get(exports.GLTFParserType.Texture, diffuseTexture.index).then(function(texture) {
48499
48591
  material.baseTexture = texture;
48500
48592
  GLTFParser.executeExtensionsAdditiveAndParse(diffuseTexture.extensions, context, material, diffuseTexture);
48593
+ }).catch(function(e) {
48594
+ Logger.error("KHR_materials_pbrSpecularGlossiness: diffuse texture error", e);
48501
48595
  });
48502
48596
  }
48503
48597
  if (specularFactor) {
@@ -48510,6 +48604,8 @@
48510
48604
  exports.GLTFMaterialParser._checkOtherTextureTransform(specularGlossinessTexture, "Specular glossiness");
48511
48605
  context.get(exports.GLTFParserType.Texture, specularGlossinessTexture.index).then(function(texture) {
48512
48606
  material.specularGlossinessTexture = texture;
48607
+ }).catch(function(e) {
48608
+ Logger.error("KHR_materials_pbrSpecularGlossiness: specular glossiness texture error", e);
48513
48609
  });
48514
48610
  }
48515
48611
  material.name = ownerSchema.name;
@@ -48556,6 +48652,8 @@
48556
48652
  return variantNames[index].name;
48557
48653
  })
48558
48654
  });
48655
+ }).catch(function(e) {
48656
+ Logger.error("KHR_materials_variants: material error", e);
48559
48657
  });
48560
48658
  };
48561
48659
  var _glTFResource;
@@ -48588,57 +48686,49 @@
48588
48686
  _inherits(KHR_texture_basisu, GLTFExtensionParser1);
48589
48687
  var _proto = KHR_texture_basisu.prototype;
48590
48688
  _proto.createAndParse = function createAndParse(context, schema, textureInfo) {
48591
- return _async_to_generator(function() {
48592
- var glTF, glTFResource, engine, url, sampler, textureName, source, _glTF_images_source, uri, bufferViewIndex, mimeType, imageName, samplerInfo, index, promise, bufferView;
48593
- return __generator(this, function(_state) {
48594
- glTF = context.glTF, glTFResource = context.glTFResource;
48595
- engine = glTFResource.engine, url = glTFResource.url;
48596
- sampler = textureInfo.sampler, textureName = textureInfo.name;
48597
- source = schema.source;
48598
- _glTF_images_source = glTF.images[source], uri = _glTF_images_source.uri, bufferViewIndex = _glTF_images_source.bufferView, mimeType = _glTF_images_source.mimeType, imageName = _glTF_images_source.name;
48599
- samplerInfo = sampler !== undefined && GLTFUtils.getSamplerInfo(glTF.samplers[sampler]);
48600
- if (uri) {
48601
- index = uri.lastIndexOf(".");
48602
- promise = engine.resourceManager.load({
48603
- url: Utils.resolveAbsoluteUrl(url, uri),
48604
- type: exports.AssetType.KTX2
48605
- }).onProgress(undefined, context._onTaskDetail).then(function(texture) {
48606
- if (!texture.name) {
48607
- texture.name = textureName || imageName || "texture_" + index;
48608
- }
48689
+ var glTF = context.glTF, glTFResource = context.glTFResource;
48690
+ var engine = glTFResource.engine, url = glTFResource.url;
48691
+ var sampler = textureInfo.sampler, textureName = textureInfo.name;
48692
+ var source = schema.source;
48693
+ var _glTF_images_source = glTF.images[source], uri = _glTF_images_source.uri, bufferViewIndex = _glTF_images_source.bufferView, mimeType = _glTF_images_source.mimeType, imageName = _glTF_images_source.name;
48694
+ var samplerInfo = sampler !== undefined && GLTFUtils.getSamplerInfo(glTF.samplers[sampler]);
48695
+ if (uri) {
48696
+ var index = uri.lastIndexOf(".");
48697
+ var promise = engine.resourceManager.load({
48698
+ url: Utils.resolveAbsoluteUrl(url, uri),
48699
+ type: exports.AssetType.KTX2
48700
+ }).onProgress(undefined, context._onTaskDetail).then(function(texture) {
48701
+ if (!texture.name) {
48702
+ texture.name = textureName || imageName || "texture_" + index;
48703
+ }
48704
+ if (sampler !== undefined) {
48705
+ GLTFUtils.parseSampler(texture, samplerInfo);
48706
+ }
48707
+ return texture;
48708
+ });
48709
+ context._addTaskCompletePromise(promise);
48710
+ return promise;
48711
+ } else {
48712
+ var bufferView = glTF.bufferViews[bufferViewIndex];
48713
+ return new AssetPromise(function(resolve, reject) {
48714
+ context.get(exports.GLTFParserType.Buffer, bufferView.buffer).then(function(buffer) {
48715
+ var imageBuffer = new Uint8Array(buffer, bufferView.byteOffset, bufferView.byteLength);
48716
+ exports.KTX2Loader._parseBuffer(imageBuffer, engine).then(function(param) {
48717
+ var engine = param.engine, result = param.result, targetFormat = param.targetFormat, params = param.params;
48718
+ var texture = exports.KTX2Loader._createTextureByBuffer(engine, result, targetFormat, params);
48719
+ texture.name = textureName || imageName || "texture_" + bufferViewIndex;
48609
48720
  if (sampler !== undefined) {
48610
48721
  GLTFUtils.parseSampler(texture, samplerInfo);
48611
48722
  }
48612
- return texture;
48613
- });
48614
- context._addTaskCompletePromise(promise);
48615
- return [
48616
- 2,
48617
- promise
48618
- ];
48619
- } else {
48620
- bufferView = glTF.bufferViews[bufferViewIndex];
48621
- return [
48622
- 2,
48623
- context.get(exports.GLTFParserType.Buffer, bufferView.buffer).then(function(buffer) {
48624
- var imageBuffer = new Uint8Array(buffer, bufferView.byteOffset, bufferView.byteLength);
48625
- return exports.KTX2Loader._parseBuffer(imageBuffer, engine).then(function(param) {
48626
- var engine = param.engine, result = param.result, targetFormat = param.targetFormat, params = param.params;
48627
- return exports.KTX2Loader._createTextureByBuffer(engine, result, targetFormat, params);
48628
- }).then(function(texture) {
48629
- texture.name = textureName || imageName || "texture_" + bufferViewIndex;
48630
- if (sampler !== undefined) {
48631
- GLTFUtils.parseSampler(texture, samplerInfo);
48632
- }
48633
- var bufferTextureRestoreInfo = new BufferTextureRestoreInfo(texture, bufferView, mimeType);
48634
- context.contentRestorer.bufferTextures.push(bufferTextureRestoreInfo);
48635
- return texture;
48636
- });
48637
- })
48638
- ];
48639
- }
48723
+ var bufferTextureRestoreInfo = new BufferTextureRestoreInfo(texture, bufferView, mimeType);
48724
+ context.contentRestorer.bufferTextures.push(bufferTextureRestoreInfo);
48725
+ resolve(texture);
48726
+ }).catch(reject);
48727
+ }).catch(function(e) {
48728
+ Logger.error("KHR_texture_basisu: buffer error", e);
48729
+ });
48640
48730
  });
48641
- })();
48731
+ }
48642
48732
  };
48643
48733
  return KHR_texture_basisu;
48644
48734
  }(GLTFExtensionParser);
@@ -48724,6 +48814,8 @@
48724
48814
  return getMeshoptDecoder().then(function(decoder) {
48725
48815
  return decoder.decodeGltfBuffer(schema.count, schema.byteStride, new Uint8Array(arrayBuffer, schema.byteOffset, schema.byteLength), schema.mode, schema.filter);
48726
48816
  });
48817
+ }).catch(function(e) {
48818
+ Logger.error("EXT_meshopt_compression: buffer error", e);
48727
48819
  });
48728
48820
  };
48729
48821
  return EXT_meshopt_compression;
@@ -48745,6 +48837,8 @@
48745
48837
  exports.GLTFMaterialParser._checkOtherTextureTransform(anisotropyTexture, "Anisotropy texture");
48746
48838
  context.get(exports.GLTFParserType.Texture, anisotropyTexture.index).then(function(texture) {
48747
48839
  material.anisotropyTexture = texture;
48840
+ }).catch(function(e) {
48841
+ Logger.error("KHR_materials_anisotropy: anisotropy texture error", e);
48748
48842
  });
48749
48843
  }
48750
48844
  };
@@ -48771,19 +48865,10 @@
48771
48865
  _inherits(EXT_texture_webp, GLTFExtensionParser1);
48772
48866
  var _proto = EXT_texture_webp.prototype;
48773
48867
  _proto.createAndParse = function createAndParse(context, schema, textureInfo, textureIndex) {
48774
- var _this = this;
48775
- return _async_to_generator(function() {
48776
- var webPIndex, sampler, tmp, fallbackIndex, textureName, texture;
48777
- return __generator(this, function(_state) {
48778
- webPIndex = schema.source;
48779
- sampler = textureInfo.sampler, tmp = textureInfo.source, fallbackIndex = tmp === void 0 ? 0 : tmp, textureName = textureInfo.name;
48780
- texture = exports.GLTFTextureParser._parseTexture(context, _this._supportWebP ? webPIndex : fallbackIndex, textureIndex, sampler, textureName);
48781
- return [
48782
- 2,
48783
- texture
48784
- ];
48785
- });
48786
- })();
48868
+ var webPIndex = schema.source;
48869
+ var sampler = textureInfo.sampler, tmp = textureInfo.source, fallbackIndex = tmp === void 0 ? 0 : tmp, textureName = textureInfo.name;
48870
+ var texture = exports.GLTFTextureParser._parseTexture(context, this._supportWebP ? webPIndex : fallbackIndex, textureIndex, sampler, textureName);
48871
+ return texture;
48787
48872
  };
48788
48873
  return EXT_texture_webp;
48789
48874
  }(GLTFExtensionParser);
@@ -48792,7 +48877,7 @@
48792
48877
  ], EXT_texture_webp);
48793
48878
 
48794
48879
  //@ts-ignore
48795
- var version = "1.3.26";
48880
+ var version = "1.3.27";
48796
48881
  console.log("Galacean engine version: " + version);
48797
48882
  for(var key in CoreObjects){
48798
48883
  Loader.registerClass(key, CoreObjects[key]);