@flyfish-group/file-viewer 1.0.13 → 1.0.14

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 (211) hide show
  1. package/README.md +109 -30
  2. package/dist/components/3MFLoader.js +1 -0
  3. package/dist/components/AMFLoader.js +1 -0
  4. package/dist/components/ArchiveViewer.js +1 -0
  5. package/dist/components/AudioViewer.js +1 -0
  6. package/dist/components/CadViewer.js +1 -1
  7. package/dist/components/CodeViewer.js +1 -1
  8. package/dist/components/ColladaLoader.js +1 -0
  9. package/dist/components/DrawingViewer.js +1 -0
  10. package/dist/components/EdaViewer.js +1 -0
  11. package/dist/components/EmailViewer.js +1 -0
  12. package/dist/components/EpubViewer.js +1 -0
  13. package/dist/components/FBXLoader.js +1 -0
  14. package/dist/components/GLTFLoader.js +1 -0
  15. package/dist/components/ImageViewer.js +1 -1
  16. package/dist/components/KMZLoader.js +1 -0
  17. package/dist/components/MarkdownViewer.js +1 -1
  18. package/dist/components/ModelViewer.js +26885 -0
  19. package/dist/components/OBJLoader.js +1 -0
  20. package/dist/components/OfdViewer.js +1 -1
  21. package/dist/components/PCDLoader.js +1 -0
  22. package/dist/components/PLYLoader.js +1 -0
  23. package/dist/components/PdfView.js +30722 -1
  24. package/dist/components/PptxRender.js +1 -1
  25. package/dist/components/STLLoader.js +1 -0
  26. package/dist/components/TDSLoader.js +1 -0
  27. package/dist/components/USDLoader.js +1 -0
  28. package/dist/components/UmdViewer.js +2 -0
  29. package/dist/components/VRMLLoader.js +1 -0
  30. package/dist/components/VTKLoader.js +1 -0
  31. package/dist/components/XYZLoader.js +1 -0
  32. package/dist/components/XlsxTable.js +1 -1
  33. package/dist/components/___vite-browser-external_commonjs-proxy.js +1 -0
  34. package/dist/components/_commonjs-dynamic-modules.js +1 -0
  35. package/dist/components/_commonjsHelpers.js +1 -1
  36. package/dist/components/ar-SA-G6X2FPQ2.js +1 -0
  37. package/dist/components/arc.js +1 -0
  38. package/dist/components/architecture-7EHR7CIX.js +1 -0
  39. package/dist/components/architectureDiagram-3BPJPVTR.js +1 -0
  40. package/dist/components/az-AZ-76LH7QW2.js +1 -0
  41. package/dist/components/bg-BG-XCXSNQG7.js +1 -0
  42. package/dist/components/blockDiagram-GPEHLZMM.js +1 -0
  43. package/dist/components/bn-BD-2XOGV67Q.js +1 -0
  44. package/dist/components/c4Diagram-AAUBKEIU.js +1 -0
  45. package/dist/components/ca-ES-6MX7JW3Y.js +1 -0
  46. package/dist/components/cfb.js +1 -0
  47. package/dist/components/channel.js +1 -0
  48. package/dist/components/chunk-2J33WTMH.js +1 -0
  49. package/dist/components/chunk-4BX2VUAB.js +1 -0
  50. package/dist/components/chunk-55IACEB6.js +1 -0
  51. package/dist/components/chunk-727SXJPM.js +1 -0
  52. package/dist/components/chunk-AQP2D5EJ.js +1 -0
  53. package/dist/components/chunk-EIO257PC.js +1722 -0
  54. package/dist/components/chunk-FMBD7UC4.js +1 -0
  55. package/dist/components/chunk-ND2GUHAM.js +1 -0
  56. package/dist/components/chunk-QZHKN3VN.js +1 -0
  57. package/dist/components/classDiagram-4FO5ZUOK.js +1 -0
  58. package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -0
  59. package/dist/components/cose-bilkent-S5V4N54A.js +1 -0
  60. package/dist/components/cs-CZ-2BRQDIVT.js +1 -0
  61. package/dist/components/cytoscape.esm.js +1 -0
  62. package/dist/components/da-DK-5WZEPLOC.js +1 -0
  63. package/dist/components/dagre-BM42HDAG.js +1 -0
  64. package/dist/components/de-DE-XR44H4JA.js +1 -0
  65. package/dist/components/defaultLocale.js +1 -0
  66. package/dist/components/diagram-2AECGRRQ.js +1 -0
  67. package/dist/components/diagram-5GNKFQAL.js +1 -0
  68. package/dist/components/diagram-KO2AKTUF.js +1 -0
  69. package/dist/components/diagram-LMA3HP47.js +1 -0
  70. package/dist/components/diagram-OG6HWLK6.js +1 -0
  71. package/dist/components/directory-open-01563666.js +1 -0
  72. package/dist/components/directory-open-4ed118d0.js +1 -0
  73. package/dist/components/docx-preview.js +2 -2
  74. package/dist/components/el-GR-BZB4AONW.js +1 -0
  75. package/dist/components/en-B4ZKOASM.js +1 -0
  76. package/dist/components/erDiagram-TEJ5UH35.js +1 -0
  77. package/dist/components/es-ES-U4NZUMDT.js +1 -0
  78. package/dist/components/eu-ES-A7QVB2H4.js +1 -0
  79. package/dist/components/eventmodeling-FCH6USID.js +1 -0
  80. package/dist/components/fa-IR-HGAKTJCU.js +1 -0
  81. package/dist/components/fflate.module.js +1 -0
  82. package/dist/components/fi-FI-Z5N7JZ37.js +1 -0
  83. package/dist/components/file-open-002ab408.js +1 -0
  84. package/dist/components/file-open-7c801643.js +1 -0
  85. package/dist/components/file-save-3189631c.js +1 -0
  86. package/dist/components/file-save-745eba88.js +1 -0
  87. package/dist/components/flowDiagram-I6XJVG4X.js +1 -0
  88. package/dist/components/fr-FR-RHASNOE6.js +1 -0
  89. package/dist/components/ganttDiagram-6RSMTGT7.js +1 -0
  90. package/dist/components/gitGraph-WXDBUCRP.js +1 -0
  91. package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -0
  92. package/dist/components/gl-ES-HMX3MZ6V.js +1 -0
  93. package/dist/components/graph.js +1 -0
  94. package/dist/components/he-IL-6SHJWFNN.js +1 -0
  95. package/dist/components/hi-IN-IWLTKZ5I.js +1 -0
  96. package/dist/components/hu-HU-A5ZG7DT2.js +1 -0
  97. package/dist/components/id-ID-SAP4L64H.js +1 -0
  98. package/dist/components/image-GAAHSSAO.js +1 -0
  99. package/dist/components/image-blob-reduce.esm.js +2 -0
  100. package/dist/components/index.js +23989 -1
  101. package/dist/components/index10.js +1 -0
  102. package/dist/components/index11.js +1 -0
  103. package/dist/components/index12.js +1 -0
  104. package/dist/components/index13.js +1 -0
  105. package/dist/components/index14.js +1 -0
  106. package/dist/components/index15.js +1 -0
  107. package/dist/components/index16.js +1 -0
  108. package/dist/components/index17.js +1 -0
  109. package/dist/components/index18.js +1 -0
  110. package/dist/components/index19.js +1 -0
  111. package/dist/components/index2.js +1 -1
  112. package/dist/components/index20.js +1 -0
  113. package/dist/components/index21.js +2 -0
  114. package/dist/components/index22.js +1 -0
  115. package/dist/components/index23.js +1 -0
  116. package/dist/components/index24.js +1 -0
  117. package/dist/components/index3.js +1 -0
  118. package/dist/components/index4.js +1 -0
  119. package/dist/components/index5.js +1 -0
  120. package/dist/components/index6.js +1 -0
  121. package/dist/components/index7.js +1 -0
  122. package/dist/components/index8.js +1 -0
  123. package/dist/components/index9.js +1 -0
  124. package/dist/components/info-J43DQDTF.js +1 -0
  125. package/dist/components/infoDiagram-5YYISTIA.js +1 -0
  126. package/dist/components/init.js +1 -0
  127. package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -0
  128. package/dist/components/it-IT-JPQ66NNP.js +1 -0
  129. package/dist/components/ja-JP-DBVTYXUO.js +1 -0
  130. package/dist/components/journeyDiagram-JHISSGLW.js +1 -0
  131. package/dist/components/jszip.min.js +1 -1
  132. package/dist/components/kaa-6HZHGXH3.js +1 -0
  133. package/dist/components/kab-KAB-ZGHBKWFO.js +1 -0
  134. package/dist/components/kanban-definition-UN3LZRKU.js +1 -0
  135. package/dist/components/katex.js +1 -0
  136. package/dist/components/kk-KZ-P5N5QNE5.js +1 -0
  137. package/dist/components/km-KH-HSX4SM5Z.js +1 -0
  138. package/dist/components/ko-KR-MTYHY66A.js +1 -0
  139. package/dist/components/ku-TR-6OUDTVRD.js +1 -0
  140. package/dist/components/layout.js +1 -0
  141. package/dist/components/libarchive.js +6 -0
  142. package/dist/components/linear.js +1 -0
  143. package/dist/components/lt-LT-XHIRWOB4.js +1 -0
  144. package/dist/components/lv-LV-5QDEKY6T.js +1 -0
  145. package/dist/components/mermaid-parser.core.js +14 -0
  146. package/dist/components/mindmap-definition-RKZ34NQL.js +1 -0
  147. package/dist/components/mr-IN-CRQNXWMA.js +1 -0
  148. package/dist/components/my-MM-5M5IBNSE.js +1 -0
  149. package/dist/components/nb-NO-T6EIAALU.js +1 -0
  150. package/dist/components/nestedRender.js +1 -0
  151. package/dist/components/nl-NL-IS3SIHDZ.js +1 -0
  152. package/dist/components/nn-NO-6E72VCQL.js +1 -0
  153. package/dist/components/oc-FR-POXYY2M6.js +1 -0
  154. package/dist/components/ofd.js +1 -1
  155. package/dist/components/ordinal.js +1 -0
  156. package/dist/components/pa-IN-N4M65BXN.js +1 -0
  157. package/dist/components/packet-YPE3B663.js +1 -0
  158. package/dist/components/percentages-BXMCSKIN.js +1 -0
  159. package/dist/components/pica.js +1 -0
  160. package/dist/components/pie-LRSECV5Y.js +1 -0
  161. package/dist/components/pie.js +1 -0
  162. package/dist/components/pieDiagram-4H26LBE5.js +1 -0
  163. package/dist/components/pl-PL-T2D74RX3.js +1 -0
  164. package/dist/components/postal-mime.js +1 -0
  165. package/dist/components/pt-BR-5N22H2LF.js +1 -0
  166. package/dist/components/pt-PT-UZXXM6DQ.js +1 -0
  167. package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -0
  168. package/dist/components/radar-GUYGQ44K.js +1 -0
  169. package/dist/components/requirementDiagram-4Y6WPE33.js +1 -0
  170. package/dist/components/ro-RO-JPDTUUEW.js +1 -0
  171. package/dist/components/rough.esm.js +1 -0
  172. package/dist/components/roundRect.js +1 -0
  173. package/dist/components/ru-RU-B4JR7IUQ.js +1 -0
  174. package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -0
  175. package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -0
  176. package/dist/components/si-LK-N5RQ5JYF.js +1 -0
  177. package/dist/components/sk-SK-C5VTKIMK.js +1 -0
  178. package/dist/components/sl-SI-NN7IZMDC.js +1 -0
  179. package/dist/components/stateDiagram-AJRCARHV.js +1 -0
  180. package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -0
  181. package/dist/components/subset-shared.chunk.js +1 -0
  182. package/dist/components/subset-worker.chunk.js +1 -0
  183. package/dist/components/sv-SE-XGPEYMSR.js +1 -0
  184. package/dist/components/ta-IN-2NMHFXQM.js +1 -0
  185. package/dist/components/th-TH-HPSO5L25.js +1 -0
  186. package/dist/components/time.js +1 -0
  187. package/dist/components/timeline-definition-PNZ67QCA.js +1 -0
  188. package/dist/components/tr-TR-DEFEU3FU.js +1 -0
  189. package/dist/components/transform.js +1 -0
  190. package/dist/components/treeView-BLDUP644.js +1 -0
  191. package/dist/components/treemap-LRROVOQU.js +1 -0
  192. package/dist/components/uk-UA-QMV73CPH.js +1 -0
  193. package/dist/components/vennDiagram-CIIHVFJN.js +1 -0
  194. package/dist/components/vi-VN-M7AON7JQ.js +1 -0
  195. package/dist/components/wardley-L42UT6IY.js +1 -0
  196. package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -0
  197. package/dist/components/worker-bundle.js +1 -0
  198. package/dist/components/worker-ref.js +1 -1
  199. package/dist/components/xychartDiagram-2RQKCTM6.js +1 -0
  200. package/dist/components/zh-CN-LNUGB5OW.js +1 -0
  201. package/dist/components/zh-HK-E62DVLB3.js +1 -0
  202. package/dist/components/zh-TW-RAJ6MFWO.js +1 -0
  203. package/dist/index.d.ts +74 -3
  204. package/dist/index.mjs +1 -1
  205. package/dist/package/index.d.ts +10 -3
  206. package/dist/style.css +11 -11
  207. package/dist/worker/pptx.worker.js +1 -1
  208. package/package.json +17 -3
  209. package/dist/index.umd.js +0 -7
  210. package/dist/worker/pdf.worker.js +0 -1
  211. package/dist/worker/sheet.worker.js +0 -1
@@ -0,0 +1 @@
1
+ const b3=c;(function(aj,ak){const aT=c,al=aj();while(!![]){try{const am=parseInt(aT(0x247))/0x1+parseInt(aT(0x202))/0x2*(-parseInt(aT(0x248))/0x3)+-parseInt(aT(0x217))/0x4*(parseInt(aT(0x27f))/0x5)+-parseInt(aT(0x1e6))/0x6*(parseInt(aT(0x224))/0x7)+-parseInt(aT(0x252))/0x8*(parseInt(aT(0x238))/0x9)+-parseInt(aT(0x1e0))/0xa*(-parseInt(aT(0x268))/0xb)+-parseInt(aT(0x1c8))/0xc*(-parseInt(aT(0x1d4))/0xd);if(am===ak)break;else al['push'](al['shift']());}catch(an){al['push'](al['shift']());}}}(a,0x1bee0));function c(b,d){b=b-0x1ba;const e=a();let f=e[b];return f;}import{ap as d,V as e,aq as f,L as g,h,F as i,T as j,R as k,k as l,ai as m,c as n,ar as o,K as p,C as r,S as s,as as t,i as u,G as v,ab as w,a5 as A,O as C,v as D,_ as F,x as L,Z as N,$ as T,a6 as X,f as a0,b as a1,a7 as a2,a9 as a3,at as a4,B as a5,a as a6,au as a7,av as a8,H as a9,J as aa,aa as ab,Q as ac,aj as ad,aw as af,al as ag,ak as ah}from'./ModelViewer.js';import{a as ai}from'./fflate.module.js';import'vue';import'./index7.js';function ie(aj,ak,al){const am=al['length']-aj-0x1;if(ak>=al[am])return am-0x1;if(ak<=al[aj])return aj;let an=aj,ao=am,ap=Math['floor']((an+ao)/0x2);for(;ak<al[ap]||ak>=al[ap+0x1];)ak<al[ap]?ao=ap:an=ap,ap=Math['floor']((an+ao)/0x2);return ap;}function Be(aj,ak,al,am){const an=[],ao=[],ap=[];an[0x0]=0x1;for(let aq=0x1;aq<=al;++aq){ao[aq]=ak-am[aj+0x1-aq],ap[aq]=am[aj+aq]-ak;let ar=0x0;for(let as=0x0;as<aq;++as){const at=ap[as+0x1],au=ao[aq-as],av=an[as]/(at+au);an[as]=ar+at*av,ar=au*av;}an[aq]=ar;}return an;}function Oe(aj,ak,al,am){const an=ie(aj,am,ak),ao=Be(an,am,aj,ak),ap=new d(0x0,0x0,0x0,0x0);for(let aq=0x0;aq<=aj;++aq){const ar=al[an-aj+aq],as=ao[aq],at=ar['w']*as;ap['x']+=ar['x']*at,ap['y']+=ar['y']*at,ap['z']+=ar['z']*at,ap['w']+=ar['w']*as;}return ap;}function Ve(aj,ak,al,am,an){const ao=[];for(let au=0x0;au<=al;++au)ao[au]=0x0;const ap=[];for(let av=0x0;av<=am;++av)ap[av]=ao['slice'](0x0);const aq=[];for(let aw=0x0;aw<=al;++aw)aq[aw]=ao['slice'](0x0);aq[0x0][0x0]=0x1;const ar=ao['slice'](0x0),as=ao['slice'](0x0);for(let ax=0x1;ax<=al;++ax){ar[ax]=ak-an[aj+0x1-ax],as[ax]=an[aj+ax]-ak;let ay=0x0;for(let az=0x0;az<ax;++az){const aA=as[az+0x1],aB=ar[ax-az];aq[ax][az]=aA+aB;const aC=aq[az][ax-0x1]/aq[ax][az];aq[az][ax]=ay+aA*aC,ay=aB*aC;}aq[ax][ax]=ay;}for(let aD=0x0;aD<=al;++aD)ap[0x0][aD]=aq[aD][al];for(let aE=0x0;aE<=al;++aE){let aF=0x0,aG=0x1;const aH=[];for(let aI=0x0;aI<=al;++aI)aH[aI]=ao['slice'](0x0);aH[0x0][0x0]=0x1;for(let aJ=0x1;aJ<=am;++aJ){let aK=0x0;const aL=aE-aJ,aM=al-aJ;aE>=aJ&&(aH[aG][0x0]=aH[aF][0x0]/aq[aM+0x1][aL],aK=aH[aG][0x0]*aq[aL][aM]);const aN=aL>=-0x1?0x1:-aL,aO=aE-0x1<=aM?aJ-0x1:al-aE;for(let aQ=aN;aQ<=aO;++aQ)aH[aG][aQ]=(aH[aF][aQ]-aH[aF][aQ-0x1])/aq[aM+0x1][aL+aQ],aK+=aH[aG][aQ]*aq[aL+aQ][aM];aE<=aM&&(aH[aG][aJ]=-aH[aF][aJ-0x1]/aq[aM+0x1][aE],aK+=aH[aG][aJ]*aq[aE][aM]),ap[aJ][aE]=aK;const aP=aF;aF=aG,aG=aP;}}let at=al;for(let aR=0x1;aR<=am;++aR){for(let aS=0x0;aS<=al;++aS)ap[aR][aS]*=at;at*=al-aR;}return ap;}function Ue(aj,ak,al,am,an){const aU=c,ao=an<aj?an:aj,ap=[],aq=ie(aj,am,ak),ar=Ve(aq,am,aj,ao,ak),as=[];for(let at=0x0;at<al['length'];++at){const au=al[at][aU(0x244)](),av=au['w'];au['x']*=av,au['y']*=av,au['z']*=av,as[at]=au;}for(let aw=0x0;aw<=ao;++aw){const ax=as[aq-aj]['clone']()['multiplyScalar'](ar[aw][0x0]);for(let ay=0x1;ay<=aj;++ay)ax['add'](as[aq-aj+ay]['clone']()['multiplyScalar'](ar[aw][ay]));ap[aw]=ax;}for(let az=ao+0x1;az<=an+0x1;++az)ap[az]=new d(0x0,0x0,0x0);return ap;}function Xe(aj,ak){let al=0x1;for(let an=0x2;an<=aj;++an)al*=an;let am=0x1;for(let ao=0x2;ao<=ak;++ao)am*=ao;for(let ap=0x2;ap<=aj-ak;++ap)am*=ap;return al/am;}function Ge(aj){const aV=c,ak=aj['length'],al=[],am=[];for(let ao=0x0;ao<ak;++ao){const ap=aj[ao];al[ao]=new e(ap['x'],ap['y'],ap['z']),am[ao]=ap['w'];}const an=[];for(let aq=0x0;aq<ak;++aq){const ar=al[aq]['clone']();for(let as=0x1;as<=aq;++as)ar[aV(0x1cf)](an[aq-as]['clone']()['multiplyScalar'](Xe(aq,as)*am[as]));an[aq]=ar['divideScalar'](am[0x0]);}return an;}function ze(aj,ak,al,am,an){const ao=Ue(aj,ak,al,am,an);return Ge(ao);}class je extends f{constructor(aj,ak,al,am,an){const aW=c;super();const ao=ak?ak['length']-0x1:0x0,ap=al?al['length']:0x0;this['degree']=aj,this['knots']=ak,this['controlPoints']=[],this[aW(0x25a)]=am||0x0,this['endKnot']=an||ao;for(let aq=0x0;aq<ap;++aq){const ar=al[aq];this['controlPoints'][aq]=new d(ar['x'],ar['y'],ar['z'],ar['w']);}}['getPoint'](aj,ak=new e()){const aX=c,al=ak,am=this['knots'][this['startKnot']]+aj*(this[aX(0x257)][this['endKnot']]-this['knots'][this[aX(0x25a)]]),an=Oe(this['degree'],this[aX(0x257)],this['controlPoints'],am);return an['w']!==0x1&&an['divideScalar'](an['w']),al['set'](an['x'],an['y'],an['z']);}['getTangent'](aj,ak=new e()){const aY=c,al=ak,am=this['knots'][0x0]+aj*(this['knots'][this['knots'][aY(0x24b)]-0x1]-this['knots'][0x0]),an=ze(this['degree'],this['knots'],this[aY(0x23a)],am,0x1);return al['copy'](an[0x1])['normalize'](),al;}['toJSON'](){const aZ=c,aj=super['toJSON']();return aj['degree']=this['degree'],aj['knots']=[...this[aZ(0x257)]],aj['controlPoints']=this['controlPoints']['map'](ak=>ak['toArray']()),aj[aZ(0x25a)]=this[aZ(0x25a)],aj['endKnot']=this['endKnot'],aj;}['fromJSON'](aj){const b0=c;return super[b0(0x1c3)](aj),this['degree']=aj['degree'],this['knots']=[...aj['knots']],this['controlPoints']=aj[b0(0x23a)][b0(0x284)](ak=>new d(ak[0x0],ak[0x1],ak[0x2],ak[0x3])),this['startKnot']=aj[b0(0x25a)],this['endKnot']=aj['endKnot'],this;}}let y,x,P;class st extends g{constructor(aj){super(aj);}['load'](aj,ak,al,am){const b1=c,an=this,ao=an[b1(0x274)]===''?h[b1(0x1fb)](aj):an['path'],ap=new i(this['manager']);ap['setPath'](an['path']),ap['setResponseType']('arraybuffer'),ap['setRequestHeader'](an[b1(0x200)]),ap['setWithCredentials'](an['withCredentials']),ap['load'](aj,function(aq){const b2=b1;try{ak(an['parse'](aq,ao));}catch(ar){am?am(ar):console[b2(0x239)](ar),an['manager']['itemError'](aj);}},al,am);}[b3(0x260)](aj,ak){const b4=b3;if(Ye(aj))y=new Ne()['parse'](aj);else{const am=le(aj);if(!Ze(am))throw new Error('THREE.FBXLoader:\x20Unknown\x20format.');if(se(am)<0x1b58)throw new Error('THREE.FBXLoader:\x20FBX\x20version\x20not\x20supported,\x20FileVersion:\x20'+se(am));y=new We()['parse'](am);}const al=new j(this['manager'])['setPath'](this['resourcePath']||ak)['setCrossOrigin'](this['crossOrigin']);return new _e(al,this[b4(0x1ed)])['parse'](y);}}class _e{constructor(aj,ak){this['textureLoader']=aj,this['manager']=ak;}['parse'](){const b5=b3;x=this[b5(0x22e)]();const aj=this['parseImages'](),ak=this[b5(0x1d1)](aj),al=this['parseMaterials'](ak),am=this['parseDeformers'](),an=new He()['parse'](am);return this[b5(0x28d)](am,an,al),P;}['parseConnections'](){const aj=new Map();return'Connections'in y&&y['Connections']['connections']['forEach'](function(ak){const b6=c,al=ak[0x0],am=ak[0x1],an=ak[0x2];aj['has'](al)||aj['set'](al,{'parents':[],'children':[]});const ao={'ID':am,'relationship':an};aj['get'](al)['parents'][b6(0x255)](ao),aj['has'](am)||aj['set'](am,{'parents':[],'children':[]});const ap={'ID':al,'relationship':an};aj['get'](am)['children']['push'](ap);}),aj;}['parseImages'](){const b7=b3,aj={},ak={};if('Video'in y['Objects']){const al=y['Objects']['Video'];for(const am in al){const an=al[am],ao=parseInt(am);if(aj[ao]=an['RelativeFilename']||an[b7(0x1bb)],'Content'in an){const ap=an['Content']instanceof ArrayBuffer&&an['Content']['byteLength']>0x0,aq=typeof an['Content']==b7(0x221)&&an['Content']!=='';if(ap||aq){const ar=this['parseImage'](al[am]);ak[an['RelativeFilename']||an[b7(0x1bb)]]=ar;}}}}for(const as in aj){const at=aj[as];ak[at]!==void 0x0?aj[as]=ak[at]:aj[as]=aj[as]['split']('\x5c')[b7(0x27b)]();}return aj;}['parseImage'](aj){const b8=b3,ak=aj['Content'],al=aj[b8(0x1cc)]||aj['Filename'],am=al['slice'](al['lastIndexOf']('.')+0x1)['toLowerCase']();let an;switch(am){case b8(0x267):an='image/bmp';break;case'jpg':case'jpeg':an=b8(0x22b);break;case'png':an='image/png';break;case'tif':an='image/tiff';break;case'tga':this['manager']['getHandler']('.tga')===null&&console['warn']('FBXLoader:\x20TGA\x20loader\x20not\x20found,\x20skipping\x20',al),an=b8(0x282);break;case'webp':an='image/webp';break;default:console[b8(0x27e)]('FBXLoader:\x20Image\x20type\x20\x22'+am+b8(0x246));return;}if(typeof ak==b8(0x221))return'data:'+an+';base64,'+ak;{const ao=new Uint8Array(ak);return window[b8(0x240)][b8(0x25d)](new Blob([ao],{'type':an}));}}['parseTextures'](aj){const ak=new Map();if('Texture'in y['Objects']){const al=y['Objects']['Texture'];for(const am in al){const an=this['parseTexture'](al[am],aj);ak['set'](parseInt(am),an);}}return ak;}['parseTexture'](aj,ak){const b9=b3,al=this[b9(0x1c6)](aj,ak);al['ID']=aj['id'],al['name']=aj['attrName'];const am=aj['WrapModeU'],an=aj['WrapModeV'],ao=am!==void 0x0?am[b9(0x220)]:0x0,ap=an!==void 0x0?an['value']:0x0;if(al['wrapS']=ao===0x0?k:l,al['wrapT']=ap===0x0?k:l,'Scaling'in aj){const aq=aj['Scaling']['value'];al['repeat']['x']=aq[0x0],al['repeat']['y']=aq[0x1];}if('Translation'in aj){const ar=aj[b9(0x201)][b9(0x220)];al['offset']['x']=ar[0x0],al[b9(0x216)]['y']=ar[0x1];}return al;}['loadTexture'](aj,ak){const ba=b3,al=aj['FileName']['split']('.')['pop']()['toLowerCase']();let am=this[ba(0x1ed)]['getHandler']('.'+al);am===null&&(am=this['textureLoader']);const an=am[ba(0x274)];an||am[ba(0x1d3)](this['textureLoader']['path']);const ao=x[ba(0x21d)](aj['id'])[ba(0x215)];let ap;if(ao!==void 0x0&&ao['length']>0x0&&ak[ao[0x0]['ID']]!==void 0x0&&(ap=ak[ao[0x0]['ID']],(ap['indexOf']('blob:')===0x0||ap['indexOf']('data:')===0x0)&&am['setPath'](void 0x0)),ap===void 0x0)return console['warn']('FBXLoader:\x20Undefined\x20filename,\x20creating\x20placeholder\x20texture.'),new m();const aq=am[ba(0x28f)](ap);return am['setPath'](an),aq;}['parseMaterials'](aj){const bb=b3,ak=new Map();if('Material'in y['Objects']){const al=y['Objects']['Material'];for(const am in al){const an=this[bb(0x242)](al[am],aj);an!==null&&ak['set'](parseInt(am),an);}}return ak;}['parseMaterial'](aj,ak){const bc=b3,al=aj['id'],am=aj['attrName'];let an=aj['ShadingModel'];if(typeof an=='object'&&(an=an['value']),!x[bc(0x21a)](al))return null;const ao=this['parseParameters'](aj,ak,al);let ap;switch(an['toLowerCase']()){case'phong':ap=new n();break;case'lambert':ap=new o();break;default:console['warn'](bc(0x281),an),ap=new n();break;}return ap['setValues'](ao),ap['name']=am,ap;}[b3(0x286)](aj,ak,al){const bd=b3,am={};aj['BumpFactor']&&(am['bumpScale']=aj[bd(0x1c9)]['value']),aj['Diffuse']?am['color']=p['colorSpaceToWorking'](new r()['fromArray'](aj['Diffuse']['value']),s):aj[bd(0x1fc)]&&(aj[bd(0x1fc)]['type']==='Color'||aj['DiffuseColor']['type']==='ColorRGB')&&(am['color']=p[bd(0x275)](new r()[bd(0x1e2)](aj['DiffuseColor']['value']),s)),aj['DisplacementFactor']&&(am['displacementScale']=aj['DisplacementFactor'][bd(0x220)]),aj['Emissive']?am[bd(0x227)]=p['colorSpaceToWorking'](new r()['fromArray'](aj[bd(0x22d)]['value']),s):aj['EmissiveColor']&&(aj['EmissiveColor']['type']==='Color'||aj['EmissiveColor']['type']==='ColorRGB')&&(am['emissive']=p['colorSpaceToWorking'](new r()[bd(0x1e2)](aj[bd(0x1dd)]['value']),s)),aj['EmissiveFactor']&&(am['emissiveIntensity']=parseFloat(aj['EmissiveFactor']['value'])),am[bd(0x265)]=0x1-(aj[bd(0x225)]?parseFloat(aj[bd(0x225)]['value']):0x0),(am['opacity']===0x1||am['opacity']===0x0)&&(am['opacity']=aj['Opacity']?parseFloat(aj['Opacity'][bd(0x220)]):null,am[bd(0x265)]===null&&(am['opacity']=0x1)),am['opacity']<0x1&&(am['transparent']=!0x0),aj['ReflectionFactor']&&(am['reflectivity']=aj['ReflectionFactor']['value']),aj['Shininess']&&(am['shininess']=aj['Shininess']['value']),aj[bd(0x23d)]?am['specular']=p['colorSpaceToWorking'](new r()['fromArray'](aj['Specular']['value']),s):aj['SpecularColor']&&aj['SpecularColor']['type']===bd(0x228)&&(am['specular']=p['colorSpaceToWorking'](new r()[bd(0x1e2)](aj['SpecularColor']['value']),s));const an=this;return x['get'](al)[bd(0x215)]['forEach'](function(ao){const bf=bd,ap=ao['relationship'];switch(ap){case'Bump':am[bf(0x28c)]=an['getTexture'](ak,ao['ID']);break;case'Maya|TEX_ao_map':am['aoMap']=an['getTexture'](ak,ao['ID']);break;case'DiffuseColor':case'Maya|TEX_color_map':am['map']=an['getTexture'](ak,ao['ID']),am['map']!==void 0x0&&(am['map']['colorSpace']=s);break;case'DisplacementColor':am['displacementMap']=an[bf(0x22c)](ak,ao['ID']);break;case'EmissiveColor':am['emissiveMap']=an['getTexture'](ak,ao['ID']),am['emissiveMap']!==void 0x0&&(am['emissiveMap']['colorSpace']=s);break;case'NormalMap':case'Maya|TEX_normal_map':am['normalMap']=an['getTexture'](ak,ao['ID']);break;case'ReflectionColor':am['envMap']=an['getTexture'](ak,ao['ID']),am[bf(0x1fe)]!==void 0x0&&(am['envMap']['mapping']=t,am['envMap']['colorSpace']=s);break;case'SpecularColor':am['specularMap']=an['getTexture'](ak,ao['ID']),am[bf(0x22f)]!==void 0x0&&(am['specularMap']['colorSpace']=s);break;case'TransparentColor':case bf(0x225):am['alphaMap']=an['getTexture'](ak,ao['ID']),am[bf(0x293)]=!0x0;break;case'AmbientColor':case'ShininessExponent':case'SpecularFactor':case'VectorDisplacementColor':default:console['warn']('THREE.FBXLoader:\x20%s\x20map\x20is\x20not\x20supported\x20in\x20three.js,\x20skipping\x20texture.',ap);break;}}),am;}['getTexture'](aj,ak){const bg=b3;return'LayeredTexture'in y['Objects']&&ak in y[bg(0x1ca)]['LayeredTexture']&&(console['warn']('THREE.FBXLoader:\x20layered\x20textures\x20are\x20not\x20supported\x20in\x20three.js.\x20Discarding\x20all\x20but\x20first\x20layer.'),ak=x['get'](ak)['children'][0x0]['ID']),aj['get'](ak);}[b3(0x1ef)](){const bh=b3,aj={},ak={};if('Deformer'in y['Objects']){const al=y['Objects']['Deformer'];for(const am in al){const an=al[am],ao=x[bh(0x21d)](parseInt(am));if(an['attrType']==='Skin'){const ap=this[bh(0x26b)](ao,al);ap['ID']=am,ao['parents']['length']>0x1&&console['warn']('THREE.FBXLoader:\x20skeleton\x20attached\x20to\x20more\x20than\x20one\x20geometry\x20is\x20not\x20supported.'),ap['geometryID']=ao['parents'][0x0]['ID'],aj[am]=ap;}else{if(an['attrType']==='BlendShape'){const aq={'id':am};aq['rawTargets']=this['parseMorphTargets'](ao,al),aq['id']=am,ao[bh(0x1df)][bh(0x24b)]>0x1&&console[bh(0x27e)]('THREE.FBXLoader:\x20morph\x20target\x20attached\x20to\x20more\x20than\x20one\x20geometry\x20is\x20not\x20supported.'),ak[am]=aq;}}}}return{'skeletons':aj,'morphTargets':ak};}['parseSkeleton'](aj,ak){const al=[];return aj['children']['forEach'](function(am){const bi=c,an=ak[am['ID']];if(an['attrType']!==bi(0x272))return;const ao={'ID':am['ID'],'indices':[],'weights':[],'transformLink':new u()['fromArray'](an['TransformLink']['a'])};'Indexes'in an&&(ao['indices']=an['Indexes']['a'],ao['weights']=an['Weights']['a']),al['push'](ao);}),{'rawBones':al,'bones':[]};}['parseMorphTargets'](aj,ak){const bj=b3,al=[];for(let am=0x0;am<aj['children']['length'];am++){const an=aj['children'][am],ao=ak[an['ID']],ap={'name':ao['attrName'],'initialWeight':ao['DeformPercent'],'id':ao['id'],'fullWeights':ao['FullWeights']['a']};if(ao['attrType']!=='BlendShapeChannel')return;ap['geoID']=x['get'](parseInt(an['ID']))[bj(0x215)]['filter'](function(aq){return aq['relationship']===void 0x0;})[0x0]['ID'],al['push'](ap);}return al;}[b3(0x28d)](aj,ak,al){const bn=b3;P=new v();const am=this['parseModels'](aj['skeletons'],ak,al),an=y['Objects']['Model'],ao=this;am['forEach'](function(at){const bk=c,au=an[at['ID']];ao['setLookAtProperties'](at,au),x['get'](at['ID'])[bk(0x1df)]['forEach'](function(av){const aw=am['get'](av['ID']);aw!==void 0x0&&aw['add'](at);}),at['parent']===null&&P['add'](at);}),this['addGlobalSceneSettings'](),P['traverse'](function(at){const bl=c;if(at['userData']['transformData']){at['parent']&&(at['userData'][bl(0x22a)]['parentMatrix']=at[bl(0x1ff)]['matrix'],at['userData'][bl(0x22a)]['parentMatrixWorld']=at[bl(0x1ff)]['matrixWorld']);const au=oe(at['userData']['transformData']);at['applyMatrix4'](au),at['updateWorldMatrix']();}});const ap=this['parsePoseNodes'](),aq=new Set();for(const at in aj['skeletons'])aj['skeletons'][at]['rawBones']['forEach'](function(au,av){const aw=aj['skeletons'][at]['bones'][av];aw&&aq['add'](aw['ID']);});const ar=new u();P['traverse'](function(au){const bm=c;if(au['isBone']&&au['ID']!==void 0x0&&!aq['has'](au['ID'])){const av=ap[au['ID']];av!==void 0x0&&(au['parent']?(ar[bm(0x276)](au[bm(0x1ff)]['matrixWorld'])['invert'](),ar['multiply'](av)):ar['copy'](av),ar['decompose'](au['position'],au['quaternion'],au['scale']),au['updateMatrix'](),au['matrixWorld']['copy'](av));}}),this[bn(0x1f8)](aj['skeletons'],ak,am);const as=new Ke()[bn(0x260)]();P[bn(0x215)]['length']===0x1&&P['children'][0x0]['isGroup']&&(P['children'][0x0]['animations']=as,P=P['children'][0x0]),P['animations']=as,'GlobalSettings'in y&&bn(0x211)in y['GlobalSettings']&&y[bn(0x29e)]['UpAxis'][bn(0x220)]===0x2&&(console['warn'](bn(0x1da)),P['rotation']['set'](-Math['PI']/0x2,0x0,0x0));}['parseModels'](aj,ak,al){const bo=b3,am=new Map(),an=y['Objects']['Model'];for(const ao in an){const ap=parseInt(ao),aq=an[ao],ar=x['get'](ap);let as=this['buildSkeleton'](ar,aj,ap,aq[bo(0x226)]);if(!as){switch(aq['attrType']){case'Camera':as=this['createCamera'](ar);break;case bo(0x1db):as=this['createLight'](ar);break;case'Mesh':as=this[bo(0x25b)](ar,ak,al);break;case'NurbsCurve':as=this['createCurve'](ar,ak);break;case'LimbNode':case bo(0x1cb):as=new w();break;case'Null':default:as=new v();break;}as[bo(0x1c5)]=aq[bo(0x226)]?A['sanitizeNodeName'](aq[bo(0x226)]):'',as['userData'][bo(0x1be)]=aq['attrName'],as['ID']=ap;}this['getTransformData'](as,aq),am['set'](ap,as);}return am;}['buildSkeleton'](aj,ak,al,am){let an=null;return aj['parents']['forEach'](function(ao){const bp=c;for(const ap in ak){const aq=ak[ap];aq[bp(0x210)]['forEach'](function(ar,as){const bq=bp;if(ar['ID']===ao['ID']){const at=an;an=new w(),an['matrixWorld']['copy'](ar['transformLink']),an[bq(0x1c5)]=am?A['sanitizeNodeName'](am):'',an['userData'][bq(0x1be)]=am,an['ID']=al,aq[bq(0x250)][as]=an,at!==null&&an['add'](at);}});}}),an;}[b3(0x23e)](aj){const br=b3;let ak,al;if(aj['children']['forEach'](function(am){const an=y['Objects']['NodeAttribute'][am['ID']];an!==void 0x0&&(al=an);}),al===void 0x0)ak=new C();else{let am=0x0;al[br(0x1d8)]!==void 0x0&&al['CameraProjectionType']['value']===0x1&&(am=0x1);let an=0x1;al['NearPlane']!==void 0x0&&(an=al['NearPlane']['value']/0x3e8);let ao=0x3e8;al['FarPlane']!==void 0x0&&(ao=al['FarPlane']['value']/0x3e8);let ap=window['innerWidth'],aq=window['innerHeight'];al[br(0x206)]!==void 0x0&&al['AspectHeight']!==void 0x0&&(ap=al['AspectWidth']['value'],aq=al['AspectHeight']['value']);const ar=ap/aq;let as=0x2d;al['FieldOfView']!==void 0x0&&(as=al['FieldOfView']['value']);const at=al[br(0x1e9)]?al['FocalLength']['value']:null;switch(am){case 0x0:ak=new D(as,ar,an,ao),at!==null&&ak[br(0x254)](at);break;case 0x1:console['warn']('THREE.FBXLoader:\x20Orthographic\x20cameras\x20not\x20supported\x20yet.'),ak=new C();break;default:console['warn']('THREE.FBXLoader:\x20Unknown\x20camera\x20type\x20'+am+'.'),ak=new C();break;}}return ak;}['createLight'](aj){const bs=b3;let ak,al;if(aj[bs(0x215)]['forEach'](function(am){const an=y['Objects']['NodeAttribute'][am['ID']];an!==void 0x0&&(al=an);}),al===void 0x0)ak=new C();else{let am;al['LightType']===void 0x0?am=0x0:am=al['LightType']['value'];let an=0xffffff;al['Color']!==void 0x0&&(an=p['colorSpaceToWorking'](new r()['fromArray'](al['Color']['value']),s));let ao=al['Intensity']===void 0x0?0x1:al['Intensity']['value']/0x64;al['CastLightOnObject']!==void 0x0&&al['CastLightOnObject']['value']===0x0&&(ao=0x0);let ap=0x0;al['FarAttenuationEnd']!==void 0x0&&(al['EnableFarAttenuation']!==void 0x0&&al['EnableFarAttenuation']['value']===0x0?ap=0x0:ap=al['FarAttenuationEnd'][bs(0x220)]);const aq=0x1;switch(am){case 0x0:ak=new F(an,ao,ap,aq);break;case 0x1:ak=new T(an,ao);break;case 0x2:let ar=Math['PI']/0x3,as=0x0;al[bs(0x26f)]!==void 0x0?(ar=L['degToRad'](al[bs(0x26f)]['value']),al[bs(0x287)]!==void 0x0&&(as=0x1-al['InnerAngle']['value']/al['OuterAngle'][bs(0x220)],as=Math['max'](0x0,as))):al['InnerAngle']!==void 0x0&&(ar=L['degToRad'](al['InnerAngle']['value'])),ak=new N(an,ao,ap,ar,as,aq);break;default:console['warn']('THREE.FBXLoader:\x20Unknown\x20light\x20type\x20'+al['LightType']['value']+',\x20defaulting\x20to\x20a\x20PointLight.'),ak=new F(an,ao);break;}al['CastShadows']!==void 0x0&&al['CastShadows'][bs(0x220)]===0x1&&(ak[bs(0x26e)]=!0x0);}return ak;}['createMesh'](aj,ak,al){const bt=b3;let am,an=null,ao=null;const ap=[];if(aj['children']['forEach'](function(aq){ak['has'](aq['ID'])&&(an=ak['get'](aq['ID'])),al['has'](aq['ID'])&&ap['push'](al['get'](aq['ID']));}),ap['length']>0x1?ao=ap:ap['length']>0x0?ao=ap[0x0]:(ao=new n({'name':g[bt(0x288)],'color':0xcccccc}),ap[bt(0x255)](ao)),bt(0x264)in an['attributes']&&ap['forEach'](function(aq){aq['vertexColors']=!0x0;}),an['groups']['length']>0x0){let aq=!0x1;for(let ar=0x0,as=an['groups']['length'];ar<as;ar++){const at=an['groups'][ar];(at['materialIndex']<0x0||at['materialIndex']>=ap['length'])&&(at['materialIndex']=ap['length'],aq=!0x0);}if(aq){const au=new n();ap['push'](au);}}return an['FBX_Deformer']?(am=new X(an,ao),am[bt(0x29d)]()):am=new a0(an,ao),am;}['createCurve'](aj,ak){const bu=b3,al=aj['children']['reduce'](function(an,ao){return ak['has'](ao['ID'])&&(an=ak['get'](ao['ID'])),an;},null),am=new a1({'name':g[bu(0x288)],'color':0x3300ff,'linewidth':0x1});return new a2(al,am);}['getTransformData'](aj,ak){const bv=b3,al={};bv(0x25c)in ak&&(al['inheritType']=parseInt(ak['InheritType']['value'])),'RotationOrder'in ak?al[bv(0x1c4)]=z(ak['RotationOrder']['value']):al[bv(0x1c4)]=z(0x0),'Lcl_Translation'in ak&&(al['translation']=ak['Lcl_Translation']['value']),'PreRotation'in ak&&(al[bv(0x20a)]=ak['PreRotation']['value']),bv(0x1e1)in ak&&(al[bv(0x1bc)]=ak['Lcl_Rotation'][bv(0x220)]),'PostRotation'in ak&&(al['postRotation']=ak['PostRotation']['value']),bv(0x263)in ak&&(al[bv(0x205)]=ak['Lcl_Scaling']['value']),'ScalingOffset'in ak&&(al['scalingOffset']=ak['ScalingOffset']['value']),'ScalingPivot'in ak&&(al['scalingPivot']=ak['ScalingPivot']['value']),'RotationOffset'in ak&&(al['rotationOffset']=ak['RotationOffset'][bv(0x220)]),'RotationPivot'in ak&&(al['rotationPivot']=ak['RotationPivot']['value']),aj['userData'][bv(0x22a)]=al;}['setLookAtProperties'](aj,ak){const bw=b3;'LookAtProperty'in ak&&x[bw(0x21d)](aj['ID'])['children']['forEach'](function(al){if(al['relationship']==='LookAtProperty'){const am=y['Objects']['Model'][al['ID']];if('Lcl_Translation'in am){const an=am['Lcl_Translation']['value'];aj['target']!==void 0x0?(aj['target']['position']['fromArray'](an),P['add'](aj['target'])):aj['lookAt'](new e()['fromArray'](an));}}});}['bindSkeleton'](aj,ak,al){const bx=b3;for(const am in aj){const an=aj[am],ao=[];for(let ap=0x0,aq=an['bones']['length'];ap<aq;ap++){const ar=new u();an['bones'][ap]&&an['rawBones'][ap]&&ar['copy'](an['rawBones'][ap]['transformLink'])['invert'](),ao[bx(0x255)](ar);}x['get'](parseInt(an['ID']))[bx(0x1df)]['forEach'](function(as){if(ak['has'](as['ID'])){const at=as['ID'];x['get'](at)['parents']['forEach'](function(au){const by=c;if(al[by(0x21a)](au['ID'])){const av=al['get'](au['ID']);av['updateMatrixWorld'](!0x0),av['bind'](new a3(an['bones'],ao),av['matrixWorld']);}});}});}}[b3(0x1f4)](){const bz=b3,aj={};if(bz(0x20b)in y['Objects']){const ak=y['Objects']['Pose'];for(const al in ak)if(ak[al]['attrType']==='BindPose'&&ak[al]['NbPoseNodes']>0x0){const am=ak[al]['PoseNode'];Array['isArray'](am)?am['forEach'](function(an){aj[an['Node']]=new u()['fromArray'](an['Matrix']['a']);}):aj[am['Node']]=new u()['fromArray'](am['Matrix']['a']);}}return aj;}['addGlobalSceneSettings'](){const bA=b3;if('GlobalSettings'in y){if('AmbientColor'in y['GlobalSettings']){const aj=y['GlobalSettings']['AmbientColor']['value'],ak=aj[0x0],al=aj[0x1],am=aj[0x2];if(ak!==0x0||al!==0x0||am!==0x0){const an=new r()['setRGB'](ak,al,am,s);P['add'](new a4(an,0x1));}}'UnitScaleFactor'in y['GlobalSettings']&&(P['userData'][bA(0x1f5)]=y['GlobalSettings']['UnitScaleFactor']['value']);}}}class He{constructor(){this['negativeMaterialIndices']=!0x1;}['parse'](aj){const bB=b3,ak=new Map();if('Geometry'in y[bB(0x1ca)]){const al=y['Objects']['Geometry'];for(const am in al){const an=x['get'](parseInt(am)),ao=this['parseGeometry'](an,al[am],aj);ak['set'](parseInt(am),ao);}}return this['negativeMaterialIndices']===!0x0&&console[bB(0x27e)]('THREE.FBXLoader:\x20The\x20FBX\x20file\x20contains\x20invalid\x20(negative)\x20material\x20indices.\x20The\x20asset\x20might\x20not\x20render\x20as\x20expected.'),ak;}['parseGeometry'](aj,ak,al){switch(ak['attrType']){case'Mesh':return this['parseMeshGeometry'](aj,ak,al);case'NurbsCurve':return this['parseNurbsGeometry'](ak);}}['parseMeshGeometry'](aj,ak,al){const bC=b3,am=al['skeletons'],an=[],ao=aj['parents']['map'](function(at){return y['Objects']['Model'][at['ID']];});if(ao['length']===0x0)return;const ap=aj['children']['reduce'](function(at,au){return am[au['ID']]!==void 0x0&&(at=am[au['ID']]),at;},null);aj[bC(0x215)]['forEach'](function(at){const bD=bC;al['morphTargets'][at['ID']]!==void 0x0&&an['push'](al[bD(0x21c)][at['ID']]);});const aq=ao[0x0],ar={};bC(0x277)in aq&&(ar['eulerOrder']=z(aq['RotationOrder'][bC(0x220)])),'InheritType'in aq&&(ar[bC(0x21f)]=parseInt(aq[bC(0x25c)]['value'])),'GeometricTranslation'in aq&&(ar['translation']=aq['GeometricTranslation'][bC(0x220)]),'GeometricRotation'in aq&&(ar['rotation']=aq[bC(0x1c1)]['value']),bC(0x232)in aq&&(ar[bC(0x205)]=aq[bC(0x232)]['value']);const as=oe(ar);return this['genGeometry'](ak,ap,an,as);}['genGeometry'](aj,ak,al,am){const bE=b3,an=new a5();aj['attrName']&&(an[bE(0x1c5)]=aj['attrName']);const ao=this['parseGeoNode'](aj,ak),ap=this['genBuffers'](ao),aq=new a6(ap[bE(0x21e)],0x3);if(aq[bE(0x24f)](am),an['setAttribute']('position',aq),ap['colors']['length']>0x0&&an['setAttribute']('color',new a6(ap['colors'],0x3)),ak&&(an[bE(0x262)]('skinIndex',new a7(ap[bE(0x29c)],0x4)),an['setAttribute'](bE(0x212),new a6(ap['vertexWeights'],0x4)),an['FBX_Deformer']=ak),ap['normal']['length']>0x0){const ar=new a8()[bE(0x279)](am),as=new a6(ap[bE(0x266)],0x3);as[bE(0x1d5)](ar),an[bE(0x262)]('normal',as);}if(ap['uvs']['forEach'](function(at,au){const av=au===0x0?'uv':'uv'+au;an['setAttribute'](av,new a6(ap['uvs'][au],0x2));}),ao['material']&&ao[bE(0x1fa)][bE(0x24a)]!=='AllSame'){let at=ap[bE(0x249)][0x0],au=0x0;if(ap['materialIndex']['forEach'](function(av,aw){av!==at&&(an['addGroup'](au,aw-au,at),at=av,au=aw);}),an['groups'][bE(0x24b)]>0x0){const av=an['groups'][an['groups']['length']-0x1],aw=av['start']+av['count'];aw!==ap['materialIndex']['length']&&an['addGroup'](aw,ap['materialIndex']['length']-aw,at);}an['groups']['length']===0x0&&an['addGroup'](0x0,ap[bE(0x249)]['length'],ap['materialIndex'][0x0]);}return this['addMorphTargets'](an,aj,al,am),an;}[b3(0x1ce)](aj,ak){const bF=b3,al={};if(al['vertexPositions']=aj['Vertices']!==void 0x0?aj[bF(0x29f)]['a']:[],al['vertexIndices']=aj['PolygonVertexIndex']!==void 0x0?aj['PolygonVertexIndex']['a']:[],aj['LayerElementColor']&&aj[bF(0x280)][0x0]['Colors']&&(al['color']=this[bF(0x23f)](aj['LayerElementColor'][0x0])),aj['LayerElementMaterial']&&(al['material']=this['parseMaterialIndices'](aj['LayerElementMaterial'][0x0])),aj['LayerElementNormal']&&(al['normal']=this['parseNormals'](aj['LayerElementNormal'][0x0])),aj['LayerElementUV']){al['uv']=[];let am=0x0;for(;aj[bF(0x222)][am];)aj['LayerElementUV'][am]['UV']&&al['uv']['push'](this['parseUVs'](aj['LayerElementUV'][am])),am++;}return al['weightTable']={},ak!==null&&(al['skeleton']=ak,ak['rawBones']['forEach'](function(an,ao){const bG=bF;an[bG(0x243)]['forEach'](function(ap,aq){const bH=bG;al['weightTable'][ap]===void 0x0&&(al[bH(0x28a)][ap]=[]),al['weightTable'][ap]['push']({'id':ao,'weight':an['weights'][aq]});});})),al;}['genBuffers'](aj){const bI=b3,ak={'vertex':[],'normal':[],'colors':[],'uvs':[],'materialIndex':[],'vertexWeights':[],'weightsIndices':[]};let al=0x0,am=0x0,an=!0x1,ao=[],ap=[],aq=[],ar=[],as=[],at=[];const au=this;return aj[bI(0x278)]['forEach'](function(av,aw){const bK=bI;let ax,ay=!0x1;av<0x0&&(av=av^-0x1,ay=!0x0);let az=[],aA=[];if(ao['push'](av*0x3,av*0x3+0x1,av*0x3+0x2),aj['color']){const aB=K(aw,al,av,aj['color']);aq['push'](aB[0x0],aB[0x1],aB[0x2]);}if(aj['skeleton']){if(aj['weightTable'][av]!==void 0x0&&aj['weightTable'][av]['forEach'](function(aC){const bJ=c;aA[bJ(0x255)](aC['weight']),az[bJ(0x255)](aC['id']);}),aA[bK(0x24b)]>0x4){an||(console['warn']('THREE.FBXLoader:\x20Vertex\x20has\x20more\x20than\x204\x20skinning\x20weights\x20assigned\x20to\x20vertex.\x20Deleting\x20additional\x20weights.'),an=!0x0);const aC=[0x0,0x0,0x0,0x0],aD=[0x0,0x0,0x0,0x0];aA['forEach'](function(aE,aF){const bL=bK;let aG=aE,aH=az[aF];aD[bL(0x20e)](function(aI,aJ,aK){if(aG>aI){aK[aJ]=aG,aG=aI;const aL=aC[aJ];aC[aJ]=aH,aH=aL;}});}),az=aC,aA=aD;}for(;aA['length']<0x4;)aA[bK(0x255)](0x0),az['push'](0x0);for(let aE=0x0;aE<0x4;++aE)as['push'](aA[aE]),at['push'](az[aE]);}if(aj['normal']){const aF=K(aw,al,av,aj['normal']);ap['push'](aF[0x0],aF[0x1],aF[0x2]);}aj['material']&&aj['material'][bK(0x24a)]!==bK(0x298)&&(ax=K(aw,al,av,aj['material'])[0x0],ax<0x0&&(au['negativeMaterialIndices']=!0x0,ax=0x0)),aj['uv']&&aj['uv']['forEach'](function(aG,aH){const aI=K(aw,al,av,aG);ar[aH]===void 0x0&&(ar[aH]=[]),ar[aH]['push'](aI[0x0]),ar[aH]['push'](aI[0x1]);}),am++,ay&&(au['genFace'](ak,aj,ao,ax,ap,aq,ar,as,at,am),al++,am=0x0,ao=[],ap=[],aq=[],ar=[],as=[],at=[]);}),ak;}['getNormalNewell'](aj){const bM=b3,ak=new e(0x0,0x0,0x0);for(let al=0x0;al<aj[bM(0x24b)];al++){const am=aj[al],an=aj[(al+0x1)%aj['length']];ak['x']+=(am['y']-an['y'])*(am['z']+an['z']),ak['y']+=(am['z']-an['z'])*(am['x']+an['x']),ak['z']+=(am['x']-an['x'])*(am['y']+an['y']);}return ak['normalize'](),ak;}['getNormalTangentAndBitangent'](aj){const bN=b3,ak=this['getNormalNewell'](aj),al=(Math[bN(0x297)](ak['z'])>0.5?new e(0x0,0x1,0x0):new e(0x0,0x0,0x1))['cross'](ak)['normalize'](),am=ak['clone']()['cross'](al)['normalize']();return{'normal':ak,'tangent':al,'bitangent':am};}['flattenVertex'](aj,ak,al){return new a9(aj['dot'](ak),aj['dot'](al));}[b3(0x1cd)](aj,ak,al,am,an,ao,ap,aq,ar,as){const bO=b3;let at;if(as>0x3){const au=[],av=ak['baseVertexPositions']||ak['vertexPositions'];for(let az=0x0;az<al['length'];az+=0x3)au['push'](new e(av[al[az]],av[al[az+0x1]],av[al[az+0x2]]));const {tangent:aw,bitangent:ax}=this['getNormalTangentAndBitangent'](au),ay=[];for(const aA of au)ay['push'](this['flattenVertex'](aA,aw,ax));at=aa['triangulateShape'](ay,[]);}else at=[[0x0,0x1,0x2]];for(const [aB,aC,aD]of at)aj['vertex']['push'](ak[bO(0x1ec)][al[aB*0x3]]),aj[bO(0x21e)][bO(0x255)](ak['vertexPositions'][al[aB*0x3+0x1]]),aj['vertex']['push'](ak['vertexPositions'][al[aB*0x3+0x2]]),aj['vertex']['push'](ak[bO(0x1ec)][al[aC*0x3]]),aj['vertex'][bO(0x255)](ak[bO(0x1ec)][al[aC*0x3+0x1]]),aj['vertex']['push'](ak['vertexPositions'][al[aC*0x3+0x2]]),aj['vertex'][bO(0x255)](ak[bO(0x1ec)][al[aD*0x3]]),aj['vertex']['push'](ak['vertexPositions'][al[aD*0x3+0x1]]),aj[bO(0x21e)]['push'](ak['vertexPositions'][al[aD*0x3+0x2]]),ak['skeleton']&&(aj['vertexWeights']['push'](aq[aB*0x4]),aj[bO(0x294)]['push'](aq[aB*0x4+0x1]),aj[bO(0x294)][bO(0x255)](aq[aB*0x4+0x2]),aj['vertexWeights']['push'](aq[aB*0x4+0x3]),aj['vertexWeights']['push'](aq[aC*0x4]),aj[bO(0x294)][bO(0x255)](aq[aC*0x4+0x1]),aj['vertexWeights']['push'](aq[aC*0x4+0x2]),aj['vertexWeights'][bO(0x255)](aq[aC*0x4+0x3]),aj['vertexWeights']['push'](aq[aD*0x4]),aj['vertexWeights']['push'](aq[aD*0x4+0x1]),aj['vertexWeights']['push'](aq[aD*0x4+0x2]),aj['vertexWeights']['push'](aq[aD*0x4+0x3]),aj['weightsIndices']['push'](ar[aB*0x4]),aj['weightsIndices']['push'](ar[aB*0x4+0x1]),aj['weightsIndices']['push'](ar[aB*0x4+0x2]),aj['weightsIndices']['push'](ar[aB*0x4+0x3]),aj['weightsIndices']['push'](ar[aC*0x4]),aj['weightsIndices']['push'](ar[aC*0x4+0x1]),aj[bO(0x29c)]['push'](ar[aC*0x4+0x2]),aj[bO(0x29c)]['push'](ar[aC*0x4+0x3]),aj['weightsIndices']['push'](ar[aD*0x4]),aj['weightsIndices']['push'](ar[aD*0x4+0x1]),aj['weightsIndices']['push'](ar[aD*0x4+0x2]),aj['weightsIndices'][bO(0x255)](ar[aD*0x4+0x3])),ak['color']&&(aj['colors']['push'](ao[aB*0x3]),aj['colors']['push'](ao[aB*0x3+0x1]),aj['colors']['push'](ao[aB*0x3+0x2]),aj['colors'][bO(0x255)](ao[aC*0x3]),aj['colors']['push'](ao[aC*0x3+0x1]),aj['colors']['push'](ao[aC*0x3+0x2]),aj['colors']['push'](ao[aD*0x3]),aj[bO(0x1bf)][bO(0x255)](ao[aD*0x3+0x1]),aj['colors']['push'](ao[aD*0x3+0x2])),ak['material']&&ak['material']['mappingType']!=='AllSame'&&(aj['materialIndex']['push'](am),aj['materialIndex']['push'](am),aj['materialIndex']['push'](am)),ak['normal']&&(aj[bO(0x266)]['push'](an[aB*0x3]),aj['normal']['push'](an[aB*0x3+0x1]),aj['normal'][bO(0x255)](an[aB*0x3+0x2]),aj[bO(0x266)]['push'](an[aC*0x3]),aj['normal']['push'](an[aC*0x3+0x1]),aj['normal'][bO(0x255)](an[aC*0x3+0x2]),aj['normal'][bO(0x255)](an[aD*0x3]),aj[bO(0x266)]['push'](an[aD*0x3+0x1]),aj[bO(0x266)]['push'](an[aD*0x3+0x2])),ak['uv']&&ak['uv']['forEach'](function(aE,aF){const bP=bO;aj['uvs'][aF]===void 0x0&&(aj['uvs'][aF]=[]),aj['uvs'][aF]['push'](ap[aF][aB*0x2]),aj['uvs'][aF]['push'](ap[aF][aB*0x2+0x1]),aj[bP(0x236)][aF]['push'](ap[aF][aC*0x2]),aj[bP(0x236)][aF][bP(0x255)](ap[aF][aC*0x2+0x1]),aj[bP(0x236)][aF]['push'](ap[aF][aD*0x2]),aj['uvs'][aF][bP(0x255)](ap[aF][aD*0x2+0x1]);});}['addMorphTargets'](aj,ak,al,am){const bQ=b3;if(al[bQ(0x24b)]===0x0)return;aj['morphTargetsRelative']=!0x0,aj['morphAttributes']['position']=[];const an=am['clone']()[bQ(0x234)](0x0,0x0,0x0),ao=this;al['forEach'](function(ap){const bR=bQ;ap[bR(0x25f)]['forEach'](function(aq){const bS=bR,ar=y['Objects'][bS(0x245)][aq['geoID']];ar!==void 0x0&&ao['genMorphGeometry'](aj,ak,ar,an,aq['name']);});});}['genMorphGeometry'](aj,ak,al,am,an){const bT=b3,ao=ak['Vertices']!==void 0x0?ak['Vertices']['a']:[],ap=ak['PolygonVertexIndex']!==void 0x0?ak['PolygonVertexIndex']['a']:[],aq=al['Vertices']!==void 0x0?al['Vertices']['a']:[],ar=al[bT(0x20f)]!==void 0x0?al['Indexes']['a']:[],as=aj['attributes'][bT(0x269)]['count']*0x3,at=new Float32Array(as);for(let ax=0x0;ax<ar['length'];ax++){const ay=ar[ax]*0x3;at[ay]=aq[ax*0x3],at[ay+0x1]=aq[ax*0x3+0x1],at[ay+0x2]=aq[ax*0x3+0x2];}const au={'vertexIndices':ap,'vertexPositions':at,'baseVertexPositions':ao},av=this['genBuffers'](au),aw=new a6(av['vertex'],0x3);aw['name']=an||al['attrName'],aw['applyMatrix4'](am),aj[bT(0x223)]['position'][bT(0x255)](aw);}['parseNormals'](aj){const bU=b3,ak=aj['MappingInformationType'],al=aj['ReferenceInformationType'],am=aj['Normals']['a'];let an=[];return al==='IndexToDirect'&&('NormalIndex'in aj?an=aj[bU(0x209)]['a']:'NormalsIndex'in aj&&(an=aj[bU(0x1f7)]['a'])),{'dataSize':0x3,'buffer':am,'indices':an,'mappingType':ak,'referenceType':al};}['parseUVs'](aj){const ak=aj['MappingInformationType'],al=aj['ReferenceInformationType'],am=aj['UV']['a'];let an=[];return al==='IndexToDirect'&&(an=aj['UVIndex']['a']),{'dataSize':0x2,'buffer':am,'indices':an,'mappingType':ak,'referenceType':al};}['parseVertexColors'](aj){const bV=b3,ak=aj['MappingInformationType'],al=aj['ReferenceInformationType'],am=aj['Colors']['a'];let an=[];al==='IndexToDirect'&&(an=aj['ColorIndex']['a']);for(let ao=0x0,ap=new r();ao<am[bV(0x24b)];ao+=0x4)ap['fromArray'](am,ao),p['colorSpaceToWorking'](ap,s),ap['toArray'](am,ao);return{'dataSize':0x4,'buffer':am,'indices':an,'mappingType':ak,'referenceType':al};}['parseMaterialIndices'](aj){const bW=b3,ak=aj['MappingInformationType'],al=aj['ReferenceInformationType'];if(ak==='NoMappingInformation')return{'dataSize':0x1,'buffer':[0x0],'indices':[0x0],'mappingType':bW(0x298),'referenceType':al};const am=aj['Materials']['a'],an=[];for(let ao=0x0;ao<am['length'];++ao)an['push'](ao);return{'dataSize':0x1,'buffer':am,'indices':an,'mappingType':ak,'referenceType':al};}['parseNurbsGeometry'](aj){const bX=b3,ak=parseInt(aj['Order']);if(isNaN(ak))return console['error'](bX(0x1c2),aj['Order'],aj['id']),new a5();const al=ak-0x1,am=aj[bX(0x235)]['a'],an=[],ao=aj['Points']['a'];for(let as=0x0,at=ao['length'];as<at;as+=0x4)an['push'](new d()['fromArray'](ao,as));let ap,aq;if(aj['Form']==='Closed')an['push'](an[0x0]);else{if(aj[bX(0x258)]===bX(0x1d6)){ap=al,aq=am['length']-0x1-ap;for(let au=0x0;au<al;++au)an['push'](an[au]);}}const ar=new je(al,am,an,ap,aq)['getPoints'](an['length']*0xc);return new a5()['setFromPoints'](ar);}}class Ke{['parse'](){const bY=b3,aj=[],ak=this['parseClips']();if(ak!==void 0x0)for(const al in ak){const am=ak[al],an=this[bY(0x256)](am);aj['push'](an);}return aj;}['parseClips'](){const bZ=b3;if(y[bZ(0x1ca)]['AnimationCurve']===void 0x0)return;const aj=this['parseAnimationCurveNodes']();this['parseAnimationCurves'](aj);const ak=this[bZ(0x285)](aj);return this['parseAnimStacks'](ak);}['parseAnimationCurveNodes'](){const c0=b3,aj=y[c0(0x1ca)]['AnimationCurveNode'],ak=new Map();for(const al in aj){const am=aj[al];if(am[c0(0x226)][c0(0x1c0)](/S|R|T|DeformPercent/)!==null){const an={'id':am['id'],'attr':am[c0(0x226)],'curves':{}};ak['set'](an['id'],an);}}return ak;}['parseAnimationCurves'](aj){const c1=b3,ak=y['Objects'][c1(0x1f2)];for(const al in ak){const am={'id':ak[al]['id'],'times':ak[al][c1(0x237)]['a']['map'](qe),'values':ak[al][c1(0x208)]['a']},an=x['get'](am['id']);if(an!==void 0x0){const ao=an['parents'][0x0]['ID'],ap=an[c1(0x1df)][0x0]['relationship'];ap[c1(0x1c0)](/X/)?aj[c1(0x21d)](ao)[c1(0x204)]['x']=am:ap['match'](/Y/)?aj['get'](ao)['curves']['y']=am:ap['match'](/Z/)?aj['get'](ao)['curves']['z']=am:ap['match'](/DeformPercent/)&&aj['has'](ao)&&(aj['get'](ao)['curves'][c1(0x1d9)]=am);}}}['parseAnimationLayers'](aj){const c2=b3,ak=y[c2(0x1ca)]['AnimationLayer'],al=new Map();for(const am in ak){const an=[],ao=x['get'](parseInt(am));ao!==void 0x0&&(ao['children']['forEach'](function(ap,aq){const c3=c2;if(aj[c3(0x21a)](ap['ID'])){const ar=aj[c3(0x21d)](ap['ID']);if(ar['curves']['x']!==void 0x0||ar['curves']['y']!==void 0x0||ar['curves']['z']!==void 0x0){if(an[aq]===void 0x0){const as=x[c3(0x21d)](ap['ID'])['parents']['filter'](function(au){return au['relationship']!==void 0x0;});if(as[c3(0x24b)]===0x0)return;const at=as[0x0]['ID'];if(at!==void 0x0){const au=y['Objects']['Model'][at['toString']()];if(au===void 0x0){console['warn']('THREE.FBXLoader:\x20Encountered\x20a\x20unused\x20curve.',ap);return;}const av={'modelName':au['attrName']?A[c3(0x203)](au[c3(0x226)]):'','ID':au['id'],'initialPosition':[0x0,0x0,0x0],'initialRotation':[0x0,0x0,0x0],'initialScale':[0x1,0x1,0x1]};P['traverse'](function(aw){const c4=c3;aw['ID']===au['id']&&(av['transform']=aw['matrix'],aw['userData']['transformData']&&(av['eulerOrder']=aw[c4(0x1f0)]['transformData']['eulerOrder'],aw['userData']['transformData'][c4(0x1bc)]&&(av['initialRotation']=aw[c4(0x1f0)][c4(0x22a)]['rotation'])));}),av['transform']||(av['transform']=new u()),'PreRotation'in au&&(av['preRotation']=au['PreRotation']['value']),'PostRotation'in au&&(av[c3(0x24c)]=au['PostRotation'][c3(0x220)]),an[aq]=av;}}an[aq]&&(an[aq][ar['attr']]=ar);}else{if(ar['curves']['morph']!==void 0x0){if(an[aq]===void 0x0){const aw=x['get'](ap['ID'])[c3(0x1df)]['filter'](function(aD){return aD['relationship']!==void 0x0;});if(aw['length']===0x0)return;const ax=aw[0x0]['ID'],ay=x['get'](ax)[c3(0x1df)][0x0]['ID'],az=x['get'](ay)['parents'][0x0]['ID'],aA=x['get'](az)['parents'][0x0]['ID'],aB=y['Objects'][c3(0x1d7)][aA],aC={'modelName':aB['attrName']?A['sanitizeNodeName'](aB['attrName']):'','morphName':y['Objects'][c3(0x1f6)][ax]['attrName']};an[aq]=aC;}an[aq][ar['attr']]=ar;}}}}),al[c2(0x1eb)](parseInt(am),an));}return al;}['parseAnimStacks'](aj){const c5=b3,ak=y['Objects']['AnimationStack'],al={};for(const am in ak){const an=x['get'](parseInt(am))['children'];an[c5(0x24b)]>0x1&&console[c5(0x27e)]('THREE.FBXLoader:\x20Encountered\x20an\x20animation\x20stack\x20with\x20multiple\x20layers,\x20this\x20is\x20currently\x20not\x20supported.\x20Ignoring\x20subsequent\x20layers.');const ao=aj['get'](an[0x0]['ID']);al[am]={'name':ak[am]['attrName'],'layer':ao};}return al;}['addClip'](aj){let ak=[];const al=this;return aj['layer']['forEach'](function(am){const c6=c;ak=ak['concat'](al[c6(0x1bd)](am));}),new ab(aj['name'],-0x1,ak);}['generateTracks'](aj){const c7=b3,ak=[];let al=new e(),am=new e();if(aj[c7(0x253)]&&aj['transform']['decompose'](al,new ac(),am),al=al['toArray'](),am=am['toArray'](),aj['T']!==void 0x0&&Object['keys'](aj['T']['curves'])['length']>0x0){const an=this['generateVectorTrack'](aj[c7(0x21b)],aj['T']['curves'],al,c7(0x269));an!==void 0x0&&ak['push'](an);}if(aj['R']!==void 0x0&&Object['keys'](aj['R']['curves'])['length']>0x0){const ao=this['generateRotationTrack'](aj['modelName'],aj['R']['curves'],aj['preRotation'],aj['postRotation'],aj['eulerOrder'],aj['initialRotation']);ao!==void 0x0&&ak[c7(0x255)](ao);}if(aj['S']!==void 0x0&&Object['keys'](aj['S']['curves'])['length']>0x0){const ap=this[c7(0x289)](aj['modelName'],aj['S'][c7(0x204)],am,'scale');ap!==void 0x0&&ak['push'](ap);}if(aj['DeformPercent']!==void 0x0){const aq=this['generateMorphTrack'](aj);aq!==void 0x0&&ak[c7(0x255)](aq);}return ak;}[b3(0x289)](aj,ak,al,am){const c8=b3,an=this[c8(0x271)](ak),ao=this['getKeyframeTrackValues'](an,ak,al);return new ad(aj+'.'+am,an,ao);}[b3(0x291)](aj,ak,al,am,an,ao){const c9=b3;let ap,aq;if(ak['x']!==void 0x0||ak['y']!==void 0x0||ak['z']!==void 0x0){const av=this['getTimesForAllAxes'](ak);if(av['length']>0x0){const aw=ao||[0x0,0x0,0x0],ax=this['synchronizeCurve'](ak['x'],av,aw[0x0]),ay=this[c9(0x251)](ak['y'],av,aw[0x1]),az=this['synchronizeCurve'](ak['z'],av,aw[0x2]),aA=this[c9(0x29b)](ax,ay,az,an);ap=aA[0x0],aq=aA[0x1];}}const ar=z(0x0);al!==void 0x0&&(al=al[c9(0x284)](L[c9(0x218)]),al['push'](ar),al=new af()['fromArray'](al),al=new ac()['setFromEuler'](al)),am!==void 0x0&&(am=am['map'](L['degToRad']),am['push'](ar),am=new af()[c9(0x1e2)](am),am=new ac()['setFromEuler'](am)['invert']());const as=new ac(),at=new af(),au=[];if(!(!aq||!ap)){for(let aB=0x0;aB<aq['length'];aB+=0x3)at[c9(0x1eb)](aq[aB],aq[aB+0x1],aq[aB+0x2],an),as[c9(0x26d)](at),al!==void 0x0&&as['premultiply'](al),am!==void 0x0&&as['multiply'](am),aB>0x2&&new ac()[c9(0x1e2)](au,(aB-0x3)/0x3*0x4)[c9(0x207)](as)<0x0&&as['set'](-as['x'],-as['y'],-as['z'],-as['w']),as['toArray'](au,aB/0x3*0x4);return new ag(aj+'.quaternion',ap,au);}}['generateMorphTrack'](aj){const ca=b3,ak=aj['DeformPercent'][ca(0x204)]['morph'],al=ak['values']['map'](function(an){return an/0x64;}),am=P['getObjectByName'](aj['modelName'])['morphTargetDictionary'][aj['morphName']];return new ah(aj['modelName']+'.morphTargetInfluences['+am+']',ak['times'],al);}[b3(0x271)](aj){const cb=b3;let ak=[];if(aj['x']!==void 0x0&&(ak=ak['concat'](aj['x'][cb(0x27d)])),aj['y']!==void 0x0&&(ak=ak['concat'](aj['y'][cb(0x27d)])),aj['z']!==void 0x0&&(ak=ak['concat'](aj['z']['times'])),ak=ak['sort'](function(al,am){return al-am;}),ak['length']>0x1){let al=0x1,am=ak[0x0];for(let an=0x1;an<ak[cb(0x24b)];an++){const ao=ak[an];ao!==am&&(ak[al]=ao,am=ao,al++);}ak=ak['slice'](0x0,al);}return ak;}['getKeyframeTrackValues'](aj,ak,al){const cc=b3,am=al,an=[];let ao=-0x1,ap=-0x1,aq=-0x1;return aj[cc(0x20e)](function(ar){const cd=cc;if(ak['x']&&(ao=ak['x'][cd(0x27d)]['indexOf'](ar)),ak['y']&&(ap=ak['y']['times']['indexOf'](ar)),ak['z']&&(aq=ak['z']['times'][cd(0x1d0)](ar)),ao!==-0x1){const as=ak['x']['values'][ao];an['push'](as),am[0x0]=as;}else an['push'](am[0x0]);if(ap!==-0x1){const at=ak['y']['values'][ap];an['push'](at),am[0x1]=at;}else an['push'](am[0x1]);if(aq!==-0x1){const au=ak['z']['values'][aq];an['push'](au),am[0x2]=au;}else an['push'](am[0x2]);}),an;}['synchronizeCurve'](aj,ak,al){const ce=b3;if(aj===void 0x0)return{'times':ak,'values':ak['map'](()=>al)};if(aj['times']['length']===ak['length'])return aj;const am=[];for(let an=0x0;an<ak[ce(0x24b)];an++)am['push'](this['sampleCurveValue'](aj,ak[an],al));return{'times':ak,'values':am};}['sampleCurveValue'](aj,ak,al){const cf=b3,am=aj['times'],an=aj['values'];if(ak<=am[0x0])return an[0x0];if(ak>=am[am[cf(0x24b)]-0x1])return an[an[cf(0x24b)]-0x1];for(let ao=0x0;ao<am['length']-0x1;ao++)if(ak>=am[ao]&&ak<=am[ao+0x1]){if(am[ao]===ak)return an[ao];const ap=(ak-am[ao])/(am[ao+0x1]-am[ao]);return an[ao]*(0x1-ap)+an[ao+0x1]*ap;}return al;}['interpolateRotations'](aj,ak,al,am){const cg=b3,an=[],ao=[];an['push'](aj['times'][0x0]),ao['push'](L['degToRad'](aj['values'][0x0])),ao['push'](L['degToRad'](ak['values'][0x0])),ao['push'](L['degToRad'](al['values'][0x0]));for(let ap=0x1;ap<aj['values']['length'];ap++){const aq=[aj['values'][ap-0x1],ak['values'][ap-0x1],al['values'][ap-0x1]];if(isNaN(aq[0x0])||isNaN(aq[0x1])||isNaN(aq[0x2]))continue;const ar=aq[cg(0x284)](L[cg(0x218)]),as=[aj['values'][ap],ak['values'][ap],al['values'][ap]];if(isNaN(as[0x0])||isNaN(as[0x1])||isNaN(as[0x2]))continue;const at=as['map'](L['degToRad']),au=[as[0x0]-aq[0x0],as[0x1]-aq[0x1],as[0x2]-aq[0x2]],av=[Math['abs'](au[0x0]),Math['abs'](au[0x1]),Math['abs'](au[0x2])];if(av[0x0]>=0xb4||av[0x1]>=0xb4||av[0x2]>=0xb4){const aw=Math[cg(0x1c7)](...av)/0xb4,ax=new af(...ar,am),ay=new af(...at,am),az=new ac()['setFromEuler'](ax),aA=new ac()['setFromEuler'](ay);az[cg(0x207)](aA)<0x0&&aA['set'](-aA['x'],-aA['y'],-aA['z'],-aA['w']);const aB=aj['times'][ap-0x1],aC=aj['times'][ap]-aB,aD=new ac(),aE=new af();for(let aF=0x0;aF<0x1;aF+=0x1/aw)aD['copy'](az[cg(0x244)]()['slerp'](aA['clone'](),aF)),an['push'](aB+aF*aC),aE['setFromQuaternion'](aD,am),ao['push'](aE['x']),ao['push'](aE['y']),ao['push'](aE['z']);}else an['push'](aj['times'][ap]),ao['push'](L[cg(0x218)](aj['values'][ap])),ao['push'](L['degToRad'](ak[cg(0x214)][ap])),ao['push'](L['degToRad'](al['values'][ap]));}return[an,ao];}}class We{['getPrevNode'](){const ch=b3;return this[ch(0x1de)][this['currentIndent']-0x2];}['getCurrentNode'](){return this['nodeStack'][this['currentIndent']-0x1];}['getCurrentProp'](){return this['currentProp'];}['pushStack'](aj){const ci=b3;this['nodeStack']['push'](aj),this[ci(0x24e)]+=0x1;}['popStack'](){this['nodeStack']['pop'](),this['currentIndent']-=0x1;}['setCurrentProp'](aj,ak){this['currentProp']=aj,this['currentPropName']=ak;}[b3(0x260)](aj){this['currentIndent']=0x0,this['allNodes']=new ae(),this['nodeStack']=[],this['currentProp']=[],this['currentPropName']='';const ak=this,al=aj['split'](/[\r\n]+/);return al['forEach'](function(am,an){const cj=c,ao=am['match'](/^[\s\t]*;/),ap=am['match'](/^[\s\t]*$/);if(ao||ap)return;const aq=am['match']('^\x5ct{'+ak['currentIndent']+'}(\x5cw+):(.*){',''),ar=am[cj(0x1c0)](cj(0x28b)+ak['currentIndent']+'}(\x5cw+):[\x5cs\x5ct\x5cr\x5cn](.*)'),as=am[cj(0x1c0)]('^\x5ct{'+(ak['currentIndent']-0x1)+'}}');aq?ak['parseNodeBegin'](am,aq):ar?ak['parseNodeProperty'](am,ar,al[++an]):as?ak['popStack']():am[cj(0x1c0)](/^[^\s\t}]/)&&ak['parseNodePropertyContinued'](am);}),this['allNodes'];}['parseNodeBegin'](aj,ak){const ck=b3,al=ak[0x1]['trim']()['replace'](/^"/,'')['replace'](/"$/,''),am=ak[0x2]['split'](',')['map'](function(aq){return aq['trim']()['replace'](/^"/,'')['replace'](/"$/,'');}),an={'name':al},ao=this['parseNodeAttr'](am),ap=this['getCurrentNode']();this['currentIndent']===0x0?this['allNodes'][ck(0x1e5)](al,an):al in ap?(al==='PoseNode'?ap['PoseNode'][ck(0x255)](an):ap[al]['id']!==void 0x0&&(ap[al]={},ap[al][ap[al]['id']]=ap[al]),ao['id']!==''&&(ap[al][ao['id']]=an)):typeof ao['id']==ck(0x20d)?(ap[al]={},ap[al][ao['id']]=an):al!=='Properties70'&&(al==='PoseNode'?ap[al]=[an]:ap[al]=an),typeof ao['id']=='number'&&(an['id']=ao['id']),ao['name']!==''&&(an['attrName']=ao['name']),ao['type']!==''&&(an['attrType']=ao['type']),this[ck(0x24d)](an);}['parseNodeAttr'](aj){let ak=aj[0x0];aj[0x0]!==''&&(ak=parseInt(aj[0x0]),isNaN(ak)&&(ak=aj[0x0]));let al='',am='';return aj['length']>0x1&&(al=aj[0x1]['replace'](/^(\w+)::/,''),am=aj[0x2]),{'id':ak,'name':al,'type':am};}[b3(0x20c)](aj,ak,al){const cl=b3;let am=ak[0x1][cl(0x1ee)](/^"/,'')['replace'](/"$/,'')['trim'](),an=ak[0x2]['replace'](/^"/,'')['replace'](/"$/,'')[cl(0x1f1)]();am==='Content'&&an===','&&(an=al['replace'](/"/g,'')['replace'](/,$/,'')['trim']());const ao=this['getCurrentNode']();if(ao['name']==='Properties70'){this['parseNodeSpecialProperty'](aj,am,an);return;}if(am==='C'){const ap=an['split'](',')['slice'](0x1),aq=parseInt(ap[0x0]),ar=parseInt(ap[0x1]);let as=an[cl(0x1f9)](',')['slice'](0x3);as=as['map'](function(at){return at['trim']()['replace'](/^"/,'');}),am=cl(0x1f3),an=[aq,ar],$e(an,as),ao[am]===void 0x0&&(ao[am]=[]);}am==='Node'&&(ao['id']=an),am in ao&&Array['isArray'](ao[am])?ao[am]['push'](an):am!=='a'?ao[am]=an:ao['a']=an,this['setCurrentProp'](ao,am),am==='a'&&an['slice'](-0x1)!==','&&(ao['a']=q(an));}['parseNodePropertyContinued'](aj){const ak=this['getCurrentNode']();ak['a']+=aj,aj['slice'](-0x1)!==','&&(ak['a']=q(ak['a']));}['parseNodeSpecialProperty'](aj,ak,al){const cn=b3,am=al['split']('\x22,')['map'](function(as){const cm=c;return as['trim']()[cm(0x1ee)](/^\"/,'')[cm(0x1ee)](/\s/,'_');}),an=am[0x0],ao=am[0x1],ap=am[0x2],aq=am[0x3];let ar=am[0x4];switch(ao){case'int':case'enum':case'bool':case'ULongLong':case cn(0x1ba):case'Number':case'FieldOfView':ar=parseFloat(ar);break;case cn(0x228):case'ColorRGB':case'Vector3D':case'Lcl_Translation':case'Lcl_Rotation':case'Lcl_Scaling':ar=q(ar);break;}this['getPrevNode']()[an]={'type':ao,'type2':ap,'flag':aq,'value':ar},this['setCurrentProp'](this['getPrevNode'](),an);}}function a(){const cG=['NormalsIndex','bindSkeleton','split','material','extractUrlBase','DiffuseColor','getString','envMap','parent','requestHeader','Translation','4CRoxUC','sanitizeNodeName','curves','scale','AspectWidth','dot','KeyValueFloat','NormalIndex','preRotation','Pose','parseNodeProperty','number','forEach','Indexes','rawBones','UpAxis','skinWeight','isArray','values','children','offset','8rELTJz','degToRad','ColorRGB','has','modelName','morphTargets','get','vertex','inheritType','value','string','LayerElementUV','morphAttributes','20846XSpYkZ','TransparencyFactor','attrName','emissive','Color','Lcl_','transformData','image/jpeg','getTexture','Emissive','parseConnections','specularMap','Properties70','Lcl\x20','GeometricScaling','getUint32','setPosition','KnotVector','uvs','KeyTime','63891NLKZJV','error','controlPoints','size','getInt32Array','Specular','createCamera','parseVertexColors','URL','ZXY','parseMaterial','indices','clone','Geometry','\x22\x20is\x20not\x20supported.','176542GrlUqr','190833upMvZO','materialIndex','mappingType','length','postRotation','pushStack','currentIndent','applyMatrix4','bones','synchronizeCurve','136ocZWQM','transform','setFocalLength','push','addClip','knots','Form','ZYX','startKnot','createMesh','InheritType','createObjectURL','multiply','rawTargets','parse','parseSubNode','setAttribute','Lcl_Scaling','color','opacity','normal','bmp','1122qUbNjk','position','propertyList','parseSkeleton','invert','setFromEuler','castShadow','OuterAngle','scalingOffset','getTimesForAllAxes','Cluster','getInt32','path','colorSpaceToWorking','copy','RotationOrder','vertexIndices','getNormalMatrix','getUint64','pop','XYZ','times','warn','206205AvTDGU','LayerElementColor','THREE.FBXLoader:\x20unknown\x20material\x20type\x20\x22%s\x22.\x20Defaulting\x20to\x20MeshPhongMaterial.','image/tga','copyPosition','map','parseAnimationLayers','parseParameters','InnerAngle','DEFAULT_MATERIAL_NAME','generateVectorTrack','weightTable','^\x5ct{','bumpMap','parseScene','THREE.FBXLoader:\x20unknown\x20attribute\x20mapping\x20type\x20','load','makeRotationFromEuler','generateRotationTrack','endOfContent','transparent','vertexWeights','getOffset','parseProperty','abs','AllSame','getInt64Array','littleEndian','interpolateRotations','weightsIndices','normalizeSkinWeights','GlobalSettings','Vertices','getFloat32','double','Filename','rotation','generateTracks','originalName','colors','match','GeometricRotation','THREE.FBXLoader:\x20Invalid\x20Order\x20%s\x20given\x20for\x20geometry\x20ID:\x20%s','fromJSON','eulerOrder','name','loadTexture','max','60AXkGWO','BumpFactor','Objects','Root','RelativeFilename','genFace','parseGeoNode','sub','indexOf','parseTextures','getInt64','setPath','907777GXAJVs','applyNormalMatrix','Periodic','Model','CameraProjectionType','morph','THREE.FBXLoader:\x20You\x20are\x20loading\x20an\x20asset\x20with\x20a\x20Z-UP\x20coordinate\x20system.\x20The\x20loader\x20just\x20rotates\x20the\x20asset\x20to\x20transform\x20it\x20into\x20Y-UP.\x20The\x20vertex\x20data\x20are\x20not\x20converted.','Light','getUint8','EmissiveColor','nodeStack','parents','11630cWriTK','Lcl_Rotation','fromArray','buffer','attrType','add','402OMtDfg','slice','getBoolean','FocalLength','_textDecoder','set','vertexPositions','manager','replace','parseDeformers','userData','trim','AnimationCurve','connections','parsePoseNodes','unitScaleFactor','Deformer'];a=function(){return cG;};return a();}class Ne{['parse'](aj){const co=b3,ak=new re(aj);ak['skip'](0x17);const al=ak['getUint32']();if(al<0x1900)throw new Error('THREE.FBXLoader:\x20FBX\x20version\x20not\x20supported,\x20FileVersion:\x20'+al);const am=new ae();for(;!this[co(0x292)](ak);){const an=this['parseNode'](ak,al);an!==null&&am['add'](an['name'],an);}return am;}['endOfContent'](aj){const cp=b3;return aj['size']()%0x10===0x0?(aj['getOffset']()+0xa0+0x10&-0x10)>=aj[cp(0x23b)]():aj['getOffset']()+0xa0+0x10>=aj['size']();}['parseNode'](aj,ak){const cq=b3,al={},am=ak>=0x1d4c?aj[cq(0x27a)]():aj['getUint32'](),an=ak>=0x1d4c?aj['getUint64']():aj['getUint32']();ak>=0x1d4c?aj['getUint64']():aj['getUint32']();const ao=aj[cq(0x1dc)](),ap=aj['getString'](ao);if(am===0x0)return null;const aq=[];for(let au=0x0;au<an;au++)aq[cq(0x255)](this[cq(0x296)](aj));const ar=aq[cq(0x24b)]>0x0?aq[0x0]:'',as=aq[cq(0x24b)]>0x1?aq[0x1]:'',at=aq['length']>0x2?aq[0x2]:'';for(al['singleProperty']=an===0x1&&aj['getOffset']()===am;am>aj['getOffset']();){const av=this['parseNode'](aj,ak);av!==null&&this['parseSubNode'](ap,al,av);}return al['propertyList']=aq,typeof ar=='number'&&(al['id']=ar),as!==''&&(al['attrName']=as),at!==''&&(al[cq(0x1e4)]=at),ap!==''&&(al['name']=ap),al;}[b3(0x261)](aj,ak,al){const cr=b3;if(al['singleProperty']===!0x0){const am=al[cr(0x26a)][0x0];Array['isArray'](am)?(ak[al['name']]=al,al['a']=am):ak[al['name']]=am;}else{if(aj==='Connections'&&al['name']==='C'){const an=[];al['propertyList'][cr(0x20e)](function(ao,ap){ap!==0x0&&an['push'](ao);}),ak['connections']===void 0x0&&(ak['connections']=[]),ak['connections']['push'](an);}else{if(al['name']==='Properties70')Object['keys'](al)[cr(0x20e)](function(ao){ak[ao]=al[ao];});else{if(aj===cr(0x230)&&al['name']==='P'){let ao=al['propertyList'][0x0],ap=al['propertyList'][0x1];const aq=al[cr(0x26a)][0x2],ar=al[cr(0x26a)][0x3];let as;ao['indexOf']('Lcl\x20')===0x0&&(ao=ao['replace'](cr(0x231),'Lcl_')),ap['indexOf']('Lcl\x20')===0x0&&(ap=ap['replace']('Lcl\x20','Lcl_')),ap==='Color'||ap===cr(0x219)||ap==='Vector'||ap==='Vector3D'||ap['indexOf'](cr(0x229))===0x0?as=[al['propertyList'][0x4],al['propertyList'][0x5],al[cr(0x26a)][0x6]]:as=al['propertyList'][0x4],ak[ao]={'type':ap,'type2':aq,'flag':ar,'value':as};}else ak[al['name']]===void 0x0?typeof al['id']=='number'?(ak[al['name']]={},ak[al['name']][al['id']]=al):ak[al['name']]=al:al['name']==='PoseNode'?(Array[cr(0x213)](ak[al['name']])||(ak[al[cr(0x1c5)]]=[ak[al['name']]]),ak[al['name']]['push'](al)):ak[al['name']][al['id']]===void 0x0&&(ak[al['name']][al['id']]=al);}}}}['parseProperty'](aj){const cs=b3,ak=aj[cs(0x1fd)](0x1);let al;switch(ak){case'C':return aj[cs(0x1e8)]();case'D':return aj['getFloat64']();case'F':return aj['getFloat32']();case'I':return aj['getInt32']();case'L':return aj['getInt64']();case'R':return al=aj[cs(0x233)](),aj['getArrayBuffer'](al);case'S':return al=aj['getUint32'](),aj['getString'](al);case'Y':return aj['getInt16']();case'b':case'c':case'd':case'f':case'i':case'l':const am=aj['getUint32'](),an=aj['getUint32'](),ao=aj['getUint32']();if(an===0x0)switch(ak){case'b':case'c':return aj['getBooleanArray'](am);case'd':return aj['getFloat64Array'](am);case'f':return aj['getFloat32Array'](am);case'i':return aj['getInt32Array'](am);case'l':return aj[cs(0x299)](am);}const ap=ai(new Uint8Array(aj['getArrayBuffer'](ao))),aq=new re(ap['buffer']);switch(ak){case'b':case'c':return aq['getBooleanArray'](am);case'd':return aq['getFloat64Array'](am);case'f':return aq['getFloat32Array'](am);case'i':return aq[cs(0x23c)](am);case'l':return aq['getInt64Array'](am);}break;default:throw new Error('THREE.FBXLoader:\x20Unknown\x20property\x20type\x20'+ak);}}}class re{constructor(aj,ak){this['dv']=new DataView(aj),this['offset']=0x0,this['littleEndian']=ak!==void 0x0?ak:!0x0,this['_textDecoder']=new TextDecoder();}[b3(0x295)](){return this['offset'];}['size'](){return this['dv']['buffer']['byteLength'];}['skip'](aj){const ct=b3;this[ct(0x216)]+=aj;}['getBoolean'](){return(this['getUint8']()&0x1)===0x1;}['getBooleanArray'](aj){const ak=[];for(let al=0x0;al<aj;al++)ak['push'](this['getBoolean']());return ak;}[b3(0x1dc)](){const aj=this['dv']['getUint8'](this['offset']);return this['offset']+=0x1,aj;}['getInt16'](){const cu=b3,aj=this['dv']['getInt16'](this['offset'],this[cu(0x29a)]);return this[cu(0x216)]+=0x2,aj;}[b3(0x273)](){const aj=this['dv']['getInt32'](this['offset'],this['littleEndian']);return this['offset']+=0x4,aj;}['getInt32Array'](aj){const ak=[];for(let al=0x0;al<aj;al++)ak['push'](this['getInt32']());return ak;}['getUint32'](){const cv=b3,aj=this['dv']['getUint32'](this['offset'],this[cv(0x29a)]);return this[cv(0x216)]+=0x4,aj;}[b3(0x1d2)](){const cw=b3;let aj,ak;return this[cw(0x29a)]?(aj=this['getUint32'](),ak=this['getUint32']()):(ak=this['getUint32'](),aj=this['getUint32']()),ak&0x80000000?(ak=~ak&0xffffffff,aj=~aj&0xffffffff,aj===0xffffffff&&(ak=ak+0x1&0xffffffff),aj=aj+0x1&0xffffffff,-(ak*0x100000000+aj)):ak*0x100000000+aj;}['getInt64Array'](aj){const ak=[];for(let al=0x0;al<aj;al++)ak['push'](this['getInt64']());return ak;}['getUint64'](){let aj,ak;return this['littleEndian']?(aj=this['getUint32'](),ak=this['getUint32']()):(ak=this['getUint32'](),aj=this['getUint32']()),ak*0x100000000+aj;}[b3(0x2a0)](){const aj=this['dv']['getFloat32'](this['offset'],this['littleEndian']);return this['offset']+=0x4,aj;}['getFloat32Array'](aj){const cx=b3,ak=[];for(let al=0x0;al<aj;al++)ak[cx(0x255)](this['getFloat32']());return ak;}['getFloat64'](){const cy=b3,aj=this['dv']['getFloat64'](this[cy(0x216)],this['littleEndian']);return this['offset']+=0x8,aj;}['getFloat64Array'](aj){const ak=[];for(let al=0x0;al<aj;al++)ak['push'](this['getFloat64']());return ak;}['getArrayBuffer'](aj){const cz=b3,ak=this['dv']['buffer'][cz(0x1e7)](this['offset'],this['offset']+aj);return this['offset']+=aj,ak;}['getString'](aj){const cA=b3,ak=this['offset'];let al=new Uint8Array(this['dv']['buffer'],ak,aj);this['skip'](aj);const am=al['indexOf'](0x0);return am>=0x0&&(al=new Uint8Array(this['dv'][cA(0x1e3)],ak,am)),this[cA(0x1ea)]['decode'](al);}}class ae{['add'](aj,ak){this[aj]=ak;}}function Ye(aj){const ak='Kaydara\x20FBX\x20Binary\x20\x20\x00';return aj['byteLength']>=ak['length']&&ak===le(aj,0x0,ak['length']);}function Ze(aj){const ak=['K','a','y','d','a','r','a','\x5c','F','B','X','\x5c','B','i','n','a','r','y','\x5c','\x5c'];let al=0x0;function am(an){const ao=aj[an-0x1];return aj=aj['slice'](al+an),al++,ao;}for(let an=0x0;an<ak['length'];++an)if(am(0x1)===ak[an])return!0x1;return!0x0;}function se(aj){const cB=b3,ak=/FBXVersion: (\d+)/,al=aj[cB(0x1c0)](ak);if(al)return parseInt(al[0x1]);throw new Error('THREE.FBXLoader:\x20Cannot\x20find\x20the\x20version\x20number\x20for\x20the\x20file\x20given.');}function qe(aj){return aj/0xac0e8d7b0;}const Qe=[];function K(aj,ak,al,am){const cC=b3;let an;switch(am['mappingType']){case'ByPolygonVertex':an=aj;break;case'ByPolygon':an=ak;break;case'ByVertice':an=al;break;case'AllSame':an=am['indices'][0x0];break;default:console['warn'](cC(0x28e)+am['mappingType']);}am['referenceType']==='IndexToDirect'&&(an=am['indices'][an]);const ao=an*am['dataSize'],ap=ao+am['dataSize'];return Je(Qe,am['buffer'],ao,ap);}const Z=new af(),U=new e();function oe(aj){const cD=b3,ak=new u(),al=new u(),am=new u(),an=new u(),ao=new u(),ap=new u(),aq=new u(),ar=new u(),as=new u(),at=new u(),au=new u(),av=new u(),aw=aj['inheritType']?aj['inheritType']:0x0;aj['translation']&&ak['setPosition'](U[cD(0x1e2)](aj['translation']));const ax=z(0x0);if(aj['preRotation']){const aK=aj['preRotation']['map'](L['degToRad']);aK['push'](ax),al[cD(0x290)](Z['fromArray'](aK));}if(aj['rotation']){const aL=aj['rotation']['map'](L[cD(0x218)]);aL['push'](aj['eulerOrder']||ax),am['makeRotationFromEuler'](Z['fromArray'](aL));}if(aj[cD(0x24c)]){const aM=aj['postRotation']['map'](L['degToRad']);aM['push'](ax),an[cD(0x290)](Z['fromArray'](aM)),an[cD(0x26c)]();}aj[cD(0x205)]&&ao['scale'](U[cD(0x1e2)](aj['scale'])),aj[cD(0x270)]&&aq['setPosition'](U['fromArray'](aj['scalingOffset'])),aj['scalingPivot']&&ap['setPosition'](U['fromArray'](aj['scalingPivot'])),aj['rotationOffset']&&ar['setPosition'](U['fromArray'](aj['rotationOffset'])),aj['rotationPivot']&&as['setPosition'](U['fromArray'](aj['rotationPivot'])),aj['parentMatrixWorld']&&(au['copy'](aj['parentMatrix']),at['copy'](aj['parentMatrixWorld']));const ay=al['clone']()[cD(0x25e)](am)['multiply'](an),az=new u();az['extractRotation'](at);const aA=new u();aA['copyPosition'](at);const aB=aA['clone']()['invert']()[cD(0x25e)](at),aC=az[cD(0x244)]()['invert']()[cD(0x25e)](aB),aD=ao,aE=new u();if(aw===0x0)aE['copy'](az)[cD(0x25e)](ay)['multiply'](aC)['multiply'](aD);else{if(aw===0x1)aE[cD(0x276)](az)[cD(0x25e)](aC)['multiply'](ay)['multiply'](aD);else{const aN=new u()['scale'](new e()['setFromMatrixScale'](au))[cD(0x244)]()['invert'](),aO=aC['clone']()['multiply'](aN);aE['copy'](az)[cD(0x25e)](ay)['multiply'](aO)['multiply'](aD);}}const aF=as['clone']()['invert'](),aG=ap['clone']()['invert']();let aH=ak['clone']()['multiply'](ar)[cD(0x25e)](as)['multiply'](al)['multiply'](am)[cD(0x25e)](an)['multiply'](aF)[cD(0x25e)](aq)['multiply'](ap)['multiply'](ao)['multiply'](aG);const aI=new u()['copyPosition'](aH),aJ=at['clone']()['multiply'](aI);return av[cD(0x283)](aJ),aH=av['clone']()['multiply'](aE),aH['premultiply'](at['invert']()),aH;}function z(aj){const cE=b3;aj=aj||0x0;const ak=[cE(0x259),'YZX','XZY',cE(0x241),'YXZ',cE(0x27c)];return aj===0x6?(console['warn']('THREE.FBXLoader:\x20unsupported\x20Euler\x20Order:\x20Spherical\x20XYZ.\x20Animations\x20and\x20rotations\x20may\x20be\x20incorrect.'),ak[0x0]):ak[aj];}function q(aj){return aj['split'](',')['map'](function(ak){return parseFloat(ak);});}function le(aj,ak,al){return ak===void 0x0&&(ak=0x0),al===void 0x0&&(al=aj['byteLength']),new TextDecoder()['decode'](new Uint8Array(aj,ak,al));}function $e(aj,ak){const cF=b3;for(let al=0x0,am=aj[cF(0x24b)],an=ak['length'];al<an;al++,am++)aj[am]=ak[al];}function Je(aj,ak,al,am){for(let an=al,ao=0x0;an<am;an++,ao++)aj[ao]=ak[an];return aj;}export{st as FBXLoader};
@@ -0,0 +1 @@
1
+ const bl=c;(function(aF,aG){const bf=c,aH=aF();while(!![]){try{const aI=-parseInt(bf(0x1b3))/0x1*(parseInt(bf(0x24d))/0x2)+parseInt(bf(0x20d))/0x3+parseInt(bf(0x1fc))/0x4+-parseInt(bf(0x180))/0x5+-parseInt(bf(0x22b))/0x6*(-parseInt(bf(0x218))/0x7)+parseInt(bf(0x228))/0x8+-parseInt(bf(0x24f))/0x9;if(aI===aG)break;else aH['push'](aH['shift']());}catch(aJ){aH['push'](aH['shift']());}}}(a,0x98903));import{U as d,W as e,X as f,L as h,h as i,F as j,C as l,Y as m,Z as n,_ as o,$ as p,r,S as s,a0 as t,H as u,i as x,a1 as A,a2 as E,O as H,T as K,a3 as L,g as N,a4 as P,m as R,n as S,R as T,N as a0,P as a1,M as a2,b as a3,j as a4,D as a5,a5 as a6,B as a7,a6 as a8,f as a9,d as aa,a7 as ab,a8 as ac,e as ad,G as af,v as ag,x as ah,w as ai,a9 as aj,aa as ak,V as al,ab as am,ac as ao,K as ap,Q as aq,ad as ar,ae as as,af as at,k as au,l as av,ag as aw,t as ax,ah as ay,ai as az,aj as aA,ak as aB,al as aC,am as aD,an,ao as aE}from'./ModelViewer.js';import'vue';import'./index7.js';function c(b,d){b=b-0x17c;const e=a();let f=e[b];return f;}function oe(aF,aG){const bg=c;if(aG===d)return console['warn']('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Geometry\x20already\x20defined\x20as\x20triangles.'),aF;if(aG===e||aG===f){let aH=aF['getIndex']();if(aH===null){const aL=[],aM=aF['getAttribute'](bg(0x21e));if(aM!==void 0x0){for(let aN=0x0;aN<aM[bg(0x233)];aN++)aL['push'](aN);aF[bg(0x1f0)](aL),aH=aF['getIndex']();}else return console['error'](bg(0x1b7)),aF;}const aI=aH[bg(0x233)]-0x2,aJ=[];if(aG===e){for(let aO=0x1;aO<=aI;aO++)aJ['push'](aH['getX'](0x0)),aJ['push'](aH['getX'](aO)),aJ['push'](aH[bg(0x18a)](aO+0x1));}else{for(let aP=0x0;aP<aI;aP++)aP%0x2===0x0?(aJ['push'](aH['getX'](aP)),aJ['push'](aH['getX'](aP+0x1)),aJ[bg(0x1d8)](aH['getX'](aP+0x2))):(aJ['push'](aH['getX'](aP+0x2)),aJ[bg(0x1d8)](aH['getX'](aP+0x1)),aJ[bg(0x1d8)](aH['getX'](aP)));}aJ['length']/0x3!==aI&&console[bg(0x24e)]('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Unable\x20to\x20generate\x20correct\x20amount\x20of\x20triangles.');const aK=aF['clone']();return aK['setIndex'](aJ),aK[bg(0x199)](),aK;}else return console['error']('THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Unknown\x20draw\x20mode:',aG),aF;}function un(aF){const bh=c,aG=new Map(),aH=new Map(),aI=aF['clone']();return xe(aF,aI,function(aJ,aK){aG['set'](aK,aJ),aH['set'](aJ,aK);}),aI[bh(0x234)](function(aJ){const bi=bh;if(!aJ['isSkinnedMesh'])return;const aK=aJ,aL=aG[bi(0x226)](aJ),aM=aL['skeleton']['bones'];aK['skeleton']=aL[bi(0x220)]['clone'](),aK['bindMatrix']['copy'](aL[bi(0x241)]),aK['skeleton']['bones']=aM[bi(0x214)](function(aN){return aH['get'](aN);}),aK['bind'](aK['skeleton'],aK['bindMatrix']);}),aI;}function xe(aF,aG,aH){const bj=c;aH(aF,aG);for(let aI=0x0;aI<aF['children']['length'];aI++)xe(aF[bj(0x1eb)][aI],aG['children'][aI],aH);}class zn extends h{constructor(aF){const bk=c;super(aF),this['dracoLoader']=null,this['ktx2Loader']=null,this['meshoptDecoder']=null,this['pluginCallbacks']=[],this['register'](function(aG){return new pn(aG);}),this['register'](function(aG){return new mn(aG);}),this['register'](function(aG){return new Mn(aG);}),this[bk(0x207)](function(aG){return new Sn(aG);}),this['register'](function(aG){return new yn(aG);}),this[bk(0x207)](function(aG){return new Tn(aG);}),this['register'](function(aG){return new Rn(aG);}),this[bk(0x207)](function(aG){return new En(aG);}),this[bk(0x207)](function(aG){return new An(aG);}),this['register'](function(aG){return new dn(aG);}),this[bk(0x207)](function(aG){return new xn(aG);}),this['register'](function(aG){return new gn(aG);}),this[bk(0x207)](function(aG){return new Ln(aG);}),this['register'](function(aG){return new _n(aG);}),this['register'](function(aG){return new fn(aG);}),this[bk(0x207)](function(aG){return new ae(aG,g['EXT_MESHOPT_COMPRESSION']);}),this['register'](function(aG){return new ae(aG,g['KHR_MESHOPT_COMPRESSION']);}),this[bk(0x207)](function(aG){return new wn(aG);});}[bl(0x1cc)](aF,aG,aH,aI){const bm=bl,aJ=this;let aK;if(this['resourcePath']!=='')aK=this['resourcePath'];else{if(this['path']!==''){const aN=i['extractUrlBase'](aF);aK=i['resolveURL'](aN,this['path']);}else aK=i[bm(0x18c)](aF);}this['manager']['itemStart'](aF);const aL=function(aO){const bo=bm;aI?aI(aO):console['error'](aO),aJ[bo(0x243)][bo(0x1a6)](aF),aJ['manager']['itemEnd'](aF);},aM=new j(this['manager']);aM['setPath'](this['path']),aM[bm(0x1f8)]('arraybuffer'),aM['setRequestHeader'](this['requestHeader']),aM['setWithCredentials'](this['withCredentials']),aM[bm(0x1cc)](aF,function(aO){try{aJ['parse'](aO,aK,function(aP){const bp=c;aG(aP),aJ[bp(0x243)]['itemEnd'](aF);},aL);}catch(aP){aL(aP);}},aH,aL);}[bl(0x1d2)](aF){return this['dracoLoader']=aF,this;}[bl(0x1ed)](aF){const bq=bl;return this[bq(0x1d3)]=aF,this;}['setMeshoptDecoder'](aF){return this['meshoptDecoder']=aF,this;}['register'](aF){const br=bl;return this['pluginCallbacks']['indexOf'](aF)===-0x1&&this[br(0x193)]['push'](aF),this;}['unregister'](aF){const bs=bl;return this['pluginCallbacks']['indexOf'](aF)!==-0x1&&this['pluginCallbacks']['splice'](this[bs(0x193)]['indexOf'](aF),0x1),this;}['parse'](aF,aG,aH,aI){const bt=bl;let aJ;const aK={},aL={},aM=new TextDecoder();if(typeof aF=='string')aJ=JSON[bt(0x1fe)](aF);else{if(aF instanceof ArrayBuffer){if(aM['decode'](new Uint8Array(aF,0x0,0x4))===_e){try{aK[g['KHR_BINARY_GLTF']]=new bn(aF);}catch(aO){aI&&aI(aO);return;}aJ=JSON['parse'](aK[g['KHR_BINARY_GLTF']]['content']);}else aJ=JSON['parse'](aM[bt(0x252)](aF));}else aJ=aF;}if(aJ['asset']===void 0x0||aJ['asset'][bt(0x1c9)][0x0]<0x2){aI&&aI(new Error(bt(0x237)));return;}const aN=new Bn(aJ,{'path':aG||this['resourcePath']||'','crossOrigin':this['crossOrigin'],'requestHeader':this[bt(0x206)],'manager':this[bt(0x243)],'ktx2Loader':this['ktx2Loader'],'meshoptDecoder':this['meshoptDecoder']});aN['fileLoader']['setRequestHeader'](this['requestHeader']);for(let aP=0x0;aP<this['pluginCallbacks'][bt(0x22a)];aP++){const aQ=this[bt(0x193)][aP](aN);aQ[bt(0x1a5)]||console[bt(0x24e)](bt(0x18e)),aL[aQ['name']]=aQ,aK[aQ[bt(0x1a5)]]=!0x0;}if(aJ[bt(0x19c)])for(let aR=0x0;aR<aJ[bt(0x19c)][bt(0x22a)];++aR){const aS=aJ['extensionsUsed'][aR],aT=aJ[bt(0x1b5)]||[];switch(aS){case g['KHR_MATERIALS_UNLIT']:aK[aS]=new hn();break;case g['KHR_DRACO_MESH_COMPRESSION']:aK[aS]=new Nn(aJ,this['dracoLoader']);break;case g['KHR_TEXTURE_TRANSFORM']:aK[aS]=new In();break;case g['KHR_MESH_QUANTIZATION']:aK[aS]=new On();break;default:aT['indexOf'](aS)>=0x0&&aL[aS]===void 0x0&&console['warn']('THREE.GLTFLoader:\x20Unknown\x20extension\x20\x22'+aS+'\x22.');}}aN['setExtensions'](aK),aN['setPlugins'](aL),aN['parse'](aH,aI);}[bl(0x1f3)](aF,aG){const aH=this;return new Promise(function(aI,aJ){aH['parse'](aF,aG,aI,aJ);});}}function ln(){let aF={};return{'get':function(aG){return aF[aG];},'add':function(aG,aH){aF[aG]=aH;},'remove':function(aG){delete aF[aG];},'removeAll':function(){aF={};}};}function _(aF,aG,aH){const bu=bl,aI=aF[bu(0x1fa)]['materials'][aG];return aI['extensions']&&aI[bu(0x196)][aH]?aI['extensions'][aH]:null;}const g={'KHR_BINARY_GLTF':'KHR_binary_glTF','KHR_DRACO_MESH_COMPRESSION':'KHR_draco_mesh_compression','KHR_LIGHTS_PUNCTUAL':'KHR_lights_punctual','KHR_MATERIALS_CLEARCOAT':'KHR_materials_clearcoat','KHR_MATERIALS_DISPERSION':'KHR_materials_dispersion','KHR_MATERIALS_IOR':'KHR_materials_ior','KHR_MATERIALS_SHEEN':bl(0x231),'KHR_MATERIALS_SPECULAR':'KHR_materials_specular','KHR_MATERIALS_TRANSMISSION':'KHR_materials_transmission','KHR_MATERIALS_IRIDESCENCE':'KHR_materials_iridescence','KHR_MATERIALS_ANISOTROPY':'KHR_materials_anisotropy','KHR_MATERIALS_UNLIT':'KHR_materials_unlit','KHR_MATERIALS_VOLUME':'KHR_materials_volume','KHR_TEXTURE_BASISU':'KHR_texture_basisu','KHR_TEXTURE_TRANSFORM':'KHR_texture_transform','KHR_MESH_QUANTIZATION':'KHR_mesh_quantization','KHR_MATERIALS_EMISSIVE_STRENGTH':'KHR_materials_emissive_strength','EXT_MATERIALS_BUMP':'EXT_materials_bump','EXT_TEXTURE_WEBP':'EXT_texture_webp','EXT_TEXTURE_AVIF':'EXT_texture_avif','EXT_MESHOPT_COMPRESSION':bl(0x23f),'KHR_MESHOPT_COMPRESSION':bl(0x23d),'EXT_MESH_GPU_INSTANCING':'EXT_mesh_gpu_instancing'};class fn{constructor(aF){this['parser']=aF,this['name']=g['KHR_LIGHTS_PUNCTUAL'],this['cache']={'refs':{},'uses':{}};}['_markDefs'](){const bv=bl,aF=this['parser'],aG=this['parser']['json']['nodes']||[];for(let aH=0x0,aI=aG['length'];aH<aI;aH++){const aJ=aG[aH];aJ['extensions']&&aJ['extensions'][this[bv(0x1a5)]]&&aJ['extensions'][this['name']]['light']!==void 0x0&&aF['_addNodeRef'](this['cache'],aJ[bv(0x196)][this['name']]['light']);}}[bl(0x242)](aF){const bw=bl,aG=this['parser'],aH='light:'+aF;let aI=aG['cache']['get'](aH);if(aI)return aI;const aJ=aG['json'],aK=((aJ[bw(0x196)]&&aJ['extensions'][this['name']]||{})['lights']||[])[aF];let aL;const aM=new l(0xffffff);aK['color']!==void 0x0&&aM['setRGB'](aK['color'][0x0],aK['color'][0x1],aK['color'][0x2],m);const aN=aK['range']!==void 0x0?aK['range']:0x0;switch(aK['type']){case'directional':aL=new p(aM),aL['target']['position']['set'](0x0,0x0,-0x1),aL['add'](aL['target']);break;case'point':aL=new o(aM),aL['distance']=aN;break;case'spot':aL=new n(aM),aL['distance']=aN,aK[bw(0x183)]=aK['spot']||{},aK['spot']['innerConeAngle']=aK['spot'][bw(0x198)]!==void 0x0?aK[bw(0x183)]['innerConeAngle']:0x0,aK['spot']['outerConeAngle']=aK['spot']['outerConeAngle']!==void 0x0?aK['spot']['outerConeAngle']:Math['PI']/0x4,aL[bw(0x1d1)]=aK['spot']['outerConeAngle'],aL['penumbra']=0x1-aK['spot']['innerConeAngle']/aK['spot']['outerConeAngle'],aL[bw(0x1bd)]['position']['set'](0x0,0x0,-0x1),aL['add'](aL['target']);break;default:throw new Error('THREE.GLTFLoader:\x20Unexpected\x20light\x20type:\x20'+aK[bw(0x1d0)]);}return aL['position']['set'](0x0,0x0,0x0),y(aL,aK),aK[bw(0x1c7)]!==void 0x0&&(aL['intensity']=aK['intensity']),aL['name']=aG['createUniqueName'](aK['name']||'light_'+aF),aI=Promise['resolve'](aL),aG['cache']['add'](aH,aI),aI;}['getDependency'](aF,aG){if(aF==='light')return this['_loadLight'](aG);}['createNodeAttachment'](aF){const bx=bl,aG=this,aH=this['parser'],aI=aH['json']['nodes'][aF],aJ=(aI['extensions']&&aI['extensions'][this['name']]||{})['light'];return aJ===void 0x0?null:this[bx(0x242)](aJ)['then'](function(aK){return aH['_getNodeRef'](aG['cache'],aJ,aK);});}}class hn{constructor(){this['name']=g['KHR_MATERIALS_UNLIT'];}['getMaterialType'](){return r;}[bl(0x184)](aF,aG,aH){const aI=[];aF['color']=new l(0x1,0x1,0x1),aF['opacity']=0x1;const aJ=aG['pbrMetallicRoughness'];if(aJ){if(Array['isArray'](aJ['baseColorFactor'])){const aK=aJ['baseColorFactor'];aF['color']['setRGB'](aK[0x0],aK[0x1],aK[0x2],m),aF['opacity']=aK[0x3];}aJ['baseColorTexture']!==void 0x0&&aI['push'](aH['assignTexture'](aF,'map',aJ['baseColorTexture'],s));}return Promise['all'](aI);}}class dn{constructor(aF){this['parser']=aF,this['name']=g['KHR_MATERIALS_EMISSIVE_STRENGTH'];}[bl(0x20b)](aF,aG){const by=bl,aH=_(this[by(0x253)],aF,this['name']);return aH===null||aH['emissiveStrength']!==void 0x0&&(aG[by(0x1f6)]=aH['emissiveStrength']),Promise['resolve']();}}class pn{constructor(aF){this['parser']=aF,this['name']=g['KHR_MATERIALS_CLEARCOAT'];}['getMaterialType'](aF){const bz=bl;return _(this[bz(0x253)],aF,this[bz(0x1a5)])!==null?t:null;}['extendMaterialParams'](aF,aG){const bA=bl,aH=_(this[bA(0x253)],aF,this['name']);if(aH===null)return Promise[bA(0x251)]();const aI=[];if(aH['clearcoatFactor']!==void 0x0&&(aG['clearcoat']=aH['clearcoatFactor']),aH['clearcoatTexture']!==void 0x0&&aI[bA(0x1d8)](this['parser']['assignTexture'](aG,'clearcoatMap',aH['clearcoatTexture'])),aH['clearcoatRoughnessFactor']!==void 0x0&&(aG['clearcoatRoughness']=aH[bA(0x1cb)]),aH['clearcoatRoughnessTexture']!==void 0x0&&aI['push'](this[bA(0x253)]['assignTexture'](aG,'clearcoatRoughnessMap',aH['clearcoatRoughnessTexture'])),aH['clearcoatNormalTexture']!==void 0x0&&(aI['push'](this['parser'][bA(0x20e)](aG,'clearcoatNormalMap',aH['clearcoatNormalTexture'])),aH['clearcoatNormalTexture']['scale']!==void 0x0)){const aJ=aH[bA(0x1ef)]['scale'];aG['clearcoatNormalScale']=new u(aJ,aJ);}return Promise['all'](aI);}}class mn{constructor(aF){const bB=bl;this['parser']=aF,this['name']=g[bB(0x1f2)];}['getMaterialType'](aF){const bC=bl;return _(this['parser'],aF,this[bC(0x1a5)])!==null?t:null;}['extendMaterialParams'](aF,aG){const bD=bl,aH=_(this['parser'],aF,this['name']);return aH===null||(aG['dispersion']=aH['dispersion']!==void 0x0?aH[bD(0x1c1)]:0x0),Promise['resolve']();}}class gn{constructor(aF){const bE=bl;this['parser']=aF,this[bE(0x1a5)]=g[bE(0x1a0)];}['getMaterialType'](aF){return _(this['parser'],aF,this['name'])!==null?t:null;}['extendMaterialParams'](aF,aG){const bF=bl,aH=_(this[bF(0x253)],aF,this[bF(0x1a5)]);if(aH===null)return Promise['resolve']();const aI=[];return aH['iridescenceFactor']!==void 0x0&&(aG['iridescence']=aH['iridescenceFactor']),aH['iridescenceTexture']!==void 0x0&&aI['push'](this[bF(0x253)]['assignTexture'](aG,'iridescenceMap',aH['iridescenceTexture'])),aH['iridescenceIor']!==void 0x0&&(aG[bF(0x1a9)]=aH[bF(0x23a)]),aG['iridescenceThicknessRange']===void 0x0&&(aG['iridescenceThicknessRange']=[0x64,0x190]),aH['iridescenceThicknessMinimum']!==void 0x0&&(aG['iridescenceThicknessRange'][0x0]=aH['iridescenceThicknessMinimum']),aH['iridescenceThicknessMaximum']!==void 0x0&&(aG['iridescenceThicknessRange'][0x1]=aH['iridescenceThicknessMaximum']),aH[bF(0x1fb)]!==void 0x0&&aI['push'](this['parser'][bF(0x20e)](aG,'iridescenceThicknessMap',aH['iridescenceThicknessTexture'])),Promise['all'](aI);}}class Tn{constructor(aF){const bG=bl;this['parser']=aF,this['name']=g[bG(0x18f)];}['getMaterialType'](aF){return _(this['parser'],aF,this['name'])!==null?t:null;}['extendMaterialParams'](aF,aG){const bH=bl,aH=_(this['parser'],aF,this['name']);if(aH===null)return Promise[bH(0x251)]();const aI=[];if(aG['sheenColor']=new l(0x0,0x0,0x0),aG['sheenRoughness']=0x0,aG['sheen']=0x1,aH['sheenColorFactor']!==void 0x0){const aJ=aH['sheenColorFactor'];aG[bH(0x188)]['setRGB'](aJ[0x0],aJ[0x1],aJ[0x2],m);}return aH[bH(0x204)]!==void 0x0&&(aG['sheenRoughness']=aH['sheenRoughnessFactor']),aH['sheenColorTexture']!==void 0x0&&aI['push'](this['parser']['assignTexture'](aG,'sheenColorMap',aH[bH(0x1e3)],s)),aH['sheenRoughnessTexture']!==void 0x0&&aI['push'](this['parser']['assignTexture'](aG,'sheenRoughnessMap',aH['sheenRoughnessTexture'])),Promise['all'](aI);}}class Rn{constructor(aF){const bI=bl;this['parser']=aF,this[bI(0x1a5)]=g['KHR_MATERIALS_TRANSMISSION'];}[bl(0x17f)](aF){return _(this['parser'],aF,this['name'])!==null?t:null;}['extendMaterialParams'](aF,aG){const bJ=bl,aH=_(this['parser'],aF,this[bJ(0x1a5)]);if(aH===null)return Promise[bJ(0x251)]();const aI=[];return aH['transmissionFactor']!==void 0x0&&(aG['transmission']=aH['transmissionFactor']),aH[bJ(0x1d9)]!==void 0x0&&aI['push'](this['parser']['assignTexture'](aG,'transmissionMap',aH['transmissionTexture'])),Promise[bJ(0x249)](aI);}}class En{constructor(aF){const bK=bl;this['parser']=aF,this['name']=g[bK(0x22d)];}['getMaterialType'](aF){const bL=bl;return _(this['parser'],aF,this[bL(0x1a5)])!==null?t:null;}['extendMaterialParams'](aF,aG){const bM=bl,aH=_(this[bM(0x253)],aF,this[bM(0x1a5)]);if(aH===null)return Promise['resolve']();const aI=[];aG['thickness']=aH['thicknessFactor']!==void 0x0?aH['thicknessFactor']:0x0,aH['thicknessTexture']!==void 0x0&&aI['push'](this[bM(0x253)]['assignTexture'](aG,'thicknessMap',aH['thicknessTexture'])),aG['attenuationDistance']=aH[bM(0x210)]||0x1/0x0;const aJ=aH[bM(0x225)]||[0x1,0x1,0x1];return aG['attenuationColor']=new l()['setRGB'](aJ[0x0],aJ[0x1],aJ[0x2],m),Promise['all'](aI);}}class An{constructor(aF){this['parser']=aF,this['name']=g['KHR_MATERIALS_IOR'];}['getMaterialType'](aF){const bN=bl;return _(this['parser'],aF,this[bN(0x1a5)])!==null?t:null;}[bl(0x20b)](aF,aG){const bO=bl,aH=_(this['parser'],aF,this['name']);return aH===null||(aG[bO(0x192)]=aH['ior']!==void 0x0?aH['ior']:1.5,aG['ior']===0x0&&(aG['ior']=0x3e8)),Promise[bO(0x251)]();}}class xn{constructor(aF){this['parser']=aF,this['name']=g['KHR_MATERIALS_SPECULAR'];}['getMaterialType'](aF){return _(this['parser'],aF,this['name'])!==null?t:null;}['extendMaterialParams'](aF,aG){const bP=bl,aH=_(this[bP(0x253)],aF,this[bP(0x1a5)]);if(aH===null)return Promise[bP(0x251)]();const aI=[];aG['specularIntensity']=aH['specularFactor']!==void 0x0?aH['specularFactor']:0x1,aH['specularTexture']!==void 0x0&&aI['push'](this[bP(0x253)]['assignTexture'](aG,'specularIntensityMap',aH['specularTexture']));const aJ=aH[bP(0x224)]||[0x1,0x1,0x1];return aG['specularColor']=new l()['setRGB'](aJ[0x0],aJ[0x1],aJ[0x2],m),aH['specularColorTexture']!==void 0x0&&aI['push'](this['parser']['assignTexture'](aG,'specularColorMap',aH[bP(0x24b)],s)),Promise['all'](aI);}}class _n{constructor(aF){const bQ=bl;this[bQ(0x253)]=aF,this['name']=g[bQ(0x201)];}['getMaterialType'](aF){const bR=bl;return _(this['parser'],aF,this[bR(0x1a5)])!==null?t:null;}['extendMaterialParams'](aF,aG){const bS=bl,aH=_(this[bS(0x253)],aF,this['name']);if(aH===null)return Promise['resolve']();const aI=[];return aG['bumpScale']=aH['bumpFactor']!==void 0x0?aH['bumpFactor']:0x1,aH[bS(0x1c8)]!==void 0x0&&aI[bS(0x1d8)](this[bS(0x253)]['assignTexture'](aG,bS(0x181),aH[bS(0x1c8)])),Promise[bS(0x249)](aI);}}class Ln{constructor(aF){const bT=bl;this['parser']=aF,this[bT(0x1a5)]=g['KHR_MATERIALS_ANISOTROPY'];}['getMaterialType'](aF){return _(this['parser'],aF,this['name'])!==null?t:null;}[bl(0x20b)](aF,aG){const bU=bl,aH=_(this['parser'],aF,this['name']);if(aH===null)return Promise['resolve']();const aI=[];return aH[bU(0x1c3)]!==void 0x0&&(aG['anisotropy']=aH['anisotropyStrength']),aH['anisotropyRotation']!==void 0x0&&(aG['anisotropyRotation']=aH[bU(0x1e9)]),aH['anisotropyTexture']!==void 0x0&&aI['push'](this['parser']['assignTexture'](aG,'anisotropyMap',aH[bU(0x209)])),Promise['all'](aI);}}class Mn{constructor(aF){const bV=bl;this['parser']=aF,this['name']=g[bV(0x1d4)];}['loadTexture'](aF){const bW=bl,aG=this['parser'],aH=aG['json'],aI=aH['textures'][aF];if(!aI['extensions']||!aI[bW(0x196)][this['name']])return null;const aJ=aI['extensions'][this['name']],aK=aG['options']['ktx2Loader'];if(!aK){if(aH['extensionsRequired']&&aH['extensionsRequired']['indexOf'](this['name'])>=0x0)throw new Error(bW(0x240));return null;}return aG['loadTextureImage'](aF,aJ[bW(0x1cd)],aK);}}class Sn{constructor(aF){this['parser']=aF,this['name']=g['EXT_TEXTURE_WEBP'];}['loadTexture'](aF){const bX=bl,aG=this['name'],aH=this['parser'],aI=aH['json'],aJ=aI['textures'][aF];if(!aJ['extensions']||!aJ['extensions'][aG])return null;const aK=aJ[bX(0x196)][aG],aL=aI['images'][aK['source']];let aM=aH['textureLoader'];if(aL['uri']){const aN=aH['options']['manager']['getHandler'](aL['uri']);aN!==null&&(aM=aN);}return aH['loadTextureImage'](aF,aK['source'],aM);}}class yn{constructor(aF){const bY=bl;this['parser']=aF,this[bY(0x1a5)]=g['EXT_TEXTURE_AVIF'];}['loadTexture'](aF){const bZ=bl,aG=this['name'],aH=this['parser'],aI=aH['json'],aJ=aI[bZ(0x1a7)][aF];if(!aJ['extensions']||!aJ['extensions'][aG])return null;const aK=aJ['extensions'][aG],aL=aI['images'][aK['source']];let aM=aH['textureLoader'];if(aL[bZ(0x1f7)]){const aN=aH['options']['manager']['getHandler'](aL[bZ(0x1f7)]);aN!==null&&(aM=aN);}return aH['loadTextureImage'](aF,aK['source'],aM);}}class ae{constructor(aF,aG){this['name']=aG,this['parser']=aF;}['loadBufferView'](aF){const c0=bl,aG=this[c0(0x253)]['json'],aH=aG['bufferViews'][aF];if(aH[c0(0x196)]&&aH['extensions'][this['name']]){const aI=aH[c0(0x196)][this['name']],aJ=this[c0(0x253)]['getDependency']('buffer',aI['buffer']),aK=this['parser']['options']['meshoptDecoder'];if(!aK||!aK['supported']){if(aG['extensionsRequired']&&aG['extensionsRequired']['indexOf'](this['name'])>=0x0)throw new Error('THREE.GLTFLoader:\x20setMeshoptDecoder\x20must\x20be\x20called\x20before\x20loading\x20compressed\x20files');return null;}return aJ['then'](function(aL){const c1=c0,aM=aI['byteOffset']||0x0,aN=aI['byteLength']||0x0,aO=aI['count'],aP=aI[c1(0x1ee)],aQ=new Uint8Array(aL,aM,aN);return aK['decodeGltfBufferAsync']?aK[c1(0x1c5)](aO,aP,aQ,aI['mode'],aI['filter'])[c1(0x1a1)](function(aR){return aR['buffer'];}):aK['ready']['then'](function(){const aR=new ArrayBuffer(aO*aP);return aK['decodeGltfBuffer'](new Uint8Array(aR),aO,aP,aQ,aI['mode'],aI['filter']),aR;});});}else return null;}}class wn{constructor(aF){const c2=bl;this['name']=g[c2(0x1df)],this['parser']=aF;}['createNodeMesh'](aF){const c3=bl,aG=this['parser']['json'],aH=aG['nodes'][aF];if(!aH[c3(0x196)]||!aH[c3(0x196)][this['name']]||aH['mesh']===void 0x0)return null;const aI=aG['meshes'][aH['mesh']];for(const aM of aI['primitives'])if(aM['mode']!==M['TRIANGLES']&&aM[c3(0x202)]!==M['TRIANGLE_STRIP']&&aM[c3(0x202)]!==M['TRIANGLE_FAN']&&aM['mode']!==void 0x0)return null;const aJ=aH['extensions'][this['name']][c3(0x1f9)],aK=[],aL={};for(const aN in aJ)aK['push'](this['parser'][c3(0x21d)]('accessor',aJ[aN])[c3(0x1a1)](aO=>(aL[aN]=aO,aL[aN])));return aK[c3(0x22a)]<0x1?null:(aK['push'](this['parser']['createNodeMesh'](aF)),Promise['all'](aK)['then'](aO=>{const c4=c3,aP=aO['pop'](),aQ=aP['isGroup']?aP['children']:[aP],aR=aO[0x0]['count'],aS=[];for(const aT of aQ){const aU=new x(),aV=new al(),aW=new aq(),aX=new al(0x1,0x1,0x1),aY=new A(aT['geometry'],aT['material'],aR);for(let aZ=0x0;aZ<aR;aZ++)aL['TRANSLATION']&&aV['fromBufferAttribute'](aL['TRANSLATION'],aZ),aL['ROTATION']&&aW['fromBufferAttribute'](aL['ROTATION'],aZ),aL['SCALE']&&aX['fromBufferAttribute'](aL['SCALE'],aZ),aY['setMatrixAt'](aZ,aU['compose'](aV,aW,aX));for(const b0 in aL)if(b0==='_COLOR_0'){const b1=aL[b0];aY['instanceColor']=new E(b1['array'],b1[c4(0x23c)],b1['normalized']);}else b0!=='TRANSLATION'&&b0!=='ROTATION'&&b0!=='SCALE'&&aT['geometry']['setAttribute'](b0,aL[b0]);H['prototype']['copy']['call'](aY,aT),this[c4(0x253)]['assignFinalMaterial'](aY),aS['push'](aY);}return aP['isGroup']?(aP['clear'](),aP['add'](...aS),aP):aS[0x0];}));}}function a(){const d9=['transmissionTexture','keys','cache','THREE.GLTFLoader:\x20Image\x20','metallicRoughnessTexture','dracoLoader','EXT_MESH_GPU_INSTANCING','normalTexture','roughnessFactor','skinWeight','sheenColorTexture','color','cameraCache','meshes','camera','extras','anisotropyRotation','fromArray','children','array','setKTX2Loader','byteStride','clearcoatNormalTexture','setIndex','LineBasicMaterial:','KHR_MATERIALS_DISPERSION','parseAsync','abs','animation','emissiveIntensity','uri','setResponseType','attributes','json','iridescenceThicknessTexture','2728576WyXMsG','COLOR_0','parse','setZ','pivot','EXT_MATERIALS_BUMP','mode','uuid','sheenRoughnessFactor','targetNames','requestHeader','register','content','anisotropyTexture','use-credentials','extendMaterialParams','associations','1640760gULRuo','assignTexture','indices','attenuationDistance','max','morphTargetInfluences','translation','map','plugins','KHR_TEXTURE_TRANSFORM','THREE.GLTFLoader:\x20Legacy\x20binary\x20file\x20detected.','7wmHyTO','morphAttributes','NORMAL','LINE_STRIP','isGroup','getDependency','position','createNodeAttachment','skeleton','removeAll','has','path','specularColorFactor','attenuationColor','get','normalized','6389832yjBTup','channel','length','6502218Umevpi','_createCubicSplineTrackInterpolant','KHR_MATERIALS_VOLUME','normalizeSkinWeights','POSITION','normalScale','KHR_materials_sheen','channels','count','traverse','userData','KHR_MATERIALS_UNLIT','THREE.GLTFLoader:\x20Unsupported\x20asset.\x20glTF\x20versions\x20>=2.0\x20are\x20supported.','THREE.GLTFLoader:\x20Missing\x20camera\x20parameters.','warn','iridescenceIor','emissiveTexture','itemSize','KHR_meshopt_compression','targets','EXT_meshopt_compression','THREE.GLTFLoader:\x20setKTX2Loader\x20must\x20be\x20called\x20before\x20loading\x20KTX2\x20textures','bindMatrix','_loadLight','manager','sampler','body','wrapT','meshCache','search','all','min','specularColorTexture','createObjectURL','3566FnHhuz','error','10701918CxnZWD','sparse','resolve','decode','parser','xmag','data:image/','KHR_MESH_QUANTIZATION','copy','getMaterialType','6175450kPsBpr','bumpMap','normal','spot','extendParams','componentType','loadSkin','createUniqueName','sheenColor','baseColorFactor','getX','THREE.GLTFLoader:\x20Converting\x20vertex\x20colors\x20from\x20\x22srgb-linear\x22\x20to\x20\x22','extractUrlBase','cameras','THREE.GLTFLoader:\x20Invalid\x20plugin\x20found:\x20missing\x20name','KHR_MATERIALS_SHEEN','getValueSize','slice','ior','pluginCallbacks','scenes','flatShading','extensions','baseColorTexture','innerConeAngle','clearGroups','isBone','mesh','extensionsUsed','add','Unknown\x20type:\x20','header','KHR_MATERIALS_IRIDESCENCE','then','geometry','weights','_invokeAll','name','itemError','textures','arraybuffer','iridescenceIOR','bufferView','occlusionTexture','set','derivative-tangents:','primitives','startsWith','THREE.GLTFLoader:\x20Joint\x20\x22%s\x22\x20could\x20not\x20be\x20found.','texCoord','forEach','35UhBOGu','tangent','extensionsRequired','THREE.GLTFLoader:\x20Failed\x20to\x20load\x20buffer\x20\x22','THREE.BufferGeometryUtils.toTrianglesDrawMode():\x20Undefined\x20position\x20attribute.\x20Processing\x20not\x20possible.','parameters','sort','node','options','nodes','target','offset','needsUpdate','clone','dispersion','emissiveFactor','anisotropyStrength','radToDeg','decodeGltfBufferAsync','index','intensity','bumpTexture','version','textureCache','clearcoatRoughnessFactor','load','source','distanceTo','_invokeOne','type','angle','setDRACOLoader','ktx2Loader','KHR_TEXTURE_BASISU','sourceCache','accessor','bufferViews','push'];a=function(){return d9;};return a();}const _e='glTF',D=0xc,ce={'JSON':0x4e4f534a,'BIN':0x4e4942};class bn{constructor(aF){const c5=bl;this['name']=g['KHR_BINARY_GLTF'],this['content']=null,this[c5(0x245)]=null;const aG=new DataView(aF,0x0,D),aH=new TextDecoder();if(this[c5(0x19f)]={'magic':aH[c5(0x252)](new Uint8Array(aF[c5(0x191)](0x0,0x4))),'version':aG['getUint32'](0x4,!0x0),'length':aG['getUint32'](0x8,!0x0)},this[c5(0x19f)]['magic']!==_e)throw new Error('THREE.GLTFLoader:\x20Unsupported\x20glTF-Binary\x20header.');if(this['header']['version']<0x2)throw new Error(c5(0x217));const aI=this['header']['length']-D,aJ=new DataView(aF,D);let aK=0x0;for(;aK<aI;){const aL=aJ['getUint32'](aK,!0x0);aK+=0x4;const aM=aJ['getUint32'](aK,!0x0);if(aK+=0x4,aM===ce['JSON']){const aN=new Uint8Array(aF,D+aK,aL);this[c5(0x208)]=aH['decode'](aN);}else{if(aM===ce['BIN']){const aO=D+aK;this['body']=aF['slice'](aO,aO+aL);}}aK+=aL;}if(this['content']===null)throw new Error('THREE.GLTFLoader:\x20JSON\x20content\x20not\x20found.');}}class Nn{constructor(aF,aG){const c6=bl;if(!aG)throw new Error('THREE.GLTFLoader:\x20No\x20DRACOLoader\x20instance\x20provided.');this['name']=g['KHR_DRACO_MESH_COMPRESSION'],this['json']=aF,this[c6(0x1de)]=aG,this[c6(0x1de)]['preload']();}['decodePrimitive'](aF,aG){const c7=bl,aH=this['json'],aI=this['dracoLoader'],aJ=aF[c7(0x196)][this['name']][c7(0x1aa)],aK=aF['extensions'][this['name']][c7(0x1f9)],aL={},aM={},aN={};for(const aO in aK){const aP=$[aO]||aO['toLowerCase']();aL[aP]=aK[aO];}for(const aQ in aF[c7(0x1f9)]){const aR=$[aQ]||aQ['toLowerCase']();if(aK[aQ]!==void 0x0){const aS=aH['accessors'][aF['attributes'][aQ]],aT=k[aS['componentType']];aN[aR]=aT['name'],aM[aR]=aS['normalized']===!0x0;}}return aG['getDependency']('bufferView',aJ)['then'](function(aU){return new Promise(function(aV,aW){aI['decodeDracoFile'](aU,function(aX){const c8=c;for(const aY in aX['attributes']){const aZ=aX[c8(0x1f9)][aY],b0=aM[aY];b0!==void 0x0&&(aZ[c8(0x227)]=b0);}aV(aX);},aL,aN,m,aW);});});}}class In{constructor(){this['name']=g['KHR_TEXTURE_TRANSFORM'];}['extendTexture'](aF,aG){const c9=bl;return(aG['texCoord']===void 0x0||aG[c9(0x1b1)]===aF['channel'])&&aG['offset']===void 0x0&&aG['rotation']===void 0x0&&aG['scale']===void 0x0||(aF=aF['clone'](),aG['texCoord']!==void 0x0&&(aF[c9(0x229)]=aG['texCoord']),aG[c9(0x1be)]!==void 0x0&&aF[c9(0x1be)][c9(0x1ea)](aG['offset']),aG['rotation']!==void 0x0&&(aF['rotation']=aG['rotation']),aG['scale']!==void 0x0&&aF['repeat']['fromArray'](aG['scale']),aF[c9(0x1bf)]=!0x0),aF;}}class On{constructor(){const ca=bl;this['name']=g[ca(0x17d)];}}class Le extends aD{constructor(aF,aG,aH,aI){super(aF,aG,aH,aI);}['copySampleValue_'](aF){const aG=this['resultBuffer'],aH=this['sampleValues'],aI=this['valueSize'],aJ=aF*aI*0x3+aI;for(let aK=0x0;aK!==aI;aK++)aG[aK]=aH[aJ+aK];return aG;}['interpolate_'](aF,aG,aH,aI){const aJ=this['resultBuffer'],aK=this['sampleValues'],aL=this['valueSize'],aM=aL*0x2,aN=aL*0x3,aO=aI-aG,aP=(aH-aG)/aO,aQ=aP*aP,aR=aQ*aP,aS=aF*aN,aT=aS-aN,aU=-0x2*aR+0x3*aQ,aV=aR-aQ,aW=0x1-aU,aX=aV-aQ+aP;for(let aY=0x0;aY!==aL;aY++){const aZ=aK[aT+aY+aL],b0=aK[aT+aY+aM]*aO,b1=aK[aS+aY+aL],b2=aK[aS+aY]*aO;aJ[aY]=aW*aZ+aX*b0+aU*b1+aV*b2;}return aJ;}}const Cn=new aq();class Fn extends Le{['interpolate_'](aF,aG,aH,aI){const aJ=super['interpolate_'](aF,aG,aH,aI);return Cn['fromArray'](aJ)['normalize']()['toArray'](aJ),aJ;}}const M={'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},k={0x1400:Int8Array,0x1401:Uint8Array,0x1402:Int16Array,0x1403:Uint16Array,0x1405:Uint32Array,0x1406:Float32Array},ue={0x2600:a0,0x2601:R,0x2700:ar,0x2701:as,0x2702:at,0x2703:S},le={0x812f:au,0x8370:av,0x2901:T},q={'SCALAR':0x1,'VEC2':0x2,'VEC3':0x3,'VEC4':0x4,'MAT2':0x4,'MAT3':0x9,'MAT4':0x10},$={'POSITION':bl(0x21e),'NORMAL':'normal','TANGENT':bl(0x1b4),'TEXCOORD_0':'uv','TEXCOORD_1':'uv1','TEXCOORD_2':'uv2','TEXCOORD_3':'uv3','COLOR_0':'color','WEIGHTS_0':bl(0x1e2),'JOINTS_0':'skinIndex'},I={'scale':'scale','translation':'position','rotation':'quaternion','weights':'morphTargetInfluences'},Pn={'CUBICSPLINE':void 0x0,'LINEAR':ao,'STEP':aw},W={'OPAQUE':'OPAQUE','MASK':'MASK','BLEND':'BLEND'};function kn(aF){return aF['DefaultMaterial']===void 0x0&&(aF['DefaultMaterial']=new a4({'color':0xffffff,'emissive':0x0,'metalness':0x1,'roughness':0x1,'transparent':!0x1,'depthTest':!0x0,'side':ax})),aF['DefaultMaterial'];}function O(aF,aG,aH){const cb=bl;for(const aI in aH['extensions'])aF[aI]===void 0x0&&(aG['userData']['gltfExtensions']=aG[cb(0x235)]['gltfExtensions']||{},aG[cb(0x235)]['gltfExtensions'][aI]=aH['extensions'][aI]);}function y(aF,aG){const cc=bl;aG['extras']!==void 0x0&&(typeof aG['extras']=='object'?Object['assign'](aF['userData'],aG[cc(0x1e8)]):console['warn']('THREE.GLTFLoader:\x20Ignoring\x20primitive\x20type\x20.extras,\x20'+aG[cc(0x1e8)]));}function Hn(aF,aG,aH){const cd=bl;let aI=!0x1,aJ=!0x1,aK=!0x1;for(let aO=0x0,aP=aG['length'];aO<aP;aO++){const aQ=aG[aO];if(aQ['POSITION']!==void 0x0&&(aI=!0x0),aQ[cd(0x21a)]!==void 0x0&&(aJ=!0x0),aQ['COLOR_0']!==void 0x0&&(aK=!0x0),aI&&aJ&&aK)break;}if(!aI&&!aJ&&!aK)return Promise['resolve'](aF);const aL=[],aM=[],aN=[];for(let aR=0x0,aS=aG['length'];aR<aS;aR++){const aT=aG[aR];if(aI){const aU=aT['POSITION']!==void 0x0?aH['getDependency'](cd(0x1d6),aT['POSITION']):aF[cd(0x1f9)]['position'];aL['push'](aU);}if(aJ){const aV=aT[cd(0x21a)]!==void 0x0?aH['getDependency']('accessor',aT['NORMAL']):aF['attributes']['normal'];aM['push'](aV);}if(aK){const aW=aT['COLOR_0']!==void 0x0?aH['getDependency']('accessor',aT[cd(0x1fd)]):aF['attributes']['color'];aN['push'](aW);}}return Promise[cd(0x249)]([Promise['all'](aL),Promise['all'](aM),Promise['all'](aN)])['then'](function(aX){const cf=cd,aY=aX[0x0],aZ=aX[0x1],b0=aX[0x2];return aI&&(aF['morphAttributes'][cf(0x21e)]=aY),aJ&&(aF[cf(0x219)]['normal']=aZ),aK&&(aF['morphAttributes']['color']=b0),aF['morphTargetsRelative']=!0x0,aF;});}function Dn(aF,aG){const cg=bl;if(aF['updateMorphTargets'](),aG['weights']!==void 0x0){for(let aH=0x0,aI=aG['weights'][cg(0x22a)];aH<aI;aH++)aF['morphTargetInfluences'][aH]=aG['weights'][aH];}if(aG[cg(0x1e8)]&&Array['isArray'](aG['extras'][cg(0x205)])){const aJ=aG['extras']['targetNames'];if(aF['morphTargetInfluences']['length']===aJ['length']){aF['morphTargetDictionary']={};for(let aK=0x0,aL=aJ['length'];aK<aL;aK++)aF['morphTargetDictionary'][aJ[aK]]=aK;}else console['warn']('THREE.GLTFLoader:\x20Invalid\x20extras.targetNames\x20length.\x20Ignoring\x20names.');}}function Gn(aF){const ch=bl;let aG;const aH=aF['extensions']&&aF['extensions'][g['KHR_DRACO_MESH_COMPRESSION']];if(aH?aG='draco:'+aH['bufferView']+':'+aH['indices']+':'+Y(aH['attributes']):aG=aF[ch(0x20f)]+':'+Y(aF['attributes'])+':'+aF['mode'],aF['targets']!==void 0x0){for(let aI=0x0,aJ=aF['targets'][ch(0x22a)];aI<aJ;aI++)aG+=':'+Y(aF[ch(0x23e)][aI]);}return aG;}function Y(aF){const ci=bl;let aG='';const aH=Object[ci(0x1da)](aF)[ci(0x1b9)]();for(let aI=0x0,aJ=aH['length'];aI<aJ;aI++)aG+=aH[aI]+':'+aF[aH[aI]]+';';return aG;}function ee(aF){switch(aF){case Int8Array:return 0x1/0x7f;case Uint8Array:return 0x1/0xff;case Int16Array:return 0x1/0x7fff;case Uint16Array:return 0x1/0xffff;default:throw new Error('THREE.GLTFLoader:\x20Unsupported\x20normalized\x20accessor\x20component\x20type.');}}function vn(aF){const cj=bl;return aF[cj(0x248)](/\.jpe?g($|\?)/i)>0x0||aF['search'](/^data\:image\/jpeg/)===0x0?'image/jpeg':aF['search'](/\.webp($|\?)/i)>0x0||aF['search'](/^data\:image\/webp/)===0x0?'image/webp':aF['search'](/\.ktx2($|\?)/i)>0x0||aF[cj(0x248)](/^data\:image\/ktx2/)===0x0?'image/ktx2':'image/png';}const Un=new x();class Bn{constructor(aF={},aG={}){const ck=bl;this[ck(0x1fa)]=aF,this['extensions']={},this['plugins']={},this[ck(0x1bb)]=aG,this['cache']=new ln(),this['associations']=new Map(),this['primitiveCache']={},this['nodeCache']={},this['meshCache']={'refs':{},'uses':{}},this[ck(0x1e5)]={'refs':{},'uses':{}},this['lightCache']={'refs':{},'uses':{}},this[ck(0x1d5)]={},this['textureCache']={},this['nodeNamesUsed']={};let aH=!0x1,aI=-0x1,aJ=!0x1,aK=-0x1;if(typeof navigator<'u'&&typeof navigator['userAgent']<'u'){const aL=navigator['userAgent'];aH=/^((?!chrome|android).)*safari/i['test'](aL)===!0x0;const aM=aL['match'](/Version\/(\d+)/);aI=aH&&aM?parseInt(aM[0x1],0xa):-0x1,aJ=aL['indexOf']('Firefox')>-0x1,aK=aJ?aL['match'](/Firefox\/([0-9]+)\./)[0x1]:-0x1;}typeof createImageBitmap>'u'||aH&&aI<0x11||aJ&&aK<0x62?this['textureLoader']=new K(this['options']['manager']):this['textureLoader']=new L(this['options']['manager']),this['textureLoader']['setCrossOrigin'](this['options']['crossOrigin']),this['textureLoader']['setRequestHeader'](this['options']['requestHeader']),this['fileLoader']=new j(this['options'][ck(0x243)]),this['fileLoader']['setResponseType'](ck(0x1a8)),this['options']['crossOrigin']===ck(0x20a)&&this['fileLoader']['setWithCredentials'](!0x0);}['setExtensions'](aF){this['extensions']=aF;}['setPlugins'](aF){const cl=bl;this[cl(0x215)]=aF;}['parse'](aF,aG){const cm=bl,aH=this,aI=this['json'],aJ=this['extensions'];this['cache'][cm(0x221)](),this['nodeCache']={},this['_invokeAll'](function(aK){return aK['_markDefs']&&aK['_markDefs']();}),Promise['all'](this['_invokeAll'](function(aK){return aK['beforeRoot']&&aK['beforeRoot']();}))['then'](function(){const co=cm;return Promise['all']([aH['getDependencies']('scene'),aH['getDependencies'](co(0x1f5)),aH['getDependencies'](co(0x1e7))]);})['then'](function(aK){const aL={'scene':aK[0x0][aI['scene']||0x0],'scenes':aK[0x0],'animations':aK[0x1],'cameras':aK[0x2],'asset':aI['asset'],'parser':aH,'userData':{}};return O(aJ,aL,aI),y(aL,aI),Promise['all'](aH['_invokeAll'](function(aM){return aM['afterRoot']&&aM['afterRoot'](aL);}))['then'](function(){for(const aM of aL['scenes'])aM['updateMatrixWorld']();aF(aL);});})['catch'](aG);}['_markDefs'](){const cp=bl,aF=this['json']['nodes']||[],aG=this['json']['skins']||[],aH=this['json']['meshes']||[];for(let aI=0x0,aJ=aG['length'];aI<aJ;aI++){const aK=aG[aI]['joints'];for(let aL=0x0,aM=aK['length'];aL<aM;aL++)aF[aK[aL]][cp(0x19a)]=!0x0;}for(let aN=0x0,aO=aF['length'];aN<aO;aN++){const aP=aF[aN];aP[cp(0x19b)]!==void 0x0&&(this['_addNodeRef'](this['meshCache'],aP['mesh']),aP['skin']!==void 0x0&&(aH[aP['mesh']]['isSkinnedMesh']=!0x0)),aP['camera']!==void 0x0&&this['_addNodeRef'](this['cameraCache'],aP[cp(0x1e7)]);}}['_addNodeRef'](aF,aG){aG!==void 0x0&&(aF['refs'][aG]===void 0x0&&(aF['refs'][aG]=aF['uses'][aG]=0x0),aF['refs'][aG]++);}['_getNodeRef'](aF,aG,aH){if(aF['refs'][aG]<=0x1)return aH;const aI=aH['clone'](),aJ=(aK,aL)=>{const cq=c,aM=this['associations']['get'](aK);aM!=null&&this['associations'][cq(0x1ac)](aL,aM);for(const [aN,aO]of aK[cq(0x1eb)]['entries']())aJ(aO,aL['children'][aN]);};return aJ(aH,aI),aI['name']+='_instance_'+aF['uses'][aG]++,aI;}['_invokeOne'](aF){const cr=bl,aG=Object['values'](this[cr(0x215)]);aG['push'](this);for(let aH=0x0;aH<aG[cr(0x22a)];aH++){const aI=aF(aG[aH]);if(aI)return aI;}return null;}[bl(0x1a4)](aF){const cs=bl,aG=Object['values'](this['plugins']);aG['unshift'](this);const aH=[];for(let aI=0x0;aI<aG['length'];aI++){const aJ=aF(aG[aI]);aJ&&aH[cs(0x1d8)](aJ);}return aH;}[bl(0x21d)](aF,aG){const ct=bl,aH=aF+':'+aG;let aI=this['cache']['get'](aH);if(!aI){switch(aF){case'scene':aI=this['loadScene'](aG);break;case'node':aI=this[ct(0x1cf)](function(aJ){return aJ['loadNode']&&aJ['loadNode'](aG);});break;case'mesh':aI=this['_invokeOne'](function(aJ){return aJ['loadMesh']&&aJ['loadMesh'](aG);});break;case'accessor':aI=this['loadAccessor'](aG);break;case ct(0x1aa):aI=this[ct(0x1cf)](function(aJ){return aJ['loadBufferView']&&aJ['loadBufferView'](aG);});break;case'buffer':aI=this['loadBuffer'](aG);break;case'material':aI=this[ct(0x1cf)](function(aJ){return aJ['loadMaterial']&&aJ['loadMaterial'](aG);});break;case'texture':aI=this['_invokeOne'](function(aJ){return aJ['loadTexture']&&aJ['loadTexture'](aG);});break;case'skin':aI=this[ct(0x186)](aG);break;case ct(0x1f5):aI=this['_invokeOne'](function(aJ){return aJ['loadAnimation']&&aJ['loadAnimation'](aG);});break;case'camera':aI=this['loadCamera'](aG);break;default:if(aI=this['_invokeOne'](function(aJ){return aJ!=this&&aJ['getDependency']&&aJ['getDependency'](aF,aG);}),!aI)throw new Error(ct(0x19e)+aF);break;}this['cache']['add'](aH,aI);}return aI;}['getDependencies'](aF){const cu=bl;let aG=this['cache']['get'](aF);if(!aG){const aH=this,aI=this['json'][aF+(aF==='mesh'?'es':'s')]||[];aG=Promise['all'](aI['map'](function(aJ,aK){return aH['getDependency'](aF,aK);})),this['cache'][cu(0x19d)](aF,aG);}return aG;}['loadBuffer'](aF){const cv=bl,aG=this['json']['buffers'][aF],aH=this['fileLoader'];if(aG[cv(0x1d0)]&&aG['type']!=='arraybuffer')throw new Error('THREE.GLTFLoader:\x20'+aG['type']+'\x20buffer\x20type\x20is\x20not\x20supported.');if(aG['uri']===void 0x0&&aF===0x0)return Promise['resolve'](this[cv(0x196)][g['KHR_BINARY_GLTF']]['body']);const aI=this[cv(0x1bb)];return new Promise(function(aJ,aK){aH['load'](i['resolveURL'](aG['uri'],aI['path']),aJ,void 0x0,function(){const cw=c;aK(new Error(cw(0x1b6)+aG['uri']+'\x22.'));});});}['loadBufferView'](aF){const cx=bl,aG=this['json'][cx(0x1d7)][aF];return this['getDependency']('buffer',aG['buffer'])['then'](function(aH){const aI=aG['byteLength']||0x0,aJ=aG['byteOffset']||0x0;return aH['slice'](aJ,aJ+aI);});}['loadAccessor'](aF){const cy=bl,aG=this,aH=this['json'],aI=this['json']['accessors'][aF];if(aI['bufferView']===void 0x0&&aI['sparse']===void 0x0){const aK=q[aI['type']],aL=k[aI[cy(0x185)]],aM=aI['normalized']===!0x0,aN=new aL(aI['count']*aK);return Promise['resolve'](new N(aN,aK,aM));}const aJ=[];return aI['bufferView']!==void 0x0?aJ['push'](this['getDependency']('bufferView',aI[cy(0x1aa)])):aJ['push'](null),aI['sparse']!==void 0x0&&(aJ['push'](this[cy(0x21d)](cy(0x1aa),aI['sparse']['indices']['bufferView'])),aJ['push'](this['getDependency']('bufferView',aI['sparse']['values'][cy(0x1aa)]))),Promise['all'](aJ)['then'](function(aO){const cz=cy,aP=aO[0x0],aQ=q[aI['type']],aR=k[aI['componentType']],aS=aR['BYTES_PER_ELEMENT'],aT=aS*aQ,aU=aI['byteOffset']||0x0,aV=aI['bufferView']!==void 0x0?aH['bufferViews'][aI['bufferView']]['byteStride']:void 0x0,aW=aI['normalized']===!0x0;let aX,aY;if(aV&&aV!==aT){const aZ=Math['floor'](aU/aV),b0='InterleavedBuffer:'+aI[cz(0x1aa)]+':'+aI['componentType']+':'+aZ+':'+aI['count'];let b1=aG['cache']['get'](b0);b1||(aX=new aR(aP,aZ*aV,aI['count']*aV/aS),b1=new P(aX,aV/aS),aG['cache'][cz(0x19d)](b0,b1)),aY=new ay(b1,aQ,aU%aV/aS,aW);}else aP===null?aX=new aR(aI[cz(0x233)]*aQ):aX=new aR(aP,aU,aI['count']*aQ),aY=new N(aX,aQ,aW);if(aI[cz(0x250)]!==void 0x0){const b2=q['SCALAR'],b3=k[aI['sparse']['indices'][cz(0x185)]],b4=aI['sparse']['indices']['byteOffset']||0x0,b5=aI['sparse']['values']['byteOffset']||0x0,b6=new b3(aO[0x1],b4,aI['sparse']['count']*b2),b7=new aR(aO[0x2],b5,aI['sparse']['count']*aQ);aP!==null&&(aY=new N(aY['array']['slice'](),aY['itemSize'],aY['normalized'])),aY['normalized']=!0x1;for(let b8=0x0,b9=b6['length'];b8<b9;b8++){const ba=b6[b8];if(aY['setX'](ba,b7[b8*aQ]),aQ>=0x2&&aY['setY'](ba,b7[b8*aQ+0x1]),aQ>=0x3&&aY['setZ'](ba,b7[b8*aQ+0x2]),aQ>=0x4&&aY['setW'](ba,b7[b8*aQ+0x3]),aQ>=0x5)throw new Error('THREE.GLTFLoader:\x20Unsupported\x20itemSize\x20in\x20sparse\x20BufferAttribute.');}aY['normalized']=aW;}return aY;});}['loadTexture'](aF){const cA=bl,aG=this['json'],aH=this['options'],aI=aG['textures'][aF]['source'],aJ=aG['images'][aI];let aK=this['textureLoader'];if(aJ['uri']){const aL=aH['manager']['getHandler'](aJ[cA(0x1f7)]);aL!==null&&(aK=aL);}return this['loadTextureImage'](aF,aI,aK);}['loadTextureImage'](aF,aG,aH){const cB=bl,aI=this,aJ=this['json'],aK=aJ['textures'][aF],aL=aJ['images'][aG],aM=(aL[cB(0x1f7)]||aL[cB(0x1aa)])+':'+aK['sampler'];if(this['textureCache'][aM])return this[cB(0x1ca)][aM];const aN=this['loadImageSource'](aG,aH)['then'](function(aO){const cC=cB;aO['flipY']=!0x1,aO['name']=aK['name']||aL['name']||'',aO['name']===''&&typeof aL['uri']=='string'&&aL['uri'][cC(0x1af)](cC(0x17c))===!0x1&&(aO['name']=aL['uri']);const aP=(aJ['samplers']||{})[aK[cC(0x244)]]||{};return aO['magFilter']=ue[aP['magFilter']]||R,aO['minFilter']=ue[aP['minFilter']]||S,aO['wrapS']=le[aP['wrapS']]||T,aO['wrapT']=le[aP[cC(0x246)]]||T,aO['generateMipmaps']=!aO['isCompressedTexture']&&aO['minFilter']!==a0&&aO['minFilter']!==R,aI['associations'][cC(0x1ac)](aO,{'textures':aF}),aO;})['catch'](function(){return null;});return this['textureCache'][aM]=aN,aN;}['loadImageSource'](aF,aG){const cD=bl,aH=this,aI=this['json'],aJ=this['options'];if(this['sourceCache'][aF]!==void 0x0)return this['sourceCache'][aF]['then'](aP=>aP['clone']());const aK=aI['images'][aF],aL=self['URL']||self['webkitURL'];let aM=aK['uri']||'',aN=!0x1;if(aK['bufferView']!==void 0x0)aM=aH['getDependency'](cD(0x1aa),aK['bufferView'])['then'](function(aP){const cE=cD;aN=!0x0;const aQ=new Blob([aP],{'type':aK['mimeType']});return aM=aL[cE(0x24c)](aQ),aM;});else{if(aK['uri']===void 0x0)throw new Error(cD(0x1dc)+aF+'\x20is\x20missing\x20URI\x20and\x20bufferView');}const aO=Promise[cD(0x251)](aM)[cD(0x1a1)](function(aP){return new Promise(function(aQ,aR){const cF=c;let aS=aQ;aG['isImageBitmapLoader']===!0x0&&(aS=function(aT){const aU=new az(aT);aU['needsUpdate']=!0x0,aQ(aU);}),aG['load'](i['resolveURL'](aP,aJ[cF(0x223)]),aS,void 0x0,aR);});})['then'](function(aP){return aN===!0x0&&aL['revokeObjectURL'](aM),y(aP,aK),aP['userData']['mimeType']=aK['mimeType']||vn(aK['uri']),aP;})['catch'](function(aP){const cG=cD;throw console[cG(0x24e)]('THREE.GLTFLoader:\x20Couldn\x27t\x20load\x20texture',aM),aP;});return this[cD(0x1d5)][aF]=aO,aO;}['assignTexture'](aF,aG,aH,aI){const cH=bl,aJ=this;return this[cH(0x21d)]('texture',aH['index'])['then'](function(aK){const cI=cH;if(!aK)return null;if(aH['texCoord']!==void 0x0&&aH['texCoord']>0x0&&(aK=aK[cI(0x1c0)](),aK['channel']=aH['texCoord']),aJ['extensions'][g['KHR_TEXTURE_TRANSFORM']]){const aL=aH['extensions']!==void 0x0?aH['extensions'][g[cI(0x216)]]:void 0x0;if(aL){const aM=aJ[cI(0x20c)]['get'](aK);aK=aJ[cI(0x196)][g[cI(0x216)]]['extendTexture'](aK,aL),aJ['associations']['set'](aK,aM);}}return aI!==void 0x0&&(aK['colorSpace']=aI),aF[aG]=aK,aK;});}['assignFinalMaterial'](aF){const cJ=bl,aG=aF[cJ(0x1a2)];let aH=aF['material'];const aI=aG['attributes']['tangent']===void 0x0,aJ=aG['attributes']['color']!==void 0x0,aK=aG['attributes'][cJ(0x182)]===void 0x0;if(aF['isPoints']){const aL='PointsMaterial:'+aH['uuid'];let aM=this[cJ(0x1db)][cJ(0x226)](aL);aM||(aM=new a1(),a2['prototype']['copy']['call'](aM,aH),aM['color']['copy'](aH[cJ(0x1e4)]),aM['map']=aH['map'],aM['sizeAttenuation']=!0x1,this[cJ(0x1db)]['add'](aL,aM)),aH=aM;}else{if(aF['isLine']){const aN=cJ(0x1f1)+aH['uuid'];let aO=this['cache'][cJ(0x226)](aN);aO||(aO=new a3(),a2['prototype'][cJ(0x17e)]['call'](aO,aH),aO['color']['copy'](aH['color']),aO['map']=aH['map'],this['cache'][cJ(0x19d)](aN,aO)),aH=aO;}}if(aI||aJ||aK){let aP='ClonedMaterial:'+aH['uuid']+':';aI&&(aP+=cJ(0x1ad)),aJ&&(aP+='vertex-colors:'),aK&&(aP+='flat-shading:');let aQ=this[cJ(0x1db)]['get'](aP);aQ||(aQ=aH['clone'](),aJ&&(aQ['vertexColors']=!0x0),aK&&(aQ[cJ(0x195)]=!0x0),aI&&(aQ['normalScale']&&(aQ['normalScale']['y']*=-0x1),aQ['clearcoatNormalScale']&&(aQ['clearcoatNormalScale']['y']*=-0x1)),this['cache']['add'](aP,aQ),this['associations']['set'](aQ,this[cJ(0x20c)]['get'](aH))),aH=aQ;}aF['material']=aH;}[bl(0x17f)](){return a4;}['loadMaterial'](aF){const cK=bl,aG=this,aH=this['json'],aI=this['extensions'],aJ=aH['materials'][aF];let aK;const aL={},aM=aJ['extensions']||{},aN=[];if(aM[g[cK(0x236)]]){const aP=aI[g['KHR_MATERIALS_UNLIT']];aK=aP['getMaterialType'](),aN['push'](aP['extendParams'](aL,aJ,aG));}else{const aQ=aJ['pbrMetallicRoughness']||{};if(aL['color']=new l(0x1,0x1,0x1),aL['opacity']=0x1,Array['isArray'](aQ[cK(0x189)])){const aR=aQ['baseColorFactor'];aL[cK(0x1e4)]['setRGB'](aR[0x0],aR[0x1],aR[0x2],m),aL['opacity']=aR[0x3];}aQ['baseColorTexture']!==void 0x0&&aN['push'](aG['assignTexture'](aL,'map',aQ[cK(0x197)],s)),aL['metalness']=aQ['metallicFactor']!==void 0x0?aQ['metallicFactor']:0x1,aL['roughness']=aQ[cK(0x1e1)]!==void 0x0?aQ['roughnessFactor']:0x1,aQ['metallicRoughnessTexture']!==void 0x0&&(aN['push'](aG['assignTexture'](aL,'metalnessMap',aQ[cK(0x1dd)])),aN[cK(0x1d8)](aG['assignTexture'](aL,'roughnessMap',aQ['metallicRoughnessTexture']))),aK=this['_invokeOne'](function(aS){const cL=cK;return aS[cL(0x17f)]&&aS['getMaterialType'](aF);}),aN['push'](Promise['all'](this['_invokeAll'](function(aS){return aS['extendMaterialParams']&&aS['extendMaterialParams'](aF,aL);})));}aJ['doubleSided']===!0x0&&(aL['side']=a5);const aO=aJ['alphaMode']||W['OPAQUE'];if(aO===W['BLEND']?(aL['transparent']=!0x0,aL['depthWrite']=!0x1):(aL['transparent']=!0x1,aO===W['MASK']&&(aL['alphaTest']=aJ['alphaCutoff']!==void 0x0?aJ['alphaCutoff']:0.5)),aJ['normalTexture']!==void 0x0&&aK!==r&&(aN[cK(0x1d8)](aG['assignTexture'](aL,'normalMap',aJ[cK(0x1e0)])),aL[cK(0x230)]=new u(0x1,0x1),aJ['normalTexture']['scale']!==void 0x0)){const aS=aJ['normalTexture']['scale'];aL['normalScale']['set'](aS,aS);}if(aJ[cK(0x1ab)]!==void 0x0&&aK!==r&&(aN['push'](aG['assignTexture'](aL,'aoMap',aJ['occlusionTexture'])),aJ['occlusionTexture']['strength']!==void 0x0&&(aL['aoMapIntensity']=aJ['occlusionTexture']['strength'])),aJ['emissiveFactor']!==void 0x0&&aK!==r){const aT=aJ[cK(0x1c2)];aL['emissive']=new l()['setRGB'](aT[0x0],aT[0x1],aT[0x2],m);}return aJ['emissiveTexture']!==void 0x0&&aK!==r&&aN['push'](aG['assignTexture'](aL,'emissiveMap',aJ[cK(0x23b)],s)),Promise[cK(0x249)](aN)[cK(0x1a1)](function(){const cM=cK,aU=new aK(aL);return aJ['name']&&(aU['name']=aJ['name']),y(aU,aJ),aG[cM(0x20c)][cM(0x1ac)](aU,{'materials':aF}),aJ['extensions']&&O(aI,aU,aJ),aU;});}[bl(0x187)](aF){const aG=a6['sanitizeNodeName'](aF||'');return aG in this['nodeNamesUsed']?aG+'_'+ ++this['nodeNamesUsed'][aG]:(this['nodeNamesUsed'][aG]=0x0,aG);}['loadGeometries'](aF){const aG=this,aH=this['extensions'],aI=this['primitiveCache'];function aJ(aL){return aH[g['KHR_DRACO_MESH_COMPRESSION']]['decodePrimitive'](aL,aG)['then'](function(aM){return fe(aM,aL,aG);});}const aK=[];for(let aL=0x0,aM=aF['length'];aL<aM;aL++){const aN=aF[aL],aO=Gn(aN),aP=aI[aO];if(aP)aK['push'](aP['promise']);else{let aQ;aN['extensions']&&aN['extensions'][g['KHR_DRACO_MESH_COMPRESSION']]?aQ=aJ(aN):aQ=fe(new a7(),aN,aG),aI[aO]={'primitive':aN,'promise':aQ},aK['push'](aQ);}}return Promise['all'](aK);}['loadMesh'](aF){const cN=bl,aG=this,aH=this['json'],aI=this['extensions'],aJ=aH[cN(0x1e6)][aF],aK=aJ[cN(0x1ae)],aL=[];for(let aM=0x0,aN=aK['length'];aM<aN;aM++){const aO=aK[aM]['material']===void 0x0?kn(this['cache']):this['getDependency']('material',aK[aM]['material']);aL['push'](aO);}return aL['push'](aG['loadGeometries'](aK)),Promise['all'](aL)[cN(0x1a1)](function(aP){const cO=cN,aQ=aP['slice'](0x0,aP[cO(0x22a)]-0x1),aR=aP[aP[cO(0x22a)]-0x1],aS=[];for(let aU=0x0,aV=aR[cO(0x22a)];aU<aV;aU++){const aW=aR[aU],aX=aK[aU];let aY;const aZ=aQ[aU];if(aX['mode']===M['TRIANGLES']||aX['mode']===M['TRIANGLE_STRIP']||aX['mode']===M['TRIANGLE_FAN']||aX[cO(0x202)]===void 0x0)aY=aJ['isSkinnedMesh']===!0x0?new a8(aW,aZ):new a9(aW,aZ),aY['isSkinnedMesh']===!0x0&&aY[cO(0x22e)](),aX['mode']===M['TRIANGLE_STRIP']?aY['geometry']=oe(aY['geometry'],f):aX['mode']===M['TRIANGLE_FAN']&&(aY[cO(0x1a2)]=oe(aY['geometry'],e));else{if(aX['mode']===M['LINES'])aY=new aa(aW,aZ);else{if(aX['mode']===M[cO(0x21b)])aY=new ab(aW,aZ);else{if(aX['mode']===M['LINE_LOOP'])aY=new ac(aW,aZ);else{if(aX['mode']===M['POINTS'])aY=new ad(aW,aZ);else throw new Error('THREE.GLTFLoader:\x20Primitive\x20mode\x20unsupported:\x20'+aX['mode']);}}}}Object[cO(0x1da)](aY['geometry']['morphAttributes'])['length']>0x0&&Dn(aY,aJ),aY[cO(0x1a5)]=aG['createUniqueName'](aJ['name']||'mesh_'+aF),y(aY,aJ),aX['extensions']&&O(aI,aY,aX),aG['assignFinalMaterial'](aY),aS[cO(0x1d8)](aY);}for(let b0=0x0,b1=aS['length'];b0<b1;b0++)aG[cO(0x20c)]['set'](aS[b0],{'meshes':aF,'primitives':b0});if(aS['length']===0x1)return aJ['extensions']&&O(aI,aS[0x0],aJ),aS[0x0];const aT=new af();aJ['extensions']&&O(aI,aT,aJ),aG['associations'][cO(0x1ac)](aT,{'meshes':aF});for(let b2=0x0,b3=aS['length'];b2<b3;b2++)aT['add'](aS[b2]);return aT;});}['loadCamera'](aF){const cP=bl;let aG;const aH=this['json'][cP(0x18d)][aF],aI=aH[aH[cP(0x1d0)]];if(!aI){console['warn'](cP(0x238));return;}return aH[cP(0x1d0)]==='perspective'?aG=new ag(ah[cP(0x1c4)](aI['yfov']),aI['aspectRatio']||0x1,aI['znear']||0x1,aI['zfar']||0x1e8480):aH['type']==='orthographic'&&(aG=new ai(-aI[cP(0x254)],aI[cP(0x254)],aI['ymag'],-aI['ymag'],aI['znear'],aI['zfar'])),aH['name']&&(aG[cP(0x1a5)]=this['createUniqueName'](aH['name'])),y(aG,aH),Promise[cP(0x251)](aG);}['loadSkin'](aF){const aG=this['json']['skins'][aF],aH=[];for(let aI=0x0,aJ=aG['joints']['length'];aI<aJ;aI++)aH['push'](this['_loadNodeShallow'](aG['joints'][aI]));return aG['inverseBindMatrices']!==void 0x0?aH['push'](this['getDependency']('accessor',aG['inverseBindMatrices'])):aH['push'](null),Promise['all'](aH)['then'](function(aK){const cQ=c,aL=aK['pop'](),aM=aK,aN=[],aO=[];for(let aP=0x0,aQ=aM['length'];aP<aQ;aP++){const aR=aM[aP];if(aR){aN['push'](aR);const aS=new x();aL!==null&&aS['fromArray'](aL['array'],aP*0x10),aO['push'](aS);}else console['warn'](cQ(0x1b0),aG['joints'][aP]);}return new aj(aN,aO);});}['loadAnimation'](aF){const cR=bl,aG=this['json'],aH=this,aI=aG['animations'][aF],aJ=aI['name']?aI[cR(0x1a5)]:'animation_'+aF,aK=[],aL=[],aM=[],aN=[],aO=[];for(let aP=0x0,aQ=aI['channels']['length'];aP<aQ;aP++){const aR=aI[cR(0x232)][aP],aS=aI['samplers'][aR['sampler']],aT=aR['target'],aU=aT[cR(0x1ba)],aV=aI['parameters']!==void 0x0?aI['parameters'][aS['input']]:aS['input'],aW=aI['parameters']!==void 0x0?aI[cR(0x1b8)][aS['output']]:aS['output'];aT['node']!==void 0x0&&(aK['push'](this[cR(0x21d)](cR(0x1ba),aU)),aL[cR(0x1d8)](this['getDependency']('accessor',aV)),aM['push'](this['getDependency']('accessor',aW)),aN['push'](aS),aO['push'](aT));}return Promise[cR(0x249)]([Promise['all'](aK),Promise['all'](aL),Promise['all'](aM),Promise['all'](aN),Promise['all'](aO)])['then'](function(aX){const aY=aX[0x0],aZ=aX[0x1],b0=aX[0x2],b1=aX[0x3],b2=aX[0x4],b3=[];for(let b5=0x0,b6=aY['length'];b5<b6;b5++){const b7=aY[b5],b8=aZ[b5],b9=b0[b5],ba=b1[b5],bb=b2[b5];if(b7===void 0x0)continue;b7['updateMatrix']&&b7['updateMatrix']();const bc=aH['_createAnimationTracks'](b7,b8,b9,ba,bb);if(bc){for(let bd=0x0;bd<bc['length'];bd++)b3['push'](bc[bd]);}}const b4=new ak(aJ,void 0x0,b3);return y(b4,aI),b4;});}['createNodeMesh'](aF){const cS=bl,aG=this['json'],aH=this,aI=aG['nodes'][aF];return aI[cS(0x19b)]===void 0x0?null:aH['getDependency']('mesh',aI['mesh'])['then'](function(aJ){const cT=cS,aK=aH['_getNodeRef'](aH[cT(0x247)],aI[cT(0x19b)],aJ);return aI['weights']!==void 0x0&&aK['traverse'](function(aL){if(aL['isMesh']){for(let aM=0x0,aN=aI['weights']['length'];aM<aN;aM++)aL['morphTargetInfluences'][aM]=aI['weights'][aM];}}),aK;});}['loadNode'](aF){const cU=bl,aG=this['json'],aH=this,aI=aG['nodes'][aF],aJ=aH['_loadNodeShallow'](aF),aK=[],aL=aI['children']||[];for(let aN=0x0,aO=aL['length'];aN<aO;aN++)aK['push'](aH['getDependency'](cU(0x1ba),aL[aN]));const aM=aI['skin']===void 0x0?Promise['resolve'](null):aH[cU(0x21d)]('skin',aI['skin']);return Promise['all']([aJ,Promise['all'](aK),aM])['then'](function(aP){const cV=cU,aQ=aP[0x0],aR=aP[0x1],aS=aP[0x2];aS!==null&&aQ[cV(0x234)](function(aT){aT['isSkinnedMesh']&&aT['bind'](aS,Un);});for(let aT=0x0,aU=aR[cV(0x22a)];aT<aU;aT++)aQ['add'](aR[aT]);if(aQ['userData']['pivot']!==void 0x0&&aR['length']>0x0){const aV=aQ[cV(0x235)]['pivot'],aW=aR[0x0];aQ['pivot']=new al()['fromArray'](aV),aQ['position']['x']-=aV[0x0],aQ['position']['y']-=aV[0x1],aQ['position']['z']-=aV[0x2],aW[cV(0x21e)]['set'](0x0,0x0,0x0),delete aQ['userData'][cV(0x200)];}return aQ;});}['_loadNodeShallow'](aF){const cW=bl,aG=this['json'],aH=this['extensions'],aI=this;if(this['nodeCache'][aF]!==void 0x0)return this['nodeCache'][aF];const aJ=aG['nodes'][aF],aK=aJ['name']?aI['createUniqueName'](aJ['name']):'',aL=[],aM=aI['_invokeOne'](function(aN){return aN['createNodeMesh']&&aN['createNodeMesh'](aF);});return aM&&aL['push'](aM),aJ['camera']!==void 0x0&&aL['push'](aI[cW(0x21d)]('camera',aJ['camera'])['then'](function(aN){return aI['_getNodeRef'](aI['cameraCache'],aJ['camera'],aN);})),aI['_invokeAll'](function(aN){const cX=cW;return aN['createNodeAttachment']&&aN[cX(0x21f)](aF);})['forEach'](function(aN){aL['push'](aN);}),this['nodeCache'][aF]=Promise['all'](aL)['then'](function(aN){const cY=cW;let aO;if(aJ[cY(0x19a)]===!0x0?aO=new am():aN[cY(0x22a)]>0x1?aO=new af():aN['length']===0x1?aO=aN[0x0]:aO=new H(),aO!==aN[0x0]){for(let aP=0x0,aQ=aN['length'];aP<aQ;aP++)aO[cY(0x19d)](aN[aP]);}if(aJ['name']&&(aO['userData']['name']=aJ['name'],aO['name']=aK),y(aO,aJ),aJ['extensions']&&O(aH,aO,aJ),aJ['matrix']!==void 0x0){const aR=new x();aR['fromArray'](aJ['matrix']),aO['applyMatrix4'](aR);}else aJ[cY(0x213)]!==void 0x0&&aO['position']['fromArray'](aJ['translation']),aJ['rotation']!==void 0x0&&aO['quaternion'][cY(0x1ea)](aJ['rotation']),aJ['scale']!==void 0x0&&aO['scale']['fromArray'](aJ['scale']);if(!aI[cY(0x20c)][cY(0x222)](aO))aI['associations'][cY(0x1ac)](aO,{});else{if(aJ['mesh']!==void 0x0&&aI['meshCache']['refs'][aJ['mesh']]>0x1){const aS=aI[cY(0x20c)]['get'](aO);aI[cY(0x20c)]['set'](aO,{...aS});}}return aI['associations'][cY(0x226)](aO)[cY(0x1bc)]=aF,aO;}),this['nodeCache'][aF];}['loadScene'](aF){const cZ=bl,aG=this['extensions'],aH=this['json'][cZ(0x194)][aF],aI=this,aJ=new af();aH['name']&&(aJ['name']=aI['createUniqueName'](aH[cZ(0x1a5)])),y(aJ,aH),aH['extensions']&&O(aG,aJ,aH);const aK=aH['nodes']||[],aL=[];for(let aM=0x0,aN=aK[cZ(0x22a)];aM<aN;aM++)aL['push'](aI['getDependency'](cZ(0x1ba),aK[aM]));return Promise['all'](aL)['then'](function(aO){const d0=cZ;for(let aQ=0x0,aR=aO['length'];aQ<aR;aQ++){const aS=aO[aQ];aS['parent']!==null?aJ['add'](un(aS)):aJ[d0(0x19d)](aS);}const aP=aT=>{const d1=d0,aU=new Map();for(const [aV,aW]of aI['associations'])(aV instanceof a2||aV instanceof az)&&aU['set'](aV,aW);return aT[d1(0x234)](aX=>{const d2=d1,aY=aI[d2(0x20c)]['get'](aX);aY!=null&&aU['set'](aX,aY);}),aU;};return aI[d0(0x20c)]=aP(aJ),aJ;});}['_createAnimationTracks'](aF,aG,aH,aI,aJ){const d4=bl,aK=[],aL=aF['name']?aF['name']:aF['uuid'],aM=[];function aN(aR){const d3=c;aR[d3(0x212)]&&aM['push'](aR['name']?aR['name']:aR[d3(0x203)]);}I[aJ['path']]===I['weights']?(aN(aF),aF[d4(0x21c)]&&aF['children'][d4(0x1b2)](aN)):aM['push'](aL);let aO;switch(I[aJ['path']]){case I[d4(0x1a3)]:aO=aB;break;case I['rotation']:aO=aC;break;case I['translation']:case I['scale']:aO=aA;break;default:switch(aH['itemSize']){case 0x1:aO=aB;break;case 0x2:case 0x3:default:aO=aA;break;}break;}const aP=aI['interpolation']!==void 0x0?Pn[aI['interpolation']]:ao,aQ=this['_getArrayFromAccessor'](aH);for(let aR=0x0,aS=aM['length'];aR<aS;aR++){const aT=new aO(aM[aR]+'.'+I[aJ['path']],aG[d4(0x1ec)],aQ,aP);aI['interpolation']==='CUBICSPLINE'&&this['_createCubicSplineTrackInterpolant'](aT),aK[d4(0x1d8)](aT);}return aK;}['_getArrayFromAccessor'](aF){let aG=aF['array'];if(aF['normalized']){const aH=ee(aG['constructor']),aI=new Float32Array(aG['length']);for(let aJ=0x0,aK=aG['length'];aJ<aK;aJ++)aI[aJ]=aG[aJ]*aH;aG=aI;}return aG;}[bl(0x22c)](aF){aF['createInterpolant']=function(aG){const d5=c,aH=this instanceof aC?Fn:Le;return new aH(this['times'],this['values'],this[d5(0x190)]()/0x3,aG);},aF['createInterpolant']['isInterpolantFactoryMethodGLTFCubicSpline']=!0x0;}}function Kn(aF,aG,aH){const d6=bl,aI=aG['attributes'],aJ=new an();if(aI[d6(0x22f)]!==void 0x0){const aM=aH['json']['accessors'][aI['POSITION']],aN=aM['min'],aO=aM['max'];if(aN!==void 0x0&&aO!==void 0x0){if(aJ['set'](new al(aN[0x0],aN[0x1],aN[0x2]),new al(aO[0x0],aO[0x1],aO[0x2])),aM['normalized']){const aP=ee(k[aM['componentType']]);aJ[d6(0x24a)]['multiplyScalar'](aP),aJ['max']['multiplyScalar'](aP);}}else{console['warn']('THREE.GLTFLoader:\x20Missing\x20min/max\x20properties\x20for\x20accessor\x20POSITION.');return;}}else return;const aK=aG['targets'];if(aK!==void 0x0){const aQ=new al(),aR=new al();for(let aS=0x0,aT=aK['length'];aS<aT;aS++){const aU=aK[aS];if(aU[d6(0x22f)]!==void 0x0){const aV=aH[d6(0x1fa)]['accessors'][aU['POSITION']],aW=aV['min'],aX=aV['max'];if(aW!==void 0x0&&aX!==void 0x0){if(aR['setX'](Math['max'](Math['abs'](aW[0x0]),Math['abs'](aX[0x0]))),aR['setY'](Math['max'](Math[d6(0x1f4)](aW[0x1]),Math['abs'](aX[0x1]))),aR[d6(0x1ff)](Math[d6(0x211)](Math['abs'](aW[0x2]),Math['abs'](aX[0x2]))),aV['normalized']){const aY=ee(k[aV['componentType']]);aR['multiplyScalar'](aY);}aQ['max'](aR);}else console['warn']('THREE.GLTFLoader:\x20Missing\x20min/max\x20properties\x20for\x20accessor\x20POSITION.');}}aJ['expandByVector'](aQ);}aF['boundingBox']=aJ;const aL=new aE();aJ['getCenter'](aL['center']),aL['radius']=aJ['min'][d6(0x1ce)](aJ['max'])/0x2,aF['boundingSphere']=aL;}function fe(aF,aG,aH){const d8=bl,aI=aG['attributes'],aJ=[];function aK(aL,aM){const d7=c;return aH['getDependency'](d7(0x1d6),aL)[d7(0x1a1)](function(aN){aF['setAttribute'](aM,aN);});}for(const aL in aI){const aM=$[aL]||aL['toLowerCase']();aM in aF['attributes']||aJ['push'](aK(aI[aL],aM));}if(aG['indices']!==void 0x0&&!aF[d8(0x1c6)]){const aN=aH['getDependency']('accessor',aG['indices'])[d8(0x1a1)](function(aO){aF['setIndex'](aO);});aJ['push'](aN);}return ap['workingColorSpace']!==m&&d8(0x1fd)in aI&&console[d8(0x239)](d8(0x18b)+ap['workingColorSpace']+'\x22\x20not\x20supported.'),y(aF,aG),Kn(aF,aG,aH),Promise['all'](aJ)[d8(0x1a1)](function(){return aG['targets']!==void 0x0?Hn(aF,aG['targets'],aH):aF;});}export{zn as GLTFLoader};