@flyfish-group/file-viewer3 1.0.16 → 1.0.17

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 (252) hide show
  1. package/README.md +14 -13
  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 +5 -2
  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/USDLoader.js +1 -1
  27. package/dist/components/UmdViewer.js +1 -1
  28. package/dist/components/VRMLLoader.js +1 -1
  29. package/dist/components/VTKLoader.js +1 -1
  30. package/dist/components/XYZLoader.js +1 -1
  31. package/dist/components/XlsxTable.js +1 -1
  32. package/dist/components/__vite-browser-external.js +1 -1
  33. package/dist/components/_plugin-vue_export-helper.js +1 -1
  34. package/dist/components/ar-SA-G6X2FPQ2.js +1 -1
  35. package/dist/components/arc.js +1 -1
  36. package/dist/components/architecture-7EHR7CIX.js +1 -1
  37. package/dist/components/architectureDiagram-3BPJPVTR.js +1 -1
  38. package/dist/components/archive.js +1 -1
  39. package/dist/components/asyncToGenerator.js +1 -1
  40. package/dist/components/audio.js +1 -1
  41. package/dist/components/az-AZ-76LH7QW2.js +1 -1
  42. package/dist/components/bash.js +1 -1
  43. package/dist/components/bg-BG-XCXSNQG7.js +1 -1
  44. package/dist/components/blockDiagram-GPEHLZMM.js +1 -1
  45. package/dist/components/bn-BD-2XOGV67Q.js +1 -1
  46. package/dist/components/c4Diagram-AAUBKEIU.js +1 -1
  47. package/dist/components/ca-ES-6MX7JW3Y.js +1 -1
  48. package/dist/components/cad.js +1 -1
  49. package/dist/components/cfb.js +1 -1
  50. package/dist/components/channel.js +1 -1
  51. package/dist/components/chunk-2J33WTMH.js +1 -1
  52. package/dist/components/chunk-3OPIFGDE.js +1 -1
  53. package/dist/components/chunk-4BX2VUAB.js +1 -1
  54. package/dist/components/chunk-55IACEB6.js +1 -1
  55. package/dist/components/chunk-5ZQYHXKU.js +1 -1
  56. package/dist/components/chunk-6U3AYISY.js +1 -1
  57. package/dist/components/chunk-727SXJPM.js +1 -1
  58. package/dist/components/chunk-AGHRB4JF.js +1 -1
  59. package/dist/components/chunk-AQP2D5EJ.js +1 -1
  60. package/dist/components/chunk-BSJP7CBP.js +1 -1
  61. package/dist/components/chunk-CSCIHK7Q.js +1 -1
  62. package/dist/components/chunk-FMBD7UC4.js +1 -1
  63. package/dist/components/chunk-K2UTITRG.js +1 -1
  64. package/dist/components/chunk-KSCS5N6A.js +1 -1
  65. package/dist/components/chunk-L5ZTLDWV.js +1 -1
  66. package/dist/components/chunk-LZXEDZCA.js +1 -1
  67. package/dist/components/chunk-ND2GUHAM.js +1 -1
  68. package/dist/components/chunk-NZK2D7GU.js +1 -1
  69. package/dist/components/chunk-O5CBEL6O.js +1 -1
  70. package/dist/components/chunk-QZHKN3VN.js +1 -1
  71. package/dist/components/chunk-SRAX5OIU.js +1 -1
  72. package/dist/components/chunk-WU5MYG2G.js +1 -1
  73. package/dist/components/chunk-XPW4576I.js +1 -1
  74. package/dist/components/chunk-Z3N5DIM6.js +1 -1
  75. package/dist/components/chunk-ZUYEQ4TG.js +1 -1
  76. package/dist/components/chunk.js +1 -1
  77. package/dist/components/classDiagram-4FO5ZUOK.js +1 -1
  78. package/dist/components/classDiagram-v2-Q7XG4LA2.js +1 -1
  79. package/dist/components/core.js +1 -1
  80. package/dist/components/cose-bilkent-S5V4N54A.js +1 -1
  81. package/dist/components/cpp.js +1 -1
  82. package/dist/components/cs-CZ-2BRQDIVT.js +1 -1
  83. package/dist/components/csharp.js +1 -1
  84. package/dist/components/css.js +1 -1
  85. package/dist/components/cytoscape.esm.js +1 -1
  86. package/dist/components/da-DK-5WZEPLOC.js +1 -1
  87. package/dist/components/dagre-BM42HDAG.js +1 -1
  88. package/dist/components/dagre.js +1 -1
  89. package/dist/components/de-DE-XR44H4JA.js +1 -1
  90. package/dist/components/defaultLocale.js +1 -1
  91. package/dist/components/defineProperty.js +1 -1
  92. package/dist/components/diagram-2AECGRRQ.js +1 -1
  93. package/dist/components/diagram-5GNKFQAL.js +1 -1
  94. package/dist/components/diagram-KO2AKTUF.js +1 -1
  95. package/dist/components/diagram-LMA3HP47.js +1 -1
  96. package/dist/components/diagram-OG6HWLK6.js +1 -1
  97. package/dist/components/diff.js +1 -1
  98. package/dist/components/directory-open-01563666.js +1 -1
  99. package/dist/components/directory-open-4ed118d0.js +1 -1
  100. package/dist/components/dist.js +1 -1
  101. package/dist/components/dist2.js +1 -1
  102. package/dist/components/dist3.js +1 -1
  103. package/dist/components/docx-preview.js +1 -1
  104. package/dist/components/drawing.js +1 -1
  105. package/dist/components/ebook.js +1 -1
  106. package/dist/components/eda.js +1 -1
  107. package/dist/components/el-GR-BZB4AONW.js +1 -1
  108. package/dist/components/email.js +1 -1
  109. package/dist/components/en-B4ZKOASM.js +1 -1
  110. package/dist/components/erDiagram-TEJ5UH35.js +1 -1
  111. package/dist/components/es-ES-U4NZUMDT.js +1 -1
  112. package/dist/components/eu-ES-A7QVB2H4.js +1 -1
  113. package/dist/components/eventmodeling-FCH6USID.js +1 -1
  114. package/dist/components/fa-IR-HGAKTJCU.js +1 -1
  115. package/dist/components/fflate.module.js +1 -1
  116. package/dist/components/fi-FI-Z5N7JZ37.js +1 -1
  117. package/dist/components/file-open-002ab408.js +1 -1
  118. package/dist/components/file-open-7c801643.js +1 -1
  119. package/dist/components/file-save-3189631c.js +1 -1
  120. package/dist/components/file-save-745eba88.js +1 -1
  121. package/dist/components/flowDiagram-I6XJVG4X.js +1 -1
  122. package/dist/components/fr-FR-RHASNOE6.js +1 -1
  123. package/dist/components/ganttDiagram-6RSMTGT7.js +1 -1
  124. package/dist/components/gitGraph-WXDBUCRP.js +1 -1
  125. package/dist/components/gitGraphDiagram-PVQCEYII.js +1 -1
  126. package/dist/components/gl-ES-HMX3MZ6V.js +1 -1
  127. package/dist/components/go.js +1 -1
  128. package/dist/components/graphlib.js +1 -1
  129. package/dist/components/he-IL-6SHJWFNN.js +1 -1
  130. package/dist/components/hi-IN-IWLTKZ5I.js +1 -1
  131. package/dist/components/hu-HU-A5ZG7DT2.js +1 -1
  132. package/dist/components/id-ID-SAP4L64H.js +1 -1
  133. package/dist/components/image-GAAHSSAO.js +1 -1
  134. package/dist/components/image-blob-reduce.esm.js +1 -1
  135. package/dist/components/image.js +1 -1
  136. package/dist/components/info-J43DQDTF.js +1 -1
  137. package/dist/components/infoDiagram-5YYISTIA.js +1 -1
  138. package/dist/components/ini.js +1 -1
  139. package/dist/components/init.js +1 -1
  140. package/dist/components/ishikawaDiagram-YF4QCWOH.js +1 -1
  141. package/dist/components/it-IT-JPQ66NNP.js +1 -1
  142. package/dist/components/ja-JP-DBVTYXUO.js +1 -1
  143. package/dist/components/java.js +1 -1
  144. package/dist/components/javascript.js +1 -1
  145. package/dist/components/journeyDiagram-JHISSGLW.js +1 -1
  146. package/dist/components/json.js +1 -1
  147. package/dist/components/jszip.min.js +1 -1
  148. package/dist/components/kaa-6HZHGXH3.js +1 -1
  149. package/dist/components/kab-KAB-ZGHBKWFO.js +1 -1
  150. package/dist/components/kanban-definition-UN3LZRKU.js +1 -1
  151. package/dist/components/katex.js +1 -1
  152. package/dist/components/kk-KZ-P5N5QNE5.js +1 -1
  153. package/dist/components/km-KH-HSX4SM5Z.js +1 -1
  154. package/dist/components/ko-KR-MTYHY66A.js +1 -1
  155. package/dist/components/ku-TR-6OUDTVRD.js +1 -1
  156. package/dist/components/lib.js +1 -1
  157. package/dist/components/libarchive.js +1 -1
  158. package/dist/components/linear.js +1 -1
  159. package/dist/components/lt-LT-XHIRWOB4.js +1 -1
  160. package/dist/components/lv-LV-5QDEKY6T.js +1 -1
  161. package/dist/components/markdown.js +1 -1
  162. package/dist/components/md.js +1 -1
  163. package/dist/components/mermaid-parser.core.js +1 -1
  164. package/dist/components/mindmap-definition-RKZ34NQL.js +1 -1
  165. package/dist/components/model.js +1 -1
  166. package/dist/components/mp4.js +1 -1
  167. package/dist/components/mr-IN-CRQNXWMA.js +1 -1
  168. package/dist/components/my-MM-5M5IBNSE.js +1 -1
  169. package/dist/components/nb-NO-T6EIAALU.js +1 -1
  170. package/dist/components/nestedRender.js +1 -1
  171. package/dist/components/nl-NL-IS3SIHDZ.js +1 -1
  172. package/dist/components/nn-NO-6E72VCQL.js +1 -1
  173. package/dist/components/objectSpread2.js +1 -1
  174. package/dist/components/objectWithoutProperties.js +1 -1
  175. package/dist/components/oc-FR-POXYY2M6.js +1 -1
  176. package/dist/components/ofd.js +1 -1
  177. package/dist/components/ofd2.js +1 -1
  178. package/dist/components/ordinal.js +1 -1
  179. package/dist/components/pa-IN-N4M65BXN.js +1 -1
  180. package/dist/components/packet-YPE3B663.js +1 -1
  181. package/dist/components/pdf.js +1 -1
  182. package/dist/components/percentages-BXMCSKIN.js +1 -1
  183. package/dist/components/php.js +1 -1
  184. package/dist/components/pica.js +1 -1
  185. package/dist/components/pie-LRSECV5Y.js +1 -1
  186. package/dist/components/pie.js +1 -1
  187. package/dist/components/pieDiagram-4H26LBE5.js +1 -1
  188. package/dist/components/pl-PL-T2D74RX3.js +1 -1
  189. package/dist/components/postal-mime.js +1 -1
  190. package/dist/components/pptx.js +1 -1
  191. package/dist/components/prod.js +1 -1
  192. package/dist/components/pt-BR-5N22H2LF.js +1 -1
  193. package/dist/components/pt-PT-UZXXM6DQ.js +1 -1
  194. package/dist/components/python.js +1 -1
  195. package/dist/components/quadrantDiagram-W4KKPZXB.js +1 -1
  196. package/dist/components/radar-GUYGQ44K.js +1 -1
  197. package/dist/components/requirementDiagram-4Y6WPE33.js +1 -1
  198. package/dist/components/ro-RO-JPDTUUEW.js +1 -1
  199. package/dist/components/rough.esm.js +1 -1
  200. package/dist/components/roundRect.js +1 -1
  201. package/dist/components/ru-RU-B4JR7IUQ.js +1 -1
  202. package/dist/components/rust.js +1 -1
  203. package/dist/components/sankeyDiagram-5OEKKPKP.js +1 -1
  204. package/dist/components/sequenceDiagram-3UESZ5HK.js +1 -1
  205. package/dist/components/shared.js +1 -1
  206. package/dist/components/shared2.js +1 -1
  207. package/dist/components/si-LK-N5RQ5JYF.js +1 -1
  208. package/dist/components/sk-SK-C5VTKIMK.js +1 -1
  209. package/dist/components/sl-SI-NN7IZMDC.js +1 -1
  210. package/dist/components/sql.js +1 -1
  211. package/dist/components/src.js +1 -1
  212. package/dist/components/src2.js +1 -1
  213. package/dist/components/stateDiagram-AJRCARHV.js +1 -1
  214. package/dist/components/stateDiagram-v2-BHNVJYJU.js +1 -1
  215. package/dist/components/subset-shared.chunk.js +1 -1
  216. package/dist/components/subset-worker.chunk.js +1 -1
  217. package/dist/components/sv-SE-XGPEYMSR.js +1 -1
  218. package/dist/components/ta-IN-2NMHFXQM.js +1 -1
  219. package/dist/components/text.js +1 -1
  220. package/dist/components/th-TH-HPSO5L25.js +1 -1
  221. package/dist/components/three.module.js +1 -1
  222. package/dist/components/time.js +1 -1
  223. package/dist/components/timeline-definition-PNZ67QCA.js +1 -1
  224. package/dist/components/tr-TR-DEFEU3FU.js +1 -1
  225. package/dist/components/treeView-BLDUP644.js +1 -1
  226. package/dist/components/treemap-LRROVOQU.js +1 -1
  227. package/dist/components/typescript.js +1 -1
  228. package/dist/components/uk-UA-QMV73CPH.js +1 -1
  229. package/dist/components/umd.js +1 -1
  230. package/dist/components/use.js +1 -1
  231. package/dist/components/util.js +1 -1
  232. package/dist/components/vennDiagram-CIIHVFJN.js +1 -1
  233. package/dist/components/vi-VN-M7AON7JQ.js +1 -1
  234. package/dist/components/wardley-L42UT6IY.js +1 -1
  235. package/dist/components/wardleyDiagram-YWT4CUSO.js +1 -1
  236. package/dist/components/word.js +1 -1
  237. package/dist/components/worker-ref.js +1 -1
  238. package/dist/components/wrapAsyncGenerator.js +1 -1
  239. package/dist/components/xlsx.js +1 -1
  240. package/dist/components/xml.js +1 -1
  241. package/dist/components/xychartDiagram-2RQKCTM6.js +1 -1
  242. package/dist/components/yaml.js +1 -1
  243. package/dist/components/zh-CN-LNUGB5OW.js +1 -1
  244. package/dist/components/zh-HK-E62DVLB3.js +1 -1
  245. package/dist/components/zh-TW-RAJ6MFWO.js +1 -1
  246. package/dist/file-viewer3.css +1 -1
  247. package/dist/index.mjs +1 -1
  248. package/dist/src/package/common/printCapability.d.ts +27 -0
  249. package/dist/src/package/common/type.d.ts +27 -0
  250. package/dist/src/package/components/FileViewer/FileViewer.vue.d.ts +13 -2
  251. package/dist/src/package/index.d.ts +1 -1
  252. package/package.json +1 -1
@@ -1 +1 @@
1
- const bt=a1;function a1(a,b){a=a-0x79;const c=a0();let d=c[a];return d;}(function(aL,aM){const bm=a1,aN=aL();while(!![]){try{const aO=parseInt(bm(0x121))/0x1+-parseInt(bm(0xb8))/0x2+-parseInt(bm(0xf0))/0x3+parseInt(bm(0x127))/0x4+parseInt(bm(0x133))/0x5+-parseInt(bm(0x94))/0x6*(-parseInt(bm(0xeb))/0x7)+-parseInt(bm(0x104))/0x8;if(aO===aM)break;else aN['push'](aN['shift']());}catch(aP){aN['push'](aN['shift']());}}}(a0,0x87e0d));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){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['floor']((aP+aQ)/0x2);for(;aM<aN[aR]||aM>=aN[aR+0x1];)aM<aN[aR]?aQ=aR:aP=aR,aR=Math[bn(0x15e)]((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(0xdf)](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(0x81)](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 a0(){const dg=['degToRad','THREE.FBXLoader:\x20Vertex\x20has\x20more\x20than\x204\x20skinning\x20weights\x20assigned\x20to\x20vertex.\x20Deleting\x20additional\x20weights.','parent','Maya|TEX_color_map','skip','has','matrix','isArray','weightsIndices','concat','parseMeshGeometry','parse','geometryID','trim','toJSON','NoMappingInformation','LayerElementUV','GeometricScaling','match','THREE.FBXLoader:\x20FBX\x20version\x20not\x20supported,\x20FileVersion:\x20','int','}(\x5cw+):(.*){','skeleton','PreRotation','Vertices','children','relationship','synchronizeCurve','getFloat32','YXZ','getTexture','65872EnyPEN','Lcl_Rotation','LayerElementColor','invert','rotation','controlPoints','THREE.FBXLoader:\x20layered\x20textures\x20are\x20not\x20supported\x20in\x20three.js.\x20Discarding\x20all\x20but\x20first\x20layer.','fromArray','manager','littleEndian','warn','NbPoseNodes','NodeAttribute','multiply','modelName','rawBones','pop','FBXLoader:\x20Undefined\x20filename,\x20creating\x20placeholder\x20texture.','toArray','createMesh','curves','png','Content','colorSpaceToWorking','getInt16','rotationOffset','tif','Video','vertexIndices','parseVertexColors','setPath','times','count','preRotation','skeletons','FileName','vertexPositions','values','clone','slice','bmp','attrName','getPrevNode','genGeometry','PostRotation','Form','setLookAtProperties','push','EmissiveColor','OuterAngle','forEach','2851303wkAwuh','DiffuseColor','emissiveIntensity','postRotation','max','2818449fkEisg','copy','morph','Matrix','extractRotation','getInt32','LightType','FBX_Deformer','translation','material','Lcl\x20','name','InnerAngle','replace','setAttribute','parentMatrixWorld','getNormalNewell','endKnot','ByVertice','ScalingPivot','7810480UvyKyV','set','split','number','emissive','parseAnimationLayers','NormalMap','parents','byteLength','transparent','setWithCredentials','originalName','interpolateRotations','repeat','parseClips','getFloat64Array','colors','color','getFloat64','attr','FarAttenuationEnd','LayerElementNormal','unitScaleFactor','applyMatrix4','parseMaterialIndices','getCurrentNode','parseNodeAttr','toLowerCase','getOffset','1019368MDTNzs','generateVectorTrack','indexOf','PoseNode','lookAt','value','1894000TOkswl','arraybuffer','error','vertexWeights','Model','referenceType','image/tiff','resourcePath','emissiveMap','reduce','length','THREE.FBXLoader:\x20Encountered\x20a\x20unused\x20curve.','988800wUvrkC','GlobalSettings','Objects','getKeyframeTrackValues','geoID','image/jpeg','currentIndent','Properties70','bindSkeleton','eulerOrder','getTransformData','connections','setFocalLength','parseGeoNode','propertyList','map','wrapT','Camera','parseUVs','AllSame','extractUrlBase','Emissive','Points','flattenVertex','parseAnimStacks','UVIndex','get','getTangent','ColorRGB','attrType','parseMaterials','jpg','LayeredTexture','RelativeFilename','inheritType','TransparencyFactor','blob:','Number','attributes','RotationOrder','filter','nodeStack','getFloat32Array','floor','getArrayBuffer','skinIndex','parseTextures','IndexToDirect','sanitizeNodeName','uvs','crossOrigin','setFromEuler','NearPlane','textureLoader','PolygonVertexIndex','userData','ReferenceInformationType','generateRotationTrack','normal','setFromQuaternion','Weights','groups','keys','parseAnimationCurves','bumpScale','add','morphTargetsRelative','weightTable','getUint32','FieldOfView','position','LookAtProperty','Color','getHandler','knots','materialIndex','parseTexture','ZXY','enum','parseGeometry','type','offset','vertex','degree','12DoiKEj','parseSkeleton','_textDecoder','morphTargetDictionary','mappingType'];a0=function(){return dg;};return a0();}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['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][bq(0xde)]();for(let aU=0x1;aU<=aS;++aU)aT['sub'](aP[aS-aU][bq(0xde)]()['multiplyScalar'](ue(aS,aU)*aO[aU]));aP[aS]=aT['divideScalar'](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(0x131)]-0x1:0x0,aR=aN?aN['length']:0x0;this['degree']=aL,this['knots']=aM,this[br(0xbd)]=[],this['startKnot']=aO||0x0,this['endKnot']=aP||aQ;for(let aS=0x0;aS<aR;++aS){let aT=aN[aS];this[br(0xbd)][aS]=new ak(aT['x'],aT['y'],aT['z'],aT['w']);}}['getPoint'](aL,aM=new a3()){const bs=a1;let aN=aM,aO=this[bs(0x8a)][this['startKnot']]+aL*(this[bs(0x8a)][this['endKnot']]-this['knots'][this['startKnot']]),aP=se(this['degree'],this['knots'],this[bs(0xbd)],aO);return aP['w']!==0x1&&aP['divideScalar'](aP['w']),aN['set'](aP['x'],aP['y'],aP['z']);}[bt(0x14e)](aL,aM=new a3()){const bu=bt;let aN=aM,aO=this[bu(0x8a)][0x0]+aL*(this['knots'][this['knots']['length']-0x1]-this[bu(0x8a)][0x0]),aP=z(this['degree'],this['knots'],this['controlPoints'],aO,0x1);return aN['copy'](aP[0x1])['normalize'](),aN;}[bt(0xa7)](){const bv=bt;let aL=super[bv(0xa7)]();return aL['degree']=this['degree'],aL['knots']=[...this[bv(0x8a)]],aL['controlPoints']=this[bv(0xbd)]['map'](aM=>aM[bv(0xca)]()),aL['startKnot']=this['startKnot'],aL[bv(0x101)]=this[bv(0x101)],aL;}['fromJSON'](aL){const bw=bt;return super['fromJSON'](aL),this['degree']=aL[bw(0x93)],this['knots']=[...aL['knots']],this['controlPoints']=aL['controlPoints']['map'](aM=>new ak(aM[0x0],aM[0x1],aM[0x2],aM[0x3])),this['startKnot']=aL['startKnot'],this['endKnot']=aL['endKnot'],this;}},V,H,U,fe=class extends ab{constructor(aL){super(aL);}['load'](aL,aM,aN,aO){const bx=bt;let aP=this,aQ=aP['path']===''?ay[bx(0x147)](aL):aP['path'],aR=new a4(this['manager']);aR[bx(0xd6)](aP['path']),aR['setResponseType'](bx(0x128)),aR['setRequestHeader'](aP['requestHeader']),aR[bx(0x10e)](aP['withCredentials']),aR['load'](aL,function(aS){const by=bx;try{aM(aP['parse'](aS,aQ));}catch(aT){aO?aO(aT):console[by(0x129)](aT),aP['manager']['itemError'](aL);}},aN,aO);}['parse'](aL,aM){const bz=bt;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(bz(0xac)+K(aN));V=new ge()['parse'](aN);}return new pe(new a9(this['manager'])['setPath'](this[bz(0x12e)]||aM)['setCrossOrigin'](this[bz(0x165)]),this['manager'])[bz(0xa4)](V);}},pe=class{constructor(aL,aM){this['textureLoader']=aL,this['manager']=aM;}[bt(0xa4)](){const bA=bt;H=this['parseConnections']();let aL=this['parseImages'](),aM=this['parseTextures'](aL),aN=this[bA(0x151)](aM),aO=this['parseDeformers'](),aP=new me()['parse'](aO);return this['parseScene'](aO,aP,aN),U;}['parseConnections'](){const bB=bt;let aL=new Map();return'Connections'in V&&V['Connections'][bB(0x13e)]['forEach'](function(aM){const bC=bB;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['get'](aN)['parents']['push'](aQ),aL['has'](aO)||aL['set'](aO,{'parents':[],'children':[]});let aR={'ID':aN,'relationship':aP};aL['get'](aO)['children'][bC(0xe7)](aR);}),aL;}['parseImages'](){const bD=bt;let aL={},aM={};if('Video'in V['Objects']){let aN=V['Objects'][bD(0xd3)];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[bD(0xce)]['byteLength']>0x0,aS=typeof aP['Content']=='string'&&aP['Content']!=='';if(aR||aS){let aT=this['parseImage'](aN[aO]);aM[aP[bD(0x154)]||aP['Filename']]=aT;}}}}for(let aU in aL){let aV=aL[aU];aM[aV]===void 0x0?aL[aU]=aL[aU]['split']('\x5c')[bD(0xc8)]():aL[aU]=aM[aV];}return aL;}['parseImage'](aL){const bE=bt;let aM=aL['Content'],aN=aL['RelativeFilename']||aL['Filename'],aO=aN['slice'](aN['lastIndexOf']('.')+0x1)['toLowerCase'](),aP;switch(aO){case bE(0xe0):aP='image/bmp';break;case bE(0x152):case'jpeg':aP=bE(0x138);break;case bE(0xcd):aP='image/png';break;case bE(0xd2):aP=bE(0x12d);break;case'tga':this[bE(0xc0)][bE(0x89)]('.tga')===null&&console[bE(0xc2)]('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}));}}[bt(0x161)](aL){const bF=bt;let aM=new Map();if('Texture'in V['Objects']){let aN=V['Objects']['Texture'];for(let aO in aN){let aP=this[bF(0x8c)](aN[aO],aL);aM['set'](parseInt(aO),aP);}}return aM;}['parseTexture'](aL,aM){const bG=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['wrapS']=aQ===0x0?a5:aq,aN[bG(0x143)]=aR===0x0?a5:aq,'Scaling'in aL){let aS=aL['Scaling']['value'];aN['repeat']['x']=aS[0x0],aN[bG(0x111)]['y']=aS[0x1];}if('Translation'in aL){let aT=aL['Translation']['value'];aN[bG(0x91)]['x']=aT[0x0],aN['offset']['y']=aT[0x1];}return aN;}['loadTexture'](aL,aM){const bH=bt;let aN=aL[bH(0xdb)]['split']('.')['pop']()['toLowerCase'](),aO=this['manager']['getHandler']('.'+aN);aO===null&&(aO=this[bH(0x168)]);let aP=aO['path'];aP||aO[bH(0xd6)](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'](bH(0x157))===0x0||aR['indexOf']('data:')===0x0)&&aO['setPath'](void 0x0)),aR===void 0x0)return console['warn'](bH(0xc9)),new af();let aS=aO['load'](aR);return aO['setPath'](aP),aS;}[bt(0x151)](aL){const bI=bt;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[bI(0x105)](parseInt(aO),aP);}}return aM;}['parseMaterial'](aL,aM){const bJ=bt;let aN=aL['id'],aO=aL['attrName'],aP=aL['ShadingModel'];if(typeof aP=='object'&&(aP=aP[bJ(0x126)]),!H['has'](aN))return null;let aQ=this['parseParameters'](aL,aM,aN),aR;switch(aP[bJ(0x11f)]()){case'phong':aR=new aA();break;case'lambert':aR=new au();break;default:console[bJ(0xc2)]('THREE.FBXLoader:\x20unknown\x20material\x20type\x20\x22%s\x22.\x20Defaulting\x20to\x20MeshPhongMaterial.',aP),aR=new aA();break;}return aR['setValues'](aQ),aR['name']=aO,aR;}['parseParameters'](aL,aM,aN){const bK=bt;let aO={};aL['BumpFactor']&&(aO[bK(0x80)]=aL['BumpFactor']['value']),aL['Diffuse']?aO['color']=as['colorSpaceToWorking'](new aw()['fromArray'](aL['Diffuse'][bK(0x126)]),aF):aL[bK(0xec)]&&(aL['DiffuseColor']['type']===bK(0x88)||aL['DiffuseColor'][bK(0x90)]==='ColorRGB')&&(aO[bK(0x115)]=as['colorSpaceToWorking'](new aw()[bK(0xbf)](aL['DiffuseColor']['value']),aF)),aL['DisplacementFactor']&&(aO['displacementScale']=aL['DisplacementFactor']['value']),aL['Emissive']?aO[bK(0x108)]=as['colorSpaceToWorking'](new aw()[bK(0xbf)](aL[bK(0x148)]['value']),aF):aL['EmissiveColor']&&(aL['EmissiveColor']['type']==='Color'||aL['EmissiveColor']['type']==='ColorRGB')&&(aO['emissive']=as['colorSpaceToWorking'](new aw()['fromArray'](aL['EmissiveColor']['value']),aF)),aL['EmissiveFactor']&&(aO[bK(0xed)]=parseFloat(aL['EmissiveFactor']['value'])),aO['opacity']=0x1-(aL['TransparencyFactor']?parseFloat(aL['TransparencyFactor']['value']):0x0),(aO['opacity']===0x1||aO['opacity']===0x0)&&(aO['opacity']=aL['Opacity']?parseFloat(aL['Opacity']['value']):null,aO['opacity']===null&&(aO['opacity']=0x1)),aO['opacity']<0x1&&(aO[bK(0x10d)]=!0x0),aL['ReflectionFactor']&&(aO['reflectivity']=aL['ReflectionFactor']['value']),aL['Shininess']&&(aO['shininess']=aL['Shininess']['value']),aL['Specular']?aO['specular']=as['colorSpaceToWorking'](new aw()['fromArray'](aL['Specular']['value']),aF):aL['SpecularColor']&&aL['SpecularColor']['type']===bK(0x88)&&(aO['specular']=as['colorSpaceToWorking'](new aw()[bK(0xbf)](aL['SpecularColor']['value']),aF));let aP=this;return H['get'](aN)['children']['forEach'](function(aQ){const bL=bK;let aR=aQ['relationship'];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 bL(0x9c):aO['map']=aP[bL(0xb7)](aM,aQ['ID']),aO['map']!==void 0x0&&(aO[bL(0x142)]['colorSpace']=aF);break;case'DisplacementColor':aO['displacementMap']=aP['getTexture'](aM,aQ['ID']);break;case bL(0xe8):aO['emissiveMap']=aP['getTexture'](aM,aQ['ID']),aO[bL(0x12f)]!==void 0x0&&(aO['emissiveMap']['colorSpace']=aF);break;case bL(0x10a):case'Maya|TEX_normal_map':aO['normalMap']=aP['getTexture'](aM,aQ['ID']);break;case'ReflectionColor':aO['envMap']=aP['getTexture'](aM,aQ['ID']),aO['envMap']!==void 0x0&&(aO['envMap']['mapping']=0x12f,aO['envMap']['colorSpace']=aF);break;case'SpecularColor':aO['specularMap']=aP['getTexture'](aM,aQ['ID']),aO['specularMap']!==void 0x0&&(aO['specularMap']['colorSpace']=aF);break;case'TransparentColor':case bL(0x156):aO['alphaMap']=aP['getTexture'](aM,aQ['ID']),aO[bL(0x10d)]=!0x0;break;default:console[bL(0xc2)]('THREE.FBXLoader:\x20%s\x20map\x20is\x20not\x20supported\x20in\x20three.js,\x20skipping\x20texture.',aR);break;}}),aO;}[bt(0xb7)](aL,aM){const bM=bt;return bM(0x153)in V['Objects']&&aM in V['Objects']['LayeredTexture']&&(console['warn'](bM(0xbe)),aM=H['get'](aM)[bM(0xb2)][0x0]['ID']),aL[bM(0x14d)](aM);}['parseDeformers'](){const bN=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['get'](parseInt(aO));if(aP['attrType']==='Skin'){let aR=this['parseSkeleton'](aQ,aN);aR['ID']=aO,aQ['parents']['length']>0x1&&console[bN(0xc2)]('THREE.FBXLoader:\x20skeleton\x20attached\x20to\x20more\x20than\x20one\x20geometry\x20is\x20not\x20supported.'),aR[bN(0xa5)]=aQ['parents'][0x0]['ID'],aL[aO]=aR;}else{if(aP['attrType']==='BlendShape'){let aS={'id':aO};aS['rawTargets']=this['parseMorphTargets'](aQ,aN),aS['id']=aO,aQ[bN(0x10b)]['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};}[bt(0x95)](aL,aM){const bO=bt;let aN=[];return aL['children'][bO(0xea)](function(aO){const bP=bO;let aP=aM[aO['ID']];if(aP['attrType']!=='Cluster')return;let aQ={'ID':aO['ID'],'indices':[],'weights':[],'transformLink':new a2()[bP(0xbf)](aP['TransformLink']['a'])};'Indexes'in aP&&(aQ['indices']=aP['Indexes']['a'],aQ['weights']=aP[bP(0x7c)]['a']),aN['push'](aQ);}),{'rawBones':aN,'bones':[]};}['parseMorphTargets'](aL,aM){const bQ=bt;let aN=[];for(let aO=0x0;aO<aL['children']['length'];aO++){let aP=aL['children'][aO],aQ=aM[aP['ID']],aR={'name':aQ[bQ(0xe1)],'initialWeight':aQ['DeformPercent'],'id':aQ['id'],'fullWeights':aQ['FullWeights']['a']};if(aQ[bQ(0x150)]!=='BlendShapeChannel')return;aR['geoID']=H[bQ(0x14d)](parseInt(aP['ID']))[bQ(0xb2)][bQ(0x15b)](function(aS){return aS['relationship']===void 0x0;})[0x0]['ID'],aN[bQ(0xe7)](aR);}return aN;}['parseScene'](aL,aM,aN){const bV=bt;U=new a7();let aO=this['parseModels'](aL['skeletons'],aM,aN),aP=V['Objects']['Model'],aQ=this;aO['forEach'](function(aV){const bR=a1;let aW=aP[aV['ID']];aQ[bR(0xe6)](aV,aW),H['get'](aV['ID'])[bR(0x10b)]['forEach'](function(aX){let aY=aO['get'](aX['ID']);aY!==void 0x0&&aY['add'](aV);}),aV[bR(0x9b)]===null&&U['add'](aV);}),this['addGlobalSceneSettings'](),U['traverse'](function(aV){const bS=a1;if(aV['userData']['transformData']){aV['parent']&&(aV['userData']['transformData']['parentMatrix']=aV['parent'][bS(0x9f)],aV[bS(0x16a)]['transformData']['parentMatrixWorld']=aV['parent']['matrixWorld']);let aW=X(aV['userData']['transformData']);aV[bS(0x11b)](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 bT=a1;let aY=aL[bT(0xda)][aV]['bones'][aX];aY&&aS['add'](aY['ID']);});let aT=new a2();U['traverse'](function(aW){const bU=a1;if(aW['isBone']&&aW['ID']!==void 0x0&&!aS[bU(0x9e)](aW['ID'])){let aX=aR[aW['ID']];aX!==void 0x0&&(aW['parent']?(aT[bU(0xf1)](aW['parent']['matrixWorld'])['invert'](),aT['multiply'](aX)):aT['copy'](aX),aT['decompose'](aW['position'],aW['quaternion'],aW['scale']),aW['updateMatrix'](),aW['matrixWorld'][bU(0xf1)](aX));}}),this['bindSkeleton'](aL['skeletons'],aM,aO);let aU=new he()[bV(0xa4)]();U[bV(0xb2)]['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'][bV(0x105)](-Math['PI']/0x2,0x0,0x0));}['parseModels'](aL,aM,aN){const bW=bt;let aO=new Map(),aP=V['Objects'][bW(0x12b)];for(let aQ in aP){let aR=parseInt(aQ),aS=aP[aQ],aT=H[bW(0x14d)](aR),aU=this['buildSkeleton'](aT,aL,aR,aS['attrName']);if(!aU){switch(aS['attrType']){case bW(0x144):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'Root':aU=new av();break;default:aU=new a7();break;}aU[bW(0xfb)]=aS['attrName']?aD['sanitizeNodeName'](aS['attrName']):'',aU['userData'][bW(0x10f)]=aS['attrName'],aU['ID']=aR;}this['getTransformData'](aU,aS),aO['set'](aR,aU);}return aO;}['buildSkeleton'](aL,aM,aN,aO){let aP=null;return aL['parents']['forEach'](function(aQ){const bX=a1;for(let aR in aM){let aS=aM[aR];aS[bX(0xc7)]['forEach'](function(aT,aU){const bY=bX;if(aT['ID']===aQ['ID']){let aV=aP;aP=new av(),aP['matrixWorld'][bY(0xf1)](aT['transformLink']),aP['name']=aO?aD[bY(0x163)](aO):'',aP['userData']['originalName']=aO,aP['ID']=aN,aS['bones'][aU]=aP,aV!==null&&aP['add'](aV);}});}}),aP;}['createCamera'](aL){const bZ=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=0x0;aN['CameraProjectionType']!==void 0x0&&aN['CameraProjectionType'][bZ(0x126)]===0x1&&(aO=0x1);let aP=0x1;aN[bZ(0x167)]!==void 0x0&&(aP=aN['NearPlane']['value']/0x3e8);let aQ=0x3e8;aN['FarPlane']!==void 0x0&&(aQ=aN['FarPlane']['value']/0x3e8);let aR=window['innerWidth'],aS=window['innerHeight'];aN['AspectWidth']!==void 0x0&&aN['AspectHeight']!==void 0x0&&(aR=aN['AspectWidth']['value'],aS=aN['AspectHeight'][bZ(0x126)]);let aT=aR/aS,aU=0x2d;aN[bZ(0x85)]!==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[bZ(0x13f)](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;}['createLight'](aL){const c1=bt;let aM,aN;if(aL['children']['forEach'](function(aO){const c0=a1;let aP=V[c0(0x135)][c0(0xc4)][aO['ID']];aP!==void 0x0&&(aN=aP);}),aN===void 0x0)aM=new ao();else{let aO;aO=aN['LightType']===void 0x0?0x0:aN[c1(0xf6)][c1(0x126)];let aP=0xffffff;aN['Color']!==void 0x0&&(aP=as['colorSpaceToWorking'](new aw()['fromArray'](aN['Color']['value']),aF));let aQ=aN['Intensity']===void 0x0?0x1:aN['Intensity']['value']/0x64;aN['CastLightOnObject']!==void 0x0&&aN['CastLightOnObject']['value']===0x0&&(aQ=0x0);let aR=0x0;switch(aN[c1(0x118)]!==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[c1(0xe9)]===void 0x0?aN['InnerAngle']!==void 0x0&&(aS=al['degToRad'](aN['InnerAngle']['value'])):(aS=al[c1(0x99)](aN['OuterAngle']['value']),aN[c1(0xfc)]!==void 0x0&&(aT=0x1-aN['InnerAngle'][c1(0x126)]/aN['OuterAngle'][c1(0x126)],aT=Math[c1(0xef)](0x0,aT))),aM=new ac(aP,aQ,aR,aS,aT,0x1);break;default:console[c1(0xc2)]('THREE.FBXLoader:\x20Unknown\x20light\x20type\x20'+aN['LightType'][c1(0x126)]+',\x20defaulting\x20to\x20a\x20PointLight.'),aM=new ar(aP,aQ);break;}aN['CastShadows']!==void 0x0&&aN['CastShadows'][c1(0x126)]===0x1&&(aM['castShadow']=!0x0);}return aM;}[bt(0xcb)](aL,aM,aN){const c3=bt;let aO,aP=null,aQ=null,aR=[];if(aL['children']['forEach'](function(aS){const c2=a1;aM[c2(0x9e)](aS['ID'])&&(aP=aM['get'](aS['ID'])),aN[c2(0x9e)](aS['ID'])&&aR['push'](aN['get'](aS['ID']));}),aR['length']>0x1?aQ=aR:aR['length']>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[c3(0x7d)]['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[c3(0x8b)]>=aR['length'])&&(aV[c3(0x8b)]=aR['length'],aS=!0x0);}if(aS){let aW=new aA();aR[c3(0xe7)](aW);}}return aP[c3(0xf7)]?(aO=new ad(aP,aQ),aO['normalizeSkinWeights']()):aO=new ap(aP,aQ),aO;}['createCurve'](aL,aM){const c4=bt;return new ah(aL['children'][c4(0x130)](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}));}[bt(0x13d)](aL,aM){const c5=bt;let aN={};'InheritType'in aM&&(aN['inheritType']=parseInt(aM['InheritType']['value'])),'RotationOrder'in aM?aN['eulerOrder']=Z(aM['RotationOrder']['value']):aN[c5(0x13c)]=Z(0x0),'Lcl_Translation'in aM&&(aN['translation']=aM['Lcl_Translation']['value']),'PreRotation'in aM&&(aN['preRotation']=aM['PreRotation']['value']),'Lcl_Rotation'in aM&&(aN['rotation']=aM[c5(0xb9)]['value']),c5(0xe4)in aM&&(aN[c5(0xee)]=aM[c5(0xe4)]['value']),'Lcl_Scaling'in aM&&(aN['scale']=aM['Lcl_Scaling']['value']),'ScalingOffset'in aM&&(aN['scalingOffset']=aM['ScalingOffset'][c5(0x126)]),'ScalingPivot'in aM&&(aN['scalingPivot']=aM[c5(0x103)][c5(0x126)]),'RotationOffset'in aM&&(aN[c5(0xd1)]=aM['RotationOffset']['value']),'RotationPivot'in aM&&(aN['rotationPivot']=aM['RotationPivot']['value']),aL['userData']['transformData']=aN;}[bt(0xe6)](aL,aM){const c6=bt;c6(0x87)in aM&&H[c6(0x14d)](aL['ID'])['children'][c6(0xea)](function(aN){const c7=c6;if(aN['relationship']==='LookAtProperty'){let aO=V['Objects']['Model'][aN['ID']];if('Lcl_Translation'in aO){let aP=aO['Lcl_Translation'][c7(0x126)];aL['target']===void 0x0?aL[c7(0x125)](new a3()['fromArray'](aP)):(aL['target']['position']['fromArray'](aP),U[c7(0x81)](aL['target']));}}});}[bt(0x13b)](aL,aM,aN){const c8=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['bones'][aR]&&aP['rawBones'][aR]&&aT['copy'](aP[c8(0xc7)][aR]['transformLink'])[c8(0xbb)](),aQ['push'](aT);}H['get'](parseInt(aP['ID']))['parents']['forEach'](function(aU){if(aM['has'](aU['ID'])){let aV=aU['ID'];H['get'](aV)['parents']['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 c9=bt;let aL={};if('Pose'in V['Objects']){let aM=V[c9(0x135)]['Pose'];for(let aN in aM)if(aM[aN]['attrType']==='BindPose'&&aM[aN][c9(0xc3)]>0x0){let aO=aM[aN]['PoseNode'];Array['isArray'](aO)?aO['forEach'](function(aP){const ca=c9;aL[aP['Node']]=new a2()[ca(0xbf)](aP[ca(0xf3)]['a']);}):aL[aO['Node']]=new a2()['fromArray'](aO[c9(0xf3)]['a']);}}return aL;}['addGlobalSceneSettings'](){const cb=bt;if(cb(0x134)in V){if('AmbientColor'in V['GlobalSettings']){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[cb(0x16a)][cb(0x11a)]=V['GlobalSettings']['UnitScaleFactor'][cb(0x126)]);}}},me=class{constructor(){this['negativeMaterialIndices']=!0x1;}[bt(0xa4)](aL){const cc=bt;let aM=new Map();if('Geometry'in V[cc(0x135)]){let aN=V['Objects']['Geometry'];for(let aO in aN){let aP=H['get'](parseInt(aO)),aQ=this[cc(0x8f)](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;}[bt(0x8f)](aL,aM,aN){switch(aM['attrType']){case'Mesh':return this['parseMeshGeometry'](aL,aM,aN);case'NurbsCurve':return this['parseNurbsGeometry'](aM);}}[bt(0xa3)](aL,aM,aN){const cd=bt;let aO=aN['skeletons'],aP=[],aQ=aL['parents'][cd(0x142)](function(aV){return V['Objects']['Model'][aV['ID']];});if(aQ[cd(0x131)]===0x0)return;let aR=aL[cd(0xb2)][cd(0x130)](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={};cd(0x15a)in aS&&(aT['eulerOrder']=Z(aS['RotationOrder']['value'])),'InheritType'in aS&&(aT[cd(0x155)]=parseInt(aS['InheritType']['value'])),'GeometricTranslation'in aS&&(aT[cd(0xf8)]=aS['GeometricTranslation']['value']),'GeometricRotation'in aS&&(aT['rotation']=aS['GeometricRotation']['value']),'GeometricScaling'in aS&&(aT['scale']=aS[cd(0xaa)]['value']);let aU=X(aT);return this[cd(0xe3)](aM,aR,aP,aU);}['genGeometry'](aL,aM,aN,aO){const cf=bt;let aP=new aB();aL[cf(0xe1)]&&(aP['name']=aL['attrName']);let aQ=this[cf(0x140)](aL,aM),aR=this['genBuffers'](aQ),aS=new aE(aR['vertex'],0x3);if(aS['applyMatrix4'](aO),aP['setAttribute']('position',aS),aR['colors']['length']>0x0&&aP['setAttribute'](cf(0x115),new aE(aR[cf(0x114)],0x3)),aM&&(aP['setAttribute'](cf(0x160),new ai(aR[cf(0xa1)],0x4)),aP[cf(0xfe)]('skinWeight',new aE(aR['vertexWeights'],0x4)),aP[cf(0xf7)]=aM),aR['normal']['length']>0x0){let aT=new ag()['getNormalMatrix'](aO),aU=new aE(aR['normal'],0x3);aU['applyNormalMatrix'](aT),aP[cf(0xfe)]('normal',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['material']&&aQ['material'][cf(0x98)]!==cf(0x146)){let aV=aR[cf(0x8b)][0x0],aW=0x0;if(aR[cf(0x8b)][cf(0xea)](function(aX,aY){aX!==aV&&(aP['addGroup'](aW,aY-aW,aV),aV=aX,aW=aY);}),aP['groups']['length']>0x0){let aX=aP['groups'][aP['groups']['length']-0x1],aY=aX['start']+aX[cf(0xd8)];aY!==aR[cf(0x8b)]['length']&&aP['addGroup'](aY,aR['materialIndex']['length']-aY,aV);}aP['groups']['length']===0x0&&aP['addGroup'](0x0,aR['materialIndex']['length'],aR['materialIndex'][0x0]);}return this['addMorphTargets'](aP,aL,aN,aO),aP;}['parseGeoNode'](aL,aM){const cg=bt;let aN={};if(aN['vertexPositions']=aL['Vertices']===void 0x0?[]:aL['Vertices']['a'],aN[cg(0xd4)]=aL[cg(0x169)]===void 0x0?[]:aL['PolygonVertexIndex']['a'],aL['LayerElementColor']&&aL[cg(0xba)][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[cg(0x119)][0x0])),aL['LayerElementUV']){aN['uv']=[];let aO=0x0;for(;aL['LayerElementUV'][aO];)aL[cg(0xa9)][aO]['UV']&&aN['uv']['push'](this[cg(0x145)](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 ch=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['color']){let b3=q(aY,aN,aX,aL['color']);aS['push'](b3[0x0],b3[0x1],b3[0x2]);}if(aL['skeleton']){if(aL[ch(0x83)][aX]!==void 0x0&&aL['weightTable'][aX]['forEach'](function(b4){const ci=ch;b2['push'](b4['weight']),b1[ci(0xe7)](b4['id']);}),b2['length']>0x4){aP||(console['warn'](ch(0x9a)),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['length']<0x4;)b2['push'](0x0),b1[ch(0xe7)](0x0);for(let b6=0x0;b6<0x4;++b6)aU['push'](b2[b6]),aV[ch(0xe7)](b1[b6]);}if(aL['normal']){let b7=q(aY,aN,aX,aL['normal']);aR['push'](b7[0x0],b7[0x1],b7[0x2]);}aL['material']&&aL[ch(0xf9)][ch(0x98)]!=='AllSame'&&(aZ=q(aY,aN,aX,aL['material'])[0x0],aZ<0x0&&(aW['negativeMaterialIndices']=!0x0,aZ=0x0)),aL['uv']&&aL['uv']['forEach'](function(b8,b9){const cj=ch;let ba=q(aY,aN,aX,b8);aT[b9]===void 0x0&&(aT[b9]=[]),aT[b9]['push'](ba[0x0]),aT[b9][cj(0xe7)](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 ck=bt;let aM=this[ck(0x100)](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)['normalize']()};}[bt(0x14a)](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=bt;let aV;if(aU>0x3){let aW=[],aX=aM['baseVertexPositions']||aM['vertexPositions'];for(let b1=0x0;b1<aN['length'];b1+=0x3)aW[cl(0xe7)](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['triangulateShape'](b0,[]);}else aV=[[0x0,0x1,0x2]];for(let [b3,b4,b5]of aV)aL[cl(0x92)]['push'](aM['vertexPositions'][aN[b3*0x3]]),aL['vertex']['push'](aM['vertexPositions'][aN[b3*0x3+0x1]]),aL['vertex'][cl(0xe7)](aM['vertexPositions'][aN[b3*0x3+0x2]]),aL['vertex']['push'](aM[cl(0xdc)][aN[b4*0x3]]),aL['vertex'][cl(0xe7)](aM['vertexPositions'][aN[b4*0x3+0x1]]),aL['vertex']['push'](aM[cl(0xdc)][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[cl(0xaf)]&&(aL['vertexWeights']['push'](aS[b3*0x4]),aL[cl(0x12a)][cl(0xe7)](aS[b3*0x4+0x1]),aL['vertexWeights']['push'](aS[b3*0x4+0x2]),aL['vertexWeights'][cl(0xe7)](aS[b3*0x4+0x3]),aL['vertexWeights']['push'](aS[b4*0x4]),aL['vertexWeights']['push'](aS[b4*0x4+0x1]),aL[cl(0x12a)]['push'](aS[b4*0x4+0x2]),aL[cl(0x12a)]['push'](aS[b4*0x4+0x3]),aL['vertexWeights']['push'](aS[b5*0x4]),aL['vertexWeights'][cl(0xe7)](aS[b5*0x4+0x1]),aL['vertexWeights'][cl(0xe7)](aS[b5*0x4+0x2]),aL[cl(0x12a)]['push'](aS[b5*0x4+0x3]),aL[cl(0xa1)]['push'](aT[b3*0x4]),aL['weightsIndices']['push'](aT[b3*0x4+0x1]),aL['weightsIndices']['push'](aT[b3*0x4+0x2]),aL['weightsIndices']['push'](aT[b3*0x4+0x3]),aL['weightsIndices']['push'](aT[b4*0x4]),aL[cl(0xa1)][cl(0xe7)](aT[b4*0x4+0x1]),aL['weightsIndices'][cl(0xe7)](aT[b4*0x4+0x2]),aL['weightsIndices']['push'](aT[b4*0x4+0x3]),aL['weightsIndices']['push'](aT[b5*0x4]),aL[cl(0xa1)]['push'](aT[b5*0x4+0x1]),aL['weightsIndices'][cl(0xe7)](aT[b5*0x4+0x2]),aL['weightsIndices'][cl(0xe7)](aT[b5*0x4+0x3])),aM['color']&&(aL[cl(0x114)]['push'](aQ[b3*0x3]),aL['colors']['push'](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'][cl(0xe7)](aQ[b4*0x3+0x2]),aL[cl(0x114)]['push'](aQ[b5*0x3]),aL[cl(0x114)]['push'](aQ[b5*0x3+0x1]),aL[cl(0x114)]['push'](aQ[b5*0x3+0x2])),aM['material']&&aM[cl(0xf9)][cl(0x98)]!=='AllSame'&&(aL['materialIndex']['push'](aO),aL['materialIndex']['push'](aO),aL['materialIndex']['push'](aO)),aM['normal']&&(aL['normal']['push'](aP[b3*0x3]),aL['normal']['push'](aP[b3*0x3+0x1]),aL['normal']['push'](aP[b3*0x3+0x2]),aL['normal']['push'](aP[b4*0x3]),aL['normal']['push'](aP[b4*0x3+0x1]),aL['normal']['push'](aP[b4*0x3+0x2]),aL['normal']['push'](aP[b5*0x3]),aL[cl(0x7a)]['push'](aP[b5*0x3+0x1]),aL['normal']['push'](aP[b5*0x3+0x2])),aM['uv']&&aM['uv']['forEach'](function(b6,b7){const cm=cl;aL[cm(0x164)][b7]===void 0x0&&(aL['uvs'][b7]=[]),aL['uvs'][b7][cm(0xe7)](aR[b7][b3*0x2]),aL['uvs'][b7]['push'](aR[b7][b3*0x2+0x1]),aL[cm(0x164)][b7]['push'](aR[b7][b4*0x2]),aL['uvs'][b7]['push'](aR[b7][b4*0x2+0x1]),aL['uvs'][b7][cm(0xe7)](aR[b7][b5*0x2]),aL['uvs'][b7]['push'](aR[b7][b5*0x2+0x1]);});}['addMorphTargets'](aL,aM,aN,aO){const cn=bt;if(aN[cn(0x131)]===0x0)return;aL[cn(0x82)]=!0x0,aL['morphAttributes']['position']=[];let aP=aO['clone']()['setPosition'](0x0,0x0,0x0),aQ=this;aN['forEach'](function(aR){aR['rawTargets']['forEach'](function(aS){const co=a1;let aT=V['Objects']['Geometry'][aS[co(0x137)]];aT!==void 0x0&&aQ['genMorphGeometry'](aL,aM,aT,aP,aS['name']);});});}['genMorphGeometry'](aL,aM,aN,aO,aP){const cp=bt;let aQ=aM[cp(0xb1)]===void 0x0?[]:aM['Vertices']['a'],aR=aM[cp(0x169)]===void 0x0?[]:aM['PolygonVertexIndex']['a'],aS=aN['Vertices']===void 0x0?[]:aN['Vertices']['a'],aT=aN['Indexes']===void 0x0?[]:aN['Indexes']['a'],aU=aL[cp(0x159)]['position'][cp(0xd8)]*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['name']=aP||aN['attrName'],aX['applyMatrix4'](aO),aL['morphAttributes']['position']['push'](aX);}['parseNormals'](aL){let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'],aO=aL['Normals']['a'],aP=[];return aN==='IndexToDirect'&&('NormalIndex'in aL?aP=aL['NormalIndex']['a']:'NormalsIndex'in aL&&(aP=aL['NormalsIndex']['a'])),{'dataSize':0x3,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseUVs'](aL){const cq=bt;let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'],aO=aL['UV']['a'],aP=[];return aN==='IndexToDirect'&&(aP=aL[cq(0x14c)]['a']),{'dataSize':0x2,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}[bt(0xd5)](aL){const cr=bt;let aM=aL['MappingInformationType'],aN=aL[cr(0x16b)],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[cr(0xcf)](aR,aF),aR[cr(0xca)](aO,aQ);return{'dataSize':0x4,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}[bt(0x11c)](aL){const cs=bt;let aM=aL['MappingInformationType'],aN=aL[cs(0x16b)];if(aM===cs(0xa8))return{'dataSize':0x1,'buffer':[0x0],'indices':[0x0],'mappingType':'AllSame','referenceType':aN};let aO=aL['Materials']['a'],aP=[];for(let aQ=0x0;aQ<aO[cs(0x131)];++aQ)aP['push'](aQ);return{'dataSize':0x1,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseNurbsGeometry'](aL){const ct=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[ct(0x149)]['a'];for(let aU=0x0,aV=aQ['length'];aU<aV;aU+=0x4)aP['push'](new ak()['fromArray'](aQ,aU));let aR,aS;if(aL[ct(0xe5)]==='Closed')aP[ct(0xe7)](aP[0x0]);else{if(aL['Form']==='Periodic'){aR=aN,aS=aO['length']-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;}[bt(0x112)](){const cu=bt;if(V['Objects']['AnimationCurve']===void 0x0)return;let aL=this['parseAnimationCurveNodes']();this[cu(0x7f)](aL);let aM=this['parseAnimationLayers'](aL);return this['parseAnimStacks'](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 cv=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]['KeyValueFloat']['a']},aP=H['get'](aO['id']);if(aP!==void 0x0){let aQ=aP['parents'][0x0]['ID'],aR=aP['parents'][0x0][cv(0xb3)];aR['match'](/X/)?aL['get'](aQ)['curves']['x']=aO:aR['match'](/Y/)?aL[cv(0x14d)](aQ)['curves']['y']=aO:aR[cv(0xab)](/Z/)?aL['get'](aQ)['curves']['z']=aO:aR[cv(0xab)](/DeformPercent/)&&aL[cv(0x9e)](aQ)&&(aL['get'](aQ)['curves'][cv(0xf2)]=aO);}}}[bt(0x109)](aL){const cy=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']['forEach'](function(aR,aS){const cw=a1;if(aL['has'](aR['ID'])){let aT=aL['get'](aR['ID']);if(aT['curves']['x']!==void 0x0||aT['curves']['y']!==void 0x0||aT[cw(0xcc)]['z']!==void 0x0){if(aP[aS]===void 0x0){let aU=H['get'](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['Objects']['Model'][aV['toString']()];if(aW===void 0x0){console[cw(0xc2)](cw(0x132),aR);return;}let aX={'modelName':aW['attrName']?aD['sanitizeNodeName'](aW[cw(0xe1)]):'','ID':aW['id'],'initialPosition':[0x0,0x0,0x0],'initialRotation':[0x0,0x0,0x0],'initialScale':[0x1,0x1,0x1]};U['traverse'](function(aY){const cx=cw;aY['ID']===aW['id']&&(aX['transform']=aY['matrix'],aY['userData']['transformData']&&(aX['eulerOrder']=aY[cx(0x16a)]['transformData']['eulerOrder'],aY[cx(0x16a)]['transformData']['rotation']&&(aX['initialRotation']=aY['userData']['transformData']['rotation'])));}),aX['transform']||(aX['transform']=new a2()),cw(0xb0)in aW&&(aX['preRotation']=aW['PreRotation']['value']),'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']['filter'](function(b4){return b4['relationship']!==void 0x0;});if(aY['length']===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[cw(0x135)]['Model'][b2];aP[aS]={'modelName':b3['attrName']?aD['sanitizeNodeName'](b3['attrName']):'','morphName':V['Objects']['Deformer'][aZ][cw(0xe1)]};}aP[aS][aT[cw(0x117)]]=aT;}}}}),aN[cy(0x105)](parseInt(aO),aP));}return aN;}[bt(0x14b)](aL){const cz=bt;let aM=V['Objects']['AnimationStack'],aN={};for(let aO in aM){let aP=H['get'](parseInt(aO))[cz(0xb2)];aP['length']>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]['attrName'],'layer':aQ};}return aN;}['addClip'](aL){const cA=bt;let aM=[],aN=this;return aL['layer'][cA(0xea)](function(aO){const cB=cA;aM=aM[cB(0xa2)](aN['generateTracks'](aO));}),new az(aL['name'],-0x1,aM);}['generateTracks'](aL){const cC=bt;let aM=[],aN=new a3(),aO=new a3();if(aL['transform']&&aL['transform']['decompose'](aN,new aH(),aO),aN=aN['toArray'](),aO=aO['toArray'](),aL['T']!==void 0x0&&Object['keys'](aL['T'][cC(0xcc)])[cC(0x131)]>0x0){let aP=this[cC(0x122)](aL['modelName'],aL['T']['curves'],aN,cC(0x86));aP!==void 0x0&&aM['push'](aP);}if(aL['R']!==void 0x0&&Object[cC(0x7e)](aL['R'][cC(0xcc)])[cC(0x131)]>0x0){let aQ=this[cC(0x79)](aL[cC(0xc6)],aL['R']['curves'],aL[cC(0xd9)],aL['postRotation'],aL[cC(0x13c)],aL['initialRotation']);aQ!==void 0x0&&aM['push'](aQ);}if(aL['S']!==void 0x0&&Object['keys'](aL['S'][cC(0xcc)])['length']>0x0){let aR=this[cC(0x122)](aL['modelName'],aL['S']['curves'],aO,'scale');aR!==void 0x0&&aM['push'](aR);}if(aL['DeformPercent']!==void 0x0){let aS=this['generateMorphTrack'](aL);aS!==void 0x0&&aM['push'](aS);}return aM;}['generateVectorTrack'](aL,aM,aN,aO){const cD=bt;let aP=this['getTimesForAllAxes'](aM),aQ=this[cD(0x136)](aP,aM,aN);return new aa(aL+'.'+aO,aP,aQ);}['generateRotationTrack'](aL,aM,aN,aO,aP,aQ){const cE=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[cE(0xb4)](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[cE(0x142)](al['degToRad']),aN['push'](aT),aN=new aj()['fromArray'](aN),aN=new aH()['setFromEuler'](aN)),aO!==void 0x0&&(aO=aO['map'](al['degToRad']),aO[cE(0xe7)](aT),aO=new aj()[cE(0xbf)](aO),aO=new aH()[cE(0x166)](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['set'](-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=bt;let aM=aL['DeformPercent']['curves'][cF(0xf2)],aN=aM[cF(0xdd)]['map'](function(aP){return aP/0x64;}),aO=U['getObjectByName'](aL[cF(0xc6)])[cF(0x97)][aL['morphName']];return new aC(aL['modelName']+'.morphTargetInfluences['+aO+']',aM['times'],aN);}['getTimesForAllAxes'](aL){const cG=bt;let aM=[];if(aL['x']!==void 0x0&&(aM=aM[cG(0xa2)](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']['indexOf'](aT)),aM['y']&&(aR=aM['y']['times']['indexOf'](aT)),aM['z']&&(aS=aM['z']['times'][cH(0x123)](aT)),aQ!==-0x1){let aU=aM['x']['values'][aQ];aP[cH(0xe7)](aU),aO[0x0]=aU;}else aP[cH(0xe7)](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){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};}['sampleCurveValue'](aL,aM,aN){const cI=bt;let aO=aL['times'],aP=aL['values'];if(aM<=aO[0x0])return aP[0x0];if(aM>=aO[aO[cI(0x131)]-0x1])return aP[aP[cI(0x131)]-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;}[bt(0x110)](aL,aM,aN,aO){const cJ=bt;let aP=[],aQ=[];aP['push'](aL['times'][0x0]),aQ[cJ(0xe7)](al['degToRad'](aL['values'][0x0])),aQ['push'](al['degToRad'](aM['values'][0x0])),aQ['push'](al[cJ(0x99)](aN['values'][0x0]));for(let aR=0x1;aR<aL['values'][cJ(0x131)];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[cJ(0x99)]),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['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['set'](-b2['x'],-b2['y'],-b2['z'],-b2['w']);let b3=aL[cJ(0xd7)][aR-0x1],b4=aL[cJ(0xd7)][aR]-b3,b5=new aH(),b6=new aj();for(let b7=0x0;b7<0x1;b7+=0x1/aY)b5['copy'](b1['clone']()['slerp'](b2['clone'](),b7)),aP[cJ(0xe7)](b3+b7*b4),b6[cJ(0x7b)](b5,aO),aQ['push'](b6['x']),aQ['push'](b6['y']),aQ['push'](b6['z']);}else aP['push'](aL['times'][aR]),aQ['push'](al[cJ(0x99)](aL['values'][aR])),aQ[cJ(0xe7)](al['degToRad'](aM['values'][aR])),aQ['push'](al[cJ(0x99)](aN['values'][aR]));}return[aP,aQ];}},ge=class{[bt(0xe2)](){const cK=bt;return this[cK(0x15c)][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=bt;this['nodeStack']['pop'](),--this[cL(0x139)];}['setCurrentProp'](aL,aM){this['currentProp']=aL,this['currentPropName']=aM;}['parse'](aL){const cM=bt;this['currentIndent']=0x0,this['allNodes']=new G(),this['nodeStack']=[],this['currentProp']=[],this['currentPropName']='';let aM=this,aN=aL[cM(0x106)](/[\r\n]+/);return aN['forEach'](function(aO,aP){const cN=cM;let aQ=aO['match'](/^[\s\t]*;/),aR=aO['match'](/^[\s\t]*$/);if(aQ||aR)return;let aS=aO['match']('^\x5ct{'+aM['currentIndent']+cN(0xae),''),aT=aO['match']('^\x5ct{'+aM['currentIndent']+'}(\x5cw+):[\x5cs\x5ct\x5cr\x5cn](.*)'),aU=aO['match']('^\x5ct{'+(aM['currentIndent']-0x1)+'}}');aS?aM['parseNodeBegin'](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 cO=bt;let aN=aM[0x1]['trim']()[cO(0xfd)](/^"/,'')['replace'](/"$/,''),aO=aM[0x2][cO(0x106)](',')['map'](function(aS){const cP=cO;return aS['trim']()['replace'](/^"/,'')[cP(0xfd)](/"$/,'');}),aP={'name':aN},aQ=this['parseNodeAttr'](aO),aR=this['getCurrentNode']();this['currentIndent']===0x0?this['allNodes']['add'](aN,aP):aN in aR?(aN===cO(0x124)?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']==cO(0x107)&&(aP['id']=aQ['id']),aQ['name']!==''&&(aP['attrName']=aQ['name']),aQ[cO(0x90)]!==''&&(aP['attrType']=aQ['type']),this['pushStack'](aP);}[bt(0x11e)](aL){const cQ=bt;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][cQ(0xfd)](/^(\w+)::/,''),aO=aL[0x2]),{'id':aM,'name':aN,'type':aO};}['parseNodeProperty'](aL,aM,aN){const cR=bt;let aO=aM[0x1]['replace'](/^"/,'')['replace'](/"$/,'')[cR(0xa6)](),aP=aM[0x2][cR(0xfd)](/^"/,'')['replace'](/"$/,'')['trim']();aO==='Content'&&aP===','&&(aP=aN['replace'](/"/g,'')[cR(0xfd)](/,$/,'')['trim']());let aQ=this[cR(0x11d)]();if(aQ['name']==='Properties70'){this['parseNodeSpecialProperty'](aL,aO,aP);return;}if(aO==='C'){let aR=aP['split'](',')[cR(0xdf)](0x1),aS=parseInt(aR[0x0]),aT=parseInt(aR[0x1]),aU=aP['split'](',')['slice'](0x3);aU=aU[cR(0x142)](function(aV){const cS=cR;return aV['trim']()[cS(0xfd)](/^"/,'');}),aO='connections',aP=[aS,aT],Se(aP,aU),aQ[aO]===void 0x0&&(aQ[aO]=[]);}aO==='Node'&&(aQ['id']=aP),aO in aQ&&Array[cR(0xa0)](aQ[aO])?aQ[aO][cR(0xe7)](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 cU=bt;let aO=aN['split']('\x22,')['map'](function(aU){const cT=a1;return aU['trim']()['replace'](/^\"/,'')[cT(0xfd)](/\s/,'_');}),aP=aO[0x0],aQ=aO[0x1],aR=aO[0x2],aS=aO[0x3],aT=aO[0x4];switch(aQ){case cU(0xad):case cU(0x8e):case'bool':case'ULongLong':case'double':case cU(0x158):case'FieldOfView':aT=parseFloat(aT);break;case'Color':case'ColorRGB':case'Vector3D':case'Lcl_Translation':case'Lcl_Rotation':case'Lcl_Scaling':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 cV=bt;let aM=new W(aL);aM[cV(0x9d)](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['parseNode'](aM,aN);aP!==null&&aO[cV(0x81)](aP['name'],aP);}return aO;}['endOfContent'](aL){const cW=bt;return aL['size']()%0x10==0x0?(aL['getOffset']()+0xa0+0x10&-0x10)>=aL['size']():aL[cW(0x120)]()+0xa0+0x10>=aL['size']();}['parseNode'](aL,aM){const cX=bt;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['length']>0x0?aS[0x0]:'',aU=aS[cX(0x131)]>0x1?aS[0x1]:'',aV=aS['length']>0x2?aS[0x2]:'';for(aN['singleProperty']=aP===0x1&&aL[cX(0x120)]()===aO;aO>aL['getOffset']();){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['name']=aR),aN;}['parseSubNode'](aL,aM,aN){const cY=bt;if(aN['singleProperty']===!0x0){let aO=aN[cY(0x141)][0x0];Array[cY(0xa0)](aO)?(aM[aN['name']]=aN,aN['a']=aO):aM[aN[cY(0xfb)]]=aO;}else{if(aL==='Connections'&&aN['name']==='C'){let aP=[];aN[cY(0x141)]['forEach'](function(aQ,aR){aR!==0x0&&aP['push'](aQ);}),aM['connections']===void 0x0&&(aM['connections']=[]),aM['connections']['push'](aP);}else{if(aN['name']===cY(0x13a))Object[cY(0x7e)](aN)['forEach'](function(aQ){aM[aQ]=aN[aQ];});else{if(aL==='Properties70'&&aN['name']==='P'){let aQ=aN['propertyList'][0x0],aR=aN['propertyList'][0x1],aS=aN['propertyList'][0x2],aT=aN[cY(0x141)][0x3],aU;aQ['indexOf']('Lcl\x20')===0x0&&(aQ=aQ['replace']('Lcl\x20','Lcl_')),aR['indexOf'](cY(0xfa))===0x0&&(aR=aR['replace'](cY(0xfa),'Lcl_')),aU=aR==='Color'||aR===cY(0x14f)||aR==='Vector'||aR==='Vector3D'||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['name']===cY(0x124)?(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['name']][aN['id']]=aN);}}}}['parseProperty'](aL){const cZ=bt;let aM=aL['getString'](0x1),aN;switch(aM){case'C':return aL['getBoolean']();case'D':return aL['getFloat64']();case'F':return aL[cZ(0xb5)]();case'I':return aL['getInt32']();case'L':return aL['getInt64']();case'R':return aN=aL['getUint32'](),aL[cZ(0x15f)](aN);case'S':return aN=aL['getUint32'](),aL['getString'](aN);case'Y':return aL[cZ(0xd0)]();case'b':case'c':case'd':case'f':case'i':case'l':let aO=aL['getUint32'](),aP=aL['getUint32'](),aQ=aL['getUint32']();if(aP===0x0)switch(aM){case'b':case'c':return aL['getBooleanArray'](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['getArrayBuffer'](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 d0=bt;this['dv']=new DataView(aL),this['offset']=0x0,this['littleEndian']=aM===void 0x0?!0x0:aM,this[d0(0x96)]=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;}['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;}[bt(0xf5)](){const d1=bt;let aL=this['dv']['getInt32'](this['offset'],this[d1(0xc1)]);return this[d1(0x91)]+=0x4,aL;}['getInt32Array'](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getInt32']());return aM;}['getUint32'](){const d2=bt;let aL=this['dv'][d2(0x84)](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 d3=bt;let aM=[];for(let aN=0x0;aN<aL;aN++)aM[d3(0xe7)](this['getInt64']());return aM;}['getUint64'](){const d4=bt;let aL,aM;return this[d4(0xc1)]?(aL=this['getUint32'](),aM=this[d4(0x84)]()):(aM=this['getUint32'](),aL=this['getUint32']()),aM*0x100000000+aL;}['getFloat32'](){const d5=bt;let aL=this['dv']['getFloat32'](this[d5(0x91)],this['littleEndian']);return this['offset']+=0x4,aL;}[bt(0x15d)](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getFloat32']());return aM;}['getFloat64'](){const d6=bt;let aL=this['dv'][d6(0x116)](this[d6(0x91)],this['littleEndian']);return this['offset']+=0x8,aL;}[bt(0x113)](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getFloat64']());return aM;}['getArrayBuffer'](aL){const d7=bt;let aM=this['dv']['buffer'][d7(0xdf)](this['offset'],this['offset']+aL);return this['offset']+=aL,aM;}['getString'](aL){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']['decode'](aN);}},G=class{['add'](aL,aM){this[aL]=aM;}};function ve(aL){const d8=bt;return aL[d8(0x10c)]>=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 be(aL){return aL/0xac0e8d7b0;}var xe=[];function q(aL,aM,aN,aO){const d9=bt;let aP;switch(aO['mappingType']){case'ByPolygonVertex':aP=aL;break;case'ByPolygon':aP=aM;break;case d9(0x102):aP=aN;break;case'AllSame':aP=aO['indices'][0x0];break;default:console['warn']('THREE.FBXLoader:\x20unknown\x20attribute\x20mapping\x20type\x20'+aO['mappingType']);}aO[d9(0x12c)]===d9(0x162)&&(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 da=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[da(0x155)]:0x0;aL[da(0xf8)]&&aM['setPosition'](Y[da(0xbf)](aL[da(0xf8)]));let aZ=Z(0x0);if(aL['preRotation']){let bc=aL['preRotation']['map'](al[da(0x99)]);bc['push'](aZ),aN['makeRotationFromEuler'](J['fromArray'](bc));}if(aL[da(0xbc)]){let bd=aL['rotation']['map'](al['degToRad']);bd['push'](aL['eulerOrder']||aZ),aO['makeRotationFromEuler'](J['fromArray'](bd));}if(aL['postRotation']){let bf=aL['postRotation']['map'](al['degToRad']);bf['push'](aZ),aP['makeRotationFromEuler'](J['fromArray'](bf)),aP[da(0xbb)]();}aL['scale']&&aQ['scale'](Y['fromArray'](aL['scale'])),aL['scalingOffset']&&aS['setPosition'](Y['fromArray'](aL['scalingOffset'])),aL['scalingPivot']&&aR['setPosition'](Y['fromArray'](aL['scalingPivot'])),aL['rotationOffset']&&aT['setPosition'](Y['fromArray'](aL['rotationOffset'])),aL['rotationPivot']&&aU['setPosition'](Y['fromArray'](aL['rotationPivot'])),aL[da(0xff)]&&(aW[da(0xf1)](aL['parentMatrix']),aV['copy'](aL['parentMatrixWorld']));let b0=aN['clone']()['multiply'](aO)['multiply'](aP),b1=new a2();b1[da(0xf4)](aV);let b2=new a2();b2['copyPosition'](aV);let b3=b2['clone']()['invert']()['multiply'](aV),b4=b1[da(0xde)]()['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)[da(0xc5)](b0)['multiply'](b5);else{let bg=new a2()['scale'](new a3()['setFromMatrixScale'](aW))['clone']()['invert'](),bh=b4[da(0xde)]()['multiply'](bg);b6['copy'](b1)['multiply'](b0)[da(0xc5)](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)['multiply'](aR)['multiply'](aQ)[da(0xc5)](b8),ba=new a2()['copyPosition'](b9),bb=aV[da(0xde)]()['multiply'](ba);return aX['copyPosition'](bb),b9=aX['clone']()[da(0xc5)](b6),b9['premultiply'](aV[da(0xbb)]()),b9;}function Z(aL){const db=bt;aL=aL||0x0;let aM=['ZYX','YZX','XZY',db(0x8d),db(0xb6),'XYZ'];return aL===0x6?(console[db(0xc2)]('THREE.FBXLoader:\x20unsupported\x20Euler\x20Order:\x20Spherical\x20XYZ.\x20Animations\x20and\x20rotations\x20may\x20be\x20incorrect.'),aM[0x0]):aM[aL];}function Q(aL){const dc=bt;return aL[dc(0x106)](',')['map'](function(aM){return parseFloat(aM);});}function $(aL,aM,aN){const dd=bt;return aM===void 0x0&&(aM=0x0),aN===void 0x0&&(aN=aL[dd(0x10c)]),new TextDecoder()['decode'](new Uint8Array(aL,aM,aN));}function Se(aL,aM){const df=bt;for(let aN=0x0,aO=aL['length'],aP=aM[df(0x131)];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 bL=a1;(function(aL,aM){const bm=a1,aN=aL();while(!![]){try{const aO=parseInt(bm(0xeb))/0x1+parseInt(bm(0xc5))/0x2+parseInt(bm(0x153))/0x3*(-parseInt(bm(0x171))/0x4)+parseInt(bm(0x172))/0x5+-parseInt(bm(0xd4))/0x6*(parseInt(bm(0x16f))/0x7)+parseInt(bm(0xbf))/0x8+-parseInt(bm(0xd1))/0x9*(parseInt(bm(0x128))/0xa);if(aO===aM)break;else aN['push'](aN['shift']());}catch(aP){aN['push'](aN['shift']());}}}(a0,0xd404c));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){const bn=a1;let aO=aN[bn(0x142)]-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 a0(){const da=['NormalIndex','controlPoints','LayeredTexture','Lcl_Scaling','XZY','FileName','LayerElementUV','name','forEach','CameraProjectionType','parseGeoNode','vertexWeights','map','color','231yDPgvh','divideScalar','4KyrHQS','7065565HZtidH','attrName','invert','YZX','getInt64Array','Video','connections','dot','pop','getFloat32Array','GeometricTranslation','getFloat32','reduce','toLowerCase','copyPosition','scale','degToRad','parseAnimationCurves','endKnot','groups','setCurrentProp','parse','bindSkeleton','setAttribute','get','int','skinIndex','matrix','set','textureLoader','getTimesForAllAxes','setPosition','parseSubNode','RotationOrder','RotationOffset','ReferenceInformationType','warn','getTexture','currentProp','parents','1238872lUfbcx','parseTextures','sanitizeNodeName','relationship','getPrevNode','colorSpaceToWorking','3073486asJTRt','rawBones','shininess','opacity','makeRotationFromEuler','transparent','normalizeSkinWeights','morphTargetsRelative','isArray','type','ULongLong','offset','720477KrgMGF','_textDecoder','values','19338TXpZHa','singleProperty','EmissiveColor','InnerAngle','Order','position','KeyTime','Vector','matrixWorld','filter','ColorIndex','parseScene','inheritType','.tga','genGeometry','bumpScale','fromArray','DisplacementColor','normal','parseGeometry','WrapModeU','replace','updateMatrix','56627duFmyo','attrType','LimbNode','add','bool','generateTracks','Scaling','userData','concat','AmbientColor','generateMorphTrack','degree','startKnot','Color','modelName','parseAnimStacks','number','currentIndent','getCurrentNode','children','genBuffers','littleEndian','CastShadows','LayerElementMaterial','parent','NodeAttribute','PolygonVertexIndex','getString','vertex','parseMeshGeometry','buffer','knots','envMap','parentMatrix','getInt64','NurbsCurve','^\x5ct{','weightTable','Connections','has','postRotation','SpecularColor','abs','split','vertexColors','buildSkeleton','skeleton','getUint32','displacementScale','attr','getUint64','bumpMap','transformLink','match','parseNodeAttr','PoseNode','Deformer','getInt32Array','Root','Objects','ByPolygonVertex','140SPiCQd','copy','double','Number','slice','negativeMaterialIndices','trim','mappingType','parseMaterials','sub','push','normalize','Skin','curves','indexOf','emissiveIntensity','parseNodeProperty','vertexIndices','skeletons','DiffuseColor','parseMaterialIndices','GlobalSettings','materialIndex','isBone','genMorphGeometry','getInt32','length','multiply','AnimationLayer','sort','value','propertyList','eulerOrder','DisplacementFactor','getUint8','parseImage','weightsIndices','transformData','rotation','Indexes','preRotation','Content','Properties70','3197439lJWSkK','manager','path','AnimationCurve','image/jpeg','Translation','setPath','morphAttributes','Colors','getFloat64','emissive','indices','Model','colors'];a0=function(){return da;};return a0();}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[bo(0x12c)](0x0);let aS=[];for(let aY=0x0;aY<=aN;++aY)aS[aY]=aQ[bo(0x12c)](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){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['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[bp(0x142)],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[bp(0x131)](aP[aS-aU]['clone']()['multiplyScalar'](ue(aS,aU)*aO[aU]));aP[aS]=aT['divideScalar'](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[bq(0x142)]-0x1:0x0,aR=aN?aN['length']:0x0;this['degree']=aL,this['knots']=aM,this['controlPoints']=[],this[bq(0xf7)]=aO||0x0,this[bq(0xa9)]=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(0x10a)][this['endKnot']]-this['knots'][this['startKnot']]),aP=se(this['degree'],this['knots'],this[br(0x162)],aO);return aP['w']!==0x1&&aP[br(0x170)](aP['w']),aN['set'](aP['x'],aP['y'],aP['z']);}['getTangent'](aL,aM=new a3()){const bs=a1;let aN=aM,aO=this[bs(0x10a)][0x0]+aL*(this['knots'][this['knots']['length']-0x1]-this['knots'][0x0]),aP=z(this['degree'],this[bs(0x10a)],this['controlPoints'],aO,0x1);return aN['copy'](aP[0x1])['normalize'](),aN;}['toJSON'](){const bt=a1;let aL=super['toJSON']();return aL[bt(0xf6)]=this['degree'],aL['knots']=[...this['knots']],aL['controlPoints']=this['controlPoints']['map'](aM=>aM['toArray']()),aL['startKnot']=this['startKnot'],aL['endKnot']=this['endKnot'],aL;}['fromJSON'](aL){const bu=a1;return super['fromJSON'](aL),this['degree']=aL['degree'],this['knots']=[...aL['knots']],this['controlPoints']=aL['controlPoints']['map'](aM=>new ak(aM[0x0],aM[0x1],aM[0x2],aM[0x3])),this['startKnot']=aL[bu(0xf7)],this[bu(0xa9)]=aL[bu(0xa9)],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 bv=a1;try{aM(aP[bv(0xac)](aS,aQ));}catch(aT){aO?aO(aT):console['error'](aT),aP['manager']['itemError'](aL);}},aN,aO);}['parse'](aL,aM){const bw=a1;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[bw(0x154)])['setPath'](this['resourcePath']||aM)['setCrossOrigin'](this['crossOrigin']),this['manager'])['parse'](V);}},pe=class{constructor(aL,aM){const bx=a1;this[bx(0xb4)]=aL,this['manager']=aM;}['parse'](){const by=a1;H=this['parseConnections']();let aL=this['parseImages'](),aM=this[by(0xc0)](aL),aN=this[by(0x130)](aM),aO=this['parseDeformers'](),aP=new me()['parse'](aO);return this['parseScene'](aO,aP,aN),U;}['parseConnections'](){const bz=a1;let aL=new Map();return'Connections'in V&&V['Connections']['connections'][bz(0x169)](function(aM){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['get'](aN)['parents']['push'](aQ),aL['has'](aO)||aL['set'](aO,{'parents':[],'children':[]});let aR={'ID':aN,'relationship':aP};aL['get'](aO)['children']['push'](aR);}),aL;}['parseImages'](){const bA=a1;let aL={},aM={};if('Video'in V[bA(0x126)]){let aN=V['Objects'][bA(0x9c)];for(let aO in aN){let aP=aN[aO],aQ=parseInt(aO);if(aL[aQ]=aP['RelativeFilename']||aP['Filename'],bA(0x151)in aP){let aR=aP['Content']instanceof ArrayBuffer&&aP['Content']['byteLength']>0x0,aS=typeof aP['Content']=='string'&&aP[bA(0x151)]!=='';if(aR||aS){let aT=this[bA(0x14b)](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')[bA(0x9f)]():aL[aU]=aM[aV];}return aL;}['parseImage'](aL){const bB=a1;let aM=aL['Content'],aN=aL['RelativeFilename']||aL['Filename'],aO=aN['slice'](aN['lastIndexOf']('.')+0x1)['toLowerCase'](),aP;switch(aO){case'bmp':aP='image/bmp';break;case'jpg':case'jpeg':aP=bB(0x157);break;case'png':aP='image/png';break;case'tif':aP='image/tiff';break;case'tga':this[bB(0x154)]['getHandler'](bB(0xe1))===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){let aM=new Map();if('Texture'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=a1;let aN=this['loadTexture'](aL,aM);aN['ID']=aL['id'],aN['name']=aL['attrName'];let aO=aL[bC(0xe8)],aP=aL['WrapModeV'],aQ=aO===void 0x0?0x0:aO[bC(0x146)],aR=aP===void 0x0?0x0:aP[bC(0x146)];if(aN['wrapS']=aQ===0x0?a5:aq,aN['wrapT']=aR===0x0?a5:aq,'Scaling'in aL){let aS=aL[bC(0xf1)]['value'];aN['repeat']['x']=aS[0x0],aN['repeat']['y']=aS[0x1];}if(bC(0x158)in aL){let aT=aL['Translation'][bC(0x146)];aN['offset']['x']=aT[0x0],aN['offset']['y']=aT[0x1];}return aN;}['loadTexture'](aL,aM){const bD=a1;let aN=aL[bD(0x166)]['split']('.')['pop']()['toLowerCase'](),aO=this['manager']['getHandler']('.'+aN);aO===null&&(aO=this[bD(0xb4)]);let aP=aO[bD(0x155)];aP||aO[bD(0x159)](this[bD(0xb4)]['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']('blob:')===0x0||aR['indexOf']('data:')===0x0)&&aO[bD(0x159)](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;}['parseMaterials'](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;}['parseMaterial'](aL,aM){const bE=a1;let aN=aL['id'],aO=aL[bE(0x173)],aP=aL['ShadingModel'];if(typeof aP=='object'&&(aP=aP[bE(0x146)]),!H['has'](aN))return null;let aQ=this['parseParameters'](aL,aM,aN),aR;switch(aP[bE(0xa4)]()){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['name']=aO,aR;}['parseParameters'](aL,aM,aN){const bF=a1;let aO={};aL['BumpFactor']&&(aO[bF(0xe3)]=aL['BumpFactor']['value']),aL['Diffuse']?aO[bF(0x16e)]=as['colorSpaceToWorking'](new aw()['fromArray'](aL['Diffuse']['value']),aF):aL[bF(0x13b)]&&(aL['DiffuseColor']['type']==='Color'||aL['DiffuseColor']['type']==='ColorRGB')&&(aO[bF(0x16e)]=as[bF(0xc4)](new aw()['fromArray'](aL['DiffuseColor']['value']),aF)),aL[bF(0x149)]&&(aO[bF(0x11b)]=aL['DisplacementFactor'][bF(0x146)]),aL['Emissive']?aO['emissive']=as['colorSpaceToWorking'](new aw()[bF(0xe4)](aL['Emissive']['value']),aF):aL['EmissiveColor']&&(aL['EmissiveColor']['type']===bF(0xf8)||aL['EmissiveColor']['type']==='ColorRGB')&&(aO[bF(0x15d)]=as['colorSpaceToWorking'](new aw()['fromArray'](aL['EmissiveColor']['value']),aF)),aL['EmissiveFactor']&&(aO[bF(0x137)]=parseFloat(aL['EmissiveFactor']['value'])),aO['opacity']=0x1-(aL['TransparencyFactor']?parseFloat(aL['TransparencyFactor']['value']):0x0),(aO['opacity']===0x1||aO['opacity']===0x0)&&(aO['opacity']=aL['Opacity']?parseFloat(aL['Opacity'][bF(0x146)]):null,aO['opacity']===null&&(aO['opacity']=0x1)),aO[bF(0xc8)]<0x1&&(aO[bF(0xca)]=!0x0),aL['ReflectionFactor']&&(aO['reflectivity']=aL['ReflectionFactor']['value']),aL['Shininess']&&(aO[bF(0xc7)]=aL['Shininess'][bF(0x146)]),aL['Specular']?aO['specular']=as['colorSpaceToWorking'](new aw()['fromArray'](aL['Specular']['value']),aF):aL['SpecularColor']&&aL['SpecularColor'][bF(0xce)]==='Color'&&(aO['specular']=as['colorSpaceToWorking'](new aw()['fromArray'](aL[bF(0x114)][bF(0x146)]),aF));let aP=this;return H['get'](aN)['children'][bF(0x169)](function(aQ){const bG=bF;let aR=aQ[bG(0xc2)];switch(aR){case'Bump':aO[bG(0x11e)]=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['getTexture'](aM,aQ['ID']),aO['map']!==void 0x0&&(aO['map']['colorSpace']=aF);break;case bG(0xe5):aO['displacementMap']=aP['getTexture'](aM,aQ['ID']);break;case bG(0xd6):aO['emissiveMap']=aP[bG(0xbc)](aM,aQ['ID']),aO['emissiveMap']!==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[bG(0x10b)]!==void 0x0&&(aO['envMap']['mapping']=0x12f,aO['envMap']['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['alphaMap']=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 bH=a1;return bH(0x163)in V['Objects']&&aM in V['Objects'][bH(0x163)]&&(console['warn']('THREE.FBXLoader:\x20layered\x20textures\x20are\x20not\x20supported\x20in\x20three.js.\x20Discarding\x20all\x20but\x20first\x20layer.'),aM=H['get'](aM)['children'][0x0]['ID']),aL['get'](aM);}['parseDeformers'](){const bI=a1;let aL={},aM={};if('Deformer'in V['Objects']){let aN=V[bI(0x126)][bI(0x123)];for(let aO in aN){let aP=aN[aO],aQ=H['get'](parseInt(aO));if(aP['attrType']===bI(0x134)){let aR=this['parseSkeleton'](aQ,aN);aR['ID']=aO,aQ['parents'][bI(0x142)]>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[bI(0xec)]==='BlendShape'){let aS={'id':aO};aS['rawTargets']=this['parseMorphTargets'](aQ,aN),aS['id']=aO,aQ[bI(0xbe)][bI(0x142)]>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 bJ=a1;let aP=aM[aO['ID']];if(aP[bJ(0xec)]!=='Cluster')return;let aQ={'ID':aO['ID'],'indices':[],'weights':[],'transformLink':new a2()['fromArray'](aP['TransformLink']['a'])};'Indexes'in aP&&(aQ[bJ(0x15e)]=aP[bJ(0x14f)]['a'],aQ['weights']=aP['Weights']['a']),aN['push'](aQ);}),{'rawBones':aN,'bones':[]};}['parseMorphTargets'](aL,aM){const bK=a1;let aN=[];for(let aO=0x0;aO<aL['children']['length'];aO++){let aP=aL[bK(0xfe)][aO],aQ=aM[aP['ID']],aR={'name':aQ['attrName'],'initialWeight':aQ['DeformPercent'],'id':aQ['id'],'fullWeights':aQ['FullWeights']['a']};if(aQ['attrType']!=='BlendShapeChannel')return;aR['geoID']=H['get'](parseInt(aP['ID']))[bK(0xfe)]['filter'](function(aS){return aS['relationship']===void 0x0;})[0x0]['ID'],aN['push'](aR);}return aN;}[bL(0xdf)](aL,aM,aN){const bM=bL;U=new a7();let aO=this['parseModels'](aL['skeletons'],aM,aN),aP=V['Objects']['Model'],aQ=this;aO[bM(0x169)](function(aV){const bN=bM;let aW=aP[aV['ID']];aQ['setLookAtProperties'](aV,aW),H['get'](aV['ID'])[bN(0xbe)]['forEach'](function(aX){let aY=aO['get'](aX['ID']);aY!==void 0x0&&aY['add'](aV);}),aV['parent']===null&&U[bN(0xee)](aV);}),this['addGlobalSceneSettings'](),U['traverse'](function(aV){const bO=bM;if(aV['userData']['transformData']){aV[bO(0x103)]&&(aV['userData']['transformData']['parentMatrix']=aV['parent']['matrix'],aV[bO(0xf2)]['transformData']['parentMatrixWorld']=aV['parent'][bO(0xdc)]);let aW=X(aV['userData'][bO(0x14d)]);aV['applyMatrix4'](aW),aV['updateWorldMatrix']();}});let aR=this['parsePoseNodes'](),aS=new Set();for(let aV in aL[bM(0x13a)])aL[bM(0x13a)][aV]['rawBones']['forEach'](function(aW,aX){let aY=aL['skeletons'][aV]['bones'][aX];aY&&aS['add'](aY['ID']);});let aT=new a2();U['traverse'](function(aW){const bP=bM;if(aW[bP(0x13f)]&&aW['ID']!==void 0x0&&!aS['has'](aW['ID'])){let aX=aR[aW['ID']];aX!==void 0x0&&(aW[bP(0x103)]?(aT[bP(0x129)](aW['parent'][bP(0xdc)])['invert'](),aT[bP(0x143)](aX)):aT['copy'](aX),aT['decompose'](aW['position'],aW['quaternion'],aW['scale']),aW[bP(0xea)](),aW['matrixWorld'][bP(0x129)](aX));}}),this[bM(0xad)](aL['skeletons'],aM,aO);let aU=new he()['parse']();U['children']['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[bM(0x14e)]['set'](-Math['PI']/0x2,0x0,0x0));}['parseModels'](aL,aM,aN){const bQ=bL;let aO=new Map(),aP=V['Objects'][bQ(0x15f)];for(let aQ in aP){let aR=parseInt(aQ),aS=aP[aQ],aT=H['get'](aR),aU=this[bQ(0x118)](aT,aL,aR,aS[bQ(0x173)]);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 bQ(0x10e):aU=this['createCurve'](aT,aM);break;case bQ(0xed):case bQ(0x125):aU=new av();break;default:aU=new a7();break;}aU['name']=aS['attrName']?aD[bQ(0xc1)](aS['attrName']):'',aU['userData']['originalName']=aS['attrName'],aU['ID']=aR;}this['getTransformData'](aU,aS),aO[bQ(0xb3)](aR,aU);}return aO;}['buildSkeleton'](aL,aM,aN,aO){const bR=bL;let aP=null;return aL['parents'][bR(0x169)](function(aQ){const bS=bR;for(let aR in aM){let aS=aM[aR];aS[bS(0xc6)]['forEach'](function(aT,aU){const bT=bS;if(aT['ID']===aQ['ID']){let aV=aP;aP=new av(),aP['matrixWorld']['copy'](aT['transformLink']),aP[bT(0x168)]=aO?aD['sanitizeNodeName'](aO):'',aP['userData']['originalName']=aO,aP['ID']=aN,aS['bones'][aU]=aP,aV!==null&&aP['add'](aV);}});}}),aP;}['createCamera'](aL){const bV=bL;let aM,aN;if(aL['children']['forEach'](function(aO){const bU=a1;let aP=V['Objects'][bU(0x104)][aO['ID']];aP!==void 0x0&&(aN=aP);}),aN===void 0x0)aM=new ao();else{let aO=0x0;aN['CameraProjectionType']!==void 0x0&&aN[bV(0x16a)]['value']===0x1&&(aO=0x1);let aP=0x1;aN['NearPlane']!==void 0x0&&(aP=aN['NearPlane'][bV(0x146)]/0x3e8);let aQ=0x3e8;aN['FarPlane']!==void 0x0&&(aQ=aN['FarPlane']['value']/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[bV(0xbb)]('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;}['createLight'](aL){const bX=bL;let aM,aN;if(aL['children']['forEach'](function(aO){const bW=a1;let aP=V[bW(0x126)]['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'][bX(0x146)];let aP=0xffffff;aN['Color']!==void 0x0&&(aP=as['colorSpaceToWorking'](new aw()[bX(0xe4)](aN['Color']['value']),aF));let aQ=aN['Intensity']===void 0x0?0x1:aN['Intensity'][bX(0x146)]/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']['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['degToRad'](aN[bX(0xd7)][bX(0x146)])):(aS=al['degToRad'](aN['OuterAngle']['value']),aN['InnerAngle']!==void 0x0&&(aT=0x1-aN['InnerAngle']['value']/aN['OuterAngle']['value'],aT=Math['max'](0x0,aT))),aM=new ac(aP,aQ,aR,aS,aT,0x1);break;default:console[bX(0xbb)]('THREE.FBXLoader:\x20Unknown\x20light\x20type\x20'+aN['LightType']['value']+',\x20defaulting\x20to\x20a\x20PointLight.'),aM=new ar(aP,aQ);break;}aN['CastShadows']!==void 0x0&&aN[bX(0x101)]['value']===0x1&&(aM['castShadow']=!0x0);}return aM;}['createMesh'](aL,aM,aN){const bZ=bL;let aO,aP=null,aQ=null,aR=[];if(aL['children']['forEach'](function(aS){const bY=a1;aM['has'](aS['ID'])&&(aP=aM[bY(0xaf)](aS['ID'])),aN[bY(0x112)](aS['ID'])&&aR['push'](aN['get'](aS['ID']));}),aR[bZ(0x142)]>0x1?aQ=aR:aR['length']>0x0?aQ=aR[0x0]:(aQ=new aA({'name':ab['DEFAULT_MATERIAL_NAME'],'color':0xcccccc}),aR['push'](aQ)),bZ(0x16e)in aP['attributes']&&aR['forEach'](function(aS){const c0=bZ;aS[c0(0x117)]=!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['FBX_Deformer']?(aO=new ad(aP,aQ),aO[bZ(0xcb)]()):aO=new ap(aP,aQ),aO;}['createCurve'](aL,aM){const c1=bL;return new ah(aL['children'][c1(0xa3)](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 c2=bL;let aN={};'InheritType'in aM&&(aN[c2(0xe0)]=parseInt(aM['InheritType']['value'])),c2(0xb8)in aM?aN['eulerOrder']=Z(aM['RotationOrder']['value']):aN['eulerOrder']=Z(0x0),'Lcl_Translation'in aM&&(aN['translation']=aM['Lcl_Translation']['value']),'PreRotation'in aM&&(aN['preRotation']=aM['PreRotation']['value']),'Lcl_Rotation'in aM&&(aN[c2(0x14e)]=aM['Lcl_Rotation']['value']),'PostRotation'in aM&&(aN['postRotation']=aM['PostRotation']['value']),'Lcl_Scaling'in aM&&(aN[c2(0xa6)]=aM['Lcl_Scaling'][c2(0x146)]),'ScalingOffset'in aM&&(aN['scalingOffset']=aM['ScalingOffset']['value']),'ScalingPivot'in aM&&(aN['scalingPivot']=aM['ScalingPivot'][c2(0x146)]),'RotationOffset'in aM&&(aN['rotationOffset']=aM[c2(0xb9)]['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 c3=a1;if(aN[c3(0xc2)]==='LookAtProperty'){let aO=V['Objects']['Model'][aN['ID']];if('Lcl_Translation'in aO){let aP=aO['Lcl_Translation']['value'];aL['target']===void 0x0?aL['lookAt'](new a3()['fromArray'](aP)):(aL['target'][c3(0xd9)]['fromArray'](aP),U['add'](aL['target']));}}});}[bL(0xad)](aL,aM,aN){const c4=bL;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[c4(0xc6)][aR]&&aT['copy'](aP['rawBones'][aR][c4(0x11f)])['invert'](),aQ['push'](aT);}H['get'](parseInt(aP['ID']))['parents']['forEach'](function(aU){const c5=c4;if(aM['has'](aU['ID'])){let aV=aU['ID'];H[c5(0xaf)](aV)['parents']['forEach'](function(aW){const c6=c5;if(aN['has'](aW['ID'])){let aX=aN['get'](aW['ID']);aX['updateMatrixWorld'](!0x0),aX['bind'](new a6(aP['bones'],aQ),aX[c6(0xdc)]);}});}});}}['parsePoseNodes'](){const c7=bL;let aL={};if('Pose'in V[c7(0x126)]){let aM=V['Objects']['Pose'];for(let aN in aM)if(aM[aN]['attrType']==='BindPose'&&aM[aN]['NbPoseNodes']>0x0){let aO=aM[aN][c7(0x122)];Array[c7(0xcd)](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 c8=bL;if('GlobalSettings'in V){if(c8(0xf4)in V['GlobalSettings']){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[c8(0x13d)]&&(U[c8(0xf2)]['unitScaleFactor']=V[c8(0x13d)]['UnitScaleFactor']['value']);}}},me=class{constructor(){this['negativeMaterialIndices']=!0x1;}['parse'](aL){const c9=bL;let aM=new Map();if('Geometry'in V[c9(0x126)]){let aN=V[c9(0x126)]['Geometry'];for(let aO in aN){let aP=H[c9(0xaf)](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;}[bL(0xe7)](aL,aM,aN){const ca=bL;switch(aM['attrType']){case'Mesh':return this[ca(0x108)](aL,aM,aN);case'NurbsCurve':return this['parseNurbsGeometry'](aM);}}['parseMeshGeometry'](aL,aM,aN){const cb=bL;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['children']['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['RotationOrder']['value'])),'InheritType'in aS&&(aT['inheritType']=parseInt(aS['InheritType']['value'])),'GeometricTranslation'in aS&&(aT['translation']=aS[cb(0xa1)]['value']),'GeometricRotation'in aS&&(aT['rotation']=aS['GeometricRotation']['value']),'GeometricScaling'in aS&&(aT['scale']=aS['GeometricScaling']['value']);let aU=X(aT);return this[cb(0xe2)](aM,aR,aP,aU);}['genGeometry'](aL,aM,aN,aO){const cc=bL;let aP=new aB();aL['attrName']&&(aP['name']=aL['attrName']);let aQ=this['parseGeoNode'](aL,aM),aR=this[cc(0xff)](aQ),aS=new aE(aR['vertex'],0x3);if(aS['applyMatrix4'](aO),aP['setAttribute'](cc(0xd9),aS),aR['colors']['length']>0x0&&aP['setAttribute']('color',new aE(aR[cc(0x160)],0x3)),aM&&(aP['setAttribute'](cc(0xb1),new ai(aR['weightsIndices'],0x4)),aP[cc(0xae)]('skinWeight',new aE(aR[cc(0x16c)],0x4)),aP['FBX_Deformer']=aM),aR['normal']['length']>0x0){let aT=new ag()['getNormalMatrix'](aO),aU=new aE(aR['normal'],0x3);aU['applyNormalMatrix'](aT),aP['setAttribute'](cc(0xe6),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['material']&&aQ['material']['mappingType']!=='AllSame'){let aV=aR['materialIndex'][0x0],aW=0x0;if(aR['materialIndex']['forEach'](function(aX,aY){aX!==aV&&(aP['addGroup'](aW,aY-aW,aV),aV=aX,aW=aY);}),aP[cc(0xaa)]['length']>0x0){let aX=aP['groups'][aP['groups']['length']-0x1],aY=aX['start']+aX['count'];aY!==aR[cc(0x13e)]['length']&&aP['addGroup'](aY,aR['materialIndex'][cc(0x142)]-aY,aV);}aP['groups']['length']===0x0&&aP['addGroup'](0x0,aR[cc(0x13e)]['length'],aR[cc(0x13e)][0x0]);}return this['addMorphTargets'](aP,aL,aN,aO),aP;}[bL(0x16b)](aL,aM){const cd=bL;let aN={};if(aN['vertexPositions']=aL['Vertices']===void 0x0?[]:aL['Vertices']['a'],aN[cd(0x139)]=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[cd(0x13c)](aL[cd(0x102)][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['parseUVs'](aL[cd(0x167)][aO])),aO++;}return aN['weightTable']={},aM!==null&&(aN[cd(0x119)]=aM,aM['rawBones'][cd(0x169)](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 cf=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['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[cf(0x110)][aX]['forEach'](function(b4){const cg=cf;b2['push'](b4['weight']),b1[cg(0x132)](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){const ch=cf;let b8=b6,b9=b1[b7];b5[ch(0x169)](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['length']<0x4;)b2['push'](0x0),b1['push'](0x0);for(let b6=0x0;b6<0x4;++b6)aU['push'](b2[b6]),aV['push'](b1[b6]);}if(aL[cf(0xe6)]){let b7=q(aY,aN,aX,aL['normal']);aR[cf(0x132)](b7[0x0],b7[0x1],b7[0x2]);}aL['material']&&aL['material']['mappingType']!=='AllSame'&&(aZ=q(aY,aN,aX,aL['material'])[0x0],aZ<0x0&&(aW[cf(0x12d)]=!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 ci=bL;let aM=new a3(0x0,0x0,0x0);for(let aN=0x0;aN<aL['length'];aN++){let aO=aL[aN],aP=aL[(aN+0x1)%aL[ci(0x142)]];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 cj=bL;let aM=this['getNormalNewell'](aL),aN=(Math[cj(0x115)](aM['z'])>0.5?new a3(0x0,0x1,0x0):new a3(0x0,0x0,0x1))['cross'](aM)[cj(0x133)]();return{'normal':aM,'tangent':aN,'bitangent':aM['clone']()['cross'](aN)['normalize']()};}['flattenVertex'](aL,aM,aN){const ck=bL;return new aJ(aL[ck(0x9e)](aM),aL[ck(0x9e)](aN));}['genFace'](aL,aM,aN,aO,aP,aQ,aR,aS,aT,aU){const cl=bL;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['triangulateShape'](b0,[]);}else aV=[[0x0,0x1,0x2]];for(let [b3,b4,b5]of aV)aL[cl(0x107)][cl(0x132)](aM['vertexPositions'][aN[b3*0x3]]),aL['vertex'][cl(0x132)](aM['vertexPositions'][aN[b3*0x3+0x1]]),aL[cl(0x107)]['push'](aM['vertexPositions'][aN[b3*0x3+0x2]]),aL['vertex']['push'](aM['vertexPositions'][aN[b4*0x3]]),aL['vertex'][cl(0x132)](aM['vertexPositions'][aN[b4*0x3+0x1]]),aL['vertex']['push'](aM['vertexPositions'][aN[b4*0x3+0x2]]),aL['vertex'][cl(0x132)](aM['vertexPositions'][aN[b5*0x3]]),aL['vertex']['push'](aM['vertexPositions'][aN[b5*0x3+0x1]]),aL['vertex']['push'](aM['vertexPositions'][aN[b5*0x3+0x2]]),aM[cl(0x119)]&&(aL[cl(0x16c)]['push'](aS[b3*0x4]),aL['vertexWeights']['push'](aS[b3*0x4+0x1]),aL['vertexWeights'][cl(0x132)](aS[b3*0x4+0x2]),aL['vertexWeights']['push'](aS[b3*0x4+0x3]),aL['vertexWeights']['push'](aS[b4*0x4]),aL['vertexWeights']['push'](aS[b4*0x4+0x1]),aL['vertexWeights']['push'](aS[b4*0x4+0x2]),aL[cl(0x16c)]['push'](aS[b4*0x4+0x3]),aL['vertexWeights']['push'](aS[b5*0x4]),aL['vertexWeights'][cl(0x132)](aS[b5*0x4+0x1]),aL[cl(0x16c)][cl(0x132)](aS[b5*0x4+0x2]),aL['vertexWeights']['push'](aS[b5*0x4+0x3]),aL['weightsIndices']['push'](aT[b3*0x4]),aL[cl(0x14c)]['push'](aT[b3*0x4+0x1]),aL[cl(0x14c)]['push'](aT[b3*0x4+0x2]),aL['weightsIndices']['push'](aT[b3*0x4+0x3]),aL['weightsIndices']['push'](aT[b4*0x4]),aL['weightsIndices']['push'](aT[b4*0x4+0x1]),aL['weightsIndices']['push'](aT[b4*0x4+0x2]),aL[cl(0x14c)][cl(0x132)](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'][cl(0x132)](aT[b5*0x4+0x3])),aM['color']&&(aL[cl(0x160)]['push'](aQ[b3*0x3]),aL['colors']['push'](aQ[b3*0x3+0x1]),aL['colors']['push'](aQ[b3*0x3+0x2]),aL['colors'][cl(0x132)](aQ[b4*0x3]),aL[cl(0x160)]['push'](aQ[b4*0x3+0x1]),aL['colors']['push'](aQ[b4*0x3+0x2]),aL['colors']['push'](aQ[b5*0x3]),aL[cl(0x160)]['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['normal']&&(aL['normal']['push'](aP[b3*0x3]),aL['normal']['push'](aP[b3*0x3+0x1]),aL['normal'][cl(0x132)](aP[b3*0x3+0x2]),aL['normal']['push'](aP[b4*0x3]),aL['normal'][cl(0x132)](aP[b4*0x3+0x1]),aL['normal']['push'](aP[b4*0x3+0x2]),aL['normal']['push'](aP[b5*0x3]),aL['normal']['push'](aP[b5*0x3+0x1]),aL['normal'][cl(0x132)](aP[b5*0x3+0x2])),aM['uv']&&aM['uv']['forEach'](function(b6,b7){const cm=cl;aL['uvs'][b7]===void 0x0&&(aL['uvs'][b7]=[]),aL['uvs'][b7]['push'](aR[b7][b3*0x2]),aL['uvs'][b7]['push'](aR[b7][b3*0x2+0x1]),aL['uvs'][b7][cm(0x132)](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 cn=bL;if(aN[cn(0x142)]===0x0)return;aL[cn(0xcc)]=!0x0,aL[cn(0x15a)]['position']=[];let aP=aO['clone']()[cn(0xb6)](0x0,0x0,0x0),aQ=this;aN['forEach'](function(aR){const co=cn;aR['rawTargets'][co(0x169)](function(aS){let aT=V['Objects']['Geometry'][aS['geoID']];aT!==void 0x0&&aQ['genMorphGeometry'](aL,aM,aT,aP,aS['name']);});});}[bL(0x140)](aL,aM,aN,aO,aP){const cp=bL;let aQ=aM['Vertices']===void 0x0?[]:aM['Vertices']['a'],aR=aM['PolygonVertexIndex']===void 0x0?[]:aM[cp(0x105)]['a'],aS=aN['Vertices']===void 0x0?[]:aN['Vertices']['a'],aT=aN['Indexes']===void 0x0?[]:aN['Indexes']['a'],aU=aL['attributes']['position']['count']*0x3,aV=new Float32Array(aU);for(let aY=0x0;aY<aT[cp(0x142)];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['name']=aP||aN['attrName'],aX['applyMatrix4'](aO),aL[cp(0x15a)][cp(0xd9)]['push'](aX);}['parseNormals'](aL){const cq=bL;let aM=aL['MappingInformationType'],aN=aL['ReferenceInformationType'],aO=aL['Normals']['a'],aP=[];return aN==='IndexToDirect'&&(cq(0x161)in aL?aP=aL['NormalIndex']['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){const cr=bL;let aM=aL['MappingInformationType'],aN=aL[cr(0xba)],aO=aL[cr(0x15b)]['a'],aP=[];aN==='IndexToDirect'&&(aP=aL[cr(0xde)]['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){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['push'](aQ);return{'dataSize':0x1,'buffer':aO,'indices':aP,'mappingType':aM,'referenceType':aN};}['parseNurbsGeometry'](aL){const cs=bL;let aM=parseInt(aL['Order']);if(isNaN(aM))return console['error']('THREE.FBXLoader:\x20Invalid\x20Order\x20%s\x20given\x20for\x20geometry\x20ID:\x20%s',aL[cs(0xd8)],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()[cs(0xe4)](aQ,aU));let aR,aS;if(aL['Form']==='Closed')aP['push'](aP[0x0]);else{if(aL['Form']==='Periodic'){aR=aN,aS=aO[cs(0x142)]-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'](){const ct=bL;let aL=[],aM=this['parseClips']();if(aM!==void 0x0)for(let aN in aM){let aO=aM[aN],aP=this['addClip'](aO);aL[ct(0x132)](aP);}return aL;}['parseClips'](){const cu=bL;if(V['Objects'][cu(0x156)]===void 0x0)return;let aL=this['parseAnimationCurveNodes']();this['parseAnimationCurves'](aL);let aM=this['parseAnimationLayers'](aL);return this[cu(0xfa)](aM);}['parseAnimationCurveNodes'](){const cv=bL;let aL=V[cv(0x126)]['AnimationCurveNode'],aM=new Map();for(let aN in aL){let aO=aL[aN];if(aO[cv(0x173)]['match'](/S|R|T|DeformPercent/)!==null){let aP={'id':aO['id'],'attr':aO['attrName'],'curves':{}};aM['set'](aP['id'],aP);}}return aM;}[bL(0xa8)](aL){const cw=bL;let aM=V['Objects'][cw(0x156)];for(let aN in aM){let aO={'id':aM[aN]['id'],'times':aM[aN][cw(0xda)]['a']['map'](be),'values':aM[aN]['KeyValueFloat']['a']},aP=H[cw(0xaf)](aO['id']);if(aP!==void 0x0){let aQ=aP['parents'][0x0]['ID'],aR=aP['parents'][0x0]['relationship'];aR['match'](/X/)?aL['get'](aQ)['curves']['x']=aO:aR['match'](/Y/)?aL['get'](aQ)['curves']['y']=aO:aR[cw(0x120)](/Z/)?aL['get'](aQ)[cw(0x135)]['z']=aO:aR[cw(0x120)](/DeformPercent/)&&aL[cw(0x112)](aQ)&&(aL['get'](aQ)['curves']['morph']=aO);}}}['parseAnimationLayers'](aL){const cx=bL;let aM=V['Objects'][cx(0x144)],aN=new Map();for(let aO in aM){let aP=[],aQ=H['get'](parseInt(aO));aQ!==void 0x0&&(aQ[cx(0xfe)]['forEach'](function(aR,aS){const cy=cx;if(aL[cy(0x112)](aR['ID'])){let aT=aL['get'](aR['ID']);if(aT[cy(0x135)]['x']!==void 0x0||aT[cy(0x135)]['y']!==void 0x0||aT['curves']['z']!==void 0x0){if(aP[aS]===void 0x0){let aU=H['get'](aR['ID'])['parents']['filter'](function(aW){const cz=cy;return aW[cz(0xc2)]!==void 0x0;});if(aU['length']===0x0)return;let aV=aU[0x0]['ID'];if(aV!==void 0x0){let aW=V[cy(0x126)]['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=cy;aY['ID']===aW['id']&&(aX['transform']=aY[cA(0xb2)],aY['userData']['transformData']&&(aX['eulerOrder']=aY['userData'][cA(0x14d)]['eulerOrder'],aY[cA(0xf2)]['transformData']['rotation']&&(aX['initialRotation']=aY['userData']['transformData']['rotation'])));}),aX['transform']||(aX['transform']=new a2()),'PreRotation'in aW&&(aX[cy(0x150)]=aW['PreRotation']['value']),'PostRotation'in aW&&(aX['postRotation']=aW['PostRotation']['value']),aP[aS]=aX;}}aP[aS]&&(aP[aS][aT[cy(0x11c)]]=aT);}else{if(aT['curves']['morph']!==void 0x0){if(aP[aS]===void 0x0){let aY=H['get'](aR['ID'])[cy(0xbe)][cy(0xdd)](function(b4){return b4['relationship']!==void 0x0;});if(aY['length']===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)[cy(0xbe)][0x0]['ID'],b3=V['Objects'][cy(0x15f)][b2];aP[aS]={'modelName':b3[cy(0x173)]?aD['sanitizeNodeName'](b3['attrName']):'','morphName':V['Objects']['Deformer'][aZ]['attrName']};}aP[aS][aT[cy(0x11c)]]=aT;}}}}),aN['set'](parseInt(aO),aP));}return aN;}['parseAnimStacks'](aL){const cB=bL;let aM=V['Objects']['AnimationStack'],aN={};for(let aO in aM){let aP=H['get'](parseInt(aO))['children'];aP[cB(0x142)]>0x1&&console[cB(0xbb)]('THREE.FBXLoader:\x20Encountered\x20an\x20animation\x20stack\x20with\x20multiple\x20layers,\x20this\x20is\x20currently\x20not\x20supported.\x20Ignoring\x20subsequent\x20layers.');let aQ=aL[cB(0xaf)](aP[0x0]['ID']);aN[aO]={'name':aM[aO][cB(0x173)],'layer':aQ};}return aN;}['addClip'](aL){const cD=bL;let aM=[],aN=this;return aL['layer']['forEach'](function(aO){const cC=a1;aM=aM[cC(0xf3)](aN[cC(0xf0)](aO));}),new az(aL[cD(0x168)],-0x1,aM);}[bL(0xf0)](aL){const cE=bL;let aM=[],aN=new a3(),aO=new a3();if(aL['transform']&&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,'position');aP!==void 0x0&&aM['push'](aP);}if(aL['R']!==void 0x0&&Object['keys'](aL['R']['curves'])['length']>0x0){let aQ=this['generateRotationTrack'](aL[cE(0xf9)],aL['R']['curves'],aL['preRotation'],aL['postRotation'],aL[cE(0x148)],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[cE(0x132)](aR);}if(aL['DeformPercent']!==void 0x0){let aS=this['generateMorphTrack'](aL);aS!==void 0x0&&aM['push'](aS);}return aM;}['generateVectorTrack'](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 cF=bL;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[cF(0x16d)](al['degToRad']),aN[cF(0x132)](aT),aN=new aj()[cF(0xe4)](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()['setFromEuler'](aO)[cF(0x174)]());let aU=new aH(),aV=new aj(),aW=[];if(!(!aS||!aR)){for(let b3=0x0;b3<aS[cF(0x142)];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['set'](-aU['x'],-aU['y'],-aU['z'],-aU['w']),aU['toArray'](aW,b3/0x3*0x4);return new an(aL+'.quaternion',aR,aW);}}[bL(0xf5)](aL){const cG=bL;let aM=aL['DeformPercent']['curves']['morph'],aN=aM['values']['map'](function(aP){return aP/0x64;}),aO=U['getObjectByName'](aL['modelName'])['morphTargetDictionary'][aL['morphName']];return new aC(aL[cG(0xf9)]+'.morphTargetInfluences['+aO+']',aM['times'],aN);}[bL(0xb5)](aL){const cH=bL;let aM=[];if(aL['x']!==void 0x0&&(aM=aM['concat'](aL['x']['times'])),aL['y']!==void 0x0&&(aM=aM[cH(0xf3)](aL['y']['times'])),aL['z']!==void 0x0&&(aM=aM['concat'](aL['z']['times'])),aM=aM[cH(0x145)](function(aN,aO){return aN-aO;}),aM[cH(0x142)]>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[cH(0x12c)](0x0,aN);}return aM;}['getKeyframeTrackValues'](aL,aM,aN){let aO=aN,aP=[],aQ=-0x1,aR=-0x1,aS=-0x1;return aL['forEach'](function(aT){const cI=a1;if(aM['x']&&(aQ=aM['x']['times'][cI(0x136)](aT)),aM['y']&&(aR=aM['y']['times']['indexOf'](aT)),aM['z']&&(aS=aM['z']['times'][cI(0x136)](aT)),aQ!==-0x1){let aU=aM['x'][cI(0xd3)][aQ];aP[cI(0x132)](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){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};}['sampleCurveValue'](aL,aM,aN){const cJ=bL;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[cJ(0x142)]-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=bL;let aP=[],aQ=[];aP[cK(0x132)](aL['times'][0x0]),aQ['push'](al[cK(0xa7)](aL['values'][0x0])),aQ['push'](al['degToRad'](aM['values'][0x0])),aQ['push'](al['degToRad'](aN['values'][0x0]));for(let aR=0x1;aR<aL['values'][cK(0x142)];aR++){let aS=[aL[cK(0xd3)][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['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[cK(0xa7)]),aW=[aU[0x0]-aS[0x0],aU[0x1]-aS[0x1],aU[0x2]-aS[0x2]],aX=[Math[cK(0x115)](aW[0x0]),Math[cK(0x115)](aW[0x1]),Math[cK(0x115)](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['set'](-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['clone'](),b7)),aP[cK(0x132)](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[cK(0x132)](al['degToRad'](aL[cK(0xd3)][aR])),aQ['push'](al['degToRad'](aM[cK(0xd3)][aR])),aQ[cK(0x132)](al['degToRad'](aN[cK(0xd3)][aR]));}return[aP,aQ];}},ge=class{[bL(0xc3)](){const cL=bL;return this['nodeStack'][this[cL(0xfc)]-0x2];}['getCurrentNode'](){return this['nodeStack'][this['currentIndent']-0x1];}['getCurrentProp'](){return this['currentProp'];}['pushStack'](aL){this['nodeStack']['push'](aL),this['currentIndent']+=0x1;}['popStack'](){this['nodeStack']['pop'](),--this['currentIndent'];}['setCurrentProp'](aL,aM){const cM=bL;this[cM(0xbd)]=aL,this['currentPropName']=aM;}['parse'](aL){this['currentIndent']=0x0,this['allNodes']=new G(),this['nodeStack']=[],this['currentProp']=[],this['currentPropName']='';let aM=this,aN=aL['split'](/[\r\n]+/);return aN['forEach'](function(aO,aP){const cN=a1;let aQ=aO['match'](/^[\s\t]*;/),aR=aO['match'](/^[\s\t]*$/);if(aQ||aR)return;let aS=aO['match'](cN(0x10f)+aM['currentIndent']+'}(\x5cw+):(.*){',''),aT=aO[cN(0x120)]('^\x5ct{'+aM['currentIndent']+'}(\x5cw+):[\x5cs\x5ct\x5cr\x5cn](.*)'),aU=aO['match']('^\x5ct{'+(aM['currentIndent']-0x1)+'}}');aS?aM['parseNodeBegin'](aO,aS):aT?aM['parseNodeProperty'](aO,aT,aN[++aP]):aU?aM['popStack']():aO[cN(0x120)](/^[^\s\t}]/)&&aM['parseNodePropertyContinued'](aO);}),this['allNodes'];}['parseNodeBegin'](aL,aM){const cO=bL;let aN=aM[0x1][cO(0x12e)]()['replace'](/^"/,'')['replace'](/"$/,''),aO=aM[0x2][cO(0x116)](',')['map'](function(aS){return aS['trim']()['replace'](/^"/,'')['replace'](/"$/,'');}),aP={'name':aN},aQ=this['parseNodeAttr'](aO),aR=this[cO(0xfd)]();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==='PoseNode'?aR[aN]=[aP]:aR[aN]=aP),typeof aQ['id']=='number'&&(aP['id']=aQ['id']),aQ[cO(0x168)]!==''&&(aP['attrName']=aQ[cO(0x168)]),aQ[cO(0xce)]!==''&&(aP['attrType']=aQ['type']),this['pushStack'](aP);}[bL(0x121)](aL){const cP=bL;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][cP(0xe9)](/^(\w+)::/,''),aO=aL[0x2]),{'id':aM,'name':aN,'type':aO};}[bL(0x138)](aL,aM,aN){const cQ=bL;let aO=aM[0x1]['replace'](/^"/,'')['replace'](/"$/,'')[cQ(0x12e)](),aP=aM[0x2][cQ(0xe9)](/^"/,'')['replace'](/"$/,'')[cQ(0x12e)]();aO==='Content'&&aP===','&&(aP=aN['replace'](/"/g,'')['replace'](/,$/,'')['trim']());let aQ=this['getCurrentNode']();if(aQ[cQ(0x168)]===cQ(0x152)){this['parseNodeSpecialProperty'](aL,aO,aP);return;}if(aO==='C'){let aR=aP[cQ(0x116)](',')['slice'](0x1),aS=parseInt(aR[0x0]),aT=parseInt(aR[0x1]),aU=aP[cQ(0x116)](',')['slice'](0x3);aU=aU['map'](function(aV){return aV['trim']()['replace'](/^"/,'');}),aO=cQ(0x9d),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(0x132)](aP):aO==='a'?aQ['a']=aP:aQ[aO]=aP,this[cQ(0xab)](aQ,aO),aO==='a'&&aP['slice'](-0x1)!==','&&(aQ['a']=Q(aP));}['parseNodePropertyContinued'](aL){const cR=bL;let aM=this['getCurrentNode']();aM['a']+=aL,aL[cR(0x12c)](-0x1)!==','&&(aM['a']=Q(aM['a']));}['parseNodeSpecialProperty'](aL,aM,aN){const cS=bL;let aO=aN['split']('\x22,')[cS(0x16d)](function(aU){const cT=cS;return aU['trim']()[cT(0xe9)](/^\"/,'')[cT(0xe9)](/\s/,'_');}),aP=aO[0x0],aQ=aO[0x1],aR=aO[0x2],aS=aO[0x3],aT=aO[0x4];switch(aQ){case cS(0xb0):case'enum':case cS(0xef):case cS(0xcf):case cS(0x12a):case cS(0x12b):case'FieldOfView':aT=parseFloat(aT);break;case'Color':case'ColorRGB':case'Vector3D':case'Lcl_Translation':case'Lcl_Rotation':case cS(0x164):aT=Q(aT);break;}this['getPrevNode']()[aP]={'type':aQ,'type2':aR,'flag':aS,'value':aT},this['setCurrentProp'](this['getPrevNode'](),aP);}},_e=class{['parse'](aL){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['parseNode'](aM,aN);aP!==null&&aO['add'](aP['name'],aP);}return aO;}['endOfContent'](aL){return aL['size']()%0x10==0x0?(aL['getOffset']()+0xa0+0x10&-0x10)>=aL['size']():aL['getOffset']()+0xa0+0x10>=aL['size']();}['parseNode'](aL,aM){const cU=bL;let aN={},aO=aM>=0x1d4c?aL['getUint64']():aL['getUint32'](),aP=aM>=0x1d4c?aL['getUint64']():aL['getUint32']();aM>=0x1d4c?aL[cU(0x11d)]():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[cU(0x132)](this['parseProperty'](aL));let aT=aS['length']>0x0?aS[0x0]:'',aU=aS['length']>0x1?aS[0x1]:'',aV=aS['length']>0x2?aS[0x2]:'';for(aN[cU(0xd5)]=aP===0x1&&aL['getOffset']()===aO;aO>aL['getOffset']();){let aX=this['parseNode'](aL,aM);aX!==null&&this[cU(0xb7)](aR,aN,aX);}return aN['propertyList']=aS,typeof aT==cU(0xfb)&&(aN['id']=aT),aU!==''&&(aN['attrName']=aU),aV!==''&&(aN['attrType']=aV),aR!==''&&(aN['name']=aR),aN;}['parseSubNode'](aL,aM,aN){const cV=bL;if(aN['singleProperty']===!0x0){let aO=aN['propertyList'][0x0];Array[cV(0xcd)](aO)?(aM[aN[cV(0x168)]]=aN,aN['a']=aO):aM[aN['name']]=aO;}else{if(aL===cV(0x111)&&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==='Properties70'&&aN[cV(0x168)]==='P'){let aQ=aN['propertyList'][0x0],aR=aN['propertyList'][0x1],aS=aN[cV(0x147)][0x2],aT=aN['propertyList'][0x3],aU;aQ['indexOf']('Lcl\x20')===0x0&&(aQ=aQ[cV(0xe9)]('Lcl\x20','Lcl_')),aR['indexOf']('Lcl\x20')===0x0&&(aR=aR['replace']('Lcl\x20','Lcl_')),aU=aR==='Color'||aR==='ColorRGB'||aR===cV(0xdb)||aR==='Vector3D'||aR['indexOf']('Lcl_')===0x0?[aN[cV(0x147)][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['name']==='PoseNode'?(Array['isArray'](aM[aN['name']])||(aM[aN['name']]=[aM[aN['name']]]),aM[aN['name']][cV(0x132)](aN)):aM[aN['name']][aN['id']]===void 0x0&&(aM[aN['name']][aN['id']]=aN);}}}}['parseProperty'](aL){const cW=bL;let aM=aL['getString'](0x1),aN;switch(aM){case'C':return aL['getBoolean']();case'D':return aL[cW(0x15c)]();case'F':return aL['getFloat32']();case'I':return aL['getInt32']();case'L':return aL[cW(0x10d)]();case'R':return aN=aL[cW(0x11a)](),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['getUint32'](),aQ=aL['getUint32']();if(aP===0x0)switch(aM){case'b':case'c':return aL['getBooleanArray'](aO);case'd':return aL['getFloat64Array'](aO);case'f':return aL['getFloat32Array'](aO);case'i':return aL['getInt32Array'](aO);case'l':return aL[cW(0x9b)](aO);}let aR=new W(aK(new Uint8Array(aL['getArrayBuffer'](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[cW(0x124)](aO);case'l':return aR[cW(0x9b)](aO);}break;default:throw Error('THREE.FBXLoader:\x20Unknown\x20property\x20type\x20'+aM);}}},W=class{constructor(aL,aM){const cX=bL;this['dv']=new DataView(aL),this['offset']=0x0,this[cX(0x100)]=aM===void 0x0?!0x0:aM,this[cX(0xd2)]=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){const cY=bL;let aM=[];for(let aN=0x0;aN<aL;aN++)aM[cY(0x132)](this['getBoolean']());return aM;}[bL(0x14a)](){const cZ=bL;let aL=this['dv'][cZ(0x14a)](this['offset']);return this['offset']+=0x1,aL;}['getInt16'](){let aL=this['dv']['getInt16'](this['offset'],this['littleEndian']);return this['offset']+=0x2,aL;}['getInt32'](){const d0=bL;let aL=this['dv'][d0(0x141)](this[d0(0xd0)],this['littleEndian']);return this[d0(0xd0)]+=0x4,aL;}['getInt32Array'](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getInt32']());return aM;}[bL(0x11a)](){let aL=this['dv']['getUint32'](this['offset'],this['littleEndian']);return this['offset']+=0x4,aL;}['getInt64'](){const d1=bL;let aL,aM;return this['littleEndian']?(aL=this['getUint32'](),aM=this[d1(0x11a)]()):(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;}[bL(0x9b)](aL){const d2=bL;let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this[d2(0x10d)]());return aM;}[bL(0x11d)](){const d3=bL;let aL,aM;return this[d3(0x100)]?(aL=this['getUint32'](),aM=this[d3(0x11a)]()):(aM=this['getUint32'](),aL=this[d3(0x11a)]()),aM*0x100000000+aL;}[bL(0xa2)](){let aL=this['dv']['getFloat32'](this['offset'],this['littleEndian']);return this['offset']+=0x4,aL;}[bL(0xa0)](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getFloat32']());return aM;}[bL(0x15c)](){const d4=bL;let aL=this['dv']['getFloat64'](this['offset'],this[d4(0x100)]);return this['offset']+=0x8,aL;}['getFloat64Array'](aL){let aM=[];for(let aN=0x0;aN<aL;aN++)aM['push'](this['getFloat64']());return aM;}['getArrayBuffer'](aL){const d5=bL;let aM=this['dv'][d5(0x109)]['slice'](this['offset'],this['offset']+aL);return this['offset']+=aL,aM;}[bL(0x106)](aL){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']['decode'](aN);}},G=class{['add'](aL,aM){this[aL]=aM;}};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-0x9a;const c=a0();let d=c[a];return d;}function be(aL){return aL/0xac0e8d7b0;}var xe=[];function q(aL,aM,aN,aO){const d6=bL;let aP;switch(aO[d6(0x12f)]){case d6(0x127):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 d7=bL;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[d7(0xc9)](J['fromArray'](bc));}if(aL['rotation']){let bd=aL[d7(0x14e)]['map'](al[d7(0xa7)]);bd['push'](aL['eulerOrder']||aZ),aO[d7(0xc9)](J['fromArray'](bd));}if(aL['postRotation']){let bf=aL[d7(0x113)]['map'](al['degToRad']);bf[d7(0x132)](aZ),aP['makeRotationFromEuler'](J['fromArray'](bf)),aP['invert']();}aL['scale']&&aQ['scale'](Y['fromArray'](aL['scale'])),aL['scalingOffset']&&aS['setPosition'](Y['fromArray'](aL['scalingOffset'])),aL['scalingPivot']&&aR['setPosition'](Y['fromArray'](aL['scalingPivot'])),aL['rotationOffset']&&aT['setPosition'](Y['fromArray'](aL['rotationOffset'])),aL['rotationPivot']&&aU['setPosition'](Y['fromArray'](aL['rotationPivot'])),aL['parentMatrixWorld']&&(aW[d7(0x129)](aL[d7(0x10c)]),aV[d7(0x129)](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['clone']()[d7(0x174)]()['multiply'](aV),b4=b1['clone']()['invert']()['multiply'](b3),b5=aQ,b6=new a2();if(aY===0x0)b6['copy'](b1)[d7(0x143)](b0)['multiply'](b4)['multiply'](b5);else{if(aY===0x1)b6['copy'](b1)['multiply'](b4)['multiply'](b0)['multiply'](b5);else{let bg=new a2()[d7(0xa6)](new a3()['setFromMatrixScale'](aW))['clone']()['invert'](),bh=b4['clone']()['multiply'](bg);b6[d7(0x129)](b1)[d7(0x143)](b0)[d7(0x143)](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)['multiply'](aR)[d7(0x143)](aQ)['multiply'](b8),ba=new a2()['copyPosition'](b9),bb=aV['clone']()[d7(0x143)](ba);return aX[d7(0xa5)](bb),b9=aX['clone']()['multiply'](b6),b9['premultiply'](aV['invert']()),b9;}function Z(aL){const d8=bL;aL=aL||0x0;let aM=['ZYX',d8(0x9a),d8(0x165),'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 d9=bL;for(let aN=0x0,aO=aL[d9(0x142)],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};