1 |
- define(["require","./createTaskProcessorWorker","./Check-52a7d806","./when-92c6cf3c","./FeatureDetection-067cb23c","./PrimitiveType-cdfe443e","./Cartesian2-6033fa5d","./Cartographic-67e73ef9","./Cartesian4-ad128b5d","./Color-45274500","./ComponentDatatype-81047f82","./getStringFromTypedArray-1e6dda18","./buildModuleUrl-3d15f25c","./S3MCompressType-be5206ad","./IndexDatatype-4c0e98b8","./RuntimeError-c6a62a80","./Rectangle-bab7abf0","./BoundingRectangle-418864a2","./S3MPixelFormat-20d43dc4","./pako_inflate-60a34f49","./arrayFill-0358accf","./CompressedTextureBuffer-d0bacc6b","./PixelFormat-66831328","./WebMercatorProjection-39906b85","./GeographicTilingScheme-c09d40dc","./Intersect-b97e930a","./Math-92c3b5f7","./WebGLConstants-71f10989","./Event-3390cd7d","./Buffer-1d0f8963"],(function(t,e,r,a,n,A,o,B,E,i,C,s,y,l,u,P,c,f,d,L,p,T,D,g,F,I,M,m,v,_){"use strict";function S(t,e,A){if(r.o.defined("array",t),a.e(e)&&r.o.typeOf.number("begin",e),a.e(A)&&r.o.typeOf.number("end",A),"function"==typeof t.slice)return t.slice(e,A);for(var o=Array.prototype.slice.call(t,e,A),B=n.s.typedArrayTypes,E=B.length,i=0;i<E;++i)if(t instanceof B[i]){o=new B[i](o);break}return o}var O,N,h=(O=!0,function(t,e){var r=O?function(){if(e){var r=e.apply(t,arguments);return e=null,r}}:function(){};return O=!1,r}),R=h(void 0,(function(){return R.toString().search("(((.+)+)+)+$").toString().constructor(R).search("(((.+)+)+)+$")}));function b(){}function G(t,e,r){var n,A=t.num_points(),o=r.num_components(),B=new N.AttributeQuantizationTransform;if(B.InitFromAttribute(r)){for(var E=new Array(o),i=0;i<o;++i)E[i]=B.min_value(i);n={quantizationBits:B.quantization_bits(),minValues:E,range:B.range(),octEncoded:!1}}N.destroy(B),(B=new N.AttributeOctahedronTransform).InitFromAttribute(r)&&(n={quantizationBits:B.quantization_bits(),octEncoded:!0}),N.destroy(B);var s,y=A*o;s=a.e(n)?function(t,e,r,a,n){var A,o;a.quantizationBits<=8?(o=new N.DracoUInt8Array,A=new Uint8Array(n),e.GetAttributeUInt8ForAllPoints(t,r,o)):(o=new N.DracoUInt16Array,A=new Uint16Array(n),e.GetAttributeUInt16ForAllPoints(t,r,o));for(var B=0;B<n;++B)A[B]=o.GetValue(B);return N.destroy(o),A}(t,e,r,n,y):function(t,e,r,a){var n,A;switch(r.data_type()){case 1:case 11:A=new N.DracoInt8Array,n=new Int8Array(a),e.GetAttributeInt8ForAllPoints(t,r,A);break;case 2:A=new N.DracoUInt8Array,n=new Uint8Array(a),e.GetAttributeUInt8ForAllPoints(t,r,A);break;case 3:A=new N.DracoInt16Array,n=new Int16Array(a),e.GetAttributeInt16ForAllPoints(t,r,A);break;case 4:A=new N.DracoUInt16Array,n=new Uint16Array(a),e.GetAttributeUInt16ForAllPoints(t,r,A);break;case 5:case 7:A=new N.DracoInt32Array,n=new Int32Array(a),e.GetAttributeInt32ForAllPoints(t,r,A);break;case 6:case 8:A=new N.DracoUInt32Array,n=new Uint32Array(a),e.GetAttributeUInt32ForAllPoints(t,r,A);break;case 9:case 10:A=new N.DracoFloat32Array,n=new Float32Array(a),e.GetAttributeFloatForAllPoints(t,r,A)}for(var o=0;o<a;++o)n[o]=A.GetValue(o);return N.destroy(A),n}(t,e,r,y);var l=C.ComponentDatatype.fromTypedArray(s);return{array:s,data:{componentsPerAttribute:o,componentDatatype:l,byteOffset:r.byte_offset(),byteStride:C.ComponentDatatype.getSizeInBytes(l)*o,normalized:r.normalized(),quantization:n}}}R();var x=new B.t(40680631590769,40680631590769,40408299984661.445),U=new B.t,K=new B.t;function H(t,e,r,n){var A=Math.cos(e);U.x=A*Math.cos(t),U.y=A*Math.sin(t),U.z=Math.sin(e),U=B.t.normalize(U,U),B.t.multiplyComponents(x,U,K);var o=Math.sqrt(B.t.dot(U,K));return K=B.t.divideByScalar(K,o,K),U=B.t.multiplyByScalar(U,r,U),a.e(n)||(n=new B.t),B.t.add(K,U,n)}var w=new A.y,V=new A.y,Y=new B.t,J=new B.t$1;function k(t,e,r,n,i,s,y,u){var P=void 0,f=void 0,d=void 0,L=void 0,p=r.vertexAttributes,T=r.attrLocation;if(r.nCompressOptions=0,a.e(n.posUniqueID)&&n.posUniqueID>=0){a.e(u)||(r.nCompressOptions|=l.VertexCompressOption.SVC_Vertex);var D=e.GetAttribute(t,n.posUniqueID),g=G(t,e,D),F=g.data.componentsPerAttribute;r.verticesCount=g.array.length/F,r.vertCompressConstant=g.data.quantization.range/(1<<g.data.quantization.quantizationBits);var I=g.data.quantization.minValues;r.minVerticesValue=new E.e(I[0],I[1],I[2],1),F>3&&(r.minVerticesValue.w=I[3]);var M=r.verticesCount;if(s&&(P=new B.t$1,f=new B.t$1,d=new Float32Array(2*M),L=new Float64Array(2*M)),a.e(u)){var m=g.array,v=3===F?B.t.unpackArray(m):E.e.unpackArray(m);for(let t=0,e=v.length;t<e;t++){let e=v[t];B.t.multiplyByScalar(e,r.vertCompressConstant,e),B.t.add(e,r.minVerticesValue,e)}var _=A.y.multiply(u.sphereMatrix,u.geoMatrix,w),S=A.y.multiply(u.ellipsoidMatrix,u.geoMatrix,V);A.y.inverse(S,S);var O=new c.t(6378137,6378137,6378137);for(let t=0,e=v.length;t<e;t++){let e=v[t];A.y.multiplyByPoint(_,e,Y);let r=O.cartesianToCartographic(Y,J);s&&(L[2*t]=r.longitude,L[2*t+1]=r.latitude,0===t?(P.longitude=r.longitude,P.latitude=r.latitude,f.longitude=r.longitude,f.latitude=r.latitude):(P.longitude=Math.max(r.longitude,P.longitude),P.latitude=Math.max(r.latitude,P.latitude),f.longitude=Math.min(r.longitude,f.longitude),f.latitude=Math.min(r.latitude,f.latitude)));let a=H(r.longitude,r.latitude,r.height,Y);A.y.multiplyByPoint(S,a,e)}var N=new Array(3*v.length);3===F?B.t.packArray(v,N):E.e.packArray(v,N),g.array=new Float32Array(N),g.data.componentDatatype=C.ComponentDatatype.FLOAT,g.data.byteStride=4*F}if(T.aPosition=p.length,p.push({index:T.aPosition,typedArray:g.array,componentsPerAttribute:F,componentDatatype:g.data.componentDatatype,offsetInBytes:g.data.byteOffset,strideInBytes:g.data.byteStride,normalize:g.data.normalized}),!a.e(u)&&s)for(var h=new B.t,R=new B.t,b=new B.t$1,x=0;x<M;x++)A.y.multiplyByPoint(i,B.t.fromElements(g.array[3*x]*r.vertCompressConstant+I[0],g.array[3*x+1]*r.vertCompressConstant+I[1],g.array[3*x+2]*r.vertCompressConstant+I[2],h),R),b=B.t$1.fromCartesian(R),L[2*x]=b.longitude,L[2*x+1]=b.latitude,0===x?(P.longitude=b.longitude,P.latitude=b.latitude,f.longitude=b.longitude,f.latitude=b.latitude):(P.longitude=Math.max(b.longitude,P.longitude),P.latitude=Math.max(b.latitude,P.latitude),f.longitude=Math.min(b.longitude,f.longitude),f.latitude=Math.min(b.latitude,f.latitude));if(s){for(x=0;x<M;x++)d[2*x]=L[2*x]-f.longitude,d[2*x+1]=L[2*x+1]-f.latitude;T.img=p.length,p.push({index:T.img,typedArray:d,componentsPerAttribute:2,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:2*Float32Array.BYTES_PER_ELEMENT,normalize:!1}),y.max=P,y.min=f}}if(a.e(n.normalUniqueID)&&n.normalUniqueID>=0){r.nCompressOptions|=l.VertexCompressOption.SVC_Normal;var U=e.GetAttribute(t,n.normalUniqueID),K=G(t,e,U),k=K.data.quantization;r.normalRangeConstant=(1<<k.quantizationBits)-1,T.aNormal=p.length,p.push({index:T.aNormal,typedArray:K.array,componentsPerAttribute:K.data.componentsPerAttribute,componentDatatype:K.data.componentDatatype,offsetInBytes:K.data.byteOffset,strideInBytes:K.data.byteStride,normalize:K.data.normalized})}if(a.e(n.colorUniqueID)&&n.colorUniqueID>=0){r.nCompressOptions|=l.VertexCompressOption.SVC_VertexColor;var W=e.GetAttribute(t,n.colorUniqueID),Z=G(t,e,W),X=Z.array,Q=Z.data.componentDatatype,z=Z.data.byteOffset,j=Z.data.byteStride,q=Z.data.normalized;if(Z.array instanceof Int32Array){X=new Uint8Array(Z.array.length);for(let t=0,e=Z.array.length;t<e;t++)X[t]=Z.array[t];Q=5121,z=0,j=4,q=!0}T.aColor=p.length,p.push({index:T.aColor,typedArray:X,componentsPerAttribute:Z.data.componentsPerAttribute,componentDatatype:Q,offsetInBytes:z,strideInBytes:j,normalize:q})}for(x=0;x<n.texCoordUniqueIDs.length;x++){r.texCoordCompressConstant=[],r.minTexCoordValue=[];var $=n.texCoordUniqueIDs[x];if(!($<0)){var tt=e.GetAttribute(t,$),et=G(t,e,tt);if(a.e(et.data.quantization)){r.nCompressOptions|=l.VertexCompressOption.SVC_TexutreCoord,r.texCoordCompressConstant.push(et.data.quantization.range/(1<<et.data.quantization.quantizationBits));I=et.data.quantization.minValues;r.minTexCoordValue.push(new o.o(I[0],I[1]))}var rt="aTexCoord"+x;T[rt]=p.length,p.push({index:T[rt],typedArray:et.array,componentsPerAttribute:et.data.componentsPerAttribute,componentDatatype:et.data.componentDatatype,offsetInBytes:et.data.byteOffset,strideInBytes:et.data.byteStride,normalize:et.data.normalized}),r.textureCoordIsW=!0}}for(x=0;x<n.vertexAttrUniqueIDs.length;x++){var at=n.vertexAttrUniqueIDs[x];if(!(at<0)){var nt=e.GetAttribute(t,at),At=G(t,e,nt);T.aVertexWeight=p.length,p.push({index:T.aVertexWeight,typedArray:At.array,componentsPerAttribute:At.data.componentsPerAttribute,componentDatatype:At.data.componentDatatype,offsetInBytes:At.data.byteOffset,strideInBytes:At.data.byteStride,normalize:At.data.normalized}),r.customVertexAttribute={VertexWeight:0}}}}b.dracoDecodePointCloud=function(t,e,r,a,n){for(var A=new(N=t).Decoder,o=["POSITION","NORMAL","COLOR"],B=0;B<o.length;++B)A.SkipAttributeTransform(N[o[B]]);var E=new N.DecoderBuffer;if(E.Init(e,r),A.GetEncodedGeometryType(E)!==N.POINT_CLOUD)throw new P.t("Draco geometry type must be POINT_CLOUD.");var i=new N.PointCloud,C=A.DecodeBufferToPointCloud(E,i);if(!C.ok()||0===i.ptr)throw new P.t("Error decoding draco point cloud: "+C.error_msg());N.destroy(E),k(i,A,a,n),N.destroy(i),N.destroy(A)},b.dracoDecodeMesh=function(t,e,r,a,n,o,B,E,i,C){for(var s=new(N=t).Decoder,y=["POSITION","NORMAL","COLOR","TEX_COORD"],l=0;l<y.length;++l)s.SkipAttributeTransform(N[y[l]]);var c=new N.DecoderBuffer;if(c.Init(e,r),s.GetEncodedGeometryType(c)!==N.TRIANGULAR_MESH)throw new P.t("Unsupported draco mesh geometry type.");var f=new N.Mesh;if(!s.DecodeBufferToMesh(c,f).ok()||0===f.ptr)return!1;N.destroy(c),k(f,s,a,o,B,E,i,C);var d=function(t,e){for(var r=t.num_points(),a=t.num_faces(),n=new N.DracoInt32Array,A=3*a,o=u.IndexDatatype.createTypedArray(r,A),B=0,E=0;E<a;++E)e.GetFaceFromMesh(t,E,n),o[B+0]=n.GetValue(0),o[B+1]=n.GetValue(1),o[B+2]=n.GetValue(2),B+=3;var i=u.IndexDatatype.UNSIGNED_SHORT;return o instanceof Uint32Array&&(i=u.IndexDatatype.UNSIGNED_INT),N.destroy(n),{typedArray:o,numberOfIndices:A,indexDataType:i}}(f,s);n.indicesTypedArray=d.typedArray,n.indicesCount=d.numberOfIndices,n.indexType=d.indexDataType,n.primitiveType=A._0x29ba75.TRIANGLES,N.destroy(f),N.destroy(s)};var W,Z=(W=!0,function(t,e){var r=W?function(){if(e){var r=e.apply(t,arguments);return e=null,r}}:function(){};return W=!1,r}),X=Z(void 0,(function(){return X.toString().search("(((.+)+)+)+$").toString().constructor(X).search("(((.+)+)+)+$")}));X();var Q,z=Object.freeze({OSGBFile:0,OSGBCacheFile:1,ClampGroundPolygon:2,ClampObjectPolygon:3,ClampGroundLine:4,ClampObjectLine:5,IconPoint:6,Text:7,PointCloudFile:8,ExtendRegion3D:9,ExtendClampPolygonCache:10,PolylineEffect:11,RegionEffect:12,ClampGroundAndObjectLineCache:13,ClampGroundRealtimeRasterCache:14}),j=(Q=!0,function(t,e){var r=Q?function(){if(e){var r=e.apply(t,arguments);return e=null,r}}:function(){};return Q=!1,r}),q=j(void 0,(function(){return q.toString().search("(((.+)+)+)+$").toString().constructor(q).search("(((.+)+)+)+$")}));function $(){}function tt(t){var e=new y.i,r=t.instanceBounds;if(!a.e(r))return e;var n=new B.t(r[0],r[1],r[2]),A=new B.t(r[3],r[4],r[5]),o=B.t.lerp(n,A,.5,new B.t),E=B.t.distance(o,n);return e.center=o,e.radius=E,e}function et(t){var e,r,n=new y.i,A=new B.t,o=t.vertexAttributes[0],E=o.componentsPerAttribute,i=a.e(t.nCompressOptions)&&(t.nCompressOptions&l.VertexCompressOption.SVC_Vertex)===l.VertexCompressOption.SVC_Vertex,C=1;i?(C=t.vertCompressConstant,e=new B.t(t.minVerticesValue.x,t.minVerticesValue.y,t.minVerticesValue.z),r=new Uint16Array(o.typedArray.buffer,o.typedArray.byteOffset,o.typedArray.byteLength/2)):r=new Float32Array(o.typedArray.buffer,o.typedArray.byteOffset,o.typedArray.byteLength/4);for(var s=[],u=0;u<t.verticesCount;u++)B.t.fromArray(r,E*u,A),i&&(A=B.t.multiplyByScalar(A,C,A),A=B.t.add(A,e,A)),s.push(B.t.clone(A));return y.i.fromPoints(s,n),s.length=0,n}function rt(t){var e,r,n=new y.i,A=new B.t,o=a.e(t.nCompressOptions)&&(t.nCompressOptions&l.VertexCompressOption.SVC_Vertex)===l.VertexCompressOption.SVC_Vertex,E=t.vertexAttributes[0],i=E.componentsPerAttribute,C=1;o?(C=t.vertCompressConstant,r=new B.t(t.minVerticesValue.x,t.minVerticesValue.y,t.minVerticesValue.z),e=new Uint16Array(E.typedArray.buffer,E.typedArray.byteOffset,E.typedArray.byteLength/2)):e=new Float32Array(E.typedArray.buffer,E.typedArray.byteOffset,E.typedArray.byteLength/4);for(var s=[],u=0;u<t.verticesCount;u++)B.t.fromArray(e,i*u,A),o&&(A=B.t.multiplyByScalar(A,C,A),A=B.t.add(A,r,A)),s.push(B.t.clone(A));return y.i.fromPoints(s,n),s.length=0,n}function at(t){var e,r,n=a.e(t.nCompressOptions)&&(t.nCompressOptions&l.VertexCompressOption.SVC_Vertex)===l.VertexCompressOption.SVC_Vertex,A=new y.i,o=new B.t,i=new B.t,C=t.vertexAttributes[0],s=C.componentsPerAttribute,u=t.attrLocation.aPosition,P=t.vertexAttributes[u],c=t.attrLocation.aTexCoord5,f=t.vertexAttributes[c],d=f.componentsPerAttribute;n?(s=3,d=3,e=At(t,P),r=function(t,e,r){for(var a,n,A,o=e.componentsPerAttribute,B=t.texCoordCompressConstant[r],i=new E.e(t.minTexCoordValue[r].x,t.minTexCoordValue[r].y,t.minTexCoordValue[r].z,t.minTexCoordValue[r].w),C=new Uint16Array(e.typedArray.buffer,e.typedArray.byteOffset,e.typedArray.byteLength/2),s=new Float32Array(3*t.verticesCount),y=0;y<t.verticesCount;y++)a=C[o*y]*B+i.x,n=C[o*y+1]*B+i.y,A=C[o*y+2]*B+i.z,s[3*y]=a,s[3*y+1]=n,s[3*y+2]=A;return s}(t,f,5)):(e=new Float32Array(C.typedArray.buffer,C.typedArray.byteOffset,C.typedArray.byteLength/4),r=new Float32Array(f.typedArray.buffer,f.typedArray.byteOffset,f.typedArray.byteLength/4));for(var L=[],p=0;p<t.verticesCount;p++)B.t.fromArray(e,s*p,o),B.t.fromArray(r,d*p,i),B.t.add(o,i,o),L.push(B.t.clone(o));return y.i.fromPoints(L,A),L.length=0,A}function nt(t){var e=A._0x29ba75.TRIANGLES;switch(t){case 1:e=A._0x29ba75.POINTS;break;case 2:e=A._0x29ba75.LINES;break;case 3:e=A._0x29ba75.LINE_STRIP;break;case 4:e=A._0x29ba75.TRIANGLES}return e}function At(t,e){for(var r,a,n,A=e.componentsPerAttribute,o=t.vertCompressConstant,E=new B.t(t.minVerticesValue.x,t.minVerticesValue.y,t.minVerticesValue.z),i=new Uint16Array(e.typedArray.buffer,e.typedArray.byteOffset,e.typedArray.byteLength/2),C=new Float32Array(3*t.verticesCount),s=0;s<t.verticesCount;s++)r=i[A*s]*o+E.x,a=i[A*s+1]*o+E.y,n=i[A*s+2]*o+E.z,C[3*s]=r,C[3*s+1]=a,C[3*s+2]=n;return C}q(),$.calcBoundingSphereInWorker=function(t,e){return e.instanceIndex>-1?tt(e):a.e(e.clampRegionEdge)?at(e):t>=z.ClampGroundPolygon&&t<=z.ClampObjectLine?rt(e):t==z.ClampGroundAndObjectLineCache?at(e):et(e)},$.calcBoundingSphere=function(t,e,r){var n,A=t._fileType;return n=e.instanceIndex>-1?tt(e):a.e(e.clampRegionEdge)?at(e):A>=z.ClampGroundPolygon&&A<=z.ClampObjectLine?rt(e):A==z.ClampGroundAndObjectLineCache?at(e):et(e),y.i.transform(n,r,n),n},$.calcBoundingRectangle=function(t,e){var r;return t._fileType===z.ClampGroundPolygon&&(r=function(t){var e,r,n=a.e(t.nCompressOptions)&&(t.nCompressOptions&l.VertexCompressOption.SVC_Vertex)===l.VertexCompressOption.SVC_Vertex,A=new f.f,E=t.vertexAttributes[0],i=E.componentsPerAttribute,C=1;n?(C=t.vertCompressConstant,r=new B.t(t.minVerticesValue.x,t.minVerticesValue.y,t.minVerticesValue.z),e=new Uint16Array(E.typedArray.buffer,E.typedArray.byteOffset,E.typedArray.byteLength/2)):e=new Float32Array(E.typedArray.buffer,E.typedArray.byteOffset,E.typedArray.byteLength/4);for(var s=[],y=0;y<t.verticesCount;y++){var u=e[i*y],P=e[i*y+1];n&&(u=C*u+r.x,P=C*P+r.y),s.push(new o.o(u,P))}return f.f.fromPoints(s,A),s.length=0,A}(e)),r},$.createEdge=function(t,e){if(!(e.length<1)){var r=function(t){for(var e=[],r=t.length,a=0;a<r;a++){var n=nt(t[a].primitiveType);(n===A._0x29ba75.LINES||n===A._0x29ba75.LINE_STRIP)&&e.push(t[a])}return e}(e);if(0!=r.length){var n,o=function(t){for(var e=0,r=t.length,a=0;a<r;a++){var n=t[a],o=nt(n.primitiveType);o==A._0x29ba75.LINES?e+=n.indicesCount/2:o==A._0x29ba75.LINE_STRIP&&e++}return e}(r),E=t.attrLocation.aPosition,i=t.vertexAttributes[E],s=a.e(t.nCompressOptions)&&(t.nCompressOptions&l.VertexCompressOption.SVC_Vertex)===l.VertexCompressOption.SVC_Vertex,y=i.componentsPerAttribute;s?(y=3,n=At(t,i)):n=new Float32Array(i.typedArray.buffer,i.typedArray.byteOffset,i.typedArray.byteLength/4);for(var u=function(t){for(var e=0,r=t.length,a=0;a<r;a++)e+=t[a].indicesCount;return e}(r),P=function(t,e,r){for(var a,n=[],o=r.length,E=0;E<o;E++){var i,C=r[E];i=0===C.indexType?new Uint16Array(C.indicesTypedArray.buffer,C.indicesTypedArray.byteOffset,C.indicesTypedArray.byteLength/2):new Uint32Array(C.indicesTypedArray.buffer,C.indicesTypedArray.byteOffset,C.indicesTypedArray.byteLength/4);var s=nt(C.primitiveType);if(s==A._0x29ba75.LINES)for(a=0;a<C.indicesCount;a+=2){var y=[],l=new B.t;l.x=t[i[a]*e],l.y=t[i[a]*e+1],l.z=t[i[a]*e+2],y.push(l);var u=new B.t;u.x=t[i[a+1]*e],u.y=t[i[a+1]*e+1],u.z=t[i[a+1]*e+2],y.push(u),n.push(y)}else if(s==A._0x29ba75.LINE_STRIP){for(y=[],a=0;a<C.indicesCount;a++){var P=new B.t;P.x=t[i[a]*e],P.y=t[i[a]*e+1],P.z=t[i[a]*e+2],y.push(P)}n.push(y)}}return n}(n,y,r),c=4*u-4*o,f=new Float32Array(3*c),d=new Float32Array(3*c),L=new Float32Array(3*c),p=new Int8Array(2*c),T=0,D=0;D<o;D++){for(var g=P[D].length,F=0;F<g;F++){var I=4*T-4*D,M=3*I+12*F,m=P[D][F];0!=F&&(f[M-6]=m.x,f[M-5]=m.y,f[M-4]=m.z,f[M-3]=m.x,f[M-2]=m.y,f[M-1]=m.z),F!=g-1&&(f[M]=m.x,f[M+1]=m.y,f[M+2]=m.z,f[M+3]=m.x,f[M+4]=m.y,f[M+5]=m.z);var v=m;F+1<g&&(v=P[D][F+1]),0!=F&&(L[M-6]=v.x,L[M-5]=v.y,L[M-4]=v.z,L[M-3]=v.x,L[M-2]=v.y,L[M-1]=v.z),F!=g-1&&(L[M]=v.x,L[M+1]=v.y,L[M+2]=v.z,L[M+3]=v.x,L[M+4]=v.y,L[M+5]=v.z);var _=m;F>=1&&(_=P[D][F-1]),0!=F&&(d[M-6]=_.x,d[M-5]=_.y,d[M-4]=_.z,d[M-3]=_.x,d[M-2]=_.y,d[M-1]=_.z),F!=g-1&&(d[M]=_.x,d[M+1]=_.y,d[M+2]=_.z,d[M+3]=_.x,d[M+4]=_.y,d[M+5]=_.z),M=2*I+8*F,0!=F&&(p[M-4]=-1,p[M-3]=-1,p[M-2]=1,p[M-1]=-1),F!=g-1&&(p[M]=-1,p[M+1]=1,p[M+2]=1,p[M+3]=1)}T+=P[D].length}var S={vertexAttributes:[],attrLocation:{}},O=S.vertexAttributes,N=S.attrLocation;S.instanceCount=0,S.instanceMode=0,N.aPosition=0,O.push({index:N.aPosition,typedArray:f,componentsPerAttribute:3,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:3*Float32Array.BYTES_PER_ELEMENT,normalize:!1}),N.aNormal=1,O.push({index:N.aNormal,typedArray:d,componentsPerAttribute:3,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:3*Float32Array.BYTES_PER_ELEMENT,normalize:!1}),N.aTexCoord0=2,O.push({index:N.aTexCoord0,typedArray:L,componentsPerAttribute:3,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:3*Float32Array.BYTES_PER_ELEMENT,normalize:!1}),N.aTexCoord1=3,O.push({index:N.aTexCoord1,typedArray:p,componentsPerAttribute:2,componentDatatype:C.ComponentDatatype.BYTE,offsetInBytes:0,strideInBytes:2*Int8Array.BYTES_PER_ELEMENT,normalize:!1});for(var h=[],R=0;R<P.length;R++)h.push(P[R].length);return{vertexPackage:S,indexPackage:function(t,e,r,a){var n,o={};o.indicesCount=6*(t-e),o.indexType=a>65535?1:0,o.primitiveType=A._0x29ba75.TRIANGLES,n=0===o.indexType?new Uint16Array(o.indicesCount):new Uint32Array(o.indicesCount);for(var B=0,E=0;E<e;E++){for(var i=0;i<r[E]-1;i++)n[6*(B-E+i)]=4*(B-E+i),n[6*(B-E+i)+1]=4*(B-E+i)+2,n[6*(B-E+i)+2]=4*(B-E+i)+1,n[6*(B-E+i)+3]=4*(B-E+i)+1,n[6*(B-E+i)+4]=4*(B-E+i)+2,n[6*(B-E+i)+5]=4*(B-E+i)+3;B+=r[E]}return o.indicesTypedArray=n,o}(u,o,h,c)}}}};var ot,Bt=(ot=!0,function(t,e){var r=ot?function(){if(e){var r=e.apply(t,arguments);return e=null,r}}:function(){};return ot=!1,r}),Et=Bt(void 0,(function(){return Et.toString().search("(((.+)+)+)+$").toString().constructor(Et).search("(((.+)+)+)+$")}));Et();var it,Ct,st=Object.freeze({S3M:49,S3M4:1}),yt=function(){var t=new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,3,2,0,0,5,3,1,0,1,12,1,0,10,22,2,12,0,65,0,65,0,65,0,252,10,0,0,11,7,0,65,0,253,15,26,11]),e=new Uint8Array([32,0,65,2,1,106,34,33,3,128,11,4,13,64,6,253,10,7,15,116,127,5,8,12,40,16,19,54,20,9,27,255,113,17,42,67,24,23,146,148,18,14,22,45,70,69,56,114,101,21,25,63,75,136,108,28,118,29,73,115]);if("object"!=typeof WebAssembly)return{supported:!1};var r="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";WebAssembly.validate(t)&&(r="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");var a,n=WebAssembly.instantiate(function(t){for(var r=new Uint8Array(t.length),a=0;a<t.length;++a){var n=t.charCodeAt(a);r[a]=n>96?n-71:n>64?n-65:n>47?n+4:n>46?63:62}var A=0;for(a=0;a<t.length;++a)r[A++]=r[a]<60?e[r[a]]:64*(r[a]-60)+r[++a];return r.buffer.slice(0,A)}(r),{}).then((function(t){(a=t.instance).exports.__wasm_call_ctors()}));function A(t,e,r,n,A,o){var B=a.exports.sbrk,E=r+3&-4,i=B(E*n),C=B(A.length),s=new Uint8Array(a.exports.memory.buffer);s.set(A,C);var y=t(i,r,n,C,A.length);if(0==y&&o&&o(i,E,n),e.set(s.subarray(i,i+r*n)),B(i-B(0)),0!=y)throw new Error("Malformed buffer data: "+y)}var o={0:"",1:"meshopt_decodeFilterOct",2:"meshopt_decodeFilterQuat",3:"meshopt_decodeFilterExp",NONE:"",OCTAHEDRAL:"meshopt_decodeFilterOct",QUATERNION:"meshopt_decodeFilterQuat",EXPONENTIAL:"meshopt_decodeFilterExp"},B={0:"meshopt_decodeVertexBuffer",1:"meshopt_decodeIndexBuffer",2:"meshopt_decodeIndexSequence",ATTRIBUTES:"meshopt_decodeVertexBuffer",TRIANGLES:"meshopt_decodeIndexBuffer",INDICES:"meshopt_decodeIndexSequence"};return{ready:n,supported:!0,decodeVertexBuffer:function(t,e,r,n,B){A(a.exports.meshopt_decodeVertexBuffer,t,e,r,n,a.exports[o[B]])},decodeIndexBuffer:function(t,e,r,n){A(a.exports.meshopt_decodeIndexBuffer,t,e,r,n)},decodeIndexSequence:function(t,e,r,n){A(a.exports.meshopt_decodeIndexSequence,t,e,r,n)},decodeGltfBuffer:function(t,e,r,n,E,i){A(a.exports[B[E]],t,e,r,n,a.exports[o[i]])}}}(),lt={MORPHING:0,COLUMBUS_VIEW:1,SCENE2D:2,SCENE3D:3,getMorphTime:function(t){return t===lt.SCENE3D?1:t===lt.MORPHING?void 0:0}},ut=Object.freeze(lt),Pt=1,ct=2,ft={};ft[0]=D.PixelFormat.RGB_DXT1,ft[Pt]=D.PixelFormat.RGBA_DXT3,ft[ct]=D.PixelFormat.RGBA_DXT5;var dt,Lt=0,pt=!1;function Tt(t,e){var r=t.data,n=r.byteLength,A=new Uint8Array(r),o=dt._malloc(n);!function(t,e,r,a){var n,A=r/4,o=a%4,B=new Uint32Array(t.buffer,0,(a-o)/4),E=new Uint32Array(e.buffer);for(n=0;n<B.length;n++)E[A+n]=B[n];for(n=a-o;n<a;n++)e[r+n]=t[n]}(A,dt.HEAPU8,o,n);var B=dt._crn_get_dxt_format(o,n),E=ft[B];if(!a.e(E))throw new P.t("Unsupported compressed format.");var i,C=dt._crn_get_levels(o,n),s=dt._crn_get_width(o,n),y=dt._crn_get_height(o,n),l=0;for(i=0;i<C;++i)l+=D.PixelFormat.compressedTextureSizeInBytes(E,s>>i,y>>i);if(Lt<l&&(a.e(it)&&dt._free(it),it=dt._malloc(l),Ct=new Uint8Array(dt.HEAPU8.buffer,it,l),Lt=l),dt._crn_decompress(o,n,it,l,0,C),dt._free(o),a.u(t.bMipMap,!1)){var u=Ct.slice(0,l);return e.push(u.buffer),new T.e(E,s,y,u)}var c=D.PixelFormat.compressedTextureSizeInBytes(E,s,y),f=Ct.subarray(0,c),d=new Uint8Array(c);return d.set(f,0),e.push(d.buffer),new T.e(E,s,y,d)}var Dt,gt=1,Ft=0,It=1,Mt=2,mt=3,vt=0,_t=1,St=2;new i.e;var Ot,Nt=!1,ht=null;function Rt(t,e,r,a,n,A){this.left=t,this.bottom=e,this.right=r,this.top=a,this.minHeight=n,this.maxHeight=A,this.width=r-t,this.length=a-e,this.height=A-n}function bt(t,e,r){var a=r,n=t.getUint32(a,!0),A=a+=Uint32Array.BYTES_PER_ELEMENT,o=new Uint8Array(e,a,n);return{dataViewByteOffset:A,byteOffset:a+=n*Uint8Array.BYTES_PER_ELEMENT,buffer:o}}function Gt(t,e,r,a){var n=t.getUint32(a+e,!0);a+=Uint32Array.BYTES_PER_ELEMENT;var A=r.subarray(a,a+n);return{string:s.a(A),bytesOffset:a+=n}}function xt(t,e,r,a,n,A){var o=r,B=t.getUint16(r+a,!0);o+=Uint16Array.BYTES_PER_ELEMENT,A||(o+=Uint16Array.BYTES_PER_ELEMENT);for(var E=0;E<B;E++){var i=t.getUint32(o+a,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var s=t.getUint16(o+a,!0);if(o+=Uint16Array.BYTES_PER_ELEMENT,t.getUint16(o+a,!0),o+=Uint16Array.BYTES_PER_ELEMENT,20==s||35==s);else{var y=i*s*Float32Array.BYTES_PER_ELEMENT,l=e.subarray(o,o+y);o+=y;var u="aTexCoord"+E,P=n.vertexAttributes,c=n.attrLocation;c[u]=P.length,P.push({index:c[u],typedArray:l,componentsPerAttribute:s,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:s*Float32Array.BYTES_PER_ELEMENT,normalize:!1})}}return{bytesOffset:o}}function Ut(t,e,r,a,n){var A=r,o=t.getUint16(A+a,!0);A+=Uint16Array.BYTES_PER_ELEMENT,A+=Uint16Array.BYTES_PER_ELEMENT;for(var B=n.vertexAttributes,E=n.attrLocation,i=0;i<o;i++){var s=t.getUint32(A+a,!0);A+=Uint32Array.BYTES_PER_ELEMENT;var y=t.getUint16(A+a,!0);if(A+=Uint16Array.BYTES_PER_ELEMENT,16===y){A-=Uint16Array.BYTES_PER_ELEMENT;var l=s*(y*Float32Array.BYTES_PER_ELEMENT+Uint16Array.BYTES_PER_ELEMENT),u=e.subarray(A,A+l);A+=l;var P=new Uint8Array(Float32Array.BYTES_PER_ELEMENT*y*s);n.instanceCount=s,n.instanceMode=y,n.instanceBuffer=P,n.instanceIndex=1;for(var c=Float32Array.BYTES_PER_ELEMENT*y+Uint16Array.BYTES_PER_ELEMENT,f=0;f<s;f++){var d=f*c+Uint16Array.BYTES_PER_ELEMENT,L=u.subarray(d,d+c);P.set(L,f*(c-Uint16Array.BYTES_PER_ELEMENT))}p=16*Float32Array.BYTES_PER_ELEMENT,E.uv2=B.length,B.push({index:E.uv2,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:0,strideInBytes:p,instanceDivisor:1}),E.uv3=B.length,B.push({index:E.uv3,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:4*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv4=B.length,B.push({index:E.uv4,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:8*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.secondary_colour=B.length,B.push({index:E.secondary_colour,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:12*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1})}else{t.getUint16(A+a,!0),A+=Uint16Array.BYTES_PER_ELEMENT;l=s*y*Float32Array.BYTES_PER_ELEMENT;if(17===y||29===y){var p;P=e.subarray(A,A+l);n.instanceCount=s,n.instanceMode=y,n.instanceBuffer=P,n.instanceIndex=1,17===y?(p=17*Float32Array.BYTES_PER_ELEMENT,E.uv2=B.length,B.push({index:E.uv2,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:0,strideInBytes:p,instanceDivisor:1}),E.uv3=B.length,B.push({index:E.uv3,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:4*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv4=B.length,B.push({index:E.uv4,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:8*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.secondary_colour=B.length,B.push({index:E.secondary_colour,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:12*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv6=B.length,B.push({index:E.uv6,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.UNSIGNED_BYTE,normalize:!0,offsetInBytes:16*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1})):29===y&&(p=29*Float32Array.BYTES_PER_ELEMENT,E.uv1=B.length,B.push({index:E.uv1,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:0,strideInBytes:p,instanceDivisor:1,byteLength:l}),E.uv2=B.length,B.push({index:E.uv2,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:4*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv3=B.length,B.push({index:E.uv3,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:8*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv4=B.length,B.push({index:E.uv4,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:12*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv5=B.length,B.push({index:E.uv5,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:16*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv6=B.length,B.push({index:E.uv6,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:20*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv7=B.length,B.push({index:E.uv7,componentsPerAttribute:3,componentDatatype:C.ComponentDatatype.FLOAT,normalize:!1,offsetInBytes:24*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.secondary_colour=B.length,B.push({index:E.secondary_colour,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.UNSIGNED_BYTE,normalize:!0,offsetInBytes:27*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}),E.uv9=B.length,B.push({index:E.uv9,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.UNSIGNED_BYTE,normalize:!0,offsetInBytes:28*Float32Array.BYTES_PER_ELEMENT,strideInBytes:p,instanceDivisor:1}))}else{var T=s*y;n.instanceBounds=new Float32Array(T);for(var D=0;D<T;D++)n.instanceBounds[D]=t.getFloat32(A+a+D*Float32Array.BYTES_PER_ELEMENT,!0)}A+=l}}return{bytesOffset:A}}var Kt=new B.t(40680631590769,40680631590769,40408299984661.445),Ht=new B.t,wt=new B.t;function Vt(t,e,r,n){var A=Math.cos(e);Ht.x=A*Math.cos(t),Ht.y=A*Math.sin(t),Ht.z=Math.sin(e),Ht=B.t.normalize(Ht,Ht),B.t.multiplyComponents(Kt,Ht,wt);var o=Math.sqrt(B.t.dot(Ht,wt));return wt=B.t.divideByScalar(wt,o,wt),Ht=B.t.multiplyByScalar(Ht,r,Ht),a.e(n)||(n=new B.t),B.t.add(wt,Ht,n)}var Yt=new B.t,Jt=new B.t$1,kt=new A.y,Wt=new A.y;function Zt(t,e,r,n,o,i,s,y,l){var u=n,P=e.getUint32(u+r,!0);if(o.verticesCount=P,u+=Uint32Array.BYTES_PER_ELEMENT,P<=0)return{bytesOffset:u};var f=e.getUint16(u+r,!0);u+=Uint16Array.BYTES_PER_ELEMENT;var d=e.getUint16(u+r,!0);d=f*Float32Array.BYTES_PER_ELEMENT,u+=Uint16Array.BYTES_PER_ELEMENT;var L=P*f*Float32Array.BYTES_PER_ELEMENT,p=t.subarray(u,u+L);u+=L;var T=o.vertexAttributes,D=o.attrLocation,g=void 0,F=void 0;if(s){g=new B.t$1,F=new B.t$1;var I=new Float32Array(2*P),M=new Float64Array(2*P);if(a.e(y)){var m=new Float32Array(p.byteLength/4),v=new Float32Array(p.buffer,p.byteOffset,p.byteLength/4);k=3===f?B.t.unpackArray(v):E.e.unpackArray(v);var _=A.y.multiply(y.sphereMatrix,y.geoMatrix,kt),S=A.y.multiply(y.ellipsoidMatrix,y.geoMatrix,Wt);A.y.inverse(S,S);for(var O=new c.t(6378137,6378137,6378137),N=0,h=0,R=k.length;h<R;h++){var b=k[h];A.y.multiplyByPoint(_,b,Yt);var G=Vt((W=O.cartesianToCartographic(Yt,Jt)).longitude,W.latitude,W.height,Yt);A.y.multiplyByPoint(S,G,b),3===f?(B.t.pack(b,m,N),N+=3):(E.e.pack(b,m,N),N+=4),M[2*h]=W.longitude,M[2*h+1]=W.latitude,0===h?(g.longitude=W.longitude,g.latitude=W.latitude,F.longitude=W.longitude,F.latitude=W.latitude):(g.longitude=Math.max(W.longitude,g.longitude),g.latitude=Math.max(W.latitude,g.latitude),F.longitude=Math.min(W.longitude,F.longitude),F.latitude=Math.min(W.latitude,F.latitude))}p=m}else{var x=new B.t,U=new B.t,K=new Float32Array(p.buffer,p.byteOffset,p.byteLength/4),H=new B.t$1;O=re?new c.t(6378137,6378137,6356752.314245179):new c.t(6378137,6378137,6378137);for(var w=0;w<P;w++)A.y.multiplyByPoint(i,B.t.fromElements(K[f*w],K[f*w+1],K[f*w+2],x),U),H=O.cartesianToCartographic(U,Jt),M[2*w]=H.longitude,M[2*w+1]=H.latitude,0===w?(g.longitude=H.longitude,g.latitude=H.latitude,F.longitude=H.longitude,F.latitude=H.latitude):(g.longitude=Math.max(H.longitude,g.longitude),g.latitude=Math.max(H.latitude,g.latitude),F.longitude=Math.min(H.longitude,F.longitude),F.latitude=Math.min(H.latitude,F.latitude))}for(w=0;w<P;w++)I[2*w]=M[2*w]-F.longitude,I[2*w+1]=M[2*w+1]-F.latitude;D.aPosition=T.length,T.push({index:D.aPosition,typedArray:p,componentsPerAttribute:f,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:d,normalize:!1}),D.img=T.length,T.push({index:D.img,typedArray:I,componentsPerAttribute:2,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:2*Float32Array.BYTES_PER_ELEMENT,normalize:!1})}else{if(3===f&&a.e(i)){U=new B.t,K=new Float32Array(p.buffer,p.byteOffset,p.byteLength/4);for(var V=new Float32Array(p.byteLength/4+P),Y=K.length,J=(w=0,0);w<Y;w+=3,J+=4)V[J]=K[w],V[J+1]=K[w+1],V[J+2]=K[w+2],A.y.multiplyByPoint(i,B.t.fromElements(V[J],V[J+1],V[J+2],x),U),V[J+3]=B.t$1.fromCartesian(U).height;p=V,d=(f=4)*Float32Array.BYTES_PER_ELEMENT}if(a.e(y)){var k;m=new Float32Array(p.byteLength/4),v=new Float32Array(p.buffer,p.byteOffset,p.byteLength/4);k=3===f?B.t.unpackArray(v):E.e.unpackArray(v);_=A.y.multiply(y.sphereMatrix,y.geoMatrix,kt),S=A.y.multiply(y.ellipsoidMatrix,y.geoMatrix,Wt);A.y.inverse(S,S);for(O=new c.t(6378137,6378137,6378137),N=0,h=0,R=k.length;h<R;h++){b=k[h];A.y.multiplyByPoint(_,b,Yt);var W;G=Vt((W=O.cartesianToCartographic(Yt,Jt)).longitude,W.latitude,W.height,Yt);A.y.multiplyByPoint(S,G,b),3===f?(B.t.pack(b,m,N),N+=3):(E.e.pack(b,m,N),N+=4)}p=m}D.aPosition=T.length,T.push({index:D.aPosition,typedArray:p,componentsPerAttribute:f,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:d,normalize:!1})}return{bytesOffset:u,cartographicBounds:{max:g,min:F}}}function Xt(t,e,r,a,n,A){var o=a,B=e.getUint32(o+r,!0);if(o+=Uint32Array.BYTES_PER_ELEMENT,B<=0)return{bytesOffset:o};var E=e.getUint16(o+r,!0);o+=Uint16Array.BYTES_PER_ELEMENT;var i=e.getUint16(o+r,!0);o+=Uint16Array.BYTES_PER_ELEMENT;var s=B*E*Float32Array.BYTES_PER_ELEMENT,y=t.subarray(o,o+s);let l=new Float32Array(y.buffer,y.byteOffset,3);o+=s;let u=A!==z.Text&&0===l[0]&&0===l[1]&&0===l[2];if(!n.ignoreNormal&&!u){var P=n.vertexAttributes,c=n.attrLocation;c.aNormal=P.length,P.push({index:c.aNormal,typedArray:y,componentsPerAttribute:E,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:i,normalize:!1})}return{bytesOffset:o}}var Qt={0:Uint32Array.BYTES_PER_ELEMENT,1:Float32Array.BYTES_PER_ELEMENT,2:Float64Array.BYTES_PER_ELEMENT};function zt(t,e,r,a,n){var A,o=a,B=e.getUint32(o+r,!0);if(o+=Uint32Array.BYTES_PER_ELEMENT,n.verticesCount,B>0){e.getUint16(o+r,!0),o+=Uint16Array.BYTES_PER_ELEMENT,o+=2*Uint8Array.BYTES_PER_ELEMENT;var E=B*Uint8Array.BYTES_PER_ELEMENT*4;A=S(t,o,o+E),o+=E;var i=n.vertexAttributes,s=n.attrLocation;s.aColor=i.length,i.push({index:s.aColor,typedArray:A,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.UNSIGNED_BYTE,offsetInBytes:0,strideInBytes:4,normalize:!0})}return{bytesOffset:o}}function jt(t,e,r,a,n){var A=a,o=e.getUint32(A+r,!0);return A+=Uint32Array.BYTES_PER_ELEMENT,o<=0?{bytesOffset:A}:(e.getUint16(A+r,!0),A+=Uint16Array.BYTES_PER_ELEMENT,A+=2*Uint8Array.BYTES_PER_ELEMENT,{bytesOffset:A+=o*Uint8Array.BYTES_PER_ELEMENT*4})}function qt(t,e,r,a,n){var A=n,o=[],B=r.getUint32(A+a,!0);A+=Uint32Array.BYTES_PER_ELEMENT;for(var E=0;E<B;E++){var i={};3===t&&(r.getUint32(A+a,!0),A+=Uint32Array.BYTES_PER_ELEMENT);var C=r.getUint32(A+a,!0);A+=Uint32Array.BYTES_PER_ELEMENT;var s=r.getUint8(A+a,!0);A+=Uint8Array.BYTES_PER_ELEMENT,r.getUint8(A+a,!0),A+=Uint8Array.BYTES_PER_ELEMENT;var y=r.getUint8(A+a,!0);if(A+=Uint8Array.BYTES_PER_ELEMENT,A+=Uint8Array.BYTES_PER_ELEMENT,C>0){var l=0,u=null;1===s||3===s?(l=C*Uint32Array.BYTES_PER_ELEMENT,u=e.subarray(A,A+l)):(l=C*Uint16Array.BYTES_PER_ELEMENT,u=e.subarray(A,A+l),C%2!=0&&(l+=2)),i.indicesTypedArray=u,A+=l}i.indicesCount=C,i.indexType=s,i.primitiveType=y;var P=[],c=r.getUint32(A+a,!0);A+=Uint32Array.BYTES_PER_ELEMENT;for(var f=0;f<c;f++){var d=Gt(r,a,e,A),L=d.string;A=d.bytesOffset,P.push(L),i.materialCode=L}if(0===c&&(i.materialCode="OSGBEmpty"),o.push(i),0!==A%4)A+=4-A%4}return{bytesOffset:A,arrIndexPackage:o}}function $t(t,e,r,n,o,i,s,y,u,P){var f,d,L=n,p=e.getUint32(L+r,!0);return o.nCompressOptions=p,L+=Uint32Array.BYTES_PER_ELEMENT,(p&l.VertexCompressOption.SVC_Vertex)==l.VertexCompressOption.SVC_Vertex?(f=function(t,e,r,n,o,i,s){var y=n,l=e.getUint32(y+r,!0);if(o.verticesCount=l,y+=Uint32Array.BYTES_PER_ELEMENT,l<=0)return{bytesOffset:y};var u=e.getUint16(y+r,!0);y+=Uint16Array.BYTES_PER_ELEMENT;var P=e.getUint16(y+r,!0);P=u*Int16Array.BYTES_PER_ELEMENT,y+=Uint16Array.BYTES_PER_ELEMENT;var f=e.getFloat32(y+r,!0);y+=Float32Array.BYTES_PER_ELEMENT;var d=new E.e;d.x=e.getFloat32(y+r,!0),y+=Float32Array.BYTES_PER_ELEMENT,d.y=e.getFloat32(y+r,!0),y+=Float32Array.BYTES_PER_ELEMENT,d.z=e.getFloat32(y+r,!0),y+=Float32Array.BYTES_PER_ELEMENT,d.w=e.getFloat32(y+r,!0),y+=Float32Array.BYTES_PER_ELEMENT,o.vertCompressConstant=f,o.minVerticesValue=d;var L=l*u*Int16Array.BYTES_PER_ELEMENT,p=t.subarray(y,y+L);if(y+=L,a.e(i)){var T=new Uint16Array(p.byteLength/2),D=new Uint16Array(p.buffer,p.byteOffset,p.byteLength/2),g=E.e.unpackArray(D);for(let t=0,e=g.length;t<e;t++){let e=g[t];B.t.multiplyByScalar(e,f,e),B.t.add(e,d,e)}var F=A.y.multiply(i.sphereMatrix,i.geoMatrix,kt),I=A.y.multiply(i.ellipsoidMatrix,i.geoMatrix,Wt);A.y.inverse(I,I);var M=new c.t(6378137,6378137,6378137),m=0;for(let t=0,e=g.length;t<e;t++){let e=g[t];A.y.multiplyByPoint(F,e,Yt);let r=M.cartesianToCartographic(Yt,Jt),a=Vt(r.longitude,r.latitude,r.height,Yt);A.y.multiplyByPoint(I,a,e),B.t.subtract(e,d,e),B.t.divideByScalar(e,f,e),E.e.pack(e,T,m),m+=4}p=T}var v=o.vertexAttributes,_=o.attrLocation;return _.aPosition=v.length,v.push({index:_.aPosition,typedArray:p,componentsPerAttribute:u,componentDatatype:C.ComponentDatatype.SHORT,offsetInBytes:0,strideInBytes:P,normalize:!1}),{bytesOffset:y}}(t,e,r,L,o,u),L=f.bytesOffset):(L=(f=Zt(t,e,r,L,o,s,y,u)).bytesOffset,d=f.cartographicBounds),(p&l.VertexCompressOption.SVC_Normal)==l.VertexCompressOption.SVC_Normal?(f=function(t,e,r,a,n){var A=a,o=e.getUint32(A+r,!0);if(A+=Uint32Array.BYTES_PER_ELEMENT,o<=0)return{bytesOffset:A};e.getUint16(A+r,!0),A+=Uint16Array.BYTES_PER_ELEMENT;var B=e.getUint16(A+r,!0);A+=Uint16Array.BYTES_PER_ELEMENT;var E=2*o*Int16Array.BYTES_PER_ELEMENT,i=t.subarray(A,A+E);if(A+=E,!n.ignoreNormal){var s=n.vertexAttributes,y=n.attrLocation;y.aNormal=s.length,s.push({index:y.aNormal,typedArray:i,componentsPerAttribute:2,componentDatatype:C.ComponentDatatype.SHORT,offsetInBytes:0,strideInBytes:B,normalize:!1})}return{bytesOffset:A}}(t,e,r,L,o),L=f.bytesOffset):L=(f=Xt(t,e,r,L,o,P)).bytesOffset,L=(f=jt(0,e,r,L=(f=zt(t,e,r,L,o)).bytesOffset)).bytesOffset,(p&l.VertexCompressOption.SVC_TexutreCoord)==l.VertexCompressOption.SVC_TexutreCoord?(f=function(t,e,r,a,n){n.texCoordCompressConstant=[],n.minTexCoordValue=[];var A=r,o=t.getUint16(r+a,!0);A+=Uint16Array.BYTES_PER_ELEMENT,A+=Uint16Array.BYTES_PER_ELEMENT;for(var B=0,i=0;i<o;i++){var s=t.getUint8(A+a,!0);A+=Uint8Array.BYTES_PER_ELEMENT,A+=3*Uint8Array.BYTES_PER_ELEMENT;var y=t.getUint32(A+a,!0);A+=Uint32Array.BYTES_PER_ELEMENT;var l=t.getUint16(A+a,!0);A+=Uint16Array.BYTES_PER_ELEMENT,t.getUint16(A+a,!0),A+=Uint16Array.BYTES_PER_ELEMENT;var u=t.getFloat32(A+a,!0);A+=Float32Array.BYTES_PER_ELEMENT,n.texCoordCompressConstant.push(u);var P=new E.e;P.x=t.getFloat32(A+a,!0),A+=Float32Array.BYTES_PER_ELEMENT,P.y=t.getFloat32(A+a,!0),A+=Float32Array.BYTES_PER_ELEMENT,P.z=t.getFloat32(A+a,!0),A+=Float32Array.BYTES_PER_ELEMENT,P.w=t.getFloat32(A+a,!0),A+=Float32Array.BYTES_PER_ELEMENT,n.minTexCoordValue.push(P);var c=y*l*Int16Array.BYTES_PER_ELEMENT,f=e.subarray(A,A+c),d=(A+=c)%4;0!==d&&(A+=4-d);var L="aTexCoord"+B,p=n.vertexAttributes,T=n.attrLocation;if(T[L]=p.length,p.push({index:T[L],typedArray:f,componentsPerAttribute:l,componentDatatype:C.ComponentDatatype.SHORT,offsetInBytes:0,strideInBytes:l*Int16Array.BYTES_PER_ELEMENT,normalize:!1}),s){c=y*Float32Array.BYTES_PER_ELEMENT;var D=e.subarray(A,A+c);A+=c,n.texCoordZMatrix=!0,T[L="aTexCoordZ"+B]=p.length,p.push({index:T[L],typedArray:D,componentsPerAttribute:1,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:Float32Array.BYTES_PER_ELEMENT,normalize:!1})}B++}return{bytesOffset:A}}(e,t,L,r,o),L=f.bytesOffset):L=(f=xt(e,t,L,r,o,i)).bytesOffset,(p&l.VertexCompressOption.SVC_TexutreCoordIsW)==l.VertexCompressOption.SVC_TexutreCoordIsW&&(o.textureCoordIsW=!0),{bytesOffset:L=(f=Ut(e,t,L,r,o)).bytesOffset,cartographicBounds:d}}function te(t,e,r,n,A,o,B,E,i,s,y){3===t&&(r.getUint32(A,!0),A+=Uint32Array.BYTES_PER_ELEMENT);var l,u=A;u=(l=Zt(e,r,n,u,o,E,i,s)).bytesOffset;var P=l.cartographicBounds;if(u=(l=zt(e,r,n,u=(l=Xt(e,r,n,u,o,y)).bytesOffset,o)).bytesOffset,3!==t&&(u=(l=jt(0,r,n,u)).bytesOffset),u=(l=Ut(r,e,u=(l=xt(r,e,u,n,o,B)).bytesOffset,n,o)).bytesOffset,3===t&&(l=function(t,e,r,a,n){var A=a,o=e.getUint32(A+r,!0);A+=Uint32Array.BYTES_PER_ELEMENT;for(var B=0;B<o;B++){var E=e.getUint32(A+r,!0);A+=Uint32Array.BYTES_PER_ELEMENT;var i=e.getUint16(A+r,!0);A+=Uint16Array.BYTES_PER_ELEMENT;var s=e.getUint16(A+r,!0);A+=Uint16Array.BYTES_PER_ELEMENT;var y=E*i*Qt[s],l=t.subarray(A,A+y);A+=y;var u=n.vertexAttributes,P=n.attrLocation,c="aCustom"+B;P[c]=u.length,u.push({index:P[c],typedArray:l,componentsPerAttribute:i,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:0,normalize:!1})}return{bytesOffset:A}}(e,r,n,u,o),u=l.bytesOffset),3==t){var c=Gt(r,n,e,u);u=c.bytesOffset,o.customVertexAttribute=JSON.parse(c.string);var f="aCustom"+o.customVertexAttribute.TextureCoordMatrix,d="aCustom"+o.customVertexAttribute.VertexWeight,L="aCustom"+o.customVertexAttribute.VertexWeight_1;a.e(o.attrLocation[f])&&(o.attrLocation.aTextureCoordMatrix=o.attrLocation[f],delete o.attrLocation[f]),a.e(o.attrLocation[d])&&(o.attrLocation.aVertexWeight=o.attrLocation[d],delete o.attrLocation[d]),a.e(o.attrLocation[L])&&(o.attrLocation.aVertexWeight_1=o.attrLocation[L],delete o.attrLocation[L]);for(var p=Object.keys(o.attrLocation),T=p.length,D=0;D<T;++D){var g=p[D];-1!==g.indexOf("aCustom")&&delete o.attrLocation[g]}var F=(u+n)%4;F&&(F=4-F),u+=F}return 3===t&&(l=function(t,e,r,a,n){var A=a,o=e.getUint32(A+r,!0);if(A+=Uint32Array.BYTES_PER_ELEMENT,o<=0)return{bytesOffset:A};var B=e.getUint16(A+r,!0);return A+=Uint16Array.BYTES_PER_ELEMENT,e.getUint16(A+r,!0),A+=Uint16Array.BYTES_PER_ELEMENT,{bytesOffset:A+=o*B*Float32Array.BYTES_PER_ELEMENT}}(0,r,n,u),u=l.bytesOffset),{bytesOffset:u,cartographicBounds:P}}function ee(t){return 0!==t.length&&"ClampGroundAndObjectLinePass"===t[0].materialCode}var re,ae=1,ne=4,Ae=8,oe=16,Be=32,Ee=64,ie=128,Ce=512,se=1024;function ye(t,e,r,n,i,s,y,u,P,c,f,d,L,p,T){var D=t,g=0,F=e.getUint32(g+r,!0);g+=Uint32Array.BYTES_PER_ELEMENT,c=a.u(c,a.u.EMPTY_OBJECT);for(var I=void 0,M=0;M<F;M++){3===u&&(e.getUint32(g+r,!0),g+=Uint32Array.BYTES_PER_ELEMENT);var m=(wt=Gt(e,r,D,g)).string;if(a.e(P)){var v=a.u(c[m],A.y.IDENTITY);I=new A.y,A.y.multiply(P,v,I)}a.e(L)&&(L.geoMatrix=a.u(c[m],A.y.IDENTITY));var _=(g=wt.bytesOffset)%4;0!==_&&(g+=4-_);var O=Ft;if(O=e.getUint32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT,(fe={vertexAttributes:[],attrLocation:{},instanceCount:0,instanceMode:0,instanceIndex:-1}).ignoreNormal=n.ignoreNormal,3===u)switch(O){case vt:O=It;break;case _t:O=mt;break;case St:O=Mt}if(O===mt){3===u&&(e.getInt32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT),u>=2&&(e.getInt32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT);var N,h={};h.posUniqueID=e.getInt32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT,h.normalUniqueID=e.getInt32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT,h.colorUniqueID=e.getInt32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT,h.secondColorUniqueID=e.getInt32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT,3===u?(N=e.getUint32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT):(N=e.getUint16(g+r,!0),g+=Int16Array.BYTES_PER_ELEMENT);for(var R=[],G=0;G<N;G++){var x=e.getInt32(g+r,!0);R.push(x),g+=Int32Array.BYTES_PER_ELEMENT}h.texCoordUniqueIDs=R;var U=[];if(3===u){var K=e.getUint32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT;for(var H=0;H<K;H++){var w=e.getInt32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT,U.push(w)}}h.vertexAttrUniqueIDs=U;var V=e.getInt32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT;var Y=[],J={};if(V>0){var k=(W=Gt(e,r,D,g)).string;g=W.bytesOffset,J.materialCode=k,Y.push(J)}3===u&&((kt=(g+r)%4)&&(kt=4-kt),g+=kt);var W,Z=new Object,X=e.getUint32(g+r,!0),Q=S(D,g+=Int32Array.BYTES_PER_ELEMENT,g+X);if(V>0?b.dracoDecodeMesh(Dt,Q,X,fe,J,h,I,f,Z,L):b.dracoDecodePointCloud(Dt,Q,X,fe,h),a.e(Z.min)&&a.e(Z.max)||(Z=void 0),g+=X,3===u)(kt=(g+r)%4)&&(kt=4-kt),(kt=((g=(W=Gt(e,r,D,g+=kt)).bytesOffset)+r)%4)&&(kt=4-kt),g+=kt;n[m]={vertexPackage:fe,arrIndexPackage:Y,cartographicBounds:Z}}else if(O==Mt&&3==u){var z=e.getUint32(g+r,!0);g+=Uint32Array.BYTES_PER_ELEMENT;var j=e.getUint32(g+r,!0);g+=Uint32Array.BYTES_PER_ELEMENT,fe.minVerticesValue=new E.e,fe.minTexCoordValue=[new o.o,new o.o],fe.texCoordCompressConstant=[new B.t,new B.t];Y=[];for(var q=0;q<j;q++){var $=e.getUint32(g+r,!0);g+=Uint32Array.BYTES_PER_ELEMENT,fe.vertCompressConstant=e.getFloat32(g+r,!0),g+=Float32Array.BYTES_PER_ELEMENT,fe.minVerticesValue.x=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,fe.minVerticesValue.y=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,fe.minVerticesValue.z=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT;var tt=e.getFloat64(g+r,!0);g+=Float64Array.BYTES_PER_ELEMENT;var et=e.getFloat64(g+r,!0);g+=Float64Array.BYTES_PER_ELEMENT;var rt=e.getFloat64(g+r,!0);g+=Float64Array.BYTES_PER_ELEMENT;var at=e.getFloat64(g+r,!0);g+=Float64Array.BYTES_PER_ELEMENT;var nt=e.getFloat64(g+r,!0);g+=Float64Array.BYTES_PER_ELEMENT;var At=e.getFloat64(g+r,!0);g+=Float64Array.BYTES_PER_ELEMENT;var ot=e.getFloat64(g+r,!0);g+=Float64Array.BYTES_PER_ELEMENT;var Bt=e.getFloat64(g+r,!0);g+=Float64Array.BYTES_PER_ELEMENT,fe.minTexCoordValue[0].x=rt,fe.minTexCoordValue[0].y=at,fe.minTexCoordValue[1].x=ot,fe.minTexCoordValue[1].y=Bt,fe.texCoordCompressConstant[0].x=tt,fe.texCoordCompressConstant[0].y=et,fe.texCoordCompressConstant[1].x=nt,fe.texCoordCompressConstant[1].y=At;var Et=e.getInt32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT;Z=new Object;for(var it=0;it<Et;it++){var Ct=e.getInt32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT;var st=Ct,lt=0;st!=Ce&&st!=se||(lt=e.getInt32(g+r,!0),g+=Int32Array.BYTES_PER_ELEMENT);var ut=e.getInt32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT;var Pt=new Uint8Array(e.buffer,g+r,ut);(kt=((g+=Uint8Array.BYTES_PER_ELEMENT*ut)+r)%4)&&(kt=4-kt),g+=kt,ue($,st,lt,Pt,fe,z,L,f,Z,I,p,T)}g=(Jt=Gt(e,r,D,g)).bytesOffset,fe.customVertexAttribute=JSON.parse(Jt.string);var ct="aCustom"+fe.customVertexAttribute.TextureCoordMatrix,ft="aCustom"+fe.customVertexAttribute.VertexWeight,dt="aCustom"+fe.customVertexAttribute.VertexWeight_1;a.e(fe.attrLocation[ct])&&(fe.attrLocation.aTextureCoordMatrix=fe.attrLocation[ct],q===j-1&&delete fe.attrLocation[ct]),a.e(fe.attrLocation[ft])&&(fe.attrLocation.aVertexWeight=fe.attrLocation[ft],q===j-1&&delete fe.attrLocation[ft]),a.e(fe.attrLocation[dt])&&(fe.attrLocation.aVertexWeight_1=fe.attrLocation[dt],q===j-1&&delete fe.attrLocation[dt]);for(var Lt=(Wt=Object.keys(fe.attrLocation)).length,pt=0;pt<Lt;++pt){-1!==(Zt=Wt[pt]).indexOf("aCustom")&&delete fe.attrLocation[Zt]}(kt=(g+r)%4)&&(kt=4-kt),g+=kt;var Tt=e.getInt32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT;for(var gt=0;gt<Tt;gt++){J={};var Ot=e.getInt32(g+r,!0);if(g+=Int32Array.BYTES_PER_ELEMENT,Ot>0){var Nt=e.getInt8(g+r,!0);g+=Int8Array.BYTES_PER_ELEMENT,e.getInt8(g+r,!0),g+=Int8Array.BYTES_PER_ELEMENT;var ht=e.getInt8(g+r,!0);g+=Int8Array.BYTES_PER_ELEMENT,e.getInt8(g+r,!0),g+=Int8Array.BYTES_PER_ELEMENT;var Rt,bt,xt=e.getInt32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT,13!==ht?(Rt=new Uint8Array(e.buffer,g+r,xt),g+=Uint8Array.BYTES_PER_ELEMENT*xt):(Rt=new Uint32Array(e.buffer,g+r,xt),g+=Uint32Array.BYTES_PER_ELEMENT*xt),(kt=(g+r)%4)&&(kt=4-kt),g+=kt,13!==ht?(bt=C.ComponentDatatype.createTypedArray(C.ComponentDatatype.UNSIGNED_BYTE,Ot*Uint32Array.BYTES_PER_ELEMENT),yt.decodeIndexBuffer(bt,Ot,Uint32Array.BYTES_PER_ELEMENT,Rt)):bt=Rt;var Ut,Kt=e.getInt32(g+r,!0);g+=Int32Array.BYTES_PER_ELEMENT,J.indexType=Nt,0===Nt?Ut=new Uint16Array(Ot):1===Nt&&(Ut=new Uint32Array(Ot)),J.indicesCount=Ot;var Ht=new Uint32Array(bt.buffer,bt.byteOffset,bt.byteLength/4);Ut.set(Ht,0),J.indicesTypedArray=Ut,J.primitiveType=ht;for(it=0;it<Kt;it++){var wt;k=(wt=Gt(e,r,D,g)).string;g=wt.bytesOffset,J.materialCode=k}if(Y.length>0&&13!==ht){var Vt=fe.preVertexCount;J.indicesTypedArray=Ht.map((function(t){return t+Vt})),J.indexType=1}Y.push(J),(kt=(g+r)%4)&&(kt=4-kt),g+=kt}}}fe.nCompressOptions=z,2===Y.length&&13===Y[1].primitiveType&&Y[1].indicesCount>=3&&(Yt=l._0x5598e9.createEdgeDataByIndices(fe,Y[1],s)),a.e(Z.min)&&a.e(Z.max)||(Z=void 0),n[m]={vertexPackage:fe,arrIndexPackage:Y,edgeGeometry:Yt,cartographicBounds:Z}}else{var Yt;if(O===It||O===Ft)g=(wt=te(u,D,e,r,g,fe,i,I,f,L,d)).bytesOffset,Z=wt.cartographicBounds;else if(O===Mt&&(g=(wt=$t(D,e,r,g,fe,i,I,f,L,d)).bytesOffset,Z=wt.cartographicBounds,3==u)){var Jt;g=(Jt=Gt(e,r,D,g)).bytesOffset,fe.customVertexAttribute=JSON.parse(Jt.string);var kt;ct="aCustom"+fe.customVertexAttribute.TextureCoordMatrix,ft="aCustom"+fe.customVertexAttribute.VertexWeight,dt="aCustom"+fe.customVertexAttribute.VertexWeight_1;a.e(fe.attrLocation[ct])&&(fe.attrLocation.aTextureCoordMatrix=fe.attrLocation[ct],delete fe.attrLocation[ct]),a.e(fe.attrLocation[ft])&&(fe.attrLocation.aVertexWeight=fe.attrLocation[ft],delete fe.attrLocation[ft]),a.e(fe.attrLocation[dt])&&(fe.attrLocation.aVertexWeight_1=fe.attrLocation[dt],delete fe.attrLocation[dt]);var Wt;for(Lt=(Wt=Object.keys(fe.attrLocation)).length,pt=0;pt<Lt;++pt){var Zt;-1!==(Zt=Wt[pt]).indexOf("aCustom")&&delete fe.attrLocation[Zt]}(kt=(g+r)%4)&&(kt=4-kt),g+=kt}ee(Y=(wt=qt(u,D,e,r,g)).arrIndexPackage)&&(fe.clampRegionEdge=!0),2===Y.length&&13===Y[1].primitiveType&&Y[1].indicesCount>=3&&(Yt=l._0x5598e9.createEdgeDataByIndices(fe,Y[1],s)),g=wt.bytesOffset,a.e(Z)&&a.e(Z.min)&&a.e(Z.max)||(Z=void 0),n[m]={vertexPackage:fe,arrIndexPackage:Y,edgeGeometry:Yt,cartographicBounds:Z}}if(3!==u&&a.e(y)&&y){var Xt=e.getUint16(g+r,!0);if(g+=Uint16Array.BYTES_PER_ELEMENT,1===Xt){var Qt=e.getUint32(g+r,!0);g+=Uint32Array.BYTES_PER_ELEMENT;var zt,jt=e.getUint32(g+r,!0);g+=Uint32Array.BYTES_PER_ELEMENT,e.getFloat32(g+r,!0),g+=Float32Array.BYTES_PER_ELEMENT;var re=new Array(Qt),ae=new Array(Qt),ne=new Array(Qt),Ae=new Array(Qt);for(zt=0;zt<Qt;zt++){var oe=e.getFloat32(g+r,!0);g+=Float32Array.BYTES_PER_ELEMENT,re[zt]=oe;var Be=e.getUint16(g+r,!0);g+=Uint16Array.BYTES_PER_ELEMENT,ae[zt]=Be;var Ee=e.getUint16(g+r,!0);g+=Uint16Array.BYTES_PER_ELEMENT,ne[zt]=Ee;for(var ie=Ee*jt,ye=new Array(ie),le=0;le<ie;le++){ct=e.getFloat32(g+r,!0);g+=Float32Array.BYTES_PER_ELEMENT,ye[le]=ct}Ae[zt]=ye}}var Pe=new B.t,ce=new B.t;Pe.x=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,Pe.y=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,Pe.z=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,ce.x=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,ce.y=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,ce.z=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,n[m].min=Pe,n[m].max=ce;var fe=n[m].vertexPackage;a.e(fe.instanceBuffer)&&2===u&&(fe.instanceBounds=new Float32Array(6),B.t.pack(Pe,fe.instanceBounds,0),B.t.pack(ce,fe.instanceBounds,3))}if(3===u){var de=new B.t;de.x=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,de.y=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,de.z=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT;var Le=new B.t;Le.x=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,Le.y=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,Le.z=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT;var pe=new B.t;pe.x=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,pe.y=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,pe.z=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT;var Te=new B.t;Te.x=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,Te.y=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT,Te.z=e.getFloat64(g+r,!0),g+=Float64Array.BYTES_PER_ELEMENT}}}function le(t,e,r){var a=t.typedArray,n=new r(a.length+e.length);n.set(a,0),n.set(e,a.length),t.typedArray=n}function ue(t,e,r,n,o,E,i,s,y,l,u,P){var f,d=0,L=o.vertexAttributes,p=o.attrLocation;switch(e){case ne:case Ae:case oe:case Be:d=2*Uint16Array.BYTES_PER_ELEMENT,0!=(16&E)||e!==oe&&e!==Be||(d=2*Float32Array.BYTES_PER_ELEMENT),f=C.ComponentDatatype.createTypedArray(C.ComponentDatatype.UNSIGNED_BYTE,t*d);break;case Ee:case ie:d=4*Uint8Array.BYTES_PER_ELEMENT,f=C.ComponentDatatype.createTypedArray(C.ComponentDatatype.UNSIGNED_BYTE,4*t);break;case Ce:case se:d=Float32Array.BYTES_PER_ELEMENT*r,f=C.ComponentDatatype.createTypedArray(C.ComponentDatatype.UNSIGNED_BYTE,t*r*4);break;default:d=4*Uint16Array.BYTES_PER_ELEMENT,f=C.ComponentDatatype.createTypedArray(C.ComponentDatatype.UNSIGNED_BYTE,t*d)}switch(yt.decodeVertexBuffer(f,t,d,n,n.length),e){case ae:var T=new Uint16Array(f.buffer,0,f.length/2),D=C.ComponentDatatype.SHORT;if(a.e(i)){var F=B.t.unpackArray(T);for(let t=0,e=F.length;t<e;t++){let e=F[t];B.t.multiplyByScalar(e,o.vertCompressConstant,e),B.t.add(e,o.minVerticesValue,e)}var M=A.y.multiply(i.sphereMatrix,i.geoMatrix,kt),m=A.y.multiply(i.ellipsoidMatrix,i.geoMatrix,Wt);A.y.inverse(m,m);var v=new c.t(6378137,6378137,6378137);for(let t=0,e=F.length;t<e;t++){let e=F[t];A.y.multiplyByPoint(M,e,Yt);let r=v.cartesianToCartographic(Yt,Jt),a=Vt(r.longitude,r.latitude,r.height,Yt);A.y.multiplyByPoint(m,a,e)}var _=new Array(3*F.length);B.t.packArray(F,_),T=new Float32Array(_),D=C.ComponentDatatype.FLOAT}if(void 0!==(K=p.aPosition)?(le(L[K],T,Uint16Array),o.preVertexCount=o.verticesCount,o.verticesCount+=t):(p.aPosition=L.length,L.push({index:p.aPosition,typedArray:T,componentsPerAttribute:4,componentDatatype:D,offsetInBytes:0,strideInBytes:0,normalize:!1}),o.verticesCount=t),!a.e(i)&&s){var S=new B.t$1,O=new B.t$1,N=new Float32Array(2*t),h=new Float64Array(2*t),R=new B.t,b=new B.t,G=new B.t$1;v=re?new c.t(6378137,6378137,6356752.314245179):new c.t(6378137,6378137,6378137);for(var x=0;x<t;x++){if(A.y.multiplyByPoint(l,B.t.fromElements(T[4*x]*o.vertCompressConstant+o.minVerticesValue.x,T[4*x+1]*o.vertCompressConstant+o.minVerticesValue.y,T[4*x+2]*o.vertCompressConstant+o.minVerticesValue.z,R),b),u!==ut.SCENE3D){var U=B.t.fromElements(b.y,b.z,b.x);G=(P?new g.t:new I.n).unproject(U)}else G=v.cartesianToCartographic(b,Jt);h[2*x]=G.longitude,h[2*x+1]=G.latitude,0===x?(S.longitude=G.longitude,S.latitude=G.latitude,O.longitude=G.longitude,O.latitude=G.latitude):(S.longitude=Math.max(G.longitude,S.longitude),S.latitude=Math.max(G.latitude,S.latitude),O.longitude=Math.min(G.longitude,O.longitude),O.latitude=Math.min(G.latitude,O.latitude))}for(x=0;x<t;x++)N[2*x]=h[2*x]-O.longitude,N[2*x+1]=h[2*x+1]-O.latitude;p.img=L.length,L.push({index:p.img,typedArray:N,componentsPerAttribute:2,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:2*Float32Array.BYTES_PER_ELEMENT,normalize:!1}),y.max=S,y.min=O}break;case ne:var K=p.aNormal,H=new Int16Array(f.buffer,0,f.length/2);void 0!==K?le(L[K],H,Uint16Array):(p.aNormal=L.length,L.push({index:p.aNormal,typedArray:H,componentsPerAttribute:2,componentDatatype:C.ComponentDatatype.SHORT,offsetInBytes:0,strideInBytes:0,normalize:!1}));break;case oe:var w=new Uint16Array(f.buffer,0,f.length/2),V=(K=p.aTexCoord0,D=C.ComponentDatatype.SHORT,Uint16Array);0==(16&E)&&(D=C.ComponentDatatype.FLOAT,V=Float32Array,w=new Float32Array(f.buffer,0,f.length/4)),void 0!==K?le(L[K],w,V):(p.aTexCoord0=L.length,L.push({index:p.aTexCoord0,typedArray:w,componentsPerAttribute:2,componentDatatype:D,offsetInBytes:0,strideInBytes:0,normalize:!1}));break;case Be:w=new Uint16Array(f.buffer,0,f.length/2),K=p.aTexCoord1,D=C.ComponentDatatype.SHORT,V=Uint16Array;0==(16&E)&&(D=C.ComponentDatatype.FLOAT,V=Float32Array,w=new Float32Array(f.buffer,0,f.length/4)),void 0!==K?le(L[K],w,V):(p.aTexCoord1=L.length,L.push({index:p.aTexCoord1,typedArray:w,componentsPerAttribute:2,componentDatatype:D,offsetInBytes:0,strideInBytes:0,normalize:!1}));break;case Ee:void 0!==(K=p.aColor)?le(L[K],f,Uint8Array):(p.aColor=L.length,L.push({index:p.aColor,typedArray:f,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.UNSIGNED_BYTE,offsetInBytes:0,strideInBytes:0,normalize:!0}));break;case ie:void 0!==(K=p.aSecondColor)?le(L[K],f,Uint8Array):(p.aSecondColor=L.length,L.push({index:p.aSecondColor,typedArray:f,componentsPerAttribute:4,componentDatatype:C.ComponentDatatype.BYTE,offsetInBytes:0,strideInBytes:0,normalize:!1}));break;case Ce:w=new Float32Array(f.buffer,0,f.length/4);void 0!==(K=p.aCustom0||p.aVertexWeight)?le(L[K],w,Float32Array):(p.aCustom0=L.length,L.push({index:p.aCustom0,typedArray:w,componentsPerAttribute:r,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:0,normalize:!1}));break;case se:var Y=new Float32Array(f.buffer,0,f.length/4);void 0!==(K=p.aCustom1||p.aTextureCoordMatrix)?le(L[K],Y,Float32Array):(p.aCustom1=L.length,L.push({index:p.aCustom1,typedArray:Y,componentsPerAttribute:r,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:0,normalize:!1}))}}function Pe(t,e,r,n,o){var B={},E=[],i=new A.y,C=t;o=a.u(o,{});for(var s=0;s<16;s++)i[s]=e.getFloat64(r+n,!0),r+=Float64Array.BYTES_PER_ELEMENT;B.matrix=i,B.skeletonNames=E;var y=e.getUint32(r+n,!0);r+=Uint32Array.BYTES_PER_ELEMENT;for(var l=0;l<y;l++){var u=Gt(e,n,C,r),P=u.string;r=u.bytesOffset,E.push(P),o[P]=i}return{byteOffset:r,geode:B}}function ce(t){var e=t.indexOf("Geometry");if(-1===e)return t;var r=t.substring(e,t.length);return t.replace(r,"")}function fe(t,e,r,n,o,E,i,C){var s={},l=r.getFloat32(n+o,!0);n+=Float32Array.BYTES_PER_ELEMENT;var u=r.getUint16(n+o,!0);n+=Uint16Array.BYTES_PER_ELEMENT,s.rangeMode=u,s.rangeList=l;var P=new B.t;P.x=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,P.y=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,P.z=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT;var f=r.getFloat64(n+o,!0);if(n+=Float64Array.BYTES_PER_ELEMENT,a.e(i)){var d=A.y.clone(i.sphereMatrix,kt),L=A.y.clone(i.ellipsoidMatrix,Wt);A.y.inverse(L,L);var p=new c.t(6378137,6378137,6378137);A.y.multiplyByPoint(d,P,Yt);let t=p.cartesianToCartographic(Yt,Jt),e=Vt(t.longitude,t.latitude,t.height,Yt);A.y.multiplyByPoint(L,e,P)}if(s.boundingSphere=new y.i(P,f),3===t){var T=new B.t;T.x=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,T.y=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,T.z=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT;var D=new B.t;D.x=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,D.y=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,D.z=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT;var g=new B.t;g.x=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,g.y=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,g.z=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT;var F=new B.t;F.x=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,F.y=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,F.z=r.getFloat64(n+o,!0),n+=Float64Array.BYTES_PER_ELEMENT,s._obb={xExtent:D,yExtent:g,zExtent:F,obbCenter:T}}var I=e,M=(_=Gt(r,o,I,n)).string;n=_.bytesOffset,M=ce(M=(M=M.replace(/(\.s3mblock)|(\.s3mbz)|(\.s3mb)/gi,"")).replace(/\\/gi,"/")),s.childTile=M,s.geodes=[];var m=r.getUint32(n+o,!0);n+=Uint32Array.BYTES_PER_ELEMENT;for(var v=0;v<m;v++){var _;n=(_=Pe(e,r,n,o,E)).byteOffset,s.geodes.push(_.geode)}return 3===t&&(n=(_=Gt(r,o,I,n)).bytesOffset),{pageLOD:s,bytesOffset:n}}function de(t,e,r,a,n,A,o){var B=0,E={},i=[],C=r.getUint32(B+a,!0);B+=Uint32Array.BYTES_PER_ELEMENT;for(var s=0;s<C;s++){var y=fe(t,e,r,B,a,n,A);B=y.bytesOffset,i.push(y.pageLOD)}return E.pageLods=i,E}function Le(t,e,r){var a=t.vertexAttributes,n=t.attrLocation,A=a.length;n["aTextureBatchId"+r]=A,a.push({index:A,typedArray:e,componentsPerAttribute:1,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:0})}function pe(t,e,r,n){for(var A=r.length,o=0;o<A;o++)for(var B=r[o],E=B.subName.split("_")[0],i=B.subVertexOffsetArr,C=0;C<i.length;C++){var s=i[C],y=s.geoName,l=s.offset,u=s.count,P=s.texUnitIndex,c=e[y].vertexPackage.verticesCount,f=n[y];a.e(f)||(f=n[y]={});var d=f[P];a.e(d)||(d=f[P]=new Float32Array(c),p.d(d,-1));var L=a.e(t)?t[E]:o;p.d(d,L,l,l+u)}}function Te(t,e,r){var a=t.vertexAttributes,n=t.attrLocation,A=a.length;n[1===r?"instanceId":"batchId"]=A,a.push({index:A,typedArray:e,componentsPerAttribute:1,componentDatatype:C.ComponentDatatype.FLOAT,offsetInBytes:0,strideInBytes:0,instanceDivisor:r})}function De(t,e,r,n,A){var o=0,B=t,E=e.getUint32(o+r,!0);o+=Uint32Array.BYTES_PER_ELEMENT;for(var i=0;i<E;i++){var C=Gt(e,r,B,o),s=C.string;o=C.bytesOffset;var y=e.getUint32(o+r,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var u={};n[s].pickInfo=u;var P=n[s].edgeGeometry;if(-1==n[s].vertexPackage.instanceIndex){for(var c=new Float32Array(n[s].vertexPackage.verticesCount),f=0;f<y;f++){var d=e.getUint32(o+r,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var L=e.getUint32(o+r,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var T=0,D=0;u[d]={batchId:f};for(var g=0;g<L;g++)D=e.getUint32(o+r,!0),o+=Uint32Array.BYTES_PER_ELEMENT,T=e.getUint32(o+r,!0),o+=Uint32Array.BYTES_PER_ELEMENT,p.d(c,f,D,D+T);u[d].vertexColorOffset=D,u[d].vertexCount=T}Te(n[s].vertexPackage,c,void 0)}else{var F=n[s].vertexPackage.instanceCount;n[s].vertexPackage.instanceBuffer,n[s].vertexPackage.instanceMode;var I=new Float32Array(F),M=0;for(f=0;f<y;f++){var m=e.getUint32(o+r,!0);o+=Uint32Array.BYTES_PER_ELEMENT;L=e.getUint32(o+r,!0);o+=Uint32Array.BYTES_PER_ELEMENT;for(g=0;g<L;g++){var v=e.getUint32(o+r,!0);if(o+=Uint32Array.BYTES_PER_ELEMENT,I[M]=M,void 0===u[m]&&(u[m]={vertexColorCount:1,instanceIds:[],vertexColorOffset:M}),u[m].instanceIds.push(v),M++,3===A){T=e.getUint32(o+r,!0);o+=Uint32Array.BYTES_PER_ELEMENT}}}Te(n[s].vertexPackage,I,1)}P=n[s].edgeGeometry;if(a.e(P)){var _,S,O=P.regular.instancesData,N=l._0x5598e9.RegularInstanceStride;if(a.e(O))for(S=O.length,_=0;_<S;_+=N){var h=O[_+9];O[_+9]=c[h]}var R=P.silhouette.instancesData;if(N=l._0x5598e9.SilhouetteInstanceStride,a.e(R))for(S=R.length,_=0;_<S;_+=N){h=R[_+12];R[_+12]=c[h]}}}}function ge(t){return t<1e-10&&t>-1e-10}function Fe(t,e,r,n,A,o,B,E){var i=new DataView(t),C=new Uint8Array(t),y=i.getUint32(r,!0);r+=Uint32Array.BYTES_PER_ELEMENT;var l=s.a(C,r,y);l=l.replace(/(\.s3mblock)|(\.s3mbz)|(\.s3mb)/gi,""),r+=y;var u=i.getUint32(r,!0);r+=Uint32Array.BYTES_PER_ELEMENT;for(var P=0;P<u;P++){var c={},f=i.getFloat32(r,!0);r+=Float32Array.BYTES_PER_ELEMENT;var p=i.getUint16(r,!0);r+=Uint16Array.BYTES_PER_ELEMENT,c.rangeMode=p,c.rangeList=f;var T={};T.x=i.getFloat64(r,!0),r+=Float64Array.BYTES_PER_ELEMENT,T.y=i.getFloat64(r,!0),r+=Float64Array.BYTES_PER_ELEMENT,T.z=i.getFloat64(r,!0),r+=Float64Array.BYTES_PER_ELEMENT;var D=i.getFloat64(r,!0);r+=Float64Array.BYTES_PER_ELEMENT,c.boundingSphere={center:T,radius:D},y=i.getUint32(r,!0),r+=Uint32Array.BYTES_PER_ELEMENT;var g=s.a(C,r,y);r+=y,g=ce(g=g.replace(/(\.s3mblock)|(\.s3mbz)|(\.s3mb)/gi,"")),c.childTile=g}var F={},I=i.getFloat32(r,!0);r+=Float32Array.BYTES_PER_ELEMENT;I>=3&&(i.getUint32(r,!0),r+=Uint32Array.BYTES_PER_ELEMENT),i.getUint32(r,!0),r+=Uint32Array.BYTES_PER_ELEMENT;var M=i.getUint32(r,!0);r+=Uint32Array.BYTES_PER_ELEMENT;var m=new Uint8Array(t,r,M),v=r+M,_=L.pako.inflate(m).buffer;E.push(_),i=new DataView(_);C=new Uint8Array(_);r=0;var S=i.getUint32(r,!0),O=bt(i,_,r+=Uint32Array.BYTES_PER_ELEMENT),N=O.buffer;r=O.byteOffset;var h=de(I,N,i,O.dataViewByteOffset),R=r%4;0!==R&&(r+=4-R),ye((O=bt(i,_,r)).buffer,i,O.dataViewByteOffset,F,!1,void 0,void 0,I),r=O.byteOffset,3!==I&&((O=bt(i,_,r)).buffer,r=O.byteOffset);var b={};!function(t,e,r,n,A,o,B,E,i,C){var y=E,l=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;for(var u={},P=0;P<l;P++){var c=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var f=s.a(o,y-E,c),L=(y+=c)%4;0!==L&&(y+=4-L),B.getUint32(y,!0),y+=Uint32Array.BYTES_PER_ELEMENT;var p=B.getUint8(y,!0);y+=Uint8Array.BYTES_PER_ELEMENT;var T=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var D=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var g=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var F=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var I,M=B.getUint32(y,!0);if(y+=Uint32Array.BYTES_PER_ELEMENT,n&&p){var m=y-E;I=o.subarray(m,m+F),y+=F}var v=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;for(var _=[],S=0;S<v;S++){c=B.getUint32(y,!0),y+=Uint32Array.BYTES_PER_ELEMENT;var O=s.a(o,y-E,c);y+=c,_.push(O),r[O]=f}var N=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var h=[];for(S=0;S<N;S++){c=B.getUint32(y,!0),y+=Uint32Array.BYTES_PER_ELEMENT;var R=s.a(o,y-E,c);y+=c,h.push(R)}var b=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var G=[],x=void 0,U=f;if(n)x=e[f]={};else{var K=r[f];for(U=K;a.e(K)&&K!==f;)U=K,K=r[K];a.e(U)&&(x=e[U])}var H=0;for(S=0;S<b;S++){c=B.getUint32(y,!0),y+=Uint32Array.BYTES_PER_ELEMENT;var w=s.a(o,y-E,c);if(y+=c,n){var V=w.split("_")[0];a.e(x[V])?H++:x[V]=S-H}var Y=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var J=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var k=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var W=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var Z=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;for(var X=[],Q=0;Q<Z;Q++){c=B.getUint32(y,!0),y+=Uint32Array.BYTES_PER_ELEMENT;var z=s.a(o,y-E,c);y+=c;var j=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var q=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT;var $=B.getUint32(y,!0);y+=Uint32Array.BYTES_PER_ELEMENT,X.push({geoName:z,offset:j,count:q,texUnitIndex:$})}G.push({subName:w,offsetX:Y,offsetY:J,width:k,height:W,subVertexOffsetArr:X})}pe(x,t,G,u);var tt=!1;a.e(I)&&g===d.S3MPixelFormat.CRN_DXT5&&pt&&(I=Tt({data:I},C).bufferView,tt=!0),i[f]={id:f,rootTextureName:U,width:T,height:D,compressType:g,size:F,format:M,textureData:I,subTexInfos:G,requestNames:h,isDXT:tt}}for(var z in u)if(u.hasOwnProperty(z)){var et=t[z].vertexPackage,rt=u[z];for(var $ in rt)rt.hasOwnProperty($)&&Le(et,rt[$],$)}}(F,n,A,o,0,(O=bt(i,_,r)).buffer,i,O.dataViewByteOffset,b,E),r=O.byteOffset;var G=i.getUint32(r,!0);r+=Uint32Array.BYTES_PER_ELEMENT;var x=C.subarray(r,r+G),U=s.a(x);r+=G;var K=JSON.parse(U);(3===I&&(S=i.getUint32(r,!0),r+=Uint32Array.BYTES_PER_ELEMENT),(S>)==gt)&&(De((O=bt(i,_,r)).buffer,i,O.dataViewByteOffset,F,I),r=O.byteOffset);if(1==I){var H=h.pageLods,w=!0;for(P=0;P<H.length;P++){var V=H[P];w=""===V.childTile;for(var Y=V.geodes,J=0;J<Y.length;J++)for(var k=Y[J].skeletonNames,W=0;W<k.length;W++){var Z=k[W];if(w){var X=F[Z].vertexPackage;X.boundingSphere=$.calcBoundingSphereInWorker(1,X)}}}}B[l]={result:!0,groupNode:h,geoPackage:F,matrials:K,texturePackage:b,version:st.S3M4,dataVersion:I,rootBatchIdMap:n,ancestorMap:A},v<e&&Fe(t,e,v,n,A,!1,B,E)}function Ie(e,r){var n=e.buffer;if(re=e.ellipsoid,e.isOSGB){if(a.e(Ot)||new Promise((function(e,r){t(["./OSGBToS3M-46fd1304"],e,r)})).then((function(t){(Ot=t.default).onRuntimeInitialized=function(){Nt=!0},ht=Ot.cwrap("OSGBToS3MB","number",["number","number","number","number"])})),!Nt)return null;var A;switch(e.suffix){case"dae":case"DAE":A=4;break;case"x":case"X":A=2;break;default:A=0}n=function(t,e,r){var a=Ot._malloc(20*e),n=Ot._malloc(Uint8Array.BYTES_PER_ELEMENT*e);Ot.HEAPU8.set(t,n/Uint8Array.BYTES_PER_ELEMENT);var A=ht(n,e,a,r),o=new Uint8Array(Ot.HEAPU8.buffer,a,A);return t=null,t=new Uint8Array(o).buffer,Ot._free(a),Ot._free(n),t}(new Uint8Array(n),n.byteLength,A)}var o=e.isS3MZ,B=e.fileType,E=e.supportCompressType,i=e.bVolume,C=e.isS3MBlock,y=e.modelMatrix,u=e.materialType,P=e.isCoverImageryLayer,c=e.transformPar,f=null,p=null,T=null;if(i&&e.volbuffer.byteLength<8&&(i=!1),i){var D=e.volbuffer,g=new Uint8Array(D,8),F=L.pako.inflate(g).buffer,I=new Float64Array(F,0,1),M=new Uint32Array(F,48,1);if(0===I[0]||3200===M[0]||3201===M[0]){var m=0;0==I[0]&&(m=8),r.push(F);var v=new Float64Array(F,m,6),_=v[0],S=v[1],O=v[2],N=v[3],h=v[4]<v[5]?v[4]:v[5],R=v[4]>v[5]?v[4]:v[5];p={left:_,top:S,right:O,bottom:N,minHeight:h,maxHeight:R,width:(f=new Rt(_,N,O,S,h,R)).width,length:f.length,height:f.height};var b=new Uint32Array(F,48+m,7),G=b[0],x=b[1],U=b[2],K=b[3];T={nFormat:G,nSideBlockCount:x,nBlockLength:U,nLength:K,nWidth:b[4],nHeight:b[5],nDepth:b[6],imageArray:new Uint8Array(F,76+m,K*K*4)}}}var H=0,w={};w.ignoreNormal=e.ignoreNormal;var V=e.rootBatchIdMap||{},Y=e.ancestorMap||{},J={},k=new DataView(n),W=k.getFloat32(H,!0);if(H+=Float32Array.BYTES_PER_ELEMENT,C)return k.getUint32(H,!0),H+=Uint32Array.BYTES_PER_ELEMENT,Fe(n,n.byteLength,H,V,Y,e.isRoot,J,r),J;var Z=!1,X=0;if(W>=3&&(X=k.getUint32(H,!0),H+=Uint32Array.BYTES_PER_ELEMENT),W>=2&&(k.getUint32(H,!0),H+=Uint32Array.BYTES_PER_ELEMENT),ge(W-1)||ge(W-2)||ge(W-3)||W>2.09&&W<2.11){var Q=k.getUint32(H,!0);H+=Uint32Array.BYTES_PER_ELEMENT;var z=new Uint8Array(n,H,Q);W>=3&&0===X?n=z.buffer:(n=L.pako.inflate(z).buffer,H=0),r.push(n),k=new DataView(n)}else if(W>1.199&&W<1.201){Q=k.getUint32(H,!0);H+=Uint32Array.BYTES_PER_ELEMENT,r.push(n)}else{Z=!0,H=0;Q=k.getInt32(H,!0);if(H+=Int32Array.BYTES_PER_ELEMENT,H+=Uint8Array.BYTES_PER_ELEMENT*Q,o){k.getUint32(H,!0),H+=Uint32Array.BYTES_PER_ELEMENT;g=new Uint8Array(n,H);n=L.pako.inflate(g).buffer,r.push(n),k=new DataView(n),H=0}}var j=k.getUint32(H,!0),q=bt(k,n,H+=Uint32Array.BYTES_PER_ELEMENT),tt=q.buffer;H=q.byteOffset;var et={},rt=de(W,tt,k,q.dataViewByteOffset,et,c),at=H%4;0!==at&&(H+=4-at);var nt=(q=bt(k,n,H)).buffer,At=W>2.09&&3!==W,ot=e.sceneMode,Bt=e.isMercatorProjection;if(ye(nt,k,q.dataViewByteOffset,w,Z,r,At,W,y,et,P,e.fileType,c,ot,Bt),H=q.byteOffset,At)for(var Et=0;Et<rt.pageLods.length;Et++)for(var it=rt.pageLods[Et],Ct=it.geodes,yt=0;yt<Ct.length;yt++)for(var lt=Ct[yt].skeletonNames,ut=0;ut<lt.length;ut++){var Pt=lt[ut];a.e(w[Pt].max)&&(a.e(it.max)?(it.max.x=Math.max(w[Pt].max.x,it.max.x),it.max.y=Math.max(w[Pt].max.y,it.max.y),it.max.z=Math.max(w[Pt].max.z,it.max.z),it.min.x=Math.min(w[Pt].min.x,it.min.x),it.min.y=Math.min(w[Pt].min.y,it.min.y),it.min.z=Math.min(w[Pt].min.z,it.min.z)):(it.max=w[Pt].max,it.min=w[Pt].min))}3!==W&&((q=bt(k,n,H)).buffer,H=q.byteOffset);var ct={};!function(t,e,r,a,n,A){var o=0,B=r.getUint32(o+a,!0);o+=Uint32Array.BYTES_PER_ELEMENT;for(var E=0;E<B;E++){var i=Gt(r,a,e,o),C=i.string,s=(o=i.bytesOffset)%4;0!==s&&(o+=4-s);var y=r.getUint32(o+a,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var u=r.getUint32(o+a,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var P=r.getUint32(o+a,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var c=r.getUint32(o+a,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var f=r.getUint32(o+a,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var L=r.getUint32(o+a,!0);o+=Uint32Array.BYTES_PER_ELEMENT;var p=e.subarray(o,o+f);o+=f;var T=null,D=c;c===l.S3MCompressType.enrS3TCDXTN&&1!=t?(l.L.decode(T,u,P,p,L),L>d.S3MPixelFormat.BGR||L===d.S3MPixelFormat.LUMINANCE_ALPHA?(T=new Uint8Array(u*P*4),p=new Uint8Array(e.buffer,p.byteOffset,u*P)):(T=new Uint16Array(u*P),p=new Uint16Array(e.buffer,p.byteOffset,f/2)),l.L.decode(T,u,P,p,L),A.push(T.buffer),c=0):T=p,n[C]={id:C,width:u,height:P,compressType:c,oriCompressType:D,nFormat:L,imageBuffer:T,mipmapLevel:y}}}(E,(q=bt(k,n,H)).buffer,k,q.dataViewByteOffset,ct,r),H=q.byteOffset;var ft=k.getUint32(H,!0);H+=Uint32Array.BYTES_PER_ELEMENT;var dt=new Uint8Array(n).subarray(H,H+ft),Lt=s.a(dt);H+=ft,Lt=Lt.replace(/\n\0/,"");var pt=JSON.parse(Lt);(3===W&&(j=k.getUint32(H,!0),H+=Uint32Array.BYTES_PER_ELEMENT),(j>)==gt)&&De((q=bt(k,n,H)).buffer,k,q.dataViewByteOffset,w,W);if(1==W){var Tt=rt.pageLods,Dt=!0;for(Et=0;Et<Tt.length;Et++){var Ft=Tt[Et];Dt=""===Ft.childTile;for(var It=Ft.geodes,Mt=0;Mt<It.length;Mt++){lt=It[Mt].skeletonNames;for(var mt=0;mt<lt.length;mt++){var vt=lt[mt];if(Dt){var _t=w[vt].vertexPackage;_t.boundingSphere=$.calcBoundingSphereInWorker(B,_t)}}}}}return"BatchPBR"===u&&function(t,e,r){for(var n in delete t.ignoreNormal,t)if(t.hasOwnProperty(n)){var A=t[n],o=A.arrIndexPackage;if(o.length<1)continue;if(1===o.length||2===o.length&&13===o[1].primitiveType){var B=A.vertexPackage.attrLocation.aTextureCoordMatrix;if(void 0!==B){if((E=(O=A.vertexPackage.vertexAttributes[B]).typedArray)[0]<0)continue}else if(void 0!==(B=A.vertexPackage.attrLocation.aTextureCoordMatrix||A.vertexPackage.attrLocation.aTexCoord0)){O=A.vertexPackage.vertexAttributes[B];var E=new Float32Array(O.typedArray.buffer,O.typedArray.byteOffset,O.typedArray.byteLength/4);if(3===O.componentsPerAttribute&&E[2]<0)continue}}var i,C,s=0,y={},u=void 0;for(i=0,C=o.length;i<C;i++)13!==(N=o[i]).primitiveType?s+=0===N.indexType?N.indicesTypedArray.byteLength/2:N.indicesTypedArray.byteLength/4:u=o[i],0===i&&(y.indicesCount=0,y.indexType=o[i].indexType,y.primitiveType=o[i].primitiveType,y.materialCode=o[i].materialCode);y.indicesCount=s;var P=A.vertexPackage.verticesCount>65535?new Uint32Array(s):new Uint16Array(s),c=0;for(i=0,C=o.length;i<C;i++)if(13!==(N=o[i]).primitiveType){var f=0===N.indexType?Uint16Array:Uint32Array,d=0===N.indexType?N.indicesTypedArray.byteLength/2:N.indicesTypedArray.byteLength/4,L=new f(N.indicesTypedArray.buffer,N.indicesTypedArray.byteOffset,d);P.set(L,c),c+=L.length}y.indicesTypedArray=P,A.arrIndexPackage=[y],a.e(u)&&(A.arrIndexPackage.push(u),A.edgeGeometry=l._0x5598e9.createEdgeDataByIndices(A.vertexPackage,u));var p=2*o.length*4,T=new Float32Array(p),D={};for(i=0,C=r.material.length;i<C;i++)D[(h=r.material[i].material).id]=h;for(i=0,C=o.length;i<C;i++)if(h=D[(N=o[i]).materialCode]){var g=h.pbrMetallicRoughness;if(g){T[8*i]=g.metallicFactor,T[8*i+1]=g.roughnessFactor,T[8*i+2]=h.alphaCutoff;var F=""===h.alphaMode?0:1,I="none"===h.cullMode?0:1;T[8*i+3]=I|F<<16,T[8*i+4]=g.emissiveFactor.x,T[8*i+5]=g.emissiveFactor.y,T[8*i+6]=g.emissiveFactor.z,T[8*i+7]=0,h.pbrIndex=i}}var M="PBRMaterialParam_"+n;for(i=0,C=r.material.length;i<C;i++)if((h=r.material[i].material).id===y.materialCode){h.textureunitstates.push({textureunitstate:{addressmode:{u:0,v:0,w:0},filteringoption:0,filtermax:2,filtermin:2,id:M,texmodmatrix:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],url:""}});break}var m,v,_=A.vertexPackage,S=_.attrLocation.aTexCoord1;if(void 0!==S){var O=_.vertexAttributes[S];m=new Float32Array(2*_.verticesCount),O.typedArray=m}else m=new Float32Array(2*_.verticesCount),S=_.vertexAttributes.length,_.attrLocation.aTexCoord1=S,_.vertexAttributes.push({index:S,typedArray:m,componentsPerAttribute:2,componentDatatype:5126,offsetInBytes:0,strideInBytes:8,normalize:!1});for(void 0!==(S=_.attrLocation.aColor)&&(v=(O=_.vertexAttributes[S]).typedArray),i=0,C=o.length;i<C;i++){var N,h;if((h=D[(N=o[i]).materialCode])&&h.pbrMetallicRoughness)for(var R=h.pbrMetallicRoughness.baseColor,b=void 0!==v,G=h.pbrIndex,x=(P=N.indicesTypedArray,0),U=(P=0===N.indexType?new Uint16Array(P.buffer,P.byteOffset,P.byteLength/2):new Uint32Array(P.buffer,P.byteOffset,P.byteLength/4)).length;x<U;x++){var K=P[x];m[2*K]=G,b&&(v[4*K]=255*R.x,v[4*K+1]=255*R.y,v[4*K+2]=255*R.z,v[4*K+3]=255*R.w)}}e[M]={id:M,width:2*o.length,height:1,compressType:0,nFormat:25,imageBuffer:T,mipmapLevel:0}}}(w,ct,pt),{result:!0,groupNode:rt,geoPackage:w,matrials:pt,texturePackage:ct,version:st.S3M4,dataVersion:W,volImageBuffer:T,volBounds:p}}function Me(){(a.e(dt)||"undefined"==typeof WebAssembly)&&a.e(Dt)&&(dt.onRuntimeInitialized=function(){pt=!0},self.onmessage=e(Ie),self.postMessage(!0))}return function(r){if("undefined"==typeof WebAssembly)return self.onmessage=e(Ie),void self.postMessage(!0);var A=r.data.webAssemblyConfig;return a.e(A)?n.s.isInternetExplorer()?t([y.n("ThirdParty/Workers/ie-webworker-promise-polyfill.js")],(function(e){return self.Promise=e,-1!==A.modulePath.indexOf("crunch")?t([A.modulePath],(function(t){a.e(A.wasmBinaryFile)?(a.e(t)||(t=self.Module),dt=t,Me()):(dt=t,Me())})):t([A.modulePath],(function(t){a.e(A.wasmBinaryFile)?(a.e(t)||(t=self.DracoDecoderModule),t(A).then((function(t){Dt=t,Me()}))):(Dt=t(),Me())}))})):-1!==A.modulePath.indexOf("crunch")?t([A.modulePath],(function(t){a.e(A.wasmBinaryFile)?(a.e(t)||(t=self.Module),dt=t,Me()):(dt=t,Me())})):t([A.modulePath],(function(t){a.e(A.wasmBinaryFile)?(a.e(t)||(t=self.DracoDecoderModule),t(A).then((function(t){Dt=t,Me()}))):(Dt=t(),Me())})):void 0}}));
|