@flyfish-group/file-viewer3 1.0.19 → 1.0.20

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.
Files changed (265) hide show
  1. package/README.md +17 -16
  2. package/dist/components/3MFLoader.js +1 -1
  3. package/dist/components/AMFLoader.js +1 -1
  4. package/dist/components/AudioViewer.js +1 -1
  5. package/dist/components/CadViewer.js +1 -1
  6. package/dist/components/CodeViewer.js +1 -1
  7. package/dist/components/ColladaLoader.js +1 -1
  8. package/dist/components/DrawingViewer.js +1 -1
  9. package/dist/components/EdaViewer.js +1 -1
  10. package/dist/components/EmailViewer.js +1 -1
  11. package/dist/components/EpubViewer.js +1 -1
  12. package/dist/components/FBXLoader.js +1 -1
  13. package/dist/components/GLTFLoader.js +1 -1
  14. package/dist/components/ImageViewer.js +1 -1
  15. package/dist/components/KMZLoader.js +1 -1
  16. package/dist/components/MarkdownViewer.js +1 -1
  17. package/dist/components/ModelViewer.js +1 -1
  18. package/dist/components/OBJLoader.js +1 -1
  19. package/dist/components/OfdViewer.js +1 -1
  20. package/dist/components/PCDLoader.js +1 -1
  21. package/dist/components/PLYLoader.js +1 -1
  22. package/dist/components/PdfView.js +206 -207
  23. package/dist/components/PptxRender.js +1 -1
  24. package/dist/components/STLLoader.js +1 -1
  25. package/dist/components/TDSLoader.js +1 -1
  26. package/dist/components/TypstViewer.js +1671 -0
  27. package/dist/components/USDLoader.js +1 -1
  28. package/dist/components/UmdViewer.js +1 -1
  29. package/dist/components/VRMLLoader.js +1 -1
  30. package/dist/components/VTKLoader.js +1 -1
  31. package/dist/components/XYZLoader.js +1 -1
  32. package/dist/components/XlsxTable.js +1 -1
  33. package/dist/components/__vite-browser-external.js +1 -1
  34. package/dist/components/_plugin-vue_export-helper.js +1 -1
  35. package/dist/components/ar-SA-G6X2FPQ2.js +1 -1
  36. package/dist/components/arc.js +1 -1
  37. package/dist/components/architecture-7EHR7CIX.js +1 -1
  38. package/dist/components/architectureDiagram-3BPJPVTR.js +1 -1
  39. package/dist/components/archive.js +1 -1
  40. package/dist/components/asyncToGenerator.js +1 -1
  41. package/dist/components/audio.js +1 -1
  42. package/dist/components/az-AZ-76LH7QW2.js +1 -1
  43. package/dist/components/bash.js +1 -1
  44. package/dist/components/bg-BG-XCXSNQG7.js +1 -1
  45. package/dist/components/blockDiagram-GPEHLZMM.js +1 -1
  46. package/dist/components/bn-BD-2XOGV67Q.js +1 -1
  47. package/dist/components/c4Diagram-AAUBKEIU.js +1 -1
  48. package/dist/components/ca-ES-6MX7JW3Y.js +1 -1
  49. package/dist/components/cad.js +1 -1
  50. package/dist/components/cfb.js +1 -1
  51. package/dist/components/channel.js +1 -1
  52. package/dist/components/chunk-2J33WTMH.js +1 -1
  53. package/dist/components/chunk-3OPIFGDE.js +1 -1
  54. package/dist/components/chunk-4BX2VUAB.js +1 -1
  55. package/dist/components/chunk-55IACEB6.js +1 -1
  56. package/dist/components/chunk-5ZQYHXKU.js +1 -1
  57. package/dist/components/chunk-6U3AYISY.js +1 -1
  58. package/dist/components/chunk-727SXJPM.js +1 -1
  59. package/dist/components/chunk-AGHRB4JF.js +1 -1
  60. package/dist/components/chunk-AQP2D5EJ.js +1 -1
  61. package/dist/components/chunk-BSJP7CBP.js +1 -1
  62. package/dist/components/chunk-CSCIHK7Q.js +1 -1
  63. package/dist/components/chunk-FMBD7UC4.js +1 -1
  64. package/dist/components/chunk-K2UTITRG.js +1 -1
  65. package/dist/components/chunk-KSCS5N6A.js +1 -1
  66. package/dist/components/chunk-L5ZTLDWV.js +1 -1
  67. package/dist/components/chunk-LZXEDZCA.js +1 -1
  68. package/dist/components/chunk-ND2GUHAM.js +1 -1
  69. package/dist/components/chunk-NZK2D7GU.js +1 -1
  70. package/dist/components/chunk-O5CBEL6O.js +1 -1
  71. package/dist/components/chunk-QZHKN3VN.js +1 -1
  72. package/dist/components/chunk-SRAX5OIU.js +1 -1
  73. package/dist/components/chunk-WU5MYG2G.js +1 -1
  74. package/dist/components/chunk-XPW4576I.js +1 -1
  75. package/dist/components/chunk-Z3N5DIM6.js +1 -1
  76. package/dist/components/chunk-ZUYEQ4TG.js +1 -1
  77. package/dist/components/chunk.js +1 -1
  78. package/dist/components/classDiagram-4FO5ZUOK.js +1 -1
  79. package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -1
  80. package/dist/components/compiler.js +1 -0
  81. package/dist/components/core.js +1 -1
  82. package/dist/components/cose-bilkent-S5V4N54A.js +1 -1
  83. package/dist/components/cpp.js +1 -1
  84. package/dist/components/cs-CZ-2BRQDIVT.js +1 -1
  85. package/dist/components/csharp.js +1 -1
  86. package/dist/components/css.js +1 -1
  87. package/dist/components/cytoscape.esm.js +1 -1
  88. package/dist/components/da-DK-5WZEPLOC.js +1 -1
  89. package/dist/components/dagre-BM42HDAG.js +1 -1
  90. package/dist/components/dagre.js +1 -1
  91. package/dist/components/de-DE-XR44H4JA.js +1 -1
  92. package/dist/components/defaultLocale.js +1 -1
  93. package/dist/components/defineProperty.js +1 -1
  94. package/dist/components/diagram-2AECGRRQ.js +1 -1
  95. package/dist/components/diagram-5GNKFQAL.js +1 -1
  96. package/dist/components/diagram-KO2AKTUF.js +1 -1
  97. package/dist/components/diagram-LMA3HP47.js +1 -1
  98. package/dist/components/diagram-OG6HWLK6.js +1 -1
  99. package/dist/components/diff.js +1 -1
  100. package/dist/components/directory-open-01563666.js +1 -1
  101. package/dist/components/directory-open-4ed118d0.js +1 -1
  102. package/dist/components/dist.js +1 -1
  103. package/dist/components/dist2.js +1 -1
  104. package/dist/components/dist3.js +1 -1
  105. package/dist/components/docx-preview.js +1 -1
  106. package/dist/components/drawing.js +1 -1
  107. package/dist/components/ebook.js +1 -1
  108. package/dist/components/eda.js +1 -1
  109. package/dist/components/el-GR-BZB4AONW.js +1 -1
  110. package/dist/components/email.js +1 -1
  111. package/dist/components/en-B4ZKOASM.js +1 -1
  112. package/dist/components/erDiagram-TEJ5UH35.js +1 -1
  113. package/dist/components/es-ES-U4NZUMDT.js +1 -1
  114. package/dist/components/eu-ES-A7QVB2H4.js +1 -1
  115. package/dist/components/eventmodeling-FCH6USID.js +1 -1
  116. package/dist/components/fa-IR-HGAKTJCU.js +1 -1
  117. package/dist/components/fflate.module.js +1 -1
  118. package/dist/components/fi-FI-Z5N7JZ37.js +1 -1
  119. package/dist/components/file-open-002ab408.js +1 -1
  120. package/dist/components/file-open-7c801643.js +1 -1
  121. package/dist/components/file-save-3189631c.js +1 -1
  122. package/dist/components/file-save-745eba88.js +1 -1
  123. package/dist/components/flowDiagram-I6XJVG4X.js +1 -1
  124. package/dist/components/fr-FR-RHASNOE6.js +1 -1
  125. package/dist/components/ganttDiagram-6RSMTGT7.js +1 -1
  126. package/dist/components/gitGraph-WXDBUCRP.js +1 -1
  127. package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -1
  128. package/dist/components/gl-ES-HMX3MZ6V.js +1 -1
  129. package/dist/components/global-compiler.js +1 -0
  130. package/dist/components/global-renderer.js +1 -0
  131. package/dist/components/go.js +1 -1
  132. package/dist/components/graphlib.js +1 -1
  133. package/dist/components/he-IL-6SHJWFNN.js +1 -1
  134. package/dist/components/hi-IN-IWLTKZ5I.js +1 -1
  135. package/dist/components/hu-HU-A5ZG7DT2.js +1 -1
  136. package/dist/components/id-ID-SAP4L64H.js +1 -1
  137. package/dist/components/image-GAAHSSAO.js +1 -1
  138. package/dist/components/image-blob-reduce.esm.js +1 -1
  139. package/dist/components/image.js +1 -1
  140. package/dist/components/info-J43DQDTF.js +1 -1
  141. package/dist/components/infoDiagram-5YYISTIA.js +1 -1
  142. package/dist/components/ini.js +1 -1
  143. package/dist/components/init.js +1 -1
  144. package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -1
  145. package/dist/components/it-IT-JPQ66NNP.js +1 -1
  146. package/dist/components/ja-JP-DBVTYXUO.js +1 -1
  147. package/dist/components/java.js +1 -1
  148. package/dist/components/javascript.js +1 -1
  149. package/dist/components/journeyDiagram-JHISSGLW.js +1 -1
  150. package/dist/components/json.js +1 -1
  151. package/dist/components/jszip.min.js +1 -1
  152. package/dist/components/kaa-6HZHGXH3.js +1 -1
  153. package/dist/components/kab-KAB-ZGHBKWFO.js +1 -1
  154. package/dist/components/kanban-definition-UN3LZRKU.js +1 -1
  155. package/dist/components/katex.js +1 -1
  156. package/dist/components/kk-KZ-P5N5QNE5.js +1 -1
  157. package/dist/components/km-KH-HSX4SM5Z.js +1 -1
  158. package/dist/components/ko-KR-MTYHY66A.js +1 -1
  159. package/dist/components/ku-TR-6OUDTVRD.js +1 -1
  160. package/dist/components/lib.js +1 -1
  161. package/dist/components/libarchive.js +1 -1
  162. package/dist/components/linear.js +1 -1
  163. package/dist/components/lt-LT-XHIRWOB4.js +1 -1
  164. package/dist/components/lv-LV-5QDEKY6T.js +1 -1
  165. package/dist/components/markdown.js +1 -1
  166. package/dist/components/md.js +1 -1
  167. package/dist/components/mermaid-parser.core.js +1 -1
  168. package/dist/components/mindmap-definition-RKZ34NQL.js +1 -1
  169. package/dist/components/model.js +1 -1
  170. package/dist/components/mp4.js +1 -1
  171. package/dist/components/mr-IN-CRQNXWMA.js +1 -1
  172. package/dist/components/my-MM-5M5IBNSE.js +1 -1
  173. package/dist/components/nb-NO-T6EIAALU.js +1 -1
  174. package/dist/components/nestedRender.js +1 -1
  175. package/dist/components/nl-NL-IS3SIHDZ.js +1 -1
  176. package/dist/components/nn-NO-6E72VCQL.js +1 -1
  177. package/dist/components/objectSpread2.js +1 -1
  178. package/dist/components/objectWithoutProperties.js +1 -1
  179. package/dist/components/oc-FR-POXYY2M6.js +1 -1
  180. package/dist/components/ofd.js +1 -1
  181. package/dist/components/ofd2.js +1 -1
  182. package/dist/components/ordinal.js +1 -1
  183. package/dist/components/pa-IN-N4M65BXN.js +1 -1
  184. package/dist/components/packet-YPE3B663.js +1 -1
  185. package/dist/components/pdf.js +1 -1
  186. package/dist/components/percentages-BXMCSKIN.js +1 -1
  187. package/dist/components/php.js +1 -1
  188. package/dist/components/pica.js +1 -1
  189. package/dist/components/pie-LRSECV5Y.js +1 -1
  190. package/dist/components/pie.js +1 -1
  191. package/dist/components/pieDiagram-4H26LBE5.js +1 -1
  192. package/dist/components/pl-PL-T2D74RX3.js +1 -1
  193. package/dist/components/postal-mime.js +1 -1
  194. package/dist/components/pptx.js +1 -1
  195. package/dist/components/printLayout.js +1 -1
  196. package/dist/components/prod.js +1 -1
  197. package/dist/components/pt-BR-5N22H2LF.js +1 -1
  198. package/dist/components/pt-PT-UZXXM6DQ.js +1 -1
  199. package/dist/components/python.js +1 -1
  200. package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -1
  201. package/dist/components/radar-GUYGQ44K.js +1 -1
  202. package/dist/components/renderer.js +1 -0
  203. package/dist/components/requirementDiagram-4Y6WPE33.js +1 -1
  204. package/dist/components/ro-RO-JPDTUUEW.js +1 -1
  205. package/dist/components/rough.esm.js +1 -1
  206. package/dist/components/roundRect.js +1 -1
  207. package/dist/components/ru-RU-B4JR7IUQ.js +1 -1
  208. package/dist/components/rust.js +1 -1
  209. package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -1
  210. package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -1
  211. package/dist/components/shared.js +1 -1
  212. package/dist/components/shared2.js +1 -1
  213. package/dist/components/si-LK-N5RQ5JYF.js +1 -1
  214. package/dist/components/sk-SK-C5VTKIMK.js +1 -1
  215. package/dist/components/sl-SI-NN7IZMDC.js +1 -1
  216. package/dist/components/sourceLoading.js +1 -0
  217. package/dist/components/sql.js +1 -1
  218. package/dist/components/src.js +1 -1
  219. package/dist/components/src2.js +1 -1
  220. package/dist/components/stateDiagram-AJRCARHV.js +1 -1
  221. package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -1
  222. package/dist/components/subset-shared.chunk.js +1 -1
  223. package/dist/components/subset-worker.chunk.js +1 -1
  224. package/dist/components/sv-SE-XGPEYMSR.js +1 -1
  225. package/dist/components/ta-IN-2NMHFXQM.js +1 -1
  226. package/dist/components/text.js +1 -1
  227. package/dist/components/th-TH-HPSO5L25.js +1 -1
  228. package/dist/components/three.module.js +1 -1
  229. package/dist/components/time.js +1 -1
  230. package/dist/components/timeline-definition-PNZ67QCA.js +1 -1
  231. package/dist/components/tr-TR-DEFEU3FU.js +1 -1
  232. package/dist/components/treeView-BLDUP644.js +1 -1
  233. package/dist/components/treemap-LRROVOQU.js +1 -1
  234. package/dist/components/typescript.js +1 -1
  235. package/dist/components/typst.js +1 -0
  236. package/dist/components/uk-UA-QMV73CPH.js +1 -1
  237. package/dist/components/umd.js +1 -1
  238. package/dist/components/use.js +1 -1
  239. package/dist/components/util.js +1 -1
  240. package/dist/components/vennDiagram-CIIHVFJN.js +1 -1
  241. package/dist/components/vi-VN-M7AON7JQ.js +1 -1
  242. package/dist/components/wardley-L42UT6IY.js +1 -1
  243. package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -1
  244. package/dist/components/wasm-pack-shim.js +1 -0
  245. package/dist/components/wasm-pack-shim2.js +1 -0
  246. package/dist/components/wasm.js +1 -0
  247. package/dist/components/word.js +1 -1
  248. package/dist/components/worker-ref.js +1 -1
  249. package/dist/components/xlsx.js +1 -1
  250. package/dist/components/xml.js +1 -1
  251. package/dist/components/xychartDiagram-2RQKCTM6.js +1 -1
  252. package/dist/components/yaml.js +1 -1
  253. package/dist/components/zh-CN-LNUGB5OW.js +1 -1
  254. package/dist/components/zh-HK-E62DVLB3.js +1 -1
  255. package/dist/components/zh-TW-RAJ6MFWO.js +1 -1
  256. package/dist/file-viewer3.css +1 -1
  257. package/dist/index.mjs +1 -1
  258. package/dist/src/package/common/sourceLoading.d.ts +10 -0
  259. package/dist/src/package/common/type.d.ts +33 -1
  260. package/dist/src/package/components/FileViewer/useViewerExport.d.ts +2 -1
  261. package/dist/src/package/vendors/pdf/PdfView.vue.d.ts +2 -1
  262. package/dist/src/package/vendors/typst/TypstViewer.vue.d.ts +15 -0
  263. package/dist/src/package/vendors/typst/index.d.ts +8 -0
  264. package/package.json +5 -1
  265. package/dist/components/wrapAsyncGenerator.js +0 -1
@@ -1 +1 @@
1
- const bO=a1;(function(b4,b5){const bE=a1,b6=b4();while(!![]){try{const b7=-parseInt(bE(0x1d9))/0x1+-parseInt(bE(0x1cd))/0x2+-parseInt(bE(0x26a))/0x3*(-parseInt(bE(0x28c))/0x4)+parseInt(bE(0x1d8))/0x5*(parseInt(bE(0x232))/0x6)+parseInt(bE(0x252))/0x7*(-parseInt(bE(0x270))/0x8)+parseInt(bE(0x27b))/0x9+-parseInt(bE(0x211))/0xa*(-parseInt(bE(0x1f6))/0xb);if(b7===b5)break;else b6['push'](b6['shift']());}catch(b8){b6['push'](b6['shift']());}}}(a0,0x8df67));import{n as a2,t}from'./objectSpread2.js';import{$ as a3,A as a4,B as a5,Bt as a6,C as a7,Ct as a8,Dt as a9,E as aa,Ft as ab,G as ac,H as ad,Ht as af,I as ag,K as ah,L as ai,M as aj,Mt as ak,N as al,O as am,Ot as an,P as ao,Pt as ap,R as aq,U as ar,V as as,W as au,X as av,Z as aw,_t as ax,at as ay,bt as az,ct as aA,dt as aB,et as aC,f as aD,ft as aE,gt as aF,ht as aG,it as aH,k as aI,kt as aJ,l as aK,lt as aL,m as aM,o as aN,ot as aO,p as aP,pt as aQ,q as aR,r as aS,s as aT,st as aU,tt as aV,u as aW,ut as aX,vt as aY,wt as aZ,x as b0,yt as b1,z as b2,zt as b3}from'./three.module.js';function N(b4,b5){const bF=a1;if(b5===0x0)return console[bF(0x256)]('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Geometry\x20already\x20defined\x20as\x20triangles.'),b4;if(b5===0x2||b5===0x1){let b6=b4[bF(0x1c7)]();if(b6===null){let ba=[],bb=b4['getAttribute']('position');if(bb!==void 0x0){for(let bc=0x0;bc<bb['count'];bc++)ba['push'](bc);b4['setIndex'](ba),b6=b4['getIndex']();}else return console['error']('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Undefined\x20position\x20attribute.\x20Processing\x20not\x20possible.'),b4;}let b7=b6['count']-0x2,b8=[];if(b5===0x2){for(let bd=0x1;bd<=b7;bd++)b8[bF(0x294)](b6['getX'](0x0)),b8['push'](b6['getX'](bd)),b8['push'](b6['getX'](bd+0x1));}else{for(let bf=0x0;bf<b7;bf++)bf%0x2==0x0?(b8['push'](b6[bF(0x241)](bf)),b8['push'](b6[bF(0x241)](bf+0x1)),b8['push'](b6['getX'](bf+0x2))):(b8['push'](b6['getX'](bf+0x2)),b8[bF(0x294)](b6['getX'](bf+0x1)),b8[bF(0x294)](b6['getX'](bf)));}b8['length']/0x3!==b7&&console['error']('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Unable\x20to\x20generate\x20correct\x20amount\x20of\x20triangles.');let b9=b4['clone']();return b9['setIndex'](b8),b9['clearGroups'](),b9;}else return console['error']('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Unknown\x20draw\x20mode:',b5),b4;}function Ae(b4){let b5=new Map(),b6=new Map(),b7=b4['clone']();return P(b4,b7,function(b8,b9){const bG=a1;b5[bG(0x1f5)](b9,b8),b6['set'](b8,b9);}),b7['traverse'](function(b8){const bH=a1;if(!b8['isSkinnedMesh'])return;let b9=b8,ba=b5['get'](b8),bb=ba['skeleton']['bones'];b9['skeleton']=ba['skeleton'][bH(0x219)](),b9['bindMatrix']['copy'](ba['bindMatrix']),b9['skeleton']['bones']=bb['map'](function(bc){return b6['get'](bc);}),b9['bind'](b9['skeleton'],b9[bH(0x224)]);}),b7;}function P(b4,b5,b6){b6(b4,b5);for(let b7=0x0;b7<b4['children']['length'];b7++)P(b4['children'][b7],b5['children'][b7],b6);}a2();var je=class extends ah{constructor(b4){const bI=a1;super(b4),this[bI(0x1e0)]=null,this['ktx2Loader']=null,this[bI(0x1e3)]=null,this[bI(0x21b)]=[],this['register'](function(b5){return new Ie(b5);}),this['register'](function(b5){return new Le(b5);}),this['register'](function(b5){return new Ke(b5);}),this['register'](function(b5){return new qe(b5);}),this['register'](function(b5){return new Je(b5);}),this['register'](function(b5){return new ze(b5);}),this['register'](function(b5){return new Be(b5);}),this['register'](function(b5){return new Ve(b5);}),this['register'](function(b5){return new He(b5);}),this['register'](function(b5){return new Fe(b5);}),this['register'](function(b5){return new Ue(b5);}),this['register'](function(b5){return new Re(b5);}),this['register'](function(b5){return new Ge(b5);}),this['register'](function(b5){return new We(b5);}),this['register'](function(b5){return new Ne(b5);}),this[bI(0x269)](function(b5){return new L(b5,I['EXT_MESHOPT_COMPRESSION']);}),this['register'](function(b5){return new L(b5,I['KHR_MESHOPT_COMPRESSION']);}),this['register'](function(b5){return new Ye(b5);});}['load'](b4,b5,b6,b7){const bJ=a1;let b8=this,b9;if(this['resourcePath']!=='')b9=this[bJ(0x214)];else{if(this['path']!==''){let bc=aR['extractUrlBase'](b4);b9=aR['resolveURL'](bc,this['path']);}else b9=aR[bJ(0x237)](b4);}this['manager']['itemStart'](b4);let ba=function(bd){const bK=bJ;b7?b7(bd):console['error'](bd),b8[bK(0x1f3)]['itemError'](b4),b8['manager']['itemEnd'](b4);},bb=new a7(this['manager']);bb['setPath'](this[bJ(0x1dd)]),bb['setResponseType']('arraybuffer'),bb['setRequestHeader'](this['requestHeader']),bb['setWithCredentials'](this['withCredentials']),bb['load'](b4,function(bd){try{b8['parse'](bd,b9,function(bf){const bL=a1;b5(bf),b8['manager'][bL(0x1e9)](b4);},ba);}catch(bf){ba(bf);}},b6,ba);}['setDRACOLoader'](b4){return this['dracoLoader']=b4,this;}['setKTX2Loader'](b4){return this['ktx2Loader']=b4,this;}['setMeshoptDecoder'](b4){return this['meshoptDecoder']=b4,this;}['register'](b4){return this['pluginCallbacks']['indexOf'](b4)===-0x1&&this['pluginCallbacks']['push'](b4),this;}['unregister'](b4){return this['pluginCallbacks']['indexOf'](b4)!==-0x1&&this['pluginCallbacks']['splice'](this['pluginCallbacks']['indexOf'](b4),0x1),this;}['parse'](b4,b5,b6,b7){const bM=a1;let b8,b9={},ba={},bb=new TextDecoder();if(typeof b4=='string')b8=JSON['parse'](b4);else{if(b4 instanceof ArrayBuffer){if(bb['decode'](new Uint8Array(b4,0x0,0x4))===R){try{b9[I[bM(0x1ce)]]=new Xe(b4);}catch(bd){b7&&b7(bd);return;}b8=JSON['parse'](b9[I[bM(0x1ce)]]['content']);}else b8=JSON[bM(0x255)](bb['decode'](b4));}else b8=b4;}if(b8['asset']===void 0x0||b8[bM(0x1f9)]['version'][0x0]<0x2){b7&&b7(Error('THREE.GLTFLoader:\x20Unsupported\x20asset.\x20glTF\x20versions\x20>=2.0\x20are\x20supported.'));return;}let bc=new lt(b8,{'path':b5||this['resourcePath']||'','crossOrigin':this['crossOrigin'],'requestHeader':this['requestHeader'],'manager':this[bM(0x1f3)],'ktx2Loader':this['ktx2Loader'],'meshoptDecoder':this['meshoptDecoder']});bc[bM(0x27f)]['setRequestHeader'](this[bM(0x240)]);for(let bf=0x0;bf<this[bM(0x21b)]['length'];bf++){let bg=this['pluginCallbacks'][bf](bc);bg['name']||console['error']('THREE.GLTFLoader:\x20Invalid\x20plugin\x20found:\x20missing\x20name'),ba[bg[bM(0x258)]]=bg,b9[bg['name']]=!0x0;}if(b8[bM(0x23e)])for(let bh=0x0;bh<b8[bM(0x23e)]['length'];++bh){let bi=b8['extensionsUsed'][bh],bj=b8['extensionsRequired']||[];switch(bi){case I['KHR_MATERIALS_UNLIT']:b9[bi]=new Pe();break;case I['KHR_DRACO_MESH_COMPRESSION']:b9[bi]=new Ze(b8,this['dracoLoader']);break;case I[bM(0x277)]:b9[bi]=new Qe();break;case I['KHR_MESH_QUANTIZATION']:b9[bi]=new $e();break;default:bj['indexOf'](bi)>=0x0&&ba[bi]===void 0x0&&console['warn']('THREE.GLTFLoader:\x20Unknown\x20extension\x20\x22'+bi+'\x22.');}}bc[bM(0x1ef)](b9),bc['setPlugins'](ba),bc['parse'](b6,b7);}['parseAsync'](b4,b5){let b6=this;return new Promise(function(b7,b8){b6['parse'](b4,b5,b7,b8);});}};function Me(){let b4={};return{'get':function(b5){return b4[b5];},'add':function(b5,b6){b4[b5]=b6;},'remove':function(b5){delete b4[b5];},'removeAll':function(){b4={};}};}function F(b4,b5,b6){const bN=a1;let b7=b4['json'][bN(0x272)][b5];return b7['extensions']&&b7['extensions'][b6]?b7['extensions'][b6]:null;}function a0(){const dx=['cache','clone','repeat','pluginCallbacks','sheenColorTexture','get','max','attributes','texCoord','light_','material','innerConeAngle','bindMatrix','channel','InterleavedBuffer:','uri','userData','pop','add','specularTexture','extendTexture','assignTexture','buffer','iridescenceIor','DefaultMaterial','revokeObjectURL','71742dqxhqp','loadMaterial','occlusionTexture','then','EXT_texture_webp','extractUrlBase','clearcoatNormalTexture','mode','json','geometry','dispersion','loadNode','extensionsUsed','clearcoatNormalScale','requestHeader','getX','joints','byteLength','normalTexture','slice','min','_getNodeRef','decodePrimitive','target','TRANSLATION','outerConeAngle','camera','string','loadTexture','normal','getDependencies','header','7HkGFKw','setZ','keys','parse','warn','KHR_materials_clearcoat','name','Firefox','SCALE','beforeRoot','extensions','meshCache','isSkinnedMesh','createNodeAttachment','setAttribute','position','transmissionFactor','anisotropyRotation','iridescenceThicknessMap','tangent','length','sheenRoughness','bufferView','register','465483EMnmEN','createObjectURL','offset','resolve','call','content','6127568SHNlsb','iridescenceTexture','materials','resultBuffer','traverse','KHR_meshopt_compression','scene','KHR_TEXTURE_TRANSFORM','buffers','uses','abs','377748zGSJvR','THREE.GLTFLoader:\x20Invalid\x20extras.targetNames\x20length.\x20Ignoring\x20names.','texture','THREE.GLTFLoader:\x20Legacy\x20binary\x20file\x20detected.','fileLoader','samplers','setX','applyMatrix4','LineBasicMaterial:','parser','glTF','iridescence','nodeCache','forEach','ior','_loadLight','nodeNamesUsed','16ZBewIC','emissiveFactor','normalized','associations','createUniqueName','loadGeometries','copy','options','push','type','animations','specularColorTexture','resolveURL','children','intensity','cameras','getIndex','transparent','count','weights','textureLoader','COLOR_0','745048IEvIRo','KHR_BINARY_GLTF','sort','iridescenceFactor','loadTextureImage','isGroup','prototype','extendMaterialParams','extras','metallicFactor','channels','335CDQdjj','1073579xNOhnU','preload','images','multiplyScalar','path','all','mesh','dracoLoader','decode','_getArrayFromAccessor','meshoptDecoder','sanitizeNodeName','itemSize','componentType','zfar','srgb-linear','itemEnd','THREE.GLTFLoader:\x20Primitive\x20mode\x20unsupported:\x20','needsUpdate','iridescenceThicknessMinimum','inverseBindMatrices','refs','setExtensions','nodes','znear','animation','manager','thickness','set','14627723xLZrzg','indices','clearcoatRoughnessTexture','asset','fromBufferAttribute','THREE.GLTFLoader:\x20setKTX2Loader\x20must\x20be\x20called\x20before\x20loading\x20KTX2\x20textures','body','clearcoatRoughnessFactor','_invokeOne','sparse','arraybuffer','emissiveTexture','THREE.GLTFLoader:\x20Unexpected\x20light\x20type:\x20','color','uv2','sheenColorFactor','toLowerCase','getHandler','getDependency','bufferViews','matrix','parameters','getMaterialType','loadImageSource','SCALAR','fromArray','image/ktx2','10vIAfTX','opacity','loadMesh','resourcePath','specularColor','gltfExtensions','roughnessFactor'];a0=function(){return dx;};return a0();}var I={'KHR_BINARY_GLTF':'KHR_binary_glTF','KHR_DRACO_MESH_COMPRESSION':'KHR_draco_mesh_compression','KHR_LIGHTS_PUNCTUAL':'KHR_lights_punctual','KHR_MATERIALS_CLEARCOAT':bO(0x257),'KHR_MATERIALS_DISPERSION':'KHR_materials_dispersion','KHR_MATERIALS_IOR':'KHR_materials_ior','KHR_MATERIALS_SHEEN':'KHR_materials_sheen','KHR_MATERIALS_SPECULAR':'KHR_materials_specular','KHR_MATERIALS_TRANSMISSION':'KHR_materials_transmission','KHR_MATERIALS_IRIDESCENCE':'KHR_materials_iridescence','KHR_MATERIALS_ANISOTROPY':'KHR_materials_anisotropy','KHR_MATERIALS_UNLIT':'KHR_materials_unlit','KHR_MATERIALS_VOLUME':'KHR_materials_volume','KHR_TEXTURE_BASISU':'KHR_texture_basisu','KHR_TEXTURE_TRANSFORM':'KHR_texture_transform','KHR_MESH_QUANTIZATION':'KHR_mesh_quantization','KHR_MATERIALS_EMISSIVE_STRENGTH':'KHR_materials_emissive_strength','EXT_MATERIALS_BUMP':'EXT_materials_bump','EXT_TEXTURE_WEBP':bO(0x236),'EXT_TEXTURE_AVIF':'EXT_texture_avif','EXT_MESHOPT_COMPRESSION':'EXT_meshopt_compression','KHR_MESHOPT_COMPRESSION':bO(0x275),'EXT_MESH_GPU_INSTANCING':'EXT_mesh_gpu_instancing'},Ne=class{constructor(b4){const bP=bO;this['parser']=b4,this[bP(0x258)]=I['KHR_LIGHTS_PUNCTUAL'],this['cache']={'refs':{},'uses':{}};}['_markDefs'](){const bQ=bO;let b4=this[bQ(0x284)],b5=this['parser']['json'][bQ(0x1f0)]||[];for(let b6=0x0,b7=b5['length'];b6<b7;b6++){let b8=b5[b6];b8[bQ(0x25c)]&&b8[bQ(0x25c)][this['name']]&&b8['extensions'][this['name']]['light']!==void 0x0&&b4['_addNodeRef'](this['cache'],b8['extensions'][this['name']]['light']);}}[bO(0x28a)](b4){const bR=bO;let b5=this[bR(0x284)],b6='light:'+b4,b7=b5['cache']['get'](b6);if(b7)return b7;let b8=b5[bR(0x23a)],b9=((b8[bR(0x25c)]&&b8['extensions'][this[bR(0x258)]]||{})['lights']||[])[b4],ba,bb=new aP(0xffffff);b9['color']!==void 0x0&&bb['setRGB'](b9['color'][0x0],b9[bR(0x203)][0x1],b9['color'][0x2],ac);let bc=b9['range']===void 0x0?0x0:b9['range'];switch(b9['type']){case'directional':ba=new b0(bb),ba['target'][bR(0x261)]['set'](0x0,0x0,-0x1),ba['add'](ba[bR(0x249)]);break;case'point':ba=new aG(bb),ba['distance']=bc;break;case'spot':ba=new ak(bb),ba['distance']=bc,b9['spot']=b9['spot']||{},b9['spot']['innerConeAngle']=b9['spot'][bR(0x223)]===void 0x0?0x0:b9['spot'][bR(0x223)],b9['spot'][bR(0x24b)]=b9['spot']['outerConeAngle']===void 0x0?Math['PI']/0x4:b9['spot']['outerConeAngle'],ba['angle']=b9['spot']['outerConeAngle'],ba['penumbra']=0x1-b9['spot']['innerConeAngle']/b9['spot'][bR(0x24b)],ba['target'][bR(0x261)]['set'](0x0,0x0,-0x1),ba['add'](ba['target']);break;default:throw Error(bR(0x202)+b9['type']);}return ba['position']['set'](0x0,0x0,0x0),Z(ba,b9),b9['intensity']!==void 0x0&&(ba['intensity']=b9[bR(0x29a)]),ba[bR(0x258)]=b5['createUniqueName'](b9['name']||bR(0x221)+b4),b7=Promise['resolve'](ba),b5[bR(0x218)]['add'](b6,b7),b7;}[bO(0x208)](b4,b5){if(b4==='light')return this['_loadLight'](b5);}[bO(0x25f)](b4){const bS=bO;let b5=this,b6=this['parser'],b7=b6['json']['nodes'][b4],b8=(b7[bS(0x25c)]&&b7['extensions'][this['name']]||{})['light'];return b8===void 0x0?null:this['_loadLight'](b8)['then'](function(b9){return b6['_getNodeRef'](b5['cache'],b8,b9);});}},Pe=class{constructor(){this['name']=I['KHR_MATERIALS_UNLIT'];}['getMaterialType'](){return aV;}['extendParams'](b4,b5,b6){const bT=bO;let b7=[];b4[bT(0x203)]=new aP(0x1,0x1,0x1),b4['opacity']=0x1;let b8=b5['pbrMetallicRoughness'];if(b8){if(Array['isArray'](b8['baseColorFactor'])){let b9=b8['baseColorFactor'];b4['color']['setRGB'](b9[0x0],b9[0x1],b9[0x2],ac),b4[bT(0x212)]=b9[0x3];}b8['baseColorTexture']!==void 0x0&&b7['push'](b6[bT(0x22d)](b4,'map',b8['baseColorTexture'],aZ));}return Promise['all'](b7);}},Fe=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_EMISSIVE_STRENGTH'];}[bO(0x1d4)](b4,b5){const bU=bO;let b6=F(this['parser'],b4,this['name']);return b6===null||b6['emissiveStrength']!==void 0x0&&(b5['emissiveIntensity']=b6['emissiveStrength']),Promise[bU(0x26d)]();}},Ie=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_CLEARCOAT'];}[bO(0x20c)](b4){const bV=bO;return F(this['parser'],b4,this[bV(0x258)])===null?null:aH;}['extendMaterialParams'](b4,b5){const bW=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise[bW(0x26d)]();let b7=[];if(b6['clearcoatFactor']!==void 0x0&&(b5['clearcoat']=b6['clearcoatFactor']),b6['clearcoatTexture']!==void 0x0&&b7['push'](this[bW(0x284)][bW(0x22d)](b5,'clearcoatMap',b6['clearcoatTexture'])),b6['clearcoatRoughnessFactor']!==void 0x0&&(b5['clearcoatRoughness']=b6[bW(0x1fd)]),b6[bW(0x1f8)]!==void 0x0&&b7['push'](this[bW(0x284)]['assignTexture'](b5,'clearcoatRoughnessMap',b6['clearcoatRoughnessTexture'])),b6['clearcoatNormalTexture']!==void 0x0&&(b7['push'](this[bW(0x284)]['assignTexture'](b5,'clearcoatNormalMap',b6[bW(0x238)])),b6[bW(0x238)]['scale']!==void 0x0)){let b8=b6['clearcoatNormalTexture']['scale'];b5['clearcoatNormalScale']=new b3(b8,b8);}return Promise['all'](b7);}},Le=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_DISPERSION'];}[bO(0x20c)](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const bX=bO;let b6=F(this['parser'],b4,this[bX(0x258)]);return b6===null||(b5[bX(0x23c)]=b6['dispersion']===void 0x0?0x0:b6[bX(0x23c)]),Promise['resolve']();}},Re=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_IRIDESCENCE'];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const bY=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];return b6['iridescenceFactor']!==void 0x0&&(b5[bY(0x286)]=b6[bY(0x1d0)]),b6['iridescenceTexture']!==void 0x0&&b7['push'](this[bY(0x284)]['assignTexture'](b5,'iridescenceMap',b6[bY(0x271)])),b6[bY(0x22f)]!==void 0x0&&(b5['iridescenceIOR']=b6['iridescenceIor']),b5['iridescenceThicknessRange']===void 0x0&&(b5['iridescenceThicknessRange']=[0x64,0x190]),b6[bY(0x1ec)]!==void 0x0&&(b5['iridescenceThicknessRange'][0x0]=b6[bY(0x1ec)]),b6['iridescenceThicknessMaximum']!==void 0x0&&(b5['iridescenceThicknessRange'][0x1]=b6['iridescenceThicknessMaximum']),b6['iridescenceThicknessTexture']!==void 0x0&&b7['push'](this[bY(0x284)]['assignTexture'](b5,bY(0x264),b6['iridescenceThicknessTexture'])),Promise[bY(0x1de)](b7);}},ze=class{constructor(b4){const bZ=bO;this[bZ(0x284)]=b4,this[bZ(0x258)]=I['KHR_MATERIALS_SHEEN'];}[bO(0x20c)](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c0=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];if(b5['sheenColor']=new aP(0x0,0x0,0x0),b5['sheenRoughness']=0x0,b5['sheen']=0x1,b6['sheenColorFactor']!==void 0x0){let b8=b6[c0(0x205)];b5['sheenColor']['setRGB'](b8[0x0],b8[0x1],b8[0x2],ac);}return b6['sheenRoughnessFactor']!==void 0x0&&(b5[c0(0x267)]=b6['sheenRoughnessFactor']),b6[c0(0x21c)]!==void 0x0&&b7['push'](this['parser'][c0(0x22d)](b5,'sheenColorMap',b6[c0(0x21c)],aZ)),b6['sheenRoughnessTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'sheenRoughnessMap',b6['sheenRoughnessTexture'])),Promise['all'](b7);}},Be=class{constructor(b4){const c1=bO;this[c1(0x284)]=b4,this[c1(0x258)]=I['KHR_MATERIALS_TRANSMISSION'];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c2=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];return b6[c2(0x262)]!==void 0x0&&(b5['transmission']=b6['transmissionFactor']),b6['transmissionTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'transmissionMap',b6['transmissionTexture'])),Promise['all'](b7);}},Ve=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_VOLUME'];}[bO(0x20c)](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c3=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise[c3(0x26d)]();let b7=[];b5[c3(0x1f4)]=b6['thicknessFactor']===void 0x0?0x0:b6['thicknessFactor'],b6['thicknessTexture']!==void 0x0&&b7[c3(0x294)](this['parser']['assignTexture'](b5,'thicknessMap',b6['thicknessTexture'])),b5['attenuationDistance']=b6['attenuationDistance']||Infinity;let b8=b6['attenuationColor']||[0x1,0x1,0x1];return b5['attenuationColor']=new aP()['setRGB'](b8[0x0],b8[0x1],b8[0x2],ac),Promise['all'](b7);}},He=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_IOR'];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c4=bO;let b6=F(this['parser'],b4,this['name']);return b6===null?Promise['resolve']():(b5[c4(0x289)]=b6['ior']===void 0x0?1.5:b6['ior'],b5['ior']===0x0&&(b5['ior']=0x3e8),Promise['resolve']());}},Ue=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_SPECULAR'];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c5=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise[c5(0x26d)]();let b7=[];b5['specularIntensity']=b6['specularFactor']===void 0x0?0x1:b6['specularFactor'],b6['specularTexture']!==void 0x0&&b7[c5(0x294)](this['parser']['assignTexture'](b5,'specularIntensityMap',b6[c5(0x22b)]));let b8=b6['specularColorFactor']||[0x1,0x1,0x1];return b5[c5(0x215)]=new aP()['setRGB'](b8[0x0],b8[0x1],b8[0x2],ac),b6['specularColorTexture']!==void 0x0&&b7['push'](this[c5(0x284)][c5(0x22d)](b5,'specularColorMap',b6[c5(0x297)],aZ)),Promise[c5(0x1de)](b7);}},We=class{constructor(b4){this['parser']=b4,this['name']=I['EXT_MATERIALS_BUMP'];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];return b5['bumpScale']=b6['bumpFactor']===void 0x0?0x1:b6['bumpFactor'],b6['bumpTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'bumpMap',b6['bumpTexture'])),Promise['all'](b7);}},Ge=class{constructor(b4){const c6=bO;this[c6(0x284)]=b4,this['name']=I['KHR_MATERIALS_ANISOTROPY'];}[bO(0x20c)](b4){const c7=bO;return F(this[c7(0x284)],b4,this[c7(0x258)])===null?null:aH;}['extendMaterialParams'](b4,b5){const c8=bO;let b6=F(this[c8(0x284)],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];return b6['anisotropyStrength']!==void 0x0&&(b5['anisotropy']=b6['anisotropyStrength']),b6['anisotropyRotation']!==void 0x0&&(b5['anisotropyRotation']=b6[c8(0x263)]),b6['anisotropyTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'anisotropyMap',b6['anisotropyTexture'])),Promise['all'](b7);}},Ke=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_TEXTURE_BASISU'];}['loadTexture'](b4){const c9=bO;let b5=this['parser'],b6=b5['json'],b7=b6['textures'][b4];if(!b7[c9(0x25c)]||!b7['extensions'][this['name']])return null;let b8=b7[c9(0x25c)][this['name']],b9=b5['options']['ktx2Loader'];if(!b9){if(b6['extensionsRequired']&&b6['extensionsRequired']['indexOf'](this['name'])>=0x0)throw Error(c9(0x1fb));return null;}return b5['loadTextureImage'](b4,b8['source'],b9);}},qe=class{constructor(b4){this['parser']=b4,this['name']=I['EXT_TEXTURE_WEBP'];}['loadTexture'](b4){const ca=bO;let b5=this['name'],b6=this[ca(0x284)],b7=b6['json'],b8=b7['textures'][b4];if(!b8['extensions']||!b8['extensions'][b5])return null;let b9=b8['extensions'][b5],ba=b7['images'][b9['source']],bb=b6['textureLoader'];if(ba['uri']){let bc=b6['options'][ca(0x1f3)]['getHandler'](ba['uri']);bc!==null&&(bb=bc);}return b6[ca(0x1d1)](b4,b9['source'],bb);}},Je=class{constructor(b4){const cb=bO;this[cb(0x284)]=b4,this['name']=I['EXT_TEXTURE_AVIF'];}[bO(0x24e)](b4){const cc=bO;let b5=this['name'],b6=this['parser'],b7=b6['json'],b8=b7['textures'][b4];if(!b8['extensions']||!b8['extensions'][b5])return null;let b9=b8[cc(0x25c)][b5],ba=b7[cc(0x1db)][b9['source']],bb=b6['textureLoader'];if(ba['uri']){let bc=b6['options']['manager']['getHandler'](ba['uri']);bc!==null&&(bb=bc);}return b6['loadTextureImage'](b4,b9['source'],bb);}},L=class{constructor(b4,b5){this['name']=b5,this['parser']=b4;}['loadBufferView'](b4){const cd=bO;let b5=this['parser']['json'],b6=b5['bufferViews'][b4];if(b6[cd(0x25c)]&&b6['extensions'][this['name']]){let b7=b6['extensions'][this['name']],b8=this[cd(0x284)]['getDependency']('buffer',b7['buffer']),b9=this['parser']['options']['meshoptDecoder'];if(!b9||!b9['supported']){if(b5['extensionsRequired']&&b5['extensionsRequired']['indexOf'](this['name'])>=0x0)throw Error('THREE.GLTFLoader:\x20setMeshoptDecoder\x20must\x20be\x20called\x20before\x20loading\x20compressed\x20files');return null;}return b8['then'](function(ba){const cf=cd;let bb=b7['byteOffset']||0x0,bc=b7['byteLength']||0x0,bd=b7['count'],bf=b7['byteStride'],bg=new Uint8Array(ba,bb,bc);return b9['decodeGltfBufferAsync']?b9['decodeGltfBufferAsync'](bd,bf,bg,b7[cf(0x239)],b7['filter'])['then'](function(bh){return bh['buffer'];}):b9['ready']['then'](function(){let bh=new ArrayBuffer(bd*bf);return b9['decodeGltfBuffer'](new Uint8Array(bh),bd,bf,bg,b7['mode'],b7['filter']),bh;});});}else return null;}},Ye=class{constructor(b4){this['name']=I['EXT_MESH_GPU_INSTANCING'],this['parser']=b4;}['createNodeMesh'](b4){const cg=bO;let b5=this['parser'][cg(0x23a)],b6=b5['nodes'][b4];if(!b6['extensions']||!b6['extensions'][this['name']]||b6['mesh']===void 0x0)return null;let b7=b5['meshes'][b6['mesh']];for(let bb of b7['primitives'])if(bb['mode']!==H['TRIANGLES']&&bb['mode']!==H['TRIANGLE_STRIP']&&bb['mode']!==H['TRIANGLE_FAN']&&bb['mode']!==void 0x0)return null;let b8=b6['extensions'][this[cg(0x258)]]['attributes'],b9=[],ba={};for(let bc in b8)b9[cg(0x294)](this['parser']['getDependency']('accessor',b8[bc])['then'](bd=>(ba[bc]=bd,ba[bc])));return b9['length']<0x1?null:(b9['push'](this['parser']['createNodeMesh'](b4)),Promise['all'](b9)['then'](bd=>{const ch=cg;let bf=bd[ch(0x229)](),bg=bf['isGroup']?bf[ch(0x299)]:[bf],bh=bd[0x0]['count'],bi=[];for(let bj of bg){let bk=new a3(),bl=new a6(),bm=new b1(),bn=new a6(0x1,0x1,0x1),bo=new a4(bj['geometry'],bj[ch(0x222)],bh);for(let bp=0x0;bp<bh;bp++)ba['TRANSLATION']&&bl['fromBufferAttribute'](ba[ch(0x24a)],bp),ba['ROTATION']&&bm[ch(0x1fa)](ba['ROTATION'],bp),ba['SCALE']&&bn[ch(0x1fa)](ba[ch(0x25a)],bp),bo['setMatrixAt'](bp,bk['compose'](bl,bm,bn));for(let bq in ba)if(bq==='_COLOR_0'){let br=ba[bq];bo['instanceColor']=new aI(br['array'],br['itemSize'],br['normalized']);}else bq!==ch(0x24a)&&bq!=='ROTATION'&&bq!=='SCALE'&&bj['geometry'][ch(0x260)](bq,ba[bq]);aB['prototype']['copy']['call'](bo,bj),this['parser']['assignFinalMaterial'](bo),bi['push'](bo);}return bf['isGroup']?(bf['clear'](),bf['add'](...bi),bf):bi[0x0];}));}},R=bO(0x285),z=0xc,B={'JSON':0x4e4f534a,'BIN':0x4e4942},Xe=class{constructor(b4){const ci=bO;this[ci(0x258)]=I['KHR_BINARY_GLTF'],this['content']=null,this['body']=null;let b5=new DataView(b4,0x0,z),b6=new TextDecoder();if(this['header']={'magic':b6[ci(0x1e1)](new Uint8Array(b4['slice'](0x0,0x4))),'version':b5['getUint32'](0x4,!0x0),'length':b5['getUint32'](0x8,!0x0)},this[ci(0x251)]['magic']!==R)throw Error('THREE.GLTFLoader:\x20Unsupported\x20glTF-Binary\x20header.');if(this['header']['version']<0x2)throw Error(ci(0x27e));let b7=this['header']['length']-z,b8=new DataView(b4,z),b9=0x0;for(;b9<b7;){let ba=b8['getUint32'](b9,!0x0);b9+=0x4;let bb=b8['getUint32'](b9,!0x0);if(b9+=0x4,bb===B['JSON']){let bc=new Uint8Array(b4,z+b9,ba);this['content']=b6['decode'](bc);}else{if(bb===B['BIN']){let bd=z+b9;this[ci(0x1fc)]=b4[ci(0x245)](bd,bd+ba);}}b9+=ba;}if(this[ci(0x26f)]===null)throw Error('THREE.GLTFLoader:\x20JSON\x20content\x20not\x20found.');}},Ze=class{constructor(b4,b5){const cj=bO;if(!b5)throw Error('THREE.GLTFLoader:\x20No\x20DRACOLoader\x20instance\x20provided.');this['name']=I['KHR_DRACO_MESH_COMPRESSION'],this[cj(0x23a)]=b4,this['dracoLoader']=b5,this['dracoLoader'][cj(0x1da)]();}['decodePrimitive'](b4,b5){const ck=bO;let b6=this['json'],b7=this[ck(0x1e0)],b8=b4[ck(0x25c)][this[ck(0x258)]]['bufferView'],b9=b4['extensions'][this[ck(0x258)]]['attributes'],ba={},bb={},bc={};for(let bd in b9){let bf=q[bd]||bd[ck(0x206)]();ba[bf]=b9[bd];}for(let bg in b4['attributes']){let bh=q[bg]||bg['toLowerCase']();if(b9[bg]!==void 0x0){let bi=b6['accessors'][b4[ck(0x21f)][bg]];bc[bh]=U[bi['componentType']]['name'],bb[bh]=bi['normalized']===!0x0;}}return b5[ck(0x208)]('bufferView',b8)[ck(0x235)](function(bj){return new Promise(function(bk,bl){b7['decodeDracoFile'](bj,function(bm){for(let bn in bm['attributes']){let bo=bm['attributes'][bn],bp=bb[bn];bp!==void 0x0&&(bo['normalized']=bp);}bk(bm);},ba,bc,ac,bl);});});}},Qe=class{constructor(){const cl=bO;this['name']=I[cl(0x277)];}['extendTexture'](b4,b5){const cm=bO;return(b5['texCoord']===void 0x0||b5['texCoord']===b4[cm(0x225)])&&b5['offset']===void 0x0&&b5['rotation']===void 0x0&&b5['scale']===void 0x0?b4:(b4=b4['clone'](),b5['texCoord']!==void 0x0&&(b4['channel']=b5['texCoord']),b5[cm(0x26c)]!==void 0x0&&b4['offset'][cm(0x20f)](b5[cm(0x26c)]),b5['rotation']!==void 0x0&&(b4['rotation']=b5['rotation']),b5['scale']!==void 0x0&&b4[cm(0x21a)][cm(0x20f)](b5['scale']),b4[cm(0x1eb)]=!0x0,b4);}},$e=class{constructor(){this['name']=I['KHR_MESH_QUANTIZATION'];}},V=class extends ao{constructor(b4,b5,b6,b7){super(b4,b5,b6,b7);}['copySampleValue_'](b4){let b5=this['resultBuffer'],b6=this['sampleValues'],b7=this['valueSize'],b8=b4*b7*0x3+b7;for(let b9=0x0;b9!==b7;b9++)b5[b9]=b6[b8+b9];return b5;}['interpolate_'](b4,b5,b6,b7){const cn=bO;let b8=this[cn(0x273)],b9=this['sampleValues'],ba=this['valueSize'],bb=ba*0x2,bc=ba*0x3,bd=b7-b5,bf=(b6-b5)/bd,bg=bf*bf,bh=bg*bf,bi=b4*bc,bj=bi-bc,bk=-0x2*bh+0x3*bg,bl=bh-bg,bm=0x1-bk,bn=bl-bg+bf;for(let bo=0x0;bo!==ba;bo++){let bp=b9[bj+bo+ba],bq=b9[bj+bo+bb]*bd,br=b9[bi+bo+ba],bs=b9[bi+bo]*bd;b8[bo]=bm*bp+bn*bq+bk*br+bl*bs;}return b8;}},et=new b1(),tt=class extends V{['interpolate_'](b4,b5,b6,b7){let b8=super['interpolate_'](b4,b5,b6,b7);return et['fromArray'](b8)['normalize']()['toArray'](b8),b8;}},H={'FLOAT':0x1406,'FLOAT_MAT3':0x8b5b,'FLOAT_MAT4':0x8b5c,'FLOAT_VEC2':0x8b50,'FLOAT_VEC3':0x8b51,'FLOAT_VEC4':0x8b52,'LINEAR':0x2601,'REPEAT':0x2901,'SAMPLER_2D':0x8b5e,'POINTS':0x0,'LINES':0x1,'LINE_LOOP':0x2,'LINE_STRIP':0x3,'TRIANGLES':0x4,'TRIANGLE_STRIP':0x5,'TRIANGLE_FAN':0x6,'UNSIGNED_BYTE':0x1401,'UNSIGNED_SHORT':0x1403},U={0x1400:Int8Array,0x1401:Uint8Array,0x1402:Int16Array,0x1403:Uint16Array,0x1405:Uint32Array,0x1406:Float32Array},W={0x2600:aU,0x2601:ad,0x2700:aL,0x2701:au,0x2702:aA,0x2703:ar},G={0x812f:aD,0x8370:aO,0x2901:a8},K={'SCALAR':0x1,'VEC2':0x2,'VEC3':0x3,'VEC4':0x4,'MAT2':0x4,'MAT3':0x9,'MAT4':0x10},q={'POSITION':'position','NORMAL':'normal','TANGENT':bO(0x265),'TEXCOORD_0':'uv','TEXCOORD_1':'uv1','TEXCOORD_2':bO(0x204),'TEXCOORD_3':'uv3','COLOR_0':bO(0x203),'WEIGHTS_0':'skinWeight','JOINTS_0':'skinIndex'},J={'scale':'scale','translation':'position','rotation':'quaternion','weights':'morphTargetInfluences'},nt={'CUBICSPLINE':void 0x0,'LINEAR':ai,'STEP':ag},Y={'OPAQUE':'OPAQUE','MASK':'MASK','BLEND':'BLEND'};function rt(b4){const co=bO;return b4[co(0x230)]===void 0x0&&(b4['DefaultMaterial']=new ay({'color':0xffffff,'emissive':0x0,'metalness':0x1,'roughness':0x1,'transparent':!0x1,'depthTest':!0x0,'side':0x0})),b4[co(0x230)];}function X(b4,b5,b6){const cp=bO;for(let b7 in b6['extensions'])b4[b7]===void 0x0&&(b5['userData']['gltfExtensions']=b5[cp(0x228)]['gltfExtensions']||{},b5[cp(0x228)][cp(0x216)][b7]=b6['extensions'][b7]);}function Z(b4,b5){const cq=bO;b5['extras']!==void 0x0&&(typeof b5[cq(0x1d5)]=='object'?Object['assign'](b4['userData'],b5['extras']):console['warn']('THREE.GLTFLoader:\x20Ignoring\x20primitive\x20type\x20.extras,\x20'+b5[cq(0x1d5)]));}function it(b4,b5,b6){const cr=bO;let b7=!0x1,b8=!0x1,b9=!0x1;for(let bd=0x0,bf=b5['length'];bd<bf;bd++){let bg=b5[bd];if(bg['POSITION']!==void 0x0&&(b7=!0x0),bg['NORMAL']!==void 0x0&&(b8=!0x0),bg[cr(0x1cc)]!==void 0x0&&(b9=!0x0),b7&&b8&&b9)break;}if(!b7&&!b8&&!b9)return Promise['resolve'](b4);let ba=[],bb=[],bc=[];for(let bh=0x0,bi=b5['length'];bh<bi;bh++){let bj=b5[bh];if(b7){let bk=bj['POSITION']===void 0x0?b4[cr(0x21f)][cr(0x261)]:b6['getDependency']('accessor',bj['POSITION']);ba['push'](bk);}if(b8){let bl=bj['NORMAL']===void 0x0?b4['attributes']['normal']:b6[cr(0x208)]('accessor',bj['NORMAL']);bb[cr(0x294)](bl);}if(b9){let bm=bj['COLOR_0']===void 0x0?b4['attributes']['color']:b6['getDependency']('accessor',bj['COLOR_0']);bc['push'](bm);}}return Promise['all']([Promise['all'](ba),Promise['all'](bb),Promise['all'](bc)])['then'](function(bn){const cs=cr;let bo=bn[0x0],bp=bn[0x1],bq=bn[0x2];return b7&&(b4['morphAttributes'][cs(0x261)]=bo),b8&&(b4['morphAttributes']['normal']=bp),b9&&(b4['morphAttributes']['color']=bq),b4['morphTargetsRelative']=!0x0,b4;});}function at(b4,b5){const cu=bO;if(b4['updateMorphTargets'](),b5['weights']!==void 0x0){for(let b6=0x0,b7=b5[cu(0x1ca)][cu(0x266)];b6<b7;b6++)b4['morphTargetInfluences'][b6]=b5['weights'][b6];}if(b5['extras']&&Array['isArray'](b5['extras']['targetNames'])){let b8=b5['extras']['targetNames'];if(b4['morphTargetInfluences']['length']===b8['length']){b4['morphTargetDictionary']={};for(let b9=0x0,ba=b8['length'];b9<ba;b9++)b4['morphTargetDictionary'][b8[b9]]=b9;}else console['warn'](cu(0x27c));}}function ot(b4){let b5,b6=b4['extensions']&&b4['extensions'][I['KHR_DRACO_MESH_COMPRESSION']];if(b5=b6?'draco:'+b6['bufferView']+':'+b6['indices']+':'+Q(b6['attributes']):b4['indices']+':'+Q(b4['attributes'])+':'+b4['mode'],b4['targets']!==void 0x0){for(let b7=0x0,b8=b4['targets']['length'];b7<b8;b7++)b5+=':'+Q(b4['targets'][b7]);}return b5;}function a1(a,b){a=a-0x1c7;const c=a0();let d=c[a];return d;}function Q(b4){const cv=bO;let b5='',b6=Object['keys'](b4)[cv(0x1cf)]();for(let b7=0x0,b8=b6['length'];b7<b8;b7++)b5+=b6[b7]+':'+b4[b6[b7]]+';';return b5;}function $(b4){switch(b4){case Int8Array:return 0x1/0x7f;case Uint8Array:return 0x1/0xff;case Int16Array:return 0x1/0x7fff;case Uint16Array:return 0x1/0xffff;default:throw Error('THREE.GLTFLoader:\x20Unsupported\x20normalized\x20accessor\x20component\x20type.');}}function st(b4){const cw=bO;return b4['search'](/\.jpe?g($|\?)/i)>0x0||b4['search'](/^data\:image\/jpeg/)===0x0?'image/jpeg':b4['search'](/\.webp($|\?)/i)>0x0||b4['search'](/^data\:image\/webp/)===0x0?'image/webp':b4['search'](/\.ktx2($|\?)/i)>0x0||b4['search'](/^data\:image\/ktx2/)===0x0?cw(0x210):'image/png';}var ct=new a3(),lt=class{constructor(b4={},b5={}){const cx=bO;this['json']=b4,this['extensions']={},this['plugins']={},this['options']=b5,this['cache']=new Me(),this['associations']=new Map(),this['primitiveCache']={},this['nodeCache']={},this[cx(0x25d)]={'refs':{},'uses':{}},this['cameraCache']={'refs':{},'uses':{}},this['lightCache']={'refs':{},'uses':{}},this['sourceCache']={},this['textureCache']={},this[cx(0x28b)]={};let b6=!0x1,b7=-0x1,b8=!0x1,b9=-0x1;if(typeof navigator<'u'&&navigator['userAgent']!==void 0x0){let ba=navigator['userAgent'];b6=/^((?!chrome|android).)*safari/i['test'](ba)===!0x0;let bb=ba['match'](/Version\/(\d+)/);b7=b6&&bb?parseInt(bb[0x1],0xa):-0x1,b8=ba['indexOf'](cx(0x259))>-0x1,b9=b8?ba['match'](/Firefox\/([0-9]+)\./)[0x1]:-0x1;}typeof createImageBitmap>'u'||b6&&b7<0x11||b8&&b9<0x62?this['textureLoader']=new ab(this['options']['manager']):this['textureLoader']=new am(this[cx(0x293)]['manager']),this['textureLoader']['setCrossOrigin'](this[cx(0x293)]['crossOrigin']),this['textureLoader']['setRequestHeader'](this['options'][cx(0x240)]),this[cx(0x27f)]=new a7(this['options']['manager']),this['fileLoader']['setResponseType']('arraybuffer'),this['options']['crossOrigin']==='use-credentials'&&this['fileLoader']['setWithCredentials'](!0x0);}[bO(0x1ef)](b4){const cy=bO;this[cy(0x25c)]=b4;}['setPlugins'](b4){this['plugins']=b4;}['parse'](b4,b5){const cA=bO;let b6=this,b7=this['json'],b8=this['extensions'];this['cache']['removeAll'](),this['nodeCache']={},this['_invokeAll'](function(b9){return b9['_markDefs']&&b9['_markDefs']();}),Promise['all'](this['_invokeAll'](function(b9){const cz=a1;return b9['beforeRoot']&&b9[cz(0x25b)]();}))[cA(0x235)](function(){const cB=cA;return Promise['all']([b6['getDependencies']('scene'),b6[cB(0x250)]('animation'),b6['getDependencies'](cB(0x24c))]);})['then'](function(b9){const cC=cA;let ba={'scene':b9[0x0][b7['scene']||0x0],'scenes':b9[0x0],'animations':b9[0x1],'cameras':b9[0x2],'asset':b7[cC(0x1f9)],'parser':b6,'userData':{}};return X(b8,ba,b7),Z(ba,b7),Promise['all'](b6['_invokeAll'](function(bb){return bb['afterRoot']&&bb['afterRoot'](ba);}))['then'](function(){for(let bb of ba['scenes'])bb['updateMatrixWorld']();b4(ba);});})['catch'](b5);}['_markDefs'](){const cD=bO;let b4=this['json']['nodes']||[],b5=this['json']['skins']||[],b6=this['json']['meshes']||[];for(let b7=0x0,b8=b5['length'];b7<b8;b7++){let b9=b5[b7]['joints'];for(let ba=0x0,bb=b9['length'];ba<bb;ba++)b4[b9[ba]]['isBone']=!0x0;}for(let bc=0x0,bd=b4['length'];bc<bd;bc++){let bf=b4[bc];bf['mesh']!==void 0x0&&(this['_addNodeRef'](this[cD(0x25d)],bf['mesh']),bf['skin']!==void 0x0&&(b6[bf['mesh']][cD(0x25e)]=!0x0)),bf['camera']!==void 0x0&&this['_addNodeRef'](this['cameraCache'],bf['camera']);}}['_addNodeRef'](b4,b5){const cE=bO;b5!==void 0x0&&(b4['refs'][b5]===void 0x0&&(b4['refs'][b5]=b4[cE(0x279)][b5]=0x0),b4[cE(0x1ee)][b5]++);}['_getNodeRef'](b4,b5,b6){if(b4['refs'][b5]<=0x1)return b6;let b7=b6['clone'](),b8=(b9,ba)=>{let bb=this['associations']['get'](b9);bb!=null&&this['associations']['set'](ba,bb);for(let [bc,bd]of b9['children']['entries']())b8(bd,ba['children'][bc]);};return b8(b6,b7),b7['name']+='_instance_'+b4['uses'][b5]++,b7;}['_invokeOne'](b4){let b5=Object['values'](this['plugins']);b5['push'](this);for(let b6=0x0;b6<b5['length'];b6++){let b7=b4(b5[b6]);if(b7)return b7;}return null;}['_invokeAll'](b4){let b5=Object['values'](this['plugins']);b5['unshift'](this);let b6=[];for(let b7=0x0;b7<b5['length'];b7++){let b8=b4(b5[b7]);b8&&b6['push'](b8);}return b6;}['getDependency'](b4,b5){const cF=bO;let b6=b4+':'+b5,b7=this['cache']['get'](b6);if(!b7){switch(b4){case cF(0x276):b7=this['loadScene'](b5);break;case'node':b7=this['_invokeOne'](function(b8){const cG=cF;return b8[cG(0x23d)]&&b8[cG(0x23d)](b5);});break;case cF(0x1df):b7=this['_invokeOne'](function(b8){const cH=cF;return b8['loadMesh']&&b8[cH(0x213)](b5);});break;case'accessor':b7=this['loadAccessor'](b5);break;case'bufferView':b7=this['_invokeOne'](function(b8){return b8['loadBufferView']&&b8['loadBufferView'](b5);});break;case'buffer':b7=this['loadBuffer'](b5);break;case'material':b7=this['_invokeOne'](function(b8){const cI=cF;return b8['loadMaterial']&&b8[cI(0x233)](b5);});break;case'texture':b7=this[cF(0x1fe)](function(b8){return b8['loadTexture']&&b8['loadTexture'](b5);});break;case'skin':b7=this['loadSkin'](b5);break;case cF(0x1f2):b7=this['_invokeOne'](function(b8){return b8['loadAnimation']&&b8['loadAnimation'](b5);});break;case'camera':b7=this['loadCamera'](b5);break;default:if(b7=this['_invokeOne'](function(b8){return b8!=this&&b8['getDependency']&&b8['getDependency'](b4,b5);}),!b7)throw Error('Unknown\x20type:\x20'+b4);break;}this['cache']['add'](b6,b7);}return b7;}['getDependencies'](b4){const cJ=bO;let b5=this['cache']['get'](b4);if(!b5){let b6=this,b7=this['json'][b4+(b4==='mesh'?'es':'s')]||[];b5=Promise[cJ(0x1de)](b7['map'](function(b8,b9){return b6['getDependency'](b4,b9);})),this['cache']['add'](b4,b5);}return b5;}['loadBuffer'](b4){const cK=bO;let b5=this['json'][cK(0x278)][b4],b6=this['fileLoader'];if(b5['type']&&b5[cK(0x295)]!==cK(0x200))throw Error('THREE.GLTFLoader:\x20'+b5['type']+'\x20buffer\x20type\x20is\x20not\x20supported.');if(b5['uri']===void 0x0&&b4===0x0)return Promise['resolve'](this['extensions'][I['KHR_BINARY_GLTF']][cK(0x1fc)]);let b7=this['options'];return new Promise(function(b8,b9){const cL=cK;b6['load'](aR[cL(0x298)](b5['uri'],b7[cL(0x1dd)]),b8,void 0x0,function(){const cM=cL;b9(Error('THREE.GLTFLoader:\x20Failed\x20to\x20load\x20buffer\x20\x22'+b5[cM(0x227)]+'\x22.'));});});}['loadBufferView'](b4){const cN=bO;let b5=this['json'][cN(0x209)][b4];return this['getDependency'](cN(0x22e),b5['buffer'])['then'](function(b6){const cO=cN;let b7=b5[cO(0x243)]||0x0,b8=b5['byteOffset']||0x0;return b6['slice'](b8,b8+b7);});}['loadAccessor'](b4){const cP=bO;let b5=this,b6=this['json'],b7=this['json']['accessors'][b4];if(b7['bufferView']===void 0x0&&b7[cP(0x1ff)]===void 0x0){let b9=K[b7[cP(0x295)]],ba=U[b7[cP(0x1e6)]],bb=b7['normalized']===!0x0,bc=new ba(b7['count']*b9);return Promise['resolve'](new aK(bc,b9,bb));}let b8=[];return b7['bufferView']===void 0x0?b8['push'](null):b8[cP(0x294)](this['getDependency']('bufferView',b7['bufferView'])),b7['sparse']!==void 0x0&&(b8['push'](this['getDependency']('bufferView',b7['sparse']['indices']['bufferView'])),b8['push'](this['getDependency']('bufferView',b7['sparse']['values']['bufferView']))),Promise['all'](b8)[cP(0x235)](function(bd){const cQ=cP;let bf=bd[0x0],bg=K[b7['type']],bh=U[b7['componentType']],bi=bh['BYTES_PER_ELEMENT'],bj=bi*bg,bk=b7['byteOffset']||0x0,bl=b7['bufferView']===void 0x0?void 0x0:b6['bufferViews'][b7['bufferView']]['byteStride'],bm=b7['normalized']===!0x0,bn,bo;if(bl&&bl!==bj){let bp=Math['floor'](bk/bl),bq=cQ(0x226)+b7['bufferView']+':'+b7['componentType']+':'+bp+':'+b7['count'],br=b5['cache']['get'](bq);br||(bn=new bh(bf,bp*bl,b7['count']*bl/bi),br=new aj(bn,bl/bi),b5[cQ(0x218)][cQ(0x22a)](bq,br)),bo=new al(br,bg,bk%bl/bi,bm);}else bn=bf===null?new bh(b7['count']*bg):new bh(bf,bk,b7['count']*bg),bo=new aK(bn,bg,bm);if(b7['sparse']!==void 0x0){let bs=K[cQ(0x20e)],bt=U[b7['sparse']['indices']['componentType']],bu=b7['sparse']['indices']['byteOffset']||0x0,bv=b7['sparse']['values']['byteOffset']||0x0,bw=new bt(bd[0x1],bu,b7['sparse'][cQ(0x1c9)]*bs),bx=new bh(bd[0x2],bv,b7['sparse']['count']*bg);bf!==null&&(bo=new aK(bo['array']['slice'](),bo[cQ(0x1e5)],bo['normalized'])),bo['normalized']=!0x1;for(let by=0x0,bz=bw['length'];by<bz;by++){let bA=bw[by];if(bo['setX'](bA,bx[by*bg]),bg>=0x2&&bo['setY'](bA,bx[by*bg+0x1]),bg>=0x3&&bo[cQ(0x253)](bA,bx[by*bg+0x2]),bg>=0x4&&bo['setW'](bA,bx[by*bg+0x3]),bg>=0x5)throw Error('THREE.GLTFLoader:\x20Unsupported\x20itemSize\x20in\x20sparse\x20BufferAttribute.');}bo['normalized']=bm;}return bo;});}[bO(0x24e)](b4){const cR=bO;let b5=this['json'],b6=this['options'],b7=b5['textures'][b4]['source'],b8=b5['images'][b7],b9=this[cR(0x1cb)];if(b8['uri']){let ba=b6['manager'][cR(0x207)](b8['uri']);ba!==null&&(b9=ba);}return this['loadTextureImage'](b4,b7,b9);}['loadTextureImage'](b4,b5,b6){const cS=bO;let b7=this,b8=this[cS(0x23a)],b9=b8['textures'][b4],ba=b8['images'][b5],bb=(ba['uri']||ba['bufferView'])+':'+b9['sampler'];if(this['textureCache'][bb])return this['textureCache'][bb];let bc=this['loadImageSource'](b5,b6)['then'](function(bd){const cT=cS;bd['flipY']=!0x1,bd['name']=b9['name']||ba['name']||'',bd['name']===''&&typeof ba['uri']==cT(0x24d)&&ba['uri']['startsWith']('data:image/')===!0x1&&(bd['name']=ba['uri']);let bf=(b8[cT(0x280)]||{})[b9['sampler']]||{};return bd['magFilter']=W[bf['magFilter']]||0x3ee,bd['minFilter']=W[bf['minFilter']]||0x3f0,bd['wrapS']=G[bf['wrapS']]||0x3e8,bd['wrapT']=G[bf['wrapT']]||0x3e8,bd['generateMipmaps']=!bd['isCompressedTexture']&&bd['minFilter']!==0x3eb&&bd['minFilter']!==0x3ee,b7['associations']['set'](bd,{'textures':b4}),bd;})['catch'](function(){return null;});return this['textureCache'][bb]=bc,bc;}[bO(0x20d)](b4,b5){const cU=bO;let b6=this,b7=this['json'],b8=this['options'];if(this['sourceCache'][b4]!==void 0x0)return this['sourceCache'][b4]['then'](bf=>bf['clone']());let b9=b7['images'][b4],ba=self['URL']||self['webkitURL'],bb=b9['uri']||'',bc=!0x1;if(b9[cU(0x268)]!==void 0x0)bb=b6['getDependency']('bufferView',b9['bufferView'])['then'](function(bf){const cV=cU;bc=!0x0;let bg=new Blob([bf],{'type':b9['mimeType']});return bb=ba[cV(0x26b)](bg),bb;});else{if(b9['uri']===void 0x0)throw Error('THREE.GLTFLoader:\x20Image\x20'+b4+'\x20is\x20missing\x20URI\x20and\x20bufferView');}let bd=Promise['resolve'](bb)['then'](function(bf){return new Promise(function(bg,bh){let bi=bg;b5['isImageBitmapLoader']===!0x0&&(bi=function(bj){const cW=a1;let bk=new ap(bj);bk[cW(0x1eb)]=!0x0,bg(bk);}),b5['load'](aR['resolveURL'](bf,b8['path']),bi,void 0x0,bh);});})['then'](function(bf){const cX=cU;return bc===!0x0&&ba[cX(0x231)](bb),Z(bf,b9),bf['userData']['mimeType']=b9['mimeType']||st(b9['uri']),bf;})['catch'](function(bf){throw console['error']('THREE.GLTFLoader:\x20Couldn\x27t\x20load\x20texture',bb),bf;});return this['sourceCache'][b4]=bd,bd;}['assignTexture'](b4,b5,b6,b7){const cY=bO;let b8=this;return this['getDependency'](cY(0x27d),b6['index'])['then'](function(b9){const cZ=cY;if(!b9)return null;if(b6[cZ(0x220)]!==void 0x0&&b6[cZ(0x220)]>0x0&&(b9=b9['clone'](),b9['channel']=b6['texCoord']),b8['extensions'][I['KHR_TEXTURE_TRANSFORM']]){let ba=b6['extensions']===void 0x0?void 0x0:b6['extensions'][I['KHR_TEXTURE_TRANSFORM']];if(ba){let bb=b8['associations']['get'](b9);b9=b8['extensions'][I['KHR_TEXTURE_TRANSFORM']][cZ(0x22c)](b9,ba),b8['associations']['set'](b9,bb);}}return b7!==void 0x0&&(b9['colorSpace']=b7),b4[b5]=b9,b9;});}['assignFinalMaterial'](b4){const d0=bO;let b5=b4['geometry'],b6=b4['material'],b7=b5['attributes'][d0(0x265)]===void 0x0,b8=b5[d0(0x21f)]['color']!==void 0x0,b9=b5['attributes'][d0(0x24f)]===void 0x0;if(b4['isPoints']){let ba='PointsMaterial:'+b6['uuid'],bb=this['cache']['get'](ba);bb||(bb=new ax(),av[d0(0x1d3)][d0(0x292)]['call'](bb,b6),bb[d0(0x203)]['copy'](b6['color']),bb['map']=b6['map'],bb['sizeAttenuation']=!0x1,this['cache']['add'](ba,bb)),b6=bb;}else{if(b4['isLine']){let bc=d0(0x283)+b6['uuid'],bd=this['cache']['get'](bc);bd||(bd=new b2(),av['prototype'][d0(0x292)][d0(0x26e)](bd,b6),bd['color']['copy'](b6['color']),bd['map']=b6['map'],this['cache']['add'](bc,bd)),b6=bd;}}if(b7||b8||b9){let bf='ClonedMaterial:'+b6['uuid']+':';b7&&(bf+='derivative-tangents:'),b8&&(bf+='vertex-colors:'),b9&&(bf+='flat-shading:');let bg=this['cache']['get'](bf);bg||(bg=b6['clone'](),b8&&(bg['vertexColors']=!0x0),b9&&(bg['flatShading']=!0x0),b7&&(bg['normalScale']&&(bg['normalScale']['y']*=-0x1),bg['clearcoatNormalScale']&&(bg[d0(0x23f)]['y']*=-0x1)),this[d0(0x218)]['add'](bf,bg),this['associations']['set'](bg,this['associations']['get'](b6))),b6=bg;}b4[d0(0x222)]=b6;}['getMaterialType'](){return ay;}['loadMaterial'](b4){const d1=bO;let b5=this,b6=this['json'],b7=this['extensions'],b8=b6['materials'][b4],b9,ba={},bb=b8['extensions']||{},bc=[];if(bb[I['KHR_MATERIALS_UNLIT']]){let bf=b7[I['KHR_MATERIALS_UNLIT']];b9=bf['getMaterialType'](),bc[d1(0x294)](bf['extendParams'](ba,b8,b5));}else{let bg=b8['pbrMetallicRoughness']||{};if(ba['color']=new aP(0x1,0x1,0x1),ba['opacity']=0x1,Array['isArray'](bg['baseColorFactor'])){let bh=bg['baseColorFactor'];ba['color']['setRGB'](bh[0x0],bh[0x1],bh[0x2],ac),ba['opacity']=bh[0x3];}bg['baseColorTexture']!==void 0x0&&bc['push'](b5['assignTexture'](ba,'map',bg['baseColorTexture'],aZ)),ba['metalness']=bg[d1(0x1d6)]===void 0x0?0x1:bg['metallicFactor'],ba['roughness']=bg[d1(0x217)]===void 0x0?0x1:bg['roughnessFactor'],bg['metallicRoughnessTexture']!==void 0x0&&(bc['push'](b5['assignTexture'](ba,'metalnessMap',bg['metallicRoughnessTexture'])),bc[d1(0x294)](b5['assignTexture'](ba,'roughnessMap',bg['metallicRoughnessTexture']))),b9=this['_invokeOne'](function(bi){const d2=d1;return bi[d2(0x20c)]&&bi['getMaterialType'](b4);}),bc['push'](Promise['all'](this['_invokeAll'](function(bi){const d3=d1;return bi['extendMaterialParams']&&bi[d3(0x1d4)](b4,ba);})));}b8['doubleSided']===!0x0&&(ba['side']=0x2);let bd=b8['alphaMode']||Y['OPAQUE'];if(bd===Y['BLEND']?(ba[d1(0x1c8)]=!0x0,ba['depthWrite']=!0x1):(ba['transparent']=!0x1,bd===Y['MASK']&&(ba['alphaTest']=b8['alphaCutoff']===void 0x0?0.5:b8['alphaCutoff'])),b8[d1(0x244)]!==void 0x0&&b9!==aV&&(bc['push'](b5['assignTexture'](ba,'normalMap',b8['normalTexture'])),ba['normalScale']=new b3(0x1,0x1),b8['normalTexture']['scale']!==void 0x0)){let bi=b8['normalTexture']['scale'];ba['normalScale']['set'](bi,bi);}if(b8['occlusionTexture']!==void 0x0&&b9!==aV&&(bc['push'](b5['assignTexture'](ba,'aoMap',b8[d1(0x234)])),b8['occlusionTexture']['strength']!==void 0x0&&(ba['aoMapIntensity']=b8[d1(0x234)]['strength'])),b8[d1(0x28d)]!==void 0x0&&b9!==aV){let bj=b8['emissiveFactor'];ba['emissive']=new aP()['setRGB'](bj[0x0],bj[0x1],bj[0x2],ac);}return b8[d1(0x201)]!==void 0x0&&b9!==aV&&bc['push'](b5['assignTexture'](ba,'emissiveMap',b8['emissiveTexture'],aZ)),Promise['all'](bc)['then'](function(){const d4=d1;let bk=new b9(ba);return b8['name']&&(bk[d4(0x258)]=b8['name']),Z(bk,b8),b5['associations']['set'](bk,{'materials':b4}),b8['extensions']&&X(b7,bk,b8),bk;});}['createUniqueName'](b4){const d5=bO;let b5=aY[d5(0x1e4)](b4||'');return b5 in this['nodeNamesUsed']?b5+'_'+ ++this['nodeNamesUsed'][b5]:(this['nodeNamesUsed'][b5]=0x0,b5);}['loadGeometries'](b4){const d7=bO;let b5=this,b6=this['extensions'],b7=this['primitiveCache'];function b8(ba){const d6=a1;return b6[I['KHR_DRACO_MESH_COMPRESSION']][d6(0x248)](ba,b5)['then'](function(bb){return dt(bb,ba,b5);});}let b9=[];for(let ba=0x0,bb=b4['length'];ba<bb;ba++){let bc=b4[ba],bd=ot(bc),bf=b7[bd];if(bf)b9['push'](bf['promise']);else{let bg;bg=bc[d7(0x25c)]&&bc[d7(0x25c)][I['KHR_DRACO_MESH_COMPRESSION']]?b8(bc):dt(new aW(),bc,b5),b7[bd]={'primitive':bc,'promise':bg},b9['push'](bg);}}return Promise['all'](b9);}['loadMesh'](b4){const d8=bO;let b5=this,b6=this[d8(0x23a)],b7=this['extensions'],b8=b6['meshes'][b4],b9=b8['primitives'],ba=[];for(let bb=0x0,bc=b9['length'];bb<bc;bb++){let bd=b9[bb][d8(0x222)]===void 0x0?rt(this[d8(0x218)]):this['getDependency']('material',b9[bb][d8(0x222)]);ba['push'](bd);}return ba['push'](b5[d8(0x291)](b9)),Promise['all'](ba)[d8(0x235)](function(bf){const d9=d8;let bg=bf['slice'](0x0,bf['length']-0x1),bh=bf[bf['length']-0x1],bi=[];for(let bk=0x0,bl=bh['length'];bk<bl;bk++){let bm=bh[bk],bn=b9[bk],bo,bp=bg[bk];if(bn[d9(0x239)]===H['TRIANGLES']||bn['mode']===H['TRIANGLE_STRIP']||bn['mode']===H['TRIANGLE_FAN']||bn['mode']===void 0x0)bo=b8['isSkinnedMesh']===!0x0?new an(bm,bp):new aC(bm,bp),bo[d9(0x25e)]===!0x0&&bo['normalizeSkinWeights'](),bn['mode']===H['TRIANGLE_STRIP']?bo['geometry']=N(bo['geometry'],0x1):bn['mode']===H['TRIANGLE_FAN']&&(bo['geometry']=N(bo['geometry'],0x2));else{if(bn['mode']===H['LINES'])bo=new as(bm,bp);else{if(bn['mode']===H['LINE_STRIP'])bo=new aq(bm,bp);else{if(bn['mode']===H['LINE_LOOP'])bo=new a5(bm,bp);else{if(bn['mode']===H['POINTS'])bo=new aF(bm,bp);else throw Error(d9(0x1ea)+bn['mode']);}}}}Object[d9(0x254)](bo[d9(0x23b)]['morphAttributes'])['length']>0x0&&at(bo,b8),bo[d9(0x258)]=b5[d9(0x290)](b8['name']||'mesh_'+b4),Z(bo,b8),bn['extensions']&&X(b7,bo,bn),b5['assignFinalMaterial'](bo),bi['push'](bo);}for(let bq=0x0,br=bi[d9(0x266)];bq<br;bq++)b5[d9(0x28f)]['set'](bi[bq],{'meshes':b4,'primitives':bq});if(bi['length']===0x1)return b8['extensions']&&X(b7,bi[0x0],b8),bi[0x0];let bj=new aa();b8['extensions']&&X(b7,bj,b8),b5[d9(0x28f)][d9(0x1f5)](bj,{'meshes':b4});for(let bs=0x0,bt=bi['length'];bs<bt;bs++)bj['add'](bi[bs]);return bj;});}['loadCamera'](b4){const da=bO;let b5,b6=this['json'][da(0x29b)][b4],b7=b6[b6['type']];if(!b7){console[da(0x256)]('THREE.GLTFLoader:\x20Missing\x20camera\x20parameters.');return;}return b6['type']==='perspective'?b5=new aQ(aw['radToDeg'](b7['yfov']),b7['aspectRatio']||0x1,b7[da(0x1f1)]||0x1,b7[da(0x1e7)]||0x1e8480):b6[da(0x295)]==='orthographic'&&(b5=new aE(-b7['xmag'],b7['xmag'],b7['ymag'],-b7['ymag'],b7['znear'],b7[da(0x1e7)])),b6['name']&&(b5['name']=this['createUniqueName'](b6['name'])),Z(b5,b6),Promise['resolve'](b5);}['loadSkin'](b4){const db=bO;let b5=this['json']['skins'][b4],b6=[];for(let b7=0x0,b8=b5['joints']['length'];b7<b8;b7++)b6['push'](this['_loadNodeShallow'](b5[db(0x242)][b7]));return b5['inverseBindMatrices']===void 0x0?b6['push'](null):b6['push'](this['getDependency']('accessor',b5[db(0x1ed)])),Promise[db(0x1de)](b6)['then'](function(b9){const dc=db;let ba=b9['pop'](),bb=b9,bc=[],bd=[];for(let bf=0x0,bg=bb['length'];bf<bg;bf++){let bh=bb[bf];if(bh){bc['push'](bh);let bi=new a3();ba!==null&&bi['fromArray'](ba['array'],bf*0x10),bd['push'](bi);}else console['warn']('THREE.GLTFLoader:\x20Joint\x20\x22%s\x22\x20could\x20not\x20be\x20found.',b5[dc(0x242)][bf]);}return new a9(bc,bd);});}['loadAnimation'](b4){const dd=bO;let b5=this[dd(0x23a)],b6=this,b7=b5[dd(0x296)][b4],b8=b7['name']?b7['name']:'animation_'+b4,b9=[],ba=[],bb=[],bc=[],bd=[];for(let bf=0x0,bg=b7[dd(0x1d7)]['length'];bf<bg;bf++){let bh=b7['channels'][bf],bi=b7['samplers'][bh['sampler']],bj=bh['target'],bk=bj['node'],bl=b7[dd(0x20b)]===void 0x0?bi['input']:b7['parameters'][bi['input']],bm=b7['parameters']===void 0x0?bi['output']:b7['parameters'][bi['output']];bj['node']!==void 0x0&&(b9[dd(0x294)](this['getDependency']('node',bk)),ba['push'](this['getDependency']('accessor',bl)),bb[dd(0x294)](this[dd(0x208)]('accessor',bm)),bc['push'](bi),bd['push'](bj));}return Promise['all']([Promise['all'](b9),Promise['all'](ba),Promise[dd(0x1de)](bb),Promise['all'](bc),Promise[dd(0x1de)](bd)])['then'](function(bn){let bo=bn[0x0],bp=bn[0x1],bq=bn[0x2],br=bn[0x3],bs=bn[0x4],bt=[];for(let bv=0x0,bw=bo['length'];bv<bw;bv++){let bx=bo[bv],by=bp[bv],bz=bq[bv],bA=br[bv],bB=bs[bv];if(bx===void 0x0)continue;bx['updateMatrix']&&bx['updateMatrix']();let bC=b6['_createAnimationTracks'](bx,by,bz,bA,bB);if(bC){for(let bD=0x0;bD<bC['length'];bD++)bt['push'](bC[bD]);}}let bu=new aS(b8,void 0x0,bt);return Z(bu,b7),bu;});}['createNodeMesh'](b4){const df=bO;let b5=this['json'],b6=this,b7=b5['nodes'][b4];return b7['mesh']===void 0x0?null:b6['getDependency'](df(0x1df),b7['mesh'])['then'](function(b8){const dg=df;let b9=b6['_getNodeRef'](b6['meshCache'],b7['mesh'],b8);return b7['weights']!==void 0x0&&b9[dg(0x274)](function(ba){if(ba['isMesh']){for(let bb=0x0,bc=b7['weights']['length'];bb<bc;bb++)ba['morphTargetInfluences'][bb]=b7['weights'][bb];}}),b9;});}[bO(0x23d)](b4){const dh=bO;let b5=this['json'],b6=this,b7=b5['nodes'][b4],b8=b6['_loadNodeShallow'](b4),b9=[],ba=b7['children']||[];for(let bc=0x0,bd=ba['length'];bc<bd;bc++)b9['push'](b6[dh(0x208)]('node',ba[bc]));let bb=b7['skin']===void 0x0?Promise[dh(0x26d)](null):b6['getDependency']('skin',b7['skin']);return Promise['all']([b8,Promise['all'](b9),bb])['then'](function(bf){const di=dh;let bg=bf[0x0],bh=bf[0x1],bi=bf[0x2];bi!==null&&bg[di(0x274)](function(bj){bj['isSkinnedMesh']&&bj['bind'](bi,ct);});for(let bj=0x0,bk=bh['length'];bj<bk;bj++)bg[di(0x22a)](bh[bj]);if(bg[di(0x228)]['pivot']!==void 0x0&&bh['length']>0x0){let bl=bg['userData']['pivot'],bm=bh[0x0];bg['pivot']=new a6()['fromArray'](bl),bg['position']['x']-=bl[0x0],bg['position']['y']-=bl[0x1],bg['position']['z']-=bl[0x2],bm['position'][di(0x1f5)](0x0,0x0,0x0),delete bg['userData']['pivot'];}return bg;});}['_loadNodeShallow'](b4){const dj=bO;let b5=this[dj(0x23a)],b6=this['extensions'],b7=this;if(this[dj(0x287)][b4]!==void 0x0)return this['nodeCache'][b4];let b8=b5['nodes'][b4],b9=b8['name']?b7['createUniqueName'](b8[dj(0x258)]):'',ba=[],bb=b7['_invokeOne'](function(bc){return bc['createNodeMesh']&&bc['createNodeMesh'](b4);});return bb&&ba['push'](bb),b8['camera']!==void 0x0&&ba[dj(0x294)](b7[dj(0x208)]('camera',b8['camera'])['then'](function(bc){const dk=dj;return b7[dk(0x247)](b7['cameraCache'],b8['camera'],bc);})),b7['_invokeAll'](function(bc){const dl=dj;return bc[dl(0x25f)]&&bc['createNodeAttachment'](b4);})[dj(0x288)](function(bc){ba['push'](bc);}),this['nodeCache'][b4]=Promise['all'](ba)['then'](function(bc){const dm=dj;let bd;if(bd=b8['isBone']===!0x0?new aN():bc[dm(0x266)]>0x1?new aa():bc['length']===0x1?bc[0x0]:new aB(),bd!==bc[0x0]){for(let bf=0x0,bg=bc[dm(0x266)];bf<bg;bf++)bd['add'](bc[bf]);}if(b8['name']&&(bd['userData']['name']=b8['name'],bd['name']=b9),Z(bd,b8),b8['extensions']&&X(b6,bd,b8),b8['matrix']!==void 0x0){let bh=new a3();bh['fromArray'](b8[dm(0x20a)]),bd[dm(0x282)](bh);}else b8['translation']!==void 0x0&&bd['position'][dm(0x20f)](b8['translation']),b8['rotation']!==void 0x0&&bd['quaternion']['fromArray'](b8['rotation']),b8['scale']!==void 0x0&&bd['scale']['fromArray'](b8['scale']);if(!b7['associations']['has'](bd))b7[dm(0x28f)]['set'](bd,{});else{if(b8['mesh']!==void 0x0&&b7[dm(0x25d)]['refs'][b8['mesh']]>0x1){let bi=b7[dm(0x28f)][dm(0x21d)](bd);b7['associations']['set'](bd,t({},bi));}}return b7[dm(0x28f)]['get'](bd)['nodes']=b4,bd;}),this['nodeCache'][b4];}['loadScene'](b4){const dn=bO;let b5=this['extensions'],b6=this['json']['scenes'][b4],b7=this,b8=new aa();b6[dn(0x258)]&&(b8['name']=b7['createUniqueName'](b6['name'])),Z(b8,b6),b6['extensions']&&X(b5,b8,b6);let b9=b6['nodes']||[],ba=[];for(let bb=0x0,bc=b9['length'];bb<bc;bb++)ba['push'](b7['getDependency']('node',b9[bb]));return Promise['all'](ba)['then'](function(bd){const dp=dn;for(let bf=0x0,bg=bd['length'];bf<bg;bf++){let bh=bd[bf];bh['parent']===null?b8[dp(0x22a)](bh):b8['add'](Ae(bh));}return b7['associations']=(bi=>{const dq=dp;let bj=new Map();for(let [bk,bl]of b7['associations'])(bk instanceof av||bk instanceof ap)&&bj['set'](bk,bl);return bi[dq(0x274)](bm=>{const dr=dq;let bn=b7['associations'][dr(0x21d)](bm);bn!=null&&bj['set'](bm,bn);}),bj;})(b8),b8;});}['_createAnimationTracks'](b4,b5,b6,b7,b8){const ds=bO;let b9=[],ba=b4['name']?b4['name']:b4['uuid'],bb=[];function bc(bh){bh['morphTargetInfluences']&&bb['push'](bh['name']?bh['name']:bh['uuid']);}J[b8['path']]===J['weights']?(bc(b4),b4[ds(0x1d2)]&&b4['children']['forEach'](bc)):bb['push'](ba);let bd;switch(J[b8['path']]){case J['weights']:bd=aX;break;case J['rotation']:bd=az;break;case J['translation']:case J['scale']:bd=af;break;default:switch(b6['itemSize']){case 0x1:bd=aX;break;default:bd=af;break;}break;}let bf=b7['interpolation']===void 0x0?ai:nt[b7['interpolation']],bg=this['_getArrayFromAccessor'](b6);for(let bh=0x0,bi=bb['length'];bh<bi;bh++){let bj=new bd(bb[bh]+'.'+J[b8['path']],b5['array'],bg,bf);b7['interpolation']==='CUBICSPLINE'&&this['_createCubicSplineTrackInterpolant'](bj),b9['push'](bj);}return b9;}[bO(0x1e2)](b4){let b5=b4['array'];if(b4['normalized']){let b6=$(b5['constructor']),b7=new Float32Array(b5['length']);for(let b8=0x0,b9=b5['length'];b8<b9;b8++)b7[b8]=b5[b8]*b6;b5=b7;}return b5;}['_createCubicSplineTrackInterpolant'](b4){b4['createInterpolant']=function(b5){return new(this instanceof az?tt:V)(this['times'],this['values'],this['getValueSize']()/0x3,b5);},b4['createInterpolant']['isInterpolantFactoryMethodGLTFCubicSpline']=!0x0;}};function ut(b4,b5,b6){const du=bO;let b7=b5['attributes'],b8=new aT();if(b7['POSITION']!==void 0x0){let bb=b6['json']['accessors'][b7['POSITION']],bc=bb[du(0x246)],bd=bb['max'];if(bc!==void 0x0&&bd!==void 0x0){if(b8['set'](new a6(bc[0x0],bc[0x1],bc[0x2]),new a6(bd[0x0],bd[0x1],bd[0x2])),bb[du(0x28e)]){let bf=$(U[bb['componentType']]);b8['min'][du(0x1dc)](bf),b8['max'][du(0x1dc)](bf);}}else{console[du(0x256)]('THREE.GLTFLoader:\x20Missing\x20min/max\x20properties\x20for\x20accessor\x20POSITION.');return;}}else return;let b9=b5['targets'];if(b9!==void 0x0){let bg=new a6(),bh=new a6();for(let bi=0x0,bj=b9['length'];bi<bj;bi++){let bk=b9[bi];if(bk['POSITION']!==void 0x0){let bl=b6['json']['accessors'][bk['POSITION']],bm=bl['min'],bn=bl['max'];if(bm!==void 0x0&&bn!==void 0x0){if(bh[du(0x281)](Math['max'](Math[du(0x27a)](bm[0x0]),Math[du(0x27a)](bn[0x0]))),bh['setY'](Math['max'](Math['abs'](bm[0x1]),Math['abs'](bn[0x1]))),bh[du(0x253)](Math['max'](Math['abs'](bm[0x2]),Math[du(0x27a)](bn[0x2]))),bl['normalized']){let bo=$(U[bl['componentType']]);bh[du(0x1dc)](bo);}bg['max'](bh);}else console['warn']('THREE.GLTFLoader:\x20Missing\x20min/max\x20properties\x20for\x20accessor\x20POSITION.');}}b8['expandByVector'](bg);}b4['boundingBox']=b8;let ba=new aJ();b8['getCenter'](ba['center']),ba['radius']=b8['min']['distanceTo'](b8[du(0x21e)])/0x2,b4['boundingSphere']=ba;}function dt(b4,b5,b6){const dw=bO;let b7=b5['attributes'],b8=[];function b9(ba,bb){const dv=a1;return b6['getDependency']('accessor',ba)[dv(0x235)](function(bc){b4['setAttribute'](bb,bc);});}for(let ba in b7){let bb=q[ba]||ba['toLowerCase']();bb in b4[dw(0x21f)]||b8[dw(0x294)](b9(b7[ba],bb));}if(b5['indices']!==void 0x0&&!b4['index']){let bc=b6['getDependency']('accessor',b5[dw(0x1f7)])['then'](function(bd){b4['setIndex'](bd);});b8['push'](bc);}return aM['workingColorSpace']!==dw(0x1e8)&&'COLOR_0'in b7&&console['warn']('THREE.GLTFLoader:\x20Converting\x20vertex\x20colors\x20from\x20\x22srgb-linear\x22\x20to\x20\x22'+aM['workingColorSpace']+'\x22\x20not\x20supported.'),Z(b4,b5),ut(b4,b5,b6),Promise['all'](b8)['then'](function(){return b5['targets']===void 0x0?b4:it(b4,b5['targets'],b6);});}export{je as GLTFLoader};
1
+ function a0(){const dA=['KHR_MATERIALS_TRANSMISSION','nodeNamesUsed','parse','skeleton','children','light','resolve','offset','KHR_binary_glTF','getCenter','KHR_MATERIALS_VOLUME','30xyENYm','images','extendParams','wrapT','136SAuhEC','indices','sort','COLOR_0','TRIANGLES','push','refs','145782iGgBhd','Firefox','iridescenceTexture','emissiveFactor','byteLength','dracoLoader','target','THREE.GLTFLoader:\x20Invalid\x20plugin\x20found:\x20missing\x20name','clearcoatFactor','metallicRoughnessTexture','loadBuffer','getDependency','SCALAR','clearcoatTexture','364347jJOoYL','KHR_MATERIALS_IOR','keys','material','primitiveCache','scene','_loadNodeShallow','vertex-colors:','sampleValues','KHR_materials_volume','KHR_materials_dispersion','LINE_STRIP','normalMap','byteStride','strength','_addNodeRef','TRIANGLE_STRIP','filter','getUint32','accessor','traverse','iridescenceThicknessRange','get','mesh','KHR_TEXTURE_TRANSFORM','EXT_TEXTURE_AVIF','match','call','normalScale','clearcoat','2058282hgAdNI','fileLoader','decodePrimitive','morphTargetInfluences','extensions','15UykYci','updateMorphTargets','setY','buffer','clearcoatRoughnessTexture','THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Undefined\x20position\x20attribute.\x20Processing\x20not\x20possible.','getIndex','clearcoatMap','toLowerCase','inverseBindMatrices','loadAnimation','json','requestHeader','range','KHR_materials_anisotropy','manager','outerConeAngle','source','thicknessTexture','metallicFactor','normalized','type','3151664gazZHL','lightCache','options','slice','scale','POSITION','textureLoader','name','resolveURL','cameraCache','bumpFactor','associations','_createAnimationTracks','userData','assignTexture','SCALE','magic','intensity','flipY','point','iridescenceThicknessMap','10866207ixhwnG','path','count','accessors','itemError','TRANSLATION','baseColorTexture','clone','min','alphaMode','_markDefs','targetNames','loadSkin','rotation','warn','indexOf','30WmSCIH','iridescenceIOR','DefaultMaterial','loadImageSource','bufferViews','sourceCache','decode','normal','mimeType','search','KHR_mesh_quantization','plugins','quaternion','KHR_MATERIALS_UNLIT','cache','srgb-linear','opacity','materials','radToDeg','emissive','multiplyScalar','copy','parser','abs','THREE.GLTFLoader:\x20Unsupported\x20glTF-Binary\x20header.','THREE.GLTFLoader:\x20Ignoring\x20primitive\x20type\x20.extras,\x20','extensionsUsed','light:','MASK','spot','componentType','geometry','uri','bones','isBone','set','_invokeOne','workingColorSpace','nodes','header','extras','anisotropyStrength','weights','setX','sheenColorTexture','node','nodeCache','loadTexture','byteOffset','add','mode','clearGroups','register','side','input','sampler','73605UHLwzg','anisotropyTexture','length','JSON','attributes','attenuationColor','baseColorFactor','isMesh','all','targets','unshift','assignFinalMaterial','position','index','matrix','loadTextureImage','clear','_getArrayFromAccessor','314838rjySTq','createNodeAttachment','setMatrixAt','valueSize','sheenRoughnessMap','then','wrapS','itemSize','xmag','color','_invokeAll','meshoptDecoder','getMaterialType','KHR_materials_unlit','applyMatrix4','loadMaterial','createUniqueName','catch','EXT_materials_bump','repeat'];a0=function(){return dA;};return a0();}const bO=a1;(function(b4,b5){const bE=a1,b6=b4();while(!![]){try{const b7=parseInt(bE(0x193))/0x1*(parseInt(bE(0x15b))/0x2)+-parseInt(bE(0x1a5))/0x3+parseInt(bE(0x136))/0x4+-parseInt(bE(0x120))/0x5*(-parseInt(bE(0x11b))/0x6)+parseInt(bE(0x1cf))/0x7+parseInt(bE(0x1c8))/0x8*(parseInt(bE(0xfd))/0x9)+parseInt(bE(0x1c4))/0xa*(-parseInt(bE(0x14b))/0xb);if(b7===b5)break;else b6['push'](b6['shift']());}catch(b8){b6['push'](b6['shift']());}}}(a0,0x89230));import{n as a2,t}from'./objectSpread2.js';import{$ as a3,A as a4,B as a5,Bt as a6,C as a7,Ct as a8,Dt as a9,E as aa,Ft as ab,G as ac,H as ad,Ht as af,I as ag,K as ah,L as ai,M as aj,Mt as ak,N as al,O as am,Ot as an,P as ao,Pt as ap,R as aq,U as ar,V as as,W as au,X as av,Z as aw,_t as ax,at as ay,bt as az,ct as aA,dt as aB,et as aC,f as aD,ft as aE,gt as aF,ht as aG,it as aH,k as aI,kt as aJ,l as aK,lt as aL,m as aM,o as aN,ot as aO,p as aP,pt as aQ,q as aR,r as aS,s as aT,st as aU,tt as aV,u as aW,ut as aX,vt as aY,wt as aZ,x as b0,yt as b1,z as b2,zt as b3}from'./three.module.js';function N(b4,b5){const bF=a1;if(b5===0x0)return console['warn']('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Geometry\x20already\x20defined\x20as\x20triangles.'),b4;if(b5===0x2||b5===0x1){let b6=b4[bF(0x126)]();if(b6===null){let ba=[],bb=b4['getAttribute']('position');if(bb!==void 0x0){for(let bc=0x0;bc<bb['count'];bc++)ba['push'](bc);b4['setIndex'](ba),b6=b4['getIndex']();}else return console['error'](bF(0x125)),b4;}let b7=b6['count']-0x2,b8=[];if(b5===0x2){for(let bd=0x1;bd<=b7;bd++)b8['push'](b6['getX'](0x0)),b8['push'](b6['getX'](bd)),b8['push'](b6['getX'](bd+0x1));}else{for(let bf=0x0;bf<b7;bf++)bf%0x2==0x0?(b8['push'](b6['getX'](bf)),b8['push'](b6['getX'](bf+0x1)),b8['push'](b6['getX'](bf+0x2))):(b8['push'](b6['getX'](bf+0x2)),b8['push'](b6['getX'](bf+0x1)),b8[bF(0x1cd)](b6['getX'](bf)));}b8['length']/0x3!==b7&&console['error']('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Unable\x20to\x20generate\x20correct\x20amount\x20of\x20triangles.');let b9=b4['clone']();return b9['setIndex'](b8),b9[bF(0x18e)](),b9;}else return console['error']('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Unknown\x20draw\x20mode:',b5),b4;}function Ae(b4){let b5=new Map(),b6=new Map(),b7=b4['clone']();return P(b4,b7,function(b8,b9){b5['set'](b9,b8),b6['set'](b8,b9);}),b7['traverse'](function(b8){const bG=a1;if(!b8['isSkinnedMesh'])return;let b9=b8,ba=b5['get'](b8),bb=ba['skeleton']['bones'];b9[bG(0x1bc)]=ba['skeleton']['clone'](),b9['bindMatrix']['copy'](ba['bindMatrix']),b9['skeleton'][bG(0x17c)]=bb['map'](function(bc){return b6['get'](bc);}),b9['bind'](b9['skeleton'],b9['bindMatrix']);}),b7;}function P(b4,b5,b6){b6(b4,b5);for(let b7=0x0;b7<b4['children']['length'];b7++)P(b4['children'][b7],b5['children'][b7],b6);}a2();var je=class extends ah{constructor(b4){const bH=a1;super(b4),this['dracoLoader']=null,this['ktx2Loader']=null,this[bH(0x1b0)]=null,this['pluginCallbacks']=[],this['register'](function(b5){return new Ie(b5);}),this['register'](function(b5){return new Le(b5);}),this[bH(0x18f)](function(b5){return new Ke(b5);}),this['register'](function(b5){return new qe(b5);}),this['register'](function(b5){return new Je(b5);}),this['register'](function(b5){return new ze(b5);}),this['register'](function(b5){return new Be(b5);}),this[bH(0x18f)](function(b5){return new Ve(b5);}),this['register'](function(b5){return new He(b5);}),this['register'](function(b5){return new Fe(b5);}),this[bH(0x18f)](function(b5){return new Ue(b5);}),this['register'](function(b5){return new Re(b5);}),this[bH(0x18f)](function(b5){return new Ge(b5);}),this[bH(0x18f)](function(b5){return new We(b5);}),this['register'](function(b5){return new Ne(b5);}),this[bH(0x18f)](function(b5){return new L(b5,I['EXT_MESHOPT_COMPRESSION']);}),this['register'](function(b5){return new L(b5,I['KHR_MESHOPT_COMPRESSION']);}),this['register'](function(b5){return new Ye(b5);});}['load'](b4,b5,b6,b7){const bI=a1;let b8=this,b9;if(this['resourcePath']!=='')b9=this['resourcePath'];else{if(this[bI(0x14c)]!==''){let bc=aR['extractUrlBase'](b4);b9=aR['resolveURL'](bc,this[bI(0x14c)]);}else b9=aR['extractUrlBase'](b4);}this[bI(0x12f)]['itemStart'](b4);let ba=function(bd){const bJ=bI;b7?b7(bd):console['error'](bd),b8['manager'][bJ(0x14f)](b4),b8[bJ(0x12f)]['itemEnd'](b4);},bb=new a7(this[bI(0x12f)]);bb['setPath'](this['path']),bb['setResponseType']('arraybuffer'),bb['setRequestHeader'](this[bI(0x12c)]),bb['setWithCredentials'](this['withCredentials']),bb['load'](b4,function(bd){const bK=bI;try{b8[bK(0x1bb)](bd,b9,function(bf){b5(bf),b8['manager']['itemEnd'](b4);},ba);}catch(bf){ba(bf);}},b6,ba);}['setDRACOLoader'](b4){return this['dracoLoader']=b4,this;}['setKTX2Loader'](b4){return this['ktx2Loader']=b4,this;}['setMeshoptDecoder'](b4){return this['meshoptDecoder']=b4,this;}['register'](b4){return this['pluginCallbacks']['indexOf'](b4)===-0x1&&this['pluginCallbacks']['push'](b4),this;}['unregister'](b4){const bL=a1;return this['pluginCallbacks']['indexOf'](b4)!==-0x1&&this['pluginCallbacks']['splice'](this['pluginCallbacks'][bL(0x15a)](b4),0x1),this;}['parse'](b4,b5,b6,b7){const bM=a1;let b8,b9={},ba={},bb=new TextDecoder();if(typeof b4=='string')b8=JSON[bM(0x1bb)](b4);else{if(b4 instanceof ArrayBuffer){if(bb['decode'](new Uint8Array(b4,0x0,0x4))===R){try{b9[I['KHR_BINARY_GLTF']]=new Xe(b4);}catch(bd){b7&&b7(bd);return;}b8=JSON['parse'](b9[I['KHR_BINARY_GLTF']]['content']);}else b8=JSON['parse'](bb[bM(0x161)](b4));}else b8=b4;}if(b8['asset']===void 0x0||b8['asset']['version'][0x0]<0x2){b7&&b7(Error('THREE.GLTFLoader:\x20Unsupported\x20asset.\x20glTF\x20versions\x20>=2.0\x20are\x20supported.'));return;}let bc=new lt(b8,{'path':b5||this['resourcePath']||'','crossOrigin':this['crossOrigin'],'requestHeader':this['requestHeader'],'manager':this['manager'],'ktx2Loader':this['ktx2Loader'],'meshoptDecoder':this['meshoptDecoder']});bc[bM(0x11c)]['setRequestHeader'](this['requestHeader']);for(let bf=0x0;bf<this['pluginCallbacks']['length'];bf++){let bg=this['pluginCallbacks'][bf](bc);bg['name']||console['error'](bM(0xf6)),ba[bg['name']]=bg,b9[bg['name']]=!0x0;}if(b8['extensionsUsed'])for(let bh=0x0;bh<b8['extensionsUsed'][bM(0x195)];++bh){let bi=b8[bM(0x175)][bh],bj=b8['extensionsRequired']||[];switch(bi){case I[bM(0x168)]:b9[bi]=new Pe();break;case I['KHR_DRACO_MESH_COMPRESSION']:b9[bi]=new Ze(b8,this['dracoLoader']);break;case I['KHR_TEXTURE_TRANSFORM']:b9[bi]=new Qe();break;case I['KHR_MESH_QUANTIZATION']:b9[bi]=new $e();break;default:bj['indexOf'](bi)>=0x0&&ba[bi]===void 0x0&&console['warn']('THREE.GLTFLoader:\x20Unknown\x20extension\x20\x22'+bi+'\x22.');}}bc['setExtensions'](b9),bc['setPlugins'](ba),bc['parse'](b6,b7);}['parseAsync'](b4,b5){let b6=this;return new Promise(function(b7,b8){b6['parse'](b4,b5,b7,b8);});}};function Me(){let b4={};return{'get':function(b5){return b4[b5];},'add':function(b5,b6){b4[b5]=b6;},'remove':function(b5){delete b4[b5];},'removeAll':function(){b4={};}};}function F(b4,b5,b6){const bN=a1;let b7=b4['json'][bN(0x16c)][b5];return b7['extensions']&&b7['extensions'][b6]?b7['extensions'][b6]:null;}var I={'KHR_BINARY_GLTF':bO(0x1c1),'KHR_DRACO_MESH_COMPRESSION':'KHR_draco_mesh_compression','KHR_LIGHTS_PUNCTUAL':'KHR_lights_punctual','KHR_MATERIALS_CLEARCOAT':'KHR_materials_clearcoat','KHR_MATERIALS_DISPERSION':bO(0x107),'KHR_MATERIALS_IOR':'KHR_materials_ior','KHR_MATERIALS_SHEEN':'KHR_materials_sheen','KHR_MATERIALS_SPECULAR':'KHR_materials_specular','KHR_MATERIALS_TRANSMISSION':'KHR_materials_transmission','KHR_MATERIALS_IRIDESCENCE':'KHR_materials_iridescence','KHR_MATERIALS_ANISOTROPY':bO(0x12e),'KHR_MATERIALS_UNLIT':bO(0x1b2),'KHR_MATERIALS_VOLUME':bO(0x106),'KHR_TEXTURE_BASISU':'KHR_texture_basisu','KHR_TEXTURE_TRANSFORM':'KHR_texture_transform','KHR_MESH_QUANTIZATION':bO(0x165),'KHR_MATERIALS_EMISSIVE_STRENGTH':'KHR_materials_emissive_strength','EXT_MATERIALS_BUMP':bO(0x1b7),'EXT_TEXTURE_WEBP':'EXT_texture_webp','EXT_TEXTURE_AVIF':'EXT_texture_avif','EXT_MESHOPT_COMPRESSION':'EXT_meshopt_compression','KHR_MESHOPT_COMPRESSION':'KHR_meshopt_compression','EXT_MESH_GPU_INSTANCING':'EXT_mesh_gpu_instancing'},Ne=class{constructor(b4){const bP=bO;this['parser']=b4,this['name']=I['KHR_LIGHTS_PUNCTUAL'],this[bP(0x169)]={'refs':{},'uses':{}};}[bO(0x155)](){const bQ=bO;let b4=this['parser'],b5=this['parser'][bQ(0x12b)][bQ(0x181)]||[];for(let b6=0x0,b7=b5['length'];b6<b7;b6++){let b8=b5[b6];b8['extensions']&&b8['extensions'][this['name']]&&b8['extensions'][this['name']]['light']!==void 0x0&&b4['_addNodeRef'](this['cache'],b8['extensions'][this['name']]['light']);}}['_loadLight'](b4){const bR=bO;let b5=this['parser'],b6=bR(0x176)+b4,b7=b5[bR(0x169)]['get'](b6);if(b7)return b7;let b8=b5['json'],b9=((b8[bR(0x11f)]&&b8['extensions'][this[bR(0x13d)]]||{})['lights']||[])[b4],ba,bb=new aP(0xffffff);b9['color']!==void 0x0&&bb['setRGB'](b9['color'][0x0],b9['color'][0x1],b9['color'][0x2],ac);let bc=b9[bR(0x12d)]===void 0x0?0x0:b9['range'];switch(b9['type']){case'directional':ba=new b0(bb),ba[bR(0xf5)][bR(0x19f)]['set'](0x0,0x0,-0x1),ba['add'](ba['target']);break;case bR(0x149):ba=new aG(bb),ba['distance']=bc;break;case'spot':ba=new ak(bb),ba['distance']=bc,b9['spot']=b9[bR(0x178)]||{},b9['spot']['innerConeAngle']=b9['spot']['innerConeAngle']===void 0x0?0x0:b9['spot']['innerConeAngle'],b9['spot']['outerConeAngle']=b9['spot']['outerConeAngle']===void 0x0?Math['PI']/0x4:b9['spot']['outerConeAngle'],ba['angle']=b9['spot']['outerConeAngle'],ba['penumbra']=0x1-b9['spot']['innerConeAngle']/b9[bR(0x178)][bR(0x130)],ba['target'][bR(0x19f)]['set'](0x0,0x0,-0x1),ba['add'](ba['target']);break;default:throw Error('THREE.GLTFLoader:\x20Unexpected\x20light\x20type:\x20'+b9['type']);}return ba[bR(0x19f)]['set'](0x0,0x0,0x0),Z(ba,b9),b9[bR(0x147)]!==void 0x0&&(ba['intensity']=b9[bR(0x147)]),ba[bR(0x13d)]=b5['createUniqueName'](b9[bR(0x13d)]||'light_'+b4),b7=Promise['resolve'](ba),b5['cache']['add'](b6,b7),b7;}['getDependency'](b4,b5){if(b4==='light')return this['_loadLight'](b5);}['createNodeAttachment'](b4){const bS=bO;let b5=this,b6=this['parser'],b7=b6['json']['nodes'][b4],b8=(b7['extensions']&&b7[bS(0x11f)][this[bS(0x13d)]]||{})[bS(0x1be)];return b8===void 0x0?null:this['_loadLight'](b8)['then'](function(b9){return b6['_getNodeRef'](b5['cache'],b8,b9);});}},Pe=class{constructor(){const bT=bO;this['name']=I[bT(0x168)];}['getMaterialType'](){return aV;}[bO(0x1c6)](b4,b5,b6){const bU=bO;let b7=[];b4['color']=new aP(0x1,0x1,0x1),b4['opacity']=0x1;let b8=b5['pbrMetallicRoughness'];if(b8){if(Array['isArray'](b8['baseColorFactor'])){let b9=b8['baseColorFactor'];b4['color']['setRGB'](b9[0x0],b9[0x1],b9[0x2],ac),b4['opacity']=b9[0x3];}b8[bU(0x151)]!==void 0x0&&b7['push'](b6['assignTexture'](b4,'map',b8['baseColorTexture'],aZ));}return Promise['all'](b7);}},Fe=class{constructor(b4){const bV=bO;this[bV(0x171)]=b4,this['name']=I['KHR_MATERIALS_EMISSIVE_STRENGTH'];}['extendMaterialParams'](b4,b5){const bW=bO;let b6=F(this['parser'],b4,this[bW(0x13d)]);return b6===null||b6['emissiveStrength']!==void 0x0&&(b5['emissiveIntensity']=b6['emissiveStrength']),Promise[bW(0x1bf)]();}},Ie=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_CLEARCOAT'];}[bO(0x1b1)](b4){const bX=bO;return F(this[bX(0x171)],b4,this[bX(0x13d)])===null?null:aH;}['extendMaterialParams'](b4,b5){const bY=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];if(b6['clearcoatFactor']!==void 0x0&&(b5[bY(0x11a)]=b6[bY(0xf7)]),b6['clearcoatTexture']!==void 0x0&&b7[bY(0x1cd)](this[bY(0x171)]['assignTexture'](b5,bY(0x127),b6[bY(0xfc)])),b6['clearcoatRoughnessFactor']!==void 0x0&&(b5['clearcoatRoughness']=b6['clearcoatRoughnessFactor']),b6['clearcoatRoughnessTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'clearcoatRoughnessMap',b6[bY(0x124)])),b6['clearcoatNormalTexture']!==void 0x0&&(b7['push'](this['parser'][bY(0x144)](b5,'clearcoatNormalMap',b6['clearcoatNormalTexture'])),b6['clearcoatNormalTexture']['scale']!==void 0x0)){let b8=b6['clearcoatNormalTexture'][bY(0x13a)];b5['clearcoatNormalScale']=new b3(b8,b8);}return Promise['all'](b7);}},Le=class{constructor(b4){const bZ=bO;this[bZ(0x171)]=b4,this['name']=I['KHR_MATERIALS_DISPERSION'];}[bO(0x1b1)](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c0=bO;let b6=F(this[c0(0x171)],b4,this[c0(0x13d)]);return b6===null||(b5['dispersion']=b6['dispersion']===void 0x0?0x0:b6['dispersion']),Promise['resolve']();}},Re=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_IRIDESCENCE'];}['getMaterialType'](b4){const c1=bO;return F(this['parser'],b4,this[c1(0x13d)])===null?null:aH;}['extendMaterialParams'](b4,b5){const c2=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];return b6['iridescenceFactor']!==void 0x0&&(b5['iridescence']=b6['iridescenceFactor']),b6[c2(0xf1)]!==void 0x0&&b7['push'](this['parser'][c2(0x144)](b5,'iridescenceMap',b6['iridescenceTexture'])),b6['iridescenceIor']!==void 0x0&&(b5[c2(0x15c)]=b6['iridescenceIor']),b5['iridescenceThicknessRange']===void 0x0&&(b5['iridescenceThicknessRange']=[0x64,0x190]),b6['iridescenceThicknessMinimum']!==void 0x0&&(b5['iridescenceThicknessRange'][0x0]=b6['iridescenceThicknessMinimum']),b6['iridescenceThicknessMaximum']!==void 0x0&&(b5[c2(0x112)][0x1]=b6['iridescenceThicknessMaximum']),b6['iridescenceThicknessTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,c2(0x14a),b6['iridescenceThicknessTexture'])),Promise['all'](b7);}},ze=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_SHEEN'];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c3=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];if(b5['sheenColor']=new aP(0x0,0x0,0x0),b5['sheenRoughness']=0x0,b5['sheen']=0x1,b6['sheenColorFactor']!==void 0x0){let b8=b6['sheenColorFactor'];b5['sheenColor']['setRGB'](b8[0x0],b8[0x1],b8[0x2],ac);}return b6['sheenRoughnessFactor']!==void 0x0&&(b5['sheenRoughness']=b6['sheenRoughnessFactor']),b6['sheenColorTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'sheenColorMap',b6[c3(0x187)],aZ)),b6['sheenRoughnessTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,c3(0x1a9),b6['sheenRoughnessTexture'])),Promise[c3(0x19b)](b7);}},Be=class{constructor(b4){const c4=bO;this['parser']=b4,this[c4(0x13d)]=I[c4(0x1b9)];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c5=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];return b6['transmissionFactor']!==void 0x0&&(b5['transmission']=b6['transmissionFactor']),b6['transmissionTexture']!==void 0x0&&b7[c5(0x1cd)](this['parser']['assignTexture'](b5,'transmissionMap',b6['transmissionTexture'])),Promise['all'](b7);}},Ve=class{constructor(b4){const c6=bO;this['parser']=b4,this['name']=I[c6(0x1c3)];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const c7=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];b5['thickness']=b6['thicknessFactor']===void 0x0?0x0:b6['thicknessFactor'],b6[c7(0x132)]!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'thicknessMap',b6['thicknessTexture'])),b5['attenuationDistance']=b6['attenuationDistance']||Infinity;let b8=b6[c7(0x198)]||[0x1,0x1,0x1];return b5['attenuationColor']=new aP()['setRGB'](b8[0x0],b8[0x1],b8[0x2],ac),Promise['all'](b7);}},He=class{constructor(b4){const c8=bO;this['parser']=b4,this['name']=I[c8(0xfe)];}['getMaterialType'](b4){const c9=bO;return F(this['parser'],b4,this[c9(0x13d)])===null?null:aH;}['extendMaterialParams'](b4,b5){let b6=F(this['parser'],b4,this['name']);return b6===null?Promise['resolve']():(b5['ior']=b6['ior']===void 0x0?1.5:b6['ior'],b5['ior']===0x0&&(b5['ior']=0x3e8),Promise['resolve']());}},Ue=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_SPECULAR'];}[bO(0x1b1)](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const ca=bO;let b6=F(this[ca(0x171)],b4,this['name']);if(b6===null)return Promise[ca(0x1bf)]();let b7=[];b5['specularIntensity']=b6['specularFactor']===void 0x0?0x1:b6['specularFactor'],b6['specularTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'specularIntensityMap',b6['specularTexture']));let b8=b6['specularColorFactor']||[0x1,0x1,0x1];return b5['specularColor']=new aP()['setRGB'](b8[0x0],b8[0x1],b8[0x2],ac),b6['specularColorTexture']!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'specularColorMap',b6['specularColorTexture'],aZ)),Promise['all'](b7);}},We=class{constructor(b4){this['parser']=b4,this['name']=I['EXT_MATERIALS_BUMP'];}[bO(0x1b1)](b4){const cb=bO;return F(this[cb(0x171)],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const cc=bO;let b6=F(this[cc(0x171)],b4,this['name']);if(b6===null)return Promise['resolve']();let b7=[];return b5['bumpScale']=b6[cc(0x140)]===void 0x0?0x1:b6['bumpFactor'],b6['bumpTexture']!==void 0x0&&b7[cc(0x1cd)](this['parser'][cc(0x144)](b5,'bumpMap',b6['bumpTexture'])),Promise['all'](b7);}},Ge=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_MATERIALS_ANISOTROPY'];}['getMaterialType'](b4){return F(this['parser'],b4,this['name'])===null?null:aH;}['extendMaterialParams'](b4,b5){const cd=bO;let b6=F(this['parser'],b4,this['name']);if(b6===null)return Promise[cd(0x1bf)]();let b7=[];return b6['anisotropyStrength']!==void 0x0&&(b5['anisotropy']=b6[cd(0x184)]),b6['anisotropyRotation']!==void 0x0&&(b5['anisotropyRotation']=b6['anisotropyRotation']),b6[cd(0x194)]!==void 0x0&&b7['push'](this['parser']['assignTexture'](b5,'anisotropyMap',b6['anisotropyTexture'])),Promise['all'](b7);}},Ke=class{constructor(b4){this['parser']=b4,this['name']=I['KHR_TEXTURE_BASISU'];}[bO(0x18a)](b4){const cf=bO;let b5=this['parser'],b6=b5[cf(0x12b)],b7=b6['textures'][b4];if(!b7['extensions']||!b7['extensions'][this['name']])return null;let b8=b7['extensions'][this[cf(0x13d)]],b9=b5[cf(0x138)]['ktx2Loader'];if(!b9){if(b6['extensionsRequired']&&b6['extensionsRequired']['indexOf'](this[cf(0x13d)])>=0x0)throw Error('THREE.GLTFLoader:\x20setKTX2Loader\x20must\x20be\x20called\x20before\x20loading\x20KTX2\x20textures');return null;}return b5[cf(0x1a2)](b4,b8['source'],b9);}},qe=class{constructor(b4){const cg=bO;this[cg(0x171)]=b4,this[cg(0x13d)]=I['EXT_TEXTURE_WEBP'];}[bO(0x18a)](b4){const ch=bO;let b5=this['name'],b6=this['parser'],b7=b6['json'],b8=b7['textures'][b4];if(!b8['extensions']||!b8['extensions'][b5])return null;let b9=b8['extensions'][b5],ba=b7['images'][b9[ch(0x131)]],bb=b6['textureLoader'];if(ba[ch(0x17b)]){let bc=b6['options']['manager']['getHandler'](ba['uri']);bc!==null&&(bb=bc);}return b6['loadTextureImage'](b4,b9[ch(0x131)],bb);}},Je=class{constructor(b4){const ci=bO;this[ci(0x171)]=b4,this['name']=I[ci(0x116)];}[bO(0x18a)](b4){const cj=bO;let b5=this['name'],b6=this['parser'],b7=b6['json'],b8=b7['textures'][b4];if(!b8['extensions']||!b8['extensions'][b5])return null;let b9=b8['extensions'][b5],ba=b7['images'][b9['source']],bb=b6['textureLoader'];if(ba['uri']){let bc=b6['options'][cj(0x12f)]['getHandler'](ba['uri']);bc!==null&&(bb=bc);}return b6['loadTextureImage'](b4,b9['source'],bb);}},L=class{constructor(b4,b5){const ck=bO;this['name']=b5,this[ck(0x171)]=b4;}['loadBufferView'](b4){const cl=bO;let b5=this['parser']['json'],b6=b5['bufferViews'][b4];if(b6['extensions']&&b6['extensions'][this['name']]){let b7=b6['extensions'][this['name']],b8=this['parser'][cl(0xfa)](cl(0x123),b7['buffer']),b9=this[cl(0x171)]['options']['meshoptDecoder'];if(!b9||!b9['supported']){if(b5['extensionsRequired']&&b5['extensionsRequired']['indexOf'](this['name'])>=0x0)throw Error('THREE.GLTFLoader:\x20setMeshoptDecoder\x20must\x20be\x20called\x20before\x20loading\x20compressed\x20files');return null;}return b8['then'](function(ba){const cm=cl;let bb=b7['byteOffset']||0x0,bc=b7['byteLength']||0x0,bd=b7['count'],bf=b7['byteStride'],bg=new Uint8Array(ba,bb,bc);return b9['decodeGltfBufferAsync']?b9['decodeGltfBufferAsync'](bd,bf,bg,b7[cm(0x18d)],b7[cm(0x10e)])['then'](function(bh){return bh['buffer'];}):b9['ready']['then'](function(){let bh=new ArrayBuffer(bd*bf);return b9['decodeGltfBuffer'](new Uint8Array(bh),bd,bf,bg,b7['mode'],b7['filter']),bh;});});}else return null;}},Ye=class{constructor(b4){this['name']=I['EXT_MESH_GPU_INSTANCING'],this['parser']=b4;}['createNodeMesh'](b4){const cn=bO;let b5=this[cn(0x171)]['json'],b6=b5['nodes'][b4];if(!b6['extensions']||!b6['extensions'][this[cn(0x13d)]]||b6['mesh']===void 0x0)return null;let b7=b5['meshes'][b6['mesh']];for(let bb of b7['primitives'])if(bb['mode']!==H[cn(0x1cc)]&&bb['mode']!==H['TRIANGLE_STRIP']&&bb[cn(0x18d)]!==H['TRIANGLE_FAN']&&bb['mode']!==void 0x0)return null;let b8=b6['extensions'][this['name']]['attributes'],b9=[],ba={};for(let bc in b8)b9[cn(0x1cd)](this['parser']['getDependency']('accessor',b8[bc])[cn(0x1aa)](bd=>(ba[bc]=bd,ba[bc])));return b9['length']<0x1?null:(b9[cn(0x1cd)](this[cn(0x171)]['createNodeMesh'](b4)),Promise['all'](b9)['then'](bd=>{const co=cn;let bf=bd['pop'](),bg=bf['isGroup']?bf[co(0x1bd)]:[bf],bh=bd[0x0]['count'],bi=[];for(let bj of bg){let bk=new a3(),bl=new a6(),bm=new b1(),bn=new a6(0x1,0x1,0x1),bo=new a4(bj['geometry'],bj['material'],bh);for(let bp=0x0;bp<bh;bp++)ba[co(0x150)]&&bl['fromBufferAttribute'](ba['TRANSLATION'],bp),ba['ROTATION']&&bm['fromBufferAttribute'](ba['ROTATION'],bp),ba['SCALE']&&bn['fromBufferAttribute'](ba['SCALE'],bp),bo[co(0x1a7)](bp,bk['compose'](bl,bm,bn));for(let bq in ba)if(bq==='_COLOR_0'){let br=ba[bq];bo['instanceColor']=new aI(br['array'],br[co(0x1ac)],br['normalized']);}else bq!=='TRANSLATION'&&bq!=='ROTATION'&&bq!==co(0x145)&&bj['geometry']['setAttribute'](bq,ba[bq]);aB['prototype']['copy'][co(0x118)](bo,bj),this['parser']['assignFinalMaterial'](bo),bi['push'](bo);}return bf['isGroup']?(bf[co(0x1a3)](),bf[co(0x18c)](...bi),bf):bi[0x0];}));}},R='glTF',z=0xc,B={'JSON':0x4e4f534a,'BIN':0x4e4942},Xe=class{constructor(b4){const cp=bO;this['name']=I['KHR_BINARY_GLTF'],this['content']=null,this['body']=null;let b5=new DataView(b4,0x0,z),b6=new TextDecoder();if(this['header']={'magic':b6['decode'](new Uint8Array(b4['slice'](0x0,0x4))),'version':b5[cp(0x10f)](0x4,!0x0),'length':b5['getUint32'](0x8,!0x0)},this['header'][cp(0x146)]!==R)throw Error(cp(0x173));if(this[cp(0x182)]['version']<0x2)throw Error('THREE.GLTFLoader:\x20Legacy\x20binary\x20file\x20detected.');let b7=this['header']['length']-z,b8=new DataView(b4,z),b9=0x0;for(;b9<b7;){let ba=b8['getUint32'](b9,!0x0);b9+=0x4;let bb=b8['getUint32'](b9,!0x0);if(b9+=0x4,bb===B[cp(0x196)]){let bc=new Uint8Array(b4,z+b9,ba);this['content']=b6['decode'](bc);}else{if(bb===B['BIN']){let bd=z+b9;this['body']=b4['slice'](bd,bd+ba);}}b9+=ba;}if(this['content']===null)throw Error('THREE.GLTFLoader:\x20JSON\x20content\x20not\x20found.');}},Ze=class{constructor(b4,b5){const cq=bO;if(!b5)throw Error('THREE.GLTFLoader:\x20No\x20DRACOLoader\x20instance\x20provided.');this[cq(0x13d)]=I['KHR_DRACO_MESH_COMPRESSION'],this[cq(0x12b)]=b4,this['dracoLoader']=b5,this[cq(0xf4)]['preload']();}[bO(0x11d)](b4,b5){const cr=bO;let b6=this['json'],b7=this['dracoLoader'],b8=b4['extensions'][this['name']]['bufferView'],b9=b4['extensions'][this[cr(0x13d)]]['attributes'],ba={},bb={},bc={};for(let bd in b9){let bf=q[bd]||bd[cr(0x128)]();ba[bf]=b9[bd];}for(let bg in b4['attributes']){let bh=q[bg]||bg['toLowerCase']();if(b9[bg]!==void 0x0){let bi=b6['accessors'][b4[cr(0x197)][bg]];bc[bh]=U[bi['componentType']]['name'],bb[bh]=bi['normalized']===!0x0;}}return b5['getDependency']('bufferView',b8)['then'](function(bj){return new Promise(function(bk,bl){b7['decodeDracoFile'](bj,function(bm){for(let bn in bm['attributes']){let bo=bm['attributes'][bn],bp=bb[bn];bp!==void 0x0&&(bo['normalized']=bp);}bk(bm);},ba,bc,ac,bl);});});}},Qe=class{constructor(){const cs=bO;this[cs(0x13d)]=I['KHR_TEXTURE_TRANSFORM'];}['extendTexture'](b4,b5){const cu=bO;return(b5['texCoord']===void 0x0||b5['texCoord']===b4['channel'])&&b5['offset']===void 0x0&&b5[cu(0x158)]===void 0x0&&b5['scale']===void 0x0?b4:(b4=b4['clone'](),b5['texCoord']!==void 0x0&&(b4['channel']=b5['texCoord']),b5[cu(0x1c0)]!==void 0x0&&b4['offset']['fromArray'](b5['offset']),b5['rotation']!==void 0x0&&(b4['rotation']=b5[cu(0x158)]),b5['scale']!==void 0x0&&b4[cu(0x1b8)]['fromArray'](b5['scale']),b4['needsUpdate']=!0x0,b4);}},$e=class{constructor(){this['name']=I['KHR_MESH_QUANTIZATION'];}},V=class extends ao{constructor(b4,b5,b6,b7){super(b4,b5,b6,b7);}['copySampleValue_'](b4){const cv=bO;let b5=this['resultBuffer'],b6=this[cv(0x105)],b7=this['valueSize'],b8=b4*b7*0x3+b7;for(let b9=0x0;b9!==b7;b9++)b5[b9]=b6[b8+b9];return b5;}['interpolate_'](b4,b5,b6,b7){const cw=bO;let b8=this['resultBuffer'],b9=this[cw(0x105)],ba=this[cw(0x1a8)],bb=ba*0x2,bc=ba*0x3,bd=b7-b5,bf=(b6-b5)/bd,bg=bf*bf,bh=bg*bf,bi=b4*bc,bj=bi-bc,bk=-0x2*bh+0x3*bg,bl=bh-bg,bm=0x1-bk,bn=bl-bg+bf;for(let bo=0x0;bo!==ba;bo++){let bp=b9[bj+bo+ba],bq=b9[bj+bo+bb]*bd,br=b9[bi+bo+ba],bs=b9[bi+bo]*bd;b8[bo]=bm*bp+bn*bq+bk*br+bl*bs;}return b8;}},et=new b1(),tt=class extends V{['interpolate_'](b4,b5,b6,b7){let b8=super['interpolate_'](b4,b5,b6,b7);return et['fromArray'](b8)['normalize']()['toArray'](b8),b8;}},H={'FLOAT':0x1406,'FLOAT_MAT3':0x8b5b,'FLOAT_MAT4':0x8b5c,'FLOAT_VEC2':0x8b50,'FLOAT_VEC3':0x8b51,'FLOAT_VEC4':0x8b52,'LINEAR':0x2601,'REPEAT':0x2901,'SAMPLER_2D':0x8b5e,'POINTS':0x0,'LINES':0x1,'LINE_LOOP':0x2,'LINE_STRIP':0x3,'TRIANGLES':0x4,'TRIANGLE_STRIP':0x5,'TRIANGLE_FAN':0x6,'UNSIGNED_BYTE':0x1401,'UNSIGNED_SHORT':0x1403},U={0x1400:Int8Array,0x1401:Uint8Array,0x1402:Int16Array,0x1403:Uint16Array,0x1405:Uint32Array,0x1406:Float32Array},W={0x2600:aU,0x2601:ad,0x2700:aL,0x2701:au,0x2702:aA,0x2703:ar},G={0x812f:aD,0x8370:aO,0x2901:a8},K={'SCALAR':0x1,'VEC2':0x2,'VEC3':0x3,'VEC4':0x4,'MAT2':0x4,'MAT3':0x9,'MAT4':0x10},q={'POSITION':'position','NORMAL':bO(0x162),'TANGENT':'tangent','TEXCOORD_0':'uv','TEXCOORD_1':'uv1','TEXCOORD_2':'uv2','TEXCOORD_3':'uv3','COLOR_0':bO(0x1ae),'WEIGHTS_0':'skinWeight','JOINTS_0':'skinIndex'},J={'scale':'scale','translation':'position','rotation':'quaternion','weights':'morphTargetInfluences'},nt={'CUBICSPLINE':void 0x0,'LINEAR':ai,'STEP':ag},Y={'OPAQUE':'OPAQUE','MASK':bO(0x177),'BLEND':'BLEND'};function rt(b4){const cx=bO;return b4['DefaultMaterial']===void 0x0&&(b4['DefaultMaterial']=new ay({'color':0xffffff,'emissive':0x0,'metalness':0x1,'roughness':0x1,'transparent':!0x1,'depthTest':!0x0,'side':0x0})),b4[cx(0x15d)];}function X(b4,b5,b6){const cy=bO;for(let b7 in b6['extensions'])b4[b7]===void 0x0&&(b5[cy(0x143)]['gltfExtensions']=b5['userData']['gltfExtensions']||{},b5['userData']['gltfExtensions'][b7]=b6[cy(0x11f)][b7]);}function a1(a,b){a=a-0xf1;const c=a0();let d=c[a];return d;}function Z(b4,b5){const cz=bO;b5['extras']!==void 0x0&&(typeof b5['extras']=='object'?Object['assign'](b4['userData'],b5['extras']):console[cz(0x159)](cz(0x174)+b5[cz(0x183)]));}function it(b4,b5,b6){const cA=bO;let b7=!0x1,b8=!0x1,b9=!0x1;for(let bd=0x0,bf=b5['length'];bd<bf;bd++){let bg=b5[bd];if(bg['POSITION']!==void 0x0&&(b7=!0x0),bg['NORMAL']!==void 0x0&&(b8=!0x0),bg['COLOR_0']!==void 0x0&&(b9=!0x0),b7&&b8&&b9)break;}if(!b7&&!b8&&!b9)return Promise['resolve'](b4);let ba=[],bb=[],bc=[];for(let bh=0x0,bi=b5[cA(0x195)];bh<bi;bh++){let bj=b5[bh];if(b7){let bk=bj['POSITION']===void 0x0?b4[cA(0x197)]['position']:b6['getDependency']('accessor',bj['POSITION']);ba[cA(0x1cd)](bk);}if(b8){let bl=bj['NORMAL']===void 0x0?b4['attributes']['normal']:b6['getDependency']('accessor',bj['NORMAL']);bb['push'](bl);}if(b9){let bm=bj['COLOR_0']===void 0x0?b4['attributes']['color']:b6['getDependency'](cA(0x110),bj['COLOR_0']);bc['push'](bm);}}return Promise['all']([Promise['all'](ba),Promise['all'](bb),Promise['all'](bc)])['then'](function(bn){let bo=bn[0x0],bp=bn[0x1],bq=bn[0x2];return b7&&(b4['morphAttributes']['position']=bo),b8&&(b4['morphAttributes']['normal']=bp),b9&&(b4['morphAttributes']['color']=bq),b4['morphTargetsRelative']=!0x0,b4;});}function at(b4,b5){const cB=bO;if(b4[cB(0x121)](),b5['weights']!==void 0x0){for(let b6=0x0,b7=b5['weights']['length'];b6<b7;b6++)b4[cB(0x11e)][b6]=b5['weights'][b6];}if(b5['extras']&&Array['isArray'](b5['extras'][cB(0x156)])){let b8=b5['extras'][cB(0x156)];if(b4['morphTargetInfluences']['length']===b8['length']){b4['morphTargetDictionary']={};for(let b9=0x0,ba=b8['length'];b9<ba;b9++)b4['morphTargetDictionary'][b8[b9]]=b9;}else console['warn']('THREE.GLTFLoader:\x20Invalid\x20extras.targetNames\x20length.\x20Ignoring\x20names.');}}function ot(b4){const cC=bO;let b5,b6=b4['extensions']&&b4['extensions'][I['KHR_DRACO_MESH_COMPRESSION']];if(b5=b6?'draco:'+b6['bufferView']+':'+b6['indices']+':'+Q(b6['attributes']):b4['indices']+':'+Q(b4['attributes'])+':'+b4['mode'],b4['targets']!==void 0x0){for(let b7=0x0,b8=b4['targets'][cC(0x195)];b7<b8;b7++)b5+=':'+Q(b4[cC(0x19c)][b7]);}return b5;}function Q(b4){const cD=bO;let b5='',b6=Object['keys'](b4)[cD(0x1ca)]();for(let b7=0x0,b8=b6[cD(0x195)];b7<b8;b7++)b5+=b6[b7]+':'+b4[b6[b7]]+';';return b5;}function $(b4){switch(b4){case Int8Array:return 0x1/0x7f;case Uint8Array:return 0x1/0xff;case Int16Array:return 0x1/0x7fff;case Uint16Array:return 0x1/0xffff;default:throw Error('THREE.GLTFLoader:\x20Unsupported\x20normalized\x20accessor\x20component\x20type.');}}function st(b4){const cE=bO;return b4['search'](/\.jpe?g($|\?)/i)>0x0||b4[cE(0x164)](/^data\:image\/jpeg/)===0x0?'image/jpeg':b4['search'](/\.webp($|\?)/i)>0x0||b4['search'](/^data\:image\/webp/)===0x0?'image/webp':b4['search'](/\.ktx2($|\?)/i)>0x0||b4['search'](/^data\:image\/ktx2/)===0x0?'image/ktx2':'image/png';}var ct=new a3(),lt=class{constructor(b4={},b5={}){const cF=bO;this['json']=b4,this['extensions']={},this['plugins']={},this['options']=b5,this['cache']=new Me(),this['associations']=new Map(),this[cF(0x101)]={},this['nodeCache']={},this['meshCache']={'refs':{},'uses':{}},this['cameraCache']={'refs':{},'uses':{}},this[cF(0x137)]={'refs':{},'uses':{}},this[cF(0x160)]={},this['textureCache']={},this['nodeNamesUsed']={};let b6=!0x1,b7=-0x1,b8=!0x1,b9=-0x1;if(typeof navigator<'u'&&navigator['userAgent']!==void 0x0){let ba=navigator['userAgent'];b6=/^((?!chrome|android).)*safari/i['test'](ba)===!0x0;let bb=ba['match'](/Version\/(\d+)/);b7=b6&&bb?parseInt(bb[0x1],0xa):-0x1,b8=ba['indexOf'](cF(0x1d0))>-0x1,b9=b8?ba[cF(0x117)](/Firefox\/([0-9]+)\./)[0x1]:-0x1;}typeof createImageBitmap>'u'||b6&&b7<0x11||b8&&b9<0x62?this['textureLoader']=new ab(this['options']['manager']):this['textureLoader']=new am(this['options']['manager']),this['textureLoader']['setCrossOrigin'](this['options']['crossOrigin']),this['textureLoader']['setRequestHeader'](this[cF(0x138)]['requestHeader']),this['fileLoader']=new a7(this['options'][cF(0x12f)]),this['fileLoader']['setResponseType']('arraybuffer'),this[cF(0x138)]['crossOrigin']==='use-credentials'&&this[cF(0x11c)]['setWithCredentials'](!0x0);}['setExtensions'](b4){this['extensions']=b4;}['setPlugins'](b4){const cG=bO;this[cG(0x166)]=b4;}[bO(0x1bb)](b4,b5){let b6=this,b7=this['json'],b8=this['extensions'];this['cache']['removeAll'](),this['nodeCache']={},this['_invokeAll'](function(b9){return b9['_markDefs']&&b9['_markDefs']();}),Promise['all'](this['_invokeAll'](function(b9){return b9['beforeRoot']&&b9['beforeRoot']();}))['then'](function(){const cH=a1;return Promise['all']([b6['getDependencies'](cH(0x102)),b6['getDependencies']('animation'),b6['getDependencies']('camera')]);})['then'](function(b9){const cI=a1;let ba={'scene':b9[0x0][b7[cI(0x102)]||0x0],'scenes':b9[0x0],'animations':b9[0x1],'cameras':b9[0x2],'asset':b7['asset'],'parser':b6,'userData':{}};return X(b8,ba,b7),Z(ba,b7),Promise[cI(0x19b)](b6['_invokeAll'](function(bb){return bb['afterRoot']&&bb['afterRoot'](ba);}))['then'](function(){for(let bb of ba['scenes'])bb['updateMatrixWorld']();b4(ba);});})['catch'](b5);}['_markDefs'](){const cJ=bO;let b4=this['json']['nodes']||[],b5=this['json']['skins']||[],b6=this['json']['meshes']||[];for(let b7=0x0,b8=b5['length'];b7<b8;b7++){let b9=b5[b7]['joints'];for(let ba=0x0,bb=b9['length'];ba<bb;ba++)b4[b9[ba]]['isBone']=!0x0;}for(let bc=0x0,bd=b4['length'];bc<bd;bc++){let bf=b4[bc];bf['mesh']!==void 0x0&&(this[cJ(0x10c)](this['meshCache'],bf['mesh']),bf['skin']!==void 0x0&&(b6[bf['mesh']]['isSkinnedMesh']=!0x0)),bf['camera']!==void 0x0&&this['_addNodeRef'](this[cJ(0x13f)],bf['camera']);}}['_addNodeRef'](b4,b5){const cK=bO;b5!==void 0x0&&(b4[cK(0x1ce)][b5]===void 0x0&&(b4[cK(0x1ce)][b5]=b4['uses'][b5]=0x0),b4['refs'][b5]++);}['_getNodeRef'](b4,b5,b6){if(b4['refs'][b5]<=0x1)return b6;let b7=b6['clone'](),b8=(b9,ba)=>{const cL=a1;let bb=this['associations']['get'](b9);bb!=null&&this['associations']['set'](ba,bb);for(let [bc,bd]of b9['children']['entries']())b8(bd,ba[cL(0x1bd)][bc]);};return b8(b6,b7),b7['name']+='_instance_'+b4['uses'][b5]++,b7;}['_invokeOne'](b4){const cM=bO;let b5=Object['values'](this['plugins']);b5['push'](this);for(let b6=0x0;b6<b5[cM(0x195)];b6++){let b7=b4(b5[b6]);if(b7)return b7;}return null;}['_invokeAll'](b4){const cN=bO;let b5=Object['values'](this['plugins']);b5[cN(0x19d)](this);let b6=[];for(let b7=0x0;b7<b5[cN(0x195)];b7++){let b8=b4(b5[b7]);b8&&b6[cN(0x1cd)](b8);}return b6;}['getDependency'](b4,b5){const cO=bO;let b6=b4+':'+b5,b7=this['cache'][cO(0x113)](b6);if(!b7){switch(b4){case'scene':b7=this['loadScene'](b5);break;case'node':b7=this['_invokeOne'](function(b8){return b8['loadNode']&&b8['loadNode'](b5);});break;case'mesh':b7=this['_invokeOne'](function(b8){return b8['loadMesh']&&b8['loadMesh'](b5);});break;case cO(0x110):b7=this['loadAccessor'](b5);break;case'bufferView':b7=this['_invokeOne'](function(b8){return b8['loadBufferView']&&b8['loadBufferView'](b5);});break;case'buffer':b7=this[cO(0xf9)](b5);break;case cO(0x100):b7=this['_invokeOne'](function(b8){const cP=cO;return b8[cP(0x1b4)]&&b8['loadMaterial'](b5);});break;case'texture':b7=this['_invokeOne'](function(b8){return b8['loadTexture']&&b8['loadTexture'](b5);});break;case'skin':b7=this['loadSkin'](b5);break;case'animation':b7=this[cO(0x17f)](function(b8){const cQ=cO;return b8[cQ(0x12a)]&&b8[cQ(0x12a)](b5);});break;case'camera':b7=this['loadCamera'](b5);break;default:if(b7=this['_invokeOne'](function(b8){const cR=cO;return b8!=this&&b8['getDependency']&&b8[cR(0xfa)](b4,b5);}),!b7)throw Error('Unknown\x20type:\x20'+b4);break;}this[cO(0x169)][cO(0x18c)](b6,b7);}return b7;}['getDependencies'](b4){const cS=bO;let b5=this['cache']['get'](b4);if(!b5){let b6=this,b7=this['json'][b4+(b4==='mesh'?'es':'s')]||[];b5=Promise[cS(0x19b)](b7['map'](function(b8,b9){const cT=cS;return b6[cT(0xfa)](b4,b9);})),this['cache'][cS(0x18c)](b4,b5);}return b5;}['loadBuffer'](b4){const cU=bO;let b5=this['json']['buffers'][b4],b6=this[cU(0x11c)];if(b5['type']&&b5['type']!=='arraybuffer')throw Error('THREE.GLTFLoader:\x20'+b5[cU(0x135)]+'\x20buffer\x20type\x20is\x20not\x20supported.');if(b5[cU(0x17b)]===void 0x0&&b4===0x0)return Promise['resolve'](this['extensions'][I['KHR_BINARY_GLTF']]['body']);let b7=this['options'];return new Promise(function(b8,b9){const cV=cU;b6['load'](aR[cV(0x13e)](b5['uri'],b7['path']),b8,void 0x0,function(){b9(Error('THREE.GLTFLoader:\x20Failed\x20to\x20load\x20buffer\x20\x22'+b5['uri']+'\x22.'));});});}['loadBufferView'](b4){const cW=bO;let b5=this['json'][cW(0x15f)][b4];return this['getDependency']('buffer',b5['buffer'])[cW(0x1aa)](function(b6){const cX=cW;let b7=b5[cX(0xf3)]||0x0,b8=b5['byteOffset']||0x0;return b6['slice'](b8,b8+b7);});}['loadAccessor'](b4){const cY=bO;let b5=this,b6=this[cY(0x12b)],b7=this['json']['accessors'][b4];if(b7['bufferView']===void 0x0&&b7['sparse']===void 0x0){let b9=K[b7['type']],ba=U[b7['componentType']],bb=b7['normalized']===!0x0,bc=new ba(b7['count']*b9);return Promise['resolve'](new aK(bc,b9,bb));}let b8=[];return b7['bufferView']===void 0x0?b8['push'](null):b8['push'](this[cY(0xfa)]('bufferView',b7['bufferView'])),b7['sparse']!==void 0x0&&(b8['push'](this['getDependency']('bufferView',b7['sparse']['indices']['bufferView'])),b8['push'](this['getDependency']('bufferView',b7['sparse']['values']['bufferView']))),Promise[cY(0x19b)](b8)['then'](function(bd){const cZ=cY;let bf=bd[0x0],bg=K[b7[cZ(0x135)]],bh=U[b7['componentType']],bi=bh['BYTES_PER_ELEMENT'],bj=bi*bg,bk=b7[cZ(0x18b)]||0x0,bl=b7['bufferView']===void 0x0?void 0x0:b6['bufferViews'][b7['bufferView']][cZ(0x10a)],bm=b7['normalized']===!0x0,bn,bo;if(bl&&bl!==bj){let bp=Math['floor'](bk/bl),bq='InterleavedBuffer:'+b7['bufferView']+':'+b7['componentType']+':'+bp+':'+b7['count'],br=b5['cache']['get'](bq);br||(bn=new bh(bf,bp*bl,b7['count']*bl/bi),br=new aj(bn,bl/bi),b5['cache'][cZ(0x18c)](bq,br)),bo=new al(br,bg,bk%bl/bi,bm);}else bn=bf===null?new bh(b7[cZ(0x14d)]*bg):new bh(bf,bk,b7['count']*bg),bo=new aK(bn,bg,bm);if(b7['sparse']!==void 0x0){let bs=K[cZ(0xfb)],bt=U[b7['sparse']['indices']['componentType']],bu=b7['sparse']['indices']['byteOffset']||0x0,bv=b7['sparse']['values']['byteOffset']||0x0,bw=new bt(bd[0x1],bu,b7['sparse']['count']*bs),bx=new bh(bd[0x2],bv,b7['sparse']['count']*bg);bf!==null&&(bo=new aK(bo['array'][cZ(0x139)](),bo['itemSize'],bo['normalized'])),bo['normalized']=!0x1;for(let by=0x0,bz=bw['length'];by<bz;by++){let bA=bw[by];if(bo['setX'](bA,bx[by*bg]),bg>=0x2&&bo['setY'](bA,bx[by*bg+0x1]),bg>=0x3&&bo['setZ'](bA,bx[by*bg+0x2]),bg>=0x4&&bo['setW'](bA,bx[by*bg+0x3]),bg>=0x5)throw Error('THREE.GLTFLoader:\x20Unsupported\x20itemSize\x20in\x20sparse\x20BufferAttribute.');}bo['normalized']=bm;}return bo;});}['loadTexture'](b4){const d0=bO;let b5=this['json'],b6=this[d0(0x138)],b7=b5['textures'][b4]['source'],b8=b5[d0(0x1c5)][b7],b9=this[d0(0x13c)];if(b8['uri']){let ba=b6['manager']['getHandler'](b8['uri']);ba!==null&&(b9=ba);}return this[d0(0x1a2)](b4,b7,b9);}['loadTextureImage'](b4,b5,b6){const d1=bO;let b7=this,b8=this['json'],b9=b8['textures'][b4],ba=b8[d1(0x1c5)][b5],bb=(ba['uri']||ba['bufferView'])+':'+b9[d1(0x192)];if(this['textureCache'][bb])return this['textureCache'][bb];let bc=this['loadImageSource'](b5,b6)['then'](function(bd){const d2=d1;bd[d2(0x148)]=!0x1,bd['name']=b9[d2(0x13d)]||ba['name']||'',bd['name']===''&&typeof ba[d2(0x17b)]=='string'&&ba['uri']['startsWith']('data:image/')===!0x1&&(bd['name']=ba['uri']);let bf=(b8['samplers']||{})[b9['sampler']]||{};return bd['magFilter']=W[bf['magFilter']]||0x3ee,bd['minFilter']=W[bf['minFilter']]||0x3f0,bd[d2(0x1ab)]=G[bf['wrapS']]||0x3e8,bd['wrapT']=G[bf[d2(0x1c7)]]||0x3e8,bd['generateMipmaps']=!bd['isCompressedTexture']&&bd['minFilter']!==0x3eb&&bd['minFilter']!==0x3ee,b7[d2(0x141)]['set'](bd,{'textures':b4}),bd;})[d1(0x1b6)](function(){return null;});return this['textureCache'][bb]=bc,bc;}[bO(0x15e)](b4,b5){const d3=bO;let b6=this,b7=this['json'],b8=this['options'];if(this['sourceCache'][b4]!==void 0x0)return this[d3(0x160)][b4][d3(0x1aa)](bf=>bf['clone']());let b9=b7[d3(0x1c5)][b4],ba=self['URL']||self['webkitURL'],bb=b9['uri']||'',bc=!0x1;if(b9['bufferView']!==void 0x0)bb=b6['getDependency']('bufferView',b9['bufferView'])['then'](function(bf){const d4=d3;bc=!0x0;let bg=new Blob([bf],{'type':b9[d4(0x163)]});return bb=ba['createObjectURL'](bg),bb;});else{if(b9['uri']===void 0x0)throw Error('THREE.GLTFLoader:\x20Image\x20'+b4+'\x20is\x20missing\x20URI\x20and\x20bufferView');}let bd=Promise['resolve'](bb)[d3(0x1aa)](function(bf){return new Promise(function(bg,bh){let bi=bg;b5['isImageBitmapLoader']===!0x0&&(bi=function(bj){let bk=new ap(bj);bk['needsUpdate']=!0x0,bg(bk);}),b5['load'](aR['resolveURL'](bf,b8['path']),bi,void 0x0,bh);});})['then'](function(bf){return bc===!0x0&&ba['revokeObjectURL'](bb),Z(bf,b9),bf['userData']['mimeType']=b9['mimeType']||st(b9['uri']),bf;})['catch'](function(bf){throw console['error']('THREE.GLTFLoader:\x20Couldn\x27t\x20load\x20texture',bb),bf;});return this[d3(0x160)][b4]=bd,bd;}['assignTexture'](b4,b5,b6,b7){const d5=bO;let b8=this;return this['getDependency']('texture',b6[d5(0x1a0)])['then'](function(b9){const d6=d5;if(!b9)return null;if(b6['texCoord']!==void 0x0&&b6['texCoord']>0x0&&(b9=b9[d6(0x152)](),b9['channel']=b6['texCoord']),b8['extensions'][I['KHR_TEXTURE_TRANSFORM']]){let ba=b6['extensions']===void 0x0?void 0x0:b6['extensions'][I[d6(0x115)]];if(ba){let bb=b8[d6(0x141)]['get'](b9);b9=b8['extensions'][I['KHR_TEXTURE_TRANSFORM']]['extendTexture'](b9,ba),b8['associations']['set'](b9,bb);}}return b7!==void 0x0&&(b9['colorSpace']=b7),b4[b5]=b9,b9;});}['assignFinalMaterial'](b4){const d7=bO;let b5=b4['geometry'],b6=b4['material'],b7=b5['attributes']['tangent']===void 0x0,b8=b5['attributes']['color']!==void 0x0,b9=b5['attributes']['normal']===void 0x0;if(b4['isPoints']){let ba='PointsMaterial:'+b6['uuid'],bb=this['cache']['get'](ba);bb||(bb=new ax(),av['prototype'][d7(0x170)]['call'](bb,b6),bb['color']['copy'](b6['color']),bb['map']=b6['map'],bb['sizeAttenuation']=!0x1,this['cache']['add'](ba,bb)),b6=bb;}else{if(b4['isLine']){let bc='LineBasicMaterial:'+b6['uuid'],bd=this['cache']['get'](bc);bd||(bd=new b2(),av['prototype'][d7(0x170)]['call'](bd,b6),bd['color']['copy'](b6[d7(0x1ae)]),bd['map']=b6['map'],this['cache']['add'](bc,bd)),b6=bd;}}if(b7||b8||b9){let bf='ClonedMaterial:'+b6['uuid']+':';b7&&(bf+='derivative-tangents:'),b8&&(bf+=d7(0x104)),b9&&(bf+='flat-shading:');let bg=this['cache']['get'](bf);bg||(bg=b6['clone'](),b8&&(bg['vertexColors']=!0x0),b9&&(bg['flatShading']=!0x0),b7&&(bg[d7(0x119)]&&(bg['normalScale']['y']*=-0x1),bg['clearcoatNormalScale']&&(bg['clearcoatNormalScale']['y']*=-0x1)),this['cache'][d7(0x18c)](bf,bg),this[d7(0x141)][d7(0x17e)](bg,this[d7(0x141)][d7(0x113)](b6))),b6=bg;}b4[d7(0x100)]=b6;}['getMaterialType'](){return ay;}['loadMaterial'](b4){const d8=bO;let b5=this,b6=this['json'],b7=this[d8(0x11f)],b8=b6['materials'][b4],b9,ba={},bb=b8['extensions']||{},bc=[];if(bb[I[d8(0x168)]]){let bf=b7[I[d8(0x168)]];b9=bf['getMaterialType'](),bc['push'](bf['extendParams'](ba,b8,b5));}else{let bg=b8['pbrMetallicRoughness']||{};if(ba[d8(0x1ae)]=new aP(0x1,0x1,0x1),ba['opacity']=0x1,Array['isArray'](bg[d8(0x199)])){let bh=bg['baseColorFactor'];ba['color']['setRGB'](bh[0x0],bh[0x1],bh[0x2],ac),ba[d8(0x16b)]=bh[0x3];}bg[d8(0x151)]!==void 0x0&&bc['push'](b5['assignTexture'](ba,'map',bg['baseColorTexture'],aZ)),ba['metalness']=bg[d8(0x133)]===void 0x0?0x1:bg['metallicFactor'],ba['roughness']=bg['roughnessFactor']===void 0x0?0x1:bg['roughnessFactor'],bg[d8(0xf8)]!==void 0x0&&(bc['push'](b5['assignTexture'](ba,'metalnessMap',bg['metallicRoughnessTexture'])),bc['push'](b5[d8(0x144)](ba,'roughnessMap',bg[d8(0xf8)]))),b9=this['_invokeOne'](function(bi){const d9=d8;return bi[d9(0x1b1)]&&bi['getMaterialType'](b4);}),bc['push'](Promise['all'](this['_invokeAll'](function(bi){return bi['extendMaterialParams']&&bi['extendMaterialParams'](b4,ba);})));}b8['doubleSided']===!0x0&&(ba[d8(0x190)]=0x2);let bd=b8[d8(0x154)]||Y['OPAQUE'];if(bd===Y['BLEND']?(ba['transparent']=!0x0,ba['depthWrite']=!0x1):(ba['transparent']=!0x1,bd===Y[d8(0x177)]&&(ba['alphaTest']=b8['alphaCutoff']===void 0x0?0.5:b8['alphaCutoff'])),b8['normalTexture']!==void 0x0&&b9!==aV&&(bc['push'](b5[d8(0x144)](ba,d8(0x109),b8['normalTexture'])),ba['normalScale']=new b3(0x1,0x1),b8['normalTexture'][d8(0x13a)]!==void 0x0)){let bi=b8['normalTexture']['scale'];ba[d8(0x119)]['set'](bi,bi);}if(b8['occlusionTexture']!==void 0x0&&b9!==aV&&(bc['push'](b5[d8(0x144)](ba,'aoMap',b8['occlusionTexture'])),b8['occlusionTexture'][d8(0x10b)]!==void 0x0&&(ba['aoMapIntensity']=b8['occlusionTexture']['strength'])),b8[d8(0xf2)]!==void 0x0&&b9!==aV){let bj=b8['emissiveFactor'];ba[d8(0x16e)]=new aP()['setRGB'](bj[0x0],bj[0x1],bj[0x2],ac);}return b8['emissiveTexture']!==void 0x0&&b9!==aV&&bc['push'](b5['assignTexture'](ba,'emissiveMap',b8['emissiveTexture'],aZ)),Promise['all'](bc)['then'](function(){let bk=new b9(ba);return b8['name']&&(bk['name']=b8['name']),Z(bk,b8),b5['associations']['set'](bk,{'materials':b4}),b8['extensions']&&X(b7,bk,b8),bk;});}['createUniqueName'](b4){const da=bO;let b5=aY['sanitizeNodeName'](b4||'');return b5 in this['nodeNamesUsed']?b5+'_'+ ++this[da(0x1ba)][b5]:(this['nodeNamesUsed'][b5]=0x0,b5);}['loadGeometries'](b4){const db=bO;let b5=this,b6=this['extensions'],b7=this['primitiveCache'];function b8(ba){return b6[I['KHR_DRACO_MESH_COMPRESSION']]['decodePrimitive'](ba,b5)['then'](function(bb){return dt(bb,ba,b5);});}let b9=[];for(let ba=0x0,bb=b4[db(0x195)];ba<bb;ba++){let bc=b4[ba],bd=ot(bc),bf=b7[bd];if(bf)b9['push'](bf['promise']);else{let bg;bg=bc['extensions']&&bc['extensions'][I['KHR_DRACO_MESH_COMPRESSION']]?b8(bc):dt(new aW(),bc,b5),b7[bd]={'primitive':bc,'promise':bg},b9[db(0x1cd)](bg);}}return Promise[db(0x19b)](b9);}['loadMesh'](b4){const dc=bO;let b5=this,b6=this['json'],b7=this['extensions'],b8=b6['meshes'][b4],b9=b8['primitives'],ba=[];for(let bb=0x0,bc=b9['length'];bb<bc;bb++){let bd=b9[bb][dc(0x100)]===void 0x0?rt(this[dc(0x169)]):this[dc(0xfa)]('material',b9[bb][dc(0x100)]);ba[dc(0x1cd)](bd);}return ba['push'](b5['loadGeometries'](b9)),Promise['all'](ba)[dc(0x1aa)](function(bf){const dd=dc;let bg=bf[dd(0x139)](0x0,bf['length']-0x1),bh=bf[bf['length']-0x1],bi=[];for(let bk=0x0,bl=bh['length'];bk<bl;bk++){let bm=bh[bk],bn=b9[bk],bo,bp=bg[bk];if(bn['mode']===H[dd(0x1cc)]||bn['mode']===H[dd(0x10d)]||bn['mode']===H['TRIANGLE_FAN']||bn['mode']===void 0x0)bo=b8['isSkinnedMesh']===!0x0?new an(bm,bp):new aC(bm,bp),bo['isSkinnedMesh']===!0x0&&bo['normalizeSkinWeights'](),bn['mode']===H['TRIANGLE_STRIP']?bo['geometry']=N(bo[dd(0x17a)],0x1):bn['mode']===H['TRIANGLE_FAN']&&(bo['geometry']=N(bo['geometry'],0x2));else{if(bn['mode']===H['LINES'])bo=new as(bm,bp);else{if(bn['mode']===H[dd(0x108)])bo=new aq(bm,bp);else{if(bn['mode']===H['LINE_LOOP'])bo=new a5(bm,bp);else{if(bn['mode']===H['POINTS'])bo=new aF(bm,bp);else throw Error('THREE.GLTFLoader:\x20Primitive\x20mode\x20unsupported:\x20'+bn['mode']);}}}}Object[dd(0xff)](bo['geometry']['morphAttributes'])['length']>0x0&&at(bo,b8),bo['name']=b5[dd(0x1b5)](b8[dd(0x13d)]||'mesh_'+b4),Z(bo,b8),bn[dd(0x11f)]&&X(b7,bo,bn),b5[dd(0x19e)](bo),bi['push'](bo);}for(let bq=0x0,br=bi[dd(0x195)];bq<br;bq++)b5['associations']['set'](bi[bq],{'meshes':b4,'primitives':bq});if(bi['length']===0x1)return b8['extensions']&&X(b7,bi[0x0],b8),bi[0x0];let bj=new aa();b8[dd(0x11f)]&&X(b7,bj,b8),b5['associations']['set'](bj,{'meshes':b4});for(let bs=0x0,bt=bi['length'];bs<bt;bs++)bj['add'](bi[bs]);return bj;});}['loadCamera'](b4){const df=bO;let b5,b6=this['json']['cameras'][b4],b7=b6[b6['type']];if(!b7){console['warn']('THREE.GLTFLoader:\x20Missing\x20camera\x20parameters.');return;}return b6['type']==='perspective'?b5=new aQ(aw[df(0x16d)](b7['yfov']),b7['aspectRatio']||0x1,b7['znear']||0x1,b7['zfar']||0x1e8480):b6['type']==='orthographic'&&(b5=new aE(-b7[df(0x1ad)],b7['xmag'],b7['ymag'],-b7['ymag'],b7['znear'],b7['zfar'])),b6['name']&&(b5['name']=this['createUniqueName'](b6[df(0x13d)])),Z(b5,b6),Promise[df(0x1bf)](b5);}[bO(0x157)](b4){const dg=bO;let b5=this[dg(0x12b)]['skins'][b4],b6=[];for(let b7=0x0,b8=b5['joints']['length'];b7<b8;b7++)b6['push'](this[dg(0x103)](b5['joints'][b7]));return b5['inverseBindMatrices']===void 0x0?b6['push'](null):b6['push'](this['getDependency']('accessor',b5[dg(0x129)])),Promise['all'](b6)[dg(0x1aa)](function(b9){const dh=dg;let ba=b9['pop'](),bb=b9,bc=[],bd=[];for(let bf=0x0,bg=bb['length'];bf<bg;bf++){let bh=bb[bf];if(bh){bc[dh(0x1cd)](bh);let bi=new a3();ba!==null&&bi['fromArray'](ba['array'],bf*0x10),bd['push'](bi);}else console['warn']('THREE.GLTFLoader:\x20Joint\x20\x22%s\x22\x20could\x20not\x20be\x20found.',b5['joints'][bf]);}return new a9(bc,bd);});}['loadAnimation'](b4){const di=bO;let b5=this['json'],b6=this,b7=b5['animations'][b4],b8=b7[di(0x13d)]?b7['name']:'animation_'+b4,b9=[],ba=[],bb=[],bc=[],bd=[];for(let bf=0x0,bg=b7['channels']['length'];bf<bg;bf++){let bh=b7['channels'][bf],bi=b7['samplers'][bh[di(0x192)]],bj=bh[di(0xf5)],bk=bj['node'],bl=b7['parameters']===void 0x0?bi[di(0x191)]:b7['parameters'][bi['input']],bm=b7['parameters']===void 0x0?bi['output']:b7['parameters'][bi['output']];bj['node']!==void 0x0&&(b9['push'](this['getDependency']('node',bk)),ba['push'](this['getDependency']('accessor',bl)),bb['push'](this['getDependency']('accessor',bm)),bc[di(0x1cd)](bi),bd[di(0x1cd)](bj));}return Promise[di(0x19b)]([Promise['all'](b9),Promise['all'](ba),Promise['all'](bb),Promise['all'](bc),Promise['all'](bd)])['then'](function(bn){const dj=di;let bo=bn[0x0],bp=bn[0x1],bq=bn[0x2],br=bn[0x3],bs=bn[0x4],bt=[];for(let bv=0x0,bw=bo['length'];bv<bw;bv++){let bx=bo[bv],by=bp[bv],bz=bq[bv],bA=br[bv],bB=bs[bv];if(bx===void 0x0)continue;bx['updateMatrix']&&bx['updateMatrix']();let bC=b6[dj(0x142)](bx,by,bz,bA,bB);if(bC){for(let bD=0x0;bD<bC['length'];bD++)bt['push'](bC[bD]);}}let bu=new aS(b8,void 0x0,bt);return Z(bu,b7),bu;});}['createNodeMesh'](b4){const dk=bO;let b5=this['json'],b6=this,b7=b5['nodes'][b4];return b7['mesh']===void 0x0?null:b6['getDependency']('mesh',b7['mesh'])[dk(0x1aa)](function(b8){let b9=b6['_getNodeRef'](b6['meshCache'],b7['mesh'],b8);return b7['weights']!==void 0x0&&b9['traverse'](function(ba){const dl=a1;if(ba[dl(0x19a)]){for(let bb=0x0,bc=b7['weights'][dl(0x195)];bb<bc;bb++)ba['morphTargetInfluences'][bb]=b7['weights'][bb];}}),b9;});}['loadNode'](b4){const dm=bO;let b5=this[dm(0x12b)],b6=this,b7=b5['nodes'][b4],b8=b6['_loadNodeShallow'](b4),b9=[],ba=b7['children']||[];for(let bc=0x0,bd=ba['length'];bc<bd;bc++)b9['push'](b6['getDependency'](dm(0x188),ba[bc]));let bb=b7['skin']===void 0x0?Promise[dm(0x1bf)](null):b6['getDependency']('skin',b7['skin']);return Promise[dm(0x19b)]([b8,Promise['all'](b9),bb])['then'](function(bf){const dn=dm;let bg=bf[0x0],bh=bf[0x1],bi=bf[0x2];bi!==null&&bg[dn(0x111)](function(bj){bj['isSkinnedMesh']&&bj['bind'](bi,ct);});for(let bj=0x0,bk=bh['length'];bj<bk;bj++)bg['add'](bh[bj]);if(bg['userData']['pivot']!==void 0x0&&bh['length']>0x0){let bl=bg['userData']['pivot'],bm=bh[0x0];bg['pivot']=new a6()['fromArray'](bl),bg['position']['x']-=bl[0x0],bg['position']['y']-=bl[0x1],bg[dn(0x19f)]['z']-=bl[0x2],bm[dn(0x19f)]['set'](0x0,0x0,0x0),delete bg[dn(0x143)]['pivot'];}return bg;});}['_loadNodeShallow'](b4){const dp=bO;let b5=this['json'],b6=this['extensions'],b7=this;if(this['nodeCache'][b4]!==void 0x0)return this['nodeCache'][b4];let b8=b5['nodes'][b4],b9=b8['name']?b7['createUniqueName'](b8['name']):'',ba=[],bb=b7['_invokeOne'](function(bc){return bc['createNodeMesh']&&bc['createNodeMesh'](b4);});return bb&&ba['push'](bb),b8['camera']!==void 0x0&&ba[dp(0x1cd)](b7['getDependency']('camera',b8['camera'])['then'](function(bc){const dq=dp;return b7['_getNodeRef'](b7[dq(0x13f)],b8['camera'],bc);})),b7[dp(0x1af)](function(bc){const dr=dp;return bc[dr(0x1a6)]&&bc['createNodeAttachment'](b4);})['forEach'](function(bc){ba['push'](bc);}),this['nodeCache'][b4]=Promise[dp(0x19b)](ba)['then'](function(bc){const ds=dp;let bd;if(bd=b8[ds(0x17d)]===!0x0?new aN():bc['length']>0x1?new aa():bc['length']===0x1?bc[0x0]:new aB(),bd!==bc[0x0]){for(let bf=0x0,bg=bc['length'];bf<bg;bf++)bd['add'](bc[bf]);}if(b8[ds(0x13d)]&&(bd['userData']['name']=b8['name'],bd['name']=b9),Z(bd,b8),b8['extensions']&&X(b6,bd,b8),b8['matrix']!==void 0x0){let bh=new a3();bh['fromArray'](b8[ds(0x1a1)]),bd[ds(0x1b3)](bh);}else b8['translation']!==void 0x0&&bd['position']['fromArray'](b8['translation']),b8['rotation']!==void 0x0&&bd[ds(0x167)]['fromArray'](b8[ds(0x158)]),b8[ds(0x13a)]!==void 0x0&&bd['scale']['fromArray'](b8['scale']);if(!b7['associations']['has'](bd))b7[ds(0x141)]['set'](bd,{});else{if(b8['mesh']!==void 0x0&&b7['meshCache'][ds(0x1ce)][b8[ds(0x114)]]>0x1){let bi=b7['associations']['get'](bd);b7['associations']['set'](bd,t({},bi));}}return b7['associations']['get'](bd)[ds(0x181)]=b4,bd;}),this[dp(0x189)][b4];}['loadScene'](b4){const du=bO;let b5=this['extensions'],b6=this['json']['scenes'][b4],b7=this,b8=new aa();b6['name']&&(b8['name']=b7['createUniqueName'](b6['name'])),Z(b8,b6),b6['extensions']&&X(b5,b8,b6);let b9=b6['nodes']||[],ba=[];for(let bb=0x0,bc=b9['length'];bb<bc;bb++)ba['push'](b7['getDependency']('node',b9[bb]));return Promise['all'](ba)[du(0x1aa)](function(bd){for(let bf=0x0,bg=bd['length'];bf<bg;bf++){let bh=bd[bf];bh['parent']===null?b8['add'](bh):b8['add'](Ae(bh));}return b7['associations']=(bi=>{let bj=new Map();for(let [bk,bl]of b7['associations'])(bk instanceof av||bk instanceof ap)&&bj['set'](bk,bl);return bi['traverse'](bm=>{let bn=b7['associations']['get'](bm);bn!=null&&bj['set'](bm,bn);}),bj;})(b8),b8;});}['_createAnimationTracks'](b4,b5,b6,b7,b8){const dw=bO;let b9=[],ba=b4['name']?b4['name']:b4['uuid'],bb=[];function bc(bh){const dv=a1;bh[dv(0x11e)]&&bb[dv(0x1cd)](bh['name']?bh['name']:bh['uuid']);}J[b8['path']]===J['weights']?(bc(b4),b4['isGroup']&&b4['children']['forEach'](bc)):bb['push'](ba);let bd;switch(J[b8['path']]){case J[dw(0x185)]:bd=aX;break;case J['rotation']:bd=az;break;case J['translation']:case J['scale']:bd=af;break;default:switch(b6['itemSize']){case 0x1:bd=aX;break;default:bd=af;break;}break;}let bf=b7['interpolation']===void 0x0?ai:nt[b7['interpolation']],bg=this['_getArrayFromAccessor'](b6);for(let bh=0x0,bi=bb[dw(0x195)];bh<bi;bh++){let bj=new bd(bb[bh]+'.'+J[b8['path']],b5['array'],bg,bf);b7['interpolation']==='CUBICSPLINE'&&this['_createCubicSplineTrackInterpolant'](bj),b9[dw(0x1cd)](bj);}return b9;}[bO(0x1a4)](b4){const dx=bO;let b5=b4['array'];if(b4[dx(0x134)]){let b6=$(b5['constructor']),b7=new Float32Array(b5['length']);for(let b8=0x0,b9=b5['length'];b8<b9;b8++)b7[b8]=b5[b8]*b6;b5=b7;}return b5;}['_createCubicSplineTrackInterpolant'](b4){b4['createInterpolant']=function(b5){return new(this instanceof az?tt:V)(this['times'],this['values'],this['getValueSize']()/0x3,b5);},b4['createInterpolant']['isInterpolantFactoryMethodGLTFCubicSpline']=!0x0;}};function ut(b4,b5,b6){const dy=bO;let b7=b5['attributes'],b8=new aT();if(b7[dy(0x13b)]!==void 0x0){let bb=b6[dy(0x12b)][dy(0x14e)][b7['POSITION']],bc=bb['min'],bd=bb['max'];if(bc!==void 0x0&&bd!==void 0x0){if(b8['set'](new a6(bc[0x0],bc[0x1],bc[0x2]),new a6(bd[0x0],bd[0x1],bd[0x2])),bb['normalized']){let bf=$(U[bb['componentType']]);b8['min'][dy(0x16f)](bf),b8['max']['multiplyScalar'](bf);}}else{console['warn']('THREE.GLTFLoader:\x20Missing\x20min/max\x20properties\x20for\x20accessor\x20POSITION.');return;}}else return;let b9=b5[dy(0x19c)];if(b9!==void 0x0){let bg=new a6(),bh=new a6();for(let bi=0x0,bj=b9['length'];bi<bj;bi++){let bk=b9[bi];if(bk['POSITION']!==void 0x0){let bl=b6['json']['accessors'][bk[dy(0x13b)]],bm=bl['min'],bn=bl['max'];if(bm!==void 0x0&&bn!==void 0x0){if(bh[dy(0x186)](Math['max'](Math[dy(0x172)](bm[0x0]),Math['abs'](bn[0x0]))),bh[dy(0x122)](Math['max'](Math['abs'](bm[0x1]),Math[dy(0x172)](bn[0x1]))),bh['setZ'](Math['max'](Math[dy(0x172)](bm[0x2]),Math['abs'](bn[0x2]))),bl['normalized']){let bo=$(U[bl[dy(0x179)]]);bh['multiplyScalar'](bo);}bg['max'](bh);}else console[dy(0x159)]('THREE.GLTFLoader:\x20Missing\x20min/max\x20properties\x20for\x20accessor\x20POSITION.');}}b8['expandByVector'](bg);}b4['boundingBox']=b8;let ba=new aJ();b8[dy(0x1c2)](ba['center']),ba['radius']=b8[dy(0x153)]['distanceTo'](b8['max'])/0x2,b4['boundingSphere']=ba;}function dt(b4,b5,b6){const dz=bO;let b7=b5['attributes'],b8=[];function b9(ba,bb){return b6['getDependency']('accessor',ba)['then'](function(bc){b4['setAttribute'](bb,bc);});}for(let ba in b7){let bb=q[ba]||ba['toLowerCase']();bb in b4['attributes']||b8['push'](b9(b7[ba],bb));}if(b5[dz(0x1c9)]!==void 0x0&&!b4['index']){let bc=b6[dz(0xfa)]('accessor',b5['indices'])['then'](function(bd){b4['setIndex'](bd);});b8['push'](bc);}return aM[dz(0x180)]!==dz(0x16a)&&dz(0x1cb)in b7&&console['warn']('THREE.GLTFLoader:\x20Converting\x20vertex\x20colors\x20from\x20\x22srgb-linear\x22\x20to\x20\x22'+aM['workingColorSpace']+'\x22\x20not\x20supported.'),Z(b4,b5),ut(b4,b5,b6),Promise['all'](b8)['then'](function(){return b5['targets']===void 0x0?b4:it(b4,b5['targets'],b6);});}export{je as GLTFLoader};