@flyfish-group/file-viewer3 1.0.19 → 1.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (265) hide show
  1. package/README.md +17 -16
  2. package/dist/components/3MFLoader.js +1 -1
  3. package/dist/components/AMFLoader.js +1 -1
  4. package/dist/components/AudioViewer.js +1 -1
  5. package/dist/components/CadViewer.js +1 -1
  6. package/dist/components/CodeViewer.js +1 -1
  7. package/dist/components/ColladaLoader.js +1 -1
  8. package/dist/components/DrawingViewer.js +1 -1
  9. package/dist/components/EdaViewer.js +1 -1
  10. package/dist/components/EmailViewer.js +1 -1
  11. package/dist/components/EpubViewer.js +1 -1
  12. package/dist/components/FBXLoader.js +1 -1
  13. package/dist/components/GLTFLoader.js +1 -1
  14. package/dist/components/ImageViewer.js +1 -1
  15. package/dist/components/KMZLoader.js +1 -1
  16. package/dist/components/MarkdownViewer.js +1 -1
  17. package/dist/components/ModelViewer.js +1 -1
  18. package/dist/components/OBJLoader.js +1 -1
  19. package/dist/components/OfdViewer.js +1 -1
  20. package/dist/components/PCDLoader.js +1 -1
  21. package/dist/components/PLYLoader.js +1 -1
  22. package/dist/components/PdfView.js +206 -207
  23. package/dist/components/PptxRender.js +1 -1
  24. package/dist/components/STLLoader.js +1 -1
  25. package/dist/components/TDSLoader.js +1 -1
  26. package/dist/components/TypstViewer.js +1671 -0
  27. package/dist/components/USDLoader.js +1 -1
  28. package/dist/components/UmdViewer.js +1 -1
  29. package/dist/components/VRMLLoader.js +1 -1
  30. package/dist/components/VTKLoader.js +1 -1
  31. package/dist/components/XYZLoader.js +1 -1
  32. package/dist/components/XlsxTable.js +1 -1
  33. package/dist/components/__vite-browser-external.js +1 -1
  34. package/dist/components/_plugin-vue_export-helper.js +1 -1
  35. package/dist/components/ar-SA-G6X2FPQ2.js +1 -1
  36. package/dist/components/arc.js +1 -1
  37. package/dist/components/architecture-7EHR7CIX.js +1 -1
  38. package/dist/components/architectureDiagram-3BPJPVTR.js +1 -1
  39. package/dist/components/archive.js +1 -1
  40. package/dist/components/asyncToGenerator.js +1 -1
  41. package/dist/components/audio.js +1 -1
  42. package/dist/components/az-AZ-76LH7QW2.js +1 -1
  43. package/dist/components/bash.js +1 -1
  44. package/dist/components/bg-BG-XCXSNQG7.js +1 -1
  45. package/dist/components/blockDiagram-GPEHLZMM.js +1 -1
  46. package/dist/components/bn-BD-2XOGV67Q.js +1 -1
  47. package/dist/components/c4Diagram-AAUBKEIU.js +1 -1
  48. package/dist/components/ca-ES-6MX7JW3Y.js +1 -1
  49. package/dist/components/cad.js +1 -1
  50. package/dist/components/cfb.js +1 -1
  51. package/dist/components/channel.js +1 -1
  52. package/dist/components/chunk-2J33WTMH.js +1 -1
  53. package/dist/components/chunk-3OPIFGDE.js +1 -1
  54. package/dist/components/chunk-4BX2VUAB.js +1 -1
  55. package/dist/components/chunk-55IACEB6.js +1 -1
  56. package/dist/components/chunk-5ZQYHXKU.js +1 -1
  57. package/dist/components/chunk-6U3AYISY.js +1 -1
  58. package/dist/components/chunk-727SXJPM.js +1 -1
  59. package/dist/components/chunk-AGHRB4JF.js +1 -1
  60. package/dist/components/chunk-AQP2D5EJ.js +1 -1
  61. package/dist/components/chunk-BSJP7CBP.js +1 -1
  62. package/dist/components/chunk-CSCIHK7Q.js +1 -1
  63. package/dist/components/chunk-FMBD7UC4.js +1 -1
  64. package/dist/components/chunk-K2UTITRG.js +1 -1
  65. package/dist/components/chunk-KSCS5N6A.js +1 -1
  66. package/dist/components/chunk-L5ZTLDWV.js +1 -1
  67. package/dist/components/chunk-LZXEDZCA.js +1 -1
  68. package/dist/components/chunk-ND2GUHAM.js +1 -1
  69. package/dist/components/chunk-NZK2D7GU.js +1 -1
  70. package/dist/components/chunk-O5CBEL6O.js +1 -1
  71. package/dist/components/chunk-QZHKN3VN.js +1 -1
  72. package/dist/components/chunk-SRAX5OIU.js +1 -1
  73. package/dist/components/chunk-WU5MYG2G.js +1 -1
  74. package/dist/components/chunk-XPW4576I.js +1 -1
  75. package/dist/components/chunk-Z3N5DIM6.js +1 -1
  76. package/dist/components/chunk-ZUYEQ4TG.js +1 -1
  77. package/dist/components/chunk.js +1 -1
  78. package/dist/components/classDiagram-4FO5ZUOK.js +1 -1
  79. package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -1
  80. package/dist/components/compiler.js +1 -0
  81. package/dist/components/core.js +1 -1
  82. package/dist/components/cose-bilkent-S5V4N54A.js +1 -1
  83. package/dist/components/cpp.js +1 -1
  84. package/dist/components/cs-CZ-2BRQDIVT.js +1 -1
  85. package/dist/components/csharp.js +1 -1
  86. package/dist/components/css.js +1 -1
  87. package/dist/components/cytoscape.esm.js +1 -1
  88. package/dist/components/da-DK-5WZEPLOC.js +1 -1
  89. package/dist/components/dagre-BM42HDAG.js +1 -1
  90. package/dist/components/dagre.js +1 -1
  91. package/dist/components/de-DE-XR44H4JA.js +1 -1
  92. package/dist/components/defaultLocale.js +1 -1
  93. package/dist/components/defineProperty.js +1 -1
  94. package/dist/components/diagram-2AECGRRQ.js +1 -1
  95. package/dist/components/diagram-5GNKFQAL.js +1 -1
  96. package/dist/components/diagram-KO2AKTUF.js +1 -1
  97. package/dist/components/diagram-LMA3HP47.js +1 -1
  98. package/dist/components/diagram-OG6HWLK6.js +1 -1
  99. package/dist/components/diff.js +1 -1
  100. package/dist/components/directory-open-01563666.js +1 -1
  101. package/dist/components/directory-open-4ed118d0.js +1 -1
  102. package/dist/components/dist.js +1 -1
  103. package/dist/components/dist2.js +1 -1
  104. package/dist/components/dist3.js +1 -1
  105. package/dist/components/docx-preview.js +1 -1
  106. package/dist/components/drawing.js +1 -1
  107. package/dist/components/ebook.js +1 -1
  108. package/dist/components/eda.js +1 -1
  109. package/dist/components/el-GR-BZB4AONW.js +1 -1
  110. package/dist/components/email.js +1 -1
  111. package/dist/components/en-B4ZKOASM.js +1 -1
  112. package/dist/components/erDiagram-TEJ5UH35.js +1 -1
  113. package/dist/components/es-ES-U4NZUMDT.js +1 -1
  114. package/dist/components/eu-ES-A7QVB2H4.js +1 -1
  115. package/dist/components/eventmodeling-FCH6USID.js +1 -1
  116. package/dist/components/fa-IR-HGAKTJCU.js +1 -1
  117. package/dist/components/fflate.module.js +1 -1
  118. package/dist/components/fi-FI-Z5N7JZ37.js +1 -1
  119. package/dist/components/file-open-002ab408.js +1 -1
  120. package/dist/components/file-open-7c801643.js +1 -1
  121. package/dist/components/file-save-3189631c.js +1 -1
  122. package/dist/components/file-save-745eba88.js +1 -1
  123. package/dist/components/flowDiagram-I6XJVG4X.js +1 -1
  124. package/dist/components/fr-FR-RHASNOE6.js +1 -1
  125. package/dist/components/ganttDiagram-6RSMTGT7.js +1 -1
  126. package/dist/components/gitGraph-WXDBUCRP.js +1 -1
  127. package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -1
  128. package/dist/components/gl-ES-HMX3MZ6V.js +1 -1
  129. package/dist/components/global-compiler.js +1 -0
  130. package/dist/components/global-renderer.js +1 -0
  131. package/dist/components/go.js +1 -1
  132. package/dist/components/graphlib.js +1 -1
  133. package/dist/components/he-IL-6SHJWFNN.js +1 -1
  134. package/dist/components/hi-IN-IWLTKZ5I.js +1 -1
  135. package/dist/components/hu-HU-A5ZG7DT2.js +1 -1
  136. package/dist/components/id-ID-SAP4L64H.js +1 -1
  137. package/dist/components/image-GAAHSSAO.js +1 -1
  138. package/dist/components/image-blob-reduce.esm.js +1 -1
  139. package/dist/components/image.js +1 -1
  140. package/dist/components/info-J43DQDTF.js +1 -1
  141. package/dist/components/infoDiagram-5YYISTIA.js +1 -1
  142. package/dist/components/ini.js +1 -1
  143. package/dist/components/init.js +1 -1
  144. package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -1
  145. package/dist/components/it-IT-JPQ66NNP.js +1 -1
  146. package/dist/components/ja-JP-DBVTYXUO.js +1 -1
  147. package/dist/components/java.js +1 -1
  148. package/dist/components/javascript.js +1 -1
  149. package/dist/components/journeyDiagram-JHISSGLW.js +1 -1
  150. package/dist/components/json.js +1 -1
  151. package/dist/components/jszip.min.js +1 -1
  152. package/dist/components/kaa-6HZHGXH3.js +1 -1
  153. package/dist/components/kab-KAB-ZGHBKWFO.js +1 -1
  154. package/dist/components/kanban-definition-UN3LZRKU.js +1 -1
  155. package/dist/components/katex.js +1 -1
  156. package/dist/components/kk-KZ-P5N5QNE5.js +1 -1
  157. package/dist/components/km-KH-HSX4SM5Z.js +1 -1
  158. package/dist/components/ko-KR-MTYHY66A.js +1 -1
  159. package/dist/components/ku-TR-6OUDTVRD.js +1 -1
  160. package/dist/components/lib.js +1 -1
  161. package/dist/components/libarchive.js +1 -1
  162. package/dist/components/linear.js +1 -1
  163. package/dist/components/lt-LT-XHIRWOB4.js +1 -1
  164. package/dist/components/lv-LV-5QDEKY6T.js +1 -1
  165. package/dist/components/markdown.js +1 -1
  166. package/dist/components/md.js +1 -1
  167. package/dist/components/mermaid-parser.core.js +1 -1
  168. package/dist/components/mindmap-definition-RKZ34NQL.js +1 -1
  169. package/dist/components/model.js +1 -1
  170. package/dist/components/mp4.js +1 -1
  171. package/dist/components/mr-IN-CRQNXWMA.js +1 -1
  172. package/dist/components/my-MM-5M5IBNSE.js +1 -1
  173. package/dist/components/nb-NO-T6EIAALU.js +1 -1
  174. package/dist/components/nestedRender.js +1 -1
  175. package/dist/components/nl-NL-IS3SIHDZ.js +1 -1
  176. package/dist/components/nn-NO-6E72VCQL.js +1 -1
  177. package/dist/components/objectSpread2.js +1 -1
  178. package/dist/components/objectWithoutProperties.js +1 -1
  179. package/dist/components/oc-FR-POXYY2M6.js +1 -1
  180. package/dist/components/ofd.js +1 -1
  181. package/dist/components/ofd2.js +1 -1
  182. package/dist/components/ordinal.js +1 -1
  183. package/dist/components/pa-IN-N4M65BXN.js +1 -1
  184. package/dist/components/packet-YPE3B663.js +1 -1
  185. package/dist/components/pdf.js +1 -1
  186. package/dist/components/percentages-BXMCSKIN.js +1 -1
  187. package/dist/components/php.js +1 -1
  188. package/dist/components/pica.js +1 -1
  189. package/dist/components/pie-LRSECV5Y.js +1 -1
  190. package/dist/components/pie.js +1 -1
  191. package/dist/components/pieDiagram-4H26LBE5.js +1 -1
  192. package/dist/components/pl-PL-T2D74RX3.js +1 -1
  193. package/dist/components/postal-mime.js +1 -1
  194. package/dist/components/pptx.js +1 -1
  195. package/dist/components/printLayout.js +1 -1
  196. package/dist/components/prod.js +1 -1
  197. package/dist/components/pt-BR-5N22H2LF.js +1 -1
  198. package/dist/components/pt-PT-UZXXM6DQ.js +1 -1
  199. package/dist/components/python.js +1 -1
  200. package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -1
  201. package/dist/components/radar-GUYGQ44K.js +1 -1
  202. package/dist/components/renderer.js +1 -0
  203. package/dist/components/requirementDiagram-4Y6WPE33.js +1 -1
  204. package/dist/components/ro-RO-JPDTUUEW.js +1 -1
  205. package/dist/components/rough.esm.js +1 -1
  206. package/dist/components/roundRect.js +1 -1
  207. package/dist/components/ru-RU-B4JR7IUQ.js +1 -1
  208. package/dist/components/rust.js +1 -1
  209. package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -1
  210. package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -1
  211. package/dist/components/shared.js +1 -1
  212. package/dist/components/shared2.js +1 -1
  213. package/dist/components/si-LK-N5RQ5JYF.js +1 -1
  214. package/dist/components/sk-SK-C5VTKIMK.js +1 -1
  215. package/dist/components/sl-SI-NN7IZMDC.js +1 -1
  216. package/dist/components/sourceLoading.js +1 -0
  217. package/dist/components/sql.js +1 -1
  218. package/dist/components/src.js +1 -1
  219. package/dist/components/src2.js +1 -1
  220. package/dist/components/stateDiagram-AJRCARHV.js +1 -1
  221. package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -1
  222. package/dist/components/subset-shared.chunk.js +1 -1
  223. package/dist/components/subset-worker.chunk.js +1 -1
  224. package/dist/components/sv-SE-XGPEYMSR.js +1 -1
  225. package/dist/components/ta-IN-2NMHFXQM.js +1 -1
  226. package/dist/components/text.js +1 -1
  227. package/dist/components/th-TH-HPSO5L25.js +1 -1
  228. package/dist/components/three.module.js +1 -1
  229. package/dist/components/time.js +1 -1
  230. package/dist/components/timeline-definition-PNZ67QCA.js +1 -1
  231. package/dist/components/tr-TR-DEFEU3FU.js +1 -1
  232. package/dist/components/treeView-BLDUP644.js +1 -1
  233. package/dist/components/treemap-LRROVOQU.js +1 -1
  234. package/dist/components/typescript.js +1 -1
  235. package/dist/components/typst.js +1 -0
  236. package/dist/components/uk-UA-QMV73CPH.js +1 -1
  237. package/dist/components/umd.js +1 -1
  238. package/dist/components/use.js +1 -1
  239. package/dist/components/util.js +1 -1
  240. package/dist/components/vennDiagram-CIIHVFJN.js +1 -1
  241. package/dist/components/vi-VN-M7AON7JQ.js +1 -1
  242. package/dist/components/wardley-L42UT6IY.js +1 -1
  243. package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -1
  244. package/dist/components/wasm-pack-shim.js +1 -0
  245. package/dist/components/wasm-pack-shim2.js +1 -0
  246. package/dist/components/wasm.js +1 -0
  247. package/dist/components/word.js +1 -1
  248. package/dist/components/worker-ref.js +1 -1
  249. package/dist/components/xlsx.js +1 -1
  250. package/dist/components/xml.js +1 -1
  251. package/dist/components/xychartDiagram-2RQKCTM6.js +1 -1
  252. package/dist/components/yaml.js +1 -1
  253. package/dist/components/zh-CN-LNUGB5OW.js +1 -1
  254. package/dist/components/zh-HK-E62DVLB3.js +1 -1
  255. package/dist/components/zh-TW-RAJ6MFWO.js +1 -1
  256. package/dist/file-viewer3.css +1 -1
  257. package/dist/index.mjs +1 -1
  258. package/dist/src/package/common/sourceLoading.d.ts +10 -0
  259. package/dist/src/package/common/type.d.ts +33 -1
  260. package/dist/src/package/components/FileViewer/useViewerExport.d.ts +2 -1
  261. package/dist/src/package/vendors/pdf/PdfView.vue.d.ts +2 -1
  262. package/dist/src/package/vendors/typst/TypstViewer.vue.d.ts +15 -0
  263. package/dist/src/package/vendors/typst/index.d.ts +8 -0
  264. package/package.json +5 -1
  265. package/dist/components/wrapAsyncGenerator.js +0 -1
@@ -1 +1 @@
1
- const bu=a1;(function(aL,aM){const bm=a1,aN=aL();while(!![]){try{const aO=parseInt(bm(0x1f1))/0x1+parseInt(bm(0x156))/0x2+-parseInt(bm(0x157))/0x3*(parseInt(bm(0x16b))/0x4)+parseInt(bm(0x1b3))/0x5+-parseInt(bm(0x186))/0x6*(parseInt(bm(0x15e))/0x7)+parseInt(bm(0x1d6))/0x8*(-parseInt(bm(0x194))/0x9)+parseInt(bm(0x1b6))/0xa*(parseInt(bm(0x140))/0xb);if(aO===aM)break;else aN['push'](aN['shift']());}catch(aP){aN['push'](aN['shift']());}}}(a0,0xed777));import{$ as a2,Bt as a3,C as a4,Ct as a5,Dt as a6,E as a7,Et as a8,Ft as a9,Ht as aa,K as ab,Mt as ac,Ot as ad,Pt as af,Q as ag,R as ah,Rt as ai,S as aj,Vt as ak,Z as al,_ as am,bt as an,dt as ao,et as ap,f as aq,ht as ar,m as as,n as at,nt as au,o as av,p as aw,pt as ax,q as ay,r as az,rt as aA,u as aB,ut as aC,vt as aD,w as aE,wt as aF,x as aG,yt as aH,z as aI,zt as aJ}from'./three.module.js';import{n as aK}from'./fflate.module.js';function R(aL,aM,aN){let aO=aN['length']-aL-0x1;if(aM>=aN[aO])return aO-0x1;if(aM<=aN[aL])return aL;let aP=aL,aQ=aO,aR=Math['floor']((aP+aQ)/0x2);for(;aM<aN[aR]||aM>=aN[aR+0x1];)aM<aN[aR]?aQ=aR:aP=aR,aR=Math['floor']((aP+aQ)/0x2);return aR;}function oe(aL,aM,aN,aO){let aP=[],aQ=[],aR=[];aP[0x0]=0x1;for(let aS=0x1;aS<=aN;++aS){aQ[aS]=aM-aO[aL+0x1-aS],aR[aS]=aO[aL+aS]-aM;let aT=0x0;for(let aU=0x0;aU<aS;++aU){let aV=aR[aU+0x1],aW=aQ[aS-aU],aX=aP[aU]/(aV+aW);aP[aU]=aT+aV*aX,aT=aW*aX;}aP[aS]=aT;}return aP;}function se(aL,aM,aN,aO){let aP=R(aL,aO,aM),aQ=oe(aP,aO,aL,aM),aR=new ak(0x0,0x0,0x0,0x0);for(let aS=0x0;aS<=aL;++aS){let aT=aN[aP-aL+aS],aU=aQ[aS],aV=aT['w']*aU;aR['x']+=aT['x']*aV,aR['y']+=aT['y']*aV,aR['z']+=aT['z']*aV,aR['w']+=aT['w']*aU;}return aR;}function ce(aL,aM,aN,aO,aP){const bn=a1;let aQ=[];for(let aW=0x0;aW<=aN;++aW)aQ[aW]=0x0;let aR=[];for(let aX=0x0;aX<=aO;++aX)aR[aX]=aQ['slice'](0x0);let aS=[];for(let aY=0x0;aY<=aN;++aY)aS[aY]=aQ['slice'](0x0);aS[0x0][0x0]=0x1;let aT=aQ['slice'](0x0),aU=aQ[bn(0x21b)](0x0);for(let aZ=0x1;aZ<=aN;++aZ){aT[aZ]=aM-aP[aL+0x1-aZ],aU[aZ]=aP[aL+aZ]-aM;let b0=0x0;for(let b1=0x0;b1<aZ;++b1){let b2=aU[b1+0x1],b3=aT[aZ-b1];aS[aZ][b1]=b2+b3;let b4=aS[b1][aZ-0x1]/aS[aZ][b1];aS[b1][aZ]=b0+b2*b4,b0=b3*b4;}aS[aZ][aZ]=b0;}for(let b5=0x0;b5<=aN;++b5)aR[0x0][b5]=aS[b5][aN];for(let b6=0x0;b6<=aN;++b6){let b7=0x0,b8=0x1,b9=[];for(let ba=0x0;ba<=aN;++ba)b9[ba]=aQ[bn(0x21b)](0x0);b9[0x0][0x0]=0x1;for(let bb=0x1;bb<=aO;++bb){let bc=0x0,bd=b6-bb,bf=aN-bb;b6>=bb&&(b9[b8][0x0]=b9[b7][0x0]/aS[bf+0x1][bd],bc=b9[b8][0x0]*aS[bd][bf]);let bg=bd>=-0x1?0x1:-bd,bh=b6-0x1<=bf?bb-0x1:aN-b6;for(let bj=bg;bj<=bh;++bj)b9[b8][bj]=(b9[b7][bj]-b9[b7][bj-0x1])/aS[bf+0x1][bd+bj],bc+=b9[b8][bj]*aS[bd+bj][bf];b6<=bf&&(b9[b8][bb]=-b9[b7][bb-0x1]/aS[bf+0x1][b6],bc+=b9[b8][bb]*aS[b6][bf]),aR[bb][b6]=bc;let bi=b7;b7=b8,b8=bi;}}let aV=aN;for(let bk=0x1;bk<=aO;++bk){for(let bl=0x0;bl<=aN;++bl)aR[bk][bl]*=aV;aV*=aN-bk;}return aR;}function le(aL,aM,aN,aO,aP){const bo=a1;let aQ=aP<aL?aP:aL,aR=[],aS=R(aL,aO,aM),aT=ce(aS,aO,aL,aQ,aM),aU=[];for(let aV=0x0;aV<aN['length'];++aV){let aW=aN[aV][bo(0x195)](),aX=aW['w'];aW['x']*=aX,aW['y']*=aX,aW['z']*=aX,aU[aV]=aW;}for(let aY=0x0;aY<=aQ;++aY){let aZ=aU[aS-aL][bo(0x195)]()['multiplyScalar'](aT[aY][0x0]);for(let b0=0x1;b0<=aL;++b0)aZ['add'](aU[aS-aL+b0]['clone']()['multiplyScalar'](aT[aY][b0]));aR[aY]=aZ;}for(let b1=aQ+0x1;b1<=aP+0x1;++b1)aR[b1]=new ak(0x0,0x0,0x0);return aR;}function ue(aL,aM){let aN=0x1;for(let aP=0x2;aP<=aL;++aP)aN*=aP;let aO=0x1;for(let aQ=0x2;aQ<=aM;++aQ)aO*=aQ;for(let aR=0x2;aR<=aL-aM;++aR)aO*=aR;return aN/aO;}function de(aL){const bp=a1;let aM=aL['length'],aN=[],aO=[];for(let aQ=0x0;aQ<aM;++aQ){let aR=aL[aQ];aN[aQ]=new a3(aR['x'],aR['y'],aR['z']),aO[aQ]=aR['w'];}let aP=[];for(let aS=0x0;aS<aM;++aS){let aT=aN[aS]['clone']();for(let aU=0x1;aU<=aS;++aU)aT['sub'](aP[aS-aU]['clone']()['multiplyScalar'](ue(aS,aU)*aO[aU]));aP[aS]=aT[bp(0x20c)](aO[0x0]);}return aP;}function z(aL,aM,aN,aO,aP){return de(le(aL,aM,aN,aO,aP));}var B=class extends am{constructor(aL,aM,aN,aO,aP){const bq=a1;super();let aQ=aM?aM['length']-0x1:0x0,aR=aN?aN['length']:0x0;this['degree']=aL,this[bq(0x1ef)]=aM,this['controlPoints']=[],this['startKnot']=aO||0x0,this[bq(0x1dc)]=aP||aQ;for(let aS=0x0;aS<aR;++aS){let aT=aN[aS];this['controlPoints'][aS]=new ak(aT['x'],aT['y'],aT['z'],aT['w']);}}['getPoint'](aL,aM=new a3()){const br=a1;let aN=aM,aO=this['knots'][this['startKnot']]+aL*(this[br(0x1ef)][this['endKnot']]-this['knots'][this['startKnot']]),aP=se(this['degree'],this['knots'],this['controlPoints'],aO);return aP['w']!==0x1&&aP['divideScalar'](aP['w']),aN['set'](aP['x'],aP['y'],aP['z']);}['getTangent'](aL,aM=new a3()){const bs=a1;let aN=aM,aO=this[bs(0x1ef)][0x0]+aL*(this[bs(0x1ef)][this['knots']['length']-0x1]-this['knots'][0x0]),aP=z(this['degree'],this[bs(0x1ef)],this['controlPoints'],aO,0x1);return aN['copy'](aP[0x1])['normalize'](),aN;}['toJSON'](){const bt=a1;let aL=super['toJSON']();return aL['degree']=this['degree'],aL['knots']=[...this['knots']],aL['controlPoints']=this['controlPoints']['map'](aM=>aM[bt(0x1a6)]()),aL['startKnot']=this['startKnot'],aL['endKnot']=this[bt(0x1dc)],aL;}[bu(0x185)](aL){const bv=bu;return super['fromJSON'](aL),this['degree']=aL['degree'],this['knots']=[...aL['knots']],this['controlPoints']=aL[bv(0x155)]['map'](aM=>new ak(aM[0x0],aM[0x1],aM[0x2],aM[0x3])),this['startKnot']=aL[bv(0x14b)],this['endKnot']=aL[bv(0x1dc)],this;}},V,H,U,fe=class extends ab{constructor(aL){super(aL);}['load'](aL,aM,aN,aO){const bw=bu;let aP=this,aQ=aP['path']===''?ay[bw(0x1fd)](aL):aP['path'],aR=new a4(this[bw(0x1f5)]);aR['setPath'](aP['path']),aR[bw(0x1b4)](bw(0x205)),aR['setRequestHeader'](aP['requestHeader']),aR['setWithCredentials'](aP[bw(0x1d9)]),aR['load'](aL,function(aS){const bx=bw;try{aM(aP['parse'](aS,aQ));}catch(aT){aO?aO(aT):console[bx(0x208)](aT),aP['manager']['itemError'](aL);}},aN,aO);}['parse'](aL,aM){const by=bu;if(ve(aL))V=new _e()['parse'](aL);else{let aN=$(aL);if(!ye(aN))throw Error('THREE.FBXLoader:\x20Unknown\x20format.');if(K(aN)<0x1b58)throw Error('THREE.FBXLoader:\x20FBX\x20version\x20not\x20supported,\x20FileVersion:\x20'+K(aN));V=new ge()[by(0x19e)](aN);}return new pe(new a9(this['manager'])['setPath'](this['resourcePath']||aM)['setCrossOrigin'](this[by(0x1a0)]),this['manager'])['parse'](V);}},pe=class{constructor(aL,aM){const bz=bu;this['textureLoader']=aL,this[bz(0x1f5)]=aM;}['parse'](){const bA=bu;H=this[bA(0x1ba)]();let aL=this['parseImages'](),aM=this[bA(0x172)](aL),aN=this[bA(0x1c5)](aM),aO=this['parseDeformers'](),aP=new me()['parse'](aO);return this[bA(0x20e)](aO,aP,aN),U;}['parseConnections'](){let aL=new Map();return'Connections'in V&&V['Connections']['connections']['forEach'](function(aM){const bB=a1;let aN=aM[0x0],aO=aM[0x1],aP=aM[0x2];aL[bB(0x144)](aN)||aL['set'](aN,{'parents':[],'children':[]});let aQ={'ID':aO,'relationship':aP};aL['get'](aN)[bB(0x1bd)][bB(0x1b9)](aQ),aL['has'](aO)||aL[bB(0x142)](aO,{'parents':[],'children':[]});let aR={'ID':aN,'relationship':aP};aL['get'](aO)['children']['push'](aR);}),aL;}['parseImages'](){const bC=bu;let aL={},aM={};if('Video'in V['Objects']){let aN=V['Objects']['Video'];for(let aO in aN){let aP=aN[aO],aQ=parseInt(aO);if(aL[aQ]=aP[bC(0x17a)]||aP['Filename'],'Content'in aP){let aR=aP['Content']instanceof ArrayBuffer&&aP['Content'][bC(0x1cc)]>0x0,aS=typeof aP['Content']=='string'&&aP['Content']!=='';if(aR||aS){let aT=this['parseImage'](aN[aO]);aM[aP['RelativeFilename']||aP['Filename']]=aT;}}}}for(let aU in aL){let aV=aL[aU];aM[aV]===void 0x0?aL[aU]=aL[aU][bC(0x1f4)]('\x5c')['pop']():aL[aU]=aM[aV];}return aL;}['parseImage'](aL){const bD=bu;let aM=aL[bD(0x1b1)],aN=aL[bD(0x17a)]||aL['Filename'],aO=aN['slice'](aN['lastIndexOf']('.')+0x1)[bD(0x1e5)](),aP;switch(aO){case'bmp':aP=bD(0x193);break;case'jpg':case'jpeg':aP='image/jpeg';break;case'png':aP='image/png';break;case'tif':aP=bD(0x1fa);break;case'tga':this['manager']['getHandler']('.tga')===null&&console['warn']('FBXLoader:\x20TGA\x20loader\x20not\x20found,\x20skipping\x20',aN),aP='image/tga';break;case'webp':aP='image/webp';break;default:console['warn']('FBXLoader:\x20Image\x20type\x20\x22'+aO+'\x22\x20is\x20not\x20supported.');return;}if(typeof aM=='string')return'data:'+aP+';base64,'+aM;{let aQ=new Uint8Array(aM);return window['URL']['createObjectURL'](new Blob([aQ],{'type':aP}));}}['parseTextures'](aL){const bE=bu;let aM=new Map();if('Texture'in V['Objects']){let aN=V['Objects'][bE(0x1c0)];for(let aO in aN){let aP=this['parseTexture'](aN[aO],aL);aM['set'](parseInt(aO),aP);}}return aM;}[bu(0x143)](aL,aM){const bF=bu;let aN=this['loadTexture'](aL,aM);aN['ID']=aL['id'],aN['name']=aL['attrName'];let aO=aL['WrapModeU'],aP=aL['WrapModeV'],aQ=aO===void 0x0?0x0:aO['value'],aR=aP===void 0x0?0x0:aP['value'];if(aN['wrapS']=aQ===0x0?a5:aq,aN['wrapT']=aR===0x0?a5:aq,'Scaling'in aL){let aS=aL[bF(0x1ff)]['value'];aN['repeat']['x']=aS[0x0],aN['repeat']['y']=aS[0x1];}if('Translation'in aL){let aT=aL[bF(0x174)]['value'];aN['offset']['x']=aT[0x0],aN['offset']['y']=aT[0x1];}return aN;}['loadTexture'](aL,aM){const bG=bu;let aN=aL['FileName']['split']('.')['pop']()['toLowerCase'](),aO=this['manager'][bG(0x169)]('.'+aN);aO===null&&(aO=this['textureLoader']);let aP=aO['path'];aP||aO['setPath'](this['textureLoader']['path']);let aQ=H['get'](aL['id'])['children'],aR;if(aQ!==void 0x0&&aQ['length']>0x0&&aM[aQ[0x0]['ID']]!==void 0x0&&(aR=aM[aQ[0x0]['ID']],(aR['indexOf'](bG(0x175))===0x0||aR['indexOf']('data:')===0x0)&&aO['setPath'](void 0x0)),aR===void 0x0)return console['warn']('FBXLoader:\x20Undefined\x20filename,\x20creating\x20placeholder\x20texture.'),new af();let aS=aO[bG(0x1e1)](aR);return aO[bG(0x1f2)](aP),aS;}[bu(0x1c5)](aL){let aM=new Map();if('Material'in V['Objects']){let aN=V['Objects']['Material'];for(let aO in aN){let aP=this['parseMaterial'](aN[aO],aL);aP!==null&&aM['set'](parseInt(aO),aP);}}return aM;}[bu(0x179)](aL,aM){const bH=bu;let aN=aL['id'],aO=aL['attrName'],aP=aL['ShadingModel'];if(typeof aP=='object'&&(aP=aP['value']),!H['has'](aN))return null;let aQ=this['parseParameters'](aL,aM,aN),aR;switch(aP['toLowerCase']()){case'phong':aR=new aA();break;case'lambert':aR=new au();break;default:console['warn']('THREE.FBXLoader:\x20unknown\x20material\x20type\x20\x22%s\x22.\x20Defaulting\x20to\x20MeshPhongMaterial.',aP),aR=new aA();break;}return aR['setValues'](aQ),aR[bH(0x166)]=aO,aR;}['parseParameters'](aL,aM,aN){const bI=bu;let aO={};aL['BumpFactor']&&(aO[bI(0x192)]=aL['BumpFactor']['value']),aL['Diffuse']?aO[bI(0x181)]=as[bI(0x14e)](new aw()['fromArray'](aL['Diffuse']['value']),aF):aL['DiffuseColor']&&(aL[bI(0x160)]['type']==='Color'||aL[bI(0x160)]['type']==='ColorRGB')&&(aO['color']=as['colorSpaceToWorking'](new aw()['fromArray'](aL['DiffuseColor']['value']),aF)),aL['DisplacementFactor']&&(aO['displacementScale']=aL['DisplacementFactor'][bI(0x177)]),aL['Emissive']?aO['emissive']=as['colorSpaceToWorking'](new aw()['fromArray'](aL['Emissive']['value']),aF):aL[bI(0x1d0)]&&(aL['EmissiveColor']['type']==='Color'||aL['EmissiveColor']['type']===bI(0x19d))&&(aO['emissive']=as[bI(0x14e)](new aw()['fromArray'](aL['EmissiveColor']['value']),aF)),aL['EmissiveFactor']&&(aO['emissiveIntensity']=parseFloat(aL['EmissiveFactor']['value'])),aO['opacity']=0x1-(aL['TransparencyFactor']?parseFloat(aL['TransparencyFactor']['value']):0x0),(aO['opacity']===0x1||aO[bI(0x16e)]===0x0)&&(aO['opacity']=aL['Opacity']?parseFloat(aL['Opacity']['value']):null,aO['opacity']===null&&(aO['opacity']=0x1)),aO['opacity']<0x1&&(aO['transparent']=!0x0),aL['ReflectionFactor']&&(aO['reflectivity']=aL['ReflectionFactor']['value']),aL['Shininess']&&(aO['shininess']=aL['Shininess']['value']),aL[bI(0x1c4)]?aO[bI(0x219)]=as['colorSpaceToWorking'](new aw()[bI(0x197)](aL['Specular']['value']),aF):aL['SpecularColor']&&aL['SpecularColor']['type']==='Color'&&(aO['specular']=as['colorSpaceToWorking'](new aw()['fromArray'](aL['SpecularColor']['value']),aF));let aP=this;return H['get'](aN)['children']['forEach'](function(aQ){const bJ=bI;let aR=aQ['relationship'];switch(aR){case bJ(0x211):aO['bumpMap']=aP['getTexture'](aM,aQ['ID']);break;case'Maya|TEX_ao_map':aO['aoMap']=aP['getTexture'](aM,aQ['ID']);break;case'DiffuseColor':case bJ(0x1c6):aO['map']=aP['getTexture'](aM,aQ['ID']),aO[bJ(0x168)]!==void 0x0&&(aO['map']['colorSpace']=aF);break;case bJ(0x1c1):aO['displacementMap']=aP[bJ(0x1fb)](aM,aQ['ID']);break;case'EmissiveColor':aO['emissiveMap']=aP['getTexture'](aM,aQ['ID']),aO[bJ(0x152)]!==void 0x0&&(aO['emissiveMap']['colorSpace']=aF);break;case'NormalMap':case'Maya|TEX_normal_map':aO['normalMap']=aP['getTexture'](aM,aQ['ID']);break;case'ReflectionColor':aO['envMap']=aP['getTexture'](aM,aQ['ID']),aO[bJ(0x191)]!==void 0x0&&(aO['envMap'][bJ(0x1e9)]=0x12f,aO['envMap']['colorSpace']=aF);break;case'SpecularColor':aO['specularMap']=aP[bJ(0x1fb)](aM,aQ['ID']),aO['specularMap']!==void 0x0&&(aO['specularMap']['colorSpace']=aF);break;case'TransparentColor':case'TransparencyFactor':aO[bJ(0x176)]=aP['getTexture'](aM,aQ['ID']),aO['transparent']=!0x0;break;default:console['warn']('THREE.FBXLoader:\x20%s\x20map\x20is\x20not\x20supported\x20in\x20three.js,\x20skipping\x20texture.',aR);break;}}),aO;}['getTexture'](aL,aM){const bK=bu;return bK(0x203)in V['Objects']&&aM in V['Objects']['LayeredTexture']&&(console[bK(0x151)]('THREE.FBXLoader:\x20layered\x20textures\x20are\x20not\x20supported\x20in\x20three.js.\x20Discarding\x20all\x20but\x20first\x20layer.'),aM=H['get'](aM)['children'][0x0]['ID']),aL[bK(0x13c)](aM);}['parseDeformers'](){const bL=bu;let aL={},aM={};if('Deformer'in V['Objects']){let aN=V[bL(0x1c2)]['Deformer'];for(let aO in aN){let aP=aN[aO],aQ=H['get'](parseInt(aO));if(aP[bL(0x19b)]==='Skin'){let aR=this['parseSkeleton'](aQ,aN);aR['ID']=aO,aQ['parents']['length']>0x1&&console['warn']('THREE.FBXLoader:\x20skeleton\x20attached\x20to\x20more\x20than\x20one\x20geometry\x20is\x20not\x20supported.'),aR['geometryID']=aQ['parents'][0x0]['ID'],aL[aO]=aR;}else{if(aP[bL(0x19b)]==='BlendShape'){let aS={'id':aO};aS['rawTargets']=this['parseMorphTargets'](aQ,aN),aS['id']=aO,aQ['parents']['length']>0x1&&console['warn']('THREE.FBXLoader:\x20morph\x20target\x20attached\x20to\x20more\x20than\x20one\x20geometry\x20is\x20not\x20supported.'),aM[aO]=aS;}}}}return{'skeletons':aL,'morphTargets':aM};}['parseSkeleton'](aL,aM){let aN=[];return aL['children']['forEach'](function(aO){const bM=a1;let aP=aM[aO['ID']];if(aP['attrType']!=='Cluster')return;let aQ={'ID':aO['ID'],'indices':[],'weights':[],'transformLink':new a2()['fromArray'](aP['TransformLink']['a'])};bM(0x164)in aP&&(aQ[bM(0x1fc)]=aP['Indexes']['a'],aQ['weights']=aP[bM(0x1ac)]['a']),aN[bM(0x1b9)](aQ);}),{'rawBones':aN,'bones':[]};}['parseMorphTargets'](aL,aM){const bN=bu;let aN=[];for(let aO=0x0;aO<aL['children'][bN(0x17d)];aO++){let aP=aL['children'][aO],aQ=aM[aP['ID']],aR={'name':aQ['attrName'],'initialWeight':aQ['DeformPercent'],'id':aQ['id'],'fullWeights':aQ[bN(0x1c3)]['a']};if(aQ['attrType']!=='BlendShapeChannel')return;aR['geoID']=H[bN(0x13c)](parseInt(aP['ID']))[bN(0x204)]['filter'](function(aS){return aS['relationship']===void 0x0;})[0x0]['ID'],aN['push'](aR);}return aN;}['parseScene'](aL,aM,aN){const bO=bu;U=new a7();let aO=this[bO(0x20f)](aL['skeletons'],aM,aN),aP=V['Objects']['Model'],aQ=this;aO['forEach'](function(aV){const bP=bO;let aW=aP[aV['ID']];aQ[bP(0x202)](aV,aW),H[bP(0x13c)](aV['ID'])['parents'][bP(0x173)](function(aX){let aY=aO['get'](aX['ID']);aY!==void 0x0&&aY['add'](aV);}),aV['parent']===null&&U[bP(0x1b0)](aV);}),this['addGlobalSceneSettings'](),U['traverse'](function(aV){const bQ=bO;if(aV['userData']['transformData']){aV['parent']&&(aV['userData'][bQ(0x1ab)]['parentMatrix']=aV[bQ(0x18a)]['matrix'],aV['userData']['transformData']['parentMatrixWorld']=aV[bQ(0x18a)][bQ(0x159)]);let aW=X(aV['userData']['transformData']);aV['applyMatrix4'](aW),aV[bQ(0x17c)]();}});let aR=this['parsePoseNodes'](),aS=new Set();for(let aV in aL['skeletons'])aL['skeletons'][aV]['rawBones'][bO(0x173)](function(aW,aX){let aY=aL['skeletons'][aV]['bones'][aX];aY&&aS['add'](aY['ID']);});let aT=new a2();U['traverse'](function(aW){const bR=bO;if(aW[bR(0x20b)]&&aW['ID']!==void 0x0&&!aS['has'](aW['ID'])){let aX=aR[aW['ID']];aX!==void 0x0&&(aW['parent']?(aT['copy'](aW['parent']['matrixWorld'])['invert'](),aT['multiply'](aX)):aT['copy'](aX),aT['decompose'](aW['position'],aW[bR(0x1d4)],aW[bR(0x171)]),aW['updateMatrix'](),aW['matrixWorld'][bR(0x218)](aX));}}),this['bindSkeleton'](aL['skeletons'],aM,aO);let aU=new he()['parse']();U['children']['length']===0x1&&U['children'][0x0]['isGroup']&&(U[bO(0x204)][0x0]['animations']=aU,U=U['children'][0x0]),U[bO(0x1a4)]=aU,'GlobalSettings'in V&&bO(0x1cd)in V['GlobalSettings']&&V['GlobalSettings']['UpAxis'][bO(0x177)]===0x2&&(console['warn']('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.'),U['rotation']['set'](-Math['PI']/0x2,0x0,0x0));}['parseModels'](aL,aM,aN){const bS=bu;let aO=new Map(),aP=V['Objects']['Model'];for(let aQ in aP){let aR=parseInt(aQ),aS=aP[aQ],aT=H['get'](aR),aU=this['buildSkeleton'](aT,aL,aR,aS[bS(0x16f)]);if(!aU){switch(aS['attrType']){case'Camera':aU=this['createCamera'](aT);break;case'Light':aU=this['createLight'](aT);break;case'Mesh':aU=this['createMesh'](aT,aM,aN);break;case'NurbsCurve':aU=this['createCurve'](aT,aM);break;case'LimbNode':case bS(0x150):aU=new av();break;default:aU=new a7();break;}aU['name']=aS['attrName']?aD[bS(0x1a9)](aS[bS(0x16f)]):'',aU['userData']['originalName']=aS['attrName'],aU['ID']=aR;}this['getTransformData'](aU,aS),aO['set'](aR,aU);}return aO;}[bu(0x1f0)](aL,aM,aN,aO){let aP=null;return aL['parents']['forEach'](function(aQ){const bT=a1;for(let aR in aM){let aS=aM[aR];aS[bT(0x1e7)][bT(0x173)](function(aT,aU){const bU=bT;if(aT['ID']===aQ['ID']){let aV=aP;aP=new av(),aP['matrixWorld']['copy'](aT[bU(0x190)]),aP['name']=aO?aD['sanitizeNodeName'](aO):'',aP['userData']['originalName']=aO,aP['ID']=aN,aS['bones'][aU]=aP,aV!==null&&aP['add'](aV);}});}}),aP;}['createCamera'](aL){const bW=bu;let aM,aN;if(aL['children']['forEach'](function(aO){const bV=a1;let aP=V[bV(0x1c2)]['NodeAttribute'][aO['ID']];aP!==void 0x0&&(aN=aP);}),aN===void 0x0)aM=new ao();else{let aO=0x0;aN['CameraProjectionType']!==void 0x0&&aN['CameraProjectionType'][bW(0x177)]===0x1&&(aO=0x1);let aP=0x1;aN['NearPlane']!==void 0x0&&(aP=aN['NearPlane']['value']/0x3e8);let aQ=0x3e8;aN['FarPlane']!==void 0x0&&(aQ=aN['FarPlane'][bW(0x177)]/0x3e8);let aR=window['innerWidth'],aS=window['innerHeight'];aN['AspectWidth']!==void 0x0&&aN['AspectHeight']!==void 0x0&&(aR=aN[bW(0x1ec)]['value'],aS=aN[bW(0x187)]['value']);let aT=aR/aS,aU=0x2d;aN['FieldOfView']!==void 0x0&&(aU=aN[bW(0x170)]['value']);let aV=aN['FocalLength']?aN['FocalLength']['value']:null;switch(aO){case 0x0:aM=new ax(aU,aT,aP,aQ),aV!==null&&aM['setFocalLength'](aV);break;case 0x1:console['warn'](bW(0x154)),aM=new ao();break;default:console['warn']('THREE.FBXLoader:\x20Unknown\x20camera\x20type\x20'+aO+'.'),aM=new ao();break;}}return aM;}['createLight'](aL){const bY=bu;let aM,aN;if(aL['children']['forEach'](function(aO){const bX=a1;let aP=V[bX(0x1c2)]['NodeAttribute'][aO['ID']];aP!==void 0x0&&(aN=aP);}),aN===void 0x0)aM=new ao();else{let aO;aO=aN['LightType']===void 0x0?0x0:aN['LightType']['value'];let aP=0xffffff;aN['Color']!==void 0x0&&(aP=as['colorSpaceToWorking'](new aw()['fromArray'](aN['Color'][bY(0x177)]),aF));let aQ=aN[bY(0x196)]===void 0x0?0x1:aN[bY(0x196)]['value']/0x64;aN['CastLightOnObject']!==void 0x0&&aN['CastLightOnObject']['value']===0x0&&(aQ=0x0);let aR=0x0;switch(aN['FarAttenuationEnd']!==void 0x0&&(aR=aN['EnableFarAttenuation']!==void 0x0&&aN['EnableFarAttenuation'][bY(0x177)]===0x0?0x0:aN['FarAttenuationEnd']['value']),aO){case 0x0:aM=new ar(aP,aQ,aR,0x1);break;case 0x1:aM=new aG(aP,aQ);break;case 0x2:let aS=Math['PI']/0x3,aT=0x0;aN['OuterAngle']===void 0x0?aN['InnerAngle']!==void 0x0&&(aS=al[bY(0x19c)](aN['InnerAngle']['value'])):(aS=al['degToRad'](aN[bY(0x213)][bY(0x177)]),aN['InnerAngle']!==void 0x0&&(aT=0x1-aN['InnerAngle']['value']/aN[bY(0x213)][bY(0x177)],aT=Math['max'](0x0,aT))),aM=new ac(aP,aQ,aR,aS,aT,0x1);break;default:console['warn']('THREE.FBXLoader:\x20Unknown\x20light\x20type\x20'+aN['LightType']['value']+',\x20defaulting\x20to\x20a\x20PointLight.'),aM=new ar(aP,aQ);break;}aN['CastShadows']!==void 0x0&&aN['CastShadows']['value']===0x1&&(aM['castShadow']=!0x0);}return aM;}[bu(0x145)](aL,aM,aN){const bZ=bu;let aO,aP=null,aQ=null,aR=[];if(aL['children'][bZ(0x173)](function(aS){const c0=bZ;aM['has'](aS['ID'])&&(aP=aM['get'](aS['ID'])),aN['has'](aS['ID'])&&aR[c0(0x1b9)](aN['get'](aS['ID']));}),aR['length']>0x1?aQ=aR:aR[bZ(0x17d)]>0x0?aQ=aR[0x0]:(aQ=new aA({'name':ab['DEFAULT_MATERIAL_NAME'],'color':0xcccccc}),aR['push'](aQ)),bZ(0x181)in aP['attributes']&&aR['forEach'](function(aS){aS['vertexColors']=!0x0;}),aP['groups']['length']>0x0){let aS=!0x1;for(let aT=0x0,aU=aP['groups']['length'];aT<aU;aT++){let aV=aP['groups'][aT];(aV['materialIndex']<0x0||aV[bZ(0x1da)]>=aR['length'])&&(aV[bZ(0x1da)]=aR['length'],aS=!0x0);}if(aS){let aW=new aA();aR['push'](aW);}}return aP['FBX_Deformer']?(aO=new ad(aP,aQ),aO['normalizeSkinWeights']()):aO=new ap(aP,aQ),aO;}['createCurve'](aL,aM){const c1=bu;return new ah(aL['children'][c1(0x20d)](function(aN,aO){const c2=c1;return aM[c2(0x144)](aO['ID'])&&(aN=aM['get'](aO['ID'])),aN;},null),new aI({'name':ab[c1(0x1f9)],'color':0x3300ff,'linewidth':0x1}));}['getTransformData'](aL,aM){const c3=bu;let aN={};'InheritType'in aM&&(aN[c3(0x1e0)]=parseInt(aM['InheritType']['value'])),'RotationOrder'in aM?aN['eulerOrder']=Z(aM['RotationOrder']['value']):aN['eulerOrder']=Z(0x0),c3(0x132)in aM&&(aN['translation']=aM['Lcl_Translation']['value']),'PreRotation'in aM&&(aN['preRotation']=aM['PreRotation']['value']),'Lcl_Rotation'in aM&&(aN[c3(0x1d5)]=aM[c3(0x199)]['value']),'PostRotation'in aM&&(aN['postRotation']=aM[c3(0x1de)]['value']),c3(0x206)in aM&&(aN['scale']=aM['Lcl_Scaling']['value']),'ScalingOffset'in aM&&(aN['scalingOffset']=aM['ScalingOffset']['value']),'ScalingPivot'in aM&&(aN[c3(0x1ad)]=aM['ScalingPivot']['value']),c3(0x137)in aM&&(aN['rotationOffset']=aM['RotationOffset']['value']),'RotationPivot'in aM&&(aN['rotationPivot']=aM['RotationPivot'][c3(0x177)]),aL['userData']['transformData']=aN;}['setLookAtProperties'](aL,aM){const c4=bu;c4(0x1a5)in aM&&H['get'](aL['ID'])['children']['forEach'](function(aN){const c5=c4;if(aN['relationship']==='LookAtProperty'){let aO=V['Objects']['Model'][aN['ID']];if(c5(0x132)in aO){let aP=aO[c5(0x132)]['value'];aL['target']===void 0x0?aL['lookAt'](new a3()['fromArray'](aP)):(aL['target']['position'][c5(0x197)](aP),U['add'](aL['target']));}}});}['bindSkeleton'](aL,aM,aN){const c6=bu;for(let aO in aL){let aP=aL[aO],aQ=[];for(let aR=0x0,aS=aP['bones']['length'];aR<aS;aR++){let aT=new a2();aP['bones'][aR]&&aP[c6(0x1e7)][aR]&&aT['copy'](aP['rawBones'][aR][c6(0x190)])['invert'](),aQ['push'](aT);}H['get'](parseInt(aP['ID']))[c6(0x1bd)][c6(0x173)](function(aU){if(aM['has'](aU['ID'])){let aV=aU['ID'];H['get'](aV)['parents']['forEach'](function(aW){const c7=a1;if(aN['has'](aW['ID'])){let aX=aN['get'](aW['ID']);aX[c7(0x1a3)](!0x0),aX[c7(0x1a8)](new a6(aP['bones'],aQ),aX[c7(0x159)]);}});}});}}[bu(0x1d1)](){const c8=bu;let aL={};if(c8(0x1f7)in V['Objects']){let aM=V['Objects']['Pose'];for(let aN in aM)if(aM[aN]['attrType']==='BindPose'&&aM[aN]['NbPoseNodes']>0x0){let aO=aM[aN]['PoseNode'];Array['isArray'](aO)?aO['forEach'](function(aP){aL[aP['Node']]=new a2()['fromArray'](aP['Matrix']['a']);}):aL[aO['Node']]=new a2()['fromArray'](aO['Matrix']['a']);}}return aL;}['addGlobalSceneSettings'](){const c9=bu;if(c9(0x1d7)in V){if(c9(0x216)in V[c9(0x1d7)]){let aL=V['GlobalSettings']['AmbientColor']['value'],aM=aL[0x0],aN=aL[0x1],aO=aL[0x2];if(aM!==0x0||aN!==0x0||aO!==0x0){let aP=new aw()['setRGB'](aM,aN,aO,aF);U['add'](new at(aP,0x1));}}'UnitScaleFactor'in V['GlobalSettings']&&(U[c9(0x1e8)]['unitScaleFactor']=V['GlobalSettings']['UnitScaleFactor']['value']);}}},me=class{constructor(){const ca=bu;this[ca(0x133)]=!0x1;}['parse'](aL){const cb=bu;let aM=new Map();if('Geometry'in V[cb(0x1c2)]){let aN=V['Objects'][cb(0x1ed)];for(let aO in aN){let aP=H['get'](parseInt(aO)),aQ=this['parseGeometry'](aP,aN[aO],aL);aM['set'](parseInt(aO),aQ);}}return this['negativeMaterialIndices']===!0x0&&console['warn']('THREE.FBXLoader:\x20The\x20FBX\x20file\x20contains\x20invalid\x20(negative)\x20material\x20indices.\x20The\x20asset\x20might\x20not\x20render\x20as\x20expected.'),aM;}['parseGeometry'](aL,aM,aN){const cc=bu;switch(aM['attrType']){case cc(0x1a2):return this['parseMeshGeometry'](aL,aM,aN);case cc(0x14c):return this['parseNurbsGeometry'](aM);}}['parseMeshGeometry'](aL,aM,aN){const cd=bu;let aO=aN[cd(0x13a)],aP=[],aQ=aL['parents']['map'](function(aV){return V['Objects']['Model'][aV['ID']];});if(aQ['length']===0x0)return;let aR=aL['children']['reduce'](function(aV,aW){return aO[aW['ID']]!==void 0x0&&(aV=aO[aW['ID']]),aV;},null);aL[cd(0x204)]['forEach'](function(aV){aN['morphTargets'][aV['ID']]!==void 0x0&&aP['push'](aN['morphTargets'][aV['ID']]);});let aS=aQ[0x0],aT={};cd(0x158)in aS&&(aT['eulerOrder']=Z(aS[cd(0x158)]['value'])),cd(0x1cf)in aS&&(aT['inheritType']=parseInt(aS[cd(0x1cf)][cd(0x177)])),'GeometricTranslation'in aS&&(aT[cd(0x189)]=aS['GeometricTranslation']['value']),'GeometricRotation'in aS&&(aT[cd(0x1d5)]=aS['GeometricRotation']['value']),'GeometricScaling'in aS&&(aT[cd(0x171)]=aS['GeometricScaling']['value']);let aU=X(aT);return this['genGeometry'](aM,aR,aP,aU);}['genGeometry'](aL,aM,aN,aO){const cf=bu;let aP=new aB();aL['attrName']&&(aP['name']=aL['attrName']);let aQ=this['parseGeoNode'](aL,aM),aR=this['genBuffers'](aQ),aS=new aE(aR['vertex'],0x3);if(aS['applyMatrix4'](aO),aP[cf(0x15f)]('position',aS),aR['colors']['length']>0x0&&aP['setAttribute']('color',new aE(aR['colors'],0x3)),aM&&(aP['setAttribute']('skinIndex',new ai(aR['weightsIndices'],0x4)),aP['setAttribute']('skinWeight',new aE(aR['vertexWeights'],0x4)),aP['FBX_Deformer']=aM),aR[cf(0x19a)]['length']>0x0){let aT=new ag()[cf(0x17e)](aO),aU=new aE(aR['normal'],0x3);aU['applyNormalMatrix'](aT),aP['setAttribute']('normal',aU);}if(aR[cf(0x1d2)]['forEach'](function(aV,aW){let aX=aW===0x0?'uv':'uv'+aW;aP['setAttribute'](aX,new aE(aR['uvs'][aW],0x2));}),aQ['material']&&aQ[cf(0x1b2)]['mappingType']!=='AllSame'){let aV=aR[cf(0x1da)][0x0],aW=0x0;if(aR['materialIndex']['forEach'](function(aX,aY){const cg=cf;aX!==aV&&(aP[cg(0x1d8)](aW,aY-aW,aV),aV=aX,aW=aY);}),aP['groups']['length']>0x0){let aX=aP['groups'][aP['groups']['length']-0x1],aY=aX['start']+aX['count'];aY!==aR['materialIndex']['length']&&aP['addGroup'](aY,aR['materialIndex']['length']-aY,aV);}aP['groups']['length']===0x0&&aP['addGroup'](0x0,aR[cf(0x1da)]['length'],aR['materialIndex'][0x0]);}return this[cf(0x14f)](aP,aL,aN,aO),aP;}[bu(0x162)](aL,aM){const ch=bu;let aN={};if(aN['vertexPositions']=aL[ch(0x1df)]===void 0x0?[]:aL['Vertices']['a'],aN['vertexIndices']=aL['PolygonVertexIndex']===void 0x0?[]:aL['PolygonVertexIndex']['a'],aL['LayerElementColor']&&aL['LayerElementColor'][0x0]['Colors']&&(aN['color']=this['parseVertexColors'](aL['LayerElementColor'][0x0])),aL['LayerElementMaterial']&&(aN['material']=this['parseMaterialIndices'](aL['LayerElementMaterial'][0x0])),aL['LayerElementNormal']&&(aN['normal']=this['parseNormals'](aL['LayerElementNormal'][0x0])),aL['LayerElementUV']){aN['uv']=[];let aO=0x0;for(;aL['LayerElementUV'][aO];)aL['LayerElementUV'][aO]['UV']&&aN['uv']['push'](this[ch(0x200)](aL['LayerElementUV'][aO])),aO++;}return aN['weightTable']={},aM!==null&&(aN['skeleton']=aM,aM['rawBones']['forEach'](function(aP,aQ){aP['indices']['forEach'](function(aR,aS){aN['weightTable'][aR]===void 0x0&&(aN['weightTable'][aR]=[]),aN['weightTable'][aR]['push']({'id':aQ,'weight':aP['weights'][aS]});});})),aN;}['genBuffers'](aL){let aM={'vertex':[],'normal':[],'colors':[],'uvs':[],'materialIndex':[],'vertexWeights':[],'weightsIndices':[]},aN=0x0,aO=0x0,aP=!0x1,aQ=[],aR=[],aS=[],aT=[],aU=[],aV=[],aW=this;return aL['vertexIndices']['forEach'](function(aX,aY){const ci=a1;let aZ,b0=!0x1;aX<0x0&&(aX^=-0x1,b0=!0x0);let b1=[],b2=[];if(aQ[ci(0x1b9)](aX*0x3,aX*0x3+0x1,aX*0x3+0x2),aL['color']){let b3=q(aY,aN,aX,aL['color']);aS['push'](b3[0x0],b3[0x1],b3[0x2]);}if(aL['skeleton']){if(aL['weightTable'][aX]!==void 0x0&&aL['weightTable'][aX]['forEach'](function(b4){b2['push'](b4['weight']),b1['push'](b4['id']);}),b2[ci(0x17d)]>0x4){aP||(console['warn'](ci(0x16c)),aP=!0x0);let b4=[0x0,0x0,0x0,0x0],b5=[0x0,0x0,0x0,0x0];b2['forEach'](function(b6,b7){let b8=b6,b9=b1[b7];b5['forEach'](function(ba,bb,bc){if(b8>ba){bc[bb]=b8,b8=ba;let bd=b4[bb];b4[bb]=b9,b9=bd;}});}),b1=b4,b2=b5;}for(;b2[ci(0x17d)]<0x4;)b2['push'](0x0),b1['push'](0x0);for(let b6=0x0;b6<0x4;++b6)aU['push'](b2[b6]),aV['push'](b1[b6]);}if(aL['normal']){let b7=q(aY,aN,aX,aL['normal']);aR['push'](b7[0x0],b7[0x1],b7[0x2]);}aL['material']&&aL['material']['mappingType']!==ci(0x180)&&(aZ=q(aY,aN,aX,aL['material'])[0x0],aZ<0x0&&(aW['negativeMaterialIndices']=!0x0,aZ=0x0)),aL['uv']&&aL['uv']['forEach'](function(b8,b9){let ba=q(aY,aN,aX,b8);aT[b9]===void 0x0&&(aT[b9]=[]),aT[b9]['push'](ba[0x0]),aT[b9]['push'](ba[0x1]);}),aO++,b0&&(aW['genFace'](aM,aL,aQ,aZ,aR,aS,aT,aU,aV,aO),aN++,aO=0x0,aQ=[],aR=[],aS=[],aT=[],aU=[],aV=[]);}),aM;}['getNormalNewell'](aL){const cj=bu;let aM=new a3(0x0,0x0,0x0);for(let aN=0x0;aN<aL['length'];aN++){let aO=aL[aN],aP=aL[(aN+0x1)%aL['length']];aM['x']+=(aO['y']-aP['y'])*(aO['z']+aP['z']),aM['y']+=(aO['z']-aP['z'])*(aO['x']+aP['x']),aM['z']+=(aO['x']-aP['x'])*(aO['y']+aP['y']);}return aM[cj(0x1cb)](),aM;}['getNormalTangentAndBitangent'](aL){const ck=bu;let aM=this['getNormalNewell'](aL),aN=(Math[ck(0x13f)](aM['z'])>0.5?new a3(0x0,0x1,0x0):new a3(0x0,0x0,0x1))['cross'](aM)['normalize']();return{'normal':aM,'tangent':aN,'bitangent':aM['clone']()['cross'](aN)[ck(0x1cb)]()};}['flattenVertex'](aL,aM,aN){return new aJ(aL['dot'](aM),aL['dot'](aN));}['genFace'](aL,aM,aN,aO,aP,aQ,aR,aS,aT,aU){const cl=bu;let aV;if(aU>0x3){let aW=[],aX=aM['baseVertexPositions']||aM['vertexPositions'];for(let b1=0x0;b1<aN['length'];b1+=0x3)aW['push'](new a3(aX[aN[b1]],aX[aN[b1+0x1]],aX[aN[b1+0x2]]));let {tangent:aY,bitangent:aZ}=this['getNormalTangentAndBitangent'](aW),b0=[];for(let b2 of aW)b0['push'](this['flattenVertex'](b2,aY,aZ));aV=a8[cl(0x207)](b0,[]);}else aV=[[0x0,0x1,0x2]];for(let [b3,b4,b5]of aV)aL['vertex']['push'](aM['vertexPositions'][aN[b3*0x3]]),aL['vertex']['push'](aM['vertexPositions'][aN[b3*0x3+0x1]]),aL['vertex'][cl(0x1b9)](aM['vertexPositions'][aN[b3*0x3+0x2]]),aL[cl(0x1b8)]['push'](aM['vertexPositions'][aN[b4*0x3]]),aL['vertex']['push'](aM['vertexPositions'][aN[b4*0x3+0x1]]),aL[cl(0x1b8)][cl(0x1b9)](aM['vertexPositions'][aN[b4*0x3+0x2]]),aL['vertex']['push'](aM['vertexPositions'][aN[b5*0x3]]),aL['vertex']['push'](aM['vertexPositions'][aN[b5*0x3+0x1]]),aL['vertex']['push'](aM['vertexPositions'][aN[b5*0x3+0x2]]),aM['skeleton']&&(aL['vertexWeights']['push'](aS[b3*0x4]),aL['vertexWeights']['push'](aS[b3*0x4+0x1]),aL['vertexWeights']['push'](aS[b3*0x4+0x2]),aL[cl(0x138)]['push'](aS[b3*0x4+0x3]),aL[cl(0x138)]['push'](aS[b4*0x4]),aL['vertexWeights'][cl(0x1b9)](aS[b4*0x4+0x1]),aL[cl(0x138)]['push'](aS[b4*0x4+0x2]),aL['vertexWeights'][cl(0x1b9)](aS[b4*0x4+0x3]),aL['vertexWeights'][cl(0x1b9)](aS[b5*0x4]),aL['vertexWeights']['push'](aS[b5*0x4+0x1]),aL['vertexWeights']['push'](aS[b5*0x4+0x2]),aL['vertexWeights']['push'](aS[b5*0x4+0x3]),aL['weightsIndices']['push'](aT[b3*0x4]),aL['weightsIndices']['push'](aT[b3*0x4+0x1]),aL[cl(0x14a)]['push'](aT[b3*0x4+0x2]),aL['weightsIndices']['push'](aT[b3*0x4+0x3]),aL['weightsIndices']['push'](aT[b4*0x4]),aL[cl(0x14a)][cl(0x1b9)](aT[b4*0x4+0x1]),aL['weightsIndices']['push'](aT[b4*0x4+0x2]),aL['weightsIndices']['push'](aT[b4*0x4+0x3]),aL['weightsIndices']['push'](aT[b5*0x4]),aL['weightsIndices']['push'](aT[b5*0x4+0x1]),aL['weightsIndices'][cl(0x1b9)](aT[b5*0x4+0x2]),aL[cl(0x14a)][cl(0x1b9)](aT[b5*0x4+0x3])),aM['color']&&(aL[cl(0x13d)][cl(0x1b9)](aQ[b3*0x3]),aL['colors']['push'](aQ[b3*0x3+0x1]),aL['colors'][cl(0x1b9)](aQ[b3*0x3+0x2]),aL['colors']['push'](aQ[b4*0x3]),aL['colors']['push'](aQ[b4*0x3+0x1]),aL[cl(0x13d)]['push'](aQ[b4*0x3+0x2]),aL[cl(0x13d)][cl(0x1b9)](aQ[b5*0x3]),aL['colors'][cl(0x1b9)](aQ[b5*0x3+0x1]),aL['colors']['push'](aQ[b5*0x3+0x2])),aM[cl(0x1b2)]&&aM['material']['mappingType']!==cl(0x180)&&(aL['materialIndex']['push'](aO),aL['materialIndex']['push'](aO),aL['materialIndex']['push'](aO)),aM['normal']&&(aL[cl(0x19a)]['push'](aP[b3*0x3]),aL['normal']['push'](aP[b3*0x3+0x1]),aL['normal'][cl(0x1b9)](aP[b3*0x3+0x2]),aL['normal']['push'](aP[b4*0x3]),aL['normal']['push'](aP[b4*0x3+0x1]),aL['normal'][cl(0x1b9)](aP[b4*0x3+0x2]),aL['normal']['push'](aP[b5*0x3]),aL['normal'][cl(0x1b9)](aP[b5*0x3+0x1]),aL[cl(0x19a)]['push'](aP[b5*0x3+0x2])),aM['uv']&&aM['uv']['forEach'](function(b6,b7){const cm=cl;aL['uvs'][b7]===void 0x0&&(aL['uvs'][b7]=[]),aL[cm(0x1d2)][b7][cm(0x1b9)](aR[b7][b3*0x2]),aL['uvs'][b7]['push'](aR[b7][b3*0x2+0x1]),aL['uvs'][b7]['push'](aR[b7][b4*0x2]),aL['uvs'][b7]['push'](aR[b7][b4*0x2+0x1]),aL[cm(0x1d2)][b7]['push'](aR[b7][b5*0x2]),aL[cm(0x1d2)][b7]['push'](aR[b7][b5*0x2+0x1]);});}[bu(0x14f)](aL,aM,aN,aO){const cn=bu;if(aN['length']===0x0)return;aL[cn(0x18b)]=!0x0,aL['morphAttributes'][cn(0x149)]=[];let aP=aO[cn(0x195)]()['setPosition'](0x0,0x0,0x0),aQ=this;aN[cn(0x173)](function(aR){aR['rawTargets']['forEach'](function(aS){const co=a1;let aT=V['Objects']['Geometry'][aS[co(0x1e3)]];aT!==void 0x0&&aQ['genMorphGeometry'](aL,aM,aT,aP,aS[co(0x166)]);});});}['genMorphGeometry'](aL,aM,aN,aO,aP){const cp=bu;let aQ=aM['Vertices']===void 0x0?[]:aM[cp(0x1df)]['a'],aR=aM['PolygonVertexIndex']===void 0x0?[]:aM['PolygonVertexIndex']['a'],aS=aN[cp(0x1df)]===void 0x0?[]:aN['Vertices']['a'],aT=aN['Indexes']===void 0x0?[]:aN['Indexes']['a'],aU=aL[cp(0x1bc)]['position']['count']*0x3,aV=new Float32Array(aU);for(let aY=0x0;aY<aT['length'];aY++){let aZ=aT[aY]*0x3;aV[aZ]=aS[aY*0x3],aV[aZ+0x1]=aS[aY*0x3+0x1],aV[aZ+0x2]=aS[aY*0x3+0x2];}let aW={'vertexIndices':aR,'vertexPositions':aV,'baseVertexPositions':aQ},aX=new aE(this['genBuffers'](aW)['vertex'],0x3);aX[cp(0x166)]=aP||aN[cp(0x16f)],aX['applyMatrix4'](aO),aL['morphAttributes']['position']['push'](aX);}[bu(0x1b5)](aL){const cq=bu;let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'],aO=aL[cq(0x1be)]['a'],aP=[];return aN==='IndexToDirect'&&(cq(0x13e)in aL?aP=aL['NormalIndex']['a']:cq(0x1af)in aL&&(aP=aL['NormalsIndex']['a'])),{'dataSize':0x3,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}[bu(0x200)](aL){const cr=bu;let aM=aL[cr(0x18f)],aN=aL['ReferenceInformationType'],aO=aL['UV']['a'],aP=[];return aN===cr(0x1f6)&&(aP=aL['UVIndex']['a']),{'dataSize':0x2,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}[bu(0x184)](aL){const cs=bu;let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'],aO=aL[cs(0x17b)]['a'],aP=[];aN==='IndexToDirect'&&(aP=aL[cs(0x217)]['a']);for(let aQ=0x0,aR=new aw();aQ<aO['length'];aQ+=0x4)aR['fromArray'](aO,aQ),as[cs(0x14e)](aR,aF),aR['toArray'](aO,aQ);return{'dataSize':0x4,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseMaterialIndices'](aL){const ct=bu;let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'];if(aM===ct(0x1f8))return{'dataSize':0x1,'buffer':[0x0],'indices':[0x0],'mappingType':ct(0x180),'referenceType':aN};let aO=aL['Materials']['a'],aP=[];for(let aQ=0x0;aQ<aO['length'];++aQ)aP['push'](aQ);return{'dataSize':0x1,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseNurbsGeometry'](aL){const cu=bu;let aM=parseInt(aL['Order']);if(isNaN(aM))return console['error']('THREE.FBXLoader:\x20Invalid\x20Order\x20%s\x20given\x20for\x20geometry\x20ID:\x20%s',aL['Order'],aL['id']),new aB();let aN=aM-0x1,aO=aL['KnotVector']['a'],aP=[],aQ=aL['Points']['a'];for(let aU=0x0,aV=aQ['length'];aU<aV;aU+=0x4)aP['push'](new ak()['fromArray'](aQ,aU));let aR,aS;if(aL[cu(0x165)]==='Closed')aP['push'](aP[0x0]);else{if(aL['Form']==='Periodic'){aR=aN,aS=aO[cu(0x17d)]-0x1-aR;for(let aW=0x0;aW<aN;++aW)aP['push'](aP[aW]);}}let aT=new B(aN,aO,aP,aR,aS)['getPoints'](aP['length']*0xc);return new aB()['setFromPoints'](aT);}},he=class{['parse'](){let aL=[],aM=this['parseClips']();if(aM!==void 0x0)for(let aN in aM){let aO=aM[aN],aP=this['addClip'](aO);aL['push'](aP);}return aL;}['parseClips'](){const cv=bu;if(V['Objects']['AnimationCurve']===void 0x0)return;let aL=this['parseAnimationCurveNodes']();this['parseAnimationCurves'](aL);let aM=this[cv(0x1ee)](aL);return this['parseAnimStacks'](aM);}['parseAnimationCurveNodes'](){const cw=bu;let aL=V[cw(0x1c2)]['AnimationCurveNode'],aM=new Map();for(let aN in aL){let aO=aL[aN];if(aO['attrName']['match'](/S|R|T|DeformPercent/)!==null){let aP={'id':aO['id'],'attr':aO['attrName'],'curves':{}};aM['set'](aP['id'],aP);}}return aM;}[bu(0x15d)](aL){const cx=bu;let aM=V['Objects']['AnimationCurve'];for(let aN in aM){let aO={'id':aM[aN]['id'],'times':aM[aN][cx(0x16a)]['a']['map'](be),'values':aM[aN]['KeyValueFloat']['a']},aP=H['get'](aO['id']);if(aP!==void 0x0){let aQ=aP['parents'][0x0]['ID'],aR=aP[cx(0x1bd)][0x0]['relationship'];aR[cx(0x209)](/X/)?aL[cx(0x13c)](aQ)['curves']['x']=aO:aR[cx(0x209)](/Y/)?aL['get'](aQ)['curves']['y']=aO:aR['match'](/Z/)?aL['get'](aQ)['curves']['z']=aO:aR['match'](/DeformPercent/)&&aL['has'](aQ)&&(aL['get'](aQ)['curves']['morph']=aO);}}}['parseAnimationLayers'](aL){const cy=bu;let aM=V[cy(0x1c2)][cy(0x1bb)],aN=new Map();for(let aO in aM){let aP=[],aQ=H['get'](parseInt(aO));aQ!==void 0x0&&(aQ['children']['forEach'](function(aR,aS){const cz=cy;if(aL[cz(0x144)](aR['ID'])){let aT=aL[cz(0x13c)](aR['ID']);if(aT[cz(0x1e4)]['x']!==void 0x0||aT['curves']['y']!==void 0x0||aT['curves']['z']!==void 0x0){if(aP[aS]===void 0x0){let aU=H[cz(0x13c)](aR['ID'])['parents']['filter'](function(aW){return aW['relationship']!==void 0x0;});if(aU['length']===0x0)return;let aV=aU[0x0]['ID'];if(aV!==void 0x0){let aW=V[cz(0x1c2)]['Model'][aV['toString']()];if(aW===void 0x0){console['warn']('THREE.FBXLoader:\x20Encountered\x20a\x20unused\x20curve.',aR);return;}let aX={'modelName':aW['attrName']?aD['sanitizeNodeName'](aW['attrName']):'','ID':aW['id'],'initialPosition':[0x0,0x0,0x0],'initialRotation':[0x0,0x0,0x0],'initialScale':[0x1,0x1,0x1]};U['traverse'](function(aY){const cA=cz;aY['ID']===aW['id']&&(aX['transform']=aY['matrix'],aY['userData']['transformData']&&(aX['eulerOrder']=aY['userData']['transformData'][cA(0x136)],aY['userData'][cA(0x1ab)]['rotation']&&(aX['initialRotation']=aY['userData']['transformData'][cA(0x1d5)])));}),aX['transform']||(aX['transform']=new a2()),'PreRotation'in aW&&(aX['preRotation']=aW['PreRotation']['value']),'PostRotation'in aW&&(aX['postRotation']=aW['PostRotation']['value']),aP[aS]=aX;}}aP[aS]&&(aP[aS][aT[cz(0x1b7)]]=aT);}else{if(aT[cz(0x1e4)]['morph']!==void 0x0){if(aP[aS]===void 0x0){let aY=H['get'](aR['ID'])[cz(0x1bd)][cz(0x182)](function(b4){const cB=cz;return b4[cB(0x18d)]!==void 0x0;});if(aY['length']===0x0)return;let aZ=aY[0x0]['ID'],b0=H['get'](aZ)['parents'][0x0]['ID'],b1=H[cz(0x13c)](b0)['parents'][0x0]['ID'],b2=H['get'](b1)['parents'][0x0]['ID'],b3=V['Objects']['Model'][b2];aP[aS]={'modelName':b3['attrName']?aD[cz(0x1a9)](b3['attrName']):'','morphName':V['Objects']['Deformer'][aZ]['attrName']};}aP[aS][aT['attr']]=aT;}}}}),aN['set'](parseInt(aO),aP));}return aN;}['parseAnimStacks'](aL){const cC=bu;let aM=V['Objects']['AnimationStack'],aN={};for(let aO in aM){let aP=H['get'](parseInt(aO))['children'];aP[cC(0x17d)]>0x1&&console[cC(0x151)]('THREE.FBXLoader:\x20Encountered\x20an\x20animation\x20stack\x20with\x20multiple\x20layers,\x20this\x20is\x20currently\x20not\x20supported.\x20Ignoring\x20subsequent\x20layers.');let aQ=aL['get'](aP[0x0]['ID']);aN[aO]={'name':aM[aO]['attrName'],'layer':aQ};}return aN;}['addClip'](aL){let aM=[],aN=this;return aL['layer']['forEach'](function(aO){aM=aM['concat'](aN['generateTracks'](aO));}),new az(aL['name'],-0x1,aM);}['generateTracks'](aL){const cD=bu;let aM=[],aN=new a3(),aO=new a3();if(aL[cD(0x1fe)]&&aL['transform']['decompose'](aN,new aH(),aO),aN=aN['toArray'](),aO=aO['toArray'](),aL['T']!==void 0x0&&Object['keys'](aL['T']['curves'])['length']>0x0){let aP=this['generateVectorTrack'](aL['modelName'],aL['T']['curves'],aN,cD(0x149));aP!==void 0x0&&aM['push'](aP);}if(aL['R']!==void 0x0&&Object['keys'](aL['R']['curves'])['length']>0x0){let aQ=this['generateRotationTrack'](aL['modelName'],aL['R']['curves'],aL['preRotation'],aL['postRotation'],aL[cD(0x136)],aL['initialRotation']);aQ!==void 0x0&&aM['push'](aQ);}if(aL['S']!==void 0x0&&Object['keys'](aL['S']['curves'])['length']>0x0){let aR=this['generateVectorTrack'](aL['modelName'],aL['S']['curves'],aO,'scale');aR!==void 0x0&&aM[cD(0x1b9)](aR);}if(aL['DeformPercent']!==void 0x0){let aS=this[cD(0x1db)](aL);aS!==void 0x0&&aM['push'](aS);}return aM;}[bu(0x1eb)](aL,aM,aN,aO){let aP=this['getTimesForAllAxes'](aM),aQ=this['getKeyframeTrackValues'](aP,aM,aN);return new aa(aL+'.'+aO,aP,aQ);}['generateRotationTrack'](aL,aM,aN,aO,aP,aQ){const cE=bu;let aR,aS;if(aM['x']!==void 0x0||aM['y']!==void 0x0||aM['z']!==void 0x0){let aX=this['getTimesForAllAxes'](aM);if(aX['length']>0x0){let aY=aQ||[0x0,0x0,0x0],aZ=this[cE(0x1ae)](aM['x'],aX,aY[0x0]),b0=this['synchronizeCurve'](aM['y'],aX,aY[0x1]),b1=this['synchronizeCurve'](aM['z'],aX,aY[0x2]),b2=this['interpolateRotations'](aZ,b0,b1,aP);aR=b2[0x0],aS=b2[0x1];}}let aT=Z(0x0);aN!==void 0x0&&(aN=aN['map'](al['degToRad']),aN['push'](aT),aN=new aj()['fromArray'](aN),aN=new aH()['setFromEuler'](aN)),aO!==void 0x0&&(aO=aO['map'](al[cE(0x19c)]),aO['push'](aT),aO=new aj()['fromArray'](aO),aO=new aH()['setFromEuler'](aO)['invert']());let aU=new aH(),aV=new aj(),aW=[];if(!(!aS||!aR)){for(let b3=0x0;b3<aS['length'];b3+=0x3)aV['set'](aS[b3],aS[b3+0x1],aS[b3+0x2],aP),aU['setFromEuler'](aV),aN!==void 0x0&&aU['premultiply'](aN),aO!==void 0x0&&aU['multiply'](aO),b3>0x2&&new aH()['fromArray'](aW,(b3-0x3)/0x3*0x4)['dot'](aU)<0x0&&aU[cE(0x142)](-aU['x'],-aU['y'],-aU['z'],-aU['w']),aU['toArray'](aW,b3/0x3*0x4);return new an(aL+'.quaternion',aR,aW);}}['generateMorphTrack'](aL){const cF=bu;let aM=aL['DeformPercent']['curves']['morph'],aN=aM[cF(0x167)][cF(0x168)](function(aP){return aP/0x64;}),aO=U[cF(0x1c8)](aL['modelName'])['morphTargetDictionary'][aL['morphName']];return new aC(aL['modelName']+'.morphTargetInfluences['+aO+']',aM['times'],aN);}[bu(0x1aa)](aL){const cG=bu;let aM=[];if(aL['x']!==void 0x0&&(aM=aM[cG(0x1c9)](aL['x']['times'])),aL['y']!==void 0x0&&(aM=aM['concat'](aL['y']['times'])),aL['z']!==void 0x0&&(aM=aM['concat'](aL['z']['times'])),aM=aM['sort'](function(aN,aO){return aN-aO;}),aM['length']>0x1){let aN=0x1,aO=aM[0x0];for(let aP=0x1;aP<aM['length'];aP++){let aQ=aM[aP];aQ!==aO&&(aM[aN]=aQ,aO=aQ,aN++);}aM=aM['slice'](0x0,aN);}return aM;}['getKeyframeTrackValues'](aL,aM,aN){let aO=aN,aP=[],aQ=-0x1,aR=-0x1,aS=-0x1;return aL['forEach'](function(aT){const cH=a1;if(aM['x']&&(aQ=aM['x']['times'][cH(0x1d3)](aT)),aM['y']&&(aR=aM['y']['times']['indexOf'](aT)),aM['z']&&(aS=aM['z']['times'][cH(0x1d3)](aT)),aQ!==-0x1){let aU=aM['x']['values'][aQ];aP['push'](aU),aO[0x0]=aU;}else aP['push'](aO[0x0]);if(aR!==-0x1){let aV=aM['y']['values'][aR];aP['push'](aV),aO[0x1]=aV;}else aP['push'](aO[0x1]);if(aS!==-0x1){let aW=aM['z']['values'][aS];aP['push'](aW),aO[0x2]=aW;}else aP['push'](aO[0x2]);}),aP;}['synchronizeCurve'](aL,aM,aN){const cI=bu;if(aL===void 0x0)return{'times':aM,'values':aM['map'](()=>aN)};if(aL[cI(0x134)]['length']===aM['length'])return aL;let aO=[];for(let aP=0x0;aP<aM['length'];aP++)aO[cI(0x1b9)](this['sampleCurveValue'](aL,aM[aP],aN));return{'times':aM,'values':aO};}['sampleCurveValue'](aL,aM,aN){const cJ=bu;let aO=aL['times'],aP=aL[cJ(0x167)];if(aM<=aO[0x0])return aP[0x0];if(aM>=aO[aO['length']-0x1])return aP[aP['length']-0x1];for(let aQ=0x0;aQ<aO['length']-0x1;aQ++)if(aM>=aO[aQ]&&aM<=aO[aQ+0x1]){if(aO[aQ]===aM)return aP[aQ];let aR=(aM-aO[aQ])/(aO[aQ+0x1]-aO[aQ]);return aP[aQ]*(0x1-aR)+aP[aQ+0x1]*aR;}return aN;}['interpolateRotations'](aL,aM,aN,aO){const cK=bu;let aP=[],aQ=[];aP['push'](aL[cK(0x134)][0x0]),aQ['push'](al[cK(0x19c)](aL['values'][0x0])),aQ['push'](al[cK(0x19c)](aM[cK(0x167)][0x0])),aQ['push'](al['degToRad'](aN[cK(0x167)][0x0]));for(let aR=0x1;aR<aL['values']['length'];aR++){let aS=[aL['values'][aR-0x1],aM['values'][aR-0x1],aN['values'][aR-0x1]];if(isNaN(aS[0x0])||isNaN(aS[0x1])||isNaN(aS[0x2]))continue;let aT=aS[cK(0x168)](al['degToRad']),aU=[aL['values'][aR],aM['values'][aR],aN['values'][aR]];if(isNaN(aU[0x0])||isNaN(aU[0x1])||isNaN(aU[0x2]))continue;let aV=aU['map'](al['degToRad']),aW=[aU[0x0]-aS[0x0],aU[0x1]-aS[0x1],aU[0x2]-aS[0x2]],aX=[Math['abs'](aW[0x0]),Math['abs'](aW[0x1]),Math['abs'](aW[0x2])];if(aX[0x0]>=0xb4||aX[0x1]>=0xb4||aX[0x2]>=0xb4){let aY=Math[cK(0x1a1)](...aX)/0xb4,aZ=new aj(...aT,aO),b0=new aj(...aV,aO),b1=new aH()['setFromEuler'](aZ),b2=new aH()[cK(0x188)](b0);b1['dot'](b2)<0x0&&b2['set'](-b2['x'],-b2['y'],-b2['z'],-b2['w']);let b3=aL[cK(0x134)][aR-0x1],b4=aL[cK(0x134)][aR]-b3,b5=new aH(),b6=new aj();for(let b7=0x0;b7<0x1;b7+=0x1/aY)b5['copy'](b1['clone']()[cK(0x15c)](b2['clone'](),b7)),aP['push'](b3+b7*b4),b6[cK(0x146)](b5,aO),aQ['push'](b6['x']),aQ[cK(0x1b9)](b6['y']),aQ[cK(0x1b9)](b6['z']);}else aP['push'](aL[cK(0x134)][aR]),aQ[cK(0x1b9)](al['degToRad'](aL['values'][aR])),aQ['push'](al['degToRad'](aM['values'][aR])),aQ[cK(0x1b9)](al['degToRad'](aN['values'][aR]));}return[aP,aQ];}},ge=class{['getPrevNode'](){return this['nodeStack'][this['currentIndent']-0x2];}['getCurrentNode'](){return this['nodeStack'][this['currentIndent']-0x1];}['getCurrentProp'](){return this['currentProp'];}['pushStack'](aL){this['nodeStack']['push'](aL),this['currentIndent']+=0x1;}['popStack'](){const cL=bu;this['nodeStack'][cL(0x1e6)](),--this['currentIndent'];}['setCurrentProp'](aL,aM){const cM=bu;this['currentProp']=aL,this[cM(0x141)]=aM;}['parse'](aL){const cN=bu;this['currentIndent']=0x0,this['allNodes']=new G(),this['nodeStack']=[],this[cN(0x214)]=[],this['currentPropName']='';let aM=this,aN=aL['split'](/[\r\n]+/);return aN['forEach'](function(aO,aP){const cO=cN;let aQ=aO[cO(0x209)](/^[\s\t]*;/),aR=aO[cO(0x209)](/^[\s\t]*$/);if(aQ||aR)return;let aS=aO['match']('^\x5ct{'+aM[cO(0x210)]+'}(\x5cw+):(.*){',''),aT=aO['match']('^\x5ct{'+aM['currentIndent']+cO(0x183)),aU=aO['match']('^\x5ct{'+(aM['currentIndent']-0x1)+'}}');aS?aM[cO(0x19f)](aO,aS):aT?aM['parseNodeProperty'](aO,aT,aN[++aP]):aU?aM['popStack']():aO['match'](/^[^\s\t}]/)&&aM['parseNodePropertyContinued'](aO);}),this['allNodes'];}['parseNodeBegin'](aL,aM){const cP=bu;let aN=aM[0x1]['trim']()['replace'](/^"/,'')['replace'](/"$/,''),aO=aM[0x2]['split'](',')['map'](function(aS){return aS['trim']()['replace'](/^"/,'')['replace'](/"$/,'');}),aP={'name':aN},aQ=this['parseNodeAttr'](aO),aR=this['getCurrentNode']();this[cP(0x210)]===0x0?this['allNodes']['add'](aN,aP):aN in aR?(aN==='PoseNode'?aR['PoseNode']['push'](aP):aR[aN]['id']!==void 0x0&&(aR[aN]={},aR[aN][aR[aN]['id']]=aR[aN]),aQ['id']!==''&&(aR[aN][aQ['id']]=aP)):typeof aQ['id']=='number'?(aR[aN]={},aR[aN][aQ['id']]=aP):aN!=='Properties70'&&(aN==='PoseNode'?aR[aN]=[aP]:aR[aN]=aP),typeof aQ['id']=='number'&&(aP['id']=aQ['id']),aQ['name']!==''&&(aP['attrName']=aQ['name']),aQ['type']!==''&&(aP[cP(0x19b)]=aQ['type']),this['pushStack'](aP);}[bu(0x147)](aL){let aM=aL[0x0];aL[0x0]!==''&&(aM=parseInt(aL[0x0]),isNaN(aM)&&(aM=aL[0x0]));let aN='',aO='';return aL['length']>0x1&&(aN=aL[0x1]['replace'](/^(\w+)::/,''),aO=aL[0x2]),{'id':aM,'name':aN,'type':aO};}['parseNodeProperty'](aL,aM,aN){const cQ=bu;let aO=aM[0x1]['replace'](/^"/,'')['replace'](/"$/,'')['trim'](),aP=aM[0x2]['replace'](/^"/,'')['replace'](/"$/,'')['trim']();aO===cQ(0x1b1)&&aP===','&&(aP=aN['replace'](/"/g,'')['replace'](/,$/,'')[cQ(0x1a7)]());let aQ=this['getCurrentNode']();if(aQ['name']==='Properties70'){this['parseNodeSpecialProperty'](aL,aO,aP);return;}if(aO==='C'){let aR=aP[cQ(0x1f4)](',')[cQ(0x21b)](0x1),aS=parseInt(aR[0x0]),aT=parseInt(aR[0x1]),aU=aP['split'](',')[cQ(0x21b)](0x3);aU=aU['map'](function(aV){return aV['trim']()['replace'](/^"/,'');}),aO='connections',aP=[aS,aT],Se(aP,aU),aQ[aO]===void 0x0&&(aQ[aO]=[]);}aO==='Node'&&(aQ['id']=aP),aO in aQ&&Array['isArray'](aQ[aO])?aQ[aO][cQ(0x1b9)](aP):aO==='a'?aQ['a']=aP:aQ[aO]=aP,this['setCurrentProp'](aQ,aO),aO==='a'&&aP['slice'](-0x1)!==','&&(aQ['a']=Q(aP));}[bu(0x1dd)](aL){let aM=this['getCurrentNode']();aM['a']+=aL,aL['slice'](-0x1)!==','&&(aM['a']=Q(aM['a']));}['parseNodeSpecialProperty'](aL,aM,aN){const cR=bu;let aO=aN['split']('\x22,')['map'](function(aU){return aU['trim']()['replace'](/^\"/,'')['replace'](/\s/,'_');}),aP=aO[0x0],aQ=aO[0x1],aR=aO[0x2],aS=aO[0x3],aT=aO[0x4];switch(aQ){case'int':case'enum':case'bool':case'ULongLong':case'double':case'Number':case'FieldOfView':aT=parseFloat(aT);break;case'Color':case'ColorRGB':case'Vector3D':case'Lcl_Translation':case cR(0x199):case cR(0x206):aT=Q(aT);break;}this['getPrevNode']()[aP]={'type':aQ,'type2':aR,'flag':aS,'value':aT},this[cR(0x21a)](this[cR(0x20a)](),aP);}},_e=class{[bu(0x19e)](aL){const cS=bu;let aM=new W(aL);aM['skip'](0x17);let aN=aM['getUint32']();if(aN<0x1900)throw Error(cS(0x161)+aN);let aO=new G();for(;!this['endOfContent'](aM);){let aP=this['parseNode'](aM,aN);aP!==null&&aO['add'](aP['name'],aP);}return aO;}['endOfContent'](aL){const cT=bu;return aL['size']()%0x10==0x0?(aL['getOffset']()+0xa0+0x10&-0x10)>=aL['size']():aL[cT(0x139)]()+0xa0+0x10>=aL['size']();}['parseNode'](aL,aM){const cU=bu;let aN={},aO=aM>=0x1d4c?aL['getUint64']():aL['getUint32'](),aP=aM>=0x1d4c?aL['getUint64']():aL['getUint32']();aM>=0x1d4c?aL['getUint64']():aL['getUint32']();let aQ=aL['getUint8'](),aR=aL['getString'](aQ);if(aO===0x0)return null;let aS=[];for(let aW=0x0;aW<aP;aW++)aS['push'](this['parseProperty'](aL));let aT=aS[cU(0x17d)]>0x0?aS[0x0]:'',aU=aS[cU(0x17d)]>0x1?aS[0x1]:'',aV=aS['length']>0x2?aS[0x2]:'';for(aN['singleProperty']=aP===0x1&&aL[cU(0x139)]()===aO;aO>aL[cU(0x139)]();){let aX=this['parseNode'](aL,aM);aX!==null&&this['parseSubNode'](aR,aN,aX);}return aN['propertyList']=aS,typeof aT=='number'&&(aN['id']=aT),aU!==''&&(aN['attrName']=aU),aV!==''&&(aN['attrType']=aV),aR!==''&&(aN[cU(0x166)]=aR),aN;}['parseSubNode'](aL,aM,aN){const cV=bu;if(aN[cV(0x153)]===!0x0){let aO=aN['propertyList'][0x0];Array['isArray'](aO)?(aM[aN['name']]=aN,aN['a']=aO):aM[aN['name']]=aO;}else{if(aL==='Connections'&&aN['name']==='C'){let aP=[];aN['propertyList']['forEach'](function(aQ,aR){aR!==0x0&&aP['push'](aQ);}),aM['connections']===void 0x0&&(aM['connections']=[]),aM['connections']['push'](aP);}else{if(aN['name']==='Properties70')Object['keys'](aN)['forEach'](function(aQ){aM[aQ]=aN[aQ];});else{if(aL===cV(0x1ea)&&aN['name']==='P'){let aQ=aN['propertyList'][0x0],aR=aN['propertyList'][0x1],aS=aN['propertyList'][0x2],aT=aN['propertyList'][0x3],aU;aQ[cV(0x1d3)]('Lcl\x20')===0x0&&(aQ=aQ['replace']('Lcl\x20','Lcl_')),aR['indexOf']('Lcl\x20')===0x0&&(aR=aR['replace']('Lcl\x20','Lcl_')),aU=aR==='Color'||aR==='ColorRGB'||aR===cV(0x215)||aR===cV(0x15b)||aR['indexOf']('Lcl_')===0x0?[aN['propertyList'][0x4],aN['propertyList'][0x5],aN['propertyList'][0x6]]:aN['propertyList'][0x4],aM[aQ]={'type':aR,'type2':aS,'flag':aT,'value':aU};}else aM[aN['name']]===void 0x0?typeof aN['id']=='number'?(aM[aN['name']]={},aM[aN['name']][aN['id']]=aN):aM[aN['name']]=aN:aN[cV(0x166)]==='PoseNode'?(Array['isArray'](aM[aN['name']])||(aM[aN['name']]=[aM[aN['name']]]),aM[aN['name']]['push'](aN)):aM[aN['name']][aN['id']]===void 0x0&&(aM[aN[cV(0x166)]][aN['id']]=aN);}}}}['parseProperty'](aL){const cW=bu;let aM=aL['getString'](0x1),aN;switch(aM){case'C':return aL['getBoolean']();case'D':return aL['getFloat64']();case'F':return aL['getFloat32']();case'I':return aL[cW(0x14d)]();case'L':return aL[cW(0x178)]();case'R':return aN=aL[cW(0x1e2)](),aL['getArrayBuffer'](aN);case'S':return aN=aL['getUint32'](),aL['getString'](aN);case'Y':return aL['getInt16']();case'b':case'c':case'd':case'f':case'i':case'l':let aO=aL['getUint32'](),aP=aL[cW(0x1e2)](),aQ=aL[cW(0x1e2)]();if(aP===0x0)switch(aM){case'b':case'c':return aL[cW(0x163)](aO);case'd':return aL['getFloat64Array'](aO);case'f':return aL['getFloat32Array'](aO);case'i':return aL['getInt32Array'](aO);case'l':return aL['getInt64Array'](aO);}let aR=new W(aK(new Uint8Array(aL[cW(0x13b)](aQ)))['buffer']);switch(aM){case'b':case'c':return aR['getBooleanArray'](aO);case'd':return aR['getFloat64Array'](aO);case'f':return aR['getFloat32Array'](aO);case'i':return aR['getInt32Array'](aO);case'l':return aR['getInt64Array'](aO);}break;default:throw Error('THREE.FBXLoader:\x20Unknown\x20property\x20type\x20'+aM);}}},W=class{constructor(aL,aM){const cX=bu;this['dv']=new DataView(aL),this['offset']=0x0,this['littleEndian']=aM===void 0x0?!0x0:aM,this[cX(0x1ca)]=new TextDecoder();}['getOffset'](){return this['offset'];}['size'](){return this['dv']['buffer']['byteLength'];}[bu(0x15a)](aL){this['offset']+=aL;}[bu(0x1c7)](){return(this['getUint8']()&0x1)==0x1;}[bu(0x163)](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getBoolean']());return aM;}['getUint8'](){let aL=this['dv']['getUint8'](this['offset']);return this['offset']+=0x1,aL;}['getInt16'](){let aL=this['dv']['getInt16'](this['offset'],this['littleEndian']);return this['offset']+=0x2,aL;}['getInt32'](){let aL=this['dv']['getInt32'](this['offset'],this['littleEndian']);return this['offset']+=0x4,aL;}['getInt32Array'](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getInt32']());return aM;}['getUint32'](){const cY=bu;let aL=this['dv']['getUint32'](this[cY(0x18e)],this[cY(0x201)]);return this['offset']+=0x4,aL;}[bu(0x178)](){const cZ=bu;let aL,aM;return this['littleEndian']?(aL=this['getUint32'](),aM=this['getUint32']()):(aM=this[cZ(0x1e2)](),aL=this['getUint32']()),aM&0x80000000?(aM=~aM&0xffffffff,aL=~aL&0xffffffff,aL===0xffffffff&&(aM=aM+0x1&0xffffffff),aL=aL+0x1&0xffffffff,-(aM*0x100000000+aL)):aM*0x100000000+aL;}['getInt64Array'](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getInt64']());return aM;}['getUint64'](){const d0=bu;let aL,aM;return this['littleEndian']?(aL=this['getUint32'](),aM=this[d0(0x1e2)]()):(aM=this['getUint32'](),aL=this['getUint32']()),aM*0x100000000+aL;}[bu(0x16d)](){let aL=this['dv']['getFloat32'](this['offset'],this['littleEndian']);return this['offset']+=0x4,aL;}['getFloat32Array'](aL){const d1=bu;let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this[d1(0x16d)]());return aM;}['getFloat64'](){const d2=bu;let aL=this['dv']['getFloat64'](this[d2(0x18e)],this['littleEndian']);return this['offset']+=0x8,aL;}['getFloat64Array'](aL){const d3=bu;let aM=[];for(let aN=0x0;aN<aL;aN++)aM[d3(0x1b9)](this['getFloat64']());return aM;}['getArrayBuffer'](aL){let aM=this['dv']['buffer']['slice'](this['offset'],this['offset']+aL);return this['offset']+=aL,aM;}['getString'](aL){const d4=bu;let aM=this['offset'],aN=new Uint8Array(this['dv']['buffer'],aM,aL);this['skip'](aL);let aO=aN['indexOf'](0x0);return aO>=0x0&&(aN=new Uint8Array(this['dv']['buffer'],aM,aO)),this['_textDecoder'][d4(0x198)](aN);}},G=class{['add'](aL,aM){this[aL]=aM;}};function a0(){const d9=['Intensity','fromArray','decode','Lcl_Rotation','normal','attrType','degToRad','ColorRGB','parse','parseNodeBegin','crossOrigin','max','Mesh','updateMatrixWorld','animations','LookAtProperty','toArray','trim','bind','sanitizeNodeName','getTimesForAllAxes','transformData','Weights','scalingPivot','synchronizeCurve','NormalsIndex','add','Content','material','803590yMGnHa','setResponseType','parseNormals','429310STWMaV','attr','vertex','push','parseConnections','AnimationLayer','attributes','parents','Normals','buffer','Texture','DisplacementColor','Objects','FullWeights','Specular','parseMaterials','Maya|TEX_color_map','getBoolean','getObjectByName','concat','_textDecoder','normalize','byteLength','UpAxis','XZY','InheritType','EmissiveColor','parsePoseNodes','uvs','indexOf','quaternion','rotation','32pNqxHZ','GlobalSettings','addGroup','withCredentials','materialIndex','generateMorphTrack','endKnot','parseNodePropertyContinued','PostRotation','Vertices','inheritType','load','getUint32','geoID','curves','toLowerCase','pop','rawBones','userData','mapping','Properties70','generateVectorTrack','AspectWidth','Geometry','parseAnimationLayers','knots','buildSkeleton','500876hkVwkV','setPath','rotationOffset','split','manager','IndexToDirect','Pose','NoMappingInformation','DEFAULT_MATERIAL_NAME','image/tiff','getTexture','indices','extractUrlBase','transform','Scaling','parseUVs','littleEndian','setLookAtProperties','LayeredTexture','children','arraybuffer','Lcl_Scaling','triangulateShape','error','match','getPrevNode','isBone','divideScalar','reduce','parseScene','parseModels','currentIndent','Bump','postRotation','OuterAngle','currentProp','Vector','AmbientColor','ColorIndex','copy','specular','setCurrentProp','slice','Lcl_Translation','negativeMaterialIndices','times','makeRotationFromEuler','eulerOrder','RotationOffset','vertexWeights','getOffset','skeletons','getArrayBuffer','get','colors','NormalIndex','abs','869gVzqbu','currentPropName','set','parseTexture','has','createMesh','setFromQuaternion','parseNodeAttr','multiply','position','weightsIndices','startKnot','NurbsCurve','getInt32','colorSpaceToWorking','addMorphTargets','Root','warn','emissiveMap','singleProperty','THREE.FBXLoader:\x20Orthographic\x20cameras\x20not\x20supported\x20yet.','controlPoints','958802SIvuFD','5298099xGgKOL','RotationOrder','matrixWorld','skip','Vector3D','slerp','parseAnimationCurves','42SkjPoN','setAttribute','DiffuseColor','THREE.FBXLoader:\x20FBX\x20version\x20not\x20supported,\x20FileVersion:\x20','parseGeoNode','getBooleanArray','Indexes','Form','name','values','map','getHandler','KeyTime','4EvsgiD','THREE.FBXLoader:\x20Vertex\x20has\x20more\x20than\x204\x20skinning\x20weights\x20assigned\x20to\x20vertex.\x20Deleting\x20additional\x20weights.','getFloat32','opacity','attrName','FieldOfView','scale','parseTextures','forEach','Translation','blob:','alphaMap','value','getInt64','parseMaterial','RelativeFilename','Colors','updateWorldMatrix','length','getNormalMatrix','invert','AllSame','color','filter','}(\x5cw+):[\x5cs\x5ct\x5cr\x5cn](.*)','parseVertexColors','fromJSON','52140NCEBdd','AspectHeight','setFromEuler','translation','parent','morphTargetsRelative','parentMatrixWorld','relationship','offset','MappingInformationType','transformLink','envMap','bumpScale','image/bmp','3918843ivLdfu','clone'];a0=function(){return d9;};return a0();}function ve(aL){return aL['byteLength']>=0x15&&$(aL,0x0,0x15)==='Kaydara\x20FBX\x20Binary\x20\x20\x00';}function ye(aL){let aM=['K','a','y','d','a','r','a','\x5c','F','B','X','\x5c','B','i','n','a','r','y','\x5c','\x5c'],aN=0x0;function aO(aP){let aQ=aL[aP-0x1];return aL=aL['slice'](aN+aP),aN++,aQ;}for(let aP=0x0;aP<aM['length'];++aP)if(aO(0x1)===aM[aP])return!0x1;return!0x0;}function K(aL){let aM=aL['match'](/FBXVersion: (\d+)/);if(aM)return parseInt(aM[0x1]);throw Error('THREE.FBXLoader:\x20Cannot\x20find\x20the\x20version\x20number\x20for\x20the\x20file\x20given.');}function a1(a,b){a=a-0x132;const c=a0();let d=c[a];return d;}function be(aL){return aL/0xac0e8d7b0;}var xe=[];function q(aL,aM,aN,aO){const d5=bu;let aP;switch(aO['mappingType']){case'ByPolygonVertex':aP=aL;break;case'ByPolygon':aP=aM;break;case'ByVertice':aP=aN;break;case'AllSame':aP=aO['indices'][0x0];break;default:console['warn']('THREE.FBXLoader:\x20unknown\x20attribute\x20mapping\x20type\x20'+aO['mappingType']);}aO['referenceType']===d5(0x1f6)&&(aP=aO[d5(0x1fc)][aP]);let aQ=aP*aO['dataSize'],aR=aQ+aO['dataSize'];return Ce(xe,aO[d5(0x1bf)],aQ,aR);}var J=new aj(),Y=new a3();function X(aL){const d6=bu;let aM=new a2(),aN=new a2(),aO=new a2(),aP=new a2(),aQ=new a2(),aR=new a2(),aS=new a2(),aT=new a2(),aU=new a2(),aV=new a2(),aW=new a2(),aX=new a2(),aY=aL['inheritType']?aL['inheritType']:0x0;aL['translation']&&aM['setPosition'](Y['fromArray'](aL['translation']));let aZ=Z(0x0);if(aL['preRotation']){let bc=aL['preRotation']['map'](al['degToRad']);bc['push'](aZ),aN[d6(0x135)](J['fromArray'](bc));}if(aL['rotation']){let bd=aL['rotation'][d6(0x168)](al['degToRad']);bd['push'](aL['eulerOrder']||aZ),aO['makeRotationFromEuler'](J[d6(0x197)](bd));}if(aL['postRotation']){let bf=aL[d6(0x212)]['map'](al['degToRad']);bf['push'](aZ),aP['makeRotationFromEuler'](J[d6(0x197)](bf)),aP[d6(0x17f)]();}aL['scale']&&aQ['scale'](Y['fromArray'](aL['scale'])),aL['scalingOffset']&&aS['setPosition'](Y['fromArray'](aL['scalingOffset'])),aL['scalingPivot']&&aR['setPosition'](Y['fromArray'](aL[d6(0x1ad)])),aL['rotationOffset']&&aT['setPosition'](Y['fromArray'](aL[d6(0x1f3)])),aL['rotationPivot']&&aU['setPosition'](Y['fromArray'](aL['rotationPivot'])),aL[d6(0x18c)]&&(aW[d6(0x218)](aL['parentMatrix']),aV['copy'](aL[d6(0x18c)]));let b0=aN[d6(0x195)]()['multiply'](aO)['multiply'](aP),b1=new a2();b1['extractRotation'](aV);let b2=new a2();b2['copyPosition'](aV);let b3=b2['clone']()[d6(0x17f)]()[d6(0x148)](aV),b4=b1['clone']()['invert']()['multiply'](b3),b5=aQ,b6=new a2();if(aY===0x0)b6['copy'](b1)['multiply'](b0)['multiply'](b4)['multiply'](b5);else{if(aY===0x1)b6['copy'](b1)['multiply'](b4)['multiply'](b0)['multiply'](b5);else{let bg=new a2()['scale'](new a3()['setFromMatrixScale'](aW))[d6(0x195)]()['invert'](),bh=b4['clone']()['multiply'](bg);b6['copy'](b1)['multiply'](b0)['multiply'](bh)[d6(0x148)](b5);}}let b7=aU['clone']()['invert'](),b8=aR['clone']()['invert'](),b9=aM['clone']()[d6(0x148)](aT)[d6(0x148)](aU)[d6(0x148)](aN)['multiply'](aO)['multiply'](aP)['multiply'](b7)['multiply'](aS)['multiply'](aR)['multiply'](aQ)['multiply'](b8),ba=new a2()['copyPosition'](b9),bb=aV[d6(0x195)]()['multiply'](ba);return aX['copyPosition'](bb),b9=aX['clone']()['multiply'](b6),b9['premultiply'](aV['invert']()),b9;}function Z(aL){const d7=bu;aL=aL||0x0;let aM=['ZYX','YZX',d7(0x1ce),'ZXY','YXZ','XYZ'];return aL===0x6?(console['warn']('THREE.FBXLoader:\x20unsupported\x20Euler\x20Order:\x20Spherical\x20XYZ.\x20Animations\x20and\x20rotations\x20may\x20be\x20incorrect.'),aM[0x0]):aM[aL];}function Q(aL){return aL['split'](',')['map'](function(aM){return parseFloat(aM);});}function $(aL,aM,aN){const d8=bu;return aM===void 0x0&&(aM=0x0),aN===void 0x0&&(aN=aL[d8(0x1cc)]),new TextDecoder()['decode'](new Uint8Array(aL,aM,aN));}function Se(aL,aM){for(let aN=0x0,aO=aL['length'],aP=aM['length'];aN<aP;aN++,aO++)aL[aO]=aM[aN];}function Ce(aL,aM,aN,aO){for(let aP=aN,aQ=0x0;aP<aO;aP++,aQ++)aL[aQ]=aM[aP];return aL;}export{fe as FBXLoader};
1
+ const bt=a1;function a1(a,b){a=a-0x1ac;const c=a0();let d=c[a];return d;}(function(aL,aM){const bm=a1,aN=aL();while(!![]){try{const aO=parseInt(bm(0x1ee))/0x1+-parseInt(bm(0x1f1))/0x2+parseInt(bm(0x1b1))/0x3+parseInt(bm(0x211))/0x4*(-parseInt(bm(0x26e))/0x5)+-parseInt(bm(0x268))/0x6*(-parseInt(bm(0x1c1))/0x7)+-parseInt(bm(0x1d7))/0x8+parseInt(bm(0x27e))/0x9;if(aO===aM)break;else aN['push'](aN['shift']());}catch(aP){aN['push'](aN['shift']());}}}(a0,0xd5964));import{$ as a2,Bt as a3,C as a4,Ct as a5,Dt as a6,E as a7,Et as a8,Ft as a9,Ht as aa,K as ab,Mt as ac,Ot as ad,Pt as af,Q as ag,R as ah,Rt as ai,S as aj,Vt as ak,Z as al,_ as am,bt as an,dt as ao,et as ap,f as aq,ht as ar,m as as,n as at,nt as au,o as av,p as aw,pt as ax,q as ay,r as az,rt as aA,u as aB,ut as aC,vt as aD,w as aE,wt as aF,x as aG,yt as aH,z as aI,zt as aJ}from'./three.module.js';function a0(){const d3=['parseMaterial','length','parent','vertexWeights','setAttribute','BlendShape','Objects','parse','FBX_Deformer','transparent','getBooleanArray','userData','252fHMKvl','PoseNode','error','generateVectorTrack','colors','target','1513465IZvbhv','scalingOffset','BumpFactor','FarAttenuationEnd','bones','floor','layer','transformLink','RotationOrder','getUint8','attributes','name','modelName','vertex','dot','FileName','5891058jtZyJI','Colors','NormalMap','postRotation','image/tiff','DisplacementFactor','parseGeometry','LightType','NodeAttribute','UnitScaleFactor','Vector3D','Connections','551397UkwhlW','nodeStack','matrix','URL','LayeredTexture','map','parseAnimStacks','normalize','setPath','getCurrentNode','offset','get','getFloat64Array','times','fromArray','slice','117229XPnWKn','getInt64Array','Model','getArrayBuffer','getKeyframeTrackValues','currentIndent','path','setPosition','getUint32','createLight','parseNode','popStack','count','LayerElementUV','opacity','fromJSON','keys','color','abs','allNodes','buffer','degToRad','7794104rzcBVZ','curves','multiply','Deformer','getInt64','currentProp','traverse','generateTracks','replace','Opacity','Content','add','values','push','setFromPoints','type','AmbientColor','materialIndex','isArray','transform','parents','material','ScalingPivot','1225405qkoFWg','sampleCurveValue','mapping','1230664FijTpG','has','indexOf','updateMatrix','parseModels','Material','divideScalar','getInt32Array','makeRotationFromEuler','warn','copyPosition','attrName','PolygonVertexIndex','setFromMatrixScale','parseImage','getFloat32','wrapS','ShadingModel','clone','scale','size','LayerElementNormal','endKnot','Node','morphAttributes','data:','toArray','position','relationship','manager','originalName','EmissiveColor','4BDgGAp','getUint64','parseNodePropertyContinued','NormalIndex','alphaMap','addClip','envMap','connections','colorSpaceToWorking','weightTable','InnerAngle','getString','parseConnections','multiplyScalar','sort','GlobalSettings','Properties70','^\x5ct{','THREE.FBXLoader:\x20Unknown\x20property\x20type\x20','image/bmp','KeyValueFloat','copy','DeformPercent','Cluster','normal','forEach','toLowerCase','inheritType','knots','set','littleEndian','attrType','weightsIndices','AllSame','propertyList','getInt32','Indexes','Lcl_Scaling','Scaling','invert','FullWeights','Camera','getTangent','ColorRGB','GeometricScaling','EmissiveFactor','trim','FarPlane','setFromEuler','PreRotation','value','translation','DisplacementColor','ReflectionFactor','getTexture','baseVertexPositions','filter','Texture','OuterAngle','triangulateShape','createMesh','split','emissive','parseMaterials','bool','Lcl_Translation','getFloat32Array','parseNormals','loadTexture','children','groups','weight','NurbsCurve','rawBones','AnimationStack'];a0=function(){return d3;};return a0();}import{n as aK}from'./fflate.module.js';function R(aL,aM,aN){const bn=a1;let aO=aN['length']-aL-0x1;if(aM>=aN[aO])return aO-0x1;if(aM<=aN[aL])return aL;let aP=aL,aQ=aO,aR=Math[bn(0x273)]((aP+aQ)/0x2);for(;aM<aN[aR]||aM>=aN[aR+0x1];)aM<aN[aR]?aQ=aR:aP=aR,aR=Math['floor']((aP+aQ)/0x2);return aR;}function oe(aL,aM,aN,aO){let aP=[],aQ=[],aR=[];aP[0x0]=0x1;for(let aS=0x1;aS<=aN;++aS){aQ[aS]=aM-aO[aL+0x1-aS],aR[aS]=aO[aL+aS]-aM;let aT=0x0;for(let aU=0x0;aU<aS;++aU){let aV=aR[aU+0x1],aW=aQ[aS-aU],aX=aP[aU]/(aV+aW);aP[aU]=aT+aV*aX,aT=aW*aX;}aP[aS]=aT;}return aP;}function se(aL,aM,aN,aO){let aP=R(aL,aO,aM),aQ=oe(aP,aO,aL,aM),aR=new ak(0x0,0x0,0x0,0x0);for(let aS=0x0;aS<=aL;++aS){let aT=aN[aP-aL+aS],aU=aQ[aS],aV=aT['w']*aU;aR['x']+=aT['x']*aV,aR['y']+=aT['y']*aV,aR['z']+=aT['z']*aV,aR['w']+=aT['w']*aU;}return aR;}function ce(aL,aM,aN,aO,aP){const bo=a1;let aQ=[];for(let aW=0x0;aW<=aN;++aW)aQ[aW]=0x0;let aR=[];for(let aX=0x0;aX<=aO;++aX)aR[aX]=aQ['slice'](0x0);let aS=[];for(let aY=0x0;aY<=aN;++aY)aS[aY]=aQ[bo(0x1c0)](0x0);aS[0x0][0x0]=0x1;let aT=aQ['slice'](0x0),aU=aQ['slice'](0x0);for(let aZ=0x1;aZ<=aN;++aZ){aT[aZ]=aM-aP[aL+0x1-aZ],aU[aZ]=aP[aL+aZ]-aM;let b0=0x0;for(let b1=0x0;b1<aZ;++b1){let b2=aU[b1+0x1],b3=aT[aZ-b1];aS[aZ][b1]=b2+b3;let b4=aS[b1][aZ-0x1]/aS[aZ][b1];aS[b1][aZ]=b0+b2*b4,b0=b3*b4;}aS[aZ][aZ]=b0;}for(let b5=0x0;b5<=aN;++b5)aR[0x0][b5]=aS[b5][aN];for(let b6=0x0;b6<=aN;++b6){let b7=0x0,b8=0x1,b9=[];for(let ba=0x0;ba<=aN;++ba)b9[ba]=aQ['slice'](0x0);b9[0x0][0x0]=0x1;for(let bb=0x1;bb<=aO;++bb){let bc=0x0,bd=b6-bb,bf=aN-bb;b6>=bb&&(b9[b8][0x0]=b9[b7][0x0]/aS[bf+0x1][bd],bc=b9[b8][0x0]*aS[bd][bf]);let bg=bd>=-0x1?0x1:-bd,bh=b6-0x1<=bf?bb-0x1:aN-b6;for(let bj=bg;bj<=bh;++bj)b9[b8][bj]=(b9[b7][bj]-b9[b7][bj-0x1])/aS[bf+0x1][bd+bj],bc+=b9[b8][bj]*aS[bd+bj][bf];b6<=bf&&(b9[b8][bb]=-b9[b7][bb-0x1]/aS[bf+0x1][b6],bc+=b9[b8][bb]*aS[b6][bf]),aR[bb][b6]=bc;let bi=b7;b7=b8,b8=bi;}}let aV=aN;for(let bk=0x1;bk<=aO;++bk){for(let bl=0x0;bl<=aN;++bl)aR[bk][bl]*=aV;aV*=aN-bk;}return aR;}function le(aL,aM,aN,aO,aP){const bp=a1;let aQ=aP<aL?aP:aL,aR=[],aS=R(aL,aO,aM),aT=ce(aS,aO,aL,aQ,aM),aU=[];for(let aV=0x0;aV<aN['length'];++aV){let aW=aN[aV]['clone'](),aX=aW['w'];aW['x']*=aX,aW['y']*=aX,aW['z']*=aX,aU[aV]=aW;}for(let aY=0x0;aY<=aQ;++aY){let aZ=aU[aS-aL]['clone']()['multiplyScalar'](aT[aY][0x0]);for(let b0=0x1;b0<=aL;++b0)aZ[bp(0x1e2)](aU[aS-aL+b0]['clone']()[bp(0x21e)](aT[aY][b0]));aR[aY]=aZ;}for(let b1=aQ+0x1;b1<=aP+0x1;++b1)aR[b1]=new ak(0x0,0x0,0x0);return aR;}function ue(aL,aM){let aN=0x1;for(let aP=0x2;aP<=aL;++aP)aN*=aP;let aO=0x1;for(let aQ=0x2;aQ<=aM;++aQ)aO*=aQ;for(let aR=0x2;aR<=aL-aM;++aR)aO*=aR;return aN/aO;}function de(aL){const bq=a1;let aM=aL[bq(0x25d)],aN=[],aO=[];for(let aQ=0x0;aQ<aM;++aQ){let aR=aL[aQ];aN[aQ]=new a3(aR['x'],aR['y'],aR['z']),aO[aQ]=aR['w'];}let aP=[];for(let aS=0x0;aS<aM;++aS){let aT=aN[aS]['clone']();for(let aU=0x1;aU<=aS;++aU)aT['sub'](aP[aS-aU]['clone']()['multiplyScalar'](ue(aS,aU)*aO[aU]));aP[aS]=aT[bq(0x1f7)](aO[0x0]);}return aP;}function z(aL,aM,aN,aO,aP){return de(le(aL,aM,aN,aO,aP));}var B=class extends am{constructor(aL,aM,aN,aO,aP){const br=a1;super();let aQ=aM?aM[br(0x25d)]-0x1:0x0,aR=aN?aN['length']:0x0;this['degree']=aL,this['knots']=aM,this['controlPoints']=[],this['startKnot']=aO||0x0,this['endKnot']=aP||aQ;for(let aS=0x0;aS<aR;++aS){let aT=aN[aS];this['controlPoints'][aS]=new ak(aT['x'],aT['y'],aT['z'],aT['w']);}}['getPoint'](aL,aM=new a3()){const bs=a1;let aN=aM,aO=this['knots'][this['startKnot']]+aL*(this['knots'][this[bs(0x207)]]-this[bs(0x22d)][this['startKnot']]),aP=se(this['degree'],this['knots'],this['controlPoints'],aO);return aP['w']!==0x1&&aP[bs(0x1f7)](aP['w']),aN['set'](aP['x'],aP['y'],aP['z']);}[bt(0x23b)](aL,aM=new a3()){const bu=bt;let aN=aM,aO=this[bu(0x22d)][0x0]+aL*(this[bu(0x22d)][this['knots']['length']-0x1]-this['knots'][0x0]),aP=z(this['degree'],this['knots'],this['controlPoints'],aO,0x1);return aN[bu(0x226)](aP[0x1])['normalize'](),aN;}['toJSON'](){let aL=super['toJSON']();return aL['degree']=this['degree'],aL['knots']=[...this['knots']],aL['controlPoints']=this['controlPoints']['map'](aM=>aM['toArray']()),aL['startKnot']=this['startKnot'],aL['endKnot']=this['endKnot'],aL;}[bt(0x1d0)](aL){const bv=bt;return super[bv(0x1d0)](aL),this['degree']=aL['degree'],this['knots']=[...aL[bv(0x22d)]],this['controlPoints']=aL['controlPoints']['map'](aM=>new ak(aM[0x0],aM[0x1],aM[0x2],aM[0x3])),this['startKnot']=aL['startKnot'],this[bv(0x207)]=aL[bv(0x207)],this;}},V,H,U,fe=class extends ab{constructor(aL){super(aL);}['load'](aL,aM,aN,aO){let aP=this,aQ=aP['path']===''?ay['extractUrlBase'](aL):aP['path'],aR=new a4(this['manager']);aR['setPath'](aP['path']),aR['setResponseType']('arraybuffer'),aR['setRequestHeader'](aP['requestHeader']),aR['setWithCredentials'](aP['withCredentials']),aR['load'](aL,function(aS){const bw=a1;try{aM(aP[bw(0x263)](aS,aQ));}catch(aT){aO?aO(aT):console[bw(0x26a)](aT),aP['manager']['itemError'](aL);}},aN,aO);}['parse'](aL,aM){if(ve(aL))V=new _e()['parse'](aL);else{let aN=$(aL);if(!ye(aN))throw Error('THREE.FBXLoader:\x20Unknown\x20format.');if(K(aN)<0x1b58)throw Error('THREE.FBXLoader:\x20FBX\x20version\x20not\x20supported,\x20FileVersion:\x20'+K(aN));V=new ge()['parse'](aN);}return new pe(new a9(this['manager'])['setPath'](this['resourcePath']||aM)['setCrossOrigin'](this['crossOrigin']),this['manager'])['parse'](V);}},pe=class{constructor(aL,aM){this['textureLoader']=aL,this['manager']=aM;}['parse'](){const bx=bt;H=this[bx(0x21d)]();let aL=this['parseImages'](),aM=this['parseTextures'](aL),aN=this['parseMaterials'](aM),aO=this['parseDeformers'](),aP=new me()['parse'](aO);return this['parseScene'](aO,aP,aN),U;}['parseConnections'](){let aL=new Map();return'Connections'in V&&V['Connections']['connections']['forEach'](function(aM){const by=a1;let aN=aM[0x0],aO=aM[0x1],aP=aM[0x2];aL['has'](aN)||aL['set'](aN,{'parents':[],'children':[]});let aQ={'ID':aO,'relationship':aP};aL[by(0x1bc)](aN)['parents']['push'](aQ),aL['has'](aO)||aL['set'](aO,{'parents':[],'children':[]});let aR={'ID':aN,'relationship':aP};aL['get'](aO)[by(0x256)]['push'](aR);}),aL;}['parseImages'](){const bz=bt;let aL={},aM={};if('Video'in V['Objects']){let aN=V[bz(0x262)]['Video'];for(let aO in aN){let aP=aN[aO],aQ=parseInt(aO);if(aL[aQ]=aP['RelativeFilename']||aP['Filename'],'Content'in aP){let aR=aP['Content']instanceof ArrayBuffer&&aP['Content']['byteLength']>0x0,aS=typeof aP['Content']=='string'&&aP[bz(0x1e1)]!=='';if(aR||aS){let aT=this[bz(0x1ff)](aN[aO]);aM[aP['RelativeFilename']||aP['Filename']]=aT;}}}}for(let aU in aL){let aV=aL[aU];aM[aV]===void 0x0?aL[aU]=aL[aU]['split']('\x5c')['pop']():aL[aU]=aM[aV];}return aL;}['parseImage'](aL){const bA=bt;let aM=aL['Content'],aN=aL['RelativeFilename']||aL['Filename'],aO=aN[bA(0x1c0)](aN['lastIndexOf']('.')+0x1)[bA(0x22b)](),aP;switch(aO){case'bmp':aP=bA(0x224);break;case'jpg':case'jpeg':aP='image/jpeg';break;case'png':aP='image/png';break;case'tif':aP=bA(0x282);break;case'tga':this['manager']['getHandler']('.tga')===null&&console[bA(0x1fa)]('FBXLoader:\x20TGA\x20loader\x20not\x20found,\x20skipping\x20',aN),aP='image/tga';break;case'webp':aP='image/webp';break;default:console['warn']('FBXLoader:\x20Image\x20type\x20\x22'+aO+'\x22\x20is\x20not\x20supported.');return;}if(typeof aM=='string')return bA(0x20a)+aP+';base64,'+aM;{let aQ=new Uint8Array(aM);return window[bA(0x1b4)]['createObjectURL'](new Blob([aQ],{'type':aP}));}}['parseTextures'](aL){const bB=bt;let aM=new Map();if(bB(0x24a)in V['Objects']){let aN=V['Objects']['Texture'];for(let aO in aN){let aP=this['parseTexture'](aN[aO],aL);aM['set'](parseInt(aO),aP);}}return aM;}['parseTexture'](aL,aM){const bC=bt;let aN=this['loadTexture'](aL,aM);aN['ID']=aL['id'],aN['name']=aL['attrName'];let aO=aL['WrapModeU'],aP=aL['WrapModeV'],aQ=aO===void 0x0?0x0:aO['value'],aR=aP===void 0x0?0x0:aP['value'];if(aN[bC(0x201)]=aQ===0x0?a5:aq,aN['wrapT']=aR===0x0?a5:aq,'Scaling'in aL){let aS=aL[bC(0x237)]['value'];aN['repeat']['x']=aS[0x0],aN['repeat']['y']=aS[0x1];}if('Translation'in aL){let aT=aL['Translation']['value'];aN[bC(0x1bb)]['x']=aT[0x0],aN['offset']['y']=aT[0x1];}return aN;}[bt(0x255)](aL,aM){const bD=bt;let aN=aL[bD(0x27d)]['split']('.')['pop']()['toLowerCase'](),aO=this[bD(0x20e)]['getHandler']('.'+aN);aO===null&&(aO=this['textureLoader']);let aP=aO[bD(0x1c7)];aP||aO['setPath'](this['textureLoader']['path']);let aQ=H['get'](aL['id'])['children'],aR;if(aQ!==void 0x0&&aQ[bD(0x25d)]>0x0&&aM[aQ[0x0]['ID']]!==void 0x0&&(aR=aM[aQ[0x0]['ID']],(aR['indexOf']('blob:')===0x0||aR['indexOf']('data:')===0x0)&&aO[bD(0x1b9)](void 0x0)),aR===void 0x0)return console['warn']('FBXLoader:\x20Undefined\x20filename,\x20creating\x20placeholder\x20texture.'),new af();let aS=aO['load'](aR);return aO['setPath'](aP),aS;}[bt(0x250)](aL){const bE=bt;let aM=new Map();if(bE(0x1f6)in V['Objects']){let aN=V['Objects'][bE(0x1f6)];for(let aO in aN){let aP=this['parseMaterial'](aN[aO],aL);aP!==null&&aM['set'](parseInt(aO),aP);}}return aM;}[bt(0x25c)](aL,aM){const bF=bt;let aN=aL['id'],aO=aL[bF(0x1fc)],aP=aL[bF(0x202)];if(typeof aP=='object'&&(aP=aP['value']),!H[bF(0x1f2)](aN))return null;let aQ=this['parseParameters'](aL,aM,aN),aR;switch(aP[bF(0x22b)]()){case'phong':aR=new aA();break;case'lambert':aR=new au();break;default:console[bF(0x1fa)]('THREE.FBXLoader:\x20unknown\x20material\x20type\x20\x22%s\x22.\x20Defaulting\x20to\x20MeshPhongMaterial.',aP),aR=new aA();break;}return aR['setValues'](aQ),aR[bF(0x279)]=aO,aR;}['parseParameters'](aL,aM,aN){const bG=bt;let aO={};aL[bG(0x270)]&&(aO['bumpScale']=aL['BumpFactor']['value']),aL['Diffuse']?aO['color']=as['colorSpaceToWorking'](new aw()[bG(0x1bf)](aL['Diffuse']['value']),aF):aL['DiffuseColor']&&(aL['DiffuseColor']['type']==='Color'||aL['DiffuseColor']['type']===bG(0x23c))&&(aO['color']=as[bG(0x219)](new aw()['fromArray'](aL['DiffuseColor']['value']),aF)),aL[bG(0x283)]&&(aO['displacementScale']=aL['DisplacementFactor'][bG(0x243)]),aL['Emissive']?aO['emissive']=as['colorSpaceToWorking'](new aw()['fromArray'](aL['Emissive']['value']),aF):aL['EmissiveColor']&&(aL[bG(0x210)][bG(0x1e6)]==='Color'||aL['EmissiveColor'][bG(0x1e6)]==='ColorRGB')&&(aO[bG(0x24f)]=as['colorSpaceToWorking'](new aw()['fromArray'](aL['EmissiveColor']['value']),aF)),aL[bG(0x23e)]&&(aO['emissiveIntensity']=parseFloat(aL['EmissiveFactor']['value'])),aO[bG(0x1cf)]=0x1-(aL['TransparencyFactor']?parseFloat(aL['TransparencyFactor']['value']):0x0),(aO['opacity']===0x1||aO[bG(0x1cf)]===0x0)&&(aO['opacity']=aL['Opacity']?parseFloat(aL[bG(0x1e0)]['value']):null,aO['opacity']===null&&(aO['opacity']=0x1)),aO['opacity']<0x1&&(aO['transparent']=!0x0),aL[bG(0x246)]&&(aO['reflectivity']=aL['ReflectionFactor']['value']),aL['Shininess']&&(aO['shininess']=aL['Shininess']['value']),aL['Specular']?aO['specular']=as[bG(0x219)](new aw()['fromArray'](aL['Specular']['value']),aF):aL['SpecularColor']&&aL['SpecularColor']['type']==='Color'&&(aO['specular']=as[bG(0x219)](new aw()[bG(0x1bf)](aL['SpecularColor']['value']),aF));let aP=this;return H['get'](aN)['children']['forEach'](function(aQ){const bH=bG;let aR=aQ[bH(0x20d)];switch(aR){case'Bump':aO['bumpMap']=aP['getTexture'](aM,aQ['ID']);break;case'Maya|TEX_ao_map':aO['aoMap']=aP['getTexture'](aM,aQ['ID']);break;case'DiffuseColor':case'Maya|TEX_color_map':aO['map']=aP[bH(0x247)](aM,aQ['ID']),aO['map']!==void 0x0&&(aO['map']['colorSpace']=aF);break;case bH(0x245):aO['displacementMap']=aP['getTexture'](aM,aQ['ID']);break;case'EmissiveColor':aO['emissiveMap']=aP[bH(0x247)](aM,aQ['ID']),aO['emissiveMap']!==void 0x0&&(aO['emissiveMap']['colorSpace']=aF);break;case bH(0x280):case'Maya|TEX_normal_map':aO['normalMap']=aP['getTexture'](aM,aQ['ID']);break;case'ReflectionColor':aO['envMap']=aP['getTexture'](aM,aQ['ID']),aO[bH(0x217)]!==void 0x0&&(aO['envMap'][bH(0x1f0)]=0x12f,aO[bH(0x217)]['colorSpace']=aF);break;case'SpecularColor':aO['specularMap']=aP['getTexture'](aM,aQ['ID']),aO['specularMap']!==void 0x0&&(aO['specularMap']['colorSpace']=aF);break;case'TransparentColor':case'TransparencyFactor':aO[bH(0x215)]=aP['getTexture'](aM,aQ['ID']),aO[bH(0x265)]=!0x0;break;default:console['warn']('THREE.FBXLoader:\x20%s\x20map\x20is\x20not\x20supported\x20in\x20three.js,\x20skipping\x20texture.',aR);break;}}),aO;}['getTexture'](aL,aM){const bI=bt;return'LayeredTexture'in V[bI(0x262)]&&aM in V['Objects'][bI(0x1b5)]&&(console['warn']('THREE.FBXLoader:\x20layered\x20textures\x20are\x20not\x20supported\x20in\x20three.js.\x20Discarding\x20all\x20but\x20first\x20layer.'),aM=H[bI(0x1bc)](aM)[bI(0x256)][0x0]['ID']),aL['get'](aM);}['parseDeformers'](){const bJ=bt;let aL={},aM={};if('Deformer'in V['Objects']){let aN=V['Objects']['Deformer'];for(let aO in aN){let aP=aN[aO],aQ=H[bJ(0x1bc)](parseInt(aO));if(aP['attrType']==='Skin'){let aR=this['parseSkeleton'](aQ,aN);aR['ID']=aO,aQ['parents']['length']>0x1&&console['warn']('THREE.FBXLoader:\x20skeleton\x20attached\x20to\x20more\x20than\x20one\x20geometry\x20is\x20not\x20supported.'),aR['geometryID']=aQ['parents'][0x0]['ID'],aL[aO]=aR;}else{if(aP['attrType']===bJ(0x261)){let aS={'id':aO};aS['rawTargets']=this['parseMorphTargets'](aQ,aN),aS['id']=aO,aQ['parents']['length']>0x1&&console[bJ(0x1fa)]('THREE.FBXLoader:\x20morph\x20target\x20attached\x20to\x20more\x20than\x20one\x20geometry\x20is\x20not\x20supported.'),aM[aO]=aS;}}}}return{'skeletons':aL,'morphTargets':aM};}['parseSkeleton'](aL,aM){let aN=[];return aL['children']['forEach'](function(aO){const bK=a1;let aP=aM[aO['ID']];if(aP['attrType']!==bK(0x228))return;let aQ={'ID':aO['ID'],'indices':[],'weights':[],'transformLink':new a2()['fromArray'](aP['TransformLink']['a'])};'Indexes'in aP&&(aQ['indices']=aP['Indexes']['a'],aQ['weights']=aP['Weights']['a']),aN[bK(0x1e4)](aQ);}),{'rawBones':aN,'bones':[]};}['parseMorphTargets'](aL,aM){const bL=bt;let aN=[];for(let aO=0x0;aO<aL['children'][bL(0x25d)];aO++){let aP=aL['children'][aO],aQ=aM[aP['ID']],aR={'name':aQ['attrName'],'initialWeight':aQ[bL(0x227)],'id':aQ['id'],'fullWeights':aQ[bL(0x239)]['a']};if(aQ['attrType']!=='BlendShapeChannel')return;aR['geoID']=H['get'](parseInt(aP['ID']))['children']['filter'](function(aS){return aS['relationship']===void 0x0;})[0x0]['ID'],aN['push'](aR);}return aN;}['parseScene'](aL,aM,aN){const bM=bt;U=new a7();let aO=this[bM(0x1f5)](aL['skeletons'],aM,aN),aP=V['Objects']['Model'],aQ=this;aO['forEach'](function(aV){const bN=bM;let aW=aP[aV['ID']];aQ['setLookAtProperties'](aV,aW),H['get'](aV['ID'])['parents']['forEach'](function(aX){let aY=aO['get'](aX['ID']);aY!==void 0x0&&aY['add'](aV);}),aV[bN(0x25e)]===null&&U['add'](aV);}),this['addGlobalSceneSettings'](),U['traverse'](function(aV){const bO=bM;if(aV['userData']['transformData']){aV['parent']&&(aV['userData']['transformData']['parentMatrix']=aV[bO(0x25e)][bO(0x1b3)],aV['userData']['transformData']['parentMatrixWorld']=aV['parent']['matrixWorld']);let aW=X(aV['userData']['transformData']);aV['applyMatrix4'](aW),aV['updateWorldMatrix']();}});let aR=this['parsePoseNodes'](),aS=new Set();for(let aV in aL['skeletons'])aL['skeletons'][aV]['rawBones']['forEach'](function(aW,aX){const bP=bM;let aY=aL['skeletons'][aV]['bones'][aX];aY&&aS[bP(0x1e2)](aY['ID']);});let aT=new a2();U[bM(0x1dd)](function(aW){const bQ=bM;if(aW['isBone']&&aW['ID']!==void 0x0&&!aS['has'](aW['ID'])){let aX=aR[aW['ID']];aX!==void 0x0&&(aW['parent']?(aT[bQ(0x226)](aW['parent']['matrixWorld'])[bQ(0x238)](),aT['multiply'](aX)):aT['copy'](aX),aT['decompose'](aW['position'],aW['quaternion'],aW[bQ(0x204)]),aW[bQ(0x1f4)](),aW['matrixWorld']['copy'](aX));}}),this['bindSkeleton'](aL['skeletons'],aM,aO);let aU=new he()['parse']();U[bM(0x256)]['length']===0x1&&U['children'][0x0]['isGroup']&&(U['children'][0x0]['animations']=aU,U=U['children'][0x0]),U['animations']=aU,'GlobalSettings'in V&&'UpAxis'in V['GlobalSettings']&&V['GlobalSettings']['UpAxis']['value']===0x2&&(console['warn']('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.'),U['rotation']['set'](-Math['PI']/0x2,0x0,0x0));}['parseModels'](aL,aM,aN){const bR=bt;let aO=new Map(),aP=V['Objects']['Model'];for(let aQ in aP){let aR=parseInt(aQ),aS=aP[aQ],aT=H['get'](aR),aU=this['buildSkeleton'](aT,aL,aR,aS['attrName']);if(!aU){switch(aS[bR(0x230)]){case bR(0x23a):aU=this['createCamera'](aT);break;case'Light':aU=this[bR(0x1ca)](aT);break;case'Mesh':aU=this[bR(0x24d)](aT,aM,aN);break;case'NurbsCurve':aU=this['createCurve'](aT,aM);break;case'LimbNode':case'Root':aU=new av();break;default:aU=new a7();break;}aU['name']=aS['attrName']?aD['sanitizeNodeName'](aS['attrName']):'',aU['userData'][bR(0x20f)]=aS[bR(0x1fc)],aU['ID']=aR;}this['getTransformData'](aU,aS),aO[bR(0x22e)](aR,aU);}return aO;}['buildSkeleton'](aL,aM,aN,aO){const bS=bt;let aP=null;return aL[bS(0x1eb)]['forEach'](function(aQ){for(let aR in aM){let aS=aM[aR];aS['rawBones']['forEach'](function(aT,aU){const bT=a1;if(aT['ID']===aQ['ID']){let aV=aP;aP=new av(),aP['matrixWorld']['copy'](aT['transformLink']),aP['name']=aO?aD['sanitizeNodeName'](aO):'',aP[bT(0x267)]['originalName']=aO,aP['ID']=aN,aS['bones'][aU]=aP,aV!==null&&aP['add'](aV);}});}}),aP;}['createCamera'](aL){const bV=bt;let aM,aN;if(aL['children']['forEach'](function(aO){const bU=a1;let aP=V['Objects'][bU(0x1ad)][aO['ID']];aP!==void 0x0&&(aN=aP);}),aN===void 0x0)aM=new ao();else{let aO=0x0;aN['CameraProjectionType']!==void 0x0&&aN['CameraProjectionType']['value']===0x1&&(aO=0x1);let aP=0x1;aN['NearPlane']!==void 0x0&&(aP=aN['NearPlane']['value']/0x3e8);let aQ=0x3e8;aN['FarPlane']!==void 0x0&&(aQ=aN[bV(0x240)][bV(0x243)]/0x3e8);let aR=window['innerWidth'],aS=window['innerHeight'];aN['AspectWidth']!==void 0x0&&aN['AspectHeight']!==void 0x0&&(aR=aN['AspectWidth']['value'],aS=aN['AspectHeight']['value']);let aT=aR/aS,aU=0x2d;aN['FieldOfView']!==void 0x0&&(aU=aN['FieldOfView']['value']);let aV=aN['FocalLength']?aN['FocalLength']['value']:null;switch(aO){case 0x0:aM=new ax(aU,aT,aP,aQ),aV!==null&&aM['setFocalLength'](aV);break;case 0x1:console['warn']('THREE.FBXLoader:\x20Orthographic\x20cameras\x20not\x20supported\x20yet.'),aM=new ao();break;default:console['warn']('THREE.FBXLoader:\x20Unknown\x20camera\x20type\x20'+aO+'.'),aM=new ao();break;}}return aM;}[bt(0x1ca)](aL){const bW=bt;let aM,aN;if(aL['children']['forEach'](function(aO){let aP=V['Objects']['NodeAttribute'][aO['ID']];aP!==void 0x0&&(aN=aP);}),aN===void 0x0)aM=new ao();else{let aO;aO=aN['LightType']===void 0x0?0x0:aN['LightType']['value'];let aP=0xffffff;aN['Color']!==void 0x0&&(aP=as['colorSpaceToWorking'](new aw()['fromArray'](aN['Color'][bW(0x243)]),aF));let aQ=aN['Intensity']===void 0x0?0x1:aN['Intensity']['value']/0x64;aN['CastLightOnObject']!==void 0x0&&aN['CastLightOnObject'][bW(0x243)]===0x0&&(aQ=0x0);let aR=0x0;switch(aN[bW(0x271)]!==void 0x0&&(aR=aN['EnableFarAttenuation']!==void 0x0&&aN['EnableFarAttenuation']['value']===0x0?0x0:aN['FarAttenuationEnd']['value']),aO){case 0x0:aM=new ar(aP,aQ,aR,0x1);break;case 0x1:aM=new aG(aP,aQ);break;case 0x2:let aS=Math['PI']/0x3,aT=0x0;aN['OuterAngle']===void 0x0?aN['InnerAngle']!==void 0x0&&(aS=al[bW(0x1d6)](aN['InnerAngle'][bW(0x243)])):(aS=al['degToRad'](aN['OuterAngle'][bW(0x243)]),aN['InnerAngle']!==void 0x0&&(aT=0x1-aN[bW(0x21b)]['value']/aN[bW(0x24b)]['value'],aT=Math['max'](0x0,aT))),aM=new ac(aP,aQ,aR,aS,aT,0x1);break;default:console['warn']('THREE.FBXLoader:\x20Unknown\x20light\x20type\x20'+aN[bW(0x1ac)]['value']+',\x20defaulting\x20to\x20a\x20PointLight.'),aM=new ar(aP,aQ);break;}aN['CastShadows']!==void 0x0&&aN['CastShadows'][bW(0x243)]===0x1&&(aM['castShadow']=!0x0);}return aM;}['createMesh'](aL,aM,aN){const bY=bt;let aO,aP=null,aQ=null,aR=[];if(aL['children']['forEach'](function(aS){const bX=a1;aM[bX(0x1f2)](aS['ID'])&&(aP=aM[bX(0x1bc)](aS['ID'])),aN['has'](aS['ID'])&&aR[bX(0x1e4)](aN[bX(0x1bc)](aS['ID']));}),aR['length']>0x1?aQ=aR:aR[bY(0x25d)]>0x0?aQ=aR[0x0]:(aQ=new aA({'name':ab['DEFAULT_MATERIAL_NAME'],'color':0xcccccc}),aR['push'](aQ)),'color'in aP['attributes']&&aR['forEach'](function(aS){aS['vertexColors']=!0x0;}),aP['groups']['length']>0x0){let aS=!0x1;for(let aT=0x0,aU=aP['groups']['length'];aT<aU;aT++){let aV=aP['groups'][aT];(aV['materialIndex']<0x0||aV['materialIndex']>=aR['length'])&&(aV['materialIndex']=aR['length'],aS=!0x0);}if(aS){let aW=new aA();aR['push'](aW);}}return aP[bY(0x264)]?(aO=new ad(aP,aQ),aO['normalizeSkinWeights']()):aO=new ap(aP,aQ),aO;}['createCurve'](aL,aM){return new ah(aL['children']['reduce'](function(aN,aO){return aM['has'](aO['ID'])&&(aN=aM['get'](aO['ID'])),aN;},null),new aI({'name':ab['DEFAULT_MATERIAL_NAME'],'color':0x3300ff,'linewidth':0x1}));}['getTransformData'](aL,aM){const bZ=bt;let aN={};'InheritType'in aM&&(aN[bZ(0x22c)]=parseInt(aM['InheritType']['value'])),bZ(0x276)in aM?aN['eulerOrder']=Z(aM['RotationOrder']['value']):aN['eulerOrder']=Z(0x0),'Lcl_Translation'in aM&&(aN['translation']=aM[bZ(0x252)][bZ(0x243)]),'PreRotation'in aM&&(aN['preRotation']=aM['PreRotation']['value']),'Lcl_Rotation'in aM&&(aN['rotation']=aM['Lcl_Rotation'][bZ(0x243)]),'PostRotation'in aM&&(aN[bZ(0x281)]=aM['PostRotation']['value']),'Lcl_Scaling'in aM&&(aN[bZ(0x204)]=aM['Lcl_Scaling']['value']),'ScalingOffset'in aM&&(aN['scalingOffset']=aM['ScalingOffset']['value']),bZ(0x1ed)in aM&&(aN['scalingPivot']=aM[bZ(0x1ed)]['value']),'RotationOffset'in aM&&(aN['rotationOffset']=aM['RotationOffset']['value']),'RotationPivot'in aM&&(aN['rotationPivot']=aM['RotationPivot']['value']),aL['userData']['transformData']=aN;}['setLookAtProperties'](aL,aM){'LookAtProperty'in aM&&H['get'](aL['ID'])['children']['forEach'](function(aN){const c0=a1;if(aN['relationship']==='LookAtProperty'){let aO=V['Objects']['Model'][aN['ID']];if(c0(0x252)in aO){let aP=aO[c0(0x252)][c0(0x243)];aL['target']===void 0x0?aL['lookAt'](new a3()['fromArray'](aP)):(aL[c0(0x26d)][c0(0x20c)]['fromArray'](aP),U['add'](aL[c0(0x26d)]));}}});}['bindSkeleton'](aL,aM,aN){const c1=bt;for(let aO in aL){let aP=aL[aO],aQ=[];for(let aR=0x0,aS=aP['bones']['length'];aR<aS;aR++){let aT=new a2();aP[c1(0x272)][aR]&&aP['rawBones'][aR]&&aT[c1(0x226)](aP['rawBones'][aR][c1(0x275)])[c1(0x238)](),aQ['push'](aT);}H[c1(0x1bc)](parseInt(aP['ID']))['parents']['forEach'](function(aU){const c2=c1;if(aM['has'](aU['ID'])){let aV=aU['ID'];H['get'](aV)[c2(0x1eb)]['forEach'](function(aW){if(aN['has'](aW['ID'])){let aX=aN['get'](aW['ID']);aX['updateMatrixWorld'](!0x0),aX['bind'](new a6(aP['bones'],aQ),aX['matrixWorld']);}});}});}}['parsePoseNodes'](){const c3=bt;let aL={};if('Pose'in V['Objects']){let aM=V['Objects']['Pose'];for(let aN in aM)if(aM[aN]['attrType']==='BindPose'&&aM[aN]['NbPoseNodes']>0x0){let aO=aM[aN]['PoseNode'];Array['isArray'](aO)?aO[c3(0x22a)](function(aP){const c4=c3;aL[aP['Node']]=new a2()[c4(0x1bf)](aP['Matrix']['a']);}):aL[aO['Node']]=new a2()['fromArray'](aO['Matrix']['a']);}}return aL;}['addGlobalSceneSettings'](){const c5=bt;if('GlobalSettings'in V){if('AmbientColor'in V['GlobalSettings']){let aL=V['GlobalSettings'][c5(0x1e7)]['value'],aM=aL[0x0],aN=aL[0x1],aO=aL[0x2];if(aM!==0x0||aN!==0x0||aO!==0x0){let aP=new aw()['setRGB'](aM,aN,aO,aF);U[c5(0x1e2)](new at(aP,0x1));}}c5(0x1ae)in V['GlobalSettings']&&(U[c5(0x267)]['unitScaleFactor']=V[c5(0x220)]['UnitScaleFactor']['value']);}}},me=class{constructor(){this['negativeMaterialIndices']=!0x1;}['parse'](aL){const c6=bt;let aM=new Map();if('Geometry'in V['Objects']){let aN=V['Objects']['Geometry'];for(let aO in aN){let aP=H['get'](parseInt(aO)),aQ=this[c6(0x284)](aP,aN[aO],aL);aM['set'](parseInt(aO),aQ);}}return this['negativeMaterialIndices']===!0x0&&console['warn']('THREE.FBXLoader:\x20The\x20FBX\x20file\x20contains\x20invalid\x20(negative)\x20material\x20indices.\x20The\x20asset\x20might\x20not\x20render\x20as\x20expected.'),aM;}['parseGeometry'](aL,aM,aN){const c7=bt;switch(aM['attrType']){case'Mesh':return this['parseMeshGeometry'](aL,aM,aN);case c7(0x259):return this['parseNurbsGeometry'](aM);}}['parseMeshGeometry'](aL,aM,aN){const c8=bt;let aO=aN['skeletons'],aP=[],aQ=aL['parents']['map'](function(aV){return V['Objects']['Model'][aV['ID']];});if(aQ['length']===0x0)return;let aR=aL[c8(0x256)]['reduce'](function(aV,aW){return aO[aW['ID']]!==void 0x0&&(aV=aO[aW['ID']]),aV;},null);aL['children']['forEach'](function(aV){aN['morphTargets'][aV['ID']]!==void 0x0&&aP['push'](aN['morphTargets'][aV['ID']]);});let aS=aQ[0x0],aT={};'RotationOrder'in aS&&(aT['eulerOrder']=Z(aS[c8(0x276)]['value'])),'InheritType'in aS&&(aT['inheritType']=parseInt(aS['InheritType']['value'])),'GeometricTranslation'in aS&&(aT[c8(0x244)]=aS['GeometricTranslation'][c8(0x243)]),'GeometricRotation'in aS&&(aT['rotation']=aS['GeometricRotation']['value']),'GeometricScaling'in aS&&(aT['scale']=aS[c8(0x23d)]['value']);let aU=X(aT);return this['genGeometry'](aM,aR,aP,aU);}['genGeometry'](aL,aM,aN,aO){const c9=bt;let aP=new aB();aL['attrName']&&(aP['name']=aL[c9(0x1fc)]);let aQ=this['parseGeoNode'](aL,aM),aR=this['genBuffers'](aQ),aS=new aE(aR[c9(0x27b)],0x3);if(aS['applyMatrix4'](aO),aP['setAttribute']('position',aS),aR[c9(0x26c)]['length']>0x0&&aP['setAttribute']('color',new aE(aR['colors'],0x3)),aM&&(aP['setAttribute']('skinIndex',new ai(aR['weightsIndices'],0x4)),aP[c9(0x260)]('skinWeight',new aE(aR['vertexWeights'],0x4)),aP['FBX_Deformer']=aM),aR['normal']['length']>0x0){let aT=new ag()['getNormalMatrix'](aO),aU=new aE(aR[c9(0x229)],0x3);aU['applyNormalMatrix'](aT),aP['setAttribute'](c9(0x229),aU);}if(aR['uvs']['forEach'](function(aV,aW){let aX=aW===0x0?'uv':'uv'+aW;aP['setAttribute'](aX,new aE(aR['uvs'][aW],0x2));}),aQ[c9(0x1ec)]&&aQ['material']['mappingType']!=='AllSame'){let aV=aR[c9(0x1e8)][0x0],aW=0x0;if(aR['materialIndex'][c9(0x22a)](function(aX,aY){aX!==aV&&(aP['addGroup'](aW,aY-aW,aV),aV=aX,aW=aY);}),aP[c9(0x257)]['length']>0x0){let aX=aP['groups'][aP['groups']['length']-0x1],aY=aX['start']+aX[c9(0x1cd)];aY!==aR['materialIndex']['length']&&aP['addGroup'](aY,aR['materialIndex']['length']-aY,aV);}aP['groups'][c9(0x25d)]===0x0&&aP['addGroup'](0x0,aR[c9(0x1e8)]['length'],aR['materialIndex'][0x0]);}return this['addMorphTargets'](aP,aL,aN,aO),aP;}['parseGeoNode'](aL,aM){const ca=bt;let aN={};if(aN['vertexPositions']=aL['Vertices']===void 0x0?[]:aL['Vertices']['a'],aN['vertexIndices']=aL['PolygonVertexIndex']===void 0x0?[]:aL['PolygonVertexIndex']['a'],aL['LayerElementColor']&&aL['LayerElementColor'][0x0][ca(0x27f)]&&(aN[ca(0x1d2)]=this['parseVertexColors'](aL['LayerElementColor'][0x0])),aL['LayerElementMaterial']&&(aN['material']=this['parseMaterialIndices'](aL['LayerElementMaterial'][0x0])),aL[ca(0x206)]&&(aN['normal']=this[ca(0x254)](aL[ca(0x206)][0x0])),aL['LayerElementUV']){aN['uv']=[];let aO=0x0;for(;aL['LayerElementUV'][aO];)aL[ca(0x1ce)][aO]['UV']&&aN['uv']['push'](this['parseUVs'](aL[ca(0x1ce)][aO])),aO++;}return aN['weightTable']={},aM!==null&&(aN['skeleton']=aM,aM[ca(0x25a)]['forEach'](function(aP,aQ){const cb=ca;aP['indices'][cb(0x22a)](function(aR,aS){const cc=cb;aN['weightTable'][aR]===void 0x0&&(aN[cc(0x21a)][aR]=[]),aN['weightTable'][aR][cc(0x1e4)]({'id':aQ,'weight':aP['weights'][aS]});});})),aN;}['genBuffers'](aL){let aM={'vertex':[],'normal':[],'colors':[],'uvs':[],'materialIndex':[],'vertexWeights':[],'weightsIndices':[]},aN=0x0,aO=0x0,aP=!0x1,aQ=[],aR=[],aS=[],aT=[],aU=[],aV=[],aW=this;return aL['vertexIndices']['forEach'](function(aX,aY){const cd=a1;let aZ,b0=!0x1;aX<0x0&&(aX^=-0x1,b0=!0x0);let b1=[],b2=[];if(aQ['push'](aX*0x3,aX*0x3+0x1,aX*0x3+0x2),aL[cd(0x1d2)]){let b3=q(aY,aN,aX,aL['color']);aS['push'](b3[0x0],b3[0x1],b3[0x2]);}if(aL['skeleton']){if(aL['weightTable'][aX]!==void 0x0&&aL['weightTable'][aX][cd(0x22a)](function(b4){const cf=cd;b2['push'](b4[cf(0x258)]),b1['push'](b4['id']);}),b2['length']>0x4){aP||(console['warn']('THREE.FBXLoader:\x20Vertex\x20has\x20more\x20than\x204\x20skinning\x20weights\x20assigned\x20to\x20vertex.\x20Deleting\x20additional\x20weights.'),aP=!0x0);let b4=[0x0,0x0,0x0,0x0],b5=[0x0,0x0,0x0,0x0];b2['forEach'](function(b6,b7){let b8=b6,b9=b1[b7];b5['forEach'](function(ba,bb,bc){if(b8>ba){bc[bb]=b8,b8=ba;let bd=b4[bb];b4[bb]=b9,b9=bd;}});}),b1=b4,b2=b5;}for(;b2[cd(0x25d)]<0x4;)b2[cd(0x1e4)](0x0),b1['push'](0x0);for(let b6=0x0;b6<0x4;++b6)aU['push'](b2[b6]),aV[cd(0x1e4)](b1[b6]);}if(aL['normal']){let b7=q(aY,aN,aX,aL['normal']);aR['push'](b7[0x0],b7[0x1],b7[0x2]);}aL['material']&&aL['material']['mappingType']!==cd(0x232)&&(aZ=q(aY,aN,aX,aL[cd(0x1ec)])[0x0],aZ<0x0&&(aW['negativeMaterialIndices']=!0x0,aZ=0x0)),aL['uv']&&aL['uv'][cd(0x22a)](function(b8,b9){let ba=q(aY,aN,aX,b8);aT[b9]===void 0x0&&(aT[b9]=[]),aT[b9]['push'](ba[0x0]),aT[b9]['push'](ba[0x1]);}),aO++,b0&&(aW['genFace'](aM,aL,aQ,aZ,aR,aS,aT,aU,aV,aO),aN++,aO=0x0,aQ=[],aR=[],aS=[],aT=[],aU=[],aV=[]);}),aM;}['getNormalNewell'](aL){let aM=new a3(0x0,0x0,0x0);for(let aN=0x0;aN<aL['length'];aN++){let aO=aL[aN],aP=aL[(aN+0x1)%aL['length']];aM['x']+=(aO['y']-aP['y'])*(aO['z']+aP['z']),aM['y']+=(aO['z']-aP['z'])*(aO['x']+aP['x']),aM['z']+=(aO['x']-aP['x'])*(aO['y']+aP['y']);}return aM['normalize'](),aM;}['getNormalTangentAndBitangent'](aL){const cg=bt;let aM=this['getNormalNewell'](aL),aN=(Math['abs'](aM['z'])>0.5?new a3(0x0,0x1,0x0):new a3(0x0,0x0,0x1))['cross'](aM)['normalize']();return{'normal':aM,'tangent':aN,'bitangent':aM['clone']()['cross'](aN)[cg(0x1b8)]()};}['flattenVertex'](aL,aM,aN){const ch=bt;return new aJ(aL['dot'](aM),aL[ch(0x27c)](aN));}['genFace'](aL,aM,aN,aO,aP,aQ,aR,aS,aT,aU){const ci=bt;let aV;if(aU>0x3){let aW=[],aX=aM[ci(0x248)]||aM['vertexPositions'];for(let b1=0x0;b1<aN['length'];b1+=0x3)aW['push'](new a3(aX[aN[b1]],aX[aN[b1+0x1]],aX[aN[b1+0x2]]));let {tangent:aY,bitangent:aZ}=this['getNormalTangentAndBitangent'](aW),b0=[];for(let b2 of aW)b0['push'](this['flattenVertex'](b2,aY,aZ));aV=a8[ci(0x24c)](b0,[]);}else aV=[[0x0,0x1,0x2]];for(let [b3,b4,b5]of aV)aL['vertex']['push'](aM['vertexPositions'][aN[b3*0x3]]),aL['vertex']['push'](aM['vertexPositions'][aN[b3*0x3+0x1]]),aL[ci(0x27b)]['push'](aM['vertexPositions'][aN[b3*0x3+0x2]]),aL['vertex']['push'](aM['vertexPositions'][aN[b4*0x3]]),aL['vertex']['push'](aM['vertexPositions'][aN[b4*0x3+0x1]]),aL['vertex'][ci(0x1e4)](aM['vertexPositions'][aN[b4*0x3+0x2]]),aL['vertex']['push'](aM['vertexPositions'][aN[b5*0x3]]),aL[ci(0x27b)]['push'](aM['vertexPositions'][aN[b5*0x3+0x1]]),aL['vertex']['push'](aM['vertexPositions'][aN[b5*0x3+0x2]]),aM['skeleton']&&(aL['vertexWeights']['push'](aS[b3*0x4]),aL[ci(0x25f)]['push'](aS[b3*0x4+0x1]),aL['vertexWeights']['push'](aS[b3*0x4+0x2]),aL[ci(0x25f)]['push'](aS[b3*0x4+0x3]),aL['vertexWeights']['push'](aS[b4*0x4]),aL['vertexWeights']['push'](aS[b4*0x4+0x1]),aL['vertexWeights'][ci(0x1e4)](aS[b4*0x4+0x2]),aL['vertexWeights']['push'](aS[b4*0x4+0x3]),aL['vertexWeights']['push'](aS[b5*0x4]),aL['vertexWeights'][ci(0x1e4)](aS[b5*0x4+0x1]),aL['vertexWeights']['push'](aS[b5*0x4+0x2]),aL['vertexWeights'][ci(0x1e4)](aS[b5*0x4+0x3]),aL['weightsIndices'][ci(0x1e4)](aT[b3*0x4]),aL['weightsIndices']['push'](aT[b3*0x4+0x1]),aL['weightsIndices']['push'](aT[b3*0x4+0x2]),aL[ci(0x231)]['push'](aT[b3*0x4+0x3]),aL['weightsIndices']['push'](aT[b4*0x4]),aL[ci(0x231)]['push'](aT[b4*0x4+0x1]),aL['weightsIndices']['push'](aT[b4*0x4+0x2]),aL['weightsIndices']['push'](aT[b4*0x4+0x3]),aL['weightsIndices']['push'](aT[b5*0x4]),aL['weightsIndices']['push'](aT[b5*0x4+0x1]),aL['weightsIndices']['push'](aT[b5*0x4+0x2]),aL['weightsIndices']['push'](aT[b5*0x4+0x3])),aM['color']&&(aL['colors']['push'](aQ[b3*0x3]),aL['colors'][ci(0x1e4)](aQ[b3*0x3+0x1]),aL['colors']['push'](aQ[b3*0x3+0x2]),aL['colors']['push'](aQ[b4*0x3]),aL['colors']['push'](aQ[b4*0x3+0x1]),aL['colors'][ci(0x1e4)](aQ[b4*0x3+0x2]),aL['colors']['push'](aQ[b5*0x3]),aL['colors']['push'](aQ[b5*0x3+0x1]),aL['colors']['push'](aQ[b5*0x3+0x2])),aM['material']&&aM['material']['mappingType']!=='AllSame'&&(aL['materialIndex']['push'](aO),aL['materialIndex']['push'](aO),aL['materialIndex']['push'](aO)),aM[ci(0x229)]&&(aL['normal'][ci(0x1e4)](aP[b3*0x3]),aL['normal']['push'](aP[b3*0x3+0x1]),aL['normal']['push'](aP[b3*0x3+0x2]),aL['normal']['push'](aP[b4*0x3]),aL[ci(0x229)]['push'](aP[b4*0x3+0x1]),aL['normal']['push'](aP[b4*0x3+0x2]),aL['normal']['push'](aP[b5*0x3]),aL[ci(0x229)]['push'](aP[b5*0x3+0x1]),aL['normal']['push'](aP[b5*0x3+0x2])),aM['uv']&&aM['uv']['forEach'](function(b6,b7){const cj=ci;aL['uvs'][b7]===void 0x0&&(aL['uvs'][b7]=[]),aL['uvs'][b7]['push'](aR[b7][b3*0x2]),aL['uvs'][b7][cj(0x1e4)](aR[b7][b3*0x2+0x1]),aL['uvs'][b7][cj(0x1e4)](aR[b7][b4*0x2]),aL['uvs'][b7]['push'](aR[b7][b4*0x2+0x1]),aL['uvs'][b7]['push'](aR[b7][b5*0x2]),aL['uvs'][b7]['push'](aR[b7][b5*0x2+0x1]);});}['addMorphTargets'](aL,aM,aN,aO){const ck=bt;if(aN['length']===0x0)return;aL['morphTargetsRelative']=!0x0,aL[ck(0x209)]['position']=[];let aP=aO['clone']()['setPosition'](0x0,0x0,0x0),aQ=this;aN['forEach'](function(aR){aR['rawTargets']['forEach'](function(aS){const cl=a1;let aT=V[cl(0x262)]['Geometry'][aS['geoID']];aT!==void 0x0&&aQ['genMorphGeometry'](aL,aM,aT,aP,aS['name']);});});}['genMorphGeometry'](aL,aM,aN,aO,aP){const cm=bt;let aQ=aM['Vertices']===void 0x0?[]:aM['Vertices']['a'],aR=aM['PolygonVertexIndex']===void 0x0?[]:aM[cm(0x1fd)]['a'],aS=aN['Vertices']===void 0x0?[]:aN['Vertices']['a'],aT=aN[cm(0x235)]===void 0x0?[]:aN['Indexes']['a'],aU=aL[cm(0x278)]['position']['count']*0x3,aV=new Float32Array(aU);for(let aY=0x0;aY<aT['length'];aY++){let aZ=aT[aY]*0x3;aV[aZ]=aS[aY*0x3],aV[aZ+0x1]=aS[aY*0x3+0x1],aV[aZ+0x2]=aS[aY*0x3+0x2];}let aW={'vertexIndices':aR,'vertexPositions':aV,'baseVertexPositions':aQ},aX=new aE(this['genBuffers'](aW)['vertex'],0x3);aX[cm(0x279)]=aP||aN[cm(0x1fc)],aX['applyMatrix4'](aO),aL[cm(0x209)]['position']['push'](aX);}['parseNormals'](aL){const cn=bt;let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'],aO=aL['Normals']['a'],aP=[];return aN==='IndexToDirect'&&('NormalIndex'in aL?aP=aL[cn(0x214)]['a']:'NormalsIndex'in aL&&(aP=aL['NormalsIndex']['a'])),{'dataSize':0x3,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseUVs'](aL){let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'],aO=aL['UV']['a'],aP=[];return aN==='IndexToDirect'&&(aP=aL['UVIndex']['a']),{'dataSize':0x2,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseVertexColors'](aL){let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'],aO=aL['Colors']['a'],aP=[];aN==='IndexToDirect'&&(aP=aL['ColorIndex']['a']);for(let aQ=0x0,aR=new aw();aQ<aO['length'];aQ+=0x4)aR['fromArray'](aO,aQ),as['colorSpaceToWorking'](aR,aF),aR['toArray'](aO,aQ);return{'dataSize':0x4,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseMaterialIndices'](aL){const co=bt;let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'];if(aM==='NoMappingInformation')return{'dataSize':0x1,'buffer':[0x0],'indices':[0x0],'mappingType':'AllSame','referenceType':aN};let aO=aL['Materials']['a'],aP=[];for(let aQ=0x0;aQ<aO['length'];++aQ)aP[co(0x1e4)](aQ);return{'dataSize':0x1,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseNurbsGeometry'](aL){const cp=bt;let aM=parseInt(aL['Order']);if(isNaN(aM))return console['error']('THREE.FBXLoader:\x20Invalid\x20Order\x20%s\x20given\x20for\x20geometry\x20ID:\x20%s',aL['Order'],aL['id']),new aB();let aN=aM-0x1,aO=aL['KnotVector']['a'],aP=[],aQ=aL['Points']['a'];for(let aU=0x0,aV=aQ['length'];aU<aV;aU+=0x4)aP['push'](new ak()['fromArray'](aQ,aU));let aR,aS;if(aL['Form']==='Closed')aP['push'](aP[0x0]);else{if(aL['Form']==='Periodic'){aR=aN,aS=aO[cp(0x25d)]-0x1-aR;for(let aW=0x0;aW<aN;++aW)aP['push'](aP[aW]);}}let aT=new B(aN,aO,aP,aR,aS)['getPoints'](aP['length']*0xc);return new aB()[cp(0x1e5)](aT);}},he=class{[bt(0x263)](){const cq=bt;let aL=[],aM=this['parseClips']();if(aM!==void 0x0)for(let aN in aM){let aO=aM[aN],aP=this[cq(0x216)](aO);aL['push'](aP);}return aL;}['parseClips'](){const cr=bt;if(V['Objects']['AnimationCurve']===void 0x0)return;let aL=this['parseAnimationCurveNodes']();this['parseAnimationCurves'](aL);let aM=this['parseAnimationLayers'](aL);return this[cr(0x1b7)](aM);}['parseAnimationCurveNodes'](){let aL=V['Objects']['AnimationCurveNode'],aM=new Map();for(let aN in aL){let aO=aL[aN];if(aO['attrName']['match'](/S|R|T|DeformPercent/)!==null){let aP={'id':aO['id'],'attr':aO['attrName'],'curves':{}};aM['set'](aP['id'],aP);}}return aM;}['parseAnimationCurves'](aL){const cs=bt;let aM=V['Objects']['AnimationCurve'];for(let aN in aM){let aO={'id':aM[aN]['id'],'times':aM[aN]['KeyTime']['a']['map'](be),'values':aM[aN][cs(0x225)]['a']},aP=H['get'](aO['id']);if(aP!==void 0x0){let aQ=aP[cs(0x1eb)][0x0]['ID'],aR=aP['parents'][0x0]['relationship'];aR['match'](/X/)?aL[cs(0x1bc)](aQ)['curves']['x']=aO:aR['match'](/Y/)?aL['get'](aQ)['curves']['y']=aO:aR['match'](/Z/)?aL['get'](aQ)[cs(0x1d8)]['z']=aO:aR['match'](/DeformPercent/)&&aL['has'](aQ)&&(aL['get'](aQ)['curves']['morph']=aO);}}}['parseAnimationLayers'](aL){const ct=bt;let aM=V['Objects']['AnimationLayer'],aN=new Map();for(let aO in aM){let aP=[],aQ=H['get'](parseInt(aO));aQ!==void 0x0&&(aQ['children'][ct(0x22a)](function(aR,aS){const cu=ct;if(aL['has'](aR['ID'])){let aT=aL['get'](aR['ID']);if(aT['curves']['x']!==void 0x0||aT['curves']['y']!==void 0x0||aT['curves']['z']!==void 0x0){if(aP[aS]===void 0x0){let aU=H['get'](aR['ID'])[cu(0x1eb)]['filter'](function(aW){return aW['relationship']!==void 0x0;});if(aU['length']===0x0)return;let aV=aU[0x0]['ID'];if(aV!==void 0x0){let aW=V['Objects'][cu(0x1c3)][aV['toString']()];if(aW===void 0x0){console['warn']('THREE.FBXLoader:\x20Encountered\x20a\x20unused\x20curve.',aR);return;}let aX={'modelName':aW['attrName']?aD['sanitizeNodeName'](aW['attrName']):'','ID':aW['id'],'initialPosition':[0x0,0x0,0x0],'initialRotation':[0x0,0x0,0x0],'initialScale':[0x1,0x1,0x1]};U['traverse'](function(aY){const cv=cu;aY['ID']===aW['id']&&(aX[cv(0x1ea)]=aY['matrix'],aY[cv(0x267)]['transformData']&&(aX['eulerOrder']=aY['userData']['transformData']['eulerOrder'],aY[cv(0x267)]['transformData']['rotation']&&(aX['initialRotation']=aY[cv(0x267)]['transformData']['rotation'])));}),aX['transform']||(aX[cu(0x1ea)]=new a2()),'PreRotation'in aW&&(aX['preRotation']=aW[cu(0x242)][cu(0x243)]),'PostRotation'in aW&&(aX['postRotation']=aW['PostRotation']['value']),aP[aS]=aX;}}aP[aS]&&(aP[aS][aT['attr']]=aT);}else{if(aT['curves']['morph']!==void 0x0){if(aP[aS]===void 0x0){let aY=H['get'](aR['ID'])['parents'][cu(0x249)](function(b4){const cw=cu;return b4[cw(0x20d)]!==void 0x0;});if(aY[cu(0x25d)]===0x0)return;let aZ=aY[0x0]['ID'],b0=H['get'](aZ)['parents'][0x0]['ID'],b1=H['get'](b0)['parents'][0x0]['ID'],b2=H['get'](b1)['parents'][0x0]['ID'],b3=V['Objects'][cu(0x1c3)][b2];aP[aS]={'modelName':b3['attrName']?aD['sanitizeNodeName'](b3['attrName']):'','morphName':V['Objects'][cu(0x1da)][aZ]['attrName']};}aP[aS][aT['attr']]=aT;}}}}),aN['set'](parseInt(aO),aP));}return aN;}['parseAnimStacks'](aL){const cx=bt;let aM=V['Objects'][cx(0x25b)],aN={};for(let aO in aM){let aP=H['get'](parseInt(aO))['children'];aP[cx(0x25d)]>0x1&&console['warn']('THREE.FBXLoader:\x20Encountered\x20an\x20animation\x20stack\x20with\x20multiple\x20layers,\x20this\x20is\x20currently\x20not\x20supported.\x20Ignoring\x20subsequent\x20layers.');let aQ=aL['get'](aP[0x0]['ID']);aN[aO]={'name':aM[aO][cx(0x1fc)],'layer':aQ};}return aN;}['addClip'](aL){const cy=bt;let aM=[],aN=this;return aL[cy(0x274)]['forEach'](function(aO){aM=aM['concat'](aN['generateTracks'](aO));}),new az(aL['name'],-0x1,aM);}[bt(0x1de)](aL){const cz=bt;let aM=[],aN=new a3(),aO=new a3();if(aL['transform']&&aL[cz(0x1ea)]['decompose'](aN,new aH(),aO),aN=aN[cz(0x20b)](),aO=aO[cz(0x20b)](),aL['T']!==void 0x0&&Object[cz(0x1d1)](aL['T']['curves'])['length']>0x0){let aP=this['generateVectorTrack'](aL['modelName'],aL['T']['curves'],aN,'position');aP!==void 0x0&&aM['push'](aP);}if(aL['R']!==void 0x0&&Object['keys'](aL['R']['curves'])['length']>0x0){let aQ=this['generateRotationTrack'](aL['modelName'],aL['R']['curves'],aL['preRotation'],aL['postRotation'],aL['eulerOrder'],aL['initialRotation']);aQ!==void 0x0&&aM['push'](aQ);}if(aL['S']!==void 0x0&&Object[cz(0x1d1)](aL['S']['curves'])['length']>0x0){let aR=this['generateVectorTrack'](aL[cz(0x27a)],aL['S']['curves'],aO,'scale');aR!==void 0x0&&aM[cz(0x1e4)](aR);}if(aL['DeformPercent']!==void 0x0){let aS=this['generateMorphTrack'](aL);aS!==void 0x0&&aM['push'](aS);}return aM;}[bt(0x26b)](aL,aM,aN,aO){const cA=bt;let aP=this['getTimesForAllAxes'](aM),aQ=this[cA(0x1c5)](aP,aM,aN);return new aa(aL+'.'+aO,aP,aQ);}['generateRotationTrack'](aL,aM,aN,aO,aP,aQ){const cB=bt;let aR,aS;if(aM['x']!==void 0x0||aM['y']!==void 0x0||aM['z']!==void 0x0){let aX=this['getTimesForAllAxes'](aM);if(aX['length']>0x0){let aY=aQ||[0x0,0x0,0x0],aZ=this['synchronizeCurve'](aM['x'],aX,aY[0x0]),b0=this['synchronizeCurve'](aM['y'],aX,aY[0x1]),b1=this['synchronizeCurve'](aM['z'],aX,aY[0x2]),b2=this['interpolateRotations'](aZ,b0,b1,aP);aR=b2[0x0],aS=b2[0x1];}}let aT=Z(0x0);aN!==void 0x0&&(aN=aN[cB(0x1b6)](al['degToRad']),aN['push'](aT),aN=new aj()['fromArray'](aN),aN=new aH()['setFromEuler'](aN)),aO!==void 0x0&&(aO=aO['map'](al['degToRad']),aO['push'](aT),aO=new aj()['fromArray'](aO),aO=new aH()[cB(0x241)](aO)['invert']());let aU=new aH(),aV=new aj(),aW=[];if(!(!aS||!aR)){for(let b3=0x0;b3<aS['length'];b3+=0x3)aV['set'](aS[b3],aS[b3+0x1],aS[b3+0x2],aP),aU['setFromEuler'](aV),aN!==void 0x0&&aU['premultiply'](aN),aO!==void 0x0&&aU['multiply'](aO),b3>0x2&&new aH()[cB(0x1bf)](aW,(b3-0x3)/0x3*0x4)[cB(0x27c)](aU)<0x0&&aU[cB(0x22e)](-aU['x'],-aU['y'],-aU['z'],-aU['w']),aU['toArray'](aW,b3/0x3*0x4);return new an(aL+'.quaternion',aR,aW);}}['generateMorphTrack'](aL){const cC=bt;let aM=aL['DeformPercent']['curves']['morph'],aN=aM['values'][cC(0x1b6)](function(aP){return aP/0x64;}),aO=U['getObjectByName'](aL['modelName'])['morphTargetDictionary'][aL['morphName']];return new aC(aL['modelName']+'.morphTargetInfluences['+aO+']',aM[cC(0x1be)],aN);}['getTimesForAllAxes'](aL){const cD=bt;let aM=[];if(aL['x']!==void 0x0&&(aM=aM['concat'](aL['x'][cD(0x1be)])),aL['y']!==void 0x0&&(aM=aM['concat'](aL['y']['times'])),aL['z']!==void 0x0&&(aM=aM['concat'](aL['z']['times'])),aM=aM[cD(0x21f)](function(aN,aO){return aN-aO;}),aM['length']>0x1){let aN=0x1,aO=aM[0x0];for(let aP=0x1;aP<aM['length'];aP++){let aQ=aM[aP];aQ!==aO&&(aM[aN]=aQ,aO=aQ,aN++);}aM=aM['slice'](0x0,aN);}return aM;}[bt(0x1c5)](aL,aM,aN){let aO=aN,aP=[],aQ=-0x1,aR=-0x1,aS=-0x1;return aL['forEach'](function(aT){const cE=a1;if(aM['x']&&(aQ=aM['x']['times']['indexOf'](aT)),aM['y']&&(aR=aM['y']['times']['indexOf'](aT)),aM['z']&&(aS=aM['z']['times']['indexOf'](aT)),aQ!==-0x1){let aU=aM['x'][cE(0x1e3)][aQ];aP[cE(0x1e4)](aU),aO[0x0]=aU;}else aP[cE(0x1e4)](aO[0x0]);if(aR!==-0x1){let aV=aM['y']['values'][aR];aP['push'](aV),aO[0x1]=aV;}else aP['push'](aO[0x1]);if(aS!==-0x1){let aW=aM['z']['values'][aS];aP['push'](aW),aO[0x2]=aW;}else aP[cE(0x1e4)](aO[0x2]);}),aP;}['synchronizeCurve'](aL,aM,aN){if(aL===void 0x0)return{'times':aM,'values':aM['map'](()=>aN)};if(aL['times']['length']===aM['length'])return aL;let aO=[];for(let aP=0x0;aP<aM['length'];aP++)aO['push'](this['sampleCurveValue'](aL,aM[aP],aN));return{'times':aM,'values':aO};}[bt(0x1ef)](aL,aM,aN){let aO=aL['times'],aP=aL['values'];if(aM<=aO[0x0])return aP[0x0];if(aM>=aO[aO['length']-0x1])return aP[aP['length']-0x1];for(let aQ=0x0;aQ<aO['length']-0x1;aQ++)if(aM>=aO[aQ]&&aM<=aO[aQ+0x1]){if(aO[aQ]===aM)return aP[aQ];let aR=(aM-aO[aQ])/(aO[aQ+0x1]-aO[aQ]);return aP[aQ]*(0x1-aR)+aP[aQ+0x1]*aR;}return aN;}['interpolateRotations'](aL,aM,aN,aO){const cF=bt;let aP=[],aQ=[];aP['push'](aL['times'][0x0]),aQ[cF(0x1e4)](al['degToRad'](aL['values'][0x0])),aQ['push'](al['degToRad'](aM['values'][0x0])),aQ['push'](al['degToRad'](aN['values'][0x0]));for(let aR=0x1;aR<aL[cF(0x1e3)]['length'];aR++){let aS=[aL['values'][aR-0x1],aM['values'][aR-0x1],aN['values'][aR-0x1]];if(isNaN(aS[0x0])||isNaN(aS[0x1])||isNaN(aS[0x2]))continue;let aT=aS['map'](al[cF(0x1d6)]),aU=[aL['values'][aR],aM['values'][aR],aN['values'][aR]];if(isNaN(aU[0x0])||isNaN(aU[0x1])||isNaN(aU[0x2]))continue;let aV=aU[cF(0x1b6)](al['degToRad']),aW=[aU[0x0]-aS[0x0],aU[0x1]-aS[0x1],aU[0x2]-aS[0x2]],aX=[Math[cF(0x1d3)](aW[0x0]),Math['abs'](aW[0x1]),Math['abs'](aW[0x2])];if(aX[0x0]>=0xb4||aX[0x1]>=0xb4||aX[0x2]>=0xb4){let aY=Math['max'](...aX)/0xb4,aZ=new aj(...aT,aO),b0=new aj(...aV,aO),b1=new aH()['setFromEuler'](aZ),b2=new aH()['setFromEuler'](b0);b1['dot'](b2)<0x0&&b2[cF(0x22e)](-b2['x'],-b2['y'],-b2['z'],-b2['w']);let b3=aL['times'][aR-0x1],b4=aL['times'][aR]-b3,b5=new aH(),b6=new aj();for(let b7=0x0;b7<0x1;b7+=0x1/aY)b5['copy'](b1['clone']()['slerp'](b2[cF(0x203)](),b7)),aP['push'](b3+b7*b4),b6['setFromQuaternion'](b5,aO),aQ['push'](b6['x']),aQ['push'](b6['y']),aQ['push'](b6['z']);}else aP['push'](aL['times'][aR]),aQ['push'](al['degToRad'](aL['values'][aR])),aQ['push'](al['degToRad'](aM['values'][aR])),aQ['push'](al['degToRad'](aN['values'][aR]));}return[aP,aQ];}},ge=class{['getPrevNode'](){const cG=bt;return this['nodeStack'][this[cG(0x1c6)]-0x2];}[bt(0x1ba)](){const cH=bt;return this[cH(0x1b2)][this['currentIndent']-0x1];}['getCurrentProp'](){return this['currentProp'];}['pushStack'](aL){this['nodeStack']['push'](aL),this['currentIndent']+=0x1;}[bt(0x1cc)](){this['nodeStack']['pop'](),--this['currentIndent'];}['setCurrentProp'](aL,aM){const cI=bt;this[cI(0x1dc)]=aL,this['currentPropName']=aM;}['parse'](aL){const cJ=bt;this['currentIndent']=0x0,this[cJ(0x1d4)]=new G(),this['nodeStack']=[],this['currentProp']=[],this['currentPropName']='';let aM=this,aN=aL['split'](/[\r\n]+/);return aN['forEach'](function(aO,aP){const cK=cJ;let aQ=aO['match'](/^[\s\t]*;/),aR=aO['match'](/^[\s\t]*$/);if(aQ||aR)return;let aS=aO['match']('^\x5ct{'+aM['currentIndent']+'}(\x5cw+):(.*){',''),aT=aO['match']('^\x5ct{'+aM['currentIndent']+'}(\x5cw+):[\x5cs\x5ct\x5cr\x5cn](.*)'),aU=aO['match'](cK(0x222)+(aM['currentIndent']-0x1)+'}}');aS?aM['parseNodeBegin'](aO,aS):aT?aM['parseNodeProperty'](aO,aT,aN[++aP]):aU?aM[cK(0x1cc)]():aO['match'](/^[^\s\t}]/)&&aM[cK(0x213)](aO);}),this['allNodes'];}['parseNodeBegin'](aL,aM){const cL=bt;let aN=aM[0x1]['trim']()['replace'](/^"/,'')['replace'](/"$/,''),aO=aM[0x2][cL(0x24e)](',')['map'](function(aS){return aS['trim']()['replace'](/^"/,'')['replace'](/"$/,'');}),aP={'name':aN},aQ=this['parseNodeAttr'](aO),aR=this['getCurrentNode']();this['currentIndent']===0x0?this['allNodes']['add'](aN,aP):aN in aR?(aN==='PoseNode'?aR['PoseNode']['push'](aP):aR[aN]['id']!==void 0x0&&(aR[aN]={},aR[aN][aR[aN]['id']]=aR[aN]),aQ['id']!==''&&(aR[aN][aQ['id']]=aP)):typeof aQ['id']=='number'?(aR[aN]={},aR[aN][aQ['id']]=aP):aN!=='Properties70'&&(aN===cL(0x269)?aR[aN]=[aP]:aR[aN]=aP),typeof aQ['id']=='number'&&(aP['id']=aQ['id']),aQ['name']!==''&&(aP['attrName']=aQ['name']),aQ['type']!==''&&(aP['attrType']=aQ[cL(0x1e6)]),this['pushStack'](aP);}['parseNodeAttr'](aL){let aM=aL[0x0];aL[0x0]!==''&&(aM=parseInt(aL[0x0]),isNaN(aM)&&(aM=aL[0x0]));let aN='',aO='';return aL['length']>0x1&&(aN=aL[0x1]['replace'](/^(\w+)::/,''),aO=aL[0x2]),{'id':aM,'name':aN,'type':aO};}['parseNodeProperty'](aL,aM,aN){const cM=bt;let aO=aM[0x1]['replace'](/^"/,'')[cM(0x1df)](/"$/,'')[cM(0x23f)](),aP=aM[0x2][cM(0x1df)](/^"/,'')['replace'](/"$/,'')['trim']();aO==='Content'&&aP===','&&(aP=aN['replace'](/"/g,'')['replace'](/,$/,'')[cM(0x23f)]());let aQ=this['getCurrentNode']();if(aQ['name']===cM(0x221)){this['parseNodeSpecialProperty'](aL,aO,aP);return;}if(aO==='C'){let aR=aP['split'](',')['slice'](0x1),aS=parseInt(aR[0x0]),aT=parseInt(aR[0x1]),aU=aP['split'](',')[cM(0x1c0)](0x3);aU=aU['map'](function(aV){const cN=cM;return aV['trim']()[cN(0x1df)](/^"/,'');}),aO=cM(0x218),aP=[aS,aT],Se(aP,aU),aQ[aO]===void 0x0&&(aQ[aO]=[]);}aO===cM(0x208)&&(aQ['id']=aP),aO in aQ&&Array['isArray'](aQ[aO])?aQ[aO][cM(0x1e4)](aP):aO==='a'?aQ['a']=aP:aQ[aO]=aP,this['setCurrentProp'](aQ,aO),aO==='a'&&aP['slice'](-0x1)!==','&&(aQ['a']=Q(aP));}['parseNodePropertyContinued'](aL){let aM=this['getCurrentNode']();aM['a']+=aL,aL['slice'](-0x1)!==','&&(aM['a']=Q(aM['a']));}['parseNodeSpecialProperty'](aL,aM,aN){const cO=bt;let aO=aN['split']('\x22,')['map'](function(aU){return aU['trim']()['replace'](/^\"/,'')['replace'](/\s/,'_');}),aP=aO[0x0],aQ=aO[0x1],aR=aO[0x2],aS=aO[0x3],aT=aO[0x4];switch(aQ){case'int':case'enum':case cO(0x251):case'ULongLong':case'double':case'Number':case'FieldOfView':aT=parseFloat(aT);break;case'Color':case'ColorRGB':case'Vector3D':case'Lcl_Translation':case'Lcl_Rotation':case cO(0x236):aT=Q(aT);break;}this['getPrevNode']()[aP]={'type':aQ,'type2':aR,'flag':aS,'value':aT},this['setCurrentProp'](this['getPrevNode'](),aP);}},_e=class{['parse'](aL){const cP=bt;let aM=new W(aL);aM['skip'](0x17);let aN=aM['getUint32']();if(aN<0x1900)throw Error('THREE.FBXLoader:\x20FBX\x20version\x20not\x20supported,\x20FileVersion:\x20'+aN);let aO=new G();for(;!this['endOfContent'](aM);){let aP=this[cP(0x1cb)](aM,aN);aP!==null&&aO[cP(0x1e2)](aP[cP(0x279)],aP);}return aO;}['endOfContent'](aL){const cQ=bt;return aL[cQ(0x205)]()%0x10==0x0?(aL['getOffset']()+0xa0+0x10&-0x10)>=aL[cQ(0x205)]():aL['getOffset']()+0xa0+0x10>=aL[cQ(0x205)]();}['parseNode'](aL,aM){const cR=bt;let aN={},aO=aM>=0x1d4c?aL[cR(0x212)]():aL['getUint32'](),aP=aM>=0x1d4c?aL['getUint64']():aL['getUint32']();aM>=0x1d4c?aL['getUint64']():aL[cR(0x1c9)]();let aQ=aL['getUint8'](),aR=aL[cR(0x21c)](aQ);if(aO===0x0)return null;let aS=[];for(let aW=0x0;aW<aP;aW++)aS['push'](this['parseProperty'](aL));let aT=aS['length']>0x0?aS[0x0]:'',aU=aS[cR(0x25d)]>0x1?aS[0x1]:'',aV=aS[cR(0x25d)]>0x2?aS[0x2]:'';for(aN['singleProperty']=aP===0x1&&aL['getOffset']()===aO;aO>aL['getOffset']();){let aX=this[cR(0x1cb)](aL,aM);aX!==null&&this['parseSubNode'](aR,aN,aX);}return aN['propertyList']=aS,typeof aT=='number'&&(aN['id']=aT),aU!==''&&(aN['attrName']=aU),aV!==''&&(aN['attrType']=aV),aR!==''&&(aN['name']=aR),aN;}['parseSubNode'](aL,aM,aN){const cS=bt;if(aN['singleProperty']===!0x0){let aO=aN['propertyList'][0x0];Array[cS(0x1e9)](aO)?(aM[aN['name']]=aN,aN['a']=aO):aM[aN[cS(0x279)]]=aO;}else{if(aL===cS(0x1b0)&&aN['name']==='C'){let aP=[];aN['propertyList']['forEach'](function(aQ,aR){aR!==0x0&&aP['push'](aQ);}),aM['connections']===void 0x0&&(aM['connections']=[]),aM['connections'][cS(0x1e4)](aP);}else{if(aN['name']==='Properties70')Object['keys'](aN)[cS(0x22a)](function(aQ){aM[aQ]=aN[aQ];});else{if(aL==='Properties70'&&aN[cS(0x279)]==='P'){let aQ=aN['propertyList'][0x0],aR=aN[cS(0x233)][0x1],aS=aN['propertyList'][0x2],aT=aN['propertyList'][0x3],aU;aQ[cS(0x1f3)]('Lcl\x20')===0x0&&(aQ=aQ['replace']('Lcl\x20','Lcl_')),aR['indexOf']('Lcl\x20')===0x0&&(aR=aR[cS(0x1df)]('Lcl\x20','Lcl_')),aU=aR==='Color'||aR==='ColorRGB'||aR==='Vector'||aR===cS(0x1af)||aR[cS(0x1f3)]('Lcl_')===0x0?[aN['propertyList'][0x4],aN[cS(0x233)][0x5],aN['propertyList'][0x6]]:aN[cS(0x233)][0x4],aM[aQ]={'type':aR,'type2':aS,'flag':aT,'value':aU};}else aM[aN[cS(0x279)]]===void 0x0?typeof aN['id']=='number'?(aM[aN['name']]={},aM[aN[cS(0x279)]][aN['id']]=aN):aM[aN['name']]=aN:aN[cS(0x279)]==='PoseNode'?(Array['isArray'](aM[aN['name']])||(aM[aN['name']]=[aM[aN['name']]]),aM[aN['name']]['push'](aN)):aM[aN['name']][aN['id']]===void 0x0&&(aM[aN[cS(0x279)]][aN['id']]=aN);}}}}['parseProperty'](aL){const cT=bt;let aM=aL['getString'](0x1),aN;switch(aM){case'C':return aL['getBoolean']();case'D':return aL['getFloat64']();case'F':return aL[cT(0x200)]();case'I':return aL['getInt32']();case'L':return aL['getInt64']();case'R':return aN=aL['getUint32'](),aL['getArrayBuffer'](aN);case'S':return aN=aL['getUint32'](),aL[cT(0x21c)](aN);case'Y':return aL['getInt16']();case'b':case'c':case'd':case'f':case'i':case'l':let aO=aL['getUint32'](),aP=aL['getUint32'](),aQ=aL[cT(0x1c9)]();if(aP===0x0)switch(aM){case'b':case'c':return aL[cT(0x266)](aO);case'd':return aL['getFloat64Array'](aO);case'f':return aL[cT(0x253)](aO);case'i':return aL['getInt32Array'](aO);case'l':return aL['getInt64Array'](aO);}let aR=new W(aK(new Uint8Array(aL['getArrayBuffer'](aQ)))[cT(0x1d5)]);switch(aM){case'b':case'c':return aR['getBooleanArray'](aO);case'd':return aR['getFloat64Array'](aO);case'f':return aR[cT(0x253)](aO);case'i':return aR[cT(0x1f8)](aO);case'l':return aR[cT(0x1c2)](aO);}break;default:throw Error(cT(0x223)+aM);}}},W=class{constructor(aL,aM){this['dv']=new DataView(aL),this['offset']=0x0,this['littleEndian']=aM===void 0x0?!0x0:aM,this['_textDecoder']=new TextDecoder();}['getOffset'](){return this['offset'];}['size'](){return this['dv']['buffer']['byteLength'];}['skip'](aL){this['offset']+=aL;}['getBoolean'](){return(this['getUint8']()&0x1)==0x1;}['getBooleanArray'](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getBoolean']());return aM;}[bt(0x277)](){let aL=this['dv']['getUint8'](this['offset']);return this['offset']+=0x1,aL;}['getInt16'](){let aL=this['dv']['getInt16'](this['offset'],this['littleEndian']);return this['offset']+=0x2,aL;}['getInt32'](){const cU=bt;let aL=this['dv']['getInt32'](this[cU(0x1bb)],this[cU(0x22f)]);return this['offset']+=0x4,aL;}[bt(0x1f8)](aL){const cV=bt;let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this[cV(0x234)]());return aM;}['getUint32'](){let aL=this['dv']['getUint32'](this['offset'],this['littleEndian']);return this['offset']+=0x4,aL;}['getInt64'](){let aL,aM;return this['littleEndian']?(aL=this['getUint32'](),aM=this['getUint32']()):(aM=this['getUint32'](),aL=this['getUint32']()),aM&0x80000000?(aM=~aM&0xffffffff,aL=~aL&0xffffffff,aL===0xffffffff&&(aM=aM+0x1&0xffffffff),aL=aL+0x1&0xffffffff,-(aM*0x100000000+aL)):aM*0x100000000+aL;}['getInt64Array'](aL){const cW=bt;let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this[cW(0x1db)]());return aM;}['getUint64'](){let aL,aM;return this['littleEndian']?(aL=this['getUint32'](),aM=this['getUint32']()):(aM=this['getUint32'](),aL=this['getUint32']()),aM*0x100000000+aL;}['getFloat32'](){const cX=bt;let aL=this['dv']['getFloat32'](this['offset'],this['littleEndian']);return this[cX(0x1bb)]+=0x4,aL;}['getFloat32Array'](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getFloat32']());return aM;}['getFloat64'](){let aL=this['dv']['getFloat64'](this['offset'],this['littleEndian']);return this['offset']+=0x8,aL;}[bt(0x1bd)](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getFloat64']());return aM;}[bt(0x1c4)](aL){const cY=bt;let aM=this['dv']['buffer'][cY(0x1c0)](this[cY(0x1bb)],this['offset']+aL);return this[cY(0x1bb)]+=aL,aM;}['getString'](aL){const cZ=bt;let aM=this['offset'],aN=new Uint8Array(this['dv']['buffer'],aM,aL);this['skip'](aL);let aO=aN['indexOf'](0x0);return aO>=0x0&&(aN=new Uint8Array(this['dv'][cZ(0x1d5)],aM,aO)),this['_textDecoder']['decode'](aN);}},G=class{[bt(0x1e2)](aL,aM){this[aL]=aM;}};function ve(aL){return aL['byteLength']>=0x15&&$(aL,0x0,0x15)==='Kaydara\x20FBX\x20Binary\x20\x20\x00';}function ye(aL){const d0=bt;let aM=['K','a','y','d','a','r','a','\x5c','F','B','X','\x5c','B','i','n','a','r','y','\x5c','\x5c'],aN=0x0;function aO(aP){let aQ=aL[aP-0x1];return aL=aL['slice'](aN+aP),aN++,aQ;}for(let aP=0x0;aP<aM[d0(0x25d)];++aP)if(aO(0x1)===aM[aP])return!0x1;return!0x0;}function K(aL){let aM=aL['match'](/FBXVersion: (\d+)/);if(aM)return parseInt(aM[0x1]);throw Error('THREE.FBXLoader:\x20Cannot\x20find\x20the\x20version\x20number\x20for\x20the\x20file\x20given.');}function be(aL){return aL/0xac0e8d7b0;}var xe=[];function q(aL,aM,aN,aO){let aP;switch(aO['mappingType']){case'ByPolygonVertex':aP=aL;break;case'ByPolygon':aP=aM;break;case'ByVertice':aP=aN;break;case'AllSame':aP=aO['indices'][0x0];break;default:console['warn']('THREE.FBXLoader:\x20unknown\x20attribute\x20mapping\x20type\x20'+aO['mappingType']);}aO['referenceType']==='IndexToDirect'&&(aP=aO['indices'][aP]);let aQ=aP*aO['dataSize'],aR=aQ+aO['dataSize'];return Ce(xe,aO['buffer'],aQ,aR);}var J=new aj(),Y=new a3();function X(aL){const d1=bt;let aM=new a2(),aN=new a2(),aO=new a2(),aP=new a2(),aQ=new a2(),aR=new a2(),aS=new a2(),aT=new a2(),aU=new a2(),aV=new a2(),aW=new a2(),aX=new a2(),aY=aL['inheritType']?aL[d1(0x22c)]:0x0;aL['translation']&&aM['setPosition'](Y['fromArray'](aL['translation']));let aZ=Z(0x0);if(aL['preRotation']){let bc=aL['preRotation']['map'](al['degToRad']);bc['push'](aZ),aN[d1(0x1f9)](J['fromArray'](bc));}if(aL['rotation']){let bd=aL['rotation']['map'](al['degToRad']);bd['push'](aL['eulerOrder']||aZ),aO['makeRotationFromEuler'](J['fromArray'](bd));}if(aL['postRotation']){let bf=aL[d1(0x281)]['map'](al['degToRad']);bf['push'](aZ),aP[d1(0x1f9)](J['fromArray'](bf)),aP['invert']();}aL['scale']&&aQ['scale'](Y[d1(0x1bf)](aL['scale'])),aL['scalingOffset']&&aS['setPosition'](Y[d1(0x1bf)](aL[d1(0x26f)])),aL['scalingPivot']&&aR[d1(0x1c8)](Y[d1(0x1bf)](aL['scalingPivot'])),aL['rotationOffset']&&aT['setPosition'](Y[d1(0x1bf)](aL['rotationOffset'])),aL['rotationPivot']&&aU['setPosition'](Y['fromArray'](aL['rotationPivot'])),aL['parentMatrixWorld']&&(aW['copy'](aL['parentMatrix']),aV['copy'](aL['parentMatrixWorld']));let b0=aN['clone']()['multiply'](aO)['multiply'](aP),b1=new a2();b1['extractRotation'](aV);let b2=new a2();b2['copyPosition'](aV);let b3=b2[d1(0x203)]()['invert']()['multiply'](aV),b4=b1['clone']()['invert']()['multiply'](b3),b5=aQ,b6=new a2();if(aY===0x0)b6[d1(0x226)](b1)['multiply'](b0)[d1(0x1d9)](b4)['multiply'](b5);else{if(aY===0x1)b6['copy'](b1)['multiply'](b4)['multiply'](b0)['multiply'](b5);else{let bg=new a2()[d1(0x204)](new a3()[d1(0x1fe)](aW))['clone']()['invert'](),bh=b4['clone']()['multiply'](bg);b6['copy'](b1)['multiply'](b0)['multiply'](bh)['multiply'](b5);}}let b7=aU['clone']()['invert'](),b8=aR['clone']()['invert'](),b9=aM['clone']()['multiply'](aT)['multiply'](aU)['multiply'](aN)['multiply'](aO)['multiply'](aP)['multiply'](b7)['multiply'](aS)[d1(0x1d9)](aR)['multiply'](aQ)['multiply'](b8),ba=new a2()[d1(0x1fb)](b9),bb=aV['clone']()['multiply'](ba);return aX['copyPosition'](bb),b9=aX['clone']()['multiply'](b6),b9['premultiply'](aV['invert']()),b9;}function Z(aL){aL=aL||0x0;let aM=['ZYX','YZX','XZY','ZXY','YXZ','XYZ'];return aL===0x6?(console['warn']('THREE.FBXLoader:\x20unsupported\x20Euler\x20Order:\x20Spherical\x20XYZ.\x20Animations\x20and\x20rotations\x20may\x20be\x20incorrect.'),aM[0x0]):aM[aL];}function Q(aL){return aL['split'](',')['map'](function(aM){return parseFloat(aM);});}function $(aL,aM,aN){return aM===void 0x0&&(aM=0x0),aN===void 0x0&&(aN=aL['byteLength']),new TextDecoder()['decode'](new Uint8Array(aL,aM,aN));}function Se(aL,aM){const d2=bt;for(let aN=0x0,aO=aL['length'],aP=aM[d2(0x25d)];aN<aP;aN++,aO++)aL[aO]=aM[aN];}function Ce(aL,aM,aN,aO){for(let aP=aN,aQ=0x0;aP<aO;aP++,aQ++)aL[aQ]=aM[aP];return aL;}export{fe as FBXLoader};