| 123 |
- System.register([],(function(t,e){"use strict";return{execute:function(){function i(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,d(n.key),n)}}function n(t,e,n){return e&&i(t.prototype,e),n&&i(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t}function r(){return(r=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(t[n]=i[n])}return t}).apply(this,arguments)}function s(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,o(t,e)}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function o(t,e){return(o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t})(t,e)}function h(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(t){return!1}}function u(t,e,i){return(u=h()?Reflect.construct.bind():function(t,e,i){var n=[null];n.push.apply(n,e);var r=new(Function.bind.apply(t,n));return i&&o(r,i.prototype),r}).apply(null,arguments)}function l(t){var e="function"==typeof Map?new Map:void 0;return(l=function(t){if(null===t||(i=t,-1===Function.toString.call(i).indexOf("[native code]")))return t;var i;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return u(t,arguments,a(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),o(n,t)})(t)}function c(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function _(t,e){(null==e||e>t.length)&&(e=t.length);for(var i=0,n=new Array(e);i<e;i++)n[i]=t[i];return n}function f(t,e){var i="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(i)return(i=i.call(t)).next.bind(i);if(Array.isArray(t)||(i=function(t,e){if(t){if("string"==typeof t)return _(t,e);var i=Object.prototype.toString.call(t).slice(8,-1);return"Object"===i&&t.constructor&&(i=t.constructor.name),"Map"===i||"Set"===i?Array.from(t):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?_(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){i&&(t=i);var n=0;return function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function d(t){var e=function(t,e){if("object"!=typeof t||null===t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var n=i.call(t,e);if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t,"string");return"symbol"==typeof e?e:String(e)}function p(t,e,i,n){i&&Object.defineProperty(t,e,{enumerable:i.enumerable,configurable:i.configurable,writable:i.writable,value:i.initializer?i.initializer.call(n):void 0})}function m(t,e,i,n,r){var s={};return Object.keys(n).forEach((function(t){s[t]=n[t]})),s.enumerable=!!s.enumerable,s.configurable=!!s.configurable,("value"in s||s.initializer)&&(s.writable=!0),s=i.slice().reverse().reduce((function(i,n){return n(t,e,i)||i}),s),r&&void 0!==s.initializer&&(s.value=s.initializer?s.initializer.call(r):void 0,s.initializer=void 0),void 0===s.initializer&&(Object.defineProperty(t,e,s),s=null),s}function g(t,e){const i="undefined"==typeof window?global:window;return void 0===i[t]?i[t]=e:i[t]}t({$:function(t){return NM.test(t)},J:function(){return 0},N:FM,P:kM,W:GM,X:VM,Y:UM,Z:zM,_:f,a0:function(t){return LM.test(t)},a1:jM,a2:YM,a3:qM,aB:function(t,e){for(var i=t,n="";null!==i&&i!==e;)n=i.name+"/"+n,i=i.parent;return n.slice(0,-1)},aC:Pj,aQ:Yn,aS:vn,aU:_n,aW:kn,aZ:Wn,ay:A1,az:b1,b0:Zn,b2:$n,b4:Cn,b9:Li,bB:Te,bC:Ee,bD:we,bI:function(t){t>0&&(pt=t)},bM:Tt,bN:function(t){for(var e,i=f(t);!(e=i()).done;)At(e.value)},bO:function(t){return vt||(vt="undefined"==typeof Proxy?{}:new Proxy(t,{get:function(t,e,i){return At(e),Reflect.get(t,e,i)}})),vt},bP:_a,bQ:fa,bT:Ci,bU:xi,ba:Ni,bb:Fi,bc:ki,bd:Gi,be:Vi,bf:Ui,bg:zi,bh:Hi,bi:Wi,bj:Xi,bk:ji,bl:Yi,bm:qi,bn:Ki,bo:Qi,bp:Zi,bq:Ji,br:$i,bs:tn,bt:en,bu:hn,bv:un,c:Ybt,c$:Ps,c2:function(t){return t[uo]},c5:zs,c7:X,c8:U,c9:H,cE:zl,cF:bu,cG:Vu,cS:co,cU:Wl,cX:mi,cY:gi,ca:z,cb:W,cc:J,cd:Q,ce:it,cf:tt,cg:st,ch:ot,ci:ht,cj:at,d0:Os,d3:function(t,e){e.forEach((function(e){Object.getOwnPropertyNames(e.prototype).forEach((function(i){"constructor"!==i&&Object.defineProperty(t.prototype,i,Object.getOwnPropertyDescriptor(e.prototype,i))}))}))},d4:j,d5:function(t,e){return Va(t,e,0)},d6:Va,d7:function(t,e,i){for(var n=0,r=t.length-1,s=r>>>1;n<=r;s=n+r>>>1){var a=t[s];if(i(a,e)<0)r=s-1;else{if(!(i(a,e)>0))return s;n=s+1}}return~n},d8:function(){},d9:function(){},dU:jp,dW:fJ,da:Ae,db:Kl,dp:TI,gK:FHt,gL:kHt}),g("CC_WECHAT",!1),g("CC_BAIDU",!1),g("CC_XIAOMI",!1),g("CC_ALIPAY",!1),g("CC_BYTEDANCE",!1),g("CC_OPPO",!1),g("CC_VIVO",!1),g("CC_HUAWEI",!1),g("CC_COCOSPLAY",!1),g("CC_QTT",!1),g("CC_LINKSURE",!1);const v=!1;g("CC_EDITOR",!1);g("CC_PREVIEW",!1),g("CC_BUILD",!0),g("CC_TEST",!1),g("CC_DEBUG",!1),g("CC_DEV",!1),g("CC_MINIGAME",!1),g("CC_RUNTIME_BASED",!1),g("CC_SUPPORT_JIT",!0),g("CC_JSB",!1);var y="undefined"==typeof window?global:window,S=t("aN",{_global:y});S.internal={};var T=t("aM","3.8.4");y.CocosEngine=S.ENGINE_VERSION=T,y.cc=S;var A=void 0!==globalThis.jsb&&void 0!==jsb.window?jsb.window:globalThis;y.ccwindow=A;var b=2147483647;function E(t){return(t>0)-(t<0)}function C(t,e){return t^(t^e)&-(t<e)}function x(t){var e,i;return e=(t>65535)<<4,e|=i=((t>>>=e)>255)<<3,e|=i=((t>>>=i)>15)<<2,(e|=i=((t>>>=i)>3)<<1)|(t>>>=i)>>1}function w(t){return 16843009*((t=(858993459&(t-=t>>>1&1431655765))+(t>>>2&858993459))+(t>>>4)&252645135)>>>24}function R(t){var e=32;return(t&=-t)&&e--,65535&t&&(e-=16),16711935&t&&(e-=8),252645135&t&&(e-=4),858993459&t&&(e-=2),1431655765&t&&(e-=1),e}function I(t){return--t,t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,1+(t|=t>>>16)}var D=new Array(256);!function(t){for(var e=0;e<256;++e){var i=e,n=e,r=7;for(i>>>=1;i;i>>>=1)n<<=1,n|=1&i,--r;t[e]=n<<r&255}}(D);var B=Object.freeze({__proto__:null,INT_BITS:32,INT_MAX:b,INT_MIN:-2147483648,sign:E,abs:function(t){var e=t>>31;return(t^e)-e},min:function(t,e){return e^(t^e)&-(t<e)},max:C,isPow2:function(t){return!(t&t-1||!t)},log2:x,log10:function(t){return t>=1e9?9:t>=1e8?8:t>=1e7?7:t>=1e6?6:t>=1e5?5:t>=1e4?4:t>=1e3?3:t>=100?2:t>=10?1:0},popCount:w,countTrailingZeros:R,nextPow2:I,prevPow2:function(t){return t|=t>>>1,t|=t>>>2,t|=t>>>4,t|=t>>>8,(t|=t>>>16)-(t>>>1)},parity:function(t){return t^=t>>>16,t^=t>>>8,t^=t>>>4,27030>>>(t&=15)&1},reverse:function(t){return D[255&t]<<24|D[t>>>8&255]<<16|D[t>>>16&255]<<8|D[t>>>24&255]},interleave2:function(t,e){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t&=65535)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e&=65535)|e<<8))|e<<4))|e<<2))|e<<1))<<1},deinterleave2:function(t,e){return(t=65535&((t=16711935&((t=252645135&((t=858993459&((t=t>>>e&1431655765)|t>>>1))|t>>>2))|t>>>4))|t>>>16))<<16>>16},interleave3:function(t,e,i){return t=1227133513&((t=3272356035&((t=251719695&((t=4278190335&((t&=1023)|t<<16))|t<<8))|t<<4))|t<<2),(t|=(e=1227133513&((e=3272356035&((e=251719695&((e=4278190335&((e&=1023)|e<<16))|e<<8))|e<<4))|e<<2))<<1)|(i=1227133513&((i=3272356035&((i=251719695&((i=4278190335&((i&=1023)|i<<16))|i<<8))|i<<4))|i<<2))<<2},deinterleave3:function(t,e){return(t=1023&((t=4278190335&((t=251719695&((t=3272356035&((t=t>>>e&1227133513)|t>>>2))|t>>>4))|t>>>8))|t>>>16))<<22>>22},nextCombination:function(t){var e=t|t-1;return e+1|(~e&-~e)-1>>>R(t)+1}});t("aO",B);var M=A.document,P="https://github.com/cocos/cocos-engine/blob/"+T+"/EngineErrorMap.md",O=null,L=console.log.bind(console),N=L,F=L,k=function(t,e){if(!t){for(var i=arguments.length,n=new Array(i>2?i-2:0),r=2;r<i;r++)n[r-2]=arguments[r];console.log("ASSERT: "+V.apply(void 0,[e].concat(n)))}},G=L;function V(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return S.js.formatStr.apply(null,e)}function U(){return L.apply(void 0,arguments)}function z(){return N.apply(void 0,arguments)}function H(){return F.apply(void 0,arguments)}function W(t,e){for(var i=arguments.length,n=new Array(i>2?i-2:0),r=2;r<i;r++)n[r-2]=arguments[r];return k.apply(void 0,[t,e].concat(n))}function X(){return G.apply(void 0,arguments)}function j(t){if(L=N=F=k=G=function(){},t!==nt.NONE){if(t>nt.ERROR){var e=function(t){if(S.game.canvas){if(!O){var e=M.createElement("Div");e.setAttribute("id","logInfoDiv"),e.setAttribute("width","200");var i=S.game.canvas.height;e.setAttribute("height",""+i);var n=e.style;n.zIndex="99999",n.position="absolute",n.top=n.left="0",(O=M.createElement("textarea")).setAttribute("rows","20"),O.setAttribute("cols","30"),O.setAttribute("disabled","true");var r=O.style;r.backgroundColor="transparent",r.borderBottom="1px solid #cccccc",r.borderTopWidth=r.borderLeftWidth=r.borderRightWidth="0px",r.borderTopStyle=r.borderLeftStyle=r.borderRightStyle="none",r.padding="0px",r.margin="0px",e.appendChild(O),S.game.canvas.parentNode.appendChild(e)}O.value=O.value+t+"\r\n",O.scrollTop=O.scrollHeight}};F=function(){e("ERROR : "+V.apply(void 0,arguments))},k=function(t,i){if(!t){for(var n=arguments.length,r=new Array(n>2?n-2:0),s=2;s<n;s++)r[s-2]=arguments[s];e("ASSERT: "+V.apply(void 0,[i].concat(r)))}},t!==nt.ERROR_FOR_WEB_PAGE&&(N=function(){e("WARN : "+V.apply(void 0,arguments))}),t===nt.INFO_FOR_WEB_PAGE&&(L=function(){e(V.apply(void 0,arguments))})}else console&&(console.error||(console.error=console.log),console.warn||(console.warn=console.log),F=console.error.bind?console.error.bind(console):function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return console.error.apply(console,e)},k=function(t,e){if(!t){for(var i=arguments.length,n=new Array(i>2?i-2:0),r=2;r<i;r++)n[r-2]=arguments[r];var s=V.apply(void 0,[e].concat(n));throw new Error(s)}});if(t!==nt.ERROR&&(N=console.warn.bind?console.warn.bind(console):function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return console.warn.apply(console,e)}),t<=nt.INFO&&(L=console.log.bind?console.log.bind(console):function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return console.log.apply(console,e)}),t<=nt.VERBOSE&&"function"==typeof console.debug){var i=console.debug.bind(console);G=function(){return i.apply(void 0,arguments)}}}}function Y(t){H(t.stack||t)}function q(t){return function(e){for(var i=t+" "+e+", please go to "+P+"#"+e+" to see details.",n=arguments.length,r=new Array(n>1?n-1:0),s=1;s<n;s++)r[s-1]=arguments[s];return 0===r.length?i:i+" Arguments: "+r.join(", ")}}var K=q("Log");function Q(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];U(K.apply(void 0,[t].concat(i)))}var Z=q("Debug");function J(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];X(Z.apply(void 0,[t].concat(i)))}var $=q("Warning");function tt(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];z($.apply(void 0,[t].concat(i)))}var et=q("Error");function it(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];H(et.apply(void 0,[t].concat(i)))}var nt,rt=q("Assert");function st(t,e){if(!t){for(var i=arguments.length,n=new Array(i>2?i-2:0),r=2;r<i;r++)n[r-2]=arguments[r];W(!1,rt.apply(void 0,[e].concat(n)))}}function at(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];return et.apply(void 0,[t].concat(i))}function ot(){return!!S.profiler&&S.profiler.isShowingStats()}function ht(t){S.profiler&&(t?S.profiler.showStats():S.profiler.hideStats())}t("ck",nt),function(t){t[t.NONE=0]="NONE",t[t.VERBOSE=1]="VERBOSE",t[t.INFO=2]="INFO",t[t.WARN=3]="WARN",t[t.ERROR=4]="ERROR",t[t.INFO_FOR_WEB_PAGE=5]="INFO_FOR_WEB_PAGE",t[t.WARN_FOR_WEB_PAGE=6]="WARN_FOR_WEB_PAGE",t[t.ERROR_FOR_WEB_PAGE=7]="ERROR_FOR_WEB_PAGE"}(nt||t("ck",nt={}));var ut,lt,ct,_t,ft,dt=Object.freeze({__proto__:null,log:U,warn:z,error:H,assert:W,debug:X,_resetDebugSetting:j,_throw:Y,logID:Q,debugID:J,warnID:tt,errorID:it,assertID:st,get DebugMode(){return nt},getError:at,isDisplayStats:ot,setDisplayStats:ht}),pt=10;t("bJ",ut),t("bK",lt),t("bL",ct);var mt=0,gt=new Map;_t=function(t,e,i,n,r,s,a){var o=gt.get(s);o&&o.logTimes>o.count&&(r("'%s' is deprecated, please use '%s' instead. "+a,t+"."+e,i+"."+n),o.count++)},t("bJ",ut=function(t,e,i){null!=t&&i.forEach((function(i){var n=mt++;gt.set(n,{id:n,count:0,logTimes:void 0!==i.logTimes?i.logTimes:pt});var r=null!=i.target?i.target:t,s=null!=i.newName?i.newName:i.name,a=null!=i.targetName?i.targetName:e,o=r===t,h=i.suggest?"("+i.suggest+")":"";if(null!=i.customFunction)t[i.name]=function(){var t;return _t(e,i.name,a,s,z,n,h),(t=i.customFunction).call.apply(t,[this].concat(Array.prototype.slice.call(arguments)))};else if(null!=i.customSetter||null!=i.customGetter){var u=null!=i.customSetter,l=null!=i.customGetter;u&&l?Object.defineProperty(t,i.name,{get:function(){return _t(e,i.name,a,s,z,n,h),i.customGetter.call(this)},set:function(t){_t(e,i.name,a,s,z,n,h),i.customSetter.call(this,t)},enumerable:!1}):u?Object.defineProperty(t,i.name,{set:function(t){_t(e,i.name,a,s,z,n,h),i.customSetter.call(this,t)},enumerable:!1}):l&&Object.defineProperty(t,i.name,{get:function(){return _t(e,i.name,a,s,z,n,h),i.customGetter.call(this)},enumerable:!1})}else Object.defineProperty(t,i.name,{get:function(){return _t(e,i.name,a,s,z,n,h),o?this[s]:r[s]},set:function(t){_t(e,i.name,a,s,z,n,h),o?this[s]=t:r[s]=t},enumerable:!1})}))}),ft=function(t,e,i,n,r){var s=gt.get(n);s&&s.logTimes>s.count&&(i("'%s' has been removed. "+r,t+"."+e),s.count++)},t("bK",lt=function(t,e,i){null!=t&&i.forEach((function(i){var n=mt++;gt.set(n,{id:n,count:0,logTimes:void 0!==i.logTimes?i.logTimes:pt});var r=i.suggest?"("+i.suggest+")":"";Object.defineProperty(t,i.name,{get:function(){return ft(e,i.name,H,n,r)},set:function(){ft(e,i.name,H,n,r)},enumerable:!1})}))}),t("bL",ct=function(){});var vt,yt,St={};function Tt(t){for(var e in t){var i=t[e];St[e]=i}}function At(t){var e=St[t];if(e){var i=e.newName,n=e.since;e.removed?i?it(16003,t,n,i):it(16002,t,n):i?tt(16001,t,n,i):tt(16e3,t,n)}}var bt=function(){function t(t){this.id=0|998*Math.random(),this.prefix=t?t+".":""}return t.prototype.getNewId=function(){return this.prefix+(++this.id).toString()},t}();yt=bt,bt.global=new yt("global");var Et=new bt("TmpCId."),Ct="undefined"==typeof Symbol?"__aliases__":Symbol("[[Aliases]]"),xt="__cid__";function wt(t){return"number"==typeof t||t instanceof Number}function Rt(t){return"string"==typeof t||t instanceof String}function It(t){for(var e in t)return!1;return!0}var Dt,Bt=(Dt={value:void 0,enumerable:!1,writable:!1,configurable:!0},function(t,e,i,n,r){Dt.value=i,Dt.writable=n,Dt.enumerable=r,Object.defineProperty(t,e,Dt),Dt.value=void 0}),Mt=function(){var t={get:void 0,set:void 0,enumerable:!1};return function(e,i,n,r,s,a){void 0===s&&(s=!1),void 0===a&&(a=!1),"boolean"==typeof r&&(console.log("Set `setter` to boolean is deprecated. Please don not use like this again."),s=r,r=void 0),t.get=n,t.set=r,t.enumerable=s,t.configurable=a,Object.defineProperty(e,i,t),t.get=void 0,t.set=void 0}}(),Pt=function(){var t={get:void 0,enumerable:!1,configurable:!1};return function(e,i,n,r,s){t.get=n,t.enumerable=r,t.configurable=s,Object.defineProperty(e,i,t),t.get=void 0}}(),Ot=function(){var t={set:void 0,enumerable:!1,configurable:!1};return function(e,i,n,r,s){t.set=n,t.enumerable=r,t.configurable=s,Object.defineProperty(e,i,t),t.set=void 0}}();function Lt(t){var e=Object.create(null);return t&&(e["."]=1,e["/"]=1,delete e["."],delete e["/"]),e}function Nt(t){if("function"==typeof t){var e=t.prototype;if(e&&e.hasOwnProperty("__classname__")&&e.__classname__)return e.__classname__;var i="";if(t.name&&(i=t.name),t.toString){var n,r=t.toString();(n="["===r.charAt(0)?/\[\w+\s*(\w+)\]/.exec(r):/function\s*(\w+)/.exec(r))&&2===n.length&&(i=n[1])}return"Object"!==i?i:""}return t&&t.constructor?Nt(t.constructor):""}function Ft(t,e,i,n){var r=/([^.]+)$/,s=r.exec(e)[0],a=r.exec(i)[0];function o(){return this[a]}n?Mt(t,s,o,(function(t){this[a]=t})):Pt(t,s,o)}function kt(t,e,i,n){for(var r in i)Ft(t,e+"."+r,i[r],n)}var Gt=/(%d)|(%s)/,Vt=/%s/;function Ut(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];if(0===arguments.length)return"";if(0===i.length)return""+t;var r="string"==typeof t&&Gt.test(t);if(r)for(var s,a=f(i);!(s=a()).done;){var o=s.value,h="number"==typeof o?Gt:Vt;if(h.test(t)){var u=""+o;t=t.replace(h,u)}else t+=" "+o}else for(var l,c=f(i);!(l=c()).done;){var _=l.value;t+=" "+_}return t}function zt(){for(var t=arguments.length-1,e=new Array(t),i=0;i<t;++i)e[i]=arguments[i+1];return e}function Ht(t,e){for(;t;){var i=Object.getOwnPropertyDescriptor(t,e);if(i)return i;t=Object.getPrototypeOf(t)}return null}function Wt(t,e,i){var n=Ht(e,t);n&&Object.defineProperty(i,t,n)}function Xt(t){t=t||{};for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];for(var r=0,s=i;r<s.length;r++){var a=s[r];if(a){if("object"!=typeof a){it(5402,a);continue}for(var o in a)o in t||Wt(o,a,t)}}return t}function jt(t){t=t||{};for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];for(var r=0,s=i;r<s.length;r++){var a=s[r];if(a){if("object"!=typeof a){it(5403,a);continue}for(var o in a)Wt(o,a,t)}}return t}function Yt(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t.prototype=Object.create(e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),t}function qt(t){var e=t.prototype,i=e&&Object.getPrototypeOf(e);return i&&i.constructor}function Kt(t,e){if(t&&e){if("function"!=typeof t)return!1;if("function"!=typeof e)return!1;if(t===e)return!0;for(;;){if(!(t=qt(t)))return!1;if(t===e)return!0}}return!1}function Qt(t){for(var e=0,i=Object.keys(t);e<i.length;e++)delete t[i[e]]}var Zt=Lt(!0),Jt=Lt(!0);function $t(t,e,i){return function(n,r){if(r.prototype.hasOwnProperty(t)&&delete e[r.prototype[t]],Bt(r.prototype,t,n),n){var s=e[n];!i&&s&&s!==r?it(16334,t,n,""):e[n]=r}}}var te=$t("__cid__",Zt,!1),ee=$t("__classname__",Jt,!0);function ie(t,e){if(ee(t,e),!e.prototype.hasOwnProperty(xt)){var i=t||Et.getNewId();i&&te(i,e)}}function ne(t,e){var i=Jt[e],n=Zt[e],r=!0;if(i&&i!==t&&(it(16335,e),r=!1),n&&n!==t&&(it(16336,e),r=!1),r){var s=t[Ct];s||(s=[],t[Ct]=s),s.push(e),Jt[e]=t,Zt[e]=t}}function re(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];for(var n=0,r=e;n<r.length;n++){var s=r[n],a=s.prototype,o=a.__cid__;o&&delete Zt[o];var h=a.__classname__;h&&delete Jt[h];var u=a[Ct];if(u)for(var l=0;l<u.length;++l){var c=u[l];delete Jt[c],delete Zt[c]}}}function se(t){return ae(t)}function ae(t){return Zt[t]}function oe(t){return Jt[t]}function he(t,e){return ue(t,e)}function ue(t,e){if(e=void 0===e||e,"function"==typeof t&&t.prototype.hasOwnProperty(xt))return t.prototype.__cid__;if(t&&t.constructor){var i=t.constructor.prototype;if(i&&i.hasOwnProperty(xt))return t.__cid__}return""}var le=function(){var t=e.prototype;function e(t,e){this.count=0;var i=void 0===e?t:e,n=void 0===e?null:t;this._pool=new Array(i),this._cleanup=n}return t.get=function(){return this._get()},t._get=function(){if(this.count>0){--this.count;var t=this._pool[this.count];return this._pool[this.count]=null,t}return null},t.put=function(t){var e=this._pool;if(this.count<e.length){if(this._cleanup&&!1===this._cleanup(t))return;e[this.count]=t,++this.count}},t.resize=function(t){t>=0&&(this._pool.length=t,this.count>t&&(this.count=t))},e}(),ce=function(){function t(t){this.i=0,this.array=t}var e=t.prototype;return e.remove=function(t){var e=this.array.indexOf(t);e>=0&&this.removeAt(e)},e.removeAt=function(t){this.array.splice(t,1),t<=this.i&&--this.i},e.fastRemove=function(t){var e=this.array.indexOf(t);e>=0&&this.fastRemoveAt(e)},e.fastRemoveAt=function(t){var e=this.array;e[t]=e[e.length-1],--e.length,t<=this.i&&--this.i},e.push=function(t){this.array.push(t)},n(t,[{key:"length",get:function(){return this.array.length},set:function(t){this.array.length=t,this.i>=t&&(this.i=t-1)}}]),t}();function _e(t,e){t.splice(e,1)}function fe(t,e){var i=t.length;e<0||e>=i||(t[e]=t[i-1],t.length=i-1)}function de(t,e){var i=t.indexOf(e);return i>=0&&(_e(t,i),!0)}function pe(t,e){var i=t.indexOf(e);i>=0&&(t[i]=t[t.length-1],--t.length)}function me(t,e){var i=t.findIndex(e);if(i>=0){var n=t[i];return _e(t,i),n}}function ge(t,e){return t.indexOf(e)>=0}var ve=Object.freeze({__proto__:null,MutableForwardIterator:ce,removeAt:_e,fastRemoveAt:fe,remove:de,fastRemove:pe,removeIf:me,verifyType:function(t,e){if(t&&t.length>0)for(var i,n=f(t);!(i=n()).done;)if(!(i.value instanceof e))return Q(1300),!1;return!0},removeArray:function(t,e){for(var i=0,n=e.length;i<n;i++)de(t,e[i])},appendObjectsAt:function(t,e,i){return t.splice.apply(t,[i,0].concat(e)),t},contains:ge,copy:function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n+=1)i[n]=t[n];return i}}),ye={IDGenerator:bt,Pool:le,array:ve,isNumber:wt,isString:Rt,isEmptyObject:It,getPropertyDescriptor:Ht,addon:Xt,mixin:jt,extend:Yt,getSuper:qt,isChildClassOf:Kt,clear:Qt,value:Bt,getset:Mt,get:Pt,set:Ot,unregisterClass:re,getClassName:Nt,setClassName:ie,setClassAlias:ne,getClassByName:oe,getClassById:ae,get _registeredClassNames(){return r({},Jt)},set _registeredClassNames(t){Qt(Jt),Object.assign(Jt,t)},get _registeredClassIds(){return r({},Zt)},set _registeredClassIds(t){Qt(Zt),Object.assign(Zt,t)},_getClassId:he,getClassId:ue,_setClassId:te,_getClassById:se,obsolete:Ft,obsoletes:kt,formatStr:Ut,shiftArguments:zt,createMap:Lt};S.js=ye;var Se=Object.freeze({__proto__:null,array:ve,js:ye,IDGenerator:bt,Pool:le,isNumber:wt,isString:Rt,isEmptyObject:It,value:Bt,getset:Mt,get:Pt,set:Ot,createMap:Lt,getClassName:Nt,obsolete:Ft,obsoletes:kt,formatStr:Ut,shiftArguments:zt,getPropertyDescriptor:Ht,copyAllProperties:function(t,e,i){for(var n=Object.getOwnPropertyNames(t),r=0,s=n.length;r<s;++r){var a=n[r];-1===i.indexOf(a)&&Wt(a,t,e)}},addon:Xt,mixin:jt,extend:Yt,getSuper:qt,isChildClassOf:Kt,clear:Qt,_idToClass:Zt,_nameToClass:Jt,_setClassId:te,setClassName:ie,setClassAlias:ne,unregisterClass:re,_getClassById:se,getClassById:ae,getClassByName:oe,_getClassId:he,getClassId:ue});function Te(t){if("__bitmask__"in t)return t;Bt(t,"__bitmask__",null,!0);for(var e=-1,i=Object.keys(t),n=0;n<i.length;n++){var r=i[n],s=t[r];if(-1===s)s=++e,t[r]=s;else if("number"==typeof s)e=s;else if("string"==typeof s&&Number.isInteger(parseFloat(r)))continue;var a=""+s;r!==a&&Bt(t,a,r)}return t}function Ae(t,e){e>=0&&t.length,t.length}t("bF",Se),Te.isBitMask=function(t){return t&&Object.prototype.hasOwnProperty.call(t,"__bitmask__")},Te.getList=function(t){return t.__bitmask__?t.__bitmask__:Te.update(t)},Te.update=function(t){Array.isArray(t.__bitmask__)||(t.__bitmask__=[]);var e=t.__bitmask__;for(var i in e.length=0,t){var n=t[i];Number.isInteger(n)&&e.push({name:i,value:n})}return e.sort((function(t,e){return t.value-e.value})),e},S.BitMask=Te;var be=Object.prototype.hasOwnProperty;function Ee(t){return"__enums__"in t?t:(Bt(t,"__enums__",null,!0),Ee.update(t))}function Ce(t){be.call(t,"__enums__")}function xe(t){Ce(t);var e=t.__enums__||[];e.length=0;var i=!0;for(var n in t){var r=t[n],s=Number.isInteger(r);s||(i=!1),(s||"string"==typeof r&&t[r]!==Number.parseInt(n))&&e.push({name:n,value:r})}return i&&e.sort((function(t,e){return t.value-e.value})),t.__enums__=e,e}function we(t){"__enums__"in t||Bt(t,"__enums__",null,!0)}Ee.update=function(t){for(var e=-1,i=Object.keys(t),n=0;n<i.length;n++){var r=i[n],s=t[r];if(-1===s)s=++e,t[r]=s;else if("number"==typeof s)e=s;else if("string"==typeof s&&Number.isInteger(parseFloat(r)))continue;var a=""+s;r!==a&&Bt(t,a,r)}return Array.isArray(t.__enums__)&&xe(t),t},Ee||t("bC",Ee={}),Ee.isEnum=function(t){return t&&be.call(t,"__enums__")},Ee.getList=function(t){return Ce(t),t.__enums__?t.__enums__:xe(t)},Ee.sortList=function(t,e){Ce(t),Array.isArray(t.__enums__)&&t.__enums__.sort(e)},S.Enum=Ee;var Re,Ie=t("bE",function(){function t(){}var e=t.prototype;return e.clone=function(){return it(100,Nt(this)+".clone"),this},e.equals=function(){return!1},e.set=function(){it(100,Nt(this)+".set")},e.toString=function(){return""},t}());ie("cc.ValueType",Ie),S.ValueType=Ie,function(t){t.PATH="path",t.ENGINE="engine",t.ASSETS="assets",t.SCRIPTING="scripting",t.PHYSICS="physics",t.RENDERING="rendering",t.LAUNCH="launch",t.SCREEN="screen",t.SPLASH_SCREEN="splashScreen",t.ANIMATION="animation",t.PROFILING="profiling",t.PLUGINS="plugins",t.XR="xr"}(Re||(Re={}));var De=t("cA",function(){function t(){this._settings={},this._override={}}var e=t.prototype;return e.init=function(t,e){var i=this;for(var n in void 0===t&&(t=""),void 0===e&&(e={}),e){var r=e[n];if(r)for(var s in r)this.overrideSettings(n,s,r[s])}return t?new Promise((function(e,n){var r=new XMLHttpRequest;r.open("GET",t),r.responseType="text",r.onload=function(){i._settings=JSON.parse(r.response),e()},r.onerror=function(){n(new Error("request settings failed!"))},r.send(null)})):Promise.resolve()},e.overrideSettings=function(t,e,i){t in this._override||(this._override[t]={}),this._override[t][e]=i},e.querySettings=function(t,e){if(t in this._override){var i=this._override[t];if(i&&e in i)return i[e]}if(t in this._settings){var n=this._settings[t];if(n&&e in n)return n[e]}return null},t}());De.Category=Re;var Be,Me=t("cB",new De);S.settings=Me,function(t){t[t.PORTRAIT=1]="PORTRAIT",t[t.PORTRAIT_UPSIDE_DOWN=2]="PORTRAIT_UPSIDE_DOWN",t[t.LANDSCAPE_LEFT=4]="LANDSCAPE_LEFT",t[t.LANDSCAPE_RIGHT=8]="LANDSCAPE_RIGHT",t[t.LANDSCAPE=12]="LANDSCAPE",t[t.AUTO=13]="AUTO"}(Be||(Be={}));var Pe=t("cn",{SUPPORT_TEXTURE_FORMATS:[".astc",".pkm",".pvr",".webp",".jpg",".jpeg",".bmp",".png"],KEY:{none:0,back:6,menu:18,backspace:8,tab:9,enter:13,shift:16,ctrl:17,alt:18,pause:19,capslock:20,escape:27,space:32,pageup:33,pagedown:34,end:35,home:36,left:37,up:38,right:39,down:40,select:41,insert:45,Delete:46,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,a:65,b:66,c:67,d:68,e:69,f:70,g:71,h:72,i:73,j:74,k:75,l:76,m:77,n:78,o:79,p:80,q:81,r:82,s:83,t:84,u:85,v:86,w:87,x:88,y:89,z:90,num0:96,num1:97,num2:98,num3:99,num4:100,num5:101,num6:102,num7:103,num8:104,num9:105,"*":106,"+":107,"-":109,numdel:110,"/":111,f1:112,f2:113,f3:114,f4:115,f5:116,f6:117,f7:118,f8:119,f9:120,f10:121,f11:122,f12:123,numlock:144,scrolllock:145,";":186,semicolon:186,equal:187,"=":187,",":188,comma:188,dash:189,".":190,period:190,forwardslash:191,grave:192,"[":219,openbracket:219,backslash:220,"]":221,closebracket:221,quote:222,dpadLeft:1e3,dpadRight:1001,dpadUp:1003,dpadDown:1004,dpadCenter:1005},RAD:Math.PI/180,DEG:180/Math.PI,REPEAT_FOREVER:Number.MAX_VALUE-1,FLT_EPSILON:1.192092896e-7,ORIENTATION_PORTRAIT:Be.PORTRAIT,ORIENTATION_PORTRAIT_UPSIDE_DOWN:Be.PORTRAIT_UPSIDE_DOWN,ORIENTATION_LANDSCAPE:Be.LANDSCAPE,ORIENTATION_LANDSCAPE_LEFT:Be.LANDSCAPE_LEFT,ORIENTATION_LANDSCAPE_RIGHT:Be.LANDSCAPE_RIGHT,ORIENTATION_AUTO:Be.AUTO,ENABLE_TILEDMAP_CULLING:!0,TOUCH_TIMEOUT:5e3,ENABLE_TRANSPARENT_CANVAS:!1,ENABLE_WEBGL_ANTIALIAS:!0,ENABLE_FLOAT_OUTPUT:!1,CLEANUP_IMAGE_CACHE:!1,ENABLE_MULTI_TOUCH:!0,MAX_LABEL_CANVAS_POOL_SIZE:20,ENABLE_WEBGL_HIGHP_STRUCT_VALUES:!1,BATCHER2D_MEM_INCREMENT:144,CUSTOM_PIPELINE_NAME:"Builtin",init:function(){var t=Me.querySettings(De.Category.ENGINE,"macros");if(t)for(var e in t)Pe[e]=t[e]}});function Oe(t,e){for(var i,n=arguments.length,r=new Array(n>2?n-2:0),s=2;s<n;s++)r[s-2]=arguments[s];var a=performance.now(),o=requestAnimationFrame||window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame;if(void 0===o||null!==(i=globalThis.__globalXR)&&void 0!==i&&i.isWebXR)return setTimeout.apply(void 0,[t,e].concat(r));var h=function i(){performance.now()-a<e?o(i):t.apply(void 0,r)};return o(h)}S.macro=Pe;for(var Le=/^(?:cc|dragonBones|sp|ccsg)\..+/,Ne=new Array(123),Fe=0;Fe<123;++Fe)Ne[Fe]=64;for(var ke=0;ke<64;++ke)Ne["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charCodeAt(ke)]=ke;var Ge=Ne;function Ve(t,e,i){function n(t,e,i,n){var r=Object.getOwnPropertyDescriptor(t,e);if(r)r.get&&i&&(t[i]=r.get),r.set&&n&&(t[n]=r.set);else{var s=t[i];Mt(t,e,s,t[n])}}for(var r,s=t.prototype,a=0,o=e.length;a<o;++a){var h=(r=e[a])[0].toUpperCase()+r.slice(1);n(s,r,"get"+h,"set"+h)}for(r in i){var u=i[r];n(s,r,u[0],u[1])}}function Ue(t,e,i,n){var r=t[e];r?Array.isArray(r)?n?(r.push(r[0]),r[0]=i):r.push(i):t[e]=n?[i,r]:[r,i]:t[e]=i}function ze(t,e){if("function"==typeof t.contains)return t.contains(e);if("function"==typeof t.compareDocumentPosition)return!!(16&t.compareDocumentPosition(e));var i=e.parentNode;if(i)do{if(i===t)return!0;i=i.parentNode}while(null!==i);return!1}function He(t){return"object"==typeof window&&"function"==typeof Node?t instanceof Node:!!t&&"object"==typeof t&&"number"==typeof t.nodeType&&"string"==typeof t.nodeName}function We(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];t&&Oe((function(){t.apply(void 0,i)}),0)}function Xe(t){return!(!t||t.constructor!==Object)&&It(t)}function je(t,e,i){if(e>i){var n=e;e=i,i=n}return t<e?e:t<i?t:i}function Ye(t){return t*Pe.RAD}function qe(t){return t*Pe.DEG}S.misc={BUILTIN_CLASSID_RE:Le,BASE64_VALUES:Ge,propertyDefine:Ve,pushToMap:Ue,contains:ze,isDomNode:He,callInNextTick:We,isPlainEmptyObj_DEV:Xe,clampf:je,degreesToRadians:Ye,radiansToDegrees:qe},t("bG",Object.freeze({__proto__:null,BUILTIN_CLASSID_RE:Le,BASE64_VALUES:Ge,propertyDefine:Ve,pushToMap:Ue,contains:ze,isDomNode:He,callInNextTick:We,tryCatchFunctor_EDITOR:function(t){return Function("target","try {\n target."+t+"();\n}\ncatch (e) {\n cc._throw(e);\n}")},isPlainEmptyObj_DEV:Xe,clampf:je,degreesToRadians:Ye,radiansToDegrees:qe}));var Ke="$_$";function Qe(t,e){var i=e?Object.create(e):{};return Bt(t,"__attrs__",i),i}function Ze(t){if("function"!=typeof t)return Qe(t,$e(t.constructor));for(var e,i=S.Class.getInheritanceChain(t),n=i.length-1;n>=0;n--){var r=i[n];r.hasOwnProperty("__attrs__")&&r.__attrs__||Qe(r,(e=i[n+1])&&e.__attrs__)}return Qe(t,(e=i[0])&&e.__attrs__),t.__attrs__}function Je(t,e){var i=$e(t),n=e+Ke,r={};for(var s in i)s.startsWith(n)&&(r[s.slice(n.length)]=i[s]);return r}function $e(t){return t.hasOwnProperty("__attrs__")&&t.__attrs__||Ze(t)}function ti(t,e,i,n){$e(t)[e+Ke+i]=n}var ei=function(){function t(t,e){this.name=t,this.default=e}return t.prototype.toString=function(){return this.name},t}(),ii=t("bW",new ei("Integer",0));S.Integer=ii,S.CCInteger=ii;var ni=t("bX",new ei("Float",0));S.Float=ni,S.CCFloat=ni;var ri=t("bY",new ei("Boolean",!1));S.Boolean=ri,S.CCBoolean=ri;var si=t("bZ",new ei("String",""));function ai(t,e){return function(i,n){var r='"'+Nt(i)+"."+n+'"',s=Je(i,n),a=s.type;if(a===ii||a===ni?a="Number":a!==si&&a!==ri||(a=""+a),a===t){if(s.hasOwnProperty("default")){var o=s.default;if(void 0!==o&&!Array.isArray(o)&&!Xe(o)){var h=typeof o,u=t.toLowerCase();if(h===u)if("object"===u){if(!o||o instanceof s.ctor)return;tt(3605,r,Nt(s.ctor))}else"Number"!==t&&tt(3606,e,r,t);else{if("function"===h)return;t===si.default&&null==o?tt(3607,r):tt(3611,e,r,h)}delete s.type}}}else tt(3604,r)}}S.String=si,S.CCString=si;var oi=Object.freeze({__proto__:null,DELIMETER:Ke,createAttrsSingle:Qe,createAttrs:Ze,attr:Je,getClassAttrs:$e,setClassAttr:ti,PrimitiveType:ei,CCInteger:ii,CCFloat:ni,CCBoolean:ri,CCString:si,getTypeChecker_ET:ai,getObjTypeChecker_ET:function(t){return function(e,i){ai("Object","type")(e,i);var n=$e(e)[i+Ke+"default"],r=S.Class.getDefault(n);if(!Array.isArray(r)&&Kt(t,S.ValueType)){var s=Nt(t),a=Ut('No need to specify the "type" of "%s.%s" because %s is a child class of ValueType.',Nt(e),i,s);n?U(a):tt(3612,a,s,Nt(e),i,s)}}}}),hi={default:{},serializable:{},editorOnly:{},formerlySerializedAs:{}};function ui(t,e,i,n){if(!t.get&&!t.set&&t.hasOwnProperty("default")){var r="_N$"+e;t.get=function(){return this[r]},t.set=function(t){var e=this[r];this[r]=t,i.call(this,e)};var s={};for(var a in n[r]=s,hi){var o=hi[a];t.hasOwnProperty(a)&&(s[a]=t[a],o.canUsedInGet||delete t[a])}}}function li(t,e,i,n){if(Array.isArray(e)){if(!(e.length>0))return it(5508,i,n);t.type=e=e[0]}"function"==typeof e&&(e===String?t.type=S.String:e===Boolean?t.type=S.Boolean:e===Number&&(t.type=S.Float))}function ci(t,e,i){var n=t||void 0===e?{_short:!0}:{_short:!0,default:e};return i&&(n.type=i),n}function _i(t,e){if(!t||t.constructor!==Object){if(Array.isArray(t)&&t.length>0)return ci(e,[],t);if("function"==typeof t){var i=t;return ci(e,Kt(i,S.ValueType)?new i:null,i)}return t instanceof ei?ci(e,void 0,t):ci(e,t)}return null}var fi,di=[];function pi(){return di[di.length-1]}function mi(t,e,i){gi($e(t),e,i)}function gi(t,e,i){t[e+"$_$type"]="Enum",t[e+"$_$enumList"]=Ee.getList(i)}S._RF={push:function(t,e,i,n){void 0===i&&(i=e,e=""),di.push({uuid:e,script:i,module:t,exports:t.exports,beh:null,importMeta:n})},pop:function(){var t=di.pop(),e=t.module,i=e.exports;if(i===t.exports){for(var n in i)return;e.exports=i=t.cls}},peek:pi},function(t){t[t.STANDALONE=1]="STANDALONE",t[t.IMPLICIT_VISIBLE=2]="IMPLICIT_VISIBLE",t[t.IMPLICIT_SERIALIZABLE=4]="IMPLICIT_SERIALIZABLE"}(fi||(fi={}));var vi=Ke,yi="__ctors__",Si=t("cZ","Enum"),Ti=t("c_","BitMask");function Ai(t,e,i,n){!function(t,e){!function(t,e){t.indexOf(e)<0&&t.push(e)}(t.__props__,e)}(t,i),Ri(t,n,e,i)}function bi(t,e,i,n){var r=n.get;n.set,r&&(Ri(t,n,e,i),ti(t,i,"serializable",!1))}function Ei(t){return"function"==typeof t?t():t}function Ci(t){var e=t.name,i=t.extends,n=function(t,e,i){var n=S.Component,r=pi();if(r&&Kt(e,n)){if(Kt(r.cls,n))return it(3615),null;t=t||r.script}var s=function(t,e,i){var n=i.ctor;return Bt(n,yi,!0,!0),n.prototype,e&&(n.$super=e),ie(t,n),n}(t,e,i);if(r)if(Kt(e,n)){var a=r.uuid;a&&te(a,s),r.cls=s}else Kt(r.cls,n)||(r.cls=s);return s}(e,i,t);e||(e=S.js.getClassName(n)),n._sealed=!0,i&&(i._sealed=!1),function(t,e,i,n){if(t.__props__=[],n&&n.__props__&&(t.__props__=n.__props__.slice()),i)for(var r in function(t,e){for(var i in t){var n=t[i],r=_i(n,!1);if(r&&(n=t[i]=r),n){var s=n.notify;s&&ui(n,i,s,t),"type"in n&&li(n,n.type,e,i)}}}(i,e),i){var s=i[r];s.get||s.set?bi(t,e,r,s):Ai(t,e,r,s)}var a=$e(t);t.__values__=t.__props__.filter((function(t){return!1!==a[t+"$_$serializable"]}))}(n,e,t.properties,i);var r=t.editor;return r&&Kt(i,S.Component)&&S.Component._registerEditorProps(n,r),n}function xi(t){var e;return null==t||null===(e=t.hasOwnProperty)||void 0===e?void 0:e.call(t,"__values__")}Ci._isCCClass=function(t){var e;return null==t||null===(e=t.hasOwnProperty)||void 0===e?void 0:e.call(t,yi)},Ci.fastDefine=function(t,e,i){ie(t,e);for(var n=e.__props__=e.__values__=Object.keys(i),r=$e(e),s=0;s<n.length;s++){var a=n[s];r[a+vi+"visible"]=!1,r[a+vi+"default"]=i[a]}},Ci.Attr=oi,Ci.attr=Je,Ci.isCCClassOrFastDefined=xi,Ci.getInheritanceChain=function(t){for(var e=[];t=qt(t);)t!==Object&&e.push(t);return e};var wi={Integer:"Number",Float:"Number",Boolean:"Boolean",String:"String"};function Ri(t,e,i,n){var r=null,s="";function a(){return s=n+vi,r=$e(t)}"type"in e&&void 0===e.type&&tt(3660,n,i);var o=e.type;o&&(wi[o]?(r||a())[s+"type"]=o:"Object"===o||("object"==typeof o?Ee.isEnum(o)?gi(r||a(),n,o):Te.isBitMask(o)&&((r||a())[s+"type"]=Ti,r[s+"bitmaskList"]=Te.getList(o)):"function"==typeof o&&((r||a())[s+"type"]="Object",r[s+"ctor"]=o))),"default"in e&&((r||a())[s+"default"]=e.default);var h,u=function(t,i){if(t in e){var n=e[t];typeof n===i&&((r||a())[s+t]=n)}};e.editorOnly&&((r||a())[s+"editorOnly"]=!0),e.__internalFlags&fi.STANDALONE?h=!0===e.serializable||0!=(e.__internalFlags&fi.IMPLICIT_SERIALIZABLE):!1===e.serializable&&(h=!1),void 0!==h&&((r||a())[s+"serializable"]=h),u("formerlySerializedAs","string");var l=e.range;l&&Array.isArray(l)&&l.length>=2&&((r||a())[s+"min"]=l[0],r[s+"max"]=l[1],l.length>2&&(r[s+"step"]=l[2])),u("step","number"),u("userData","object")}Ci.isArray=function(t){return t=Ei(t),Array.isArray(t)},Ci.getDefault=Ei,Ci.escapeForJS=function(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")},Ci.IDENTIFIER_RE=/^[A-Za-z_$][0-9A-Za-z_$]*$/,Ci.getNewValueTypeCode=function(t){for(var e=Nt(t),i=t.constructor,n="new "+e+"(",r=0;r<i.__props__.length;r++)n+=t[i.__props__[r]],r<i.__props__.length-1&&(n+=",");return n+")"},S.Class=Ci;var Ii=Math.PI/180,Di=180/Math.PI,Bi=Math.random,Mi=t("b6",.5*Math.PI),Pi=t("b7",2*Math.PI),Oi=t("b8",1e-6);function Li(t,e){return Math.abs(t-e)<=Oi*Math.max(1,Math.abs(t),Math.abs(e))}function Ni(t,e,i){return i=i||Oi,Math.abs(t-e)<=i}function Fi(t,e,i){if(e>i){var n=e;e=i,i=n}return t<e?e:t>i?i:t}function ki(t){return t<0?0:t>1?1:t}function Gi(t,e,i){return t+(e-t)*i}function Vi(t){return t*Ii}function Ui(t){return t*Di}function zi(){return Bi()}function Hi(t){Bi=t}function Wi(t,e){return zi()*(e-t)+t}function Xi(t,e){return Math.floor(Wi(t,e))}function ji(t){return(t=(9301*t+49297)%233280)/233280}function Yi(t,e,i){return ji(t)*(i-e)+e}function qi(t,e,i){return Math.floor(Yi(t,e,i))}function Ki(t){return I(t)}function Qi(t,e){return t-Math.floor(t/e)*e}function Zi(t,e){return t=Qi(t,2*e),e-Math.abs(t-e)}function Ji(t,e,i){return(i-t)/(e-t)}function $i(t){return Math.abs(t.x)>Math.abs(t.y)?Math.abs(t.x)>Math.abs(t.z)?t.x:t.z:Math.abs(t.y)>Math.abs(t.z)?t.y:t.z}function tn(t,e){return Math.abs(t)>Math.abs(e)?t:e}function en(t,e){e.forEach((function(e){Object.defineProperty(t,e,{enumerable:!0})}))}var nn,rn,sn,an=(nn=new Float32Array(1),rn=new Int32Array(nn.buffer),function(t){nn[0]=t;var e=rn[0],i=e>>16&32768,n=2147483647&e,r=n-(112<<23)+4096>>13;return r=n<113<<23?0:r,r=n>=143<<23?31744:r,r=n>255<<23?32256:r,rn[0]=i|r,rn[0]}),on=function(){var t=new Float32Array(1),e=new Int32Array(t.buffer);return function(i){var n,r=32767&i,s=r<<13;return 31744!==s?(s+=112<<23,0===r?s=(1048575&s)>>1:32767===r&&(s=2147483647)):s=2139095040,n=(i>>15&1)<<31|s,e[0]=n,t[0]}}();function hn(t){return an(t)}function un(t){return on(t)}var ln,cn=t("aT",function(t){function e(e,i,n,r){var s;return s=t.call(this)||this,"object"==typeof e?(s.x=e.x,s.y=e.y,s.z=e.z,s.w=e.w):(s.x=e||0,s.y=i||0,s.z=n||0,s.w=r||0),s}s(e,t),e.clone=function(t){return new e(t.x,t.y,t.z,t.w)},e.copy=function(t,e){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t},e.set=function(t,e,i,n,r){return t.x=e,t.y=i,t.z=n,t.w=r,t},e.fromColor=function(t,e){return t.x=e.r,t.y=e.g,t.z=e.b,t.w=e.a,t},e.angle=function(t,e){var i=t.y*e.z-t.z*e.y,n=t.z*e.x-t.x*e.z,r=t.x*e.y-t.y*e.x,s=t.x*e.x+t.y*e.y+t.z*e.z;return Math.atan2(Math.sqrt(i*i+n*n+r*r),s)},e.add=function(t,e,i){return t.x=e.x+i.x,t.y=e.y+i.y,t.z=e.z+i.z,t.w=e.w+i.w,t},e.subtract=function(t,e,i){return t.x=e.x-i.x,t.y=e.y-i.y,t.z=e.z-i.z,t.w=e.w-i.w,t},e.multiply=function(t,e,i){return t.x=e.x*i.x,t.y=e.y*i.y,t.z=e.z*i.z,t.w=e.w*i.w,t},e.divide=function(t,e,i){return t.x=e.x/i.x,t.y=e.y/i.y,t.z=e.z/i.z,t.w=e.w/i.w,t},e.ceil=function(t,e){return t.x=Math.ceil(e.x),t.y=Math.ceil(e.y),t.z=Math.ceil(e.z),t.w=Math.ceil(e.w),t},e.floor=function(t,e){return t.x=Math.floor(e.x),t.y=Math.floor(e.y),t.z=Math.floor(e.z),t.w=Math.floor(e.w),t},e.min=function(t,e,i){return t.x=Math.min(e.x,i.x),t.y=Math.min(e.y,i.y),t.z=Math.min(e.z,i.z),t.w=Math.min(e.w,i.w),t},e.max=function(t,e,i){return t.x=Math.max(e.x,i.x),t.y=Math.max(e.y,i.y),t.z=Math.max(e.z,i.z),t.w=Math.max(e.w,i.w),t},e.round=function(t,e){return t.x=Math.round(e.x),t.y=Math.round(e.y),t.z=Math.round(e.z),t.w=Math.round(e.w),t},e.multiplyScalar=function(t,e,i){return t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t.w=e.w*i,t},e.scaleAndAdd=function(t,e,i,n){return t.x=e.x+i.x*n,t.y=e.y+i.y*n,t.z=e.z+i.z*n,t.w=e.w+i.w*n,t},e.distance=function(t,e){var i=e.x-t.x,n=e.y-t.y,r=e.z-t.z,s=e.w-t.w;return Math.sqrt(i*i+n*n+r*r+s*s)},e.squaredDistance=function(t,e){var i=e.x-t.x,n=e.y-t.y,r=e.z-t.z,s=e.w-t.w;return i*i+n*n+r*r+s*s},e.len=function(t){var e=t.x,i=t.y,n=t.z,r=t.w;return Math.sqrt(e*e+i*i+n*n+r*r)},e.lengthSqr=function(t){var e=t.x,i=t.y,n=t.z,r=t.w;return e*e+i*i+n*n+r*r},e.negate=function(t,e){return t.x=-e.x,t.y=-e.y,t.z=-e.z,t.w=-e.w,t},e.inverse=function(t,e){return t.x=1/e.x,t.y=1/e.y,t.z=1/e.z,t.w=1/e.w,t},e.inverseSafe=function(t,e){var i=e.x,n=e.y,r=e.z,s=e.w;return Math.abs(i)<Oi?t.x=0:t.x=1/i,Math.abs(n)<Oi?t.y=0:t.y=1/n,Math.abs(r)<Oi?t.z=0:t.z=1/r,Math.abs(s)<Oi?t.w=0:t.w=1/s,t},e.normalize=function(t,e){var i=e.x,n=e.y,r=e.z,s=e.w,a=i*i+n*n+r*r+s*s;return a>0?(a=1/Math.sqrt(a),t.x=i*a,t.y=n*a,t.z=r*a,t.w=s*a):(t.x=0,t.y=0,t.z=0,t.w=0),t},e.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z+t.w*e.w},e.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t.w=e.w+n*(i.w-e.w),t},e.scale=function(t,e,i){return t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t.w=e.w*i,t},e.random=function(t,e){e=e||1;var i=2*zi()*Math.PI,n=2*zi()-1,r=Math.sqrt(1-n*n);return t.x=r*Math.cos(i)*e,t.y=r*Math.sin(i)*e,t.z=n*e,t.w=0,t},e.transformMat4=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=e.w;return t.x=i.m00*n+i.m04*r+i.m08*s+i.m12*a,t.y=i.m01*n+i.m05*r+i.m09*s+i.m13*a,t.z=i.m02*n+i.m06*r+i.m10*s+i.m14*a,t.w=i.m03*n+i.m07*r+i.m11*s+i.m15*a,t},e.transformAffine=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=e.w;return t.x=i.m00*n+i.m04*r+i.m08*s+i.m12*a,t.y=i.m01*n+i.m05*r+i.m09*s+i.m13*a,t.z=i.m02*n+i.m06*r+i.m10*s+i.m14*a,t.w=e.w,t},e.transformQuat=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=i.x,o=i.y,h=i.z,u=i.w,l=u*n+o*s-h*r,c=u*r+h*n-a*s,_=u*s+a*r-o*n,f=-a*n-o*r-h*s;return t.x=l*u+f*-a+c*-h-_*-o,t.y=c*u+f*-o+_*-a-l*-h,t.z=_*u+f*-h+l*-o-c*-a,t.w=e.w,t},e.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t[i+3]=e.w,t},e.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t.w=e[i+3],t},e.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z&&t.w===e.w},e.equals=function(t,e,i){return void 0===i&&(i=Oi),!(Math.abs(t.x)===1/0||Math.abs(t.y)===1/0||Math.abs(t.z)===1/0||Math.abs(t.w)===1/0||Math.abs(e.x)===1/0||Math.abs(e.y)===1/0||Math.abs(e.z)===1/0||Math.abs(e.w)===1/0)&&Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))&&Math.abs(t.z-e.z)<=i*Math.max(1,Math.abs(t.z),Math.abs(e.z))&&Math.abs(t.w-e.w)<=i*Math.max(1,Math.abs(t.w),Math.abs(e.w))};var i=e.prototype;return i.clone=function(){return new e(this.x,this.y,this.z,this.w)},i.set=function(t,e,i,n){return"object"==typeof t?(this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w):(this.x=t||0,this.y=e||0,this.z=i||0,this.w=n||0),this},i.equals=function(t,e){return void 0===e&&(e=Oi),Math.abs(this.x-t.x)<=e*Math.max(1,Math.abs(this.x),Math.abs(t.x))&&Math.abs(this.y-t.y)<=e*Math.max(1,Math.abs(this.y),Math.abs(t.y))&&Math.abs(this.z-t.z)<=e*Math.max(1,Math.abs(this.z),Math.abs(t.z))&&Math.abs(this.w-t.w)<=e*Math.max(1,Math.abs(this.w),Math.abs(t.w))},i.equals4f=function(t,e,i,n,r){return void 0===r&&(r=Oi),Math.abs(this.x-t)<=r*Math.max(1,Math.abs(this.x),Math.abs(t))&&Math.abs(this.y-e)<=r*Math.max(1,Math.abs(this.y),Math.abs(e))&&Math.abs(this.z-i)<=r*Math.max(1,Math.abs(this.z),Math.abs(i))&&Math.abs(this.w-n)<=r*Math.max(1,Math.abs(this.w),Math.abs(n))},i.strictEquals=function(t){return this.x===t.x&&this.y===t.y&&this.z===t.z&&this.w===t.w},i.strictEquals4f=function(t,e,i,n){return this.x===t&&this.y===e&&this.z===i&&this.w===n},i.lerp=function(t,e){var i=this.x,n=this.y,r=this.z,s=this.w;return this.x=i+e*(t.x-i),this.y=n+e*(t.y-n),this.z=r+e*(t.z-r),this.w=s+e*(t.w-s),this},i.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.z.toFixed(2)+", "+this.w.toFixed(2)+")"},i.clampf=function(t,e){return this.x=Fi(this.x,t.x,e.x),this.y=Fi(this.y,t.y,e.y),this.z=Fi(this.z,t.z,e.z),this.w=Fi(this.w,t.w,e.w),this},i.add=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this},i.add4f=function(t,e,i,n){return this.x+=t,this.y+=e,this.z+=i,this.w+=n,this},i.subtract=function(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this},i.subtract4f=function(t,e,i,n){return this.x-=t,this.y-=e,this.z-=i,this.w-=n,this},i.multiplyScalar=function(t){return"object"==typeof t&&tt(16361),this.x*=t,this.y*=t,this.z*=t,this.w*=t,this},i.multiply=function(t){return"object"!=typeof t&&tt(16362),this.x*=t.x,this.y*=t.y,this.z*=t.z,this.w*=t.w,this},i.multiply4f=function(t,e,i,n){return this.x*=t,this.y*=e,this.z*=i,this.w*=n,this},i.divide=function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this.w/=t.w,this},i.divide4f=function(t,e,i,n){return this.x/=t,this.y/=e,this.z/=i,this.w/=n,this},i.negative=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this},i.dot=function(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w},i.cross=function(t){var e=this.x,i=this.y,n=this.z,r=t.x,s=t.y,a=t.z;return this.x=i*a-n*s,this.y=n*r-e*a,this.z=e*s-i*r,this},i.length=function(){var t=this.x,e=this.y,i=this.z,n=this.w;return Math.sqrt(t*t+e*e+i*i+n*n)},i.lengthSqr=function(){var t=this.x,e=this.y,i=this.z,n=this.w;return t*t+e*e+i*i+n*n},i.normalize=function(){var t=this.x,e=this.y,i=this.z,n=this.w,r=t*t+e*e+i*i+n*n;return r>0&&(r=1/Math.sqrt(r),this.x=t*r,this.y=e*r,this.z=i*r,this.w=n*r),this},i.scale=function(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this},i.transformMat4=function(t){var e=this.x,i=this.y,n=this.z,r=this.w;return this.x=t.m00*e+t.m04*i+t.m08*n+t.m12*r,this.y=t.m01*e+t.m05*i+t.m09*n+t.m13*r,this.z=t.m02*e+t.m06*i+t.m10*n+t.m14*r,this.w=t.m03*e+t.m07*i+t.m11*n+t.m15*r,this},e}(Ie));function _n(t,e,i,n){return new cn(t,e,i,n)}sn=cn,cn.ZERO=Object.freeze(new sn(0,0,0,0)),cn.ONE=Object.freeze(new sn(1,1,1,1)),cn.NEG_ONE=Object.freeze(new sn(-1,-1,-1,-1)),cn.UNIT_X=Object.freeze(new sn(1,0,0,0)),cn.UNIT_Y=Object.freeze(new sn(0,1,0,0)),cn.UNIT_Z=Object.freeze(new sn(0,0,1,0)),cn.UNIT_W=Object.freeze(new sn(0,0,0,1)),Ci.fastDefine("cc.Vec4",cn,{x:0,y:0,z:0,w:0}),S.Vec4=cn,S.v4=_n;var fn,dn,pn,mn,gn=t("aR",function(t){function e(e,i,n){var r;return r=t.call(this)||this,"object"==typeof e?(r.x=e.x,r.y=e.y,r.z=e.z):(r.x=e||0,r.y=i||0,r.z=n||0),r}s(e,t),e.zero=function(t){return t.x=0,t.y=0,t.z=0,t},e.clone=function(t){return new e(t.x,t.y,t.z)},e.copy=function(t,e){return t.x=e.x,t.y=e.y,t.z=e.z,t},e.set=function(t,e,i,n){return t.x=e,t.y=i,t.z=n,t},e.add=function(t,e,i){return t.x=e.x+i.x,t.y=e.y+i.y,t.z=e.z+i.z,t},e.subtract=function(t,e,i){return t.x=e.x-i.x,t.y=e.y-i.y,t.z=e.z-i.z,t},e.multiply=function(t,e,i){return t.x=e.x*i.x,t.y=e.y*i.y,t.z=e.z*i.z,t},e.divide=function(t,e,i){return t.x=e.x/i.x,t.y=e.y/i.y,t.z=e.z/i.z,t},e.ceil=function(t,e){return t.x=Math.ceil(e.x),t.y=Math.ceil(e.y),t.z=Math.ceil(e.z),t},e.floor=function(t,e){return t.x=Math.floor(e.x),t.y=Math.floor(e.y),t.z=Math.floor(e.z),t},e.min=function(t,e,i){return t.x=Math.min(e.x,i.x),t.y=Math.min(e.y,i.y),t.z=Math.min(e.z,i.z),t},e.max=function(t,e,i){return t.x=Math.max(e.x,i.x),t.y=Math.max(e.y,i.y),t.z=Math.max(e.z,i.z),t},e.round=function(t,e){return t.x=Math.round(e.x),t.y=Math.round(e.y),t.z=Math.round(e.z),t},e.multiplyScalar=function(t,e,i){return t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t},e.scaleAndAdd=function(t,e,i,n){return t.x=e.x+i.x*n,t.y=e.y+i.y*n,t.z=e.z+i.z*n,t},e.distance=function(t,e){var i=e.x-t.x,n=e.y-t.y,r=e.z-t.z;return Math.sqrt(i*i+n*n+r*r)},e.squaredDistance=function(t,e){var i=e.x-t.x,n=e.y-t.y,r=e.z-t.z;return i*i+n*n+r*r},e.len=function(t){var e=t.x,i=t.y,n=t.z;return Math.sqrt(e*e+i*i+n*n)},e.lengthSqr=function(t){var e=t.x,i=t.y,n=t.z;return e*e+i*i+n*n},e.negate=function(t,e){return t.x=-e.x,t.y=-e.y,t.z=-e.z,t},e.invert=function(t,e){return t.x=1/e.x,t.y=1/e.y,t.z=1/e.z,t},e.invertSafe=function(t,e){var i=e.x,n=e.y,r=e.z;return Math.abs(i)<Oi?t.x=0:t.x=1/i,Math.abs(n)<Oi?t.y=0:t.y=1/n,Math.abs(r)<Oi?t.z=0:t.z=1/r,t},e.normalize=function(t,e){var i=e.x,n=e.y,r=e.z,s=i*i+n*n+r*r;return s>0?(s=1/Math.sqrt(s),t.x=i*s,t.y=n*s,t.z=r*s):(t.x=0,t.y=0,t.z=0),t},e.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z},e.cross=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=i.x,o=i.y,h=i.z;return t.x=r*h-s*o,t.y=s*a-n*h,t.z=n*o-r*a,t},e.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t},e.random=function(t,e){e=e||1;var i=2*zi()*Math.PI,n=2*zi()-1,r=Math.sqrt(1-n*n);return t.x=r*Math.cos(i)*e,t.y=r*Math.sin(i)*e,t.z=n*e,t},e.transformMat4=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=i.m03*n+i.m07*r+i.m11*s+i.m15;return a=a?1/a:1,t.x=(i.m00*n+i.m04*r+i.m08*s+i.m12)*a,t.y=(i.m01*n+i.m05*r+i.m09*s+i.m13)*a,t.z=(i.m02*n+i.m06*r+i.m10*s+i.m14)*a,t},e.transformMat4Normal=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=i.m03*n+i.m07*r+i.m11*s;return a=a?1/a:1,t.x=(i.m00*n+i.m04*r+i.m08*s)*a,t.y=(i.m01*n+i.m05*r+i.m09*s)*a,t.z=(i.m02*n+i.m06*r+i.m10*s)*a,t},e.transformMat3=function(t,e,i){var n=e.x,r=e.y,s=e.z;return t.x=n*i.m00+r*i.m03+s*i.m06,t.y=n*i.m01+r*i.m04+s*i.m07,t.z=n*i.m02+r*i.m05+s*i.m08,t},e.transformAffine=function(t,e,i){var n=e.x,r=e.y,s=e.z;return t.x=i.m00*n+i.m04*r+i.m08*s+i.m12,t.y=i.m01*n+i.m05*r+i.m09*s+i.m13,t.z=i.m02*n+i.m06*r+i.m10*s+i.m14,t},e.transformQuat=function(t,e,i){var n=i.w*e.x+i.y*e.z-i.z*e.y,r=i.w*e.y+i.z*e.x-i.x*e.z,s=i.w*e.z+i.x*e.y-i.y*e.x,a=-i.x*e.x-i.y*e.y-i.z*e.z;return t.x=n*i.w+a*-i.x+r*-i.z-s*-i.y,t.y=r*i.w+a*-i.y+s*-i.x-n*-i.z,t.z=s*i.w+a*-i.z+n*-i.y-r*-i.x,t},e.transformRTS=function(t,e,i,n,r){var s=e.x*r.x,a=e.y*r.y,o=e.z*r.z,h=i.w*s+i.y*o-i.z*a,u=i.w*a+i.z*s-i.x*o,l=i.w*o+i.x*a-i.y*s,c=-i.x*s-i.y*a-i.z*o;return t.x=h*i.w+c*-i.x+u*-i.z-l*-i.y+n.x,t.y=u*i.w+c*-i.y+l*-i.x-h*-i.z+n.y,t.z=l*i.w+c*-i.z+h*-i.y-u*-i.x+n.z,t},e.transformInverseRTS=function(t,e,i,n,r){var s=e.x-n.x,a=e.y-n.y,o=e.z-n.z,h=i.w*s-i.y*o+i.z*a,u=i.w*a-i.z*s+i.x*o,l=i.w*o-i.x*a+i.y*s,c=i.x*s+i.y*a+i.z*o;return t.x=(h*i.w+c*i.x+u*i.z-l*i.y)/r.x,t.y=(u*i.w+c*i.y+l*i.x-h*i.z)/r.y,t.z=(l*i.w+c*i.z+h*i.y-u*i.x)/r.z,t},e.rotateX=function(t,e,i,n){var r=e.x-i.x,s=e.y-i.y,a=e.z-i.z,o=Math.cos(n),h=Math.sin(n),u=r,l=s*o-a*h,c=s*h+a*o;return t.x=u+i.x,t.y=l+i.y,t.z=c+i.z,t},e.rotateY=function(t,e,i,n){var r=e.x-i.x,s=e.y-i.y,a=e.z-i.z,o=Math.cos(n),h=Math.sin(n),u=a*h+r*o,l=s,c=a*o-r*h;return t.x=u+i.x,t.y=l+i.y,t.z=c+i.z,t},e.rotateZ=function(t,e,i,n){var r=e.x-i.x,s=e.y-i.y,a=e.z-i.z,o=Math.cos(n),h=Math.sin(n),u=r*o-s*h,l=r*h+s*o,c=a;return t.x=u+i.x,t.y=l+i.y,t.z=c+i.z,t},e.rotateN=function(t,e,i,n,r){var s=e.x-i.x,a=e.y-i.y,o=e.z-i.z,h=n.x,u=n.y,l=n.z,c=Math.cos(r),_=Math.sin(r),f=s*(h*h*(1-c)+c)+a*(h*u*(1-c)-l*_)+o*(h*l*(1-c)+u*_),d=s*(h*u*(1-c)+l*_)+a*(u*u*(1-c)+c)+o*(u*l*(1-c)-h*_),p=s*(h*l*(1-c)-u*_)+a*(u*l*(1-c)+h*_)+o*(l*l*(1-c)+c);return t.x=f+i.x,t.y=d+i.y,t.z=p+i.z,t},e.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t},e.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t},e.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z},e.equals=function(t,e,i){void 0===i&&(i=Oi);var n=t.x,r=t.y,s=t.z,a=e.x,o=e.y,h=e.z;return Math.abs(n-a)<=i*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(r-o)<=i*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(s-h)<=i*Math.max(1,Math.abs(s),Math.abs(h))},e.angle=function(t,e){var i=t.x*t.x+t.y*t.y+t.z*t.z,n=e.x*e.x+e.y*e.y+e.z*e.z;if(0===i||0===n)return 0;var r=(t.x*e.x+t.y*e.y+t.z*e.z)/Math.sqrt(i*n);return r=Fi(r,-1,1),Math.acos(r)},e.projectOnPlane=function(t,i,n){return e.subtract(t,i,e.project(t,i,n))},e.project=function(t,i,n){var r=e.lengthSqr(n);return r<1e-6?e.set(t,0,0,0):e.multiplyScalar(t,n,e.dot(i,n)/r)},e.moveTowards=function(t,e,i,n){var r=i.x-e.x,s=i.y-e.y,a=i.z-e.z,o=r*r+s*s+a*a;if(0===o||n>=0&&o<n*n)return t.x=i.x,t.y=i.y,t.z=i.z,t;var h=n/Math.sqrt(o);return t.x=e.x+r*h,t.y=e.y+s*h,t.z=e.z+a*h,t},e.generateOrthogonal=function(t,i){var n=i.x,r=i.y,s=i.z,a=Math.abs(n),o=Math.abs(r),h=Math.abs(s);return a<o&&a<h?e.set(t,0,s,-r):o<h?e.set(t,s,0,-n):e.set(t,r,-n,0),e.normalize(t,t)};var i=e.prototype;return i.clone=function(){return new e(this.x,this.y,this.z)},i.set=function(t,e,i){return"object"==typeof t?(this.x=t.x,this.y=t.y,this.z=t.z):(this.x=t||0,this.y=e||0,this.z=i||0),this},i.equals=function(t,e){return void 0===e&&(e=Oi),Math.abs(this.x-t.x)<=e&&Math.abs(this.y-t.y)<=e&&Math.abs(this.z-t.z)<=e},i.equals3f=function(t,e,i,n){return void 0===n&&(n=Oi),Math.abs(this.x-t)<=n&&Math.abs(this.y-e)<=n&&Math.abs(this.z-i)<=n},i.strictEquals=function(t){return this.x===t.x&&this.y===t.y&&this.z===t.z},i.strictEquals3f=function(t,e,i){return this.x===t&&this.y===e&&this.z===i},i.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.z.toFixed(2)+")"},i.lerp=function(t,e){return this.x+=e*(t.x-this.x),this.y+=e*(t.y-this.y),this.z+=e*(t.z-this.z),this},i.add=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this},i.add3f=function(t,e,i){return this.x+=t,this.y+=e,this.z+=i,this},i.subtract=function(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this},i.subtract3f=function(t,e,i){return this.x-=t,this.y-=e,this.z-=i,this},i.multiplyScalar=function(t){return"object"==typeof t&&tt(16357),this.x*=t,this.y*=t,this.z*=t,this},i.multiply=function(t){return"object"!=typeof t&&tt(16358),this.x*=t.x,this.y*=t.y,this.z*=t.z,this},i.multiply3f=function(t,e,i){return this.x*=t,this.y*=e,this.z*=i,this},i.divide=function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this},i.divide3f=function(t,e,i){return this.x/=t,this.y/=e,this.z/=i,this},i.negative=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},i.clampf=function(t,e){return this.x=Fi(this.x,t.x,e.x),this.y=Fi(this.y,t.y,e.y),this.z=Fi(this.z,t.z,e.z),this},i.dot=function(t){return this.x*t.x+this.y*t.y+this.z*t.z},i.cross=function(t){var e=this.x,i=this.y,n=this.z,r=t.x,s=t.y,a=t.z;return this.x=i*a-n*s,this.y=n*r-e*a,this.z=e*s-i*r,this},i.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},i.lengthSqr=function(){return this.x*this.x+this.y*this.y+this.z*this.z},i.normalize=function(){var t=this.x,e=this.y,i=this.z,n=t*t+e*e+i*i;return n>0&&(n=1/Math.sqrt(n),this.x=t*n,this.y=e*n,this.z=i*n),this},i.transformMat4=function(t){var e=this.x,i=this.y,n=this.z,r=t.m03*e+t.m07*i+t.m11*n+t.m15;return r=r?1/r:1,this.x=(t.m00*e+t.m04*i+t.m08*n+t.m12)*r,this.y=(t.m01*e+t.m05*i+t.m09*n+t.m13)*r,this.z=(t.m02*e+t.m06*i+t.m10*n+t.m14)*r,this},i.toVec2=function(){return new S.Vec2(this.x,this.y)},e}(Ie));function vn(t,e,i){return new gn(t,e,i)}ln=gn,gn.UNIT_X=Object.freeze(new ln(1,0,0)),gn.UNIT_Y=Object.freeze(new ln(0,1,0)),gn.UNIT_Z=Object.freeze(new ln(0,0,1)),gn.RIGHT=Object.freeze(new ln(1,0,0)),gn.UP=Object.freeze(new ln(0,1,0)),gn.FORWARD=Object.freeze(new ln(0,0,-1)),gn.ZERO=Object.freeze(new ln(0,0,0)),gn.ONE=Object.freeze(new ln(1,1,1)),gn.NEG_ONE=Object.freeze(new ln(-1,-1,-1)),gn.slerp=(fn=new ln,dn=new ln,pn=new ln,function(t,e,i,n){var r=1e-5,s=ln.len(e),a=ln.len(i);if(s<r||a<r)return ln.lerp(t,e,i,n);var o=Gi(s,a,n),h=ln.dot(e,i)/(s*a);if(h>.99999)return ln.lerp(t,e,i,n);if(h<-.99999){var u=ln.multiplyScalar(fn,e,1/s),l=ln.generateOrthogonal(dn,u),c=Math.PI*n;return Tn(pn,u,l,c),ln.multiplyScalar(t,pn,o),t}var _=h,f=Math.acos(_)*n,d=ln.multiplyScalar(fn,e,1/s),p=ln.multiplyScalar(dn,i,1/a);return ln.scaleAndAdd(pn,p,d,-_),ln.normalize(pn,pn),ln.multiplyScalar(pn,pn,Math.sin(f)),ln.scaleAndAdd(pn,pn,d,Math.cos(f)),ln.multiplyScalar(t,pn,o),t}),gn.signedAngle=(mn=new ln,function(t,e,i){var n=ln.angle(t,e),r=ln.cross(mn,t,e);return ln.dot(r,i)<0?-n:n}),Ci.fastDefine("cc.Vec3",gn,{x:0,y:0,z:0}),S.Vec3=gn;var yn,Sn,Tn=(yn={x:0,y:0,z:0,w:0},function(t,e,i,n){var r=.5*n,s=Math.sin(r);return yn.x=s*i.x,yn.y=s*i.y,yn.z=s*i.z,yn.w=Math.cos(r),gn.transformQuat(t,e,yn),t});S.v3=vn;var An,bn=1/255,En=t("b3",function(t){function e(e,i,n,r){var s;return(s=t.call(this)||this)._data=new Uint8ClampedArray(4),"string"==typeof e?s.fromHEX(e):void 0!==i?s.set(e,i,n,r):s.set(e),s}s(e,t),e.clone=function(t){var i=new e;return i.r=t.r,i.g=t.g,i.b=t.b,i.a=t.a,i},e.copy=function(t,e){return t.r=e.r,t.g=e.g,t.b=e.b,t.a=e.a,t},e.set=function(t,e,i,n,r){return t.r=e,t.g=i,t.b=n,t.a=r,t},e.toVec4=function(t,e){return(e=void 0!==e?e:new cn).x=t._data[0]*bn,e.y=t._data[1]*bn,e.z=t._data[2]*bn,e.w=t._data[3]*bn,e},e.fromVec4=function(t,i){return(i=void 0===i?new e:i)._data[0]=t.x/bn,i._data[1]=t.y/bn,i._data[2]=t.z/bn,i._data[3]=t.w/bn,i},e.fromHEX=function(t,e){var i;return"string"==typeof e?(6===(e="#"===e[0]?e.substring(1):e).length?e+="FF":3===e.length?e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+"FF":4===e.length&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]),i=Number("0x"+e)):(e<16777216&&(e=255+(e<<8)),i=e),t.r=i>>>24,t.g=(16711680&i)>>>16,t.b=(65280&i)>>>8,t.a=255&i,t},e.add=function(t,e,i){return t.r=e.r+i.r,t.g=e.g+i.g,t.b=e.b+i.b,t.a=e.a+i.a,t},e.subtract=function(t,e,i){return t.r=e.r-i.r,t.g=e.g-i.g,t.b=e.b-i.b,t.a=e.a-i.a,t},e.multiply=function(t,e,i){return t.r=e.r*i.r,t.g=e.g*i.g,t.b=e.b*i.b,t.a=e.a*i.a,t},e.divide=function(t,e,i){return t.r=e.r/i.r,t.g=e.g/i.g,t.b=e.b/i.b,t.a=e.a/i.a,t},e.scale=function(t,e,i){return t.r=e.r*i,t.g=e.g*i,t.b=e.b*i,t.a=e.a*i,t},e.lerp=function(t,e,i,n){var r=e.r,s=e.g,a=e.b,o=e.a;return t.r=r+(i.r-r)*n,t.g=s+(i.g-s)*n,t.b=a+(i.b-a)*n,t.a=o+(i.a-o)*n,t},e.toArray=function(t,i,n){void 0===n&&(n=0);var r=i instanceof e||i.a>1?1/255:1;return t[n+0]=i.r*r,t[n+1]=i.g*r,t[n+2]=i.b*r,t[n+3]=i.a*r,t},e.fromArray=function(t,e,i){return void 0===i&&(i=0),e.r=255*t[i+0],e.g=255*t[i+1],e.b=255*t[i+2],e.a=255*t[i+3],e},e.fromUint32=function(t,e){return e>>>=0,t.r=255&e,t.g=e>>8&255,t.b=e>>16&255,t.a=e>>24&255,t},e.toUint32=function(t){return(t.a<<24|t.b<<16|t.g<<8|t.r)>>>0},e.strictEquals=function(t,e){return t.r===e.r&&t.g===e.g&&t.b===e.b&&t.a===e.a},e.equals=function(t,e,i){return void 0===i&&(i=Oi),!(Math.abs(t.r)===1/0||Math.abs(t.g)===1/0||Math.abs(t.b)===1/0||Math.abs(t.a)===1/0)&&Math.abs(t.r-e.r)<=i*Math.max(1,Math.abs(t.r),Math.abs(e.r))&&Math.abs(t.g-e.g)<=i*Math.max(1,Math.abs(t.g),Math.abs(e.g))&&Math.abs(t.b-e.b)<=i*Math.max(1,Math.abs(t.b),Math.abs(e.b))&&Math.abs(t.a-e.a)<=i*Math.max(1,Math.abs(t.a),Math.abs(e.a))},e.hex=function(t){return(255*t.r<<24|255*t.g<<16|255*t.b<<8|255*t.a)>>>0};var i=e.prototype;return i.clone=function(){var t=new e;return t._data.set(this._data),t},i.equals=function(t){var e=t;return t&&this._data[0]===e.r&&this._data[1]===e.g&&this._data[2]===e.b&&this._data[3]===e.a},i.lerp=function(t,i){return e.lerp(this,this,t,i),this},i.toString=function(){return"rgba("+this.r.toFixed()+", "+this.g.toFixed()+", "+this.b.toFixed()+", "+this.a.toFixed()+")"},i.toCSS=function(t){return void 0===t&&(t="rgba"),"rgba"===t?"rgba("+this.r+","+this.g+","+this.b+","+(this.a*bn).toFixed(2)+")":"rgb"===t?"rgb("+this.r+","+this.g+","+this.b+")":"#"+this.toHEX(t)},i.fromHEX=function(t){var e;return"string"==typeof t?(6===(t="#"===t[0]?t.substring(1):t).length?t+="FF":3===t.length?t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]+"FF":4===t.length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]+t[3]+t[3]),e=Number("0x"+t)):(t<16777216&&(t=255+(t<<8)),e=t),this.r=e>>>24,this.g=(16711680&e)>>>16,this.b=(65280&e)>>>8,this.a=255&e,this},i.toHEX=function(t){void 0===t&&(t="#rrggbb");var e="0",i=[(this._data[0]<16?e:"")+this._data[0].toString(16),(this._data[1]<16?e:"")+this._data[1].toString(16),(this._data[2]<16?e:"")+this._data[2].toString(16)];return"#rgb"===t?(i[0]=i[0][0],i[1]=i[1][0],i[2]=i[2][0]):"#rrggbbaa"===t&&i.push((this._data[3]<16?e:"")+this._data[3].toString(16)),i.join("")},i.toRGBValue=function(){return this._data[2]<<16|this._data[1]<<8|this._data[0]},i.fromHSV=function(t,e,i){var n=0,r=0,s=0;if(0===e)n=r=s=i;else if(0===i)n=r=s=0;else{1===t&&(t=0),t*=6;var a=Math.floor(t),o=t-a,h=i*(1-e),u=i*(1-e*o),l=i*(1-e*(1-o));switch(a){default:case 0:n=i,r=l,s=h;break;case 1:n=u,r=i,s=h;break;case 2:n=h,r=i,s=l;break;case 3:n=h,r=u,s=i;break;case 4:n=l,r=h,s=i;break;case 5:n=i,r=h,s=u}}return this._data[0]=255*n,this._data[1]=255*r,this._data[2]=255*s,this},i.toHSV=function(){var t=this._data[0]*bn,e=this._data[1]*bn,i=this._data[2]*bn,n={h:0,s:0,v:0},r=Math.max(t,e,i),s=Math.min(t,e,i),a=0;return n.v=r,n.s=r?(r-s)/r:0,n.s?(a=r-s,n.h=t===r?(e-i)/a:e===r?2+(i-t)/a:4+(t-e)/a,n.h/=6,n.h<0&&(n.h+=1)):n.h=0,n},i.set=function(t,e,i,n){if("object"==typeof t){var r,s,a,o,h=t;h._data?this._data.set(h._data):(this._data[0]=null!==(r=h.r)&&void 0!==r?r:0,this._data[1]=null!==(s=h.g)&&void 0!==s?s:0,this._data[2]=null!==(a=h.b)&&void 0!==a?a:0,this._data[3]=null!==(o=h.a)&&void 0!==o?o:255)}else this._data[0]=null!=t?t:0,this._data[1]=null!=e?e:0,this._data[2]=null!=i?i:0,this._data[3]=null!=n?n:255;return this},i.multiply=function(t){return this._data[0]*=t.r/255,this._data[1]*=t.g/255,this._data[2]*=t.b/255,this._data[3]*=t.a/255,this},i.getModifiableProperties=function(){return["r","g","b","a"]},n(e,[{key:"r",get:function(){return this._data[0]},set:function(t){this._data[0]=t}},{key:"g",get:function(){return this._data[1]},set:function(t){this._data[1]=t}},{key:"b",get:function(){return this._data[2]},set:function(t){this._data[2]=t}},{key:"a",get:function(){return this._data[3]},set:function(t){this._data[3]=t}},{key:"x",get:function(){return this._data[0]*bn},set:function(t){this._data[0]=255*t}},{key:"y",get:function(){return this._data[1]*bn},set:function(t){this._data[1]=255*t}},{key:"z",get:function(){return this._data[2]*bn},set:function(t){this._data[2]=255*t}},{key:"w",get:function(){return this._data[3]*bn},set:function(t){this._data[3]=255*t}}]),e}(Ie));function Cn(t,e,i,n){return new En(t,e,i,n)}function xn(t){var e=t.clone();return e.x=Math.floor(t.x),e.y=Math.floor(t.y),e.z=Math.floor(t.z),e}Sn=En,En.WHITE=Object.freeze(new Sn(255,255,255,255)),En.GRAY=Object.freeze(new Sn(127,127,127,255)),En.BLACK=Object.freeze(new Sn(0,0,0,255)),En.TRANSPARENT=Object.freeze(new Sn(0,0,0,0)),En.RED=Object.freeze(new Sn(255,0,0,255)),En.GREEN=Object.freeze(new Sn(0,255,0,255)),En.BLUE=Object.freeze(new Sn(0,0,255,255)),En.CYAN=Object.freeze(new Sn(0,255,255,255)),En.MAGENTA=Object.freeze(new Sn(255,0,255,255)),En.YELLOW=Object.freeze(new Sn(255,255,0,255)),Ci.fastDefine("cc.Color",En,{r:0,g:0,b:0,a:255}),S.Color=En,S.color=Cn;var wn=t("aX",function(t){function e(e,i,n,r,s,a,o,h,u){var l;return void 0===e&&(e=1),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=1),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=1),l=t.call(this)||this,"object"==typeof e?(l.m00=e.m00,l.m01=e.m01,l.m02=e.m02,l.m03=e.m03,l.m04=e.m04,l.m05=e.m05,l.m06=e.m06,l.m07=e.m07,l.m08=e.m08):(l.m00=e,l.m01=i,l.m02=n,l.m03=r,l.m04=s,l.m05=a,l.m06=o,l.m07=h,l.m08=u),l}s(e,t),e.clone=function(t){return new e(t.m00,t.m01,t.m02,t.m03,t.m04,t.m05,t.m06,t.m07,t.m08)},e.copy=function(t,e){return t.m00=e.m00,t.m01=e.m01,t.m02=e.m02,t.m03=e.m03,t.m04=e.m04,t.m05=e.m05,t.m06=e.m06,t.m07=e.m07,t.m08=e.m08,t},e.set=function(t,e,i,n,r,s,a,o,h,u){return t.m00=e,t.m01=i,t.m02=n,t.m03=r,t.m04=s,t.m05=a,t.m06=o,t.m07=h,t.m08=u,t},e.identity=function(t){return t.m00=1,t.m01=0,t.m02=0,t.m03=0,t.m04=1,t.m05=0,t.m06=0,t.m07=0,t.m08=1,t},e.transpose=function(t,e){if(t===e){var i=e.m01,n=e.m02,r=e.m05;t.m01=e.m03,t.m02=e.m06,t.m03=i,t.m05=e.m07,t.m06=n,t.m07=r}else t.m00=e.m00,t.m01=e.m03,t.m02=e.m06,t.m03=e.m01,t.m04=e.m04,t.m05=e.m07,t.m06=e.m02,t.m07=e.m05,t.m08=e.m08;return t},e.invert=function(t,e){var i=e.m00,n=e.m01,r=e.m02,s=e.m03,a=e.m04,o=e.m05,h=e.m06,u=e.m07,l=e.m08,c=l*a-o*u,_=-l*s+o*h,f=u*s-a*h,d=i*c+n*_+r*f;return 0===d?(t.m00=0,t.m01=0,t.m02=0,t.m03=0,t.m04=0,t.m05=0,t.m06=0,t.m07=0,t.m08=0,t):(d=1/d,t.m00=c*d,t.m01=(-l*n+r*u)*d,t.m02=(o*n-r*a)*d,t.m03=_*d,t.m04=(l*i-r*h)*d,t.m05=(-o*i+r*s)*d,t.m06=f*d,t.m07=(-u*i+n*h)*d,t.m08=(a*i-n*s)*d,t)},e.determinant=function(t){var e=t.m00,i=t.m01,n=t.m02,r=t.m03,s=t.m04,a=t.m05,o=t.m06,h=t.m07,u=t.m08;return e*(u*s-a*h)+i*(-u*r+a*o)+n*(h*r-s*o)},e.multiply=function(t,e,i){var n=e.m00,r=e.m01,s=e.m02,a=e.m03,o=e.m04,h=e.m05,u=e.m06,l=e.m07,c=e.m08,_=i.m00,f=i.m01,d=i.m02,p=i.m03,m=i.m04,g=i.m05,v=i.m06,y=i.m07,S=i.m08;return t.m00=_*n+f*a+d*u,t.m01=_*r+f*o+d*l,t.m02=_*s+f*h+d*c,t.m03=p*n+m*a+g*u,t.m04=p*r+m*o+g*l,t.m05=p*s+m*h+g*c,t.m06=v*n+y*a+S*u,t.m07=v*r+y*o+S*l,t.m08=v*s+y*h+S*c,t},e.multiplyMat4=function(t,e,i){var n=e.m00,r=e.m01,s=e.m02,a=e.m03,o=e.m04,h=e.m05,u=e.m06,l=e.m07,c=e.m08,_=i.m00,f=i.m01,d=i.m02,p=i.m04,m=i.m05,g=i.m06,v=i.m08,y=i.m09,S=i.m10;return t.m00=_*n+f*a+d*u,t.m01=_*r+f*o+d*l,t.m02=_*s+f*h+d*c,t.m03=p*n+m*a+g*u,t.m04=p*r+m*o+g*l,t.m05=p*s+m*h+g*c,t.m06=v*n+y*a+S*u,t.m07=v*r+y*o+S*l,t.m08=v*s+y*h+S*c,t},e.transform=function(t,e,i){this.translate(t,e,i)},e.translate=function(t,e,i){var n=e.m00,r=e.m01,s=e.m02,a=e.m03,o=e.m04,h=e.m05,u=e.m06,l=e.m07,c=e.m08,_=i.x,f=i.y;return t.m00=n,t.m01=r,t.m02=s,t.m03=a,t.m04=o,t.m05=h,t.m06=_*n+f*a+u,t.m07=_*r+f*o+l,t.m08=_*s+f*h+c,t},e.scale=function(t,e,i){var n=i.x,r=i.y;return t.m00=n*e.m00,t.m01=n*e.m01,t.m02=n*e.m02,t.m03=r*e.m03,t.m04=r*e.m04,t.m05=r*e.m05,t.m06=e.m06,t.m07=e.m07,t.m08=e.m08,t},e.rotate=function(t,e,i){var n=e.m00,r=e.m01,s=e.m02,a=e.m03,o=e.m04,h=e.m05,u=e.m06,l=e.m07,c=e.m08,_=Math.sin(i),f=Math.cos(i);return t.m00=f*n+_*a,t.m01=f*r+_*o,t.m02=f*s+_*h,t.m03=f*a-_*n,t.m04=f*o-_*r,t.m05=f*h-_*s,t.m06=u,t.m07=l,t.m08=c,t},e.fromMat4=function(t,e){return t.m00=e.m00,t.m01=e.m01,t.m02=e.m02,t.m03=e.m04,t.m04=e.m05,t.m05=e.m06,t.m06=e.m08,t.m07=e.m09,t.m08=e.m10,t},e.fromViewUp=function(t,i,n){return gn.lengthSqr(i)<Oi*Oi?(e.identity(t),t):(n=n||gn.UNIT_Y,gn.normalize(In,gn.cross(In,n,i)),gn.lengthSqr(In)<Oi*Oi?(e.identity(t),t):(gn.cross(Dn,i,In),e.set(t,In.x,In.y,In.z,Dn.x,Dn.y,Dn.z,i.x,i.y,i.z),t))},e.fromTranslation=function(t,e){return t.m00=1,t.m01=0,t.m02=0,t.m03=0,t.m04=1,t.m05=0,t.m06=e.x,t.m07=e.y,t.m08=1,t},e.fromScaling=function(t,e){return t.m00=e.x,t.m01=0,t.m02=0,t.m03=0,t.m04=e.y,t.m05=0,t.m06=0,t.m07=0,t.m08=1,t},e.fromRotation=function(t,e){var i=Math.sin(e),n=Math.cos(e);return t.m00=n,t.m01=i,t.m02=0,t.m03=-i,t.m04=n,t.m05=0,t.m06=0,t.m07=0,t.m08=1,t},e.fromQuat=function(t,e){var i=e.x,n=e.y,r=e.z,s=e.w,a=i+i,o=n+n,h=r+r,u=i*a,l=n*a,c=n*o,_=r*a,f=r*o,d=r*h,p=s*a,m=s*o,g=s*h;return t.m00=1-c-d,t.m03=l-g,t.m06=_+m,t.m01=l+g,t.m04=1-u-d,t.m07=f-p,t.m02=_-m,t.m05=f+p,t.m08=1-u-c,t},e.inverseTransposeMat4=function(t,e){var i=e.m00,n=e.m01,r=e.m02,s=e.m03,a=e.m04,o=e.m05,h=e.m06,u=e.m07,l=e.m08,c=e.m09,_=e.m10,f=e.m11,d=e.m12,p=e.m13,m=e.m14,g=e.m15,v=i*o-n*a,y=i*h-r*a,S=i*u-s*a,T=n*h-r*o,A=n*u-s*o,b=r*u-s*h,E=l*p-c*d,C=l*m-_*d,x=l*g-f*d,w=c*m-_*p,R=c*g-f*p,I=_*g-f*m,D=v*I-y*R+S*w+T*x-A*C+b*E;return D?(D=1/D,t.m00=(o*I-h*R+u*w)*D,t.m01=(h*x-a*I-u*C)*D,t.m02=(a*R-o*x+u*E)*D,t.m03=(r*R-n*I-s*w)*D,t.m04=(i*I-r*x+s*C)*D,t.m05=(n*x-i*R-s*E)*D,t.m06=(p*b-m*A+g*T)*D,t.m07=(m*S-d*b-g*y)*D,t.m08=(d*A-p*S+g*v)*D,t):null},e.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.m00,t[i+1]=e.m01,t[i+2]=e.m02,t[i+3]=e.m03,t[i+4]=e.m04,t[i+5]=e.m05,t[i+6]=e.m06,t[i+7]=e.m07,t[i+8]=e.m08,t},e.fromArray=function(t,e,i){return void 0===i&&(i=0),t.m00=e[i+0],t.m01=e[i+1],t.m02=e[i+2],t.m03=e[i+3],t.m04=e[i+4],t.m05=e[i+5],t.m06=e[i+6],t.m07=e[i+7],t.m08=e[i+8],t},e.add=function(t,e,i){return t.m00=e.m00+i.m00,t.m01=e.m01+i.m01,t.m02=e.m02+i.m02,t.m03=e.m03+i.m03,t.m04=e.m04+i.m04,t.m05=e.m05+i.m05,t.m06=e.m06+i.m06,t.m07=e.m07+i.m07,t.m08=e.m08+i.m08,t},e.subtract=function(t,e,i){return t.m00=e.m00-i.m00,t.m01=e.m01-i.m01,t.m02=e.m02-i.m02,t.m03=e.m03-i.m03,t.m04=e.m04-i.m04,t.m05=e.m05-i.m05,t.m06=e.m06-i.m06,t.m07=e.m07-i.m07,t.m08=e.m08-i.m08,t},e.multiplyScalar=function(t,e,i){return t.m00=e.m00*i,t.m01=e.m01*i,t.m02=e.m02*i,t.m03=e.m03*i,t.m04=e.m04*i,t.m05=e.m05*i,t.m06=e.m06*i,t.m07=e.m07*i,t.m08=e.m08*i,t},e.multiplyScalarAndAdd=function(t,e,i,n){return t.m00=i.m00*n+e.m00,t.m01=i.m01*n+e.m01,t.m02=i.m02*n+e.m02,t.m03=i.m03*n+e.m03,t.m04=i.m04*n+e.m04,t.m05=i.m05*n+e.m05,t.m06=i.m06*n+e.m06,t.m07=i.m07*n+e.m07,t.m08=i.m08*n+e.m08,t},e.strictEquals=function(t,e){return t.m00===e.m00&&t.m01===e.m01&&t.m02===e.m02&&t.m03===e.m03&&t.m04===e.m04&&t.m05===e.m05&&t.m06===e.m06&&t.m07===e.m07&&t.m08===e.m08},e.equals=function(t,e,i){return void 0===i&&(i=Oi),Math.abs(t.m00-e.m00)<=i*Math.max(1,Math.abs(t.m00),Math.abs(e.m00))&&Math.abs(t.m01-e.m01)<=i*Math.max(1,Math.abs(t.m01),Math.abs(e.m01))&&Math.abs(t.m02-e.m02)<=i*Math.max(1,Math.abs(t.m02),Math.abs(e.m02))&&Math.abs(t.m03-e.m03)<=i*Math.max(1,Math.abs(t.m03),Math.abs(e.m03))&&Math.abs(t.m04-e.m04)<=i*Math.max(1,Math.abs(t.m04),Math.abs(e.m04))&&Math.abs(t.m05-e.m05)<=i*Math.max(1,Math.abs(t.m05),Math.abs(e.m05))&&Math.abs(t.m06-e.m06)<=i*Math.max(1,Math.abs(t.m06),Math.abs(e.m06))&&Math.abs(t.m07-e.m07)<=i*Math.max(1,Math.abs(t.m07),Math.abs(e.m07))&&Math.abs(t.m08-e.m08)<=i*Math.max(1,Math.abs(t.m08),Math.abs(e.m08))},e.toEuler=function(t,e){var i=t.m00,n=t.m01;t.m02;var r=t.m03,s=t.m04;t.m05;var a=t.m06,o=t.m07,h=t.m08;return o<.999?o>-.999?(e.x=Math.asin(-o),e.y=Math.atan2(a,h),e.z=Math.atan2(n,s),!0):(e.x=Mi,e.y=Math.atan2(r,i),e.z=0,!1):(e.x=-Mi,e.y=Math.atan2(-r,i),e.z=0,!1)};var i=e.prototype;return i.clone=function(){var t=this;return new e(t.m00,t.m01,t.m02,t.m03,t.m04,t.m05,t.m06,t.m07,t.m08)},i.set=function(t,e,i,n,r,s,a,o,h){return void 0===t&&(t=1),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=1),void 0===s&&(s=0),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=1),"object"==typeof t?(this.m00=t.m00,this.m01=t.m01,this.m02=t.m02,this.m03=t.m03,this.m04=t.m04,this.m05=t.m05,this.m06=t.m06,this.m07=t.m07,this.m08=t.m08):(this.m00=t,this.m01=e,this.m02=i,this.m03=n,this.m04=r,this.m05=s,this.m06=a,this.m07=o,this.m08=h),this},i.equals=function(t,e){return void 0===e&&(e=Oi),Math.abs(this.m00-t.m00)<=e*Math.max(1,Math.abs(this.m00),Math.abs(t.m00))&&Math.abs(this.m01-t.m01)<=e*Math.max(1,Math.abs(this.m01),Math.abs(t.m01))&&Math.abs(this.m02-t.m02)<=e*Math.max(1,Math.abs(this.m02),Math.abs(t.m02))&&Math.abs(this.m03-t.m03)<=e*Math.max(1,Math.abs(this.m03),Math.abs(t.m03))&&Math.abs(this.m04-t.m04)<=e*Math.max(1,Math.abs(this.m04),Math.abs(t.m04))&&Math.abs(this.m05-t.m05)<=e*Math.max(1,Math.abs(this.m05),Math.abs(t.m05))&&Math.abs(this.m06-t.m06)<=e*Math.max(1,Math.abs(this.m06),Math.abs(t.m06))&&Math.abs(this.m07-t.m07)<=e*Math.max(1,Math.abs(this.m07),Math.abs(t.m07))&&Math.abs(this.m08-t.m08)<=e*Math.max(1,Math.abs(this.m08),Math.abs(t.m08))},i.strictEquals=function(t){return this.m00===t.m00&&this.m01===t.m01&&this.m02===t.m02&&this.m03===t.m03&&this.m04===t.m04&&this.m05===t.m05&&this.m06===t.m06&&this.m07===t.m07&&this.m08===t.m08},i.toString=function(){var t=this;return"[\n"+t.m00+", "+t.m01+", "+t.m02+",\n"+t.m03+",\n"+t.m04+", "+t.m05+",\n"+t.m06+", "+t.m07+",\n"+t.m08+"\n]"},i.identity=function(){return this.m00=1,this.m01=0,this.m02=0,this.m03=0,this.m04=1,this.m05=0,this.m06=0,this.m07=0,this.m08=1,this},i.transpose=function(){var t=this.m01,e=this.m02,i=this.m05;return this.m01=this.m03,this.m02=this.m06,this.m03=t,this.m05=this.m07,this.m06=e,this.m07=i,this},i.invert=function(){var t=this.m00,e=this.m01,i=this.m02,n=this.m03,r=this.m04,s=this.m05,a=this.m06,o=this.m07,h=this.m08,u=h*r-s*o,l=-h*n+s*a,c=o*n-r*a,_=t*u+e*l+i*c;return 0===_?(this.set(0,0,0,0,0,0,0,0,0),this):(_=1/_,this.m00=u*_,this.m01=(-h*e+i*o)*_,this.m02=(s*e-i*r)*_,this.m03=l*_,this.m04=(h*t-i*a)*_,this.m05=(-s*t+i*n)*_,this.m06=c*_,this.m07=(-o*t+e*a)*_,this.m08=(r*t-e*n)*_,this)},i.determinant=function(){var t=this.m00,e=this.m01,i=this.m02,n=this.m03,r=this.m04,s=this.m05,a=this.m06,o=this.m07,h=this.m08;return t*(h*r-s*o)+e*(-h*n+s*a)+i*(o*n-r*a)},i.add=function(t){return this.m00+=t.m00,this.m01+=t.m01,this.m02+=t.m02,this.m03+=t.m03,this.m04+=t.m04,this.m05+=t.m05,this.m06+=t.m06,this.m07+=t.m07,this.m08+=t.m08,this},i.subtract=function(t){return this.m00-=t.m00,this.m01-=t.m01,this.m02-=t.m02,this.m03-=t.m03,this.m04-=t.m04,this.m05-=t.m05,this.m06-=t.m06,this.m07-=t.m07,this.m08-=t.m08,this},i.multiply=function(t){var e=this.m00,i=this.m01,n=this.m02,r=this.m03,s=this.m04,a=this.m05,o=this.m06,h=this.m07,u=this.m08,l=t.m00,c=t.m01,_=t.m02,f=t.m03,d=t.m04,p=t.m05,m=t.m06,g=t.m07,v=t.m08;return this.m00=l*e+c*r+_*o,this.m01=l*i+c*s+_*h,this.m02=l*n+c*a+_*u,this.m03=f*e+d*r+p*o,this.m04=f*i+d*s+p*h,this.m05=f*n+d*a+p*u,this.m06=m*e+g*r+v*o,this.m07=m*i+g*s+v*h,this.m08=m*n+g*a+v*u,this},i.multiplyScalar=function(t){return this.m00*=t,this.m01*=t,this.m02*=t,this.m03*=t,this.m04*=t,this.m05*=t,this.m06*=t,this.m07*=t,this.m08*=t,this},i.scale=function(t){var e=t.x,i=t.y;return this.m00*=e,this.m01*=e,this.m02*=e,this.m03*=i,this.m04*=i,this.m05*=i,this},i.rotate=function(t){var e=this.m00,i=this.m01,n=this.m02,r=this.m03,s=this.m04,a=this.m05,o=this.m06,h=this.m07,u=this.m08,l=Math.sin(t),c=Math.cos(t);return this.m00=c*e+l*r,this.m01=c*i+l*s,this.m02=c*n+l*a,this.m03=c*r-l*e,this.m04=c*s-l*i,this.m05=c*a-l*n,this.m06=o,this.m07=h,this.m08=u,this},i.fromQuat=function(t){var e=t.x,i=t.y,n=t.z,r=t.w,s=e+e,a=i+i,o=n+n,h=e*s,u=i*s,l=i*a,c=n*s,_=n*a,f=n*o,d=r*s,p=r*a,m=r*o;return this.m00=1-l-f,this.m03=u-m,this.m06=c+p,this.m01=u+m,this.m04=1-h-f,this.m07=_-d,this.m02=c-p,this.m05=_+d,this.m08=1-h-l,this},e}(Ie));An=wn,wn.IDENTITY=Object.freeze(new An);var Rn,In=new gn,Dn=new gn;Ci.fastDefine("cc.Mat3",wn,{m00:1,m01:0,m02:0,m03:0,m04:1,m05:0,m06:0,m07:0,m08:1}),S.Mat3=wn;var Bn=t("aV",function(t){function e(e,i,n,r){var s;return s=t.call(this)||this,"object"==typeof e?(s.x=e.x,s.y=e.y,s.z=e.z,s.w=e.w):(s.x=e||0,s.y=i||0,s.z=n||0,s.w=null!=r?r:1),s}s(e,t),e.clone=function(t){return new e(t.x,t.y,t.z,t.w)},e.copy=function(t,e){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=e.w,t},e.set=function(t,e,i,n,r){return t.x=e,t.y=i,t.z=n,t.w=r,t},e.identity=function(t){return t.x=0,t.y=0,t.z=0,t.w=1,t},e.rotationTo=function(t,i,n){var r=gn.dot(i,n);return r<-.999999?(gn.cross(Ln,gn.UNIT_X,i),Ln.length()<1e-6&&gn.cross(Ln,gn.UNIT_Y,i),gn.normalize(Ln,Ln),e.fromAxisAngle(t,Ln,Math.PI),t):r>.999999?(t.x=0,t.y=0,t.z=0,t.w=1,t):(gn.cross(Ln,i,n),t.x=Ln.x,t.y=Ln.y,t.z=Ln.z,t.w=1+r,e.normalize(t,t))},e.getAxisAngle=function(t,e){var i=2*Math.acos(e.w),n=Math.sin(i/2);return 0!==n?(t.x=e.x/n,t.y=e.y/n,t.z=e.z/n):(t.x=1,t.y=0,t.z=0),i},e.multiply=function(t,e,i){var n=e.x*i.w+e.w*i.x+e.y*i.z-e.z*i.y,r=e.y*i.w+e.w*i.y+e.z*i.x-e.x*i.z,s=e.z*i.w+e.w*i.z+e.x*i.y-e.y*i.x,a=e.w*i.w-e.x*i.x-e.y*i.y-e.z*i.z;return t.x=n,t.y=r,t.z=s,t.w=a,t},e.multiplyScalar=function(t,e,i){return t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t.w=e.w*i,t},e.scaleAndAdd=function(t,e,i,n){return t.x=e.x+i.x*n,t.y=e.y+i.y*n,t.z=e.z+i.z*n,t.w=e.w+i.w*n,t},e.rotateX=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i),s=e.x,a=e.y,o=e.z,h=e.w;return t.x=s*r+h*n,t.y=a*r+o*n,t.z=o*r-a*n,t.w=h*r-s*n,t},e.rotateY=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i),s=e.x,a=e.y,o=e.z,h=e.w;return t.x=s*r-o*n,t.y=a*r+h*n,t.z=o*r+s*n,t.w=h*r-a*n,t},e.rotateZ=function(t,e,i){i*=.5;var n=Math.sin(i),r=Math.cos(i),s=e.x,a=e.y,o=e.z,h=e.w;return t.x=s*r+a*n,t.y=a*r-s*n,t.z=o*r+h*n,t.w=h*r-o*n,t},e.rotateAround=function(t,i,n,r){return e.invert(Pn,i),gn.transformQuat(Ln,n,Pn),e.fromAxisAngle(Pn,Ln,r),e.multiply(t,i,Pn),t},e.rotateAroundLocal=function(t,i,n,r){return e.fromAxisAngle(Pn,n,r),e.multiply(t,i,Pn),t},e.calculateW=function(t,e){return t.x=e.x,t.y=e.y,t.z=e.z,t.w=Math.sqrt(Math.abs(1-e.x*e.x-e.y*e.y-e.z*e.z)),t},e.dot=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z+t.w*e.w},e.lerp=function(t,e,i,n){return t.x=e.x+n*(i.x-e.x),t.y=e.y+n*(i.y-e.y),t.z=e.z+n*(i.z-e.z),t.w=e.w+n*(i.w-e.w),t},e.slerp=function(t,e,i,n){var r=0,s=0,a=i.x,o=i.y,h=i.z,u=i.w,l=e.x*i.x+e.y*i.y+e.z*i.z+e.w*i.w;if(l<0&&(l=-l,a=-a,o=-o,h=-h,u=-u),1-l>1e-6){var c=Math.acos(l),_=Math.sin(c);r=Math.sin((1-n)*c)/_,s=Math.sin(n*c)/_}else r=1-n,s=n;return t.x=r*e.x+s*a,t.y=r*e.y+s*o,t.z=r*e.z+s*h,t.w=r*e.w+s*u,t},e.sqlerp=function(t,i,n,r,s,a){return e.slerp(Pn,i,s,a),e.slerp(On,n,r,a),e.slerp(t,Pn,On,2*a*(1-a)),t},e.invert=function(t,e){var i=e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w,n=i?1/i:0;return t.x=-e.x*n,t.y=-e.y*n,t.z=-e.z*n,t.w=e.w*n,t},e.conjugate=function(t,e){return t.x=-e.x,t.y=-e.y,t.z=-e.z,t.w=e.w,t},e.len=function(t){return Math.sqrt(t.x*t.x+t.y*t.y+t.z*t.z+t.w*t.w)},e.lengthSqr=function(t){return t.x*t.x+t.y*t.y+t.z*t.z+t.w*t.w},e.normalize=function(t,e){var i=e.x*e.x+e.y*e.y+e.z*e.z+e.w*e.w;return i>0?(i=1/Math.sqrt(i),t.x=e.x*i,t.y=e.y*i,t.z=e.z*i,t.w=e.w*i):(t.x=0,t.y=0,t.z=0,t.w=0),t},e.fromAxes=function(t,i,n,r){return wn.set(Nn,i.x,i.y,i.z,n.x,n.y,n.z,r.x,r.y,r.z),e.normalize(t,e.fromMat3(t,Nn))},e.fromViewUp=function(t,i,n){return wn.fromViewUp(Nn,i,n),e.normalize(t,e.fromMat3(t,Nn))},e.fromAxisAngle=function(t,e,i){i*=.5;var n=Math.sin(i);return t.x=n*e.x,t.y=n*e.y,t.z=n*e.z,t.w=Math.cos(i),t},e.fromMat3=function(t,e){var i=e.m00,n=e.m01,r=e.m02,s=e.m03,a=e.m04,o=e.m05,h=e.m06,u=e.m07,l=e.m08,c=i-a-l,_=a-i-l,f=l-i-a,d=0,p=i+a+l;c>p&&(p=c,d=1),_>p&&(p=_,d=2),f>p&&(p=f,d=3);var m=.5*Math.sqrt(p+1),g=.25/m;switch(d){case 0:t.w=m,t.x=(o-u)*g,t.y=(h-r)*g,t.z=(n-s)*g;break;case 1:t.w=(o-u)*g,t.x=m,t.y=(n+s)*g,t.z=(h+r)*g;break;case 2:t.w=(h-r)*g,t.x=(n+s)*g,t.y=m,t.z=(o+u)*g;break;case 3:t.w=(n-s)*g,t.x=(h+r)*g,t.y=(o+u)*g,t.z=m;break;default:t.w=1,t.x=0,t.y=0,t.z=0}return t},e.fromEuler=function(t,e,i,n){e*=Fn,i*=Fn,n*=Fn;var r=Math.sin(e),s=Math.cos(e),a=Math.sin(i),o=Math.cos(i),h=Math.sin(n),u=Math.cos(n);return t.x=r*o*u+s*a*h,t.y=s*a*u+r*o*h,t.z=s*o*h-r*a*u,t.w=s*o*u-r*a*h,t},e.fromAngleZ=function(t,e){return e*=Fn,t.x=t.y=0,t.z=Math.sin(e),t.w=Math.cos(e),t},e.toAxisX=function(t,e){var i=2*e.y,n=2*e.z;return t.x=1-i*e.y-n*e.z,t.y=i*e.x+n*e.w,t.z=n*e.x-i*e.w,t},e.toAxisY=function(t,e){var i=2*e.x,n=2*e.y,r=2*e.z;return t.x=n*e.x-r*e.w,t.y=1-i*e.x-r*e.z,t.z=r*e.y+i*e.w,t},e.toAxisZ=function(t,e){var i=2*e.x,n=2*e.y,r=2*e.z;return t.x=r*e.x+n*e.w,t.y=r*e.y-i*e.w,t.z=1-i*e.x-n*e.y,t},e.toEuler=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=e.w,o=0,h=0,u=0,l=n*r+s*a;if(l>.499999)o=0,h=Ui(2*Math.atan2(n,a)),u=90;else if(l<-.499999)o=0,h=-Ui(2*Math.atan2(n,a)),u=-90;else{var c=n*n,_=r*r,f=s*s;o=Ui(Math.atan2(2*n*a-2*r*s,1-2*c-2*f)),h=Ui(Math.atan2(2*r*a-2*n*s,1-2*_-2*f)),u=Ui(Math.asin(2*l)),i&&(o=-180*Math.sign(o+1e-6)+o,h=-180*Math.sign(h+1e-6)+h,u=180*Math.sign(u+1e-6)-u)}return t.x=o,t.y=h,t.z=u,t},e.toEulerInYXZOrder=function(t,e){wn.fromQuat(Nn,e),wn.toEuler(Nn,t),t.x=Ui(t.x),t.y=Ui(t.y),t.z=Ui(t.z)},e.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t[i+2]=e.z,t[i+3]=e.w,t},e.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t.z=e[i+2],t.w=e[i+3],t},e.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y&&t.z===e.z&&t.w===e.w},e.equals=function(t,e,i){return void 0===i&&(i=Oi),Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))&&Math.abs(t.z-e.z)<=i*Math.max(1,Math.abs(t.z),Math.abs(e.z))&&Math.abs(t.w-e.w)<=i*Math.max(1,Math.abs(t.w),Math.abs(e.w))},e.angle=function(t,i){var n=Math.min(Math.abs(e.dot(t,i)),1);return 2*Math.acos(n)},e.rotateTowards=function(t,i,n,r){var s=e.angle(i,n);if(0===s)return t.x=n.x,t.y=n.y,t.z=n.z,t.w=n.w,t;var a=Math.min(r/Ui(s),1);return e.slerp(t,i,n,a)};var i=e.prototype;return i.clone=function(){return new e(this.x,this.y,this.z,this.w)},i.set=function(t,e,i,n){return"object"==typeof t?(this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w):(this.x=t||0,this.y=e||0,this.z=i||0,this.w=null!=n?n:1),this},i.equals=function(t,e){return void 0===e&&(e=Oi),Math.abs(this.x-t.x)<=e*Math.max(1,Math.abs(this.x),Math.abs(t.x))&&Math.abs(this.y-t.y)<=e*Math.max(1,Math.abs(this.y),Math.abs(t.y))&&Math.abs(this.z-t.z)<=e*Math.max(1,Math.abs(this.z),Math.abs(t.z))&&Math.abs(this.w-t.w)<=e*Math.max(1,Math.abs(this.w),Math.abs(t.w))},i.strictEquals=function(t){return t&&this.x===t.x&&this.y===t.y&&this.z===t.z&&this.w===t.w},i.getEulerAngles=function(t){return e.toEuler(t,this)},i.lerp=function(t,e){return this.x+=e*(t.x-this.x),this.y+=e*(t.y-this.y),this.z+=e*(t.z-this.z),this.w+=e*(t.w-this.w),this},i.slerp=function(t,i){return e.slerp(this,this,t,i)},i.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)},i.lengthSqr=function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w},e}(Ie));Rn=Bn,Bn.IDENTITY=Object.freeze(new Rn);var Mn,Pn=new Bn,On=new Bn,Ln=new gn,Nn=new wn,Fn=.5*Math.PI/180;function kn(t,e,i,n){return void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=1),new Bn(t,e,i,n)}Ci.fastDefine("cc.Quat",Bn,{x:0,y:0,z:0,w:1}),S.Quat=Bn,S.quat=kn;var Gn=t("b5",Object.freeze([Object.freeze([1,0,0,1]),Object.freeze([0,1,-1,0]),Object.freeze([-1,0,0,-1]),Object.freeze([0,-1,1,0])])),Vn=t("aY",function(t){function e(e,i,n,r,s,a,o,h,u,l,c,_,f,d,p,m){var g;return void 0===e&&(e=1),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=1),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=0),void 0===l&&(l=0),void 0===c&&(c=1),void 0===_&&(_=0),void 0===f&&(f=0),void 0===d&&(d=0),void 0===p&&(p=0),void 0===m&&(m=1),g=t.call(this)||this,"object"==typeof e?(g.m00=e.m00,g.m01=e.m01,g.m02=e.m02,g.m03=e.m03,g.m04=e.m04,g.m05=e.m05,g.m06=e.m06,g.m07=e.m07,g.m08=e.m08,g.m09=e.m09,g.m10=e.m10,g.m11=e.m11,g.m12=e.m12,g.m13=e.m13,g.m14=e.m14,g.m15=e.m15):(g.m00=e,g.m01=i,g.m02=n,g.m03=r,g.m04=s,g.m05=a,g.m06=o,g.m07=h,g.m08=u,g.m09=l,g.m10=c,g.m11=_,g.m12=f,g.m13=d,g.m14=p,g.m15=m),g}s(e,t),e.clone=function(t){return new e(t.m00,t.m01,t.m02,t.m03,t.m04,t.m05,t.m06,t.m07,t.m08,t.m09,t.m10,t.m11,t.m12,t.m13,t.m14,t.m15)},e.copy=function(t,e){return t.m00=e.m00,t.m01=e.m01,t.m02=e.m02,t.m03=e.m03,t.m04=e.m04,t.m05=e.m05,t.m06=e.m06,t.m07=e.m07,t.m08=e.m08,t.m09=e.m09,t.m10=e.m10,t.m11=e.m11,t.m12=e.m12,t.m13=e.m13,t.m14=e.m14,t.m15=e.m15,t},e.set=function(t,e,i,n,r,s,a,o,h,u,l,c,_,f,d,p,m){return t.m00=e,t.m01=i,t.m02=n,t.m03=r,t.m04=s,t.m05=a,t.m06=o,t.m07=h,t.m08=u,t.m09=l,t.m10=c,t.m11=_,t.m12=f,t.m13=d,t.m14=p,t.m15=m,t},e.identity=function(t){return t.m00=1,t.m01=0,t.m02=0,t.m03=0,t.m04=0,t.m05=1,t.m06=0,t.m07=0,t.m08=0,t.m09=0,t.m10=1,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=1,t},e.transpose=function(t,e){if(t===e){var i=e.m01,n=e.m02,r=e.m03,s=e.m06,a=e.m07,o=e.m11;t.m01=e.m04,t.m02=e.m08,t.m03=e.m12,t.m04=i,t.m06=e.m09,t.m07=e.m13,t.m08=n,t.m09=s,t.m11=e.m14,t.m12=r,t.m13=a,t.m14=o}else t.m00=e.m00,t.m01=e.m04,t.m02=e.m08,t.m03=e.m12,t.m04=e.m01,t.m05=e.m05,t.m06=e.m09,t.m07=e.m13,t.m08=e.m02,t.m09=e.m06,t.m10=e.m10,t.m11=e.m14,t.m12=e.m03,t.m13=e.m07,t.m14=e.m11,t.m15=e.m15;return t},e.invert=function(t,e){var i=e.m00,n=e.m01,r=e.m02,s=e.m03,a=e.m04,o=e.m05,h=e.m06,u=e.m07,l=e.m08,c=e.m09,_=e.m10,f=e.m11,d=e.m12,p=e.m13,m=e.m14,g=e.m15,v=i*o-n*a,y=i*h-r*a,S=i*u-s*a,T=n*h-r*o,A=n*u-s*o,b=r*u-s*h,E=l*p-c*d,C=l*m-_*d,x=l*g-f*d,w=c*m-_*p,R=c*g-f*p,I=_*g-f*m,D=v*I-y*R+S*w+T*x-A*C+b*E;return 0===D?(t.m00=0,t.m01=0,t.m02=0,t.m03=0,t.m04=0,t.m05=0,t.m06=0,t.m07=0,t.m08=0,t.m09=0,t.m10=0,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=0,t):(D=1/D,t.m00=(o*I-h*R+u*w)*D,t.m01=(r*R-n*I-s*w)*D,t.m02=(p*b-m*A+g*T)*D,t.m03=(_*A-c*b-f*T)*D,t.m04=(h*x-a*I-u*C)*D,t.m05=(i*I-r*x+s*C)*D,t.m06=(m*S-d*b-g*y)*D,t.m07=(l*b-_*S+f*y)*D,t.m08=(a*R-o*x+u*E)*D,t.m09=(n*x-i*R-s*E)*D,t.m10=(d*A-p*S+g*v)*D,t.m11=(c*S-l*A-f*v)*D,t.m12=(o*C-a*w-h*E)*D,t.m13=(i*w-n*C+r*E)*D,t.m14=(p*y-d*T-m*v)*D,t.m15=(l*T-c*y+_*v)*D,t)},e.determinant=function(t){var e=t.m00,i=t.m01,n=t.m02,r=t.m03,s=t.m04,a=t.m05,o=t.m06,h=t.m07,u=t.m08,l=t.m09,c=t.m10,_=t.m11,f=t.m12,d=t.m13,p=t.m14,m=t.m15;return(e*a-i*s)*(c*m-_*p)-(e*o-n*s)*(l*m-_*d)+(e*h-r*s)*(l*p-c*d)+(i*o-n*a)*(u*m-_*f)-(i*h-r*a)*(u*p-c*f)+(n*h-r*o)*(u*d-l*f)},e.multiply=function(t,e,i){var n=e.m00,r=e.m01,s=e.m02,a=e.m03,o=e.m04,h=e.m05,u=e.m06,l=e.m07,c=e.m08,_=e.m09,f=e.m10,d=e.m11,p=e.m12,m=e.m13,g=e.m14,v=e.m15,y=i.m00,S=i.m01,T=i.m02,A=i.m03;return t.m00=y*n+S*o+T*c+A*p,t.m01=y*r+S*h+T*_+A*m,t.m02=y*s+S*u+T*f+A*g,t.m03=y*a+S*l+T*d+A*v,y=i.m04,S=i.m05,T=i.m06,A=i.m07,t.m04=y*n+S*o+T*c+A*p,t.m05=y*r+S*h+T*_+A*m,t.m06=y*s+S*u+T*f+A*g,t.m07=y*a+S*l+T*d+A*v,y=i.m08,S=i.m09,T=i.m10,A=i.m11,t.m08=y*n+S*o+T*c+A*p,t.m09=y*r+S*h+T*_+A*m,t.m10=y*s+S*u+T*f+A*g,t.m11=y*a+S*l+T*d+A*v,y=i.m12,S=i.m13,T=i.m14,A=i.m15,t.m12=y*n+S*o+T*c+A*p,t.m13=y*r+S*h+T*_+A*m,t.m14=y*s+S*u+T*f+A*g,t.m15=y*a+S*l+T*d+A*v,t},e.transform=function(t,e,i){var n=i.x,r=i.y,s=i.z;if(e===t)t.m12=e.m00*n+e.m04*r+e.m08*s+e.m12,t.m13=e.m01*n+e.m05*r+e.m09*s+e.m13,t.m14=e.m02*n+e.m06*r+e.m10*s+e.m14,t.m15=e.m03*n+e.m07*r+e.m11*s+e.m15;else{var a=e.m00,o=e.m01,h=e.m02,u=e.m03,l=e.m04,c=e.m05,_=e.m06,f=e.m07,d=e.m08,p=e.m09,m=e.m10,g=e.m11;t.m00=a,t.m01=o,t.m02=h,t.m03=u,t.m04=l,t.m05=c,t.m06=_,t.m07=f,t.m08=d,t.m09=p,t.m10=m,t.m11=g,t.m12=a*n+l*r+d*s+e.m12,t.m13=o*n+c*r+p*s+e.m13,t.m14=h*n+_*r+m*s+e.m14,t.m15=u*n+f*r+g*s+e.m15}return t},e.translate=function(t,e,i){return e===t?(t.m12+=i.x,t.m13+=i.y,t.m14+=i.z):(t.m00=e.m00,t.m01=e.m01,t.m02=e.m02,t.m03=e.m03,t.m04=e.m04,t.m05=e.m05,t.m06=e.m06,t.m07=e.m07,t.m08=e.m08,t.m09=e.m09,t.m10=e.m10,t.m11=e.m11,t.m12=e.m12+i.x,t.m13=e.m13+i.y,t.m14=e.m14+i.z,t.m15=e.m15),t},e.scale=function(t,e,i){var n=i.x,r=i.y,s=i.z;return t.m00=e.m00*n,t.m01=e.m01*n,t.m02=e.m02*n,t.m03=e.m03*n,t.m04=e.m04*r,t.m05=e.m05*r,t.m06=e.m06*r,t.m07=e.m07*r,t.m08=e.m08*s,t.m09=e.m09*s,t.m10=e.m10*s,t.m11=e.m11*s,t.m12=e.m12,t.m13=e.m13,t.m14=e.m14,t.m15=e.m15,t},e.rotate=function(t,e,i,n){var r=n.x,s=n.y,a=n.z,o=Math.sqrt(r*r+s*s+a*a);if(Math.abs(o)<Oi)return null;r*=o=1/o,s*=o,a*=o;var h=Math.sin(i),u=Math.cos(i),l=1-u,c=e.m00,_=e.m01,f=e.m02,d=e.m03,p=e.m04,m=e.m05,g=e.m06,v=e.m07,y=e.m08,S=e.m09,T=e.m10,A=e.m11,b=r*r*l+u,E=s*r*l+a*h,C=a*r*l-s*h,x=r*s*l-a*h,w=s*s*l+u,R=a*s*l+r*h,I=r*a*l+s*h,D=s*a*l-r*h,B=a*a*l+u;return t.m00=c*b+p*E+y*C,t.m01=_*b+m*E+S*C,t.m02=f*b+g*E+T*C,t.m03=d*b+v*E+A*C,t.m04=c*x+p*w+y*R,t.m05=_*x+m*w+S*R,t.m06=f*x+g*w+T*R,t.m07=d*x+v*w+A*R,t.m08=c*I+p*D+y*B,t.m09=_*I+m*D+S*B,t.m10=f*I+g*D+T*B,t.m11=d*I+v*D+A*B,e!==t&&(t.m12=e.m12,t.m13=e.m13,t.m14=e.m14,t.m15=e.m15),t},e.rotateX=function(t,e,i){var n=Math.sin(i),r=Math.cos(i),s=e.m04,a=e.m05,o=e.m06,h=e.m07,u=e.m08,l=e.m09,c=e.m10,_=e.m11;return e!==t&&(t.m00=e.m00,t.m01=e.m01,t.m02=e.m02,t.m03=e.m03,t.m12=e.m12,t.m13=e.m13,t.m14=e.m14,t.m15=e.m15),t.m04=s*r+u*n,t.m05=a*r+l*n,t.m06=o*r+c*n,t.m07=h*r+_*n,t.m08=u*r-s*n,t.m09=l*r-a*n,t.m10=c*r-o*n,t.m11=_*r-h*n,t},e.rotateY=function(t,e,i){var n=Math.sin(i),r=Math.cos(i),s=e.m00,a=e.m01,o=e.m02,h=e.m03,u=e.m08,l=e.m09,c=e.m10,_=e.m11;return e!==t&&(t.m04=e.m04,t.m05=e.m05,t.m06=e.m06,t.m07=e.m07,t.m12=e.m12,t.m13=e.m13,t.m14=e.m14,t.m15=e.m15),t.m00=s*r-u*n,t.m01=a*r-l*n,t.m02=o*r-c*n,t.m03=h*r-_*n,t.m08=s*n+u*r,t.m09=a*n+l*r,t.m10=o*n+c*r,t.m11=h*n+_*r,t},e.rotateZ=function(t,e,i){var n=Math.sin(i),r=Math.cos(i),s=e.m00,a=e.m01,o=e.m02,h=e.m03,u=e.m04,l=e.m05,c=e.m06,_=e.m07;return e!==t&&(t.m08=e.m08,t.m09=e.m09,t.m10=e.m10,t.m11=e.m11,t.m12=e.m12,t.m13=e.m13,t.m14=e.m14,t.m15=e.m15),t.m00=s*r+u*n,t.m01=a*r+l*n,t.m02=o*r+c*n,t.m03=h*r+_*n,t.m04=u*r-s*n,t.m05=l*r-a*n,t.m06=c*r-o*n,t.m07=_*r-h*n,t},e.fromTranslation=function(t,e){return t.m00=1,t.m01=0,t.m02=0,t.m03=0,t.m04=0,t.m05=1,t.m06=0,t.m07=0,t.m08=0,t.m09=0,t.m10=1,t.m11=0,t.m12=e.x,t.m13=e.y,t.m14=e.z,t.m15=1,t},e.fromScaling=function(t,e){return t.m00=e.x,t.m01=0,t.m02=0,t.m03=0,t.m04=0,t.m05=e.y,t.m06=0,t.m07=0,t.m08=0,t.m09=0,t.m10=e.z,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=1,t},e.fromRotation=function(t,e,i){var n=i.x,r=i.y,s=i.z,a=Math.sqrt(n*n+r*r+s*s);if(Math.abs(a)<Oi)return null;n*=a=1/a,r*=a,s*=a;var o=Math.sin(e),h=Math.cos(e),u=1-h;return t.m00=n*n*u+h,t.m01=r*n*u+s*o,t.m02=s*n*u-r*o,t.m03=0,t.m04=n*r*u-s*o,t.m05=r*r*u+h,t.m06=s*r*u+n*o,t.m07=0,t.m08=n*s*u+r*o,t.m09=r*s*u-n*o,t.m10=s*s*u+h,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=1,t},e.fromXRotation=function(t,e){var i=Math.sin(e),n=Math.cos(e);return t.m00=1,t.m01=0,t.m02=0,t.m03=0,t.m04=0,t.m05=n,t.m06=i,t.m07=0,t.m08=0,t.m09=-i,t.m10=n,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=1,t},e.fromYRotation=function(t,e){var i=Math.sin(e),n=Math.cos(e);return t.m00=n,t.m01=0,t.m02=-i,t.m03=0,t.m04=0,t.m05=1,t.m06=0,t.m07=0,t.m08=i,t.m09=0,t.m10=n,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=1,t},e.fromZRotation=function(t,e){var i=Math.sin(e),n=Math.cos(e);return t.m00=n,t.m01=i,t.m02=0,t.m03=0,t.m04=-i,t.m05=n,t.m06=0,t.m07=0,t.m08=0,t.m09=0,t.m10=1,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=1,t},e.fromRT=function(t,e,i){var n=e.x,r=e.y,s=e.z,a=e.w,o=n+n,h=r+r,u=s+s,l=n*o,c=n*h,_=n*u,f=r*h,d=r*u,p=s*u,m=a*o,g=a*h,v=a*u;return t.m00=1-(f+p),t.m01=c+v,t.m02=_-g,t.m03=0,t.m04=c-v,t.m05=1-(l+p),t.m06=d+m,t.m07=0,t.m08=_+g,t.m09=d-m,t.m10=1-(l+f),t.m11=0,t.m12=i.x,t.m13=i.y,t.m14=i.z,t.m15=1,t},e.getTranslation=function(t,e){return t.x=e.m12,t.y=e.m13,t.z=e.m14,t},e.getScaling=function(t,e){var i=Hn.m00=e.m00,n=Hn.m01=e.m01,r=Hn.m02=e.m02,s=Hn.m03=e.m04,a=Hn.m04=e.m05,o=Hn.m05=e.m06,h=Hn.m06=e.m08,u=Hn.m07=e.m09,l=Hn.m08=e.m10;return t.x=Math.sqrt(i*i+n*n+r*r),t.y=Math.sqrt(s*s+a*a+o*o),t.z=Math.sqrt(h*h+u*u+l*l),wn.determinant(Hn)<0&&(t.x*=-1),t},e.getRotation=function(t,e){var i=e.m00+e.m05+e.m10,n=0;return i>0?(n=2*Math.sqrt(i+1),t.w=.25*n,t.x=(e.m06-e.m09)/n,t.y=(e.m08-e.m02)/n,t.z=(e.m01-e.m04)/n):e.m00>e.m05&&e.m00>e.m10?(n=2*Math.sqrt(1+e.m00-e.m05-e.m10),t.w=(e.m06-e.m09)/n,t.x=.25*n,t.y=(e.m01+e.m04)/n,t.z=(e.m08+e.m02)/n):e.m05>e.m10?(n=2*Math.sqrt(1+e.m05-e.m00-e.m10),t.w=(e.m08-e.m02)/n,t.x=(e.m01+e.m04)/n,t.y=.25*n,t.z=(e.m06+e.m09)/n):(n=2*Math.sqrt(1+e.m10-e.m00-e.m05),t.w=(e.m01-e.m04)/n,t.x=(e.m08+e.m02)/n,t.y=(e.m06+e.m09)/n,t.z=.25*n),t},e.toRTS=function(t,i,n,r){e.toSRT(t,i,n,r)},e.toSRT=function(t,e,i,n){i&&gn.set(i,t.m12,t.m13,t.m14);var r=gn.set(zn,t.m00,t.m01,t.m02).length(),s=gn.set(zn,t.m04,t.m05,t.m06).length(),a=gn.set(zn,t.m08,t.m09,t.m10).length();if(n&&(n.x=r,n.y=s,n.z=a),0!==r&&0!==s&&0!==a){Hn.m00=t.m00/r,Hn.m01=t.m01/r,Hn.m02=t.m02/r,Hn.m03=t.m04/s,Hn.m04=t.m05/s,Hn.m05=t.m06/s,Hn.m06=t.m08/a,Hn.m07=t.m09/a,Hn.m08=t.m10/a;var o=wn.determinant(Hn);n&&o<0&&(n.x*=-1),e&&(o<0&&(Hn.m00*=-1,Hn.m01*=-1,Hn.m02*=-1),Bn.fromMat3(e,Hn))}else e&&Bn.identity(e)},e.toEuler=function(t,e){return wn.set(Hn,t.m00,t.m01,t.m02,t.m04,t.m05,t.m06,t.m08,t.m09,t.m10),wn.toEuler(Hn,e)},e.fromRTS=function(t,i,n,r){return e.fromSRT(t,i,n,r)},e.fromSRT=function(t,e,i,n){var r=e.x,s=e.y,a=e.z,o=e.w,h=r+r,u=s+s,l=a+a,c=r*h,_=r*u,f=r*l,d=s*u,p=s*l,m=a*l,g=o*h,v=o*u,y=o*l,S=n.x,T=n.y,A=n.z;return t.m00=(1-(d+m))*S,t.m01=(_+y)*S,t.m02=(f-v)*S,t.m03=0,t.m04=(_-y)*T,t.m05=(1-(c+m))*T,t.m06=(p+g)*T,t.m07=0,t.m08=(f+v)*A,t.m09=(p-g)*A,t.m10=(1-(c+d))*A,t.m11=0,t.m12=i.x,t.m13=i.y,t.m14=i.z,t.m15=1,t},e.fromRTSOrigin=function(t,e,i,n,r){var s=e.x,a=e.y,o=e.z,h=e.w,u=s+s,l=a+a,c=o+o,_=s*u,f=s*l,d=s*c,p=a*l,m=a*c,g=o*c,v=h*u,y=h*l,S=h*c,T=n.x,A=n.y,b=n.z,E=r.x,C=r.y,x=r.z;return t.m00=(1-(p+g))*T,t.m01=(f+S)*T,t.m02=(d-y)*T,t.m03=0,t.m04=(f-S)*A,t.m05=(1-(_+g))*A,t.m06=(m+v)*A,t.m07=0,t.m08=(d+y)*b,t.m09=(m-v)*b,t.m10=(1-(_+p))*b,t.m11=0,t.m12=i.x+E-(t.m00*E+t.m04*C+t.m08*x),t.m13=i.y+C-(t.m01*E+t.m05*C+t.m09*x),t.m14=i.z+x-(t.m02*E+t.m06*C+t.m10*x),t.m15=1,t},e.fromSRTOrigin=function(t,e,i,n,r){var s=e.x,a=e.y,o=e.z,h=e.w,u=s+s,l=a+a,c=o+o,_=s*u,f=s*l,d=s*c,p=a*l,m=a*c,g=o*c,v=h*u,y=h*l,S=h*c,T=n.x,A=n.y,b=n.z,E=r.x,C=r.y,x=r.z;return t.m00=(1-(p+g))*T,t.m01=(f+S)*T,t.m02=(d-y)*T,t.m03=0,t.m04=(f-S)*A,t.m05=(1-(_+g))*A,t.m06=(m+v)*A,t.m07=0,t.m08=(d+y)*b,t.m09=(m-v)*b,t.m10=(1-(_+p))*b,t.m11=0,t.m12=i.x+E-(t.m00*E+t.m04*C+t.m08*x),t.m13=i.y+C-(t.m01*E+t.m05*C+t.m09*x),t.m14=i.z+x-(t.m02*E+t.m06*C+t.m10*x),t.m15=1,t},e.fromQuat=function(t,e){var i=e.x,n=e.y,r=e.z,s=e.w,a=i+i,o=n+n,h=r+r,u=i*a,l=n*a,c=n*o,_=r*a,f=r*o,d=r*h,p=s*a,m=s*o,g=s*h;return t.m00=1-c-d,t.m01=l+g,t.m02=_-m,t.m03=0,t.m04=l-g,t.m05=1-u-d,t.m06=f+p,t.m07=0,t.m08=_+m,t.m09=f-p,t.m10=1-u-c,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=1,t},e.frustum=function(t,e,i,n,r,s,a){var o=1/(i-e),h=1/(r-n),u=1/(s-a);return t.m00=2*s*o,t.m01=0,t.m02=0,t.m03=0,t.m04=0,t.m05=2*s*h,t.m06=0,t.m07=0,t.m08=(i+e)*o,t.m09=(r+n)*h,t.m10=(a+s)*u,t.m11=-1,t.m12=0,t.m13=0,t.m14=a*s*2*u,t.m15=0,t},e.perspective=function(t,e,i,n,r,s,a,o,h){void 0===s&&(s=!0),void 0===a&&(a=-1),void 0===o&&(o=1),void 0===h&&(h=0);var u=1/Math.tan(e/2),l=1/(n-r),c=s?u/i:u,_=(s?u:u*i)*o,f=Gn[h];return t.m00=c*f[0],t.m01=c*f[1],t.m02=0,t.m03=0,t.m04=_*f[2],t.m05=_*f[3],t.m06=0,t.m07=0,t.m08=0,t.m09=0,t.m10=(r-a*n)*l,t.m11=-1,t.m12=0,t.m13=0,t.m14=r*n*l*(1-a),t.m15=0,t},e.ortho=function(t,e,i,n,r,s,a,o,h,u){void 0===o&&(o=-1),void 0===h&&(h=1),void 0===u&&(u=0);var l=1/(e-i),c=1/(n-r)*h,_=1/(s-a),f=-2*l,d=-2*c,p=(e+i)*l,m=(r+n)*c,g=Gn[u];return t.m00=f*g[0],t.m01=f*g[1],t.m02=0,t.m03=0,t.m04=d*g[2],t.m05=d*g[3],t.m06=0,t.m07=0,t.m08=0,t.m09=0,t.m10=_*(1-o),t.m11=0,t.m12=p*g[0]+m*g[2],t.m13=p*g[1]+m*g[3],t.m14=(s-o*a)*_,t.m15=1,t},e.lookAt=function(t,e,i,n){var r=e.x,s=e.y,a=e.z,o=n.x,h=n.y,u=n.z,l=r-i.x,c=s-i.y,_=a-i.z,f=1/Math.sqrt(l*l+c*c+_*_),d=h*(_*=f)-u*(c*=f),p=u*(l*=f)-o*_,m=o*c-h*l,g=c*(m*=f=1/Math.sqrt(d*d+p*p+m*m))-_*(p*=f),v=_*(d*=f)-l*m,y=l*p-c*d;return t.m00=d,t.m01=g,t.m02=l,t.m03=0,t.m04=p,t.m05=v,t.m06=c,t.m07=0,t.m08=m,t.m09=y,t.m10=_,t.m11=0,t.m12=-(d*r+p*s+m*a),t.m13=-(g*r+v*s+y*a),t.m14=-(l*r+c*s+_*a),t.m15=1,t},e.inverseTranspose=function(t,e){var i=e.m00,n=e.m01,r=e.m02,s=e.m03,a=e.m04,o=e.m05,h=e.m06,u=e.m07,l=e.m08,c=e.m09,_=e.m10,f=e.m11,d=e.m12,p=e.m13,m=e.m14,g=e.m15,v=i*o-n*a,y=i*h-r*a,S=i*u-s*a,T=n*h-r*o,A=n*u-s*o,b=r*u-s*h,E=l*p-c*d,C=l*m-_*d,x=l*g-f*d,w=c*m-_*p,R=c*g-f*p,I=_*g-f*m,D=v*I-y*R+S*w+T*x-A*C+b*E;return D?(D=1/D,t.m00=(o*I-h*R+u*w)*D,t.m01=(h*x-a*I-u*C)*D,t.m02=(a*R-o*x+u*E)*D,t.m03=0,t.m04=(r*R-n*I-s*w)*D,t.m05=(i*I-r*x+s*C)*D,t.m06=(n*x-i*R-s*E)*D,t.m07=0,t.m08=(p*b-m*A+g*T)*D,t.m09=(m*S-d*b-g*y)*D,t.m10=(d*A-p*S+g*v)*D,t.m11=0,t.m12=0,t.m13=0,t.m14=0,t.m15=1,t):null},e.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.m00,t[i+1]=e.m01,t[i+2]=e.m02,t[i+3]=e.m03,t[i+4]=e.m04,t[i+5]=e.m05,t[i+6]=e.m06,t[i+7]=e.m07,t[i+8]=e.m08,t[i+9]=e.m09,t[i+10]=e.m10,t[i+11]=e.m11,t[i+12]=e.m12,t[i+13]=e.m13,t[i+14]=e.m14,t[i+15]=e.m15,t},e.fromArray=function(t,e,i){return void 0===i&&(i=0),t.m00=e[i+0],t.m01=e[i+1],t.m02=e[i+2],t.m03=e[i+3],t.m04=e[i+4],t.m05=e[i+5],t.m06=e[i+6],t.m07=e[i+7],t.m08=e[i+8],t.m09=e[i+9],t.m10=e[i+10],t.m11=e[i+11],t.m12=e[i+12],t.m13=e[i+13],t.m14=e[i+14],t.m15=e[i+15],t},e.add=function(t,e,i){return t.m00=e.m00+i.m00,t.m01=e.m01+i.m01,t.m02=e.m02+i.m02,t.m03=e.m03+i.m03,t.m04=e.m04+i.m04,t.m05=e.m05+i.m05,t.m06=e.m06+i.m06,t.m07=e.m07+i.m07,t.m08=e.m08+i.m08,t.m09=e.m09+i.m09,t.m10=e.m10+i.m10,t.m11=e.m11+i.m11,t.m12=e.m12+i.m12,t.m13=e.m13+i.m13,t.m14=e.m14+i.m14,t.m15=e.m15+i.m15,t},e.subtract=function(t,e,i){return t.m00=e.m00-i.m00,t.m01=e.m01-i.m01,t.m02=e.m02-i.m02,t.m03=e.m03-i.m03,t.m04=e.m04-i.m04,t.m05=e.m05-i.m05,t.m06=e.m06-i.m06,t.m07=e.m07-i.m07,t.m08=e.m08-i.m08,t.m09=e.m09-i.m09,t.m10=e.m10-i.m10,t.m11=e.m11-i.m11,t.m12=e.m12-i.m12,t.m13=e.m13-i.m13,t.m14=e.m14-i.m14,t.m15=e.m15-i.m15,t},e.multiplyScalar=function(t,e,i){return t.m00=e.m00*i,t.m01=e.m01*i,t.m02=e.m02*i,t.m03=e.m03*i,t.m04=e.m04*i,t.m05=e.m05*i,t.m06=e.m06*i,t.m07=e.m07*i,t.m08=e.m08*i,t.m09=e.m09*i,t.m10=e.m10*i,t.m11=e.m11*i,t.m12=e.m12*i,t.m13=e.m13*i,t.m14=e.m14*i,t.m15=e.m15*i,t},e.multiplyScalarAndAdd=function(t,e,i,n){return t.m00=e.m00+i.m00*n,t.m01=e.m01+i.m01*n,t.m02=e.m02+i.m02*n,t.m03=e.m03+i.m03*n,t.m04=e.m04+i.m04*n,t.m05=e.m05+i.m05*n,t.m06=e.m06+i.m06*n,t.m07=e.m07+i.m07*n,t.m08=e.m08+i.m08*n,t.m09=e.m09+i.m09*n,t.m10=e.m10+i.m10*n,t.m11=e.m11+i.m11*n,t.m12=e.m12+i.m12*n,t.m13=e.m13+i.m13*n,t.m14=e.m14+i.m14*n,t.m15=e.m15+i.m15*n,t},e.strictEquals=function(t,e){return t.m00===e.m00&&t.m01===e.m01&&t.m02===e.m02&&t.m03===e.m03&&t.m04===e.m04&&t.m05===e.m05&&t.m06===e.m06&&t.m07===e.m07&&t.m08===e.m08&&t.m09===e.m09&&t.m10===e.m10&&t.m11===e.m11&&t.m12===e.m12&&t.m13===e.m13&&t.m14===e.m14&&t.m15===e.m15},e.equals=function(t,e,i){return void 0===i&&(i=Oi),Math.abs(t.m00-e.m00)<=i*Math.max(1,Math.abs(t.m00),Math.abs(e.m00))&&Math.abs(t.m01-e.m01)<=i*Math.max(1,Math.abs(t.m01),Math.abs(e.m01))&&Math.abs(t.m02-e.m02)<=i*Math.max(1,Math.abs(t.m02),Math.abs(e.m02))&&Math.abs(t.m03-e.m03)<=i*Math.max(1,Math.abs(t.m03),Math.abs(e.m03))&&Math.abs(t.m04-e.m04)<=i*Math.max(1,Math.abs(t.m04),Math.abs(e.m04))&&Math.abs(t.m05-e.m05)<=i*Math.max(1,Math.abs(t.m05),Math.abs(e.m05))&&Math.abs(t.m06-e.m06)<=i*Math.max(1,Math.abs(t.m06),Math.abs(e.m06))&&Math.abs(t.m07-e.m07)<=i*Math.max(1,Math.abs(t.m07),Math.abs(e.m07))&&Math.abs(t.m08-e.m08)<=i*Math.max(1,Math.abs(t.m08),Math.abs(e.m08))&&Math.abs(t.m09-e.m09)<=i*Math.max(1,Math.abs(t.m09),Math.abs(e.m09))&&Math.abs(t.m10-e.m10)<=i*Math.max(1,Math.abs(t.m10),Math.abs(e.m10))&&Math.abs(t.m11-e.m11)<=i*Math.max(1,Math.abs(t.m11),Math.abs(e.m11))&&Math.abs(t.m12-e.m12)<=i*Math.max(1,Math.abs(t.m12),Math.abs(e.m12))&&Math.abs(t.m13-e.m13)<=i*Math.max(1,Math.abs(t.m13),Math.abs(e.m13))&&Math.abs(t.m14-e.m14)<=i*Math.max(1,Math.abs(t.m14),Math.abs(e.m14))&&Math.abs(t.m15-e.m15)<=i*Math.max(1,Math.abs(t.m15),Math.abs(e.m15))};var i=e.prototype;return i.clone=function(){return new e(this.m00,this.m01,this.m02,this.m03,this.m04,this.m05,this.m06,this.m07,this.m08,this.m09,this.m10,this.m11,this.m12,this.m13,this.m14,this.m15)},i.set=function(t,e,i,n,r,s,a,o,h,u,l,c,_,f,d,p){return void 0===t&&(t=1),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=1),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=0),void 0===l&&(l=1),void 0===c&&(c=0),void 0===_&&(_=0),void 0===f&&(f=0),void 0===d&&(d=0),void 0===p&&(p=1),"object"==typeof t?(this.m01=t.m01,this.m02=t.m02,this.m03=t.m03,this.m04=t.m04,this.m05=t.m05,this.m06=t.m06,this.m07=t.m07,this.m08=t.m08,this.m09=t.m09,this.m10=t.m10,this.m11=t.m11,this.m12=t.m12,this.m13=t.m13,this.m14=t.m14,this.m15=t.m15,this.m00=t.m00):(this.m01=e,this.m02=i,this.m03=n,this.m04=r,this.m05=s,this.m06=a,this.m07=o,this.m08=h,this.m09=u,this.m10=l,this.m11=c,this.m12=_,this.m13=f,this.m14=d,this.m15=p,this.m00=t),this},i.equals=function(t,e){return void 0===e&&(e=Oi),!(Math.abs(this.m00)===1/0||Math.abs(this.m01)===1/0||Math.abs(this.m02)===1/0||Math.abs(this.m03)===1/0||Math.abs(this.m04)===1/0||Math.abs(this.m05)===1/0||Math.abs(this.m06)===1/0||Math.abs(this.m07)===1/0||Math.abs(this.m08)===1/0||Math.abs(this.m09)===1/0||Math.abs(this.m10)===1/0||Math.abs(this.m11)===1/0||Math.abs(this.m12)===1/0||Math.abs(this.m13)===1/0||Math.abs(this.m14)===1/0||Math.abs(this.m15)===1/0)&&Math.abs(this.m00-t.m00)<=e*Math.max(1,Math.abs(this.m00),Math.abs(t.m00))&&Math.abs(this.m01-t.m01)<=e*Math.max(1,Math.abs(this.m01),Math.abs(t.m01))&&Math.abs(this.m02-t.m02)<=e*Math.max(1,Math.abs(this.m02),Math.abs(t.m02))&&Math.abs(this.m03-t.m03)<=e*Math.max(1,Math.abs(this.m03),Math.abs(t.m03))&&Math.abs(this.m04-t.m04)<=e*Math.max(1,Math.abs(this.m04),Math.abs(t.m04))&&Math.abs(this.m05-t.m05)<=e*Math.max(1,Math.abs(this.m05),Math.abs(t.m05))&&Math.abs(this.m06-t.m06)<=e*Math.max(1,Math.abs(this.m06),Math.abs(t.m06))&&Math.abs(this.m07-t.m07)<=e*Math.max(1,Math.abs(this.m07),Math.abs(t.m07))&&Math.abs(this.m08-t.m08)<=e*Math.max(1,Math.abs(this.m08),Math.abs(t.m08))&&Math.abs(this.m09-t.m09)<=e*Math.max(1,Math.abs(this.m09),Math.abs(t.m09))&&Math.abs(this.m10-t.m10)<=e*Math.max(1,Math.abs(this.m10),Math.abs(t.m10))&&Math.abs(this.m11-t.m11)<=e*Math.max(1,Math.abs(this.m11),Math.abs(t.m11))&&Math.abs(this.m12-t.m12)<=e*Math.max(1,Math.abs(this.m12),Math.abs(t.m12))&&Math.abs(this.m13-t.m13)<=e*Math.max(1,Math.abs(this.m13),Math.abs(t.m13))&&Math.abs(this.m14-t.m14)<=e*Math.max(1,Math.abs(this.m14),Math.abs(t.m14))&&Math.abs(this.m15-t.m15)<=e*Math.max(1,Math.abs(this.m15),Math.abs(t.m15))},i.strictEquals=function(t){return this.m00===t.m00&&this.m01===t.m01&&this.m02===t.m02&&this.m03===t.m03&&this.m04===t.m04&&this.m05===t.m05&&this.m06===t.m06&&this.m07===t.m07&&this.m08===t.m08&&this.m09===t.m09&&this.m10===t.m10&&this.m11===t.m11&&this.m12===t.m12&&this.m13===t.m13&&this.m14===t.m14&&this.m15===t.m15},i.toString=function(){return"[\n"+this.m00+", "+this.m01+", "+this.m02+", "+this.m03+",\n"+this.m04+", "+this.m05+", "+this.m06+", "+this.m07+",\n"+this.m08+", "+this.m09+", "+this.m10+", "+this.m11+",\n"+this.m12+", "+this.m13+", "+this.m14+", "+this.m15+"\n]"},i.identity=function(){return this.m00=1,this.m01=0,this.m02=0,this.m03=0,this.m04=0,this.m05=1,this.m06=0,this.m07=0,this.m08=0,this.m09=0,this.m10=1,this.m11=0,this.m12=0,this.m13=0,this.m14=0,this.m15=1,this},i.zero=function(){return this.m00=0,this.m01=0,this.m02=0,this.m03=0,this.m04=0,this.m05=0,this.m06=0,this.m07=0,this.m08=0,this.m09=0,this.m10=0,this.m11=0,this.m12=0,this.m13=0,this.m14=0,this.m15=0,this},i.transpose=function(){var t=this.m01,e=this.m02,i=this.m03,n=this.m06,r=this.m07,s=this.m11;return this.m01=this.m04,this.m02=this.m08,this.m03=this.m12,this.m04=t,this.m06=this.m09,this.m07=this.m13,this.m08=e,this.m09=n,this.m11=this.m14,this.m12=i,this.m13=r,this.m14=s,this},i.invert=function(){var t=this.m00,e=this.m01,i=this.m02,n=this.m03,r=this.m04,s=this.m05,a=this.m06,o=this.m07,h=this.m08,u=this.m09,l=this.m10,c=this.m11,_=this.m12,f=this.m13,d=this.m14,p=this.m15,m=t*s-e*r,g=t*a-i*r,v=t*o-n*r,y=e*a-i*s,S=e*o-n*s,T=i*o-n*a,A=h*f-u*_,b=h*d-l*_,E=h*p-c*_,C=u*d-l*f,x=u*p-c*f,w=l*p-c*d,R=m*w-g*x+v*C+y*E-S*b+T*A;return 0===R?(this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),this):(R=1/R,this.m00=(s*w-a*x+o*C)*R,this.m01=(i*x-e*w-n*C)*R,this.m02=(f*T-d*S+p*y)*R,this.m03=(l*S-u*T-c*y)*R,this.m04=(a*E-r*w-o*b)*R,this.m05=(t*w-i*E+n*b)*R,this.m06=(d*v-_*T-p*g)*R,this.m07=(h*T-l*v+c*g)*R,this.m08=(r*x-s*E+o*A)*R,this.m09=(e*E-t*x-n*A)*R,this.m10=(_*S-f*v+p*m)*R,this.m11=(u*v-h*S-c*m)*R,this.m12=(s*b-r*C-a*A)*R,this.m13=(t*C-e*b+i*A)*R,this.m14=(f*g-_*y-d*m)*R,this.m15=(h*y-u*g+l*m)*R,this)},i.determinant=function(){var t=this.m00,e=this.m01,i=this.m02,n=this.m03,r=this.m04,s=this.m05,a=this.m06,o=this.m07,h=this.m08,u=this.m09,l=this.m10,c=this.m11,_=this.m12,f=this.m13,d=this.m14,p=this.m15;return(t*s-e*r)*(l*p-c*d)-(t*a-i*r)*(u*p-c*f)+(t*o-n*r)*(u*d-l*f)+(e*a-i*s)*(h*p-c*_)-(e*o-n*s)*(h*d-l*_)+(i*o-n*a)*(h*f-u*_)},i.add=function(t){return this.m00+=t.m00,this.m01+=t.m01,this.m02+=t.m02,this.m03+=t.m03,this.m04+=t.m04,this.m05+=t.m05,this.m06+=t.m06,this.m07+=t.m07,this.m08+=t.m08,this.m09+=t.m09,this.m10+=t.m10,this.m11+=t.m11,this.m12+=t.m12,this.m13+=t.m13,this.m14+=t.m14,this.m15+=t.m15,this},i.subtract=function(t){return this.m00-=t.m00,this.m01-=t.m01,this.m02-=t.m02,this.m03-=t.m03,this.m04-=t.m04,this.m05-=t.m05,this.m06-=t.m06,this.m07-=t.m07,this.m08-=t.m08,this.m09-=t.m09,this.m10-=t.m10,this.m11-=t.m11,this.m12-=t.m12,this.m13-=t.m13,this.m14-=t.m14,this.m15-=t.m15,this},i.multiply=function(t){var e=this.m00,i=this.m01,n=this.m02,r=this.m03,s=this.m04,a=this.m05,o=this.m06,h=this.m07,u=this.m08,l=this.m09,c=this.m10,_=this.m11,f=this.m12,d=this.m13,p=this.m14,m=this.m15,g=t.m00,v=t.m01,y=t.m02,S=t.m03;return this.m00=g*e+v*s+y*u+S*f,this.m01=g*i+v*a+y*l+S*d,this.m02=g*n+v*o+y*c+S*p,this.m03=g*r+v*h+y*_+S*m,g=t.m04,v=t.m05,y=t.m06,S=t.m07,this.m04=g*e+v*s+y*u+S*f,this.m05=g*i+v*a+y*l+S*d,this.m06=g*n+v*o+y*c+S*p,this.m07=g*r+v*h+y*_+S*m,g=t.m08,v=t.m09,y=t.m10,S=t.m11,this.m08=g*e+v*s+y*u+S*f,this.m09=g*i+v*a+y*l+S*d,this.m10=g*n+v*o+y*c+S*p,this.m11=g*r+v*h+y*_+S*m,g=t.m12,v=t.m13,y=t.m14,S=t.m15,this.m12=g*e+v*s+y*u+S*f,this.m13=g*i+v*a+y*l+S*d,this.m14=g*n+v*o+y*c+S*p,this.m15=g*r+v*h+y*_+S*m,this},i.multiplyScalar=function(t){return this.m00*=t,this.m01*=t,this.m02*=t,this.m03*=t,this.m04*=t,this.m05*=t,this.m06*=t,this.m07*=t,this.m08*=t,this.m09*=t,this.m10*=t,this.m11*=t,this.m12*=t,this.m13*=t,this.m14*=t,this.m15*=t,this},i.translate=function(t){return this.m12+=t.x,this.m13+=t.y,this.m14+=t.z,this},i.transform=function(t){var e=t.x,i=t.y,n=t.z,r=this.m00,s=this.m01,a=this.m02,o=this.m03,h=this.m04,u=this.m05,l=this.m06,c=this.m07,_=this.m08,f=this.m09,d=this.m10,p=this.m11;return this.m12=r*e+h*i+_*n+this.m12,this.m13=s*e+u*i+f*n+this.m13,this.m14=a*e+l*i+d*n+this.m14,this.m15=o*e+c*i+p*n+this.m15,this},i.scale=function(t){var e=t.x,i=t.y,n=t.z;return this.m00*=e,this.m01*=e,this.m02*=e,this.m03*=e,this.m04*=i,this.m05*=i,this.m06*=i,this.m07*=i,this.m08*=n,this.m09*=n,this.m10*=n,this.m11*=n,this},i.rotate=function(t,e){var i=e.x,n=e.y,r=e.z,s=Math.sqrt(i*i+n*n+r*r);if(Math.abs(s)<Oi)return null;i*=s=1/s,n*=s,r*=s;var a=Math.sin(t),o=Math.cos(t),h=1-o,u=this.m00,l=this.m01,c=this.m02,_=this.m03,f=this.m04,d=this.m05,p=this.m06,m=this.m07,g=this.m08,v=this.m09,y=this.m10,S=this.m11,T=i*i*h+o,A=n*i*h+r*a,b=r*i*h-n*a,E=i*n*h-r*a,C=n*n*h+o,x=r*n*h+i*a,w=i*r*h+n*a,R=n*r*h-i*a,I=r*r*h+o;return this.m00=u*T+f*A+g*b,this.m01=l*T+d*A+v*b,this.m02=c*T+p*A+y*b,this.m03=_*T+m*A+S*b,this.m04=u*E+f*C+g*x,this.m05=l*E+d*C+v*x,this.m06=c*E+p*C+y*x,this.m07=_*E+m*C+S*x,this.m08=u*w+f*R+g*I,this.m09=l*w+d*R+v*I,this.m10=c*w+p*R+y*I,this.m11=_*w+m*R+S*I,this},i.getTranslation=function(t){return t.x=this.m12,t.y=this.m13,t.z=this.m14,t},i.getScale=function(t){var e=Hn.m00=this.m00,i=Hn.m01=this.m01,n=Hn.m02=this.m02,r=Hn.m03=this.m04,s=Hn.m04=this.m05,a=Hn.m05=this.m06,o=Hn.m06=this.m08,h=Hn.m07=this.m09,u=Hn.m08=this.m10;return t.x=Math.sqrt(e*e+i*i+n*n),t.y=Math.sqrt(r*r+s*s+a*a),t.z=Math.sqrt(o*o+h*h+u*u),wn.determinant(Hn)<0&&(t.x*=-1),t},i.getRotation=function(t){var e=gn.set(zn,this.m00,this.m01,this.m02).length(),i=gn.set(zn,this.m04,this.m05,this.m06).length(),n=gn.set(zn,this.m08,this.m09,this.m10).length();return Hn.m00=this.m00/e,Hn.m01=this.m01/e,Hn.m02=this.m02/e,Hn.m03=this.m04/i,Hn.m04=this.m05/i,Hn.m05=this.m06/i,Hn.m06=this.m08/n,Hn.m07=this.m09/n,Hn.m08=this.m10/n,wn.determinant(Hn)<0&&(Hn.m00*=-1,Hn.m01*=-1,Hn.m02*=-1),Bn.fromMat3(t,Hn)},i.fromRTS=function(t,e,i){var n=t.x,r=t.y,s=t.z,a=t.w,o=n+n,h=r+r,u=s+s,l=n*o,c=n*h,_=n*u,f=r*h,d=r*u,p=s*u,m=a*o,g=a*h,v=a*u,y=i.x,S=i.y,T=i.z;return this.m00=(1-(f+p))*y,this.m01=(c+v)*y,this.m02=(_-g)*y,this.m03=0,this.m04=(c-v)*S,this.m05=(1-(l+p))*S,this.m06=(d+m)*S,this.m07=0,this.m08=(_+g)*T,this.m09=(d-m)*T,this.m10=(1-(l+f))*T,this.m11=0,this.m12=e.x,this.m13=e.y,this.m14=e.z,this.m15=1,this},i.fromSRT=function(t,e,i){var n=t.x,r=t.y,s=t.z,a=t.w,o=n+n,h=r+r,u=s+s,l=n*o,c=n*h,_=n*u,f=r*h,d=r*u,p=s*u,m=a*o,g=a*h,v=a*u,y=i.x,S=i.y,T=i.z;return this.m00=(1-(f+p))*y,this.m01=(c+v)*y,this.m02=(_-g)*y,this.m03=0,this.m04=(c-v)*S,this.m05=(1-(l+p))*S,this.m06=(d+m)*S,this.m07=0,this.m08=(_+g)*T,this.m09=(d-m)*T,this.m10=(1-(l+f))*T,this.m11=0,this.m12=e.x,this.m13=e.y,this.m14=e.z,this.m15=1,this},i.fromQuat=function(t){var e=t.x,i=t.y,n=t.z,r=t.w,s=e+e,a=i+i,o=n+n,h=e*s,u=i*s,l=i*a,c=n*s,_=n*a,f=n*o,d=r*s,p=r*a,m=r*o;return this.m00=1-l-f,this.m01=u+m,this.m02=c-p,this.m03=0,this.m04=u-m,this.m05=1-h-f,this.m06=_+d,this.m07=0,this.m08=c+p,this.m09=_-d,this.m10=1-h-l,this.m11=0,this.m12=0,this.m13=0,this.m14=0,this.m15=1,this},e}(Ie));Mn=Vn,Vn.IDENTITY=Object.freeze(new Mn);var Un,zn=new gn,Hn=new wn;function Wn(t,e,i,n,r,s,a,o,h,u,l,c,_,f,d,p){return new Vn(t,e,i,n,r,s,a,o,h,u,l,c,_,f,d,p)}Ci.fastDefine("cc.Mat4",Vn,{m00:1,m01:0,m02:0,m03:0,m04:0,m05:1,m06:0,m07:0,m08:0,m09:0,m10:1,m11:0,m12:0,m13:0,m14:0,m15:1}),S.Mat4=Vn,S.mat4=Wn;var Xn,jn=t("aP",function(t){function e(e,i){var n;return n=t.call(this)||this,"object"==typeof e?(n.x=e.x,n.y=e.y):(n.x=e||0,n.y=i||0),n}s(e,t),e.clone=function(t){return new e(t.x,t.y)},e.copy=function(t,e){return t.x=e.x,t.y=e.y,t},e.set=function(t,e,i){return t.x=e,t.y=i,t},e.add=function(t,e,i){return t.x=e.x+i.x,t.y=e.y+i.y,t},e.subtract=function(t,e,i){return t.x=e.x-i.x,t.y=e.y-i.y,t},e.multiply=function(t,e,i){return t.x=e.x*i.x,t.y=e.y*i.y,t},e.divide=function(t,e,i){return t.x=e.x/i.x,t.y=e.y/i.y,t},e.ceil=function(t,e){return t.x=Math.ceil(e.x),t.y=Math.ceil(e.y),t},e.floor=function(t,e){return t.x=Math.floor(e.x),t.y=Math.floor(e.y),t},e.min=function(t,e,i){return t.x=Math.min(e.x,i.x),t.y=Math.min(e.y,i.y),t},e.max=function(t,e,i){return t.x=Math.max(e.x,i.x),t.y=Math.max(e.y,i.y),t},e.round=function(t,e){return t.x=Math.round(e.x),t.y=Math.round(e.y),t},e.multiplyScalar=function(t,e,i){return t.x=e.x*i,t.y=e.y*i,t},e.scaleAndAdd=function(t,e,i,n){return t.x=e.x+i.x*n,t.y=e.y+i.y*n,t},e.distance=function(t,e){var i=e.x-t.x,n=e.y-t.y;return Math.sqrt(i*i+n*n)},e.squaredDistance=function(t,e){var i=e.x-t.x,n=e.y-t.y;return i*i+n*n},e.len=function(t){var e=t.x,i=t.y;return Math.sqrt(e*e+i*i)},e.lengthSqr=function(t){var e=t.x,i=t.y;return e*e+i*i},e.negate=function(t,e){return t.x=-e.x,t.y=-e.y,t},e.inverse=function(t,e){return t.x=1/e.x,t.y=1/e.y,t},e.inverseSafe=function(t,e){var i=e.x,n=e.y;return Math.abs(i)<Oi?t.x=0:t.x=1/i,Math.abs(n)<Oi?t.y=0:t.y=1/n,t},e.normalize=function(t,e){var i=e.x,n=e.y,r=i*i+n*n;return r>0?(r=1/Math.sqrt(r),t.x=i*r,t.y=n*r):(t.x=0,t.y=0),t},e.dot=function(t,e){return t.x*e.x+t.y*e.y},e.cross=function(t,e,i){return t instanceof gn?(t.x=t.y=0,t.z=e.x*i.y-e.y*i.x,t):t.x*e.y-t.y*e.x},e.lerp=function(t,e,i,n){var r=e.x,s=e.y;return t.x=r+n*(i.x-r),t.y=s+n*(i.y-s),t},e.random=function(t,e){e=e||1;var i=2*zi()*Math.PI;return t.x=Math.cos(i)*e,t.y=Math.sin(i)*e,t},e.transformMat3=function(t,e,i){var n=e.x,r=e.y;return t.x=i.m00*n+i.m03*r+i.m06,t.y=i.m01*n+i.m04*r+i.m07,t},e.transformMat4=function(t,e,i){var n=e.x,r=e.y;return t.x=i.m00*n+i.m04*r+i.m12,t.y=i.m01*n+i.m05*r+i.m13,t},e.str=function(t){return"Vec2("+t.x+", "+t.y+")"},e.toArray=function(t,e,i){return void 0===i&&(i=0),t[i+0]=e.x,t[i+1]=e.y,t},e.fromArray=function(t,e,i){return void 0===i&&(i=0),t.x=e[i+0],t.y=e[i+1],t},e.strictEquals=function(t,e){return t.x===e.x&&t.y===e.y},e.equals=function(t,e,i){return void 0===i&&(i=Oi),Math.abs(t.x-e.x)<=i*Math.max(1,Math.abs(t.x),Math.abs(e.x))&&Math.abs(t.y-e.y)<=i*Math.max(1,Math.abs(t.y),Math.abs(e.y))},e.angle=function(t,e){var i=t.x*t.x+t.y*t.y,n=e.x*e.x+e.y*e.y;if(0===i||0===n)return 0;var r=(t.x*e.x+t.y*e.y)/Math.sqrt(i*n);return r=Fi(r,-1,1),Math.acos(r)};var i=e.prototype;return i.clone=function(){return new e(this.x,this.y)},i.set=function(t,e){return"object"==typeof t?(this.x=t.x,this.y=t.y):(this.x=t||0,this.y=e||0),this},i.equals=function(t,e){return void 0===e&&(e=Oi),Math.abs(this.x-t.x)<=e*Math.max(1,Math.abs(this.x),Math.abs(t.x))&&Math.abs(this.y-t.y)<=e*Math.max(1,Math.abs(this.y),Math.abs(t.y))},i.equals2f=function(t,e,i){return void 0===i&&(i=Oi),Math.abs(this.x-t)<=i*Math.max(1,Math.abs(this.x),Math.abs(t))&&Math.abs(this.y-e)<=i*Math.max(1,Math.abs(this.y),Math.abs(e))},i.strictEquals=function(t){return t&&this.x===t.x&&this.y===t.y},i.strictEquals2f=function(t,e){return this.x===t&&this.y===e},i.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+")"},i.lerp=function(t,e){var i=this.x,n=this.y;return this.x=i+e*(t.x-i),this.y=n+e*(t.y-n),this},i.clampf=function(t,e){return this.x=Fi(this.x,t.x,e.x),this.y=Fi(this.y,t.y,e.y),this},i.add=function(t){return this.x+=t.x,this.y+=t.y,this},i.add2f=function(t,e){return this.x+=t,this.y+=e,this},i.subtract=function(t){return this.x-=t.x,this.y-=t.y,this},i.subtract2f=function(t,e){return this.x-=t,this.y-=e,this},i.multiplyScalar=function(t){return"object"==typeof t&&tt(16359),this.x*=t,this.y*=t,this},i.multiply=function(t){return"object"!=typeof t&&tt(16360),this.x*=t.x,this.y*=t.y,this},i.multiply2f=function(t,e){return this.x*=t,this.y*=e,this},i.divide=function(t){return this.x/=t.x,this.y/=t.y,this},i.divide2f=function(t,e){return this.x/=t,this.y/=e,this},i.negative=function(){return this.x=-this.x,this.y=-this.y,this},i.dot=function(t){return this.x*t.x+this.y*t.y},i.cross=function(t){return this.x*t.y-this.y*t.x},i.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y)},i.lengthSqr=function(){return this.x*this.x+this.y*this.y},i.normalize=function(){var t=this.x,e=this.y,i=t*t+e*e;return i>0&&(i=1/Math.sqrt(i),this.x*=i,this.y*=i),this},i.angle=function(t){var e=this.lengthSqr(),i=t.lengthSqr();if(0===e||0===i)return 0;var n=this.dot(t)/Math.sqrt(e*i);return n=Fi(n,-1,1),Math.acos(n)},i.signAngle=function(t){var e=this.cross(t),i=this.dot(t);return Math.atan2(e,i)},i.rotate=function(t){var e=this.x,i=this.y,n=Math.sin(t),r=Math.cos(t);return this.x=r*e-n*i,this.y=n*e+r*i,this},i.project=function(t){var e=this.dot(t)/t.dot(t);return this.x=t.x*e,this.y=t.y*e,this},i.transformMat4=function(t){var e=this.x,i=this.y;return this.x=t.m00*e+t.m04*i+t.m12,this.y=t.m01*e+t.m05*i+t.m13,this},i.toVec3=function(){return new gn(this.x,this.y,0)},e}(Ie));function Yn(t,e){return new jn(t,e)}Un=jn,jn.ZERO=Object.freeze(new Un(0,0)),jn.ONE=Object.freeze(new Un(1,1)),jn.NEG_ONE=Object.freeze(new Un(-1,-1)),jn.UNIT_X=Object.freeze(new Un(1,0)),jn.UNIT_Y=Object.freeze(new Un(0,1)),Ci.fastDefine("cc.Vec2",jn,{x:0,y:0}),S.Vec2=jn,S.v2=Yn,ut(jn,"Vec2",[{name:"sub",newName:"subtract",target:jn,targetName:"Vec2"},{name:"mul",newName:"multiply",target:jn,targetName:"Vec2"},{name:"div",newName:"divide",target:jn,targetName:"Vec2"},{name:"dist",newName:"distance",target:jn,targetName:"Vec2"},{name:"sqrDist",newName:"squaredDistance",target:jn,targetName:"Vec2"},{name:"mag",newName:"len",target:jn,targetName:"Vec2"},{name:"sqrMag",newName:"lengthSqr",target:jn,targetName:"Vec2"},{name:"scale",newName:"multiplyScalar",target:jn,targetName:"Vec2"},{name:"exactEquals",newName:"strictEquals",target:jn,targetName:"Vec2"}]),ut(jn.prototype,"Vec2",[{name:"mag",newName:"length",target:jn.prototype,targetName:"Vec2"},{name:"magSqr",newName:"lengthSqr",target:jn.prototype,targetName:"Vec2"},{name:"scale",newName:"multiplyScalar",target:jn.prototype,targetName:"Vec2"},{name:"exactEquals",newName:"strictEquals",target:jn.prototype,targetName:"Vec2"}]),ut(gn,"Vec3",[{name:"sub",newName:"subtract",target:gn,targetName:"Vec3"},{name:"mul",newName:"multiply",target:gn,targetName:"Vec3"},{name:"div",newName:"divide",target:gn,targetName:"Vec3"},{name:"dist",newName:"distance",target:gn,targetName:"Vec3"},{name:"sqrDist",newName:"squaredDistance",target:gn,targetName:"Vec3"},{name:"mag",newName:"len",target:gn,targetName:"Vec3"},{name:"sqrMag",newName:"lengthSqr",target:gn,targetName:"Vec3"},{name:"scale",newName:"multiplyScalar",target:gn,targetName:"Vec3"},{name:"exactEquals",newName:"strictEquals",target:gn,targetName:"Vec3"}]),ut(gn.prototype,"Vec3",[{name:"mag",newName:"length",target:gn.prototype,targetName:"Vec3"},{name:"magSqr",newName:"lengthSqr",target:gn.prototype,targetName:"Vec3"},{name:"scale",newName:"multiplyScalar",target:gn.prototype,targetName:"Vec3"},{name:"exactEquals",newName:"strictEquals",target:gn.prototype,targetName:"Vec3"}]),ut(cn,"Vec4",[{name:"sub",newName:"subtract",target:cn,targetName:"Vec4"},{name:"mul",newName:"multiply",target:cn,targetName:"Vec4"},{name:"div",newName:"divide",target:cn,targetName:"Vec4"},{name:"dist",newName:"distance",target:cn,targetName:"Vec4"},{name:"sqrDist",newName:"squaredDistance",target:cn,targetName:"Vec4"},{name:"mag",newName:"len",target:cn,targetName:"Vec4"},{name:"sqrMag",newName:"lengthSqr",target:cn,targetName:"Vec4"},{name:"scale",newName:"multiplyScalar",target:cn,targetName:"Vec4"},{name:"exactEquals",newName:"strictEquals",target:cn,targetName:"Vec4"}]),ut(cn.prototype,"Vec4",[{name:"mag",newName:"length",target:cn.prototype,targetName:"Vec4"},{name:"magSqr",newName:"lengthSqr",target:cn.prototype,targetName:"Vec4"},{name:"scale",newName:"multiplyScalar",target:cn.prototype,targetName:"Vec4"},{name:"exactEquals",newName:"strictEquals",target:cn.prototype,targetName:"Vec4"}]),ut(Bn,"Quat",[{name:"mag",newName:"len",target:Bn,targetName:"Quat"},{name:"mul",newName:"multiply",target:Bn,targetName:"Quat"},{name:"sqrMag",newName:"lengthSqr",target:Bn,targetName:"Quat"},{name:"scale",newName:"multiplyScalar",target:Bn,targetName:"Quat"},{name:"exactEquals",newName:"strictEquals",target:Bn,targetName:"Quat"}]),ut(Bn.prototype,"Quat",[{name:"scale",newName:"multiplyScalar",target:Bn.prototype,targetName:"Quat"},{name:"exactEquals",newName:"strictEquals",target:Bn.prototype,targetName:"Quat"}]),ut(En,"Color",[{name:"sub",newName:"subtract",target:En,targetName:"Color"},{name:"mul",newName:"multiply",target:En,targetName:"Color"},{name:"div",newName:"divide",target:En,targetName:"Color"},{name:"exactEquals",newName:"strictEquals",target:En,targetName:"Color"},{name:"fromHex",newName:"fromHEX",customFunction:function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];var n=e[1].toString(16);return S.Color.fromHEX(e[0],n)}}]),ut(wn,"Mat3",[{name:"sub",newName:"subtract",target:wn,targetName:"Mat3"},{name:"mul",newName:"multiply",target:wn,targetName:"Mat3"},{name:"exactEquals",newName:"strictEquals",target:wn,targetName:"Mat3"},{name:"transfrom",newName:"transform",target:wn,targetName:"Mat3"}]),ut(wn.prototype,"Mat3",[{name:"sub",newName:"subtract",target:wn.prototype,targetName:"Mat3"},{name:"mul",newName:"multiply",target:wn.prototype,targetName:"Mat3"},{name:"mulScalar",newName:"multiplyScalar",target:wn.prototype,targetName:"Mat3"},{name:"exactEquals",newName:"strictEquals",target:wn.prototype,targetName:"Mat3"}]),ut(Vn,"Mat4",[{name:"sub",newName:"subtract",target:Vn,targetName:"Mat4"},{name:"mul",newName:"multiply",target:Vn,targetName:"Mat4"},{name:"exactEquals",newName:"strictEquals",target:Vn,targetName:"Mat4"}]),ut(Vn.prototype,"Mat4",[{name:"sub",newName:"subtract",target:Vn.prototype,targetName:"Mat4"},{name:"mul",newName:"multiply",target:Vn.prototype,targetName:"Mat4"},{name:"mulScalar",newName:"multiplyScalar",target:Vn.prototype,targetName:"Mat4"},{name:"exactEquals",newName:"strictEquals",target:Vn.prototype,targetName:"Mat4"}]),function(t){t[t.VEC2=0]="VEC2",t[t.VEC3=1]="VEC3",t[t.VEC4=2]="VEC4",t[t.QUATERNION=3]="QUATERNION",t[t.MAT3=4]="MAT3",t[t.MAT4=5]="MAT4",t[t.SIZE=6]="SIZE",t[t.RECT=7]="RECT",t[t.COLOR=8]="COLOR"}(Xn||(Xn={}));var qn,Kn=t("a_",function(){function t(t,e,i,n,r,s){void 0===t&&(t=1),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=1),void 0===r&&(r=0),void 0===s&&(s=0),this.a=t,this.b=e,this.c=i,this.d=n,this.tx=r,this.ty=s}return t.identity=function(){return new t},t.clone=function(e){return new t(e.a,e.b,e.c,e.d,e.tx,e.ty)},t.concat=function(t,e,i){var n=e.a,r=e.b,s=e.c,a=e.d,o=e.tx,h=e.ty;t.a=n*i.a+r*i.c,t.b=n*i.b+r*i.d,t.c=s*i.a+a*i.c,t.d=s*i.b+a*i.d,t.tx=o*i.a+h*i.c+i.tx,t.ty=o*i.b+h*i.d+i.ty},t.invert=function(t,e){var i=1/(e.a*e.d-e.b*e.c);t.a=i*e.d,t.b=-i*e.b,t.c=-i*e.c,t.d=i*e.a,t.tx=i*(e.c*e.ty-e.d*e.tx),t.ty=i*(e.b*e.tx-e.a*e.ty)},t.fromMat4=function(t,e){t.a=e.m00,t.b=e.m01,t.c=e.m04,t.d=e.m05,t.tx=e.m12,t.ty=e.m13},t.transformVec2=function(t,e,i,n){var r,s;n?(r=e,s=i):(n=i,r=e.x,s=e.y),t.x=n.a*r+n.c*s+n.tx,t.y=n.b*r+n.d*s+n.ty},t.transformSize=function(t,e,i){t.width=i.a*e.width+i.c*e.height,t.height=i.b*e.width+i.d*e.height},t.transformRect=function(t,e,i){var n=e.x+e.width,r=e.y+e.height,s=i.a*e.x+i.c*e.y+i.tx,a=i.b*e.x+i.d*e.y+i.ty,o=i.a*n+i.c*e.y+i.tx,h=i.b*n+i.d*e.y+i.ty,u=i.a*e.x+i.c*r+i.tx,l=i.b*e.x+i.d*r+i.ty,c=i.a*n+i.c*r+i.tx,_=i.b*n+i.d*r+i.ty,f=Math.min(s,o,u,c),d=Math.max(s,o,u,c),p=Math.min(a,h,l,_),m=Math.max(a,h,l,_);t.x=f,t.y=p,t.width=d-f,t.height=m-p},t.transformObb=function(t,e,i,n,r,s,a){void 0===a&&(a=!0);var o=s.a*r.x+s.c*r.y+s.tx,h=s.b*r.x+s.d*r.y+s.ty,u=s.a*r.width,l=s.b*r.width,c=s.c*r.height,_=s.d*r.height;a?(e.x=o,e.y=h,i.x=u+o,i.y=l+h,t.x=c+o,t.y=_+h,n.x=u+c+o,n.y=l+_+h):(t.x=o,t.y=h,n.x=u+o,n.y=l+h,e.x=c+o,e.y=_+h,i.x=u+c+o,i.y=l+_+h)},t}());S.AffineTransform=Kn;var Qn=t("a$",function(t){function e(e,i){var n;return n=t.call(this)||this,"object"==typeof e?(n.width=e.width,n.height=e.height):(n.width=e||0,n.height=i||0),n}s(e,t),e.lerp=function(t,e,i,n){return t.width=e.width+(i.width-e.width)*n,t.height=e.height+(i.height-e.height)*n,t},e.equals=function(t,e){return t.width===e.width&&t.height===e.height};var i=e.prototype;return i.clone=function(){return new e(this.width,this.height)},i.set=function(t,e){return"object"==typeof t?(this.height=t.height,this.width=t.width):(this.width=t||0,this.height=e||0),this},i.equals=function(t){return this.width===t.width&&this.height===t.height},i.lerp=function(t,e){return this.width+=(t.width-this.width)*e,this.height+=(t.height-this.height)*e,this},i.toString=function(){return"("+this.width.toFixed(2)+", "+this.height.toFixed(2)+")"},n(e,[{key:"x",get:function(){return this.width},set:function(t){this.width=t}},{key:"y",get:function(){return this.height},set:function(t){this.height=t}}]),e}(Ie));function Zn(t,e){return void 0===t&&(t=0),void 0===e&&(e=0),new Qn(t,e)}qn=Qn,Qn.ZERO=Object.freeze(new qn(0,0)),Qn.ONE=Object.freeze(new qn(1,1)),Ci.fastDefine("cc.Size",Qn,{width:0,height:0}),S.size=Zn,S.Size=Qn;var Jn=t("b1",function(t){function e(e,i,n,r){var s;return s=t.call(this)||this,"object"==typeof e?(s.x=e.x,s.y=e.y,s.width=e.width,s.height=e.height):(s.x=e||0,s.y=i||0,s.width=n||0,s.height=r||0),s}s(e,t),e.fromMinMax=function(t,e,i){var n=Math.min(e.x,i.x),r=Math.min(e.y,i.y),s=Math.max(e.x,i.x),a=Math.max(e.y,i.y);return t.x=n,t.y=r,t.width=s-n,t.height=a-r,t},e.lerp=function(t,e,i,n){var r=e.x,s=e.y,a=e.width,o=e.height;return t.x=r+(i.x-r)*n,t.y=s+(i.y-s)*n,t.width=a+(i.width-a)*n,t.height=o+(i.height-o)*n,t},e.intersection=function(t,e,i){var n=e.x,r=e.y,s=e.x+e.width,a=e.y+e.height,o=i.x,h=i.y,u=i.x+i.width,l=i.y+i.height;return t.x=Math.max(n,o),t.y=Math.max(r,h),t.width=Math.min(s,u)-t.x,t.height=Math.min(a,l)-t.y,t},e.union=function(t,e,i){var n=e.x,r=e.y,s=e.width,a=e.height,o=i.x,h=i.y,u=i.width,l=i.height;return t.x=Math.min(n,o),t.y=Math.min(r,h),t.width=Math.max(n+s,o+u)-t.x,t.height=Math.max(r+a,h+l)-t.y,t},e.equals=function(t,e){return t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height};var i=e.prototype;return i.clone=function(){return new e(this.x,this.y,this.width,this.height)},i.set=function(t,e,i,n){return"object"==typeof t?(this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height):(this.x=t||0,this.y=e||0,this.width=i||0,this.height=n||0),this},i.equals=function(t){return this.x===t.x&&this.y===t.y&&this.width===t.width&&this.height===t.height},i.lerp=function(t,e){var i=this.x,n=this.y,r=this.width,s=this.height;return this.x=i+(t.x-i)*e,this.y=n+(t.y-n)*e,this.width=r+(t.width-r)*e,this.height=s+(t.height-s)*e,this},i.toString=function(){return"("+this.x.toFixed(2)+", "+this.y.toFixed(2)+", "+this.width.toFixed(2)+", "+this.height.toFixed(2)+")"},i.intersects=function(t){var e=this.x+this.width,i=this.y+this.height,n=t.x+t.width,r=t.y+t.height;return!(e<t.x||n<this.x||i<t.y||r<this.y)},i.contains=function(t){return this.x<=t.x&&this.x+this.width>=t.x&&this.y<=t.y&&this.y+this.height>=t.y},i.containsRect=function(t){return this.x<=t.x&&this.x+this.width>=t.x+t.width&&this.y<=t.y&&this.y+this.height>=t.y+t.height},i.transformMat4=function(t){var e=this.x,i=this.y,n=e+this.width,r=i+this.height,s=t.m00*e+t.m04*i+t.m12,a=t.m01*e+t.m05*i+t.m13,o=t.m00*n+t.m04*i+t.m12,h=t.m01*n+t.m05*i+t.m13,u=t.m00*e+t.m04*r+t.m12,l=t.m01*e+t.m05*r+t.m13,c=t.m00*n+t.m04*r+t.m12,_=t.m01*n+t.m05*r+t.m13,f=Math.min(s,o,u,c),d=Math.max(s,o,u,c),p=Math.min(a,h,l,_),m=Math.max(a,h,l,_);return this.x=f,this.y=p,this.width=d-f,this.height=m-p,this},i.transformMat4ToPoints=function(t,e,i,n,r){var s=this.x,a=this.y,o=s+this.width,h=a+this.height;e.x=t.m00*s+t.m04*a+t.m12,e.y=t.m01*s+t.m05*a+t.m13,r.x=t.m00*o+t.m04*a+t.m12,r.y=t.m01*o+t.m05*a+t.m13,i.x=t.m00*s+t.m04*h+t.m12,i.y=t.m01*s+t.m05*h+t.m13,n.x=t.m00*o+t.m04*h+t.m12,n.y=t.m01*o+t.m05*h+t.m13},n(e,[{key:"xMin",get:function(){return this.x},set:function(t){this.width+=this.x-t,this.x=t}},{key:"yMin",get:function(){return this.y},set:function(t){this.height+=this.y-t,this.y=t}},{key:"xMax",get:function(){return this.x+this.width},set:function(t){this.width=t-this.x}},{key:"yMax",get:function(){return this.y+this.height},set:function(t){this.height=t-this.y}},{key:"center",get:function(){return new jn(this.x+.5*this.width,this.y+.5*this.height)},set:function(t){this.x=t.x-.5*this.width,this.y=t.y-.5*this.height}},{key:"origin",get:function(){return new jn(this.x,this.y)},set:function(t){this.x=t.x,this.y=t.y}},{key:"size",get:function(){return new Qn(this.width,this.height)},set:function(t){this.width=t.width,this.height=t.height}},{key:"z",get:function(){return this.width},set:function(t){this.width=t}},{key:"w",get:function(){return this.height},set:function(t){this.height=t}}]),e}(Ie));function $n(t,e,i,n){return void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),new Jn(t,e,i,n)}Ci.fastDefine("cc.Rect",Jn,{x:0,y:0,width:0,height:0}),S.Rect=Jn,S.rect=$n;var tr=t("bw",Float64Array),er=t("bx",function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.createFloatArray=function(t){return new tr(t)},n(e,[{key:"array",get:function(){return this._array}}]),e}(Ie)),ir=Object.freeze({__proto__:null,bits:B,Vec2:jn,v2:Yn,Vec3:gn,v3:vn,Vec4:cn,v4:_n,Quat:Bn,quat:kn,Mat3:wn,Mat4:Vn,mat4:Wn,AffineTransform:Kn,Size:Qn,size:Zn,Rect:Jn,rect:$n,Color:En,color:Cn,preTransforms:Gn,HALF_PI:Mi,TWO_PI:Pi,EPSILON:Oi,equals:Li,approx:Ni,clamp:Fi,clamp01:ki,lerp:Gi,toRadian:Vi,toDegree:Ui,random:zi,setRandGenerator:Hi,randomRange:Wi,randomRangeInt:Xi,pseudoRandom:ji,pseudoRandomRange:Yi,pseudoRandomRangeInt:qi,nextPow2:Ki,repeat:Qi,pingPong:Zi,inverseLerp:Ji,absMaxComponent:$i,absMax:tn,enumerableProps:en,floatToHalf:hn,halfToFloat:un,MATH_FLOAT_ARRAY:tr,MathBase:er});t("aJ",ir);var nr=new gn,rr=new gn,sr=new gn,ar=new gn,or=new gn,hr=new gn,ur=new Array(3),lr=new Array(3);function cr(t,e){return gn.dot(e.n,t)-e.d}function _r(t,e,i){return gn.copy(t,e),gn.subtract(or,i.center,i.halfExtents),gn.add(hr,i.center,i.halfExtents),t.x=t.x<or.x?or.x:t.x,t.y=t.y<or.y?or.y:t.y,t.z=t.z<or.z?or.z:t.z,t.x=t.x>hr.x?hr.x:t.x,t.y=t.y>hr.y?hr.y:t.y,t.z=t.z>hr.z?hr.z:t.z,t}function fr(t,e,i){gn.set(nr,i.orientation.m00,i.orientation.m01,i.orientation.m02),gn.set(rr,i.orientation.m03,i.orientation.m04,i.orientation.m05),gn.set(sr,i.orientation.m06,i.orientation.m07,i.orientation.m08),ur[0]=nr,ur[1]=rr,ur[2]=sr,lr[0]=i.halfExtents.x,lr[1]=i.halfExtents.y,lr[2]=i.halfExtents.z,gn.subtract(ar,e,i.center),gn.set(t,i.center.x,i.center.y,i.center.z);for(var n=0;n<3;n++){var r=gn.dot(ar,ur[n]);r>lr[n]&&(r=lr[n]),r<-lr[n]&&(r=-lr[n]),t.x+=r*ur[n].x,t.y+=r*ur[n].y,t.z+=r*ur[n].z}return t}var dr=Object.freeze({__proto__:null,point_plane:cr,pt_point_plane:function(t,e,i){var n=cr(e,i);return gn.subtract(t,e,gn.multiplyScalar(t,i.n,n))},pt_point_aabb:_r,pt_point_obb:fr,pt_point_line:function(t,e,i,n){gn.subtract(nr,i,n);var r=nr.clone(),s=gn.lengthSqr(r);if(0===s)gn.copy(t,i);else{gn.subtract(nr,e,i);var a=gn.dot(nr,r)/s;a<0?gn.copy(t,i):a>1?gn.copy(t,n):gn.scaleAndAdd(t,i,r,a)}}}),pr={SHAPE_RAY:1,SHAPE_LINE:2,SHAPE_SPHERE:4,SHAPE_AABB:8,SHAPE_OBB:16,SHAPE_PLANE:32,SHAPE_TRIANGLE:64,SHAPE_FRUSTUM:128,SHAPE_FRUSTUM_ACCURATE:256,SHAPE_CAPSULE:512,SHAPE_SPLINE:1024},mr=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=-1),this.s=void 0,this.e=void 0,this._type=void 0,this._type=pr.SHAPE_LINE,this.s=new gn(t,e,i),this.e=new gn(n,r,s)}return t.create=function(e,i,n,r,s,a){return new t(e,i,n,r,s,a)},t.clone=function(e){return new t(e.s.x,e.s.y,e.s.z,e.e.x,e.e.y,e.e.z)},t.copy=function(t,e){return gn.copy(t.s,e.s),gn.copy(t.e,e.e),t},t.fromPoints=function(t,e,i){return gn.copy(t.s,e),gn.copy(t.e,i),t},t.set=function(t,e,i,n,r,s,a){return t.s.x=e,t.s.y=i,t.s.z=n,t.e.x=r,t.e.y=s,t.e.z=a,t},t.len=function(t){return gn.distance(t.s,t.e)},t.prototype.length=function(){return gn.distance(this.s,this.e)},n(t,[{key:"type",get:function(){return this._type}}]),t}(),gr=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=-1),this._type=pr.SHAPE_RAY,this.o=new gn(t,e,i),this.d=new gn(n,r,s)}return t.create=function(e,i,n,r,s,a){return void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=1),new t(e,i,n,r,s,a)},t.clone=function(e){return new t(e.o.x,e.o.y,e.o.z,e.d.x,e.d.y,e.d.z)},t.copy=function(t,e){return gn.copy(t.o,e.o),gn.copy(t.d,e.d),t},t.fromPoints=function(t,e,i){return gn.copy(t.o,e),gn.normalize(t.d,gn.subtract(t.d,i,e)),t},t.set=function(t,e,i,n,r,s,a){return t.o.x=e,t.o.y=i,t.o.z=n,t.d.x=r,t.d.y=s,t.d.z=a,t},t.prototype.computeHit=function(t,e){gn.normalize(t,this.d),gn.scaleAndAdd(t,this.o,t,e)},n(t,[{key:"type",get:function(){return this._type}}]),t}(),vr=new gn,yr=new gn,Sr=new gn,Tr=new gn;function Ar(t){return Math.max(Math.max(t.x,t.y),t.z)}var br,Er,Cr,wr,Rr,Ir=function(){function t(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=1),this._type=pr.SHAPE_SPHERE,this._center=new gn(t,e,i),this._radius=n}t.create=function(e,i,n,r){return new t(e,i,n,r)},t.clone=function(e){return new t(e.center.x,e.center.y,e.center.z,e.radius)},t.copy=function(t,e){return gn.copy(t.center,e.center),t.radius=e.radius,t},t.fromPoints=function(t,e,i){return gn.multiplyScalar(t.center,gn.add(vr,e,i),.5),t.radius=.5*gn.subtract(vr,i,e).length(),t},t.set=function(t,e,i,n,r){return t.center.x=e,t.center.y=i,t.center.z=n,t.radius=r,t};var e=t.prototype;return e.destroy=function(){},e.clone=function(){return t.clone(this)},e.copy=function(e){return t.copy(this,e)},e.getBoundary=function(t,e){gn.set(t,this.center.x-this.radius,this.center.y-this.radius,this.center.z-this.radius),gn.set(e,this.center.x+this.radius,this.center.y+this.radius,this.center.z+this.radius)},e.transform=function(t,e,i,n,r){gn.transformMat4(r.center,this.center,t),r.radius=this.radius*Ar(n)},e.translateAndRotate=function(t,e,i){gn.transformMat4(i.center,this.center,t)},e.setScale=function(t,e){e.radius=this.radius*Ar(t)},e.mergePoint=function(t){this.radius<0&&(this.center.set(t),this.radius=0),gn.subtract(yr,t,this.center);var e=yr.length();if(e>this.radius){var i=.5*(e-this.radius);this.radius+=i,gn.multiplyScalar(yr,yr,i/e),gn.add(this.center,this.center,yr)}},e.mergePoints=function(t){var e=t.length;if(!(e<1)){this.radius=-1;for(var i=0;i<e;i++)this.mergePoint(t[i])}},e.mergeAABB=function(t){t.getBoundary(Sr,Tr),this.mergePoint(Sr),this.mergePoint(Tr)},n(t,[{key:"center",get:function(){return this._center},set:function(t){this._center=t}},{key:"radius",get:function(){return this._radius},set:function(t){this._radius=t}},{key:"type",get:function(){return this._type}}]),t}(),Dr=function(t,e){var i=gn.dot(t.d,e.n);if(Math.abs(i)<Number.EPSILON)return 0;var n=-cr(t.o,e)/i;return n<0?0:n},Br=(br=new gn(0,0,0),Er=new gn(0,0,0),Cr=new gn(0,0,0),wr=new gn(0,0,0),Rr=new gn(0,0,0),function(t,e,i){gn.subtract(br,e.b,e.a),gn.subtract(Er,e.c,e.a),gn.cross(Cr,t.d,Er);var n=gn.dot(br,Cr);if(n<Number.EPSILON&&(!i||n>-Number.EPSILON))return 0;var r=1/n;gn.subtract(wr,t.o,e.a);var s=gn.dot(wr,Cr)*r;if(s<0||s>1)return 0;gn.cross(Rr,wr,br);var a=gn.dot(t.d,Rr)*r;if(a<0||s+a>1)return 0;var o=gn.dot(Er,Rr)*r;return o<0?0:o}),Mr=function(){var t=new gn(0,0,0);return function(e,i){var n=i.radius,r=i.center,s=e.o,a=e.d,o=n*n;gn.subtract(t,r,s);var h=t.lengthSqr(),u=gn.dot(t,a),l=o-(h-u*u);if(l<0)return 0;var c=Math.sqrt(l),_=h<o?u+c:u-c;return _<0?0:_}}(),Pr=function(){var t=new gn,e=new gn;return function(i,n){return gn.subtract(t,n.center,n.halfExtents),gn.add(e,n.center,n.halfExtents),function(t,e,i){var n=t.o,r=t.d,s=1/r.x,a=1/r.y,o=1/r.z,h=(e.x-n.x)*s,u=(i.x-n.x)*s,l=(e.y-n.y)*a,c=(i.y-n.y)*a,_=(e.z-n.z)*o,f=(i.z-n.z)*o,d=Math.max(Math.max(Math.min(h,u),Math.min(l,c)),Math.min(_,f)),p=Math.min(Math.min(Math.max(h,u),Math.max(l,c)),Math.max(_,f));return p<0||d>p?0:d>0?d:p}(i,t,e)}}(),Or=function(){var t=new gn,e=new gn,i=new gn,n=new gn,r=new gn,s=new gn,a=new gn,o=new Array(3),h=new Array(3),u=new Array(3),l=new Array(6);return function(c,_){o[0]=_.halfExtents.x,o[1]=_.halfExtents.y,o[2]=_.halfExtents.z,t=_.center,e=c.o,i=c.d,gn.set(n,_.orientation.m00,_.orientation.m01,_.orientation.m02),gn.set(r,_.orientation.m03,_.orientation.m04,_.orientation.m05),gn.set(s,_.orientation.m06,_.orientation.m07,_.orientation.m08),gn.subtract(a,t,e),h[0]=gn.dot(n,i),h[1]=gn.dot(r,i),h[2]=gn.dot(s,i),u[0]=gn.dot(n,a),u[1]=gn.dot(r,a),u[2]=gn.dot(s,a);for(var f=0;f<3;++f){if(0===h[f]){if(-u[f]-o[f]>0||-u[f]+o[f]<0)return 0;h[f]=1e-7}l[2*f+0]=(u[f]+o[f])/h[f],l[2*f+1]=(u[f]-o[f])/h[f]}var d=Math.max(Math.max(Math.min(l[0],l[1]),Math.min(l[2],l[3])),Math.min(l[4],l[5])),p=Math.min(Math.min(Math.max(l[0],l[1]),Math.max(l[2],l[3])),Math.max(l[4],l[5]));return p<0||d>p?0:d>0?d:p}}(),Lr=function(){var t=new gn,e=new gn,i=new gn,n=new gn,r=new gn,s=new gn,a=new gn,o=new Ir;return function(h,u){var l=u.ellipseCenter0,c=u.ellipseCenter1,_=gn.subtract(e,c,l);if(_.length()<Oi)return o.radius=u.radius,o.center.set(u.ellipseCenter0),vs.raySphere(h,o);var f=h.o,d=gn.subtract(i,f,l),p=gn.normalize(t,h.d),m=gn.cross(n,p,_),g=m.lengthSqr();if(0===g){o.radius=u.radius;var v=gn.subtract(r,c,f);return d.lengthSqr()<v.lengthSqr()?o.center.set(l):o.center.set(c),vs.raySphere(h,o)}var y=gn.cross(r,d,_),S=_.lengthSqr(),T=2*gn.dot(m,y),A=u.radius*u.radius,b=T*T-4*g*(y.lengthSqr()-A*S);if(b<0)return 0;var E=(-T-Math.sqrt(b))/(2*g);if(E<0){o.radius=u.radius;var C=gn.subtract(s,c,f);return d.lengthSqr()<C.lengthSqr()?o.center.set(u.ellipseCenter0):o.center.set(u.ellipseCenter1),vs.raySphere(h,o)}var x=gn.scaleAndAdd(s,h.o,p,E),w=gn.subtract(a,x,l),R=gn.dot(w,_)/S;return R>=0&&R<=1?E:R<0?(o.radius=u.radius,o.center.set(u.ellipseCenter0),vs.raySphere(h,o)):R>1?(o.radius=u.radius,o.center.set(u.ellipseCenter1),vs.raySphere(h,o)):0}}(),Nr=function(){var t=new gn(0,0,0);return function(e,i){gn.subtract(t,e.e,e.s);var n=-cr(e.s,i)/gn.dot(t,i.n);return n<0||n>1?0:n}}(),Fr=function(){var t=new gn(0,0,0),e=new gn(0,0,0),i=new gn(0,0,0),n=new gn(0,0,0),r=new gn(0,0,0),s=new gn(0,0,0);return function(a,o,h){gn.subtract(t,o.b,o.a),gn.subtract(e,o.c,o.a),gn.subtract(i,a.s,a.e),gn.cross(r,t,e);var u=gn.dot(i,r);if(u<=0)return 0;gn.subtract(n,a.s,o.a);var l=gn.dot(n,r);if(l<0||l>u)return 0;gn.cross(s,i,n);var c=gn.dot(e,s);if(c<0||c>u)return 0;var _=-gn.dot(t,s);if(_<0||c+_>u)return 0;if(h){var f=1/u,d=1-(c*=f)-(_*=f);gn.set(h,o.a.x*d+o.b.x*c+o.c.x*_,o.a.y*d+o.b.y*c+o.c.y*_,o.a.z*d+o.b.z*c+o.c.z*_)}return 1}}(),kr=new gr;function Gr(t,e){kr.o.set(t.s),gn.subtract(kr.d,t.e,t.s),kr.d.normalize();var i=Pr(kr,e);return i<=t.length()?i:0}function Vr(t,e){kr.o.set(t.s),gn.subtract(kr.d,t.e,t.s),kr.d.normalize();var i=Or(kr,e);return i<=t.length()?i:0}function Ur(t,e){kr.o.set(t.s),gn.subtract(kr.d,t.e,t.s),kr.d.normalize();var i=Mr(kr,e);return i<=t.length()?i:0}var zr,Hr,Wr,Xr,jr=(zr=new gn,Hr=new gn,Wr=new gn,Xr=new gn,function(t,e){return gn.subtract(zr,t.center,t.halfExtents),gn.add(Hr,t.center,t.halfExtents),gn.subtract(Wr,e.center,e.halfExtents),gn.add(Xr,e.center,e.halfExtents),zr.x<=Xr.x&&Hr.x>=Wr.x&&zr.y<=Xr.y&&Hr.y>=Wr.y&&zr.z<=Xr.z&&Hr.z>=Wr.z});function Yr(t,e,i,n,r,s){gn.set(s[0],t.x+i.x*e.x+n.x*e.y+r.x*e.z,t.y+i.y*e.x+n.y*e.y+r.y*e.z,t.z+i.z*e.x+n.z*e.y+r.z*e.z),gn.set(s[1],t.x-i.x*e.x+n.x*e.y+r.x*e.z,t.y-i.y*e.x+n.y*e.y+r.y*e.z,t.z-i.z*e.x+n.z*e.y+r.z*e.z),gn.set(s[2],t.x+i.x*e.x-n.x*e.y+r.x*e.z,t.y+i.y*e.x-n.y*e.y+r.y*e.z,t.z+i.z*e.x-n.z*e.y+r.z*e.z),gn.set(s[3],t.x+i.x*e.x+n.x*e.y-r.x*e.z,t.y+i.y*e.x+n.y*e.y-r.y*e.z,t.z+i.z*e.x+n.z*e.y-r.z*e.z),gn.set(s[4],t.x-i.x*e.x-n.x*e.y-r.x*e.z,t.y-i.y*e.x-n.y*e.y-r.y*e.z,t.z-i.z*e.x-n.z*e.y-r.z*e.z),gn.set(s[5],t.x+i.x*e.x-n.x*e.y-r.x*e.z,t.y+i.y*e.x-n.y*e.y-r.y*e.z,t.z+i.z*e.x-n.z*e.y-r.z*e.z),gn.set(s[6],t.x-i.x*e.x+n.x*e.y-r.x*e.z,t.y-i.y*e.x+n.y*e.y-r.y*e.z,t.z-i.z*e.x+n.z*e.y-r.z*e.z),gn.set(s[7],t.x-i.x*e.x-n.x*e.y+r.x*e.z,t.y-i.y*e.x-n.y*e.y+r.y*e.z,t.z-i.z*e.x-n.z*e.y+r.z*e.z)}function qr(t,e){for(var i=gn.dot(e,t[0]),n=i,r=1;r<8;++r){var s=gn.dot(e,t[r]);i=s<i?s:i,n=s>n?s:n}return[i,n]}var Kr,Qr,Zr,Jr,$r,ts=function(){for(var t=new Array(15),e=0;e<15;e++)t[e]=new gn(0,0,0);for(var i=new Array(8),n=new Array(8),r=0;r<8;r++)i[r]=new gn(0,0,0),n[r]=new gn(0,0,0);var s=new gn,a=new gn;return function(e,r){gn.set(t[0],1,0,0),gn.set(t[1],0,1,0),gn.set(t[2],0,0,1),gn.set(t[3],r.orientation.m00,r.orientation.m01,r.orientation.m02),gn.set(t[4],r.orientation.m03,r.orientation.m04,r.orientation.m05),gn.set(t[5],r.orientation.m06,r.orientation.m07,r.orientation.m08);for(var o=0;o<3;++o)gn.cross(t[6+3*o],t[o],t[3]),gn.cross(t[7+3*o],t[o],t[4]),gn.cross(t[7+3*o],t[o],t[5]);gn.subtract(s,e.center,e.halfExtents),gn.add(a,e.center,e.halfExtents),function(t,e,i){gn.set(i[0],t.x,e.y,e.z),gn.set(i[1],t.x,e.y,t.z),gn.set(i[2],t.x,t.y,e.z),gn.set(i[3],t.x,t.y,t.z),gn.set(i[4],e.x,e.y,e.z),gn.set(i[5],e.x,e.y,t.z),gn.set(i[6],e.x,t.y,e.z),gn.set(i[7],e.x,t.y,t.z)}(s,a,i),Yr(r.center,r.halfExtents,t[3],t[4],t[5],n);for(var h=0;h<15;++h){var u=qr(i,t[h]),l=qr(n,t[h]);if(l[0]>u[1]||u[0]>l[1])return 0}return 1}}(),es=function(t,e){var i=t.halfExtents.x*Math.abs(e.n.x)+t.halfExtents.y*Math.abs(e.n.y)+t.halfExtents.z*Math.abs(e.n.z),n=gn.dot(e.n,t.center);return n+i<e.d?-1:n-i>e.d?0:1},is=function(t,e){for(var i=0;i<e.planes.length;i++)if(-1===es(t,e.planes[i]))return 0;return 1},ns=function(){for(var t=new Array(8),e=0,i=0,n=0;n<t.length;n++)t[n]=new gn(0,0,0);return function(n,r){for(var s=0,a=!1,o=0;o<r.planes.length;o++){if(-1===(s=es(n,r.planes[o])))return 0;1===s&&(a=!0)}if(!a)return 1;for(var h=0;h<r.vertices.length;h++)gn.subtract(t[h],r.vertices[h],n.center);e=0,i=0;for(var u=0;u<r.vertices.length;u++)t[u].x>n.halfExtents.x?e++:t[u].x<-n.halfExtents.x&&i++;if(e===r.vertices.length||i===r.vertices.length)return 0;e=0,i=0;for(var l=0;l<r.vertices.length;l++)t[l].y>n.halfExtents.y?e++:t[l].y<-n.halfExtents.y&&i++;if(e===r.vertices.length||i===r.vertices.length)return 0;e=0,i=0;for(var c=0;c<r.vertices.length;c++)t[c].z>n.halfExtents.z?e++:t[c].z<-n.halfExtents.z&&i++;return e===r.vertices.length||i===r.vertices.length?0:1}}(),rs=(Kr=new gn(0,0,0),Qr=new wn,function(t,e){return gn.subtract(Kr,e,t.center),gn.transformMat3(Kr,Kr,wn.transpose(Qr,t.orientation)),i=Kr,n=t.halfExtents,Math.abs(i.x)<n.x&&Math.abs(i.y)<n.y&&Math.abs(i.z)<n.z;var i,n}),ss=(Zr=function(t,e,i,n){return Math.abs(t.x*e+t.y*i+t.z*n)},function(t,e){var i=t.halfExtents.x*Zr(e.n,t.orientation.m00,t.orientation.m01,t.orientation.m02)+t.halfExtents.y*Zr(e.n,t.orientation.m03,t.orientation.m04,t.orientation.m05)+t.halfExtents.z*Zr(e.n,t.orientation.m06,t.orientation.m07,t.orientation.m08),n=gn.dot(e.n,t.center);return n+i<e.d?-1:n-i>e.d?0:1}),as=function(t,e){for(var i=0;i<e.planes.length;i++)if(-1===ss(t,e.planes[i]))return 0;return 1},os=function(){for(var t=new Array(8),e=0,i=0,n=0,r=0;r<t.length;r++)t[r]=new gn(0,0,0);var s=function(t,e,i,n){return t.x*e+t.y*i+t.z*n};return function(r,a){for(var o=0,h=!1,u=0;u<a.planes.length;u++){if(-1===(o=ss(r,a.planes[u])))return 0;1===o&&(h=!0)}if(!h)return 1;for(var l=0;l<a.vertices.length;l++)gn.subtract(t[l],a.vertices[l],r.center);i=0,n=0;for(var c=0;c<a.vertices.length;c++)(e=s(t[c],r.orientation.m00,r.orientation.m01,r.orientation.m02))>r.halfExtents.x?i++:e<-r.halfExtents.x&&n++;if(i===a.vertices.length||n===a.vertices.length)return 0;i=0,n=0;for(var _=0;_<a.vertices.length;_++)(e=s(t[_],r.orientation.m03,r.orientation.m04,r.orientation.m05))>r.halfExtents.y?i++:e<-r.halfExtents.y&&n++;if(i===a.vertices.length||n===a.vertices.length)return 0;i=0,n=0;for(var f=0;f<a.vertices.length;f++)(e=s(t[f],r.orientation.m06,r.orientation.m07,r.orientation.m08))>r.halfExtents.z?i++:e<-r.halfExtents.z&&n++;return i===a.vertices.length||n===a.vertices.length?0:1}}(),hs=function(){for(var t=new Array(15),e=0;e<15;e++)t[e]=new gn(0,0,0);for(var i=new Array(8),n=new Array(8),r=0;r<8;r++)i[r]=new gn(0,0,0),n[r]=new gn(0,0,0);return function(e,r){gn.set(t[0],e.orientation.m00,e.orientation.m01,e.orientation.m02),gn.set(t[1],e.orientation.m03,e.orientation.m04,e.orientation.m05),gn.set(t[2],e.orientation.m06,e.orientation.m07,e.orientation.m08),gn.set(t[3],r.orientation.m00,r.orientation.m01,r.orientation.m02),gn.set(t[4],r.orientation.m03,r.orientation.m04,r.orientation.m05),gn.set(t[5],r.orientation.m06,r.orientation.m07,r.orientation.m08);for(var s=0;s<3;++s)gn.cross(t[6+3*s],t[s],t[3]),gn.cross(t[7+3*s],t[s],t[4]),gn.cross(t[8+3*s],t[s],t[5]);Yr(e.center,e.halfExtents,t[0],t[1],t[2],i),Yr(r.center,r.halfExtents,t[3],t[4],t[5],n);for(var a=0;a<15;++a){var o=qr(i,t[a]),h=qr(n,t[a]);if(h[0]>o[1]||o[0]>h[1])return 0}return 1}}(),us=function(){for(var t=new Ir,e=new gn,i=new gn,n=new gn,r=new Array(8),s=0;s<8;s++)r[s]=new gn;for(var a=new Array(8),o=0;o<8;o++)a[o]=new gn;return function(s,o){if(0===gn.squaredDistance(o.ellipseCenter0,o.ellipseCenter1))return t.radius=o.radius,t.center.set(o.ellipseCenter0),vs.sphereOBB(t,s);e.x=s.orientation.m00,e.y=s.orientation.m01,e.z=s.orientation.m02,i.x=s.orientation.m03,i.y=s.orientation.m04,i.z=s.orientation.m05,n.x=s.orientation.m06,n.y=s.orientation.m07,n.z=s.orientation.m08,Yr(s.center,s.halfExtents,e,i,n,r);var h=a,u=gn.copy(h[0],e),l=gn.copy(h[1],i),c=gn.copy(h[2],n);gn.subtract(h[3],o.center,s.center).normalize();var _=gn.subtract(h[4],o.ellipseCenter0,o.ellipseCenter1);_.normalize(),gn.cross(h[5],u,_),gn.cross(h[6],l,_),gn.cross(h[7],c,_);for(var f=0;f<8;++f){var d=qr(r,h[f]),p=gn.dot(h[f],o.ellipseCenter0),m=gn.dot(h[f],o.ellipseCenter1),g=Math.max(p,m),v=Math.min(p,m)-o.radius,y=g+o.radius;if(v>d[1]||d[0]>y)return 0}return 1}}(),ls=function(t,e){var i=gn.dot(e.n,t.center),n=t.radius*e.n.length();return i+n<e.d?-1:i-n>e.d?0:1},cs=function(t,e){for(var i=0;i<e.planes.length;i++)if(-1===ls(t,e.planes[i]))return 0;return 1},_s=(Jr=new gn(0,0,0),$r=[1,-1,1,-1,1,-1],function(t,e){for(var i=0;i<6;i++){var n=e.planes[i],r=t.radius,s=t.center,a=n.n,o=n.d,h=gn.dot(a,s);if(h+r<o)return 0;if(!(h-r>o)){gn.add(Jr,s,gn.multiplyScalar(Jr,a,r));for(var u=0;u<6;u++)if(u!==i&&u!==i+$r[i]){var l=e.planes[u];if(gn.dot(l.n,Jr)<l.d)return 0}}}return 1}),fs=function(t,e){var i=t.radius+e.radius;return gn.squaredDistance(t.center,e.center)<i*i},ds=function(){var t=new gn;return function(e,i){return _r(t,e.center,i),gn.squaredDistance(e.center,t)<e.radius*e.radius}}(),ps=function(){var t=new gn;return function(e,i){return fr(t,e.center,i),gn.squaredDistance(e.center,t)<e.radius*e.radius}}(),ms=function(){var t=new gn,e=new gn;return function(i,n){var r=i.radius+n.radius,s=r*r,a=gn.squaredDistance(n.ellipseCenter0,n.ellipseCenter1);if(0===a)return gn.squaredDistance(i.center,n.center)<s;gn.subtract(t,i.center,n.ellipseCenter0),gn.subtract(e,n.ellipseCenter1,n.ellipseCenter0);var o=gn.dot(t,e)/a;return o<0?gn.squaredDistance(i.center,n.ellipseCenter0)<s:o>1?gn.squaredDistance(i.center,n.ellipseCenter1)<s:(gn.scaleAndAdd(t,n.ellipseCenter0,e,o),gn.squaredDistance(i.center,t)<s)}}(),gs=function(){var t=new gn,e=new gn,i=new gn,n=new gn,r=new gn,s=new gn;return function(a,o){var h,u,l=gn.subtract(t,a.ellipseCenter1,a.ellipseCenter0),c=gn.subtract(e,o.ellipseCenter1,o.ellipseCenter0),_=gn.subtract(i,a.ellipseCenter0,o.ellipseCenter0),f=gn.dot(l,l),d=gn.dot(l,c),p=gn.dot(c,c),m=gn.dot(l,_),g=gn.dot(c,_),v=f*p-d*d,y=v,S=v;v<Oi?(h=0,y=1,u=g,S=p):(u=f*g-d*m,(h=d*g-p*m)<0?(h=0,u=g,S=p):h>y&&(h=y,u=g+d,S=p)),u<0?(u=0,-m<0?h=0:-m>f?h=y:(h=-m,y=f)):u>S&&(u=S,-m+d<0?h=0:-m+d>f?h=y:(h=-m+d,y=f));var T=Math.abs(h)<Oi?0:h/y,A=Math.abs(u)<Oi?0:u/S,b=n;b.set(_),b.add(gn.multiplyScalar(r,l,T)),b.subtract(gn.multiplyScalar(s,c,A));var E=a.radius+o.radius;return b.lengthSqr()<E*E}}(),vs={raySphere:Mr,rayAABB:Pr,rayOBB:Or,rayPlane:Dr,rayTriangle:Br,rayCapsule:Lr,raySubMesh:null,rayMesh:null,rayModel:null,lineSphere:Ur,lineAABB:Gr,lineOBB:Vr,linePlane:Nr,lineTriangle:Fr,sphereWithSphere:fs,sphereAABB:ds,sphereOBB:ps,spherePlane:ls,sphereFrustum:cs,sphereFrustumAccurate:_s,sphereCapsule:ms,aabbWithAABB:jr,aabbWithOBB:ts,aabbPlane:es,aabbFrustum:is,aabbFrustumAccurate:ns,obbWithOBB:hs,obbPlane:ss,obbFrustum:as,obbFrustumAccurate:os,obbPoint:rs,obbCapsule:us,aabbFrustumCompletelyInside:function(t,e){for(var i=0;i<e.planes.length;i++)if(0!==es(t,e.planes[i]))return 0;return 1},capsuleWithCapsule:gs,resolve:function(t,e,i){void 0===i&&(i=null);var n=t._type,r=e._type,s=this[n|r];return n<r?s(t,e,i):s(e,t,i)}};vs[pr.SHAPE_RAY|pr.SHAPE_SPHERE]=Mr,vs[pr.SHAPE_RAY|pr.SHAPE_AABB]=Pr,vs[pr.SHAPE_RAY|pr.SHAPE_OBB]=Or,vs[pr.SHAPE_RAY|pr.SHAPE_PLANE]=Dr,vs[pr.SHAPE_RAY|pr.SHAPE_TRIANGLE]=Br,vs[pr.SHAPE_RAY|pr.SHAPE_CAPSULE]=Lr,vs[pr.SHAPE_LINE|pr.SHAPE_SPHERE]=Ur,vs[pr.SHAPE_LINE|pr.SHAPE_AABB]=Gr,vs[pr.SHAPE_LINE|pr.SHAPE_OBB]=Vr,vs[pr.SHAPE_LINE|pr.SHAPE_PLANE]=Nr,vs[pr.SHAPE_LINE|pr.SHAPE_TRIANGLE]=Fr,vs[pr.SHAPE_SPHERE]=fs,vs[pr.SHAPE_SPHERE|pr.SHAPE_AABB]=ds,vs[pr.SHAPE_SPHERE|pr.SHAPE_OBB]=ps,vs[pr.SHAPE_SPHERE|pr.SHAPE_PLANE]=ls,vs[pr.SHAPE_SPHERE|pr.SHAPE_FRUSTUM]=cs,vs[pr.SHAPE_SPHERE|pr.SHAPE_FRUSTUM_ACCURATE]=_s,vs[pr.SHAPE_SPHERE|pr.SHAPE_CAPSULE]=ms,vs[pr.SHAPE_AABB]=jr,vs[pr.SHAPE_AABB|pr.SHAPE_OBB]=ts,vs[pr.SHAPE_AABB|pr.SHAPE_PLANE]=es,vs[pr.SHAPE_AABB|pr.SHAPE_FRUSTUM]=is,vs[pr.SHAPE_AABB|pr.SHAPE_FRUSTUM_ACCURATE]=ns,vs[pr.SHAPE_OBB]=hs,vs[pr.SHAPE_OBB|pr.SHAPE_PLANE]=ss,vs[pr.SHAPE_OBB|pr.SHAPE_FRUSTUM]=as,vs[pr.SHAPE_OBB|pr.SHAPE_FRUSTUM_ACCURATE]=os,vs[pr.SHAPE_OBB|pr.SHAPE_CAPSULE]=us,vs[pr.SHAPE_CAPSULE]=gs,ut(mr.prototype,"line",[{name:"mag",newName:"len"},{name:"magnitude",newName:"len"}]),lt(vs,"intersect",[{name:"line_quad"}]);var ys=new gn(0,0,0),Ss=new gn(0,0,0),Ts=S.mat4(),As=S.v4(),bs=function(){function t(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=1),void 0===i&&(i=0),void 0===n&&(n=0),this._type=pr.SHAPE_PLANE,this.n=new gn(t,e,i),this.d=n}return t.create=function(e,i,n,r){return new t(e,i,n,r)},t.clone=function(e){return new t(e.n.x,e.n.y,e.n.z,e.d)},t.copy=function(t,e){return gn.copy(t.n,e.n),t.d=e.d,t},t.fromPoints=function(t,e,i,n){return gn.subtract(ys,i,e),gn.subtract(Ss,n,e),gn.normalize(t.n,gn.cross(t.n,ys,Ss)),t.d=gn.dot(t.n,e),t},t.set=function(t,e,i,n,r){return t.n.x=e,t.n.y=i,t.n.z=n,t.d=r,t},t.fromNormalAndPoint=function(t,e,i){return gn.copy(t.n,e),t.d=gn.dot(e,i),t},t.normalize=function(t,e){var i=e.n.length();return gn.normalize(t.n,e.n),i>0&&(t.d=e.d/i),t},t.prototype.transform=function(t){Vn.invert(Ts,t),Vn.transpose(Ts,Ts),cn.set(As,this.n.x,this.n.y,this.n.z,-this.d),cn.transformMat4(As,As,Ts),gn.set(this.n,As.x,As.y,As.z),this.d=-As.w},n(t,[{key:"type",get:function(){return this._type}},{key:"x",get:function(){return this.n.x},set:function(t){this.n.x=t}},{key:"y",get:function(){return this.n.y},set:function(t){this.n.y=t}},{key:"z",get:function(){return this.n.z},set:function(t){this.n.z=t}},{key:"w",get:function(){return this.d},set:function(t){this.d=t}}]),t}(),Es=function(){function t(t,e,i,n,r,s,a,o,h){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=1),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),void 0===o&&(o=1),void 0===h&&(h=0),this._type=pr.SHAPE_TRIANGLE,this.a=new gn(t,e,i),this.b=new gn(n,r,s),this.c=new gn(a,o,h)}return t.create=function(e,i,n,r,s,a,o,h,u){return void 0===e&&(e=1),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=1),new t(e,i,n,r,s,a,o,h,u)},t.clone=function(e){return new t(e.a.x,e.a.y,e.a.z,e.b.x,e.b.y,e.b.z,e.c.x,e.c.y,e.c.z)},t.copy=function(t,e){return gn.copy(t.a,e.a),gn.copy(t.b,e.b),gn.copy(t.c,e.c),t},t.fromPoints=function(t,e,i,n){return gn.copy(t.a,e),gn.copy(t.b,i),gn.copy(t.c,n),t},t.set=function(t,e,i,n,r,s,a,o,h,u){return t.a.x=e,t.a.y=i,t.a.z=n,t.b.x=r,t.b.y=s,t.b.z=a,t.c.x=o,t.c.y=h,t.c.z=u,t},n(t,[{key:"type",get:function(){return this._type}}]),t}();Tt({replaceProperty:{since:"3.6.0",removed:!1},removeProperty:{since:"3.6.0",removed:!1},markAsWarning:{since:"3.6.0",removed:!1},setDefaultLogTimes:{since:"3.6.0",removed:!1}});var Cs=function(){function t(){this._poolHandle=-1,xs.addContainer(this)}return t.prototype.destroy=function(){xs.removeContainer(this)},t}(),xs=new(function(){function t(){this._pools=[],this._lastShrinkPassed=0,this.shrinkTimeSpan=5}var e=t.prototype;return e.addContainer=function(t){-1===t._poolHandle&&(t._poolHandle=this._pools.length,this._pools.push(t))},e.removeContainer=function(t){-1!==t._poolHandle&&(this._pools[this._pools.length-1]._poolHandle=t._poolHandle,fe(this._pools,t._poolHandle),t._poolHandle=-1)},e.tryShrink=function(){for(var t=0;t<this._pools.length;t++)this._pools[t].tryShrink()},e.update=function(t){this._lastShrinkPassed+=t,this._lastShrinkPassed>this.shrinkTimeSpan&&(this.tryShrink(),this._lastShrinkPassed-=this.shrinkTimeSpan)},t}()),ws=t("by",function(t){function e(e,i,n,r){var s;(s=t.call(this)||this)._freePool=[],s._ctor=e,s._dtor=n||null,s._elementsPerBatch=Math.max(i,1),s._shrinkThreshold=r?C(r,1):s._elementsPerBatch,s._nextAvail=s._elementsPerBatch-1;for(var a=0;a<s._elementsPerBatch;++a)s._freePool.push(e());return s}s(e,t);var i=e.prototype;return i.alloc=function(){if(this._nextAvail<0){this._freePool.length=this._elementsPerBatch;for(var t=0;t<this._elementsPerBatch;t++)this._freePool[t]=this._ctor();this._nextAvail=this._elementsPerBatch-1}return this._freePool[this._nextAvail--]},i.free=function(t){this._freePool[++this._nextAvail]=t},i.freeArray=function(t){this._freePool.length=this._nextAvail+1,Array.prototype.push.apply(this._freePool,t),this._nextAvail+=t.length},i.tryShrink=function(){var t=this._nextAvail+1;if(!(t<=this._shrinkThreshold)){var e;if(e=t>>1>=this._shrinkThreshold?t>>1:Math.floor((t-this._shrinkThreshold+1)/2),this._dtor)for(var i=this._nextAvail-e+1;i<=this._nextAvail;++i)this._dtor(this._freePool[i]);this._nextAvail-=e,this._freePool.length=this._nextAvail+1}},i.destroy=function(){var e=arguments.length>0?arguments[0]:null;e&&tt(14100);var i=e||this._dtor;if(i)for(var n=0;n<=this._nextAvail;n++)i(this._freePool[n]);this._freePool.length=0,this._nextAvail=-1,t.prototype.destroy.call(this)},e}(Cs)),Rs=t("bz",function(t){function e(e,i,n){var r;(r=t.call(this)||this)._count=0,r._fn=e,r._dtor=n||null,r._data=new Array(i),r._initSize=i;for(var s=0;s<i;++s)r._data[s]=e();return r}s(e,t);var i=e.prototype;return i.reset=function(){this._count=0},i.resize=function(t){if(t>this._data.length)for(var e=this._data.length;e<t;++e)this._data[e]=this._fn()},i.add=function(){return this._count>=this._data.length&&this.resize(this._data.length<<1),this._data[this._count++]},i.destroy=function(){if(this._dtor)for(var e=0;e<this._data.length;e++)this._dtor(this._data[e]);this._data.length=0,this._count=0,t.prototype.destroy.call(this)},i.tryShrink=function(){if(this._data.length>>2>this._count){var t=Math.max(this._initSize,this._data.length>>1);if(this._dtor)for(var e=t;e<this._data.length;e++)this._dtor(this._data[e]);this._data.length=t}},i.removeAt=function(t){if(!(t>=this._count)){var e=this._count-1,i=this._data[t];this._data[t]=this._data[e],this._data[e]=i,this._count-=1}},n(e,[{key:"length",get:function(){return this._count}},{key:"data",get:function(){return this._data}}]),e}(Cs)),Is=t("bA",function(t){function e(e,i){var n;return(n=t.call(this)||this).length=0,n._initSize=0,n.array=new Array(e),n._initSize=e,n._compareFn=i,n}s(e,t);var i=e.prototype;return i.push=function(t){this.array[this.length++]=t},i.pop=function(){return this.array[--this.length]},i.get=function(t){return this.array[t]},i.clear=function(){this.length=0},i.destroy=function(){this.length=0,this.array.length=0,t.prototype.destroy.call(this)},i.tryShrink=function(){this.array.length>>2>this.length&&(this.array.length=Math.max(this._initSize,this.array.length>>1))},i.sort=function(){this.array.length=this.length,this.array.sort(this._compareFn)},i.concat=function(t){for(var e=0;e<t.length;++e)this.array[this.length++]=t[e]},i.fastRemove=function(t){if(!(t>=this.length||t<0)){var e=--this.length;this.array[t]=this.array[e]}},i.indexOf=function(t){for(var e=0,i=this.length;e<i;++e)if(this.array[e]===t)return e;return-1},e}(Cs));t("aK",Object.freeze({__proto__:null,Pool:ws,RecyclePool:Rs,CachedArray:Is}));var Ds=t("b$","__editorExtras__"),Bs=[],Ms=t("bV",function(){function t(t){void 0===t&&(t=""),this._objFlags=0,this._name=t}t._deferredDestroy=function(){for(var t=Bs.length,e=0;e<t;++e){var i=Bs[e];1&i._objFlags||i._destroyImmediate()}t===Bs.length?Bs.length=0:Bs.splice(0,t)};var e=t.prototype;return e.destroy=function(){return 1&this._objFlags?(tt(5e3),!1):!(4&this._objFlags||(this._objFlags|=4,Bs.push(this),0))},e._destruct=function(){var t,e=this.constructor;Object.prototype.hasOwnProperty.call(e,"__destruct__")?t=e.__destruct__:(t=function(t,e){var i,n=t instanceof S.Node||t instanceof S.Component,r=n?"_id":null,s={};for(i in t)if(t.hasOwnProperty(i)){if(i===r)continue;switch(typeof t[i]){case"string":s[i]="";break;case"object":case"function":s[i]=null}}if(Ci._isCCClass(e))for(var a=S.Class.Attr.getClassAttrs(e),o=e.__props__,h=0;h<o.length;h++){var u=""+(i=o[h]);if(u in a){if(n&&"_id"===i)continue;switch(typeof a[u]){case"string":s[i]="";break;case"object":case"function":s[i]=null;break;case"undefined":s[i]=void 0}}}var l="";for(i in s){var c;c=Ci.IDENTIFIER_RE.test(i)?"o."+i+"=":"o["+Ci.escapeForJS(i)+"]=";var _=s[i];""===_&&(_='""'),l+=c+_+";\n"}return Function("o",l)}(this,e),Bt(e,"__destruct__",t,!0)),t(this)},e._destroyImmediate=function(){var t;1&this._objFlags?it(5e3):(null===(t=this._onPreDestroy)||void 0===t||t.call(this),this._destruct(),this._objFlags|=1)},n(t,[{key:"name",get:function(){return this._name},set:function(t){this._name=t}},{key:"hideFlags",get:function(){return this._objFlags&t.Flags.AllHideMasks},set:function(e){var i=e&t.Flags.AllHideMasks;this._objFlags=this._objFlags&~t.Flags.AllHideMasks|i}},{key:"isValid",get:function(){return!(1&this._objFlags)}}]),t}());function Ps(t){return t instanceof Ms}function Os(t,e){return"object"==typeof t?!(!t||t._objFlags&(e?5:1)):void 0!==t}Ms.prototype._deserialize=null,Ci.fastDefine("cc.Object",Ms,{_name:"",_objFlags:0}),Bt(Ms,"Flags",{Destroyed:1,DontSave:8,EditorOnly:16,Dirty:32,DontDestroy:64,PersistentMask:-4192741,Destroying:128,Deactivating:256,LockedInEditor:512,HideInHierarchy:1024,AllHideMasks:1560,IsPreloadStarted:8192,IsOnLoadStarted:32768,IsOnLoadCalled:16384,IsOnEnableCalled:2048,IsStartCalled:65536,IsEditorOnEnableCalled:4096,IsPositionLocked:1<<21,IsRotationLocked:1<<17,IsScaleLocked:1<<18,IsAnchorLocked:1<<19,IsSizeLocked:1<<20}),S.isValid=Os,S.Object=Ms;var Ls=fe;function Ns(){}var Fs=function(){function t(){this.callback=Ns,this.target=void 0,this.once=!1}var e=t.prototype;return e.set=function(t,e,i){this.callback=t||Ns,this.target=e,this.once=!!i},e.reset=function(){this.target=void 0,this.callback=Ns,this.once=!1},e.check=function(){return!(Ps(this.target)&&!Os(this.target,!0))},t}(),ks=new ws((function(){return new Fs}),32),Gs=function(){function t(){this.callbackInfos=[],this.isInvoking=!1,this.containCanceled=!1}var e=t.prototype;return e.removeByCallback=function(t){for(var e=0;e<this.callbackInfos.length;++e){var i=this.callbackInfos[e];i&&i.callback===t&&(i.reset(),ks.free(i),Ls(this.callbackInfos,e),--e)}},e.removeByTarget=function(t){for(var e=0;e<this.callbackInfos.length;++e){var i=this.callbackInfos[e];i&&i.target===t&&(i.reset(),ks.free(i),Ls(this.callbackInfos,e),--e)}},e.cancel=function(t){var e=this.callbackInfos[t];e&&(e.reset(),this.isInvoking?this.callbackInfos[t]=null:Ls(this.callbackInfos,t),ks.free(e)),this.containCanceled=!0},e.cancelAll=function(){for(var t=0;t<this.callbackInfos.length;t++){var e=this.callbackInfos[t];e&&(e.reset(),ks.free(e),this.callbackInfos[t]=null)}this.containCanceled=!0},e.purgeCanceled=function(){for(var t=this.callbackInfos.length-1;t>=0;--t)this.callbackInfos[t]||Ls(this.callbackInfos,t);this.containCanceled=!1},e.clear=function(){this.cancelAll(),this.callbackInfos.length=0,this.isInvoking=!1,this.containCanceled=!1},t}(),Vs=new ws((function(){return new Gs}),16),Us=t("d2",function(){function t(){this._callbackTable=Lt(!0),this._offCallback=void 0}var e=t.prototype;return e.on=function(t,e,i,n){if(!this.hasEventListener(t,e,i)){var r=this._callbackTable[t];r||(r=this._callbackTable[t]=Vs.alloc());var s=ks.alloc();s.set(e,i,n),r.callbackInfos.push(s)}return e},e.hasEventListener=function(t,e,i){var n=this._callbackTable&&this._callbackTable[t];if(!n)return!1;var r=n.callbackInfos;if(!e){if(n.isInvoking){for(var s=0;s<r.length;++s)if(r[s])return!0;return!1}return r.length>0}for(var a=0;a<r.length;++a){var o=r[a];if(o&&o.check()&&o.callback===e&&o.target===i)return!0}return!1},e.removeAll=function(t){var e=typeof t;if("string"===e||"number"===e){var i=this._callbackTable&&this._callbackTable[t];i&&(i.isInvoking?i.cancelAll():(i.clear(),Vs.free(i),delete this._callbackTable[t]))}else if(t)for(var n in this._callbackTable){var r=this._callbackTable[n];if(r.isInvoking)for(var s=r.callbackInfos,a=0;a<s.length;++a){var o=s[a];o&&o.target===t&&r.cancel(a)}else r.removeByTarget(t)}},e.off=function(t,e,i){var n,r=this._callbackTable&&this._callbackTable[t];if(r){var s=r.callbackInfos;if(e)for(var a=0;a<s.length;++a){var o=s[a];if(o&&o.callback===e&&o.target===i){r.cancel(a);break}}else this.removeAll(t)}null===(n=this._offCallback)||void 0===n||n.call(this)},e.emit=function(t,e,i,n,r,s){var a=this._callbackTable&&this._callbackTable[t];if(a){var o=!a.isInvoking;a.isInvoking=!0;for(var h=a.callbackInfos,u=0,l=h.length;u<l;++u){var c=h[u];if(c){var _=c.callback,f=c.target;c.once&&this.off(t,_,f),c.check()?f?_.call(f,e,i,n,r,s):_(e,i,n,r,s):this.off(t,_,f)}}o&&(a.isInvoking=!1,a.containCanceled&&a.purgeCanceled())}},e.clear=function(){for(var t in this._callbackTable){var e=this._callbackTable[t];e&&(e.clear(),Vs.free(e),delete this._callbackTable[t])}},e._registerOffCallback=function(t){this._offCallback=t},t}());function zs(t){for(var e=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._callbackTable=Lt(!0),e}s(e,t);var i=e.prototype;return i.once=function(t,e,i){return this.on(t,e,i,!0)},i.targetOff=function(t){this.removeAll(t)},e}(t),i=Us.prototype,n=Object.getOwnPropertyNames(i).concat(Object.getOwnPropertySymbols(i)),r=0;r<n.length;++r){var a=n[r];if(!(a in e.prototype)){var o=Object.getOwnPropertyDescriptor(i,a);o&&Object.defineProperty(e.prototype,a,o)}}return e}var Hs=t("c4",zs((function(){})));S.EventTarget=Hs;var Ws,Xs,js,Ys,qs,Ks,Qs=t("c6",function(){function t(){this._delegates=[]}var e=t.prototype;return e.add=function(t){this._delegates.includes(t)||this._delegates.push(t)},e.hasListener=function(t){return this._delegates.includes(t)},e.remove=function(t){pe(this._delegates,t)},e.dispatch=function(){for(var t=arguments,e=arguments.length,i=new Array(e),n=0;n<e;n++)i[n]=arguments[n];return Promise.all(this._delegates.map((function(e){return e.apply(void 0,t)})).filter(Boolean))},t}());!function(t){t.UNKNOWN="unknown",t.WECHAT="wechat",t.ANDROID="androidbrowser",t.IE="ie",t.EDGE="edge",t.QQ="qqbrowser",t.MOBILE_QQ="mqqbrowser",t.UC="ucbrowser",t.UCBS="ucbs",t.BROWSER_360="360browser",t.BAIDU_APP="baiduboxapp",t.BAIDU="baidubrowser",t.MAXTHON="maxthon",t.OPERA="opera",t.OUPENG="oupeng",t.MIUI="miuibrowser",t.FIREFOX="firefox",t.SAFARI="safari",t.CHROME="chrome",t.LIEBAO="liebao",t.QZONE="qzone",t.SOUGOU="sogou",t.HUAWEI="huawei"}(Ws||(Ws={})),function(t){t.UNKNOWN="unknown",t.ENGLISH="en",t.CHINESE="zh",t.FRENCH="fr",t.ITALIAN="it",t.GERMAN="de",t.SPANISH="es",t.DUTCH="du",t.RUSSIAN="ru",t.KOREAN="ko",t.JAPANESE="ja",t.HUNGARIAN="hu",t.PORTUGUESE="pt",t.ARABIC="ar",t.NORWEGIAN="no",t.POLISH="pl",t.TURKISH="tr",t.UKRAINIAN="uk",t.ROMANIAN="ro",t.BULGARIAN="bg",t.HINDI="hi"}(Xs||(Xs={})),function(t){t[t.NONE=0]="NONE",t[t.LAN=1]="LAN",t[t.WWAN=2]="WWAN"}(js||(js={})),function(t){t.UNKNOWN="Unknown",t.IOS="iOS",t.ANDROID="Android",t.WINDOWS="Windows",t.LINUX="Linux",t.OSX="OS X",t.OHOS="OHOS",t.OPENHARMONY="OpenHarmony"}(Ys||(Ys={})),function(t){t.UNKNOWN="UNKNOWN",t.EDITOR_PAGE="EDITOR_PAGE",t.EDITOR_CORE="EDITOR_CORE",t.MOBILE_BROWSER="MOBILE_BROWSER",t.DESKTOP_BROWSER="DESKTOP_BROWSER",t.WIN32="WIN32",t.ANDROID="ANDROID",t.IOS="IOS",t.MACOS="MACOS",t.OHOS="OHOS",t.OPENHARMONY="OPENHARMONY",t.WECHAT_GAME="WECHAT_GAME",t.WECHAT_MINI_PROGRAM="WECHAT_MINI_PROGRAM",t.BAIDU_MINI_GAME="BAIDU_MINI_GAME",t.XIAOMI_QUICK_GAME="XIAOMI_QUICK_GAME",t.ALIPAY_MINI_GAME="ALIPAY_MINI_GAME",t.TAOBAO_CREATIVE_APP="TAOBAO_CREATIVE_APP",t.TAOBAO_MINI_GAME="TAOBAO_MINI_GAME",t.BYTEDANCE_MINI_GAME="BYTEDANCE_MINI_GAME",t.OPPO_MINI_GAME="OPPO_MINI_GAME",t.VIVO_MINI_GAME="VIVO_MINI_GAME",t.HUAWEI_QUICK_GAME="HUAWEI_QUICK_GAME",t.COCOSPLAY="COCOSPLAY",t.LINKSURE_MINI_GAME="LINKSURE_MINI_GAME",t.QTT_MINI_GAME="QTT_MINI_GAME"}(qs||(qs={})),function(t){t.WEBP="WEBP",t.IMAGE_BITMAP="IMAGE_BITMAP",t.WEB_VIEW="WEB_VIEW",t.VIDEO_PLAYER="VIDEO_PLAYER",t.SAFE_AREA="SAFE_AREA",t.HPE="HPE",t.INPUT_TOUCH="INPUT_TOUCH",t.EVENT_KEYBOARD="EVENT_KEYBOARD",t.EVENT_MOUSE="EVENT_MOUSE",t.EVENT_TOUCH="EVENT_TOUCH",t.EVENT_ACCELEROMETER="EVENT_ACCELEROMETER",t.EVENT_GAMEPAD="EVENT_GAMEPAD",t.EVENT_HANDLE="EVENT_HANDLE",t.EVENT_HMD="EVENT_HMD",t.EVENT_HANDHELD="EVENT_HANDHELD",t.WASM="WASM"}(Ks||(Ks={}));var Zs=new(function(t){function e(){var e,i,n,r;(r=t.call(this)||this)._battery=null,r._initPromise=[];var s,a=window.navigator,o=a.userAgent.toLowerCase();null===(e=(i=a).getBattery)||void 0===e||e.call(i).then((function(t){r._battery=t})),r.networkType=js.LAN,r.isNative=!1,r.isBrowser=!0,r.isMobile=/mobile|android|iphone|ipad/.test(o),r.platform=r.isMobile?qs.MOBILE_BROWSER:qs.DESKTOP_BROWSER,r.isLittleEndian=(s=new ArrayBuffer(2),new DataView(s).setInt16(0,256,!0),256===new Int16Array(s)[0]);var h=a.language;r.nativeLanguage=h.toLowerCase(),h=(h=h||a.browserLanguage)?h.split("-")[0]:Xs.ENGLISH,r.language=h;var u=!1,l=!1,c="",_=0,f=/android\s*(\d+(?:\.\d+)*)/i.exec(o)||/android\s*(\d+(?:\.\d+)*)/i.exec(a.platform);f&&(u=!0,c=f[1]||"",_=parseInt(c)||0),(f=/(iPad|iPhone|iPod).*OS ((\d+_?){2,3})/i.exec(o))?(l=!0,c=f[2]||"",_=parseInt(c)||0):(/(iPhone|iPad|iPod)/.exec(a.platform)||"MacIntel"===a.platform&&a.maxTouchPoints&&a.maxTouchPoints>1)&&(l=!0,c="",_=0);var d=Ys.UNKNOWN;-1!==a.appVersion.indexOf("Win")?d=Ys.WINDOWS:l?d=Ys.IOS:-1!==a.appVersion.indexOf("Mac")?d=Ys.OSX:-1!==a.appVersion.indexOf("X11")&&-1===a.appVersion.indexOf("Linux")?d=Ys.LINUX:u?d=Ys.ANDROID:-1===a.appVersion.indexOf("Linux")&&-1===o.indexOf("ubuntu")||(d=Ys.LINUX),r.os=d,r.osVersion=c,r.osMainVersion=_,r.browserType=Ws.UNKNOWN;var p=/wechat|weixin|micromessenger/i.exec(o)||/mqqbrowser|micromessenger|qqbrowser|sogou|qzone|liebao|maxthon|ucbs|360 aphone|360browser|baiduboxapp|baidubrowser|maxthon|mxbrowser|miuibrowser/i.exec(o)||/qq|qqbrowser|ucbrowser|ubrowser|edge|HuaweiBrowser/i.exec(o)||/chrome|safari|firefox|trident|opera|opr\/|oupeng/i.exec(o),m=p?p[0].toLowerCase():Ys.UNKNOWN;("safari"===m&&u||"qq"===m&&/android.*applewebkit/i.test(o))&&(m=Ws.ANDROID);var g={micromessenger:Ws.WECHAT,wechat:Ws.WECHAT,weixin:Ws.WECHAT,trident:Ws.IE,edge:Ws.EDGE,"360 aphone":Ws.BROWSER_360,mxbrowser:Ws.MAXTHON,"opr/":Ws.OPERA,ubrowser:Ws.UC,huaweibrowser:Ws.HUAWEI};r.browserType=g[m]||m,r.browserVersion="";var y=/(mqqbrowser|micromessenger|qqbrowser|sogou|qzone|liebao|maxthon|uc|ucbs|360 aphone|360|baiduboxapp|baidu|maxthon|mxbrowser|miui(?:.hybrid)?)(mobile)?(browser)?\/?([\d.]+)/i.exec(o);y||(y=/(qq|chrome|safari|firefox|trident|opera|opr\/|oupeng)(mobile)?(browser)?\/?([\d.]+)/i.exec(o)),r.browserVersion=y?y[4]:"",r.isXR=!1;var S,T=document.createElement("canvas");T.getContext("2d");try{S=T.toDataURL("image/webp").startsWith("data:image/webp")}catch(t){S=!1}if(r.os===Ys.IOS){var A,b=null===(A=/ applewebkit\/(\d+)/.exec(o))||void 0===A?void 0:A[1];"string"==typeof b&&Number.parseInt(b)>=604&&(S=!0)}else if(r.browserType===Ws.SAFARI){var E,C=null===(E=/ version\/(\d+)/.exec(o))||void 0===E?void 0:E[1];"string"==typeof C&&Number.parseInt(C)>=14&&(S=!0)}var x=void 0!==document.documentElement.ontouchstart||void 0!==document.ontouchstart||v,w=void 0!==document.documentElement.onmouseup||v,R=void 0!==navigator.xr,I=function(){if((r.os===Ys.IOS||r.os===Ys.OSX)&&/(OS 15_4)|(Version\/15.4)/.test(window.navigator.userAgent))return!1;try{if("object"==typeof WebAssembly&&"function"==typeof WebAssembly.instantiate){var t=new WebAssembly.Module(new Uint8Array([0,97,115,109,1,0,0,0]));if(t instanceof WebAssembly.Module)return new WebAssembly.Instance(t)instanceof WebAssembly.Instance}}catch(t){return!1}return!1}();return r._featureMap=((n={})[Ks.WEBP]=S,n[Ks.IMAGE_BITMAP]=!1,n[Ks.WEB_VIEW]=!0,n[Ks.VIDEO_PLAYER]=!0,n[Ks.SAFE_AREA]=!1,n[Ks.HPE]=!1,n[Ks.INPUT_TOUCH]=x,n[Ks.EVENT_KEYBOARD]=void 0!==document.documentElement.onkeyup||v,n[Ks.EVENT_MOUSE]=w,n[Ks.EVENT_TOUCH]=x||w,n[Ks.EVENT_ACCELEROMETER]=void 0!==window.DeviceMotionEvent||void 0!==window.DeviceOrientationEvent,n[Ks.EVENT_GAMEPAD]=void 0!==navigator.getGamepads||void 0!==navigator.webkitGetGamepads||R,n[Ks.EVENT_HANDLE]=false,n[Ks.EVENT_HMD]=R,n[Ks.EVENT_HANDHELD]=R,n[Ks.WASM]=I,n),r._initPromise.push(r._supportsImageBitmapPromise()),r._registerEvent(),r}s(e,t);var i=e.prototype;return i._supportsImageBitmapPromise=function(){var t=this;if("undefined"!=typeof createImageBitmap&&"undefined"!=typeof Blob){var e=document.createElement("canvas");e.width=e.height=2;var i=createImageBitmap(e,{});if(i instanceof Promise)return i.then((function(e){t._setFeature(Ks.IMAGE_BITMAP,!0),null==e||e.close()}))}return Promise.resolve()},i._registerEvent=function(){var t,e=this;t=void 0!==document.hidden?"hidden":void 0!==document.mozHidden?"mozHidden":void 0!==document.msHidden?"msHidden":void 0!==document.webkitHidden?"webkitHidden":"hidden";var i=!1,n=function(){i||(i=!0,e.emit("hide"))},r=function(t,n,r,s,a){i&&(i=!1,e.emit("show",t,n,r,s,a))};if(t)for(var s=["visibilitychange","mozvisibilitychange","msvisibilitychange","webkitvisibilitychange","qbrowserVisibilityChange"],a=0;a<s.length;a++)document.addEventListener(s[a],(function(e){var i=document[t];(i=i||e.hidden)?n():r()}));else window.addEventListener("blur",n),window.addEventListener("focus",r);window.navigator.userAgent.indexOf("MicroMessenger")>-1&&(window.onfocus=r),"onpageshow"in window&&"onpagehide"in window&&(window.addEventListener("pagehide",n),window.addEventListener("pageshow",r),document.addEventListener("pagehide",n),document.addEventListener("pageshow",r))},i._setFeature=function(t,e){return this._featureMap[t]=e},i.init=function(){return Promise.all(this._initPromise)},i.hasFeature=function(t){return this._featureMap[t]},i.getBatteryLevel=function(){return this._battery?this._battery.level:1},i.triggerGC=function(){},i.openURL=function(t){window.open(t)},i.now=function(){return Date.now?Date.now():+new Date},i.restartJSVM=function(){},i.exit=function(){window.close()},i.close=function(){this.emit("close")},e}(Hs)),Js=/(\.[^\.\/\?\\]*)(\?.*)?$/,$s=/((.*)(\/|\\|\\\\))?(.*?\..*$)?/,ta=/[^\.\/]+\/\.\.\//;function ea(){for(var t="",e=arguments.length,i=new Array(e),n=0;n<e;n++)i[n]=arguments[n];for(var r=0,s=i;r<s.length;r++){var a=s[r];t=(t+(""===t?"":"/")+a).replace(/(\/|\\\\)$/,"")}return t}function ia(t){var e=Js.exec(t);return e?e[1]:""}function na(t){if(t){var e=t.lastIndexOf(".");if(-1!==e)return t.substring(0,e)}return t}function ra(t,e){var i=t.indexOf("?");i>0&&(t=t.substring(0,i));var n=/(\/|\\)([^\/\\]+)$/g.exec(t.replace(/(\/|\\)$/,""));if(!n)return t;var r=n[2];return e&&t.substring(t.length-e.length).toLowerCase()===e.toLowerCase()?r.substring(0,r.length-e.length):r}function sa(t){var e=$s.exec(t);return e?e[2]:""}function aa(t,e){e=e||"";var i=t.indexOf("?"),n="";return i>0&&(n=t.substring(i),t=t.substring(0,i)),(i=t.lastIndexOf("."))<0?t+e+n:t.substring(0,i)+e+n}function oa(t,e,i){if(0===e.indexOf("."))return aa(t,e);var n=t.indexOf("?"),r="",s=i?ia(t):"";return n>0&&(r=t.substring(n),t=t.substring(0,n)),n=(n=t.lastIndexOf("/"))<=0?0:n+1,t.substring(0,n)+e+s+r}function ha(t){var e=t=String(t);do{e=t,t=t.replace(ta,"")}while(e.length!==t.length);return t}function ua(t){return t.replace(/[\/\\]$/,"")}function la(){return Zs.os===Ys.WINDOWS?"\\":"/"}t("bH",Object.freeze({__proto__:null,join:ea,extname:ia,mainFileName:na,basename:ra,dirname:sa,changeExtname:aa,changeBasename:oa,_normalize:ha,stripSep:ua,getSeperator:la}));var ca=new gn;function _a(t,e,i,n){n||(n=new gn),t.convertToUINode(e,i,n);var r=i.position;return n.add(r),n}function fa(t,e,i){return i||(i=new gn),t.worldToScreen(e,i),i.x/=S.view.getScaleX(),i.y/=S.view.getScaleY(),i}var da=t("bR",{WorldNode3DToLocalNodeUI:_a,WorldNode3DToWorldNodeUI:fa});S.pipelineUtils=da,ut(S.pipelineUtils,"cc.pipelineUtils",[{name:"WorldNode3DToLocalNodeUI",newName:"convertToUINode",targetName:"cc.Camera.prototype",customFunction:function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];var n=e[0],r=e[3]||ca;return n.convertToUINode(e[1],e[2],r),r.add(e[2].position),e[3]||r.clone()}}]);var pa,ma={auto:Be.AUTO,landscape:Be.LANDSCAPE,portrait:Be.PORTRAIT};!function(t){t[t.Unknown=0]="Unknown",t[t.SubFrame=1]="SubFrame",t[t.BrowserWindow=2]="BrowserWindow",t[t.Fullscreen=3]="Fullscreen"}(pa||(pa={}));var ga=new(function(t){s(i,t);var e=i.prototype;function i(){var e,i,n,r,s,a;(e=t.call(this)||this).isFrameRotated=!1,e.handleResizeEvent=!0,e._gameFrame=void 0,e._gameContainer=void 0,e._gameCanvas=void 0,e._isProportionalToFrame=!1,e._cachedFrameStyle={width:"0px",height:"0px"},e._cachedContainerStyle={width:"0px",height:"0px"},e._cbToUpdateFrameBuffer=void 0,e._supportFullScreen=!1,e._touchEventName=void 0,e._onFullscreenChange=void 0,e._onFullscreenError=void 0,e._orientationChangeTimeoutId=-1,e._cachedFrameSize=new Qn(0,0),e._exactFitScreen=!1,e._isHeadlessMode=!1,e._fn={},e._fnGroup=[["requestFullscreen","exitFullscreen","fullscreenchange","fullscreenEnabled","fullscreenElement","fullscreenerror"],["requestFullScreen","exitFullScreen","fullScreenchange","fullScreenEnabled","fullScreenElement","fullscreenerror"],["webkitRequestFullScreen","webkitCancelFullScreen","webkitfullscreenchange","webkitIsFullScreen","webkitCurrentFullScreenElement","webkitfullscreenerror"],["mozRequestFullScreen","mozCancelFullScreen","mozfullscreenchange","mozFullScreen","mozFullScreenElement","mozfullscreenerror"],["msRequestFullscreen","msExitFullscreen","MSFullscreenChange","msFullscreenEnabled","msFullscreenElement","msfullscreenerror"]],e._resolutionScale=1,e._orientation=Be.AUTO,e._orientationDevice=Be.AUTO,e._gameFrame=document.getElementById("GameDiv"),e._gameContainer=document.getElementById("Cocos3dGameContainer"),e._gameCanvas=document.getElementById("GameCanvas"),e._gameFrame||(e._gameFrame=document.createElement("div"),e._gameFrame.setAttribute("id","GameDiv"),null===(i=e._gameCanvas)||void 0===i||null===(n=i.parentNode)||void 0===n||n.insertBefore(e._gameFrame,e._gameCanvas),e._gameFrame.appendChild(e._gameCanvas)),e._gameContainer||(e._gameContainer=document.createElement("div"),e._gameContainer.setAttribute("id","Cocos3dGameContainer"),null===(r=e._gameCanvas)||void 0===r||null===(s=r.parentNode)||void 0===s||s.insertBefore(e._gameContainer,e._gameCanvas),e._gameContainer.appendChild(e._gameCanvas));for(var o=e._fnGroup,h=0;h<o.length;h++)if(a=o[h],void 0!==document[a[1]]){for(var u=0;u<a.length;u++)e._fn[o[0][u]]=a[u];break}return e._supportFullScreen=void 0!==e._fn.requestFullscreen,e._touchEventName="ontouchstart"in window?"touchend":"mousedown",e._registerEvent(),e}return e._updateFrame=function(){this._updateFrameState(),this._resizeFrame()},e.init=function(t,e){this._cbToUpdateFrameBuffer=e,this.orientation=ma[t.configOrientation],this._exactFitScreen=t.exactFitScreen,this._isHeadlessMode=t.isHeadlessMode,this._resizeFrame()},e.requestFullScreen=function(){var t=this;return new Promise((function(e,i){t.isFullScreen?e():(t._cachedFrameSize=t.windowSize,t._doRequestFullScreen().then((function(){e()})).catch((function(){var n=t._getFullscreenTarget();n?n.addEventListener(t._touchEventName,(function(){t._doRequestFullScreen().then((function(){e()})).catch(i)}),{once:!0,capture:!0}):i(new Error("Cannot access fullscreen target"))})))}))},e.exitFullScreen=function(){var t=this;return new Promise((function(e,i){var n=document[t._fn.exitFullscreen]();window.Promise&&n instanceof Promise?n.then((function(){t.windowSize=t._cachedFrameSize,e()})).catch(i):(t.windowSize=t._cachedFrameSize,e())}))},e._registerEvent=function(){var t=this;document.addEventListener(this._fn.fullscreenerror,(function(){var e;null===(e=t._onFullscreenError)||void 0===e||e.call(t)})),window.addEventListener("resize",(function(){t._resizeFrame()}));var e,i=function(e){e!==t._orientationDevice&&(t._orientationDevice=e,t._updateFrame(),t.emit("orientation-change",e))},n=function(){-1!==t._orientationChangeTimeoutId&&clearTimeout(t._orientationChangeTimeoutId),t._orientationChangeTimeoutId=setTimeout((function(){e()}),200)};if("function"==typeof window.matchMedia){!function e(){var i=window.devicePixelRatio,n=window.matchMedia("(resolution: "+i+"dppx)");n.addEventListener?n.addEventListener("change",(function(){t.emit("window-resize",t.windowSize.width,t.windowSize.height),e()}),{once:!0}):n.addListener&&n.addListener((function(){t.emit("window-resize",t.windowSize.width,t.windowSize.height)}))}();var r=window.matchMedia("(orientation: portrait)"),s=window.matchMedia("(orientation: landscape)"),a=screen.orientation;e=function(){var e=t._orientationDevice;r.matches?(e=Be.PORTRAIT,a&&(e="portrait-primary"===screen.orientation.type?Be.PORTRAIT:Be.PORTRAIT_UPSIDE_DOWN)):s.matches&&(e=Be.LANDSCAPE,a&&(e="landscape-primary"===screen.orientation.type?Be.LANDSCAPE_LEFT:Be.LANDSCAPE_RIGHT)),i(e)},r.addEventListener?(r.addEventListener("change",n),s.addEventListener("change",n)):r.addListener&&(r.addListener(n),s.addListener(n))}else e=function(){var e=function(){var e=Be.PORTRAIT;switch(window.orientation){case 0:e=Be.PORTRAIT;break;case 90:e=Be.LANDSCAPE_RIGHT;break;case-90:e=Be.LANDSCAPE_LEFT;break;case 180:e=Be.PORTRAIT_UPSIDE_DOWN;break;default:e=t._orientationDevice}return e}();i(e)},window.addEventListener("orientationchange",n);document.addEventListener(this._fn.fullscreenchange,(function(){var e;null===(e=t._onFullscreenChange)||void 0===e||e.call(t),t.emit("fullscreen-change",t.windowSize.width,t.windowSize.height)}))},e._convertToSizeInCssPixels=function(t){var e=t.clone(),i=this.devicePixelRatio;return e.width/=i,e.height/=i,e},e._resizeFrame=function(t){if(this._gameFrame){if(this._gameFrame.style.display="flex",this._gameFrame.style["justify-content"]="center",this._gameFrame.style["align-items"]="center",this._windowType===pa.SubFrame){if(!t)return void this._updateContainer();this._gameFrame.style.width=t.width+"px",this._gameFrame.style.height=t.height+"px"}else{var e=window.innerWidth,i=window.innerHeight,n=document.body.scrollHeight-i;Zs.os===Ys.ANDROID&&i<n&&(i+=n),this.isFrameRotated?(this._gameFrame.style["-webkit-transform"]="rotate(90deg)",this._gameFrame.style.transform="rotate(90deg)",this._gameFrame.style["-webkit-transform-origin"]="0px 0px 0px",this._gameFrame.style.transformOrigin="0px 0px 0px",this._gameFrame.style.margin="0 0 0 "+e+"px",this._gameFrame.style.width=i+"px",this._gameFrame.style.height=e+"px"):(this._gameFrame.style["-webkit-transform"]="rotate(0deg)",this._gameFrame.style.transform="rotate(0deg)",this._gameFrame.style.margin="0px auto",this._gameFrame.style.width=e+"px",this._gameFrame.style.height=i+"px")}this._updateContainer()}},e._getFullscreenTarget=function(){var t=this._windowType;return t===pa.Fullscreen?document[this._fn.fullscreenElement]:t===pa.SubFrame?this._gameFrame:document.body},e._doRequestFullScreen=function(){var t=this;return new Promise((function(e,i){if(t._supportFullScreen){var n=t._getFullscreenTarget();if(n){t._onFullscreenChange=void 0,t._onFullscreenError=void 0;var r=n[t._fn.requestFullscreen]();window.Promise&&r instanceof Promise?r.then(e).catch(i):(t._onFullscreenChange=e,t._onFullscreenError=i)}else i(new Error("Cannot access fullscreen target"))}else i(new Error("fullscreen is not supported"))}))},e._updateFrameState=function(){var t=this.orientation,e=window.innerWidth>window.innerHeight;this.isFrameRotated=Zs.isMobile&&(e&&t===Be.PORTRAIT||!e&&t===Be.LANDSCAPE)},e._updateContainer=function(){if(this._gameContainer){if(this.isProportionalToFrame){if(!this._gameFrame)return void tt(9201);var t,e,i=S.view.getDesignResolutionSize(),n=this._gameFrame,r=n.clientWidth,s=n.clientHeight,a=i.width,o=i.height,h=r/a,u=s/o,l=this._gameContainer.style;h<u?(t=r,e=o*h):(t=a*u,e=s),l.width=t+"px",l.height=e+"px"}else{var c=this._gameContainer.style;c.width="100%",c.height="100%"}!this._gameFrame||this._cachedFrameStyle.width===this._gameFrame.style.width&&this._cachedFrameStyle.height===this._gameFrame.style.height&&this._cachedContainerStyle.width===this._gameContainer.style.width&&this._cachedContainerStyle.height===this._gameContainer.style.height||(this.emit("window-resize",this.windowSize.width,this.windowSize.height),this._cachedFrameStyle.width=this._gameFrame.style.width,this._cachedFrameStyle.height=this._gameFrame.style.height,this._cachedContainerStyle.width=this._gameContainer.style.width,this._cachedContainerStyle.height=this._gameContainer.style.height)}else tt(9201)},n(i,[{key:"supportFullScreen",get:function(){return this._supportFullScreen}},{key:"isFullScreen",get:function(){return!!this._supportFullScreen&&!!document[this._fn.fullscreenElement]}},{key:"devicePixelRatio",get:function(){var t;return Math.min(null!==(t=window.devicePixelRatio)&&void 0!==t?t:1,2)}},{key:"windowSize",get:function(){var t=this._windowSizeInCssPixels,e=this.devicePixelRatio;return t.width*=e,t.height*=e,t},set:function(t){this._windowType===pa.SubFrame?this._resizeFrame(this._convertToSizeInCssPixels(t)):tt(9202)}},{key:"resolution",get:function(){var t=this.windowSize,e=this.resolutionScale;return new Qn(t.width*e,t.height*e)}},{key:"resolutionScale",get:function(){return this._resolutionScale},set:function(t){var e;t!==this._resolutionScale&&(this._resolutionScale=t,null===(e=this._cbToUpdateFrameBuffer)||void 0===e||e.call(this))}},{key:"orientation",get:function(){return this._orientation},set:function(t){this._orientation!==t&&(this._orientation=t,this._updateFrame())}},{key:"safeAreaEdge",get:function(){var t=this.devicePixelRatio;return{top:parseInt(getComputedStyle(document.documentElement).getPropertyValue("--safe-top")||"0")*t,bottom:parseInt(getComputedStyle(document.documentElement).getPropertyValue("--safe-bottom")||"0")*t,left:parseInt(getComputedStyle(document.documentElement).getPropertyValue("--safe-left")||"0")*t,right:parseInt(getComputedStyle(document.documentElement).getPropertyValue("--safe-right")||"0")*t}}},{key:"isProportionalToFrame",get:function(){return this._isProportionalToFrame},set:function(t){this._isProportionalToFrame!==t&&(this._isProportionalToFrame=t,this._updateContainer())}},{key:"_windowSizeInCssPixels",get:function(){if(this.isProportionalToFrame)return this._gameContainer?new Qn(this._gameContainer.clientWidth,this._gameContainer.clientHeight):(tt(9201),new Qn(0,0));var t,e,i;switch(this._windowType){case pa.SubFrame:return this._gameFrame?new Qn(this._gameFrame.clientWidth,this._gameFrame.clientHeight):(tt(9201),new Qn(0,0));case pa.Fullscreen:return t=this._getFullscreenTarget(),e=this.isFrameRotated?t.clientHeight:t.clientWidth,i=this.isFrameRotated?t.clientWidth:t.clientHeight,new Qn(e,i);case pa.BrowserWindow:return e=this.isFrameRotated?window.innerHeight:window.innerWidth,i=this.isFrameRotated?window.innerWidth:window.innerHeight,new Qn(e,i);case pa.Unknown:default:return new Qn(0,0)}}},{key:"_windowType",get:function(){return this._isHeadlessMode?pa.Unknown:this.isFullScreen?pa.Fullscreen:this._gameFrame?this._exactFitScreen?pa.BrowserWindow:pa.SubFrame:(tt(9201),pa.Unknown)}}]),i}(Hs)),va=function(){function t(){}var e=t.prototype;return e.init=function(){var t,e,i=null===(t=Me.querySettings(De.Category.SCREEN,"exactFitScreen"))||void 0===t||t,n=null!==(e=Me.querySettings(De.Category.SCREEN,"orientation"))&&void 0!==e?e:"auto",r=3===Me.querySettings(De.Category.RENDERING,"renderMode");ga.init({exactFitScreen:i,configOrientation:n,isHeadlessMode:r},(function(){var t,e=S.director;null!==(t=e.root)&&void 0!==t&&t.pipeline?e.root.pipeline.shadingScale=ga.resolutionScale:tt(1220)}))},e.fullScreen=function(){return ga.isFullScreen},e.requestFullScreen=function(t,e,i){return arguments.length>0&&tt(1400,"screen.requestFullScreen(element, onFullScreenChange?, onFullScreenError?)","screen.requestFullScreen(): Promise"),ga.requestFullScreen().then((function(){null==e||e.call(document)})).catch((function(t){H(t),null==i||i.call(document)}))},e.exitFullScreen=function(){return ga.exitFullScreen()},e.autoFullScreen=function(t,e){var i;null===(i=this.requestFullScreen(t,e))||void 0===i||i.catch((function(t){z(t)}))},e.disableAutoFullScreen=function(){},e.on=function(t,e,i){ga.on(t,e,i)},e.once=function(t,e,i){ga.once(t,e,i)},e.off=function(t,e,i){ga.off(t,e,i)},n(t,[{key:"devicePixelRatio",get:function(){return ga.devicePixelRatio}},{key:"windowSize",get:function(){return ga.windowSize},set:function(t){ga.windowSize=t}},{key:"resolution",get:function(){return ga.resolution}},{key:"supportsFullScreen",get:function(){return ga.supportFullScreen}}]),t}(),ya=t("cl",new va);S.screen=ya;var Sa=t("cm",{Feature:Ks,hasFeature:function(t){return Zs.hasFeature(t)},NetworkType:js,Language:Xs,OS:Ys,Platform:qs,BrowserType:Ws,isNative:Zs.isNative,isBrowser:Zs.isBrowser,isMobile:Zs.isMobile,isLittleEndian:Zs.isLittleEndian,platform:Zs.platform,language:Zs.language,languageCode:Zs.nativeLanguage,os:Zs.os,osVersion:Zs.osVersion,osMainVersion:Zs.osMainVersion,browserType:Zs.browserType,browserVersion:Zs.browserVersion,isXR:Zs.isXR,windowPixelResolution:ya.windowSize,capabilities:{canvas:!0,opengl:!0,webp:Zs.hasFeature(Ks.WEBP),imageBitmap:Zs.hasFeature(Ks.IMAGE_BITMAP),touches:Zs.hasFeature(Ks.INPUT_TOUCH),mouse:Zs.hasFeature(Ks.EVENT_MOUSE),keyboard:Zs.hasFeature(Ks.EVENT_KEYBOARD),accelerometer:Zs.hasFeature(Ks.EVENT_ACCELEROMETER)},localStorage:{},getNetworkType:function(){return Zs.networkType},getBatteryLevel:function(){return Zs.getBatteryLevel()},garbageCollect:function(){Zs.triggerGC()},isObjectValid:function(t){return null!=t},__isWebIOS14OrIPadOS14Env:!1,dump:function(){var t="";t+="isMobile : "+this.isMobile+"\r\n",t+="language : "+this.language+"\r\n",t+="browserType : "+this.browserType+"\r\n",t+="browserVersion : "+this.browserVersion+"\r\n",t+="supports webp: "+Sa.hasFeature(Ks.WEBP)+"\r\n",t+="supports bitmap: "+Sa.hasFeature(Ks.IMAGE_BITMAP)+"\r\n",t+="supports touches: "+Sa.hasFeature(Ks.INPUT_TOUCH)+"\r\n",t+="supports mouse: "+Sa.hasFeature(Ks.EVENT_MOUSE)+"\r\n",t+="supports keyboard: "+Sa.hasFeature(Ks.EVENT_KEYBOARD)+"\r\n",t+="supports accelerometer: "+Sa.hasFeature(Ks.EVENT_ACCELEROMETER)+"\r\n",t+="os : "+this.os+"\r\n",t+="osVersion : "+this.osVersion+"\r\n",t+="platform : "+this.platform+"\r\n",U(t+="Using "+(S.game.renderType===S.game.RENDER_TYPE_WEBGL?"WEBGL":"CANVAS")+" renderer.\r\n")},openURL:function(t){Zs.openURL(t)},init:function(){var t=this;return Promise.resolve().then((function(){return Zs.init()})).then((function(){try{var e=Sa.localStorage=window.localStorage;e.setItem("storage",""),e.removeItem("storage"),e=null}catch(e){var i=function(){tt(5200)};t.localStorage={getItem:i,setItem:i,clear:i,removeItem:i,key:i,length:0}}t.__isWebIOS14OrIPadOS14Env=(Sa.os===Ys.IOS||Sa.os===Ys.OSX)&&Zs.isBrowser&&/(OS 14)|(Version\/14)/.test(window.navigator.userAgent)}))},now:function(){return Zs.now()},restartVM:function(){Zs.restartJSVM()},getSafeAreaRect:function(t){void 0===t&&(t=!0);var e=S.view,i=ga.safeAreaEdge;t&&(ga.orientation===Pe.ORIENTATION_PORTRAIT?i.top<i.bottom?i.top=i.bottom:i.bottom=i.top:i.left<i.right?i.left=i.right:i.right=i.left);var n=ga.windowSize,r=new jn(i.left,i.bottom),s=new jn(n.width-i.right,n.height-i.top);e._convertToUISpace(r),e._convertToUISpace(s);var a=r.x,o=r.y,h=s.x-r.x,u=s.y-r.y;return new Jn(a,o,h,u)}});S.sys=Sa,ct(S,"cc",[{name:"winSize",suggest:"please use view.getVisibleSize() instead."}]),ct(Sa,"sys",[{name:"capabilities",suggest:"please use sys.hasFeature() method instead."}]),ut(Sa,"sys",["UNKNOWN","ENGLISH","CHINESE","FRENCH","ITALIAN","GERMAN","SPANISH","DUTCH","RUSSIAN","KOREAN","JAPANESE","HUNGARIAN","PORTUGUESE","ARABIC","NORWEGIAN","POLISH","TURKISH","UKRAINIAN","ROMANIAN","BULGARIAN"].map((function(t){return{name:"LANGUAGE_"+t,newName:t,target:Sa.Language,targetName:"sys.Language"}}))),ut(Sa,"sys",["UNKNOWN","IOS","ANDROID","WINDOWS","LINUX","OSX"].map((function(t){return{name:"OS_"+t,newName:t,target:Sa.OS,targetName:"sys.OS"}}))),ut(Sa,"sys",["UNKNOWN","WECHAT","ANDROID","IE","EDGE","QQ","MOBILE_QQ","UC","UCBS","BAIDU_APP","BAIDU","MAXTHON","OPERA","OUPENG","MIUI","FIREFOX","SAFARI","CHROME","LIEBAO","QZONE","SOUGOU","HUAWEI"].map((function(t){return{name:"BROWSER_TYPE_"+t,newName:t,target:Sa.BrowserType,targetName:"sys.BrowserType"}}))),ut(Sa,"sys",[{name:"BROWSER_TYPE_360",newName:"BROWSER_360",target:Sa.BrowserType,targetName:"sys.BrowserType"}]),ut(Sa,"sys",["UNKNOWN","EDITOR_PAGE","EDITOR_CORE","MOBILE_BROWSER","DESKTOP_BROWSER","WIN32","MACOS","IOS","ANDROID","OHOS","WECHAT_GAME","BAIDU_MINI_GAME","XIAOMI_QUICK_GAME","ALIPAY_MINI_GAME","BYTEDANCE_MINI_GAME","OPPO_MINI_GAME","VIVO_MINI_GAME","HUAWEI_QUICK_GAME","COCOSPLAY","LINKSURE_MINI_GAME","QTT_MINI_GAME"].map((function(t){return{name:t,target:Sa.Platform,targetName:"sys.Platform"}}))),ut(Sa,"sys",[{name:"IPHONE",newName:"IOS",target:Sa.Platform,targetName:"sys.Platform"},{name:"IPAD",newName:"IOS",target:Sa.Platform,targetName:"sys.Platform"}]),lt(Sa,"sys",["LINUX","BLACKBERRY","NACL","EMSCRIPTEN","TIZEN","WINRT","WP8","QQ_PLAY","FB_PLAYABLE_ADS"].map((function(t){return{name:t}}))),ut(Sa,"sys",[{name:"windowPixelResolution",target:ya,targetName:"screen",newName:"windowSize"}]),ct(ya,"screen",[{name:"autoFullScreen",suggest:"please use screen.requestFullScreen() instead."},{name:"disableAutoFullScreen"}]);var Ta=t("co",{topLeft:S.v2(0,0),topRight:S.v2(0,0),top:S.v2(0,0),bottomLeft:S.v2(0,0),bottomRight:S.v2(0,0),bottom:S.v2(0,0),center:S.v2(0,0),left:S.v2(0,0),right:S.v2(0,0),width:0,height:0,init:function(t){var e=this.width=t.width,i=this.height=t.height,n=t.x,r=t.y,s=r+i,a=n+e;this.topLeft.x=n,this.topLeft.y=s,this.topRight.x=a,this.topRight.y=s,this.top.x=n+e/2,this.top.y=s,this.bottomLeft.x=n,this.bottomLeft.y=r,this.bottomRight.x=a,this.bottomRight.y=r,this.bottom.x=n+e/2,this.bottom.y=r,this.center.x=n+e/2,this.center.y=r+i/2,this.left.x=n,this.left.y=r+i/2,this.right.x=a,this.right.y=r+i/2}});S.visibleRect=Ta;var Aa=new gn,ba=new gn,Ea=new gn,Ca=new gn,xa=new wn,wa=function(t,e,i){xa.m00=Math.abs(i.m00),xa.m01=Math.abs(i.m01),xa.m02=Math.abs(i.m02),xa.m03=Math.abs(i.m04),xa.m04=Math.abs(i.m05),xa.m05=Math.abs(i.m06),xa.m06=Math.abs(i.m08),xa.m07=Math.abs(i.m09),xa.m08=Math.abs(i.m10),gn.transformMat3(t,e,xa)},Ra=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=1),void 0===r&&(r=1),void 0===s&&(s=1),this.center=void 0,this.halfExtents=void 0,this._type=void 0,this._type=pr.SHAPE_AABB,this.center=new gn(t,e,i),this.halfExtents=new gn(n,r,s)}t.create=function(e,i,n,r,s,a){return new t(e,i,n,r,s,a)},t.clone=function(e){return new t(e.center.x,e.center.y,e.center.z,e.halfExtents.x,e.halfExtents.y,e.halfExtents.z)},t.copy=function(t,e){return gn.copy(t.center,e.center),gn.copy(t.halfExtents,e.halfExtents),t},t.fromPoints=function(t,e,i){return gn.add(Aa,i,e),gn.subtract(ba,i,e),gn.multiplyScalar(t.center,Aa,.5),gn.multiplyScalar(t.halfExtents,ba,.5),t},t.set=function(t,e,i,n,r,s,a){return t.center.set(e,i,n),t.halfExtents.set(r,s,a),t},t.merge=function(e,i,n){return gn.subtract(Aa,i.center,i.halfExtents),gn.subtract(ba,n.center,n.halfExtents),gn.add(Ea,i.center,i.halfExtents),gn.add(Ca,n.center,n.halfExtents),gn.max(Ca,Ea,Ca),gn.min(Ea,Aa,ba),t.fromPoints(e,Ea,Ca)},t.toBoundingSphere=function(t,e){return t.center.set(e.center),t.radius=e.halfExtents.length(),t},t.transform=function(t,e,i){return gn.transformMat4(t.center,e.center,i),wa(t.halfExtents,e.halfExtents,i),t};var e=t.prototype;return e.getBoundary=function(t,e){gn.subtract(t,this.center,this.halfExtents),gn.add(e,this.center,this.halfExtents)},e.transform=function(t,e,i,n,r){gn.transformMat4(r.center,this.center,t),wa(r.halfExtents,this.halfExtents,t)},e.clone=function(){var e=this.center,i=this.halfExtents;return new t(e.x,e.y,e.z,i.x,i.y,i.z)},e.copy=function(t){return gn.copy(this.center,t.center),gn.copy(this.halfExtents,t.halfExtents),this},e.mergePoint=function(t){this.getBoundary(Aa,ba),t.x<Aa.x&&(Aa.x=t.x),t.y<Aa.y&&(Aa.y=t.y),t.z<Aa.z&&(Aa.z=t.z),t.x>ba.x&&(ba.x=t.x),t.y>ba.y&&(ba.y=t.y),t.z>ba.z&&(ba.z=t.z),gn.add(Ea,Aa,ba),this.center.set(gn.multiplyScalar(Ea,Ea,.5)),this.halfExtents.set(ba.x-Ea.x,ba.y-Ea.y,ba.z-Ea.z)},e.mergePoints=function(t){if(!(t.length<1))for(var e=0;e<t.length;e++)this.mergePoint(t[e])},e.mergeFrustum=function(t){this.mergePoints(t.vertices)},n(t,[{key:"type",get:function(){return this._type}}]),t}(),Ia=function(){function t(t,e,i){void 0===t&&(t=.5),void 0===e&&(e=.5),void 0===i&&(i=1),this._type=void 0,this.radius=void 0,this.halfHeight=void 0,this.axis=void 0,this.center=void 0,this.rotation=void 0,this.ellipseCenter0=void 0,this.ellipseCenter1=void 0,this._type=pr.SHAPE_CAPSULE,this.radius=t,this.halfHeight=e,this.axis=i,this.center=new gn,this.rotation=new Bn,this.ellipseCenter0=new gn(0,e,0),this.ellipseCenter1=new gn(0,-e,0),this.updateCache()}var e=t.prototype;return e.transform=function(t,e,i,n,r){var s=n,a=$i(s);r.radius=this.radius*Math.abs(a);var o=(this.halfHeight+this.radius)*Math.abs(s.y)-r.radius;o<0&&(o=0),r.halfHeight=o,gn.transformMat4(r.center,this.center,t),Bn.multiply(r.rotation,this.rotation,i),r.updateCache()},e.updateCache=function(){this.updateLocalCenter(),gn.transformQuat(this.ellipseCenter0,this.ellipseCenter0,this.rotation),gn.transformQuat(this.ellipseCenter1,this.ellipseCenter1,this.rotation),this.ellipseCenter0.add(this.center),this.ellipseCenter1.add(this.center)},e.updateLocalCenter=function(){var t=this.halfHeight;switch(this.axis){case 0:this.ellipseCenter0.set(t,0,0),this.ellipseCenter1.set(-t,0,0);break;case 1:this.ellipseCenter0.set(0,t,0),this.ellipseCenter1.set(0,-t,0);break;case 2:this.ellipseCenter0.set(0,0,t),this.ellipseCenter1.set(0,0,-t)}},n(t,[{key:"type",get:function(){return this._type}}]),t}(),Da=new Array(8);Da[0]=new gn(1,1,1),Da[1]=new gn(-1,1,1),Da[2]=new gn(-1,-1,1),Da[3]=new gn(1,-1,1),Da[4]=new gn(1,1,-1),Da[5]=new gn(-1,1,-1),Da[6]=new gn(-1,-1,-1),Da[7]=new gn(1,-1,-1);var Ba,Ma=new gn,Pa=new gn,Oa=new gn,La=function(){e.createOrthographic=function(t,e,i,n,r,s){var a=e/2,o=i/2;gn.set(Oa,a,o,-n),gn.transformMat4(t.vertices[0],Oa,s),gn.set(Oa,-a,o,-n),gn.transformMat4(t.vertices[1],Oa,s),gn.set(Oa,-a,-o,-n),gn.transformMat4(t.vertices[2],Oa,s),gn.set(Oa,a,-o,-n),gn.transformMat4(t.vertices[3],Oa,s),gn.set(Oa,a,o,-r),gn.transformMat4(t.vertices[4],Oa,s),gn.set(Oa,-a,o,-r),gn.transformMat4(t.vertices[5],Oa,s),gn.set(Oa,-a,-o,-r),gn.transformMat4(t.vertices[6],Oa,s),gn.set(Oa,a,-o,-r),gn.transformMat4(t.vertices[7],Oa,s),t.updatePlanes()},e.createOrtho=function(t,i,n,r,s,a){return e.createOrthographic(t,i,n,r,s,a)},e.createPerspective=function(t,e,i,n,r,s){var a=Math.tan(.5*i),o=a*e;Ma.set(n*o,n*a,n),Pa.set(r*o,r*a,r);var h=t.vertices;Oa.set(Ma.x,Ma.y,-Ma.z),gn.transformMat4(h[0],Oa,s),Oa.set(-Ma.x,Ma.y,-Ma.z),gn.transformMat4(h[1],Oa,s),Oa.set(-Ma.x,-Ma.y,-Ma.z),gn.transformMat4(h[2],Oa,s),Oa.set(Ma.x,-Ma.y,-Ma.z),gn.transformMat4(h[3],Oa,s),Oa.set(Pa.x,Pa.y,-Pa.z),gn.transformMat4(h[4],Oa,s),Oa.set(-Pa.x,Pa.y,-Pa.z),gn.transformMat4(h[5],Oa,s),Oa.set(-Pa.x,-Pa.y,-Pa.z),gn.transformMat4(h[6],Oa,s),Oa.set(Pa.x,-Pa.y,-Pa.z),gn.transformMat4(h[7],Oa,s),t.updatePlanes()},e.createFromAABB=function(t,e){var i=new gn,n=new gn;return gn.subtract(i,e.center,e.halfExtents),gn.add(n,e.center,e.halfExtents),t.vertices[0].set(n.x,n.y,-i.z),t.vertices[1].set(i.x,n.y,-i.z),t.vertices[2].set(i.x,i.y,-i.z),t.vertices[3].set(n.x,i.y,-i.z),t.vertices[4].set(n.x,n.y,-n.z),t.vertices[5].set(i.x,n.y,-n.z),t.vertices[6].set(i.x,i.y,-n.z),t.vertices[7].set(n.x,i.y,-n.z),t.updatePlanes(),t};var t=e.prototype;function e(){this.planes=void 0,this.vertices=void 0,this._type=void 0,this._type=pr.SHAPE_FRUSTUM,this.planes=new Array(6);for(var t=0;t<6;++t)this.planes[t]=bs.create(0,0,0,0);this.vertices=new Array(8);for(var e=0;e<8;++e)this.vertices[e]=new gn}return t.split=function(t,i,n,r,s){return e.createPerspective(this,n,r,t,i,s)},e.create=function(){return new e},e.clone=function(t){return e.copy(new e,t)},e.copy=function(t,e){t._type=e.type;for(var i=0;i<6;++i)bs.copy(t.planes[i],e.planes[i]);for(var n=0;n<8;++n)gn.copy(t.vertices[n],e.vertices[n]);return t},t.update=function(t,e){gn.set(this.planes[0].n,t.m03+t.m00,t.m07+t.m04,t.m11+t.m08),this.planes[0].d=-(t.m15+t.m12),gn.set(this.planes[1].n,t.m03-t.m00,t.m07-t.m04,t.m11-t.m08),this.planes[1].d=-(t.m15-t.m12),gn.set(this.planes[2].n,t.m03+t.m01,t.m07+t.m05,t.m11+t.m09),this.planes[2].d=-(t.m15+t.m13),gn.set(this.planes[3].n,t.m03-t.m01,t.m07-t.m05,t.m11-t.m09),this.planes[3].d=-(t.m15-t.m13),gn.set(this.planes[4].n,t.m03+t.m02,t.m07+t.m06,t.m11+t.m10),this.planes[4].d=-(t.m15+t.m14),gn.set(this.planes[5].n,t.m03-t.m02,t.m07-t.m06,t.m11-t.m10),this.planes[5].d=-(t.m15-t.m14);for(var i=0;i<6;i++){var n=this.planes[i],r=1/n.n.length();gn.multiplyScalar(n.n,n.n,r),n.d*=r}for(var s=0;s<8;s++)gn.transformMat4(this.vertices[s],Da[s],e)},t.transform=function(t){for(var e=0;e<8;e++)gn.transformMat4(this.vertices[e],this.vertices[e],t);this.updatePlanes()},t.zero=function(){for(var t=0;t<8;t++)this.vertices[t].set(0,0,0);for(var e=0;e<6;e++)bs.set(this.planes[e],0,0,0,0)},t.updatePlanes=function(){bs.fromPoints(this.planes[0],this.vertices[1],this.vertices[6],this.vertices[5]),bs.fromPoints(this.planes[1],this.vertices[3],this.vertices[4],this.vertices[7]),bs.fromPoints(this.planes[2],this.vertices[6],this.vertices[3],this.vertices[7]),bs.fromPoints(this.planes[3],this.vertices[0],this.vertices[5],this.vertices[4]),bs.fromPoints(this.planes[4],this.vertices[2],this.vertices[0],this.vertices[3]),bs.fromPoints(this.planes[5],this.vertices[7],this.vertices[5],this.vertices[6])},n(e,[{key:"accurate",set:function(t){this._type=t?pr.SHAPE_FRUSTUM_ACCURATE:pr.SHAPE_FRUSTUM}},{key:"type",get:function(){return this._type}}]),e}(),Na=new gn,Fa=new gn,ka=new wn,Ga=function(){function t(t,e,i,n,r,s,a,o,h,u,l,c,_,f,d){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=1),void 0===r&&(r=1),void 0===s&&(s=1),void 0===a&&(a=1),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=0),void 0===l&&(l=1),void 0===c&&(c=0),void 0===_&&(_=0),void 0===f&&(f=0),void 0===d&&(d=1),this.center=void 0,this.halfExtents=void 0,this.orientation=void 0,this._type=void 0,this._type=pr.SHAPE_OBB,this.center=new gn(t,e,i),this.halfExtents=new gn(n,r,s),this.orientation=new wn(a,o,h,u,l,c,_,f,d)}t.create=function(e,i,n,r,s,a,o,h,u,l,c,_,f,d,p){return new t(e,i,n,r,s,a,o,h,u,l,c,_,f,d,p)},t.clone=function(e){return new t(e.center.x,e.center.y,e.center.z,e.halfExtents.x,e.halfExtents.y,e.halfExtents.z,e.orientation.m00,e.orientation.m01,e.orientation.m02,e.orientation.m03,e.orientation.m04,e.orientation.m05,e.orientation.m06,e.orientation.m07,e.orientation.m08)},t.copy=function(t,e){return gn.copy(t.center,e.center),gn.copy(t.halfExtents,e.halfExtents),wn.copy(t.orientation,e.orientation),t},t.fromPoints=function(t,e,i){return gn.multiplyScalar(t.center,gn.add(Na,e,i),.5),gn.multiplyScalar(t.halfExtents,gn.subtract(Fa,i,e),.5),wn.identity(t.orientation),t},t.set=function(t,e,i,n,r,s,a,o,h,u,l,c,_,f,d,p){return gn.set(t.center,e,i,n),gn.set(t.halfExtents,r,s,a),wn.set(t.orientation,o,h,u,l,c,_,f,d,p),t};var e=t.prototype;return e.getBoundary=function(t,e){!function(t,e,i){ka.m00=Math.abs(i.m00),ka.m01=Math.abs(i.m01),ka.m02=Math.abs(i.m02),ka.m03=Math.abs(i.m03),ka.m04=Math.abs(i.m04),ka.m05=Math.abs(i.m05),ka.m06=Math.abs(i.m06),ka.m07=Math.abs(i.m07),ka.m08=Math.abs(i.m08),gn.transformMat3(t,e,ka)}(Na,this.halfExtents,this.orientation),gn.subtract(t,this.center,Na),gn.add(e,this.center,Na)},e.transform=function(t,e,i,n,r){gn.transformMat4(r.center,this.center,t),wn.fromQuat(r.orientation,i),gn.multiply(r.halfExtents,this.halfExtents,n)},e.translateAndRotate=function(t,e,i){gn.transformMat4(i.center,this.center,t),wn.fromQuat(i.orientation,e)},e.setScale=function(t,e){gn.multiply(e.halfExtents,this.halfExtents,t)},n(t,[{key:"type",get:function(){return this._type}}]),t}();function Va(t,e,i){void 0===i&&(i=1e-6);for(var n=0,r=t.length-1,s=r>>>1;n<=r;s=n+r>>>1){var a=t[s];if(a>e+i)r=s-1;else{if(!(a<e-i))return s;n=s+1}}return~n}Ba=Symbol.iterator;var Ua,za,Ha,Wa=function(){function t(){this._times=[],this._values=[]}var e=t.prototype;return e[Ba]=function(){var t=this,e=0;return{next:function(){if(e>=t._times.length)return{done:!0,value:void 0};var i=[t._times[e],t._values[e]];return++e,{done:!1,value:i}}}},e.keyframes=function(){return this},e.times=function(){return this._times},e.values=function(){return this._values},e.getKeyframeTime=function(t){return this._times[t]},e.getKeyframeValue=function(t){return this._values[t]},e.addKeyFrame=function(t,e){return this._insertNewKeyframe(t,e)},e.removeKeyframe=function(t){this._times.splice(t,1),this._values.splice(t,1)},e.indexOfKeyframe=function(t){return Va(this._times,t)},e.updateTime=function(t,e){var i=this._values[t];this.removeKeyframe(t),this._insertNewKeyframe(e,i)},e.assignSorted=function(t,e){if(void 0!==e)this.setKeyframes(t.slice(),e.slice());else{var i=Array.from(t);this.setKeyframes(i.map((function(t){return t[0]})),i.map((function(t){return t[1]})))}},e.clear=function(){this._times.length=0,this._values.length=0},e.searchKeyframe=function(t){return Va(this._times,t)},e.setKeyframes=function(t,e){t.length,e.length,function(t){t.every((function(t,e,i){return 0===e||t>i[e-1]||Ni(t,i[e-1],1e-6)}))}(t),this._times=t,this._values=e},e._insertNewKeyframe=function(t,e){var i=this._times,n=this._values,r=i.length,s=Va(i,t);if(s>=0)return s;var a=~s;return 0===a?(i.unshift(t),n.unshift(e)):a===r?(i.push(t),n.push(e)):(i.splice(a-1,0,t),n.splice(a-1,0,e)),a},n(t,[{key:"keyFramesCount",get:function(){return this._times.length}},{key:"rangeMin",get:function(){return this._times[0]}},{key:"rangeMax",get:function(){return this._times[this._values.length-1]}}]),t}();function Xa(t){return t>-1e-9&&t<1e-9}function ja(t,e,i,n){return i.slice().reverse().reduce((function(i,n){return n(t,e,i)||i}),n)}Ci.fastDefine("cc.KeyframeCurve",Wa,{_times:[],_values:[]}),t("cr",Ua),function(t){t[t.LINEAR=0]="LINEAR",t[t.CONSTANT=1]="CONSTANT",t[t.CUBIC=2]="CUBIC"}(Ua||t("cr",Ua={})),t("cs",za),function(t){t[t.LINEAR=0]="LINEAR",t[t.CLAMP=1]="CLAMP",t[t.LOOP=2]="LOOP",t[t.PING_PONG=3]="PING_PONG"}(za||t("cs",za={})),t("ct",Ha),function(t){t[t.NONE=0]="NONE",t[t.LEFT=1]="LEFT",t[t.RIGHT=2]="RIGHT",t[t.BOTH=3]="BOTH"}(Ha||t("ct",Ha={}));var Ya=function(){},qa=function(){return Ya},Ka=Qa((function(){}));function Qa(t){return function(e){return"function"==typeof e?t(e):function(i){return t(i,e)}}}function Za(t){return function(e){return function(i){!function(t,e,i){var n=$a(t);if(n){var r=to(n,"proto");to(r,"editor")[e]=i}}(i,t,e)}}}var Ja="__ccclassCache__";function $a(t){return to(t,Ja)}function to(t,e){return t[e]||(t[e]={})}var eo=Qa((function(t,e){var i=qt(t);i===Object&&(i=null);var n={name:e,extends:i,ctor:t},r=t[Ja];if(r){var s=r.proto;s&&jt(n,s),t[Ja]=void 0}return Ci(n)})),io=Za("requireComponent"),no=Za("executionOrder"),ro=Ka;function so(t,e,i){var n=null;function r(t,e,i){!function(t,e,i,n,r,s){var a,o=s&&"function"!=typeof s&&(s.get||s.set);r&&(a=_i(r,o));var h=jt(e,a||r||{});o?(s.get&&(h.get=s.get),s.set&&(h.set=s.set)):ho(t,h,i,n,s)}(function(t){return $a(t.constructor)}(t),function(t,e){var i,n,r=to($a(t.constructor),"proto"),s=to(r,"properties");return null!==(n=s[i=e])&&void 0!==n?n:s[i]={}}(t,e),t.constructor,e,n,i)}return void 0===t?so({type:void 0}):void 0===e?(n=t,r):void r(t,e,i)}function ao(t){var e;try{e=t()}catch(e){return t}return"object"!=typeof e||null===e?e:t}function oo(t,e,i){var n,r,s=$a(t.constructor),a=to(s,"proto"),o=to(a,"properties"),h=null!==(r=o[n=e])&&void 0!==r?r:o[n]={};return h.__internalFlags|=fi.STANDALONE,i&&"function"!=typeof i&&(i.get||i.set)?(i.get&&(h.get=i.get),i.set&&(h.set=i.set)):ho(s,h,t.constructor,e,i),h}function ho(t,e,i,n,r){if(void 0!==r)"function"==typeof r?e.default=ao(r):null===r||r.initializer&&(e.default=ao(r.initializer));else{var s=t.default||(t.default=function(t){var e;try{e=new t}catch(t){return{}}return e}(i));s.hasOwnProperty(n)&&(e.default=s[n])}}var uo=Symbol("cc:SerializationMetadata"),lo=t("cT",(function(t,e,i){fo(oo(t,e,i))}));function co(t){return function(e,i,n){var r=oo(e,i,n);r.formerlySerializedAs=t,fo(r)}}var _o=function(t,e,i){var n=oo(t,e,i);n.editorOnly=!0,fo(n)};function fo(t){t.__internalFlags|=fi.IMPLICIT_SERIALIZABLE}var po=Ya,mo=Ka,go=qa,vo=Ka,yo=qa,So=qa,To=qa,Ao=t("cI",Ya),bo=t("cK",qa),Eo=t("cL",qa),Co=t("cJ",qa),xo=t("cN",qa),wo=t("cO",qa),Ro=t("cP",Ya),Io=t("cM",qa),Do=t("cQ",Ya),Bo=Lo(ii),Mo=Lo(ni),Po=Lo(ri),Oo=Lo(si);function Lo(t){return so({type:t})}var No,Fo,ko,Go,Vo,Uo,zo,Ho,Wo,Xo,jo=t("cR",(function(t,e,i){oo(t,e,i).override=!0})),Yo=t("c3",(function(){})),qo=Object.freeze({__proto__:null,uniquelyReferenced:po,ccclass:eo,property:so,requireComponent:io,executionOrder:no,disallowMultiple:ro,executeInEditMode:mo,menu:go,playOnFocus:vo,inspector:yo,icon:So,help:To,type:Lo,integer:Bo,float:Mo,boolean:Po,string:Oo,editable:Ao,tooltip:Co,visible:bo,displayName:Eo,displayOrder:Io,range:xo,rangeStep:wo,slide:Ro,disallowAnimation:Do,override:jo,formerlySerializedAs:co,serializable:lo});function Ko(t,e){return(e<<3)+t}function Qo(t){return Jo[t]}function Zo(t){switch(t){case Wo.Uint8:return Uint8Array;case Wo.Uint16:return Uint16Array;case Wo.Uint32:return Uint32Array;case Wo.Int8:return Int8Array;case Wo.Int16:return Int16Array;case Wo.Int32:return Int32Array;case Wo.Float32:return Float32Array;case Wo.Float64:return Float64Array}}t("bS",qo),function(t){t[t.Uint8=0]="Uint8",t[t.Uint16=1]="Uint16",t[t.Uint32=2]="Uint32",t[t.Int8=3]="Int8",t[t.Int16=4]="Int16",t[t.Int32=5]="Int32",t[t.Float32=6]="Float32",t[t.Float64=7]="Float64"}(Wo||(Wo={})),function(t){t[t.Scalar=0]="Scalar",t[t.Vec2=1]="Vec2",t[t.Vec3=2]="Vec3",t[t.Vec4=3]="Vec4",t[t.Quat=4]="Quat",t[t.Mat4=5]="Mat4"}(Xo||(Xo={})),t("b_",eo("cc.CompactValueTypeArray")(((zo=function(){function t(){this._byteOffset=ko&&ko(),this._unitCount=Go&&Go(),this._unitElement=Vo&&Vo(),this._length=Uo&&Uo()}return t.lengthFor=function(t,e,i){return Qo(e).requiredUnits*t.length*Zo(i).BYTES_PER_ELEMENT},t.compress=function(e,i,n,r,s,a){for(var o=Qo(i),h=Zo(n),u=o.requiredUnits*e.length,l=new h(r,s,u),c=0;c<e.length;++c)o.compress(l,c,e[c]);var _=new t;return _._unitElement=Ko(n,i),_._byteOffset=a,_._unitCount=u,_._length=e.length,_},t.prototype.decompress=function(t){for(var e,i={storageUnit:7&(e=this._unitElement),elementType:e>>3},n=i.storageUnit,r=Qo(i.elementType),s=new(Zo(n))(t,this._byteOffset,this._unitCount),a=new Array(this._length),o=0;o<this._length;++o)a[o]=r.decompress(s,o);return a},t}()).StorageUnit=Wo,zo.ElementType=Xo,ko=ja((Fo=zo).prototype,"_byteOffset",[lo],(function(){return 0})),Go=ja(Fo.prototype,"_unitCount",[lo],(function(){return 0})),Vo=ja(Fo.prototype,"_unitElement",[lo],(function(){return Ko(Wo.Uint8,Xo.Scalar)})),Uo=ja(Fo.prototype,"_length",[lo],(function(){return 0})),No=Fo))||No);var Jo=((Ho={})[Xo.Scalar]={requiredUnits:1,compress:function(t,e,i){t[e]=i},decompress:function(t,e){return t[e]}},Ho[Xo.Vec2]={requiredUnits:2,compress:function(t,e,i){t[2*e]=i.x,t[2*e+1]=i.y},decompress:function(t,e){return new gn(t[2*e],t[2*e+1])}},Ho[Xo.Vec3]={requiredUnits:3,compress:function(t,e,i){t[3*e]=i.x,t[3*e+1]=i.y,t[3*e+2]=i.z},decompress:function(t,e){return new gn(t[3*e],t[3*e+1],t[3*e+2])}},Ho[Xo.Vec4]={requiredUnits:4,compress:function(t,e,i){t[4*e]=i.x,t[4*e+1]=i.y,t[4*e+2]=i.z,t[4*e+3]=i.w},decompress:function(t,e){return new cn(t[4*e],t[4*e+1],t[4*e+2],t[4*e+3])}},Ho[Xo.Quat]={requiredUnits:4,compress:function(t,e,i){t[4*e]=i.x,t[4*e+1]=i.y,t[4*e+2]=i.z,t[4*e+3]=i.w},decompress:function(t,e){return new Bn(t[4*e],t[4*e+1],t[4*e+2],t[4*e+3])}},Ho[Xo.Mat4]={requiredUnits:16,compress:function(t,e,i){Vn.toArray(t,i,16*e)},decompress:function(t,e){return Vn.fromArray(new Vn,t,16*e)}},Ho),$o=t("c1",Symbol("[[Serialize]]")),th=t("c0",Symbol("[[Deserialize]]"));function eh(){return 0}function ih(t){return t}function nh(t){return t*t}function rh(t){return t*(2-t)}function sh(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)}function ah(t){return t*t*t}function oh(t){return--t*t*t+1}function hh(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)}function uh(t){return t*t*t*t}function lh(t){return 1- --t*t*t*t}function ch(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)}function _h(t){return t*t*t*t*t}function fh(t){return--t*t*t*t*t+1}function dh(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)}function ph(t){return 1===t?1:1-Math.cos(t*Math.PI/2)}function mh(t){return Math.sin(t*Math.PI/2)}function gh(t){return.5*(1-Math.cos(Math.PI*t))}function vh(t){return 0===t?0:Math.pow(1024,t-1)}function yh(t){return 1===t?1:1-Math.pow(2,-10*t)}function Sh(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))}function Th(t){return 1-Math.sqrt(1-t*t)}function Ah(t){return Math.sqrt(1- --t*t)}function bh(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)}function Eh(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),-i*Math.pow(2,10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4))}function Ch(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),i*Math.pow(2,-10*t)*Math.sin(2*(t-e)*Math.PI/.4)+1)}function xh(t){var e,i=.1;return 0===t?0:1===t?1:(!i||i<1?(i=1,e=.1):e=.4*Math.asin(1/i)/(2*Math.PI),(t*=2)<1?i*Math.pow(2,10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4)*-.5:i*Math.pow(2,-10*(t-=1))*Math.sin(2*(t-e)*Math.PI/.4)*.5+1)}function wh(t){if(1===t)return 1;var e=1.70158;return t*t*((e+1)*t-e)}function Rh(t){if(0===t)return 0;var e=1.70158;return--t*t*((e+1)*t+e)+1}function Ih(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)}function Dh(t){return 1-Bh(1-t)}function Bh(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375}function Mh(t){return t<.5?.5*Dh(2*t):.5*Bh(2*t-1)+.5}function Ph(t){return t<=0?0:t>=1?1:t*t*(3-2*t)}function Oh(t){return t<=0?0:t>=1?1:t*t*t*(t*(6*t-15)+10)}S._decorator=qo;var Lh=Xh(nh,rh),Nh=Xh(ah,oh),Fh=Xh(uh,lh),kh=Xh(_h,fh),Gh=Xh(ph,mh),Vh=Xh(vh,yh),Uh=Xh(Th,Ah),zh=Xh(Eh,Ch),Hh=Xh(wh,Rh),Wh=Xh(Dh,Bh);function Xh(t,e){return function(i){return i<.5?e(2*i)/2:t(2*i-1)/2+.5}}var jh,Yh,qh=Object.freeze({__proto__:null,constant:eh,linear:ih,quadIn:nh,quadOut:rh,quadInOut:sh,cubicIn:ah,cubicOut:oh,cubicInOut:hh,quartIn:uh,quartOut:lh,quartInOut:ch,quintIn:_h,quintOut:fh,quintInOut:dh,sineIn:ph,sineOut:mh,sineInOut:gh,expoIn:vh,expoOut:yh,expoInOut:Sh,circIn:Th,circOut:Ah,circInOut:bh,elasticIn:Eh,elasticOut:Ch,elasticInOut:xh,backIn:wh,backOut:Rh,backInOut:Ih,bounceIn:Dh,bounceOut:Bh,bounceInOut:Mh,smooth:Ph,fade:Oh,quadOutIn:Lh,cubicOutIn:Nh,quartOutIn:Fh,quintOutIn:kh,sineOutIn:Gh,expoOutIn:Vh,circOutIn:Uh,elasticOutIn:zh,backOutIn:Hh,bounceOutIn:Wh});t("cD",qh),t("d1",Yh),function(t){t[t.LINEAR=0]="LINEAR",t[t.CONSTANT=1]="CONSTANT",t[t.QUAD_IN=2]="QUAD_IN",t[t.QUAD_OUT=3]="QUAD_OUT",t[t.QUAD_IN_OUT=4]="QUAD_IN_OUT",t[t.QUAD_OUT_IN=5]="QUAD_OUT_IN",t[t.CUBIC_IN=6]="CUBIC_IN",t[t.CUBIC_OUT=7]="CUBIC_OUT",t[t.CUBIC_IN_OUT=8]="CUBIC_IN_OUT",t[t.CUBIC_OUT_IN=9]="CUBIC_OUT_IN",t[t.QUART_IN=10]="QUART_IN",t[t.QUART_OUT=11]="QUART_OUT",t[t.QUART_IN_OUT=12]="QUART_IN_OUT",t[t.QUART_OUT_IN=13]="QUART_OUT_IN",t[t.QUINT_IN=14]="QUINT_IN",t[t.QUINT_OUT=15]="QUINT_OUT",t[t.QUINT_IN_OUT=16]="QUINT_IN_OUT",t[t.QUINT_OUT_IN=17]="QUINT_OUT_IN",t[t.SINE_IN=18]="SINE_IN",t[t.SINE_OUT=19]="SINE_OUT",t[t.SINE_IN_OUT=20]="SINE_IN_OUT",t[t.SINE_OUT_IN=21]="SINE_OUT_IN",t[t.EXPO_IN=22]="EXPO_IN",t[t.EXPO_OUT=23]="EXPO_OUT",t[t.EXPO_IN_OUT=24]="EXPO_IN_OUT",t[t.EXPO_OUT_IN=25]="EXPO_OUT_IN",t[t.CIRC_IN=26]="CIRC_IN",t[t.CIRC_OUT=27]="CIRC_OUT",t[t.CIRC_IN_OUT=28]="CIRC_IN_OUT",t[t.CIRC_OUT_IN=29]="CIRC_OUT_IN",t[t.ELASTIC_IN=30]="ELASTIC_IN",t[t.ELASTIC_OUT=31]="ELASTIC_OUT",t[t.ELASTIC_IN_OUT=32]="ELASTIC_IN_OUT",t[t.ELASTIC_OUT_IN=33]="ELASTIC_OUT_IN",t[t.BACK_IN=34]="BACK_IN",t[t.BACK_OUT=35]="BACK_OUT",t[t.BACK_IN_OUT=36]="BACK_IN_OUT",t[t.BACK_OUT_IN=37]="BACK_OUT_IN",t[t.BOUNCE_IN=38]="BOUNCE_IN",t[t.BOUNCE_OUT=39]="BOUNCE_OUT",t[t.BOUNCE_IN_OUT=40]="BOUNCE_IN_OUT",t[t.BOUNCE_OUT_IN=41]="BOUNCE_OUT_IN",t[t.SMOOTH=42]="SMOOTH",t[t.FADE=43]="FADE"}(Yh||t("d1",Yh={}));var Kh,Qh=((jh={})[Yh.CONSTANT]=eh,jh[Yh.LINEAR]=ih,jh[Yh.QUAD_IN]=nh,jh[Yh.QUAD_OUT]=rh,jh[Yh.QUAD_IN_OUT]=sh,jh[Yh.QUAD_OUT_IN]=Lh,jh[Yh.CUBIC_IN]=ah,jh[Yh.CUBIC_OUT]=oh,jh[Yh.CUBIC_IN_OUT]=hh,jh[Yh.CUBIC_OUT_IN]=Nh,jh[Yh.QUART_IN]=uh,jh[Yh.QUART_OUT]=lh,jh[Yh.QUART_IN_OUT]=ch,jh[Yh.QUART_OUT_IN]=Fh,jh[Yh.QUINT_IN]=_h,jh[Yh.QUINT_OUT]=fh,jh[Yh.QUINT_IN_OUT]=dh,jh[Yh.QUINT_OUT_IN]=kh,jh[Yh.SINE_IN]=ph,jh[Yh.SINE_OUT]=mh,jh[Yh.SINE_IN_OUT]=gh,jh[Yh.SINE_OUT_IN]=Gh,jh[Yh.EXPO_IN]=vh,jh[Yh.EXPO_OUT]=yh,jh[Yh.EXPO_IN_OUT]=Sh,jh[Yh.EXPO_OUT_IN]=Vh,jh[Yh.CIRC_IN]=Th,jh[Yh.CIRC_OUT]=Ah,jh[Yh.CIRC_IN_OUT]=bh,jh[Yh.CIRC_OUT_IN]=Uh,jh[Yh.ELASTIC_IN]=Eh,jh[Yh.ELASTIC_OUT]=Ch,jh[Yh.ELASTIC_IN_OUT]=xh,jh[Yh.ELASTIC_OUT_IN]=zh,jh[Yh.BACK_IN]=wh,jh[Yh.BACK_OUT]=Rh,jh[Yh.BACK_IN_OUT]=Ih,jh[Yh.BACK_OUT_IN]=Hh,jh[Yh.BOUNCE_IN]=Dh,jh[Yh.BOUNCE_OUT]=Bh,jh[Yh.BOUNCE_IN_OUT]=Mh,jh[Yh.BOUNCE_OUT_IN]=Wh,jh[Yh.SMOOTH]=Ph,jh[Yh.FADE]=Oh,jh);function Zh(t){return Qh[t]}w(255),w(65280);var Jh,$h,tu,eu=Ua.LINEAR<<0|Ha.NONE<<8|Yh.LINEAR<<16,iu=function(t){function e(){var e;return(e=t.call(this)||this).value=0,e.rightTangent=0,e.rightTangentWeight=0,e.leftTangent=0,e.leftTangentWeight=0,e._flags=eu,e}return s(e,t),n(e,[{key:"interpolationMode",get:function(){return(255&this._flags)>>0},set:function(t){this._flags&=-256,this._flags|=t<<0}},{key:"tangentWeightMode",get:function(){return(65280&this._flags)>>8},set:function(t){this._flags&=-65281,this._flags|=t<<8}},{key:"easingMethod",get:function(){return(16711680&this._flags)>>16},set:function(t){this._flags&=-16711681,this._flags|=t<<16}}]),e}(Yo);function nu(t){var e=new iu;if("number"==typeof t)e.value=t;else{var i=t.interpolationMode,n=t.tangentWeightMode,r=t.value,s=t.rightTangent,a=t.rightTangentWeight,o=t.leftTangent,h=t.leftTangentWeight,u=t.easingMethod,l=t[Ds];e.value=null!=r?r:e.value,e.rightTangent=null!=s?s:e.rightTangent,e.rightTangentWeight=null!=a?a:e.rightTangentWeight,e.leftTangent=null!=o?o:e.leftTangent,e.leftTangentWeight=null!=h?h:e.leftTangentWeight,e.interpolationMode=null!=i?i:e.interpolationMode,e.tangentWeightMode=null!=n?n:e.tangentWeightMode,e.easingMethod=null!=u?u:e.easingMethod,l&&(e[Ds]=l)}return e}Ci.fastDefine("cc.RealKeyframeValue",iu,((Kh={interpolationMode:Ua.LINEAR,tangentWeightMode:Ha.NONE,value:0,rightTangent:0,rightTangentWeight:0,leftTangent:0,leftTangentWeight:0,easingMethod:Yh.LINEAR})[Ds]=void 0,Kh)),Ci.Attr.setClassAttr(iu,Ds,"editorOnly",!0),(Jh=iu,null!==(tu=($h=Jh)[uo])&&void 0!==tu?tu:$h[uo]={}).uniquelyReferenced=!0;var ru,su=t("cq",function(t){function e(){var e;return(e=t.call(this)||this).preExtrapolation=za.CLAMP,e.postExtrapolation=za.CLAMP,e}s(e,t);var i=e.prototype;return i.evaluate=function(t){var e=this._times,i=this._values,n=e.length;if(0===n)return 0;var r=e[0],s=e[n-1];if(t<r){var a=this.preExtrapolation,o=i[0];if(a===za.CLAMP||n<2)return o.value;switch(a){case za.LINEAR:return Tu(r,i[0].value,e[1],i[1].value,t);case za.LOOP:t=yu(t,r,s);break;case za.PING_PONG:t=Su(t,r,s);break;default:return o.value}}else if(t>s){var h=this.postExtrapolation,u=i[n-1];if(h===za.CLAMP||n<2)return u.value;switch(h){case za.LINEAR:return Tu(s,u.value,e[n-2],i[n-2].value,t);case za.LOOP:t=yu(t,r,s);break;case za.PING_PONG:t=Su(t,r,s);break;default:return u.value}}var l=Va(e,t);if(l>=0)return i[l].value;var c=~l,_=c-1,f=e[_],d=i[_],p=e[c];return function(t,e,i,n,r){var s=i-t;switch(e.interpolationMode){default:case Ua.CONSTANT:return e.value;case Ua.LINEAR:var a=e.easingMethod===Yh.LINEAR?r:Zh(e.easingMethod)(r);return Gi(e.value,n.value,a);case Ua.CUBIC:var o=1/3,h=e.rightTangent,u=e.rightTangentWeight,l=0!=(e.tangentWeightMode&Ha.RIGHT),c=n.leftTangent,_=n.leftTangentWeight,f=0!=(n.tangentWeightMode&Ha.LEFT);if(l||f){var d=0;if(l)d=u;else{var p=s,m=s*h;d=Math.sqrt(p*p+m*m)*o}var g=Math.atan(h),v=Math.cos(g)*d+t,y=Math.sin(g)*d+e.value,S=0;if(f)S=_;else{var T=s,A=s*c;S=Math.sqrt(T*T+A*A)*o}var b=Math.atan(c),E=(v-t)/s,C=(-Math.cos(b)*S+i-t)/s,x=y,w=-Math.sin(b)*S+n.value,R=[0,0,0],I=function(t,e,i,n,r){var s=i/n,a=e/n,o=s*s,h=1/3*(-1/3*o+a),u=.5*(2/27*s*o-1/3*s*a+t/n),l=h*h*h,c=u*u+l,_=0;if(Xa(c)){if(Xa(u))return r[0]=0,1;var f=Math.cbrt(-u);return r[0]=2*f,r[1]=-f,2}if(c<0){var d=1/3*Math.acos(-u/Math.sqrt(-l)),p=2*Math.sqrt(-h);r[0]=p*Math.cos(d),r[1]=-p*Math.cos(d+Math.PI/3),r[2]=-p*Math.cos(d-Math.PI/3),_=3}else{var m=Math.sqrt(c),g=Math.cbrt(m-u),v=-Math.cbrt(m+u);r[0]=g+v,_=1}for(var y=1/3*s,S=0;S<_;++S)r[S]-=y;return _}(0-r,3*E,3*C-6*E,3*(E-C)+1,R),D=function(t,e,i){var n=i;if(1===e)n=t[0];else{n=-1/0;for(var r=0;r<e;++r){var s=t[r];s>=0&&s<=1&&s>n&&(n=s)}n===-1/0&&(n=0)}return n}(R,I,r);return Au(e.value,x,w,n.value,D)}var B=e.value+o*h*s,M=n.value-o*c*s;return Au(e.value,B,M,n.value,r)}}(f,d,p,i[c],(t-f)/(p-f))},i.addKeyFrame=function(e,i){return t.prototype.addKeyFrame.call(this,e,nu(i))},i.assignSorted=function(t,e){if(void 0!==e)this.setKeyframes(t.slice(),e.map((function(t){return nu(t)})));else{var i=Array.from(t);this.setKeyframes(i.map((function(t){return t[0]})),i.map((function(t){return nu(t[1])})))}},i.isConstant=function(t){if(this._values.length<=1)return!0;var e=this._values[0].value;return this._values.every((function(i){return Ni(i.value,e,t)}))},i[$o]=function(t,e){if(e.toCCON){var i=this._times,n=this._values,r=i.length,s=new DataView(new ArrayBuffer(0+au+au+ou+hu*r+mu*r)),a=0;s.setUint8(a,this.preExtrapolation),a+=au,s.setUint8(a,this.postExtrapolation),a+=au,s.setUint32(a,r,!0),a+=ou,i.forEach((function(t,e){return s.setFloat32(a+hu*e,t,!0)})),a+=hu*r;for(var o,h=f(n);!(o=h()).done;){var u=o.value;a=gu(s,u,a)}var l=new Uint8Array(s.buffer,0,a);t.writeProperty("bytes",l);var c=n.map((function(t){return t[Ds]}));c.some((function(t){return void 0!==t}))&&t.writeProperty("keyframeValueEditorExtras",c)}else t.writeThis()},i[th]=function(t,e){if(e.fromCCON){var i=t.readProperty("bytes"),n=new DataView(i.buffer,i.byteOffset,i.byteLength),r=0;this.preExtrapolation=n.getUint8(r),r+=au,this.postExtrapolation=n.getUint8(r),r+=au;var s=n.getUint32(r,!0);r+=ou;var a=Array.from({length:s},(function(t,e){return n.getFloat32(r+hu*e,!0)}));r+=hu*s;for(var o=new Array(s),h=0;h<s;++h){var u=nu({});r=vu(n,u,r),o[h]=u}i.byteLength;var l=t.readProperty("keyframeValueEditorExtras");l&&(l.length,l.forEach((function(t,e){return o[e][Ds]=t}))),this._times=a,this._values=o}else t.readThis()},e}(Wa));Ci.fastDefine("cc.RealCurve",su,{_times:[],_values:[],preExtrapolation:za.CLAMP,postExtrapolation:za.CLAMP}),function(t){t[t.VALUE=1]="VALUE",t[t.INTERPOLATION_MODE=2]="INTERPOLATION_MODE",t[t.TANGENT_WEIGHT_MODE=4]="TANGENT_WEIGHT_MODE",t[t.LEFT_TANGENT=8]="LEFT_TANGENT",t[t.LEFT_TANGENT_WEIGHT=16]="LEFT_TANGENT_WEIGHT",t[t.RIGHT_TANGENT=32]="RIGHT_TANGENT",t[t.RIGHT_TANGENT_WEIGHT=64]="RIGHT_TANGENT_WEIGHT"}(ru||(ru={}));var au=1,ou=4,hu=4,uu=nu({}),lu=uu.interpolationMode,cu=uu.tangentWeightMode,_u=uu.leftTangent,fu=uu.leftTangentWeight,du=uu.rightTangent,pu=uu.rightTangentWeight,mu=26;function gu(t,e,i){var n=0,r=i,s=r;r+=4;var a=e.value,o=e.interpolationMode,h=e.tangentWeightMode,u=e.rightTangent,l=e.rightTangentWeight,c=e.leftTangent,_=e.leftTangentWeight,f=e.easingMethod;return t.setFloat32(r,a,!0),r+=4,o!==lu&&(n|=ru.INTERPOLATION_MODE,t.setUint8(r,o),r+=1),h!==cu&&(n|=ru.TANGENT_WEIGHT_MODE,t.setUint8(r,h),r+=1),c!==_u&&(n|=ru.LEFT_TANGENT,t.setFloat32(r,c,!0),r+=4),_!==fu&&(n|=ru.LEFT_TANGENT_WEIGHT,t.setFloat32(r,_,!0),r+=4),u!==du&&(n|=ru.RIGHT_TANGENT,t.setFloat32(r,u,!0),r+=4),l!==pu&&(n|=ru.RIGHT_TANGENT_WEIGHT,t.setFloat32(r,l,!0),r+=4),n|=f<<8,t.setUint32(s,n,!0),r}function vu(t,e,i){var n=i,r=t.getUint32(n,!0);n+=4,e.value=t.getFloat32(n,!0),n+=4,r&ru.INTERPOLATION_MODE&&(e.interpolationMode=t.getUint8(n),n+=1),r&ru.TANGENT_WEIGHT_MODE&&(e.tangentWeightMode=t.getUint8(n),n+=1),r&ru.LEFT_TANGENT&&(e.leftTangent=t.getFloat32(n,!0),n+=4),r&ru.LEFT_TANGENT_WEIGHT&&(e.leftTangentWeight=t.getFloat32(n,!0),n+=4),r&ru.RIGHT_TANGENT&&(e.rightTangent=t.getFloat32(n,!0),n+=4),r&ru.RIGHT_TANGENT_WEIGHT&&(e.rightTangentWeight=t.getFloat32(n,!0),n+=4);var s=(65280&r)>>8;return e.easingMethod=s,n}function yu(t,e,i){return e+Qi(t-e,i-e)}function Su(t,e,i){return e+Zi(t-e,i-e)}function Tu(t,e,i,n,r){return e+(n-e)/(i-t)*(r-t)}function Au(t,e,i,n,r){var s=1-r;return s*s*s*t+3*s*s*r*e+3*s*r*r*i+r*r*r*n}function bu(t,e,i,n,r){var s=1-r;return s*(s*(t+(3*e-t)*r)+3*i*r*r)+n*r*r*r}S.bezier=bu;var Eu,Cu,xu,wu,Ru,Iu,Du,Bu,Mu,Pu,Ou=Math.cos,Lu=Math.acos,Nu=Math.max,Fu=2*Math.PI,ku=Math.sqrt;function Gu(t){return t<0?-Math.pow(-t,1/3):Math.pow(t,1/3)}function Vu(t,e){var i=function(t,e){var i,n,r,s,a=e-0,o=e-t[0],h=3*a,u=3*o,l=3*(e-t[2]),c=1/(-a+u-l+(e-1)),_=1/3,f=(h-6*o+l)*c,d=f*_,p=(-h+u)*c,m=(3*p-f*f)*_,g=m*_,v=(2*f*f*f-9*f*p+a*c*27)/27,y=v/2,S=y*y+g*g*g;if(S<0){var T=-m*_,A=ku(T*T*T),b=-v/(2*A),E=Lu(b<-1?-1:b>1?1:b),C=2*Gu(A);return n=C*Ou(E*_)-d,r=C*Ou((E+Fu)*_)-d,s=C*Ou((E+2*Fu)*_)-d,n>=0&&n<=1?r>=0&&r<=1?s>=0&&s<=1?Nu(n,r,s):Nu(n,r):s>=0&&s<=1?Nu(n,s):n:r>=0&&r<=1?s>=0&&s<=1?Nu(r,s):r:s}if(0===S)return r=-(i=y<0?Gu(-y):-Gu(y))-d,(n=2*i-d)>=0&&n<=1?r>=0&&r<=1?Nu(n,r):n:r;var x=ku(S);return(i=Gu(-y+x))-Gu(y+x)-d}(t,e),n=t[1];return((1-i)*(n+(t[3]-n)*i)*3+i*i)*i}S.bezierByTime=Vu,t("cv",Pu),function(t){t[t.SLERP=0]="SLERP",t[t.CONSTANT=1]="CONSTANT"}(Pu||t("cv",Pu={}));var Uu=eo("cc.QuatKeyframeValue")(Eu=po((Cu=function(t){var e=void 0===t?{}:t,i=e.value,n=e.interpolationMode,r=e.easingMethod;this.interpolationMode=xu&&xu(),this.value=wu&&wu(),this.easingMethod=Ru&&Ru(),this.value=i?Bn.clone(i):this.value,this.interpolationMode=null!=n?n:this.interpolationMode,this.easingMethod=null!=r?r:this.easingMethod},xu=ja(Cu.prototype,"interpolationMode",[lo],(function(){return Pu.SLERP})),wu=ja(Cu.prototype,"value",[lo],(function(){return Bn.clone(Bn.IDENTITY)})),Ru=ja(Cu.prototype,"easingMethod",[lo],(function(){return Yh.LINEAR})),Eu=Cu))||Eu)||Eu;function zu(t){return new Uu(t)}var Hu,Wu=t("cu",eo("cc.QuatCurve")((Du=function(t){function e(){var e;return(e=t.call(this)||this).preExtrapolation=Bu&&Bu(),e.postExtrapolation=Mu&&Mu(),e}s(e,t);var i=e.prototype;return i.evaluate=function(t,e){var i;null!==(i=e)&&void 0!==i||(e=new Bn);var n=this._times,r=this._values,s=this.postExtrapolation,a=this.preExtrapolation,o=n.length;if(0===o)return e;var h=n[0],u=n[o-1];if(t<h){var l=r[0];switch(a){case za.LOOP:t=h+Qi(t-h,u-h);break;case za.PING_PONG:t=h+Zi(t-h,u-h);break;case za.CLAMP:default:return Bn.copy(e,l.value)}}else if(t>u){var c=r[o-1];switch(s){case za.LOOP:t=h+Qi(t-h,u-h);break;case za.PING_PONG:t=h+Zi(t-h,u-h);break;case za.CLAMP:default:return Bn.copy(e,c.value)}}var _=Va(n,t);if(_>=0)return Bn.copy(e,r[_].value);var f=~_,d=f-1,p=n[d],m=r[d],g=n[f],v=r[f],y=(t-p)/(g-p);switch(m.interpolationMode){default:case Pu.CONSTANT:return Bn.copy(e,m.value);case Pu.SLERP:var S=m.easingMethod,T=S===Yh.LINEAR?y:Array.isArray(S)?Vu(S,y):Zh(S)(y);return Bn.slerp(e,m.value,v.value,T)}},i.addKeyFrame=function(e,i){var n=new Uu(i);return t.prototype.addKeyFrame.call(this,e,n)},i.assignSorted=function(t,e){if(void 0!==e)this.setKeyframes(t.slice(),e.map((function(t){return zu(t)})));else{var i=Array.from(t);this.setKeyframes(i.map((function(t){return t[0]})),i.map((function(t){return zu(t[1])})))}},i[$o]=function(t,e){if(e.toCCON){var i=this._times,n=this._values,r=!0;n.forEach((function(t,e,i){var n=i[0];r&&t.interpolationMode!==n.interpolationMode&&(r=!1)}));var s=i.length,a=Qu*(r?1:s),o=n.reduce((function(t,e){var i=e.easingMethod;return t+(Array.isArray(i)?Zu+4*$u:Zu)}),0),h=0,u=new DataView(new ArrayBuffer(h+=ju+Yu+qu*s+4*Ku*s+o+a+0)),l=0,c=0;r&&(c|=Hu.INTERPOLATION_MODE),u.setUint32(l,c,!0),l+=ju,u.setUint32(l,s,!0),l+=Yu,i.forEach((function(t,e){return u.setFloat32(l+qu*e,t,!0)})),l+=qu*s,n.forEach((function(t,e){var i=t.value,n=i.x,r=i.y,s=i.z,a=i.w,o=l+4*Ku*e;u.setFloat32(o+0*Ku,n,!0),u.setFloat32(o+1*Ku,r,!0),u.setFloat32(o+2*Ku,s,!0),u.setFloat32(o+3*Ku,a,!0)})),l+=4*Ku*s,n.forEach((function(t){var e=t.easingMethod;Array.isArray(e)?(u.setUint8(l,Ju),++l,u.setFloat32(l+0*$u,e[0],!0),u.setFloat32(l+1*$u,e[1],!0),u.setFloat32(l+2*$u,e[2],!0),u.setFloat32(l+3*$u,e[3],!0),l+=4*$u):(u.setUint8(l,e),++l)}));var _=l;l+=a;var f=_;n.forEach((function(t){var e=t.interpolationMode;u.setUint8(f,e),r||(f+=Qu)}));var d=new Uint8Array(u.buffer);t.writeProperty("bytes",d)}else t.writeThis()},i[th]=function(t,e){if(e.fromCCON){var i=t.readProperty("bytes"),n=new DataView(i.buffer,i.byteOffset,i.byteLength),r=0,s=n.getUint32(r,!0);r+=ju;var a=s&Hu.INTERPOLATION_MODE,o=n.getUint32(r,!0);r+=Yu;var h=Array.from({length:o},(function(t,e){return n.getFloat32(r+qu*e,!0)})),u=r+=qu*o;r+=4*Ku*o;var l=Array.from({length:o},(function(t,e){var i=u+4*Ku*e,s=n.getFloat32(i+0*Ku,!0),a=n.getFloat32(i+1*Ku,!0),o=n.getFloat32(i+2*Ku,!0),h=n.getFloat32(i+3*Ku,!0),l=n.getUint8(r);++r;var c=zu({value:{x:s,y:a,z:o,w:h}});return l!==Ju?c.easingMethod=l:(c.easingMethod=[n.getFloat32(r+0*$u,!0),n.getFloat32(r+1*$u,!0),n.getFloat32(r+2*$u,!0),n.getFloat32(r+3*$u,!0)],r+=4*$u),c}));if(a){var c=n.getUint8(r);++r;for(var _=0;_<o;++_)l[_].interpolationMode=c}else{for(var f=0;f<o;++f){var d=n.getUint8(r+f);l[f].interpolationMode=d}r+=o}this._times=h,this._values=l}else t.readThis()},e}(Wa),Bu=ja(Du.prototype,"preExtrapolation",[lo],(function(){return za.CLAMP})),Mu=ja(Du.prototype,"postExtrapolation",[lo],(function(){return za.CLAMP})),Iu=Du))||Iu);!function(t){t[t.INTERPOLATION_MODE=1]="INTERPOLATION_MODE"}(Hu||(Hu={}));var Xu,ju=1,Yu=4,qu=4,Ku=4,Qu=1,Zu=1,Ju=255,$u=4,tl=t("cw",eo("cc.ObjectCurve")(Xu=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.evaluate=function(t){var e=this.searchKeyframe(t);if(e>=0)return this._values[e];var i=Fi(~e-1,0,this._values.length-1);return this._values[i]},e}(Wa))||Xu),el=Ee({Blend:0,Fixed:1}),il=t("cx",(function(){this.color=En.WHITE.clone(),this.time=0}));Ci.fastDefine("cc.ColorKey",il,{color:En.WHITE.clone(),time:0}),Ci.Attr.setClassAttr(il,"color","visible",!0),Ci.Attr.setClassAttr(il,"time","visible",!0);var nl=t("cy",(function(){this.alpha=1,this.time=0}));Ci.fastDefine("cc.AlphaKey",nl,{alpha:1,time:0}),Ci.Attr.setClassAttr(nl,"alpha","visible",!0),Ci.Attr.setClassAttr(nl,"time","visible",!0);var rl=t("cz",function(){function t(){this.colorKeys=[],this.alphaKeys=[],this.mode=el.Blend}var e=t.prototype;return e.setKeys=function(t,e){this.colorKeys=t,this.alphaKeys=e},e.sortKeys=function(){this.colorKeys.length>1&&this.colorKeys.sort((function(t,e){return t.time-e.time})),this.alphaKeys.length>1&&this.alphaKeys.sort((function(t,e){return t.time-e.time}))},e.evaluate=function(t){return this.evaluateFast(new En,t)},e.evaluateFast=function(t,e){return this.getRGB(t,e),t.a=this.getAlpha(e),t},e.randomColor=function(){return this.getRandomColor(new En)},e.getRandomColor=function(t){var e=this.colorKeys[Math.trunc(zi()*this.colorKeys.length)],i=this.alphaKeys[Math.trunc(zi()*this.alphaKeys.length)];return t.set(e.color),t.a=i.alpha,t},e.getRGB=function(t,e){var i=this.colorKeys,n=i.length;if(n>1){e=Qi(e,1+Oi);for(var r=1;r<n;++r){var s=i[r-1].time,a=i[r].time;if(e>=s&&e<a){if(this.mode===el.Fixed)return En.copy(t,i[r].color),t;var o=(e-s)/(a-s);return En.lerp(t,i[r-1].color,i[r].color,o),t}}var h=n-1;Ni(e,i[h].time,Oi)?En.copy(t,i[h].color):e<i[0].time?En.lerp(t,En.BLACK,i[0].color,e/i[0].time):e>i[h].time&&En.lerp(t,i[h].color,En.BLACK,(e-i[h].time)/(1-i[h].time))}else 1===n?En.copy(t,i[0].color):En.copy(t,En.WHITE);return t},e.getAlpha=function(t){var e=this.alphaKeys,i=e.length;if(i>1){t=Qi(t,1+Oi);for(var n=1;n<i;++n){var r=e[n-1].time,s=e[n].time;if(t>=r&&t<s){if(this.mode===el.Fixed)return e[n].alpha;var a=(t-r)/(s-r);return Gi(e[n-1].alpha,e[n].alpha,a)}}var o=i-1;return Ni(t,e[o].time,Oi)?e[o].alpha:t<e[0].time?Gi(0,e[0].alpha,t/e[0].time):t>e[o].time?Gi(e[o].alpha,0,(t-e[o].time)/(1-e[o].time)):255}return 1===i?e[0].alpha:255},t}());rl.Mode=el,Ci.fastDefine("cc.Gradient",rl,{colorKeys:[],alphaKeys:[],mode:el.Blend}),Ci.Attr.setClassAttr(rl,"colorKeys","visible",!0),Ci.Attr.setClassAttr(rl,"alphaKeys","visible",!0),Ci.Attr.setClassAttr(rl,"mode","visible",!0);var sl=function(){this.time=0,this.value=0,this.inTangent=0,this.outTangent=0};Ci.fastDefine("cc.Keyframe",sl,{time:0,value:0,inTangent:0,outTangent:0});var al=function(){function t(){this.index=void 0,this.time=void 0,this.endTime=void 0,this.coefficient=void 0,this.index=-1,this.time=0,this.endTime=0,this.coefficient=new Float32Array(4)}return t.prototype.evaluate=function(t){return ol(t-this.time,this.coefficient)},t}();function ol(t,e){return t*(t*(t*e[0]+e[1])+e[2])+e[3]}var hl,ul,ll=function(){function t(t){if(void 0===t&&(t=null),this._curve=void 0,this.cachedKey=void 0,t instanceof su)this._curve=t;else{var e=new su;this._curve=e,e.preExtrapolation=za.LOOP,e.postExtrapolation=za.CLAMP,t?e.assignSorted(t.map((function(t){return[t.time,{interpolationMode:Ua.CUBIC,value:t.value,leftTangent:t.inTangent,rightTangent:t.outTangent}]}))):e.assignSorted([[0,{interpolationMode:Ua.CUBIC,value:1}],[1,{interpolationMode:Ua.CUBIC,value:1}]])}this.cachedKey=new al}var e=t.prototype;return e.addKey=function(t){t?this._curve.addKeyFrame(t.time,{interpolationMode:Ua.CUBIC,value:t.value,leftTangent:t.inTangent,rightTangent:t.outTangent}):this._curve.clear()},e.evaluate_slow=function(t){return this._curve.evaluate(t)},e.evaluate=function(t){var e=this.cachedKey,i=this._curve,n=i.keyFramesCount-1,r=t,s=t<0?i.preExtrapolation:i.postExtrapolation,a=i.getKeyframeTime(0),o=i.getKeyframeTime(n);switch(s){case za.LOOP:r=Qi(t-a,o-a)+a;break;case za.PING_PONG:r=Zi(t-a,o-a)+a;break;case za.CLAMP:default:r=Fi(t,a,o)}if(r>=e.time&&r<e.endTime)return e.evaluate(r);var h=this.findIndex(e,r),u=Math.min(h+1,n);return this.calcOptimizedKey(e,h,u),e.evaluate(r)},e.calcOptimizedKey=function(t,e,i){var n=this._curve.getKeyframeTime(e),r=this._curve.getKeyframeTime(i),s=this._curve.getKeyframeValue(e),a=s.value,o=s.leftTangent,h=this._curve.getKeyframeValue(i),u=h.value,l=h.rightTangent;t.index=e,t.time=n,t.endTime=r;var c=r-n,_=u-a,f=1/(c*c),d=o*c,p=l*c;t.coefficient[0]=(d+p-_-_)*f/c,t.coefficient[1]=(_+_+_-d-d-p)*f,t.coefficient[2]=o,t.coefficient[3]=a},e.findIndex=function(t,e){var i=this._curve,n=i.keyFramesCount,r=t.index;if(-1!==r)if(e>i.getKeyframeTime(r))for(var s=0;s<3;s++){var a=r+s;if(a+1<n&&i.getKeyframeTime(a+1)>e)return a}else for(var o=0;o<3;o++){var h=r-o;if(h>=0&&i.getKeyframeTime(h-1)<=e)return h-1}for(var u,l=0,c=n;c-l>1;)u=Math.floor((l+c)/2),i.getKeyframeTime(u)>=e?c=u:l=u;return l},n(t,[{key:"_internalCurve",get:function(){return this._curve}},{key:"keyFrames",get:function(){return Array.from(this._curve.keyframes()).map((function(t){var e=t[0],i=t[1],n=new sl;return n.time=e,n.value=i.value,n.inTangent=i.leftTangent,n.outTangent=i.rightTangent,n}))},set:function(t){this._curve.assignSorted(t.map((function(t){return[t.time,{interpolationMode:Ua.CUBIC,value:t.value,leftTangent:t.inTangent,rightTangent:t.outTangent}]})))}},{key:"preWrapMode",get:function(){return _l(this._curve.preExtrapolation)},set:function(t){this._curve.preExtrapolation=cl(t)}},{key:"postWrapMode",get:function(){return _l(this._curve.postExtrapolation)},set:function(t){this._curve.postExtrapolation=cl(t)}}]),t}();function cl(t){switch(t){default:case hl.Default:case hl.Normal:case hl.Clamp:return za.CLAMP;case hl.PingPong:return za.PING_PONG;case hl.Loop:return za.LOOP}}function _l(t){switch(t){default:case za.LINEAR:case za.CLAMP:return hl.Clamp;case za.PING_PONG:return hl.PingPong;case za.LOOP:return hl.Loop}}function fl(){var t=new su;return t.assignSorted([[0,{interpolationMode:Ua.CUBIC,value:1}],[1,{interpolationMode:Ua.CUBIC,value:1}]]),t}ll.defaultKF=[{time:0,value:1,inTangent:0,outTangent:0},{time:1,value:1,inTangent:0,outTangent:0}],Ci.fastDefine("cc.AnimationCurve",ll,{_curve:null}),function(t){t[t.Default=0]="Default",t[t.Normal=1]="Normal",t[t.Loop=2]="Loop",t[t.ShouldWrap=4]="ShouldWrap",t[t.Clamp=8]="Clamp",t[t.PingPong=22]="PingPong",t[t.Reverse=36]="Reverse"}(hl||(hl={})),function(t){t[t.LINEAR=0]="LINEAR",t[t.BEZIER=1]="BEZIER",t[t.CATMULL_ROM=2]="CATMULL_ROM"}(ul||(ul={}));var dl,pl=4294967295,ml=new gn,gl=new gn,vl=new gn,yl=new gn,Sl=function(){function t(t,e){void 0===t&&(t=ul.CATMULL_ROM),void 0===e&&(e=[]),this._type=void 0,this._mode=ul.CATMULL_ROM,this._knots=[],this._type=pr.SHAPE_SPLINE,this._mode=t;for(var i=0;i<e.length;i++)this._knots[i]=new gn(e[i])}t.create=function(e,i){return void 0===i&&(i=[]),new t(e,i)},t.clone=function(e){return new t(e.mode,e.knots)},t.copy=function(t,e){t._mode=e.mode,t._knots.length=0;for(var i=e.knots,n=i.length,r=0;r<n;r++)t._knots[r]=new gn(i[r]);return t};var e=t.prototype;return e.setModeAndKnots=function(t,e){this._mode=t,this._knots.length=0;for(var i=0;i<e.length;i++)this._knots[i]=new gn(e[i])},e.clearKnots=function(){this._knots.length=0},e.getKnotCount=function(){return this._knots.length},e.addKnot=function(t){this._knots.push(new gn(t))},e.insertKnot=function(t,e){var i=new gn(e);t>=this._knots.length?this._knots.push(i):this._knots.splice(t,0,i)},e.removeKnot=function(t){t>=0&&this._knots.length,this._knots.splice(t,1)},e.setKnot=function(t,e){t>=0&&this._knots.length,this._knots[t].set(e)},e.getKnot=function(t){return t>=0&&this._knots.length,this._knots[t]},e.getPoint=function(e,i){void 0===i&&(i=pl),e=Fi(e,0,1);var n=this.getSegments();if(0===n)return new gn(0,0,0);if(i===pl){var r=1/n;i=Math.floor(e/r),e=e%r/r}if(i>=n)return new gn(this._knots[this._knots.length-1]);switch(this._mode){case ul.LINEAR:return t.calcLinear(this._knots[i],this._knots[i+1],e);case ul.BEZIER:return t.calcBezier(this._knots[4*i],this._knots[4*i+1],this._knots[4*i+2],this._knots[4*i+3],e);case ul.CATMULL_ROM:var s=i>0?this._knots[i-1]:this._knots[i],a=i+2<this._knots.length?this._knots[i+2]:this._knots[i+1];return t.calcCatmullRom(s,this._knots[i],this._knots[i+1],a,e);default:return new gn(0,0,0)}},e.getPoints=function(t,e){if(void 0===e&&(e=pl),0===t)return[];if(1===t)return[this.getPoint(0,e)];for(var i=[],n=1/(t-1),r=0;r<t;r++){var s=r*n,a=this.getPoint(s,e);i.push(a)}return i},e.getSegments=function(){var t=this._knots.length;switch(this._mode){case ul.LINEAR:case ul.CATMULL_ROM:return t<2?(tt(14300),0):t-1;case ul.BEZIER:return t<4||t%4!=0?(tt(14301),0):t/4}},t.calcLinear=function(t,e,i){var n=new gn;return gn.multiplyScalar(ml,t,1-i),gn.multiplyScalar(gl,e,i),gn.add(n,ml,gl),n},t.calcBezier=function(t,e,i,n,r){var s=new gn,a=1-r;return gn.multiplyScalar(ml,t,a*a*a),gn.multiplyScalar(gl,e,3*r*a*a),gn.multiplyScalar(vl,i,3*r*r*a),gn.multiplyScalar(yl,n,r*r*r),gn.add(ml,ml,gl),gn.add(vl,vl,yl),gn.add(s,ml,vl),s},t.calcCatmullRom=function(t,e,i,n,r){var s=new gn,a=r*r,o=a*r;return gn.multiplyScalar(ml,t,-.5*o+a-.5*r),gn.multiplyScalar(gl,e,1.5*o-2.5*a+1),gn.multiplyScalar(vl,i,-1.5*o+2*a+.5*r),gn.multiplyScalar(yl,n,.5*o-.5*a),gn.add(ml,ml,gl),gn.add(vl,vl,yl),gn.add(s,ml,vl),s},n(t,[{key:"type",get:function(){return this._type}},{key:"mode",get:function(){return this._mode}},{key:"knots",get:function(){return this._knots}}]),t}();function Tl(t,e){z(t+" is deprecated, please use "+e+" instead.")}!function(t){t[t.ALL=0]="ALL",t[t.CLOSEST=1]="CLOSEST",t[t.ANY=2]="ANY"}(dl||(dl={})),ut(vs,"intersect",[{name:"ray_aabb",newName:"rayAABB"},{name:"ray_plane",newName:"rayPlane"},{name:"ray_triangle",newName:"rayTriangle"},{name:"ray_sphere",newName:"raySphere"},{name:"ray_obb",newName:"rayOBB"},{name:"ray_capsule",newName:"rayCapsule"},{name:"ray_subMesh",newName:"raySubMesh"},{name:"ray_mesh",newName:"rayMesh"},{name:"ray_model",newName:"rayModel"},{name:"line_plane",newName:"linePlane"},{name:"line_triangle",newName:"lineTriangle"},{name:"line_aabb",newName:"lineAABB"},{name:"line_obb",newName:"lineOBB"},{name:"line_sphere",newName:"lineSphere"},{name:"aabb_aabb",newName:"aabbWithAABB"},{name:"aabb_obb",newName:"aabbWithOBB"},{name:"aabb_plane",newName:"aabbPlane"},{name:"aabb_frustum",newName:"aabbFrustum"},{name:"aabbFrustum_accurate",newName:"aabbFrustumAccurate"},{name:"obb_point",newName:"obbPoint"},{name:"obb_plane",newName:"obbPlane"},{name:"obb_frustum",newName:"obbFrustum"},{name:"obbFrustum_accurate",newName:"obbFrustumAccurate"},{name:"obb_obb",newName:"obbWithOBB"},{name:"obb_capsule",newName:"obbCapsule"},{name:"sphere_plane",newName:"spherePlane"},{name:"sphere_frustum",newName:"sphereFrustum"},{name:"sphereFrustum_accurate",newName:"sphereFrustumAccurate"},{name:"sphere_sphere",newName:"sphereWithSphere"},{name:"sphere_aabb",newName:"sphereAABB"},{name:"sphere_obb",newName:"sphereOBB"},{name:"sphere_capsule",newName:"sphereCapsule"},{name:"capsule_capsule",newName:"capsuleWithCapsule"}]);var Al=function(t){function e(){var e;return e=t.call(this)||this,Tl("line","Line"),e}return s(e,t),e}(mr),bl=function(t){function e(){var e;return e=t.call(this)||this,Tl("plane","Plane"),e}return s(e,t),e}(bs),El=function(t){function e(){var e;return e=t.call(this)||this,Tl("ray","Ray"),e}return s(e,t),e}(gr),Cl=function(t){function e(){var e;return e=t.call(this)||this,Tl("triangle","Triangle"),e}return s(e,t),e}(Es),xl=function(t){function e(){var e;return e=t.call(this)||this,Tl("sphere","Sphere"),e}return s(e,t),e}(Ir),wl=function(t){function e(){var e;return e=t.call(this)||this,Tl("aabb","AABB"),e}return s(e,t),e}(Ra),Rl=function(t){function e(){var e;return e=t.call(this)||this,Tl("obb","OBB"),e}return s(e,t),e}(Ga),Il=function(t){function e(){var e;return e=t.call(this)||this,Tl("capsule","Capsule"),e}return s(e,t),e}(Ia),Dl=function(t){function e(){var e;return e=t.call(this)||this,Tl("frustum","Frustum"),e}return s(e,t),e}(La),Bl=Object.freeze({__proto__:null,distance:dr,enums:pr,intersect:vs,Line:mr,Plane:bs,Ray:gr,Triangle:Es,Sphere:Ir,AABB:Ra,OBB:Ga,Capsule:Ia,Frustum:La,Keyframe:sl,AnimationCurve:ll,get WrapModeMask(){return hl},get SplineMode(){return ul},Spline:Sl,constructLegacyCurveAndConvert:fl,OptimizedKey:al,evalOptCurve:ol,get ERaycastMode(){return dl},line:Al,plane:bl,ray:El,triangle:Cl,sphere:xl,aabb:wl,obb:Rl,capsule:Il,frustum:Dl});t("aL",Bl);var Ml=t("cC",function(){function t(){this._id="",this._priority=0,this._executeInEditMode=!1}t.sortByPriority=function(t,e){return t._priority<e._priority?1:t._priority>e.priority?-1:0};var e=t.prototype;return e.init=function(){},e.update=function(){},e.postUpdate=function(){},e.destroy=function(){},n(t,[{key:"priority",get:function(){return this._priority},set:function(t){this._priority=t}},{key:"id",get:function(){return this._id},set:function(t){this._id=t}}]),t}());Ml.Priority=Ee({LOW:0,MEDIUM:100,HIGH:200,SCHEDULER:1<<31>>>0});var Pl=new bt("Scheduler"),Ol=function(){function t(t,e,i,n){this.target=void 0,this.priority=void 0,this.paused=void 0,this.markedForDeletion=void 0,this.target=t,this.priority=e,this.paused=i,this.markedForDeletion=n}return t.get=function(e,i,n,r){var s=t._listEntries.pop();return s?(s.target=e,s.priority=i,s.paused=n,s.markedForDeletion=r):s=new t(e,i,n,r),s},t.put=function(e){t._listEntries.length<20&&(e.target=null,t._listEntries.push(e))},t}();Ol._listEntries=[];var Ll=function(){function t(t,e,i,n){this.list=void 0,this.entry=void 0,this.target=void 0,this.callback=void 0,this.list=t,this.entry=e,this.target=i,this.callback=n}return t.get=function(e,i,n,r){var s=t._hashUpdateEntries.pop();return s?(s.list=e,s.entry=i,s.target=n,s.callback=r):s=new t(e,i,n,r),s},t.put=function(e){t._hashUpdateEntries.length<20&&(e.list=e.entry=e.target=e.callback=null,t._hashUpdateEntries.push(e))},t}();Ll._hashUpdateEntries=[];var Nl=function(){function t(t,e,i,n,r,s){this.timers=void 0,this.target=void 0,this.timerIndex=void 0,this.currentTimer=void 0,this.currentTimerSalvaged=void 0,this.paused=void 0,this.timers=t,this.target=e,this.timerIndex=i,this.currentTimer=n,this.currentTimerSalvaged=r,this.paused=s}return t.get=function(e,i,n,r,s,a){var o=t._hashTimerEntries.pop();return o?(o.timers=e,o.target=i,o.timerIndex=n,o.currentTimer=r,o.currentTimerSalvaged=s,o.paused=a):o=new t(e,i,n,r,s,a),o},t.put=function(e){t._hashTimerEntries.length<20&&(e.timers=e.target=e.currentTimer=null,t._hashTimerEntries.push(e))},t}();Nl._hashTimerEntries=[];var Fl=function(){function t(){this._lock=void 0,this._scheduler=void 0,this._elapsed=void 0,this._runForever=void 0,this._useDelay=void 0,this._timesExecuted=void 0,this._repeat=void 0,this._delay=void 0,this._interval=void 0,this._target=void 0,this._callback=void 0,this._lock=!1,this._scheduler=null,this._elapsed=-1,this._runForever=!1,this._useDelay=!1,this._timesExecuted=0,this._repeat=0,this._delay=0,this._interval=0,this._target=null}t.get=function(){return t._timers.pop()||new t},t.put=function(e){t._timers.length<20&&!e._lock&&(e._scheduler=e._target=e._callback=null,t._timers.push(e))};var e=t.prototype;return e.initWithCallback=function(t,e,i,n,r,s){return this._lock=!1,this._scheduler=t,this._target=i,this._callback=e,this._timesExecuted=0,this._elapsed=-1,this._interval=n,this._delay=s,this._useDelay=this._delay>0,this._repeat=r,this._runForever=this._repeat===S.macro.REPEAT_FOREVER,!0},e.getInterval=function(){return this._interval},e.setInterval=function(t){this._interval=t},e.update=function(t){-1===this._elapsed?(this._elapsed=0,this._timesExecuted=0):(this._elapsed+=t,this._runForever&&!this._useDelay?this._elapsed>=this._interval&&(this.trigger(),this._elapsed=0):(this._useDelay?this._elapsed>=this._delay&&(this.trigger(),this._elapsed-=this._delay,this._timesExecuted+=1,this._useDelay=!1):this._elapsed>=this._interval&&(this.trigger(),this._elapsed=0,this._timesExecuted+=1),this._callback&&!this._runForever&&this._timesExecuted>this._repeat&&this.cancel()))},e.getCallback=function(){return this._callback},e.trigger=function(){this._target&&this._callback&&(this._lock=!0,this._callback.call(this._target,this._elapsed),this._lock=!1)},e.cancel=function(){this._scheduler&&this._callback&&this._target&&this._scheduler.unscheduleForTimer(this,this._target)},t}();Fl._timers=[];var kl=t("cp",function(t){function e(){var e;return(e=t.call(this)||this)._timeScale=void 0,e._updatesNegList=void 0,e._updates0List=void 0,e._updatesPosList=void 0,e._hashForUpdates=void 0,e._hashForTimers=void 0,e._currentTarget=void 0,e._currentTargetSalvaged=void 0,e._updateHashLocked=void 0,e._arrayForTimers=void 0,e._timeScale=1,e._updatesNegList=[],e._updates0List=[],e._updatesPosList=[],e._hashForUpdates=Lt(!0),e._hashForTimers=Lt(!0),e._currentTarget=null,e._currentTargetSalvaged=!1,e._updateHashLocked=!1,e._arrayForTimers=[],e}s(e,t),e.enableForTarget=function(t){var e=!1;(t.uuid||t.id)&&(e=!0),e||(t.id=Pl.getNewId())};var i=e.prototype;return i.setTimeScale=function(t){this._timeScale=t},i.getTimeScale=function(){return this._timeScale},i.update=function(t){var e,i,n,r,s;for(this._updateHashLocked=!0,1!==this._timeScale&&(t*=this._timeScale),e=0,n=(i=this._updatesNegList).length;e<n;e++){var a,o;(r=i[e]).paused||r.markedForDeletion||!r.target||null===(a=(o=r.target).update)||void 0===a||a.call(o,t)}for(e=0,n=(i=this._updates0List).length;e<n;e++){var h,u;(r=i[e]).paused||r.markedForDeletion||!r.target||null===(h=(u=r.target).update)||void 0===h||h.call(u,t)}for(e=0,n=(i=this._updatesPosList).length;e<n;e++){var l,c;(r=i[e]).paused||r.markedForDeletion||!r.target||null===(l=(c=r.target).update)||void 0===l||l.call(c,t)}var _=this._arrayForTimers;for(e=0;e<_.length;e++){var f;if(s=_[e],this._currentTarget=s,this._currentTargetSalvaged=!1,!s.paused&&s.timers)for(s.timerIndex=0;s.timerIndex<s.timers.length;++s.timerIndex)s.currentTimer=s.timers[s.timerIndex],s.currentTimerSalvaged=!1,s.currentTimer.update(t),s.currentTimer=null;this._currentTargetSalvaged&&0===(null===(f=this._currentTarget.timers)||void 0===f?void 0:f.length)&&(this._removeHashElement(this._currentTarget),--e)}for(e=0,i=this._updatesNegList;e<i.length;)(r=i[e]).markedForDeletion?this._removeUpdateFromHash(r):e++;for(e=0,i=this._updates0List;e<i.length;)(r=i[e]).markedForDeletion?this._removeUpdateFromHash(r):e++;for(e=0,i=this._updatesPosList;e<i.length;)(r=i[e]).markedForDeletion?this._removeUpdateFromHash(r):e++;this._updateHashLocked=!1,this._currentTarget=null},i.schedule=function(t,e,i,n,r,s){var a,o,h,u;"function"!=typeof t?(tt(1514),h=e,u=t):(h=t,u=e),3!==arguments.length&&4!==arguments.length&&5!==arguments.length||(s=!!n,n=S.macro.REPEAT_FOREVER,r=0),st(Boolean(u),1502);var l=u.uuid||u.id;if(l){var c,_,f=this._hashForTimers[l];if(f?f.paused!==s&&tt(1511):(f=Nl.get(null,u,0,null,!1,Boolean(s)),this._arrayForTimers.push(f),this._hashForTimers[l]=f),null==f.timers)f.timers=[];else for(_=0;_<f.timers.length;++_)if((c=f.timers[_])&&h===c.getCallback())return Q(1507,c.getInterval(),i),void c.setInterval(i);(c=Fl.get()).initWithCallback(this,h,u,i,null!==(a=n)&&void 0!==a?a:0,null!==(o=r)&&void 0!==o?o:0),f.timers.push(c),this._currentTarget===f&&this._currentTargetSalvaged&&(this._currentTargetSalvaged=!1)}else it(1510)},i.scheduleUpdate=function(t,e,i){var n=t.uuid||t.id;if(n){var r=this._hashForUpdates[n];if(r&&r.entry){if(r.entry.priority===e)return r.entry.markedForDeletion=!1,void(r.entry.paused=i);if(this._updateHashLocked)return Q(1506),r.entry.markedForDeletion=!1,void(r.entry.paused=i);this.unscheduleUpdate(t)}var s,a=Ol.get(t,e,i,!1);0===e?(s=this._updates0List,this._appendIn(s,a)):(s=e<0?this._updatesNegList:this._updatesPosList,this._priorityIn(s,a,e)),this._hashForUpdates[n]=Ll.get(s,a,t,null)}else it(1510)},i.unschedule=function(t,e){if(e&&t){var i=e.uuid||e.id;if(i){var n=this._hashForTimers[i];if(n){var r=n.timers;if(!r)return;for(var s=0,a=r.length;s<a;s++){var o=r[s];if(t===o.getCallback())return o!==n.currentTimer||n.currentTimerSalvaged||(n.currentTimerSalvaged=!0),r.splice(s,1),Fl.put(o),n.timerIndex>=s&&n.timerIndex--,void(0===r.length&&(this._currentTarget===n?this._currentTargetSalvaged=!0:this._removeHashElement(n)))}}}else it(1510)}},i.unscheduleForTimer=function(t,e){var i=e.uuid||e.id,n=this._hashForTimers[i],r=n.timers;if(r&&0!==r.length)for(var s=r.length-1;s>=0;s--){var a=r[s];if(a===t)return r.splice(s,1),Fl.put(a),n.timerIndex>=s&&n.timerIndex--,void(0===r.length&&(this._currentTargetSalvaged=!0))}},i.unscheduleUpdate=function(t){if(t){var e=t.uuid||t.id;if(e){var i=this._hashForUpdates[e];null!=i&&i.entry&&(this._updateHashLocked?i.entry.markedForDeletion=!0:this._removeUpdateFromHash(i.entry))}else it(1510)}},i.unscheduleAllForTarget=function(t){if(t){var e=t.uuid||t.id;if(e){var i=this._hashForTimers[e];if(null!=i&&i.timers){var n=i.timers;i.currentTimer&&n.indexOf(i.currentTimer)>-1&&!i.currentTimerSalvaged&&(i.currentTimerSalvaged=!0);for(var r=0,s=n.length;r<s;r++)Fl.put(n[r]);n.length=0,this._currentTarget===i?this._currentTargetSalvaged=!0:this._removeHashElement(i)}this.unscheduleUpdate(t)}else it(1510)}},i.unscheduleAll=function(){this.unscheduleAllWithMinPriority(Ml.Priority.SCHEDULER)},i.unscheduleAllWithMinPriority=function(t){var e,i,n,r=this._arrayForTimers;for(e=r.length-1;e>=0;e--)(i=r[e]).target&&this.unscheduleAllForTarget(i.target);var s=0;if(t<0)for(e=0;e<this._updatesNegList.length;){var a;s=this._updatesNegList.length,null!==(a=n=this._updatesNegList[e])&&void 0!==a&&a.target&&n.priority>=t&&this.unscheduleUpdate(n.target),s===this._updatesNegList.length&&e++}if(t<=0)for(e=0;e<this._updates0List.length;){var o;s=this._updates0List.length,null!==(o=n=this._updates0List[e])&&void 0!==o&&o.target&&this.unscheduleUpdate(n.target),s===this._updates0List.length&&e++}for(e=0;e<this._updatesPosList.length;){var h;s=this._updatesPosList.length,null!==(h=n=this._updatesPosList[e])&&void 0!==h&&h.target&&n.priority>=t&&this.unscheduleUpdate(n.target),s===this._updatesPosList.length&&e++}},i.isScheduled=function(t,e){st(Boolean(t),1508),st(Boolean(e),1509);var i=e.uuid||e.id;if(!i)return it(1510),!1;var n=this._hashForTimers[i];if(!n)return!1;if(null==n.timers)return!1;for(var r=n.timers,s=0;s<r.length;++s)if(t===r[s].getCallback())return!0;return!1},i.pauseAllTargets=function(){return this.pauseAllTargetsWithMinPriority(Ml.Priority.SCHEDULER)},i.pauseAllTargetsWithMinPriority=function(t){var e,i,n,r,s=[],a=this._arrayForTimers;for(i=0,n=a.length;i<n;i++){var o;null!==(o=e=a[i])&&void 0!==o&&o.target&&(e.paused=!0,s.push(e.target))}if(t<0)for(i=0;i<this._updatesNegList.length;i++){var h;null!==(h=r=this._updatesNegList[i])&&void 0!==h&&h.target&&r.priority>=t&&(r.paused=!0,s.push(r.target))}if(t<=0)for(i=0;i<this._updates0List.length;i++){var u;null!==(u=r=this._updates0List[i])&&void 0!==u&&u.target&&(r.paused=!0,s.push(r.target))}for(i=0;i<this._updatesPosList.length;i++){var l;null!==(l=r=this._updatesPosList[i])&&void 0!==l&&l.target&&r.priority>=t&&(r.paused=!0,s.push(r.target))}return s},i.resumeTargets=function(t){if(t)for(var e=0;e<t.length;e++)this.resumeTarget(t[e])},i.pauseTarget=function(t){st(Boolean(t),1503);var e=t.uuid||t.id;if(e){var i=this._hashForTimers[e];i&&(i.paused=!0);var n=this._hashForUpdates[e];null!=n&&n.entry&&(n.entry.paused=!0)}else it(1510)},i.resumeTarget=function(t){st(Boolean(t),1504);var e=t.uuid||t.id;if(e){var i=this._hashForTimers[e];i&&(i.paused=!1);var n=this._hashForUpdates[e];null!=n&&n.entry&&(n.entry.paused=!1)}else it(1510)},i.isTargetPaused=function(t){st(Boolean(t),1505);var e=t.uuid||t.id;if(!e)return it(1510),!1;var i=this._hashForTimers[e];if(i)return i.paused;var n=this._hashForUpdates[e];return!(null==n||!n.entry)&&n.entry.paused},i._removeHashElement=function(t){if(t.target){var e=t.target.uuid||t.target.id;if(void 0!==e){delete this._hashForTimers[e];for(var i=this._arrayForTimers,n=0,r=i.length;n<r;n++)if(i[n]===t){i.splice(n,1);break}Nl.put(t)}}},i._removeUpdateFromHash=function(t){if(t.target){var e=t.target.uuid||t.target.id;if(void 0!==e){var i=this._hashForUpdates[e];if(i){var n=i.list,r=i.entry;if(n)for(var s=0,a=n.length;s<a;s++)if(n[s]===r){n.splice(s,1);break}delete this._hashForUpdates[e],r&&Ol.put(r),Ll.put(i)}}}},i._priorityIn=function(t,e,i){for(var n=0;n<t.length;n++)if(i<t[n].priority)return void t.splice(n,0,e);t.push(e)},i._appendIn=function(t,e){t.push(e)},e}(Ml));kl.ID="scheduler",S.Scheduler=kl;var Gl={};ut(Gl,"vmath",[{name:"vec2",newName:"Vec2",target:ir,targetName:"math"},{name:"vec3",newName:"Vec3",target:ir,targetName:"math"},{name:"vec4",newName:"Vec4",target:ir,targetName:"math"},{name:"quat",newName:"Quat",target:ir,targetName:"math"},{name:"mat3",newName:"Mat3",target:ir,targetName:"math"},{name:"mat4",newName:"Mat4",target:ir,targetName:"math"},{name:"color4",newName:"Color",target:ir,targetName:"math"},{name:"rect",newName:"Rect",target:ir,targetName:"math"},{name:"approx",newName:"approx",target:ir,targetName:"math"},{name:"EPSILON",newName:"EPSILON",target:ir,targetName:"math"},{name:"equals",newName:"equals",target:ir,targetName:"math"},{name:"clamp",newName:"clamp",target:ir,targetName:"math"},{name:"clamp01",newName:"clamp01",target:ir,targetName:"math"},{name:"lerp",newName:"lerp",target:ir,targetName:"math"},{name:"toRadian",newName:"toRadian",target:ir,targetName:"math"},{name:"toDegree",newName:"toDegree",target:ir,targetName:"math"},{name:"random",newName:"random",target:ir,targetName:"math"},{name:"randomRange",newName:"randomRange",target:ir,targetName:"math"},{name:"randomRangeInt",newName:"randomRangeInt",target:ir,targetName:"math"},{name:"pseudoRandom",newName:"pseudoRandom",target:ir,targetName:"math"},{name:"pseudoRandomRangeInt",newName:"pseudoRandomRangeInt",target:ir,targetName:"math"},{name:"nextPow2",newName:"nextPow2",target:ir,targetName:"math"},{name:"repeat",newName:"repeat",target:ir,targetName:"math"},{name:"pingPong",newName:"pingPong",target:ir,targetName:"math"},{name:"inverseLerp",newName:"inverseLerp",target:ir,targetName:"math"}]),S.vmath=Gl,ut(kl.prototype,"Scheduler.prototype",[{name:"enableForTarget",newName:"enableForTarget",target:kl,targetName:"Scheduler"}]),ut(kl,"Scheduler",[{name:"PRIORITY_SYSTEM",newName:"System.Priority.SCHEDULER",customGetter:function(){return Ml.Priority.SCHEDULER}}]),lt(kl,"Scheduler",[{name:"PRIORITY_NON_SYSTEM",suggest:"Use enum` System.Priority` instead"}]),ct(Se,"js",[{name:"js",suggest:"'js.js' is deprecated since v3.7.0, please access 'js' directly instead."}]);var Vl=String.prototype.charCodeAt;function Ul(t){return this[t]}function zl(t,e){for(var i=t.length,n=e^i,r=0,s="string"==typeof t?Vl:Ul;i>=4;){var a=255&s.call(t,r)|(255&s.call(t,++r))<<8|(255&s.call(t,++r))<<16|(255&s.call(t,++r))<<24;a=1540483477*(65535&a)+((1540483477*(a>>>16)&65535)<<16),n=1540483477*(65535&n)+((1540483477*(n>>>16)&65535)<<16)^(a=1540483477*(65535&(a^=a>>>24))+((1540483477*(a>>>16)&65535)<<16)),i-=4,++r}switch(i){case 3:n^=(255&s.call(t,r+2))<<16;case 2:n^=(255&s.call(t,r+1))<<8;case 1:n=1540483477*(65535&(n^=255&s.call(t,r)))+((1540483477*(n>>>16)&65535)<<16)}return n=1540483477*(65535&(n^=n>>>13))+((1540483477*(n>>>16)&65535)<<16),(n^=n>>>15)>>>0}function Hl(){}function Wl(t,e,i){if(Ae(t,e),Ae(t,i),e===i)return t;var n=t[e];if(e<i)for(var r=e+1;r<=i;++r)t[r-1]=t[r];else for(var s=e;s!==i;--s)t[s]=t[s-1];return t[i]=n,t}S.easing=qh,Hl.prototype.once=function(t,e,i){return this.on(t,e,i,!0)},Hl.prototype.targetOff=function(t){this.removeAll(t)},t("cH",Object.freeze({__proto__:null,syncNodeValues:function(t){var e=t._lpos;t.setPositionForJS(e.x,e.y,e.z);var i=t._lscale;t.setScaleForJS(i.x,i.y,i.z);var n=t._lrot;t.setRotationForJS(n.x,n.y,n.z,n.w);var r=t._euler;t.setRotationFromEulerForJS(r.x,r.y,r.z)},updateChildrenForDeserialize:function t(e){if(e){var i=e.children;if(i){var n=i.length;if(n){e._setChildren(i);for(var r=0;r<n;++r)t(i[r])}}}},ExtraEventMethods:Hl}));var Xl=function(){function t(){this._finalizationRegistry=null,this._gcObjects=new WeakMap}var e=t.prototype;return e.registerGCObject=function(t){return t},e.init=function(){},e.finalizationRegistryCallback=function(t){var e=this._gcObjects.get(t);e&&(this._gcObjects.delete(t),e.destroy()),this._finalizationRegistry.unregister(t)},e.destroy=function(){},t}(),jl=t("cV",new Xl),Yl=t("cW",function(){function t(){return jl.registerGCObject(this)}return t.prototype.destroy=function(){},t}());function ql(t,e){for(var i,n=f(e);!(i=n()).done;){var r=i.value;Array.isArray(r)?ql(t,r):t.push(r)}}function Kl(t){var e=[];return ql(e,t),e.join("")}S.math=ir,S.geometry=Bl;var Ql,Zl,Jl,$l,tc,ec,ic,nc,rc,sc,ac,oc,hc,uc,lc,cc,_c,fc,dc,pc,mc,gc,vc,yc,Sc,Tc,Ac,bc,Ec,Cc,xc,wc,Rc,Ic,Dc,Bc,Mc,Pc,Oc,Lc,Nc,Fc,kc,Gc,Vc=function(t,e,i){for(var n=0;n<e.length;++n)t.length<=n&&t.push(new i),t[n].copy(e[n]);t.length=e.length};!function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.SWAPCHAIN=1]="SWAPCHAIN",t[t.BUFFER=2]="BUFFER",t[t.TEXTURE=3]="TEXTURE",t[t.RENDER_PASS=4]="RENDER_PASS",t[t.FRAMEBUFFER=5]="FRAMEBUFFER",t[t.SAMPLER=6]="SAMPLER",t[t.SHADER=7]="SHADER",t[t.DESCRIPTOR_SET_LAYOUT=8]="DESCRIPTOR_SET_LAYOUT",t[t.PIPELINE_LAYOUT=9]="PIPELINE_LAYOUT",t[t.PIPELINE_STATE=10]="PIPELINE_STATE",t[t.DESCRIPTOR_SET=11]="DESCRIPTOR_SET",t[t.INPUT_ASSEMBLER=12]="INPUT_ASSEMBLER",t[t.COMMAND_BUFFER=13]="COMMAND_BUFFER",t[t.QUEUE=14]="QUEUE",t[t.QUERY_POOL=15]="QUERY_POOL",t[t.GLOBAL_BARRIER=16]="GLOBAL_BARRIER",t[t.TEXTURE_BARRIER=17]="TEXTURE_BARRIER",t[t.BUFFER_BARRIER=18]="BUFFER_BARRIER",t[t.COUNT=19]="COUNT"}(Ql||(Ql={})),function(t){t[t.UNREADY=0]="UNREADY",t[t.FAILED=1]="FAILED",t[t.SUCCESS=2]="SUCCESS"}(Zl||(Zl={})),function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.GLES2=1]="GLES2",t[t.GLES3=2]="GLES3",t[t.METAL=3]="METAL",t[t.VULKAN=4]="VULKAN",t[t.NVN=5]="NVN",t[t.WEBGL=6]="WEBGL",t[t.WEBGL2=7]="WEBGL2",t[t.WEBGPU=8]="WEBGPU"}(Jl||(Jl={})),function(t){t[t.IDENTITY=0]="IDENTITY",t[t.ROTATE_90=1]="ROTATE_90",t[t.ROTATE_180=2]="ROTATE_180",t[t.ROTATE_270=3]="ROTATE_270"}($l||($l={})),function(t){t[t.ELEMENT_INDEX_UINT=0]="ELEMENT_INDEX_UINT",t[t.INSTANCED_ARRAYS=1]="INSTANCED_ARRAYS",t[t.MULTIPLE_RENDER_TARGETS=2]="MULTIPLE_RENDER_TARGETS",t[t.BLEND_MINMAX=3]="BLEND_MINMAX",t[t.COMPUTE_SHADER=4]="COMPUTE_SHADER",t[t.INPUT_ATTACHMENT_BENEFIT=5]="INPUT_ATTACHMENT_BENEFIT",t[t.SUBPASS_COLOR_INPUT=6]="SUBPASS_COLOR_INPUT",t[t.SUBPASS_DEPTH_STENCIL_INPUT=7]="SUBPASS_DEPTH_STENCIL_INPUT",t[t.RASTERIZATION_ORDER_COHERENT=8]="RASTERIZATION_ORDER_COHERENT",t[t.MULTI_SAMPLE_RESOLVE_DEPTH_STENCIL=9]="MULTI_SAMPLE_RESOLVE_DEPTH_STENCIL",t[t.COUNT=10]="COUNT"}(tc||(tc={})),function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.A8=1]="A8",t[t.L8=2]="L8",t[t.LA8=3]="LA8",t[t.R8=4]="R8",t[t.R8SN=5]="R8SN",t[t.R8UI=6]="R8UI",t[t.R8I=7]="R8I",t[t.R16F=8]="R16F",t[t.R16UI=9]="R16UI",t[t.R16I=10]="R16I",t[t.R32F=11]="R32F",t[t.R32UI=12]="R32UI",t[t.R32I=13]="R32I",t[t.RG8=14]="RG8",t[t.RG8SN=15]="RG8SN",t[t.RG8UI=16]="RG8UI",t[t.RG8I=17]="RG8I",t[t.RG16F=18]="RG16F",t[t.RG16UI=19]="RG16UI",t[t.RG16I=20]="RG16I",t[t.RG32F=21]="RG32F",t[t.RG32UI=22]="RG32UI",t[t.RG32I=23]="RG32I",t[t.RGB8=24]="RGB8",t[t.SRGB8=25]="SRGB8",t[t.RGB8SN=26]="RGB8SN",t[t.RGB8UI=27]="RGB8UI",t[t.RGB8I=28]="RGB8I",t[t.RGB16F=29]="RGB16F",t[t.RGB16UI=30]="RGB16UI",t[t.RGB16I=31]="RGB16I",t[t.RGB32F=32]="RGB32F",t[t.RGB32UI=33]="RGB32UI",t[t.RGB32I=34]="RGB32I",t[t.RGBA8=35]="RGBA8",t[t.BGRA8=36]="BGRA8",t[t.SRGB8_A8=37]="SRGB8_A8",t[t.RGBA8SN=38]="RGBA8SN",t[t.RGBA8UI=39]="RGBA8UI",t[t.RGBA8I=40]="RGBA8I",t[t.RGBA16F=41]="RGBA16F",t[t.RGBA16UI=42]="RGBA16UI",t[t.RGBA16I=43]="RGBA16I",t[t.RGBA32F=44]="RGBA32F",t[t.RGBA32UI=45]="RGBA32UI",t[t.RGBA32I=46]="RGBA32I",t[t.R5G6B5=47]="R5G6B5",t[t.R11G11B10F=48]="R11G11B10F",t[t.RGB5A1=49]="RGB5A1",t[t.RGBA4=50]="RGBA4",t[t.RGB10A2=51]="RGB10A2",t[t.RGB10A2UI=52]="RGB10A2UI",t[t.RGB9E5=53]="RGB9E5",t[t.DEPTH=54]="DEPTH",t[t.DEPTH_STENCIL=55]="DEPTH_STENCIL",t[t.BC1=56]="BC1",t[t.BC1_ALPHA=57]="BC1_ALPHA",t[t.BC1_SRGB=58]="BC1_SRGB",t[t.BC1_SRGB_ALPHA=59]="BC1_SRGB_ALPHA",t[t.BC2=60]="BC2",t[t.BC2_SRGB=61]="BC2_SRGB",t[t.BC3=62]="BC3",t[t.BC3_SRGB=63]="BC3_SRGB",t[t.BC4=64]="BC4",t[t.BC4_SNORM=65]="BC4_SNORM",t[t.BC5=66]="BC5",t[t.BC5_SNORM=67]="BC5_SNORM",t[t.BC6H_UF16=68]="BC6H_UF16",t[t.BC6H_SF16=69]="BC6H_SF16",t[t.BC7=70]="BC7",t[t.BC7_SRGB=71]="BC7_SRGB",t[t.ETC_RGB8=72]="ETC_RGB8",t[t.ETC2_RGB8=73]="ETC2_RGB8",t[t.ETC2_SRGB8=74]="ETC2_SRGB8",t[t.ETC2_RGB8_A1=75]="ETC2_RGB8_A1",t[t.ETC2_SRGB8_A1=76]="ETC2_SRGB8_A1",t[t.ETC2_RGBA8=77]="ETC2_RGBA8",t[t.ETC2_SRGB8_A8=78]="ETC2_SRGB8_A8",t[t.EAC_R11=79]="EAC_R11",t[t.EAC_R11SN=80]="EAC_R11SN",t[t.EAC_RG11=81]="EAC_RG11",t[t.EAC_RG11SN=82]="EAC_RG11SN",t[t.PVRTC_RGB2=83]="PVRTC_RGB2",t[t.PVRTC_RGBA2=84]="PVRTC_RGBA2",t[t.PVRTC_RGB4=85]="PVRTC_RGB4",t[t.PVRTC_RGBA4=86]="PVRTC_RGBA4",t[t.PVRTC2_2BPP=87]="PVRTC2_2BPP",t[t.PVRTC2_4BPP=88]="PVRTC2_4BPP",t[t.ASTC_RGBA_4X4=89]="ASTC_RGBA_4X4",t[t.ASTC_RGBA_5X4=90]="ASTC_RGBA_5X4",t[t.ASTC_RGBA_5X5=91]="ASTC_RGBA_5X5",t[t.ASTC_RGBA_6X5=92]="ASTC_RGBA_6X5",t[t.ASTC_RGBA_6X6=93]="ASTC_RGBA_6X6",t[t.ASTC_RGBA_8X5=94]="ASTC_RGBA_8X5",t[t.ASTC_RGBA_8X6=95]="ASTC_RGBA_8X6",t[t.ASTC_RGBA_8X8=96]="ASTC_RGBA_8X8",t[t.ASTC_RGBA_10X5=97]="ASTC_RGBA_10X5",t[t.ASTC_RGBA_10X6=98]="ASTC_RGBA_10X6",t[t.ASTC_RGBA_10X8=99]="ASTC_RGBA_10X8",t[t.ASTC_RGBA_10X10=100]="ASTC_RGBA_10X10",t[t.ASTC_RGBA_12X10=101]="ASTC_RGBA_12X10",t[t.ASTC_RGBA_12X12=102]="ASTC_RGBA_12X12",t[t.ASTC_SRGBA_4X4=103]="ASTC_SRGBA_4X4",t[t.ASTC_SRGBA_5X4=104]="ASTC_SRGBA_5X4",t[t.ASTC_SRGBA_5X5=105]="ASTC_SRGBA_5X5",t[t.ASTC_SRGBA_6X5=106]="ASTC_SRGBA_6X5",t[t.ASTC_SRGBA_6X6=107]="ASTC_SRGBA_6X6",t[t.ASTC_SRGBA_8X5=108]="ASTC_SRGBA_8X5",t[t.ASTC_SRGBA_8X6=109]="ASTC_SRGBA_8X6",t[t.ASTC_SRGBA_8X8=110]="ASTC_SRGBA_8X8",t[t.ASTC_SRGBA_10X5=111]="ASTC_SRGBA_10X5",t[t.ASTC_SRGBA_10X6=112]="ASTC_SRGBA_10X6",t[t.ASTC_SRGBA_10X8=113]="ASTC_SRGBA_10X8",t[t.ASTC_SRGBA_10X10=114]="ASTC_SRGBA_10X10",t[t.ASTC_SRGBA_12X10=115]="ASTC_SRGBA_12X10",t[t.ASTC_SRGBA_12X12=116]="ASTC_SRGBA_12X12",t[t.COUNT=117]="COUNT"}(ec||(ec={})),function(t){t[t.NONE=0]="NONE",t[t.UNORM=1]="UNORM",t[t.SNORM=2]="SNORM",t[t.UINT=3]="UINT",t[t.INT=4]="INT",t[t.UFLOAT=5]="UFLOAT",t[t.FLOAT=6]="FLOAT"}(ic||(ic={})),function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.BOOL=1]="BOOL",t[t.BOOL2=2]="BOOL2",t[t.BOOL3=3]="BOOL3",t[t.BOOL4=4]="BOOL4",t[t.INT=5]="INT",t[t.INT2=6]="INT2",t[t.INT3=7]="INT3",t[t.INT4=8]="INT4",t[t.UINT=9]="UINT",t[t.UINT2=10]="UINT2",t[t.UINT3=11]="UINT3",t[t.UINT4=12]="UINT4",t[t.FLOAT=13]="FLOAT",t[t.FLOAT2=14]="FLOAT2",t[t.FLOAT3=15]="FLOAT3",t[t.FLOAT4=16]="FLOAT4",t[t.MAT2=17]="MAT2",t[t.MAT2X3=18]="MAT2X3",t[t.MAT2X4=19]="MAT2X4",t[t.MAT3X2=20]="MAT3X2",t[t.MAT3=21]="MAT3",t[t.MAT3X4=22]="MAT3X4",t[t.MAT4X2=23]="MAT4X2",t[t.MAT4X3=24]="MAT4X3",t[t.MAT4=25]="MAT4",t[t.SAMPLER1D=26]="SAMPLER1D",t[t.SAMPLER1D_ARRAY=27]="SAMPLER1D_ARRAY",t[t.SAMPLER2D=28]="SAMPLER2D",t[t.SAMPLER2D_ARRAY=29]="SAMPLER2D_ARRAY",t[t.SAMPLER3D=30]="SAMPLER3D",t[t.SAMPLER_CUBE=31]="SAMPLER_CUBE",t[t.SAMPLER=32]="SAMPLER",t[t.TEXTURE1D=33]="TEXTURE1D",t[t.TEXTURE1D_ARRAY=34]="TEXTURE1D_ARRAY",t[t.TEXTURE2D=35]="TEXTURE2D",t[t.TEXTURE2D_ARRAY=36]="TEXTURE2D_ARRAY",t[t.TEXTURE3D=37]="TEXTURE3D",t[t.TEXTURE_CUBE=38]="TEXTURE_CUBE",t[t.IMAGE1D=39]="IMAGE1D",t[t.IMAGE1D_ARRAY=40]="IMAGE1D_ARRAY",t[t.IMAGE2D=41]="IMAGE2D",t[t.IMAGE2D_ARRAY=42]="IMAGE2D_ARRAY",t[t.IMAGE3D=43]="IMAGE3D",t[t.IMAGE_CUBE=44]="IMAGE_CUBE",t[t.SUBPASS_INPUT=45]="SUBPASS_INPUT",t[t.COUNT=46]="COUNT"}(nc||(nc={})),function(t){t[t.NONE=0]="NONE",t[t.TRANSFER_SRC=1]="TRANSFER_SRC",t[t.TRANSFER_DST=2]="TRANSFER_DST",t[t.INDEX=4]="INDEX",t[t.VERTEX=8]="VERTEX",t[t.UNIFORM=16]="UNIFORM",t[t.STORAGE=32]="STORAGE",t[t.INDIRECT=64]="INDIRECT"}(rc||(rc={})),function(t){t[t.NONE=0]="NONE"}(sc||(sc={})),function(t){t[t.NONE=0]="NONE",t[t.READ_ONLY=1]="READ_ONLY",t[t.WRITE_ONLY=2]="WRITE_ONLY",t[t.READ_WRITE=3]="READ_WRITE"}(ac||(ac={})),function(t){t[t.NONE=0]="NONE",t[t.DEVICE=1]="DEVICE",t[t.HOST=2]="HOST"}(oc||(oc={})),function(t){t[t.TEX1D=0]="TEX1D",t[t.TEX2D=1]="TEX2D",t[t.TEX3D=2]="TEX3D",t[t.CUBE=3]="CUBE",t[t.TEX1D_ARRAY=4]="TEX1D_ARRAY",t[t.TEX2D_ARRAY=5]="TEX2D_ARRAY"}(hc||(hc={})),function(t){t[t.NONE=0]="NONE",t[t.TRANSFER_SRC=1]="TRANSFER_SRC",t[t.TRANSFER_DST=2]="TRANSFER_DST",t[t.SAMPLED=4]="SAMPLED",t[t.STORAGE=8]="STORAGE",t[t.COLOR_ATTACHMENT=16]="COLOR_ATTACHMENT",t[t.DEPTH_STENCIL_ATTACHMENT=32]="DEPTH_STENCIL_ATTACHMENT",t[t.INPUT_ATTACHMENT=64]="INPUT_ATTACHMENT"}(uc||(uc={})),function(t){t[t.NONE=0]="NONE",t[t.GEN_MIPMAP=1]="GEN_MIPMAP",t[t.GENERAL_LAYOUT=2]="GENERAL_LAYOUT",t[t.EXTERNAL_OES=4]="EXTERNAL_OES",t[t.EXTERNAL_NORMAL=8]="EXTERNAL_NORMAL",t[t.LAZILY_ALLOCATED=16]="LAZILY_ALLOCATED",t[t.MUTABLE_VIEW_FORMAT=64]="MUTABLE_VIEW_FORMAT",t[t.MUTABLE_STORAGE=128]="MUTABLE_STORAGE"}(lc||(lc={})),function(t){t[t.NONE=0]="NONE",t[t.RENDER_TARGET=1]="RENDER_TARGET",t[t.SAMPLED_TEXTURE=2]="SAMPLED_TEXTURE",t[t.LINEAR_FILTER=4]="LINEAR_FILTER",t[t.STORAGE_TEXTURE=8]="STORAGE_TEXTURE",t[t.VERTEX_ATTRIBUTE=16]="VERTEX_ATTRIBUTE"}(cc||(cc={})),function(t){t[t.X1=1]="X1",t[t.X2=2]="X2",t[t.X4=4]="X4",t[t.X8=8]="X8",t[t.X16=16]="X16",t[t.X32=32]="X32",t[t.X64=64]="X64"}(_c||(_c={})),function(t){t[t.OFF=0]="OFF",t[t.ON=1]="ON",t[t.RELAXED=2]="RELAXED",t[t.MAILBOX=3]="MAILBOX",t[t.HALF=4]="HALF"}(fc||(fc={})),function(t){t[t.NONE=0]="NONE",t[t.POINT=1]="POINT",t[t.LINEAR=2]="LINEAR",t[t.ANISOTROPIC=3]="ANISOTROPIC"}(dc||(dc={})),function(t){t[t.WRAP=0]="WRAP",t[t.MIRROR=1]="MIRROR",t[t.CLAMP=2]="CLAMP",t[t.BORDER=3]="BORDER"}(pc||(pc={})),function(t){t[t.NEVER=0]="NEVER",t[t.LESS=1]="LESS",t[t.EQUAL=2]="EQUAL",t[t.LESS_EQUAL=3]="LESS_EQUAL",t[t.GREATER=4]="GREATER",t[t.NOT_EQUAL=5]="NOT_EQUAL",t[t.GREATER_EQUAL=6]="GREATER_EQUAL",t[t.ALWAYS=7]="ALWAYS"}(mc||(mc={})),function(t){t[t.ZERO=0]="ZERO",t[t.KEEP=1]="KEEP",t[t.REPLACE=2]="REPLACE",t[t.INCR=3]="INCR",t[t.DECR=4]="DECR",t[t.INVERT=5]="INVERT",t[t.INCR_WRAP=6]="INCR_WRAP",t[t.DECR_WRAP=7]="DECR_WRAP"}(gc||(gc={})),function(t){t[t.ZERO=0]="ZERO",t[t.ONE=1]="ONE",t[t.SRC_ALPHA=2]="SRC_ALPHA",t[t.DST_ALPHA=3]="DST_ALPHA",t[t.ONE_MINUS_SRC_ALPHA=4]="ONE_MINUS_SRC_ALPHA",t[t.ONE_MINUS_DST_ALPHA=5]="ONE_MINUS_DST_ALPHA",t[t.SRC_COLOR=6]="SRC_COLOR",t[t.DST_COLOR=7]="DST_COLOR",t[t.ONE_MINUS_SRC_COLOR=8]="ONE_MINUS_SRC_COLOR",t[t.ONE_MINUS_DST_COLOR=9]="ONE_MINUS_DST_COLOR",t[t.SRC_ALPHA_SATURATE=10]="SRC_ALPHA_SATURATE",t[t.CONSTANT_COLOR=11]="CONSTANT_COLOR",t[t.ONE_MINUS_CONSTANT_COLOR=12]="ONE_MINUS_CONSTANT_COLOR",t[t.CONSTANT_ALPHA=13]="CONSTANT_ALPHA",t[t.ONE_MINUS_CONSTANT_ALPHA=14]="ONE_MINUS_CONSTANT_ALPHA"}(vc||(vc={})),function(t){t[t.ADD=0]="ADD",t[t.SUB=1]="SUB",t[t.REV_SUB=2]="REV_SUB",t[t.MIN=3]="MIN",t[t.MAX=4]="MAX"}(yc||(yc={})),function(t){t[t.NONE=0]="NONE",t[t.R=1]="R",t[t.G=2]="G",t[t.B=4]="B",t[t.A=8]="A",t[t.ALL=15]="ALL"}(Sc||(Sc={})),function(t){t[t.NONE=0]="NONE",t[t.VERTEX=1]="VERTEX",t[t.CONTROL=2]="CONTROL",t[t.EVALUATION=4]="EVALUATION",t[t.GEOMETRY=8]="GEOMETRY",t[t.FRAGMENT=16]="FRAGMENT",t[t.COMPUTE=32]="COMPUTE",t[t.ALL=63]="ALL"}(Tc||(Tc={})),function(t){t[t.LOAD=0]="LOAD",t[t.CLEAR=1]="CLEAR",t[t.DISCARD=2]="DISCARD"}(Ac||(Ac={})),function(t){t[t.STORE=0]="STORE",t[t.DISCARD=1]="DISCARD"}(bc||(bc={})),function(t){t[t.NONE=0]="NONE",t[t.INDIRECT_BUFFER=1]="INDIRECT_BUFFER",t[t.INDEX_BUFFER=2]="INDEX_BUFFER",t[t.VERTEX_BUFFER=4]="VERTEX_BUFFER",t[t.VERTEX_SHADER_READ_UNIFORM_BUFFER=8]="VERTEX_SHADER_READ_UNIFORM_BUFFER",t[t.VERTEX_SHADER_READ_TEXTURE=16]="VERTEX_SHADER_READ_TEXTURE",t[t.VERTEX_SHADER_READ_OTHER=32]="VERTEX_SHADER_READ_OTHER",t[t.FRAGMENT_SHADER_READ_UNIFORM_BUFFER=64]="FRAGMENT_SHADER_READ_UNIFORM_BUFFER",t[t.FRAGMENT_SHADER_READ_TEXTURE=128]="FRAGMENT_SHADER_READ_TEXTURE",t[t.FRAGMENT_SHADER_READ_COLOR_INPUT_ATTACHMENT=256]="FRAGMENT_SHADER_READ_COLOR_INPUT_ATTACHMENT",t[t.FRAGMENT_SHADER_READ_DEPTH_STENCIL_INPUT_ATTACHMENT=512]="FRAGMENT_SHADER_READ_DEPTH_STENCIL_INPUT_ATTACHMENT",t[t.FRAGMENT_SHADER_READ_OTHER=1024]="FRAGMENT_SHADER_READ_OTHER",t[t.COLOR_ATTACHMENT_READ=2048]="COLOR_ATTACHMENT_READ",t[t.DEPTH_STENCIL_ATTACHMENT_READ=4096]="DEPTH_STENCIL_ATTACHMENT_READ",t[t.COMPUTE_SHADER_READ_UNIFORM_BUFFER=8192]="COMPUTE_SHADER_READ_UNIFORM_BUFFER",t[t.COMPUTE_SHADER_READ_TEXTURE=16384]="COMPUTE_SHADER_READ_TEXTURE",t[t.COMPUTE_SHADER_READ_OTHER=32768]="COMPUTE_SHADER_READ_OTHER",t[t.TRANSFER_READ=65536]="TRANSFER_READ",t[t.HOST_READ=131072]="HOST_READ",t[t.PRESENT=262144]="PRESENT",t[t.VERTEX_SHADER_WRITE=524288]="VERTEX_SHADER_WRITE",t[t.FRAGMENT_SHADER_WRITE=1048576]="FRAGMENT_SHADER_WRITE",t[t.COLOR_ATTACHMENT_WRITE=2097152]="COLOR_ATTACHMENT_WRITE",t[t.DEPTH_STENCIL_ATTACHMENT_WRITE=4194304]="DEPTH_STENCIL_ATTACHMENT_WRITE",t[t.COMPUTE_SHADER_WRITE=8388608]="COMPUTE_SHADER_WRITE",t[t.TRANSFER_WRITE=16777216]="TRANSFER_WRITE",t[t.HOST_PREINITIALIZED=33554432]="HOST_PREINITIALIZED",t[t.HOST_WRITE=67108864]="HOST_WRITE"}(Ec||(Ec={})),function(t){t[t.NONE=0]="NONE",t[t.SAMPLE_ZERO=1]="SAMPLE_ZERO",t[t.AVERAGE=2]="AVERAGE",t[t.MIN=3]="MIN",t[t.MAX=4]="MAX"}(Cc||(Cc={})),function(t){t[t.GRAPHICS=0]="GRAPHICS",t[t.COMPUTE=1]="COMPUTE",t[t.RAY_TRACING=2]="RAY_TRACING"}(xc||(xc={})),function(t){t[t.POINT_LIST=0]="POINT_LIST",t[t.LINE_LIST=1]="LINE_LIST",t[t.LINE_STRIP=2]="LINE_STRIP",t[t.LINE_LOOP=3]="LINE_LOOP",t[t.LINE_LIST_ADJACENCY=4]="LINE_LIST_ADJACENCY",t[t.LINE_STRIP_ADJACENCY=5]="LINE_STRIP_ADJACENCY",t[t.ISO_LINE_LIST=6]="ISO_LINE_LIST",t[t.TRIANGLE_LIST=7]="TRIANGLE_LIST",t[t.TRIANGLE_STRIP=8]="TRIANGLE_STRIP",t[t.TRIANGLE_FAN=9]="TRIANGLE_FAN",t[t.TRIANGLE_LIST_ADJACENCY=10]="TRIANGLE_LIST_ADJACENCY",t[t.TRIANGLE_STRIP_ADJACENCY=11]="TRIANGLE_STRIP_ADJACENCY",t[t.TRIANGLE_PATCH_ADJACENCY=12]="TRIANGLE_PATCH_ADJACENCY",t[t.QUAD_PATCH_LIST=13]="QUAD_PATCH_LIST"}(wc||(wc={})),function(t){t[t.FILL=0]="FILL",t[t.POINT=1]="POINT",t[t.LINE=2]="LINE"}(Rc||(Rc={})),function(t){t[t.GOURAND=0]="GOURAND",t[t.FLAT=1]="FLAT"}(Ic||(Ic={})),function(t){t[t.NONE=0]="NONE",t[t.FRONT=1]="FRONT",t[t.BACK=2]="BACK"}(Dc||(Dc={})),function(t){t[t.NONE=0]="NONE",t[t.LINE_WIDTH=1]="LINE_WIDTH",t[t.DEPTH_BIAS=2]="DEPTH_BIAS",t[t.BLEND_CONSTANTS=4]="BLEND_CONSTANTS",t[t.DEPTH_BOUNDS=8]="DEPTH_BOUNDS",t[t.STENCIL_WRITE_MASK=16]="STENCIL_WRITE_MASK",t[t.STENCIL_COMPARE_MASK=32]="STENCIL_COMPARE_MASK"}(Bc||(Bc={})),function(t){t[t.FRONT=1]="FRONT",t[t.BACK=2]="BACK",t[t.ALL=3]="ALL"}(Mc||(Mc={})),function(t){t[t.UNKNOWN=0]="UNKNOWN",t[t.UNIFORM_BUFFER=1]="UNIFORM_BUFFER",t[t.DYNAMIC_UNIFORM_BUFFER=2]="DYNAMIC_UNIFORM_BUFFER",t[t.STORAGE_BUFFER=4]="STORAGE_BUFFER",t[t.DYNAMIC_STORAGE_BUFFER=8]="DYNAMIC_STORAGE_BUFFER",t[t.SAMPLER_TEXTURE=16]="SAMPLER_TEXTURE",t[t.SAMPLER=32]="SAMPLER",t[t.TEXTURE=64]="TEXTURE",t[t.STORAGE_IMAGE=128]="STORAGE_IMAGE",t[t.INPUT_ATTACHMENT=256]="INPUT_ATTACHMENT"}(Pc||(Pc={})),function(t){t[t.GRAPHICS=0]="GRAPHICS",t[t.COMPUTE=1]="COMPUTE",t[t.TRANSFER=2]="TRANSFER"}(Oc||(Oc={})),function(t){t[t.OCCLUSION=0]="OCCLUSION",t[t.PIPELINE_STATISTICS=1]="PIPELINE_STATISTICS",t[t.TIMESTAMP=2]="TIMESTAMP"}(Lc||(Lc={})),function(t){t[t.PRIMARY=0]="PRIMARY",t[t.SECONDARY=1]="SECONDARY"}(Nc||(Nc={})),function(t){t[t.NONE=0]="NONE",t[t.COLOR=1]="COLOR",t[t.DEPTH=2]="DEPTH",t[t.STENCIL=4]="STENCIL",t[t.DEPTH_STENCIL=6]="DEPTH_STENCIL",t[t.ALL=7]="ALL"}(Fc||(Fc={})),function(t){t[t.FULL=0]="FULL",t[t.SPLIT_BEGIN=1]="SPLIT_BEGIN",t[t.SPLIT_END=2]="SPLIT_END"}(kc||(kc={})),function(t){t[t.RASTER=0]="RASTER",t[t.COMPUTE=1]="COMPUTE",t[t.COPY=2]="COPY",t[t.MOVE=3]="MOVE",t[t.RAYTRACE=4]="RAYTRACE",t[t.PRESENT=5]="PRESENT"}(Gc||(Gc={}));var Uc,zc=function(){function t(t,e,i){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),this.x=t,this.y=e,this.z=i}return t.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},t}(),Hc=function(){function t(t,e,i,n,r,s,a,o,h,u,l,c,_,f,d,p,m,g,v,y,S,T,A,b){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=0),void 0===l&&(l=0),void 0===c&&(c=0),void 0===_&&(_=0),void 0===f&&(f=0),void 0===d&&(d=0),void 0===p&&(p=1),void 0===m&&(m=0),void 0===g&&(g=0),void 0===v&&(v=new zc),void 0===y&&(y=new zc),void 0===S&&(S=!1),void 0===T&&(T=-1),void 0===A&&(A=1),void 0===b&&(b=1),this.maxVertexAttributes=t,this.maxVertexUniformVectors=e,this.maxFragmentUniformVectors=i,this.maxTextureUnits=n,this.maxImageUnits=r,this.maxVertexTextureUnits=s,this.maxColorRenderTargets=a,this.maxShaderStorageBufferBindings=o,this.maxShaderStorageBlockSize=h,this.maxUniformBufferBindings=u,this.maxUniformBlockSize=l,this.maxTextureSize=c,this.maxCubeMapTextureSize=_,this.maxArrayTextureLayers=f,this.max3DTextureSize=d,this.uboOffsetAlignment=p,this.maxComputeSharedMemorySize=m,this.maxComputeWorkGroupInvocations=g,this.maxComputeWorkGroupSize=v,this.maxComputeWorkGroupCount=y,this.supportQuery=S,this.clipSpaceMinZ=T,this.screenSpaceSignY=A,this.clipSpaceSignY=b}return t.prototype.copy=function(t){return this.maxVertexAttributes=t.maxVertexAttributes,this.maxVertexUniformVectors=t.maxVertexUniformVectors,this.maxFragmentUniformVectors=t.maxFragmentUniformVectors,this.maxTextureUnits=t.maxTextureUnits,this.maxImageUnits=t.maxImageUnits,this.maxVertexTextureUnits=t.maxVertexTextureUnits,this.maxColorRenderTargets=t.maxColorRenderTargets,this.maxShaderStorageBufferBindings=t.maxShaderStorageBufferBindings,this.maxShaderStorageBlockSize=t.maxShaderStorageBlockSize,this.maxUniformBufferBindings=t.maxUniformBufferBindings,this.maxUniformBlockSize=t.maxUniformBlockSize,this.maxTextureSize=t.maxTextureSize,this.maxCubeMapTextureSize=t.maxCubeMapTextureSize,this.maxArrayTextureLayers=t.maxArrayTextureLayers,this.max3DTextureSize=t.max3DTextureSize,this.uboOffsetAlignment=t.uboOffsetAlignment,this.maxComputeSharedMemorySize=t.maxComputeSharedMemorySize,this.maxComputeWorkGroupInvocations=t.maxComputeWorkGroupInvocations,this.maxComputeWorkGroupSize.copy(t.maxComputeWorkGroupSize),this.maxComputeWorkGroupCount.copy(t.maxComputeWorkGroupCount),this.supportQuery=t.supportQuery,this.clipSpaceMinZ=t.clipSpaceMinZ,this.screenSpaceSignY=t.screenSpaceSignY,this.clipSpaceSignY=t.clipSpaceSignY,this},t}(),Wc=function(){function t(t){void 0===t&&(t=!0),this.enableBarrierDeduce=t}return t.prototype.copy=function(t){return this.enableBarrierDeduce=t.enableBarrierDeduce,this},t}(),Xc=function(){function t(t,e,i){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),this.x=t,this.y=e,this.z=i}return t.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},t}(),jc=function(){function t(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),this.x=t,this.y=e,this.width=i,this.height=n}return t.prototype.copy=function(t){return this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height,this},t}(),Yc=function(){function t(t,e,i){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=1),this.width=t,this.height=e,this.depth=i}return t.prototype.copy=function(t){return this.width=t.width,this.height=t.height,this.depth=t.depth,this},t}(),qc=function(){function t(t,e,i){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=1),this.mipLevel=t,this.baseArrayLayer=e,this.layerCount=i}return t.prototype.copy=function(t){return this.mipLevel=t.mipLevel,this.baseArrayLayer=t.baseArrayLayer,this.layerCount=t.layerCount,this},t}(),Kc=function(){function t(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=1),void 0===i&&(i=0),void 0===n&&(n=1),this.baseMipLevel=t,this.levelCount=e,this.baseArrayLayer=i,this.layerCount=n}return t.prototype.copy=function(t){return this.baseMipLevel=t.baseMipLevel,this.levelCount=t.levelCount,this.baseArrayLayer=t.baseArrayLayer,this.layerCount=t.layerCount,this},t}(),Qc=function(){function t(t,e,i,n,r){void 0===t&&(t=new qc),void 0===e&&(e=new Xc),void 0===i&&(i=new qc),void 0===n&&(n=new Xc),void 0===r&&(r=new Yc),this.srcSubres=t,this.srcOffset=e,this.dstSubres=i,this.dstOffset=n,this.extent=r}return t.prototype.copy=function(t){return this.srcSubres.copy(t.srcSubres),this.srcOffset.copy(t.srcOffset),this.dstSubres.copy(t.dstSubres),this.dstOffset.copy(t.dstOffset),this.extent.copy(t.extent),this},t}(),Zc=function(){function t(t,e,i,n,r,s){void 0===t&&(t=new qc),void 0===e&&(e=new Xc),void 0===i&&(i=new Yc),void 0===n&&(n=new qc),void 0===r&&(r=new Xc),void 0===s&&(s=new Yc),this.srcSubres=t,this.srcOffset=e,this.srcExtent=i,this.dstSubres=n,this.dstOffset=r,this.dstExtent=s}return t.prototype.copy=function(t){return this.srcSubres.copy(t.srcSubres),this.srcOffset.copy(t.srcOffset),this.srcExtent.copy(t.srcExtent),this.dstSubres.copy(t.dstSubres),this.dstOffset.copy(t.dstOffset),this.dstExtent.copy(t.dstExtent),this},t}(),Jc=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=new Xc),void 0===r&&(r=new Yc),void 0===s&&(s=new qc),this.buffOffset=t,this.buffStride=e,this.buffTexHeight=i,this.texOffset=n,this.texExtent=r,this.texSubres=s}return t.prototype.copy=function(t){return this.buffOffset=t.buffOffset,this.buffStride=t.buffStride,this.buffTexHeight=t.buffTexHeight,this.texOffset.copy(t.texOffset),this.texExtent.copy(t.texExtent),this.texSubres.copy(t.texSubres),this},t}(),$c=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=1),this.left=t,this.top=e,this.width=i,this.height=n,this.minDepth=r,this.maxDepth=s}var e=t.prototype;return e.copy=function(t){return this.left=t.left,this.top=t.top,this.width=t.width,this.height=t.height,this.minDepth=t.minDepth,this.maxDepth=t.maxDepth,this},e.reset=function(){this.left=0,this.top=0,this.width=0,this.height=0,this.minDepth=0,this.maxDepth=1},t}(),t_=function(){function t(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),this.x=t,this.y=e,this.z=i,this.w=n}var e=t.prototype;return e.copy=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=t.w,this},e.set=function(t,e,i,n){return this.x=t,this.y=e,this.z=i,this.w=n,this},e.reset=function(){this.x=0,this.y=0,this.z=0,this.w=0},t}(),e_=function(){function t(t,e,i,n,r,s,a,o){void 0===t&&(t=[0]),void 0===e&&(e=[0]),void 0===i&&(i=[0]),void 0===n&&(n=[0]),void 0===r&&(r=[0]),void 0===s&&(s=[0]),void 0===a&&(a=[0]),void 0===o&&(o=[0]),this.maxBlockCounts=t,this.maxSamplerTextureCounts=e,this.maxSamplerCounts=i,this.maxTextureCounts=n,this.maxBufferCounts=r,this.maxImageCounts=s,this.maxSubpassInputCounts=a,this.setIndices=o}return t.prototype.copy=function(t){return this.maxBlockCounts=t.maxBlockCounts.slice(),this.maxSamplerTextureCounts=t.maxSamplerTextureCounts.slice(),this.maxSamplerCounts=t.maxSamplerCounts.slice(),this.maxTextureCounts=t.maxTextureCounts.slice(),this.maxBufferCounts=t.maxBufferCounts.slice(),this.maxImageCounts=t.maxImageCounts.slice(),this.maxSubpassInputCounts=t.maxSubpassInputCounts.slice(),this.setIndices=t.setIndices.slice(),this},t}(),i_=function(){function t(t,e,i,n,r){void 0===t&&(t=0),void 0===e&&(e=null),void 0===i&&(i=fc.ON),void 0===n&&(n=0),void 0===r&&(r=0),this.windowId=t,this.windowHandle=e,this.vsyncMode=i,this.width=n,this.height=r}return t.prototype.copy=function(t){return this.windowId=t.windowId,this.windowHandle=t.windowHandle,this.vsyncMode=t.vsyncMode,this.width=t.width,this.height=t.height,this},t}(),n_=function(){function t(t){void 0===t&&(t=new e_),this.bindingMappingInfo=t}return t.prototype.copy=function(t){return this.bindingMappingInfo.copy(t.bindingMappingInfo),this},t}(),r_=function(){function t(t,e,i,n,r){void 0===t&&(t=rc.NONE),void 0===e&&(e=oc.NONE),void 0===i&&(i=0),void 0===n&&(n=1),void 0===r&&(r=sc.NONE),this.usage=t,this.memUsage=e,this.size=i,this.stride=n,this.flags=r}return t.prototype.copy=function(t){return this.usage=t.usage,this.memUsage=t.memUsage,this.size=t.size,this.stride=t.stride,this.flags=t.flags,this},t}(),s_=function(){function t(t,e,i){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=0),this.buffer=t,this.offset=e,this.range=i}return t.prototype.copy=function(t){return this.buffer=t.buffer,this.offset=t.offset,this.range=t.range,this},t}(),a_=function(){function t(t,e,i,n,r,s,a){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),this.vertexCount=t,this.firstVertex=e,this.indexCount=i,this.firstIndex=n,this.vertexOffset=r,this.instanceCount=s,this.firstInstance=a}return t.prototype.copy=function(t){return this.vertexCount=t.vertexCount,this.firstVertex=t.firstVertex,this.indexCount=t.indexCount,this.firstIndex=t.firstIndex,this.vertexOffset=t.vertexOffset,this.instanceCount=t.instanceCount,this.firstInstance=t.firstInstance,this},t}(),o_=function(){function t(t,e,i,n,r){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=null),void 0===r&&(r=0),this.groupCountX=t,this.groupCountY=e,this.groupCountZ=i,this.indirectBuffer=n,this.indirectOffset=r}return t.prototype.copy=function(t){return this.groupCountX=t.groupCountX,this.groupCountY=t.groupCountY,this.groupCountZ=t.groupCountZ,this.indirectBuffer=t.indirectBuffer,this.indirectOffset=t.indirectOffset,this},t}(),h_=function(){function t(t){void 0===t&&(t=[]),this.drawInfos=t}return t.prototype.copy=function(t){return Vc(this.drawInfos,t.drawInfos,a_),this},t}(),u_=function(){function t(t,e,i,n,r,s,a,o,h,u,l){void 0===t&&(t=hc.TEX2D),void 0===e&&(e=uc.NONE),void 0===i&&(i=ec.UNKNOWN),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=lc.NONE),void 0===a&&(a=1),void 0===o&&(o=1),void 0===h&&(h=_c.X1),void 0===u&&(u=1),void 0===l&&(l=0),this.type=t,this.usage=e,this.format=i,this.width=n,this.height=r,this.flags=s,this.layerCount=a,this.levelCount=o,this.samples=h,this.depth=u,this.externalRes=l}return t.prototype.copy=function(t){return this.type=t.type,this.usage=t.usage,this.format=t.format,this.width=t.width,this.height=t.height,this.flags=t.flags,this.layerCount=t.layerCount,this.levelCount=t.levelCount,this.samples=t.samples,this.depth=t.depth,this.externalRes=t.externalRes,this},t}(),l_=function(){function t(t,e,i,n,r,s,a){void 0===t&&(t=null),void 0===e&&(e=hc.TEX2D),void 0===i&&(i=ec.UNKNOWN),void 0===n&&(n=0),void 0===r&&(r=1),void 0===s&&(s=0),void 0===a&&(a=1),this.texture=t,this.type=e,this.format=i,this.baseLevel=n,this.levelCount=r,this.baseLayer=s,this.layerCount=a}return t.prototype.copy=function(t){return this.texture=t.texture,this.type=t.type,this.format=t.format,this.baseLevel=t.baseLevel,this.levelCount=t.levelCount,this.baseLayer=t.baseLayer,this.layerCount=t.layerCount,this},t}(),c_=function(){function t(t,e,i,n,r,s,a,o){void 0===t&&(t=dc.LINEAR),void 0===e&&(e=dc.LINEAR),void 0===i&&(i=dc.NONE),void 0===n&&(n=pc.WRAP),void 0===r&&(r=pc.WRAP),void 0===s&&(s=pc.WRAP),void 0===a&&(a=0),void 0===o&&(o=mc.ALWAYS),this.minFilter=t,this.magFilter=e,this.mipFilter=i,this.addressU=n,this.addressV=r,this.addressW=s,this.maxAnisotropy=a,this.cmpFunc=o}return t.prototype.copy=function(t){return this.minFilter=t.minFilter,this.magFilter=t.magFilter,this.mipFilter=t.mipFilter,this.addressU=t.addressU,this.addressV=t.addressV,this.addressW=t.addressW,this.maxAnisotropy=t.maxAnisotropy,this.cmpFunc=t.cmpFunc,this},t}(),__=function(){function t(t,e,i){void 0===t&&(t=""),void 0===e&&(e=nc.UNKNOWN),void 0===i&&(i=0),this.name=t,this.type=e,this.count=i}return t.prototype.copy=function(t){return this.name=t.name,this.type=t.type,this.count=t.count,this},t}(),f_=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=""),void 0===n&&(n=[]),void 0===r&&(r=0),void 0===s&&(s=0),this.set=t,this.binding=e,this.name=i,this.members=n,this.count=r,this.flattened=s}return t.prototype.copy=function(t){return this.set=t.set,this.binding=t.binding,this.name=t.name,Vc(this.members,t.members,__),this.count=t.count,this.flattened=t.flattened,this},t}(),d_=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=""),void 0===n&&(n=nc.UNKNOWN),void 0===r&&(r=0),void 0===s&&(s=0),this.set=t,this.binding=e,this.name=i,this.type=n,this.count=r,this.flattened=s}return t.prototype.copy=function(t){return this.set=t.set,this.binding=t.binding,this.name=t.name,this.type=t.type,this.count=t.count,this.flattened=t.flattened,this},t}(),p_=function(){function t(t,e,i,n,r){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=""),void 0===n&&(n=0),void 0===r&&(r=0),this.set=t,this.binding=e,this.name=i,this.count=n,this.flattened=r}return t.prototype.copy=function(t){return this.set=t.set,this.binding=t.binding,this.name=t.name,this.count=t.count,this.flattened=t.flattened,this},t}(),m_=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=""),void 0===n&&(n=nc.UNKNOWN),void 0===r&&(r=0),void 0===s&&(s=0),this.set=t,this.binding=e,this.name=i,this.type=n,this.count=r,this.flattened=s}return t.prototype.copy=function(t){return this.set=t.set,this.binding=t.binding,this.name=t.name,this.type=t.type,this.count=t.count,this.flattened=t.flattened,this},t}(),g_=function(){function t(t,e,i,n,r,s,a){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=""),void 0===n&&(n=nc.UNKNOWN),void 0===r&&(r=0),void 0===s&&(s=ac.READ_WRITE),void 0===a&&(a=0),this.set=t,this.binding=e,this.name=i,this.type=n,this.count=r,this.memoryAccess=s,this.flattened=a}return t.prototype.copy=function(t){return this.set=t.set,this.binding=t.binding,this.name=t.name,this.type=t.type,this.count=t.count,this.memoryAccess=t.memoryAccess,this.flattened=t.flattened,this},t}(),v_=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=""),void 0===n&&(n=0),void 0===r&&(r=ac.READ_WRITE),void 0===s&&(s=0),this.set=t,this.binding=e,this.name=i,this.count=n,this.memoryAccess=r,this.flattened=s}return t.prototype.copy=function(t){return this.set=t.set,this.binding=t.binding,this.name=t.name,this.count=t.count,this.memoryAccess=t.memoryAccess,this.flattened=t.flattened,this},t}(),y_=function(){function t(t,e,i,n,r){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=""),void 0===n&&(n=0),void 0===r&&(r=0),this.set=t,this.binding=e,this.name=i,this.count=n,this.flattened=r}return t.prototype.copy=function(t){return this.set=t.set,this.binding=t.binding,this.name=t.name,this.count=t.count,this.flattened=t.flattened,this},t}(),S_=function(){function t(t,e){void 0===t&&(t=Tc.NONE),void 0===e&&(e=""),this.stage=t,this.source=e}return t.prototype.copy=function(t){return this.stage=t.stage,this.source=t.source,this},t}(),T_=function(){function t(t,e,i,n,r,s){void 0===t&&(t=""),void 0===e&&(e=ec.UNKNOWN),void 0===i&&(i=!1),void 0===n&&(n=0),void 0===r&&(r=!1),void 0===s&&(s=0),this.name=t,this.format=e,this.isNormalized=i,this.stream=n,this.isInstanced=r,this.location=s}return t.prototype.copy=function(t){return this.name=t.name,this.format=t.format,this.isNormalized=t.isNormalized,this.stream=t.stream,this.isInstanced=t.isInstanced,this.location=t.location,this},t}(),A_=function(){function t(t,e,i,n,r,s,a,o,h,u){void 0===t&&(t=""),void 0===e&&(e=[]),void 0===i&&(i=[]),void 0===n&&(n=[]),void 0===r&&(r=[]),void 0===s&&(s=[]),void 0===a&&(a=[]),void 0===o&&(o=[]),void 0===h&&(h=[]),void 0===u&&(u=[]),this.name=t,this.stages=e,this.attributes=i,this.blocks=n,this.buffers=r,this.samplerTextures=s,this.samplers=a,this.textures=o,this.images=h,this.subpassInputs=u}return t.prototype.copy=function(t){return this.name=t.name,Vc(this.stages,t.stages,S_),Vc(this.attributes,t.attributes,T_),Vc(this.blocks,t.blocks,f_),Vc(this.buffers,t.buffers,v_),Vc(this.samplerTextures,t.samplerTextures,d_),Vc(this.samplers,t.samplers,p_),Vc(this.textures,t.textures,m_),Vc(this.images,t.images,g_),Vc(this.subpassInputs,t.subpassInputs,y_),this},t}(),b_=function(){function t(t,e,i,n){void 0===t&&(t=[]),void 0===e&&(e=[]),void 0===i&&(i=null),void 0===n&&(n=null),this.attributes=t,this.vertexBuffers=e,this.indexBuffer=i,this.indirectBuffer=n}return t.prototype.copy=function(t){return Vc(this.attributes,t.attributes,T_),this.vertexBuffers=t.vertexBuffers.slice(),this.indexBuffer=t.indexBuffer,this.indirectBuffer=t.indirectBuffer,this},t}(),E_=function(){function t(t,e,i,n,r){void 0===t&&(t=ec.UNKNOWN),void 0===e&&(e=_c.X1),void 0===i&&(i=Ac.CLEAR),void 0===n&&(n=bc.STORE),void 0===r&&(r=null),this.format=t,this.sampleCount=e,this.loadOp=i,this.storeOp=n,this.barrier=r}return t.prototype.copy=function(t){return this.format=t.format,this.sampleCount=t.sampleCount,this.loadOp=t.loadOp,this.storeOp=t.storeOp,this.barrier=t.barrier,this},t}(),C_=function(){function t(t,e,i,n,r,s,a){void 0===t&&(t=ec.UNKNOWN),void 0===e&&(e=_c.X1),void 0===i&&(i=Ac.CLEAR),void 0===n&&(n=bc.STORE),void 0===r&&(r=Ac.CLEAR),void 0===s&&(s=bc.STORE),void 0===a&&(a=null),this.format=t,this.sampleCount=e,this.depthLoadOp=i,this.depthStoreOp=n,this.stencilLoadOp=r,this.stencilStoreOp=s,this.barrier=a}return t.prototype.copy=function(t){return this.format=t.format,this.sampleCount=t.sampleCount,this.depthLoadOp=t.depthLoadOp,this.depthStoreOp=t.depthStoreOp,this.stencilLoadOp=t.stencilLoadOp,this.stencilStoreOp=t.stencilStoreOp,this.barrier=t.barrier,this},t}(),x_=function(){function t(t,e,i,n,r,s,a,o){void 0===t&&(t=[]),void 0===e&&(e=[]),void 0===i&&(i=[]),void 0===n&&(n=[]),void 0===r&&(r=-1),void 0===s&&(s=-1),void 0===a&&(a=Cc.NONE),void 0===o&&(o=Cc.NONE),this.inputs=t,this.colors=e,this.resolves=i,this.preserves=n,this.depthStencil=r,this.depthStencilResolve=s,this.depthResolveMode=a,this.stencilResolveMode=o}return t.prototype.copy=function(t){return this.inputs=t.inputs.slice(),this.colors=t.colors.slice(),this.resolves=t.resolves.slice(),this.preserves=t.preserves.slice(),this.depthStencil=t.depthStencil,this.depthStencilResolve=t.depthStencilResolve,this.depthResolveMode=t.depthResolveMode,this.stencilResolveMode=t.stencilResolveMode,this},t}(),w_=function(){function t(t,e,i,n,r){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=null),void 0===n&&(n=[Ec.NONE]),void 0===r&&(r=[Ec.NONE]),this.srcSubpass=t,this.dstSubpass=e,this.generalBarrier=i,this.prevAccesses=n,this.nextAccesses=r}return t.prototype.copy=function(t){return this.srcSubpass=t.srcSubpass,this.dstSubpass=t.dstSubpass,this.generalBarrier=t.generalBarrier,this.prevAccesses=t.prevAccesses.slice(),this.nextAccesses=t.nextAccesses.slice(),this},t}(),R_=function(){function t(t,e,i,n,r){void 0===t&&(t=[]),void 0===e&&(e=null),void 0===i&&(i=null),void 0===n&&(n=[]),void 0===r&&(r=[]),this.colorAttachments=t,this.depthStencilAttachment=e,this.depthStencilResolveAttachment=i,this.subpasses=n,this.dependencies=r}return t.prototype.copy=function(t){return Vc(this.colorAttachments,t.colorAttachments,E_),t.depthStencilAttachment&&this.depthStencilAttachment&&this.depthStencilAttachment.copy(t.depthStencilAttachment),t.depthStencilResolveAttachment&&this.depthStencilResolveAttachment&&this.depthStencilResolveAttachment.copy(t.depthStencilResolveAttachment),Vc(this.subpasses,t.subpasses,x_),Vc(this.dependencies,t.dependencies,w_),this},t}(),I_=function(){function t(t,e,i){void 0===t&&(t=Ec.NONE),void 0===e&&(e=Ec.NONE),void 0===i&&(i=kc.FULL),this.prevAccesses=t,this.nextAccesses=e,this.type=i}return t.prototype.copy=function(t){return this.prevAccesses=t.prevAccesses,this.nextAccesses=t.nextAccesses,this.type=t.type,this},t}(),D_=function(){function t(t,e,i,n,r,s,a,o,h,u){void 0===t&&(t=Ec.NONE),void 0===e&&(e=Ec.NONE),void 0===i&&(i=kc.FULL),void 0===n&&(n=0),void 0===r&&(r=1),void 0===s&&(s=0),void 0===a&&(a=1),void 0===o&&(o=!1),void 0===h&&(h=null),void 0===u&&(u=null),this.prevAccesses=t,this.nextAccesses=e,this.type=i,this.baseMipLevel=n,this.levelCount=r,this.baseSlice=s,this.sliceCount=a,this.discardContents=o,this.srcQueue=h,this.dstQueue=u}return t.prototype.copy=function(t){return this.prevAccesses=t.prevAccesses,this.nextAccesses=t.nextAccesses,this.type=t.type,this.baseMipLevel=t.baseMipLevel,this.levelCount=t.levelCount,this.baseSlice=t.baseSlice,this.sliceCount=t.sliceCount,this.discardContents=t.discardContents,this.srcQueue=t.srcQueue,this.dstQueue=t.dstQueue,this},t}(),B_=function(){function t(t,e,i,n,r,s,a,o){void 0===t&&(t=Ec.NONE),void 0===e&&(e=Ec.NONE),void 0===i&&(i=kc.FULL),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=!1),void 0===a&&(a=null),void 0===o&&(o=null),this.prevAccesses=t,this.nextAccesses=e,this.type=i,this.offset=n,this.size=r,this.discardContents=s,this.srcQueue=a,this.dstQueue=o}return t.prototype.copy=function(t){return this.prevAccesses=t.prevAccesses,this.nextAccesses=t.nextAccesses,this.type=t.type,this.offset=t.offset,this.size=t.size,this.discardContents=t.discardContents,this.srcQueue=t.srcQueue,this.dstQueue=t.dstQueue,this},t}(),M_=function(){function t(t,e,i,n){void 0===t&&(t=null),void 0===e&&(e=[]),void 0===i&&(i=null),void 0===n&&(n=null),this.renderPass=t,this.colorTextures=e,this.depthStencilTexture=i,this.depthStencilResolveTexture=n}return t.prototype.copy=function(t){return this.renderPass=t.renderPass,this.colorTextures=t.colorTextures.slice(),this.depthStencilTexture=t.depthStencilTexture,this.depthStencilResolveTexture=t.depthStencilResolveTexture,this},t}(),P_=function(){function t(t,e,i,n,r){void 0===t&&(t=-1),void 0===e&&(e=Pc.UNKNOWN),void 0===i&&(i=0),void 0===n&&(n=Tc.NONE),void 0===r&&(r=[]),this.binding=t,this.descriptorType=e,this.count=i,this.stageFlags=n,this.immutableSamplers=r}return t.prototype.copy=function(t){return this.binding=t.binding,this.descriptorType=t.descriptorType,this.count=t.count,this.stageFlags=t.stageFlags,this.immutableSamplers=t.immutableSamplers.slice(),this},t}(),O_=function(){function t(t){void 0===t&&(t=[]),this.bindings=t}var e=t.prototype;return e.copy=function(t){return Vc(this.bindings,t.bindings,P_),this},e.reset=function(){this.bindings.length=0},t}(),L_=function(){function t(t){void 0===t&&(t=null),this.layout=t}return t.prototype.copy=function(t){return this.layout=t.layout,this},t}(),N_=function(){function t(t){void 0===t&&(t=[]),this.setLayouts=t}return t.prototype.copy=function(t){return this.setLayouts=t.setLayouts.slice(),this},t}(),F_=function(){function t(t){void 0===t&&(t=[]),this.attributes=t}return t.prototype.copy=function(t){return Vc(this.attributes,t.attributes,T_),this},t}(),k_=function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=Nc.PRIMARY),this.queue=t,this.type=e}return t.prototype.copy=function(t){return this.queue=t.queue,this.type=t.type,this},t}(),G_=function(){function t(t){void 0===t&&(t=Oc.GRAPHICS),this.type=t}return t.prototype.copy=function(t){return this.type=t.type,this},t}(),V_=function(){function t(t,e,i){void 0===t&&(t=Lc.OCCLUSION),void 0===e&&(e=32767),void 0===i&&(i=!0),this.type=t,this.maxQueryObjects=e,this.forceWait=i}return t.prototype.copy=function(t){return this.type=t.type,this.maxQueryObjects=t.maxQueryObjects,this.forceWait=t.forceWait,this},t}(),U_=function(t,e,i,n,r,s,a,o){void 0===t&&(t=""),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=ic.NONE),void 0===r&&(r=!1),void 0===s&&(s=!1),void 0===a&&(a=!1),void 0===o&&(o=!1),this.name=t,this.size=e,this.count=i,this.type=n,this.hasAlpha=r,this.hasDepth=s,this.hasStencil=a,this.isCompressed=o},z_=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this.bufferSize=t,this.textureSize=e}return t.prototype.copy=function(t){return this.bufferSize=t.bufferSize,this.textureSize=t.textureSize,this},t}(),H_=function(){function t(t,e,i){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),this.writeMask=t,this.compareMask=e,this.reference=i}return t.prototype.copy=function(t){return this.writeMask=t.writeMask,this.compareMask=t.compareMask,this.reference=t.reference,this},t}(),W_=function(){function t(t,e,i,n,r,s,a,o,h,u,l){void 0===t&&(t=new $c),void 0===e&&(e=new jc),void 0===i&&(i=new t_),void 0===n&&(n=1),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=new H_),void 0===l&&(l=new H_),this.viewport=t,this.scissor=e,this.blendConstant=i,this.lineWidth=n,this.depthBiasConstant=r,this.depthBiasClamp=s,this.depthBiasSlope=a,this.depthMinBounds=o,this.depthMaxBounds=h,this.stencilStatesFront=u,this.stencilStatesBack=l}return t.prototype.copy=function(t){return this.viewport.copy(t.viewport),this.scissor.copy(t.scissor),this.blendConstant.copy(t.blendConstant),this.lineWidth=t.lineWidth,this.depthBiasConstant=t.depthBiasConstant,this.depthBiasClamp=t.depthBiasClamp,this.depthBiasSlope=t.depthBiasSlope,this.depthMinBounds=t.depthMinBounds,this.depthMaxBounds=t.depthMaxBounds,this.stencilStatesFront.copy(t.stencilStatesFront),this.stencilStatesBack.copy(t.stencilStatesBack),this},t}(),X_=function(t){function e(i){var n;return(n=t.call(this)||this)._objectType=Ql.UNKNOWN,n._objectID=0,n._typedID=0,n._objectType=i,n._objectID=e._idTable[Ql.UNKNOWN]++,n._typedID=e._idTable[i]++,n}return s(e,t),n(e,[{key:"objectType",get:function(){return this._objectType}},{key:"objectID",get:function(){return this._objectID}},{key:"typedID",get:function(){return this._typedID}}]),e}(Yl);X_._idTable=Array(Ql.COUNT).fill(65536),function(t){t.ATTR_POSITION="a_position",t.ATTR_NORMAL="a_normal",t.ATTR_TANGENT="a_tangent",t.ATTR_BITANGENT="a_bitangent",t.ATTR_WEIGHTS="a_weights",t.ATTR_JOINTS="a_joints",t.ATTR_COLOR="a_color",t.ATTR_COLOR1="a_color1",t.ATTR_COLOR2="a_color2",t.ATTR_TEX_COORD="a_texCoord",t.ATTR_TEX_COORD1="a_texCoord1",t.ATTR_TEX_COORD2="a_texCoord2",t.ATTR_TEX_COORD3="a_texCoord3",t.ATTR_TEX_COORD4="a_texCoord4",t.ATTR_TEX_COORD5="a_texCoord5",t.ATTR_TEX_COORD6="a_texCoord6",t.ATTR_TEX_COORD7="a_texCoord7",t.ATTR_TEX_COORD8="a_texCoord8",t.ATTR_BATCH_ID="a_batch_id",t.ATTR_BATCH_UV="a_batch_uv"}(Uc||(Uc={}));var j_=Object.freeze([new U_("UNKNOWN",0,0,ic.NONE,!1,!1,!1,!1),new U_("A8",1,1,ic.UNORM,!0,!1,!1,!1),new U_("L8",1,1,ic.UNORM,!1,!1,!1,!1),new U_("LA8",1,2,ic.UNORM,!0,!1,!1,!1),new U_("R8",1,1,ic.UNORM,!1,!1,!1,!1),new U_("R8SN",1,1,ic.SNORM,!1,!1,!1,!1),new U_("R8UI",1,1,ic.UINT,!1,!1,!1,!1),new U_("R8I",1,1,ic.INT,!1,!1,!1,!1),new U_("R16F",2,1,ic.FLOAT,!1,!1,!1,!1),new U_("R16UI",2,1,ic.UINT,!1,!1,!1,!1),new U_("R16I",2,1,ic.INT,!1,!1,!1,!1),new U_("R32F",4,1,ic.FLOAT,!1,!1,!1,!1),new U_("R32UI",4,1,ic.UINT,!1,!1,!1,!1),new U_("R32I",4,1,ic.INT,!1,!1,!1,!1),new U_("RG8",2,2,ic.UNORM,!1,!1,!1,!1),new U_("RG8SN",2,2,ic.SNORM,!1,!1,!1,!1),new U_("RG8UI",2,2,ic.UINT,!1,!1,!1,!1),new U_("RG8I",2,2,ic.INT,!1,!1,!1,!1),new U_("RG16F",4,2,ic.FLOAT,!1,!1,!1,!1),new U_("RG16UI",4,2,ic.UINT,!1,!1,!1,!1),new U_("RG16I",4,2,ic.INT,!1,!1,!1,!1),new U_("RG32F",8,2,ic.FLOAT,!1,!1,!1,!1),new U_("RG32UI",8,2,ic.UINT,!1,!1,!1,!1),new U_("RG32I",8,2,ic.INT,!1,!1,!1,!1),new U_("RGB8",3,3,ic.UNORM,!1,!1,!1,!1),new U_("SRGB8",3,3,ic.UNORM,!1,!1,!1,!1),new U_("RGB8SN",3,3,ic.SNORM,!1,!1,!1,!1),new U_("RGB8UI",3,3,ic.UINT,!1,!1,!1,!1),new U_("RGB8I",3,3,ic.INT,!1,!1,!1,!1),new U_("RGB16F",6,3,ic.FLOAT,!1,!1,!1,!1),new U_("RGB16UI",6,3,ic.UINT,!1,!1,!1,!1),new U_("RGB16I",6,3,ic.INT,!1,!1,!1,!1),new U_("RGB32F",12,3,ic.FLOAT,!1,!1,!1,!1),new U_("RGB32UI",12,3,ic.UINT,!1,!1,!1,!1),new U_("RGB32I",12,3,ic.INT,!1,!1,!1,!1),new U_("RGBA8",4,4,ic.UNORM,!0,!1,!1,!1),new U_("BGRA8",4,4,ic.UNORM,!0,!1,!1,!1),new U_("SRGB8_A8",4,4,ic.UNORM,!0,!1,!1,!1),new U_("RGBA8SN",4,4,ic.SNORM,!0,!1,!1,!1),new U_("RGBA8UI",4,4,ic.UINT,!0,!1,!1,!1),new U_("RGBA8I",4,4,ic.INT,!0,!1,!1,!1),new U_("RGBA16F",8,4,ic.FLOAT,!0,!1,!1,!1),new U_("RGBA16UI",8,4,ic.UINT,!0,!1,!1,!1),new U_("RGBA16I",8,4,ic.INT,!0,!1,!1,!1),new U_("RGBA32F",16,4,ic.FLOAT,!0,!1,!1,!1),new U_("RGBA32UI",16,4,ic.UINT,!0,!1,!1,!1),new U_("RGBA32I",16,4,ic.INT,!0,!1,!1,!1),new U_("R5G6B5",2,3,ic.UNORM,!1,!1,!1,!1),new U_("R11G11B10F",4,3,ic.FLOAT,!1,!1,!1,!1),new U_("RGB5A1",2,4,ic.UNORM,!0,!1,!1,!1),new U_("RGBA4",2,4,ic.UNORM,!0,!1,!1,!1),new U_("RGB10A2",2,4,ic.UNORM,!0,!1,!1,!1),new U_("RGB10A2UI",2,4,ic.UINT,!0,!1,!1,!1),new U_("RGB9E5",2,4,ic.FLOAT,!0,!1,!1,!1),new U_("DEPTH",4,1,ic.FLOAT,!1,!0,!1,!1),new U_("DEPTH_STENCIL",5,2,ic.FLOAT,!1,!0,!0,!1),new U_("BC1",1,3,ic.UNORM,!1,!1,!1,!0),new U_("BC1_ALPHA",1,4,ic.UNORM,!0,!1,!1,!0),new U_("BC1_SRGB",1,3,ic.UNORM,!1,!1,!1,!0),new U_("BC1_SRGB_ALPHA",1,4,ic.UNORM,!0,!1,!1,!0),new U_("BC2",1,4,ic.UNORM,!0,!1,!1,!0),new U_("BC2_SRGB",1,4,ic.UNORM,!0,!1,!1,!0),new U_("BC3",1,4,ic.UNORM,!0,!1,!1,!0),new U_("BC3_SRGB",1,4,ic.UNORM,!0,!1,!1,!0),new U_("BC4",1,1,ic.UNORM,!1,!1,!1,!0),new U_("BC4_SNORM",1,1,ic.SNORM,!1,!1,!1,!0),new U_("BC5",1,2,ic.UNORM,!1,!1,!1,!0),new U_("BC5_SNORM",1,2,ic.SNORM,!1,!1,!1,!0),new U_("BC6H_UF16",1,3,ic.UFLOAT,!1,!1,!1,!0),new U_("BC6H_SF16",1,3,ic.FLOAT,!1,!1,!1,!0),new U_("BC7",1,4,ic.UNORM,!0,!1,!1,!0),new U_("BC7_SRGB",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ETC_RGB8",1,3,ic.UNORM,!1,!1,!1,!0),new U_("ETC2_RGB8",1,3,ic.UNORM,!1,!1,!1,!0),new U_("ETC2_SRGB8",1,3,ic.UNORM,!1,!1,!1,!0),new U_("ETC2_RGB8_A1",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ETC2_SRGB8_A1",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ETC2_RGBA8",2,4,ic.UNORM,!0,!1,!1,!0),new U_("ETC2_SRGB8_A8",2,4,ic.UNORM,!0,!1,!1,!0),new U_("EAC_R11",1,1,ic.UNORM,!1,!1,!1,!0),new U_("EAC_R11SN",1,1,ic.SNORM,!1,!1,!1,!0),new U_("EAC_RG11",2,2,ic.UNORM,!1,!1,!1,!0),new U_("EAC_RG11SN",2,2,ic.SNORM,!1,!1,!1,!0),new U_("PVRTC_RGB2",2,3,ic.UNORM,!1,!1,!1,!0),new U_("PVRTC_RGBA2",2,4,ic.UNORM,!0,!1,!1,!0),new U_("PVRTC_RGB4",2,3,ic.UNORM,!1,!1,!1,!0),new U_("PVRTC_RGBA4",2,4,ic.UNORM,!0,!1,!1,!0),new U_("PVRTC2_2BPP",2,4,ic.UNORM,!0,!1,!1,!0),new U_("PVRTC2_4BPP",2,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_4x4",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_5x4",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_5x5",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_6x5",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_6x6",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_8x5",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_8x6",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_8x8",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_10x5",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_10x6",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_10x8",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_10x10",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_12x10",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_RGBA_12x12",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_4x4",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_5x4",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_5x5",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_6x5",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_6x6",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_8x5",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_8x6",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_8x8",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_10x5",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_10x6",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_10x8",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_10x10",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_12x10",1,4,ic.UNORM,!0,!1,!1,!0),new U_("ASTC_SRGBA_12x12",1,4,ic.UNORM,!0,!1,!1,!0)]),Y_=Pc.UNIFORM_BUFFER|Pc.DYNAMIC_UNIFORM_BUFFER|Pc.STORAGE_BUFFER|Pc.DYNAMIC_STORAGE_BUFFER,q_=Pc.SAMPLER_TEXTURE|Pc.SAMPLER|Pc.TEXTURE|Pc.STORAGE_IMAGE|Pc.INPUT_ATTACHMENT,K_=Pc.DYNAMIC_STORAGE_BUFFER|Pc.DYNAMIC_UNIFORM_BUFFER;function Q_(t){return t>0&&0==(t&t-1)}function Z_(t,e,i,n){if(!j_[t].isCompressed)return e*i*n*j_[t].size;switch(t){case ec.BC1:case ec.BC1_ALPHA:case ec.BC1_SRGB:case ec.BC1_SRGB_ALPHA:return Math.ceil(e/4)*Math.ceil(i/4)*8*n;case ec.BC2:case ec.BC2_SRGB:case ec.BC3:case ec.BC3_SRGB:case ec.BC4:case ec.BC4_SNORM:case ec.BC6H_SF16:case ec.BC6H_UF16:case ec.BC7:case ec.BC7_SRGB:return Math.ceil(e/4)*Math.ceil(i/4)*16*n;case ec.BC5:case ec.BC5_SNORM:return Math.ceil(e/4)*Math.ceil(i/4)*32*n;case ec.ETC_RGB8:case ec.ETC2_RGB8:case ec.ETC2_SRGB8:case ec.ETC2_RGB8_A1:case ec.EAC_R11:case ec.EAC_R11SN:return Math.ceil(e/4)*Math.ceil(i/4)*8*n;case ec.ETC2_RGBA8:case ec.ETC2_SRGB8_A1:case ec.EAC_RG11:case ec.EAC_RG11SN:return Math.ceil(e/4)*Math.ceil(i/4)*16*n;case ec.PVRTC_RGB2:case ec.PVRTC_RGBA2:case ec.PVRTC2_2BPP:return Math.ceil(e/8)*Math.ceil(i/4)*8*n;case ec.PVRTC_RGB4:case ec.PVRTC_RGBA4:case ec.PVRTC2_4BPP:return Math.ceil(e/4)*Math.ceil(i/4)*8*n;case ec.ASTC_RGBA_4X4:case ec.ASTC_SRGBA_4X4:return Math.ceil(e/4)*Math.ceil(i/4)*16*n;case ec.ASTC_RGBA_5X4:case ec.ASTC_SRGBA_5X4:return Math.ceil(e/5)*Math.ceil(i/4)*16*n;case ec.ASTC_RGBA_5X5:case ec.ASTC_SRGBA_5X5:return Math.ceil(e/5)*Math.ceil(i/5)*16*n;case ec.ASTC_RGBA_6X5:case ec.ASTC_SRGBA_6X5:return Math.ceil(e/6)*Math.ceil(i/5)*16*n;case ec.ASTC_RGBA_6X6:case ec.ASTC_SRGBA_6X6:return Math.ceil(e/6)*Math.ceil(i/6)*16*n;case ec.ASTC_RGBA_8X5:case ec.ASTC_SRGBA_8X5:return Math.ceil(e/8)*Math.ceil(i/5)*16*n;case ec.ASTC_RGBA_8X6:case ec.ASTC_SRGBA_8X6:return Math.ceil(e/8)*Math.ceil(i/6)*16*n;case ec.ASTC_RGBA_8X8:case ec.ASTC_SRGBA_8X8:return Math.ceil(e/8)*Math.ceil(i/8)*16*n;case ec.ASTC_RGBA_10X5:case ec.ASTC_SRGBA_10X5:return Math.ceil(e/10)*Math.ceil(i/5)*16*n;case ec.ASTC_RGBA_10X6:case ec.ASTC_SRGBA_10X6:return Math.ceil(e/10)*Math.ceil(i/6)*16*n;case ec.ASTC_RGBA_10X8:case ec.ASTC_SRGBA_10X8:return Math.ceil(e/10)*Math.ceil(i/8)*16*n;case ec.ASTC_RGBA_10X10:case ec.ASTC_SRGBA_10X10:return Math.ceil(e/10)*Math.ceil(i/10)*16*n;case ec.ASTC_RGBA_12X10:case ec.ASTC_SRGBA_12X10:return Math.ceil(e/12)*Math.ceil(i/10)*16*n;case ec.ASTC_RGBA_12X12:case ec.ASTC_SRGBA_12X12:return Math.ceil(e/12)*Math.ceil(i/12)*16*n;default:return 0}}function J_(t,e,i,n,r){for(var s=0,a=0;a<r;++a)s+=Z_(t,e,i,n),e=Math.max(e>>1,1),i=Math.max(i>>1,1);return s}var $_=[0,4,8,12,16,4,8,12,16,4,8,12,16,4,8,12,16,16,24,32,24,36,48,32,48,64,4,4,4,4,4,4];function tf(t){return $_[t]||0}function ef(t){if(t.isCompressed)return Uint8Array;var e=t.size/t.count;switch(t.type){case ic.UNORM:case ic.UINT:switch(e){case 1:return Uint8Array;case 2:return Uint16Array;case 4:return Uint32Array;default:return Uint8Array}case ic.SNORM:case ic.INT:switch(e){case 1:return Int8Array;case 2:return Int16Array;case 4:return Int32Array;default:return Int8Array}case ic.FLOAT:switch(e){case 2:return Uint16Array;case 4:default:return Float32Array}}return Float32Array}function nf(t){switch(t){case ec.BC1:case ec.BC1_ALPHA:case ec.BC1_SRGB:case ec.BC1_SRGB_ALPHA:case ec.BC2:case ec.BC2_SRGB:case ec.BC3:case ec.BC3_SRGB:case ec.BC4:case ec.BC4_SNORM:case ec.BC6H_SF16:case ec.BC6H_UF16:case ec.BC7:case ec.BC7_SRGB:case ec.BC5:case ec.BC5_SNORM:case ec.ETC_RGB8:case ec.ETC2_RGB8:case ec.ETC2_SRGB8:case ec.ETC2_RGB8_A1:case ec.EAC_R11:case ec.EAC_R11SN:case ec.ETC2_RGBA8:case ec.ETC2_SRGB8_A1:case ec.EAC_RG11:case ec.EAC_RG11SN:return{width:4,height:4};case ec.PVRTC_RGB2:case ec.PVRTC_RGBA2:case ec.PVRTC2_2BPP:return{width:8,height:4};case ec.PVRTC_RGB4:case ec.PVRTC_RGBA4:case ec.PVRTC2_4BPP:return{width:4,height:4};case ec.ASTC_RGBA_4X4:case ec.ASTC_SRGBA_4X4:return{width:4,height:4};case ec.ASTC_RGBA_5X4:case ec.ASTC_SRGBA_5X4:return{width:5,height:4};case ec.ASTC_RGBA_5X5:case ec.ASTC_SRGBA_5X5:return{width:5,height:5};case ec.ASTC_RGBA_6X5:case ec.ASTC_SRGBA_6X5:return{width:6,height:5};case ec.ASTC_RGBA_6X6:case ec.ASTC_SRGBA_6X6:return{width:6,height:6};case ec.ASTC_RGBA_8X5:case ec.ASTC_SRGBA_8X5:return{width:8,height:5};case ec.ASTC_RGBA_8X6:case ec.ASTC_SRGBA_8X6:return{width:8,height:6};case ec.ASTC_RGBA_8X8:case ec.ASTC_SRGBA_8X8:return{width:8,height:8};case ec.ASTC_RGBA_10X5:case ec.ASTC_SRGBA_10X5:return{width:10,height:5};case ec.ASTC_RGBA_10X6:case ec.ASTC_SRGBA_10X6:return{width:10,height:6};case ec.ASTC_RGBA_10X8:case ec.ASTC_SRGBA_10X8:return{width:10,height:8};case ec.ASTC_RGBA_10X10:case ec.ASTC_SRGBA_10X10:return{width:10,height:10};case ec.ASTC_RGBA_12X10:case ec.ASTC_SRGBA_12X10:return{width:12,height:10};case ec.ASTC_RGBA_12X12:case ec.ASTC_SRGBA_12X12:return{width:12,height:12};default:return{width:1,height:1}}}function rf(t,e){return Math.ceil(t/e)*e}var sf=Object.freeze({__proto__:null,get ObjectType(){return Ql},get Status(){return Zl},get API(){return Jl},get SurfaceTransform(){return $l},get Feature(){return tc},get Format(){return ec},get FormatType(){return ic},get Type(){return nc},get BufferUsageBit(){return rc},get BufferFlagBit(){return sc},get MemoryAccessBit(){return ac},get MemoryUsageBit(){return oc},get TextureType(){return hc},get TextureUsageBit(){return uc},get TextureFlagBit(){return lc},get FormatFeatureBit(){return cc},get SampleCount(){return _c},get VsyncMode(){return fc},get Filter(){return dc},get Address(){return pc},get ComparisonFunc(){return mc},get StencilOp(){return gc},get BlendFactor(){return vc},get BlendOp(){return yc},get ColorMask(){return Sc},get ShaderStageFlagBit(){return Tc},get LoadOp(){return Ac},get StoreOp(){return bc},get AccessFlagBit(){return Ec},get ResolveMode(){return Cc},get PipelineBindPoint(){return xc},get PrimitiveMode(){return wc},get PolygonMode(){return Rc},get ShadeModel(){return Ic},get CullMode(){return Dc},get DynamicStateFlagBit(){return Bc},get StencilFace(){return Mc},get DescriptorType(){return Pc},get QueueType(){return Oc},get QueryType(){return Lc},get CommandBufferType(){return Nc},get ClearFlagBit(){return Fc},get BarrierType(){return kc},get PassType(){return Gc},Size:zc,DeviceCaps:Hc,DeviceOptions:Wc,Offset:Xc,Rect:jc,Extent:Yc,TextureSubresLayers:qc,TextureSubresRange:Kc,TextureCopy:Qc,TextureBlit:Zc,BufferTextureCopy:Jc,Viewport:$c,Color:t_,BindingMappingInfo:e_,SwapchainInfo:i_,DeviceInfo:n_,BufferInfo:r_,BufferViewInfo:s_,DrawInfo:a_,DispatchInfo:o_,IndirectBuffer:h_,TextureInfo:u_,TextureViewInfo:l_,SamplerInfo:c_,Uniform:__,UniformBlock:f_,UniformSamplerTexture:d_,UniformSampler:p_,UniformTexture:m_,UniformStorageImage:g_,UniformStorageBuffer:v_,UniformInputAttachment:y_,ShaderStage:S_,Attribute:T_,ShaderInfo:A_,InputAssemblerInfo:b_,ColorAttachment:E_,DepthStencilAttachment:C_,SubpassInfo:x_,SubpassDependency:w_,RenderPassInfo:R_,GeneralBarrierInfo:I_,TextureBarrierInfo:D_,BufferBarrierInfo:B_,FramebufferInfo:M_,DescriptorSetLayoutBinding:P_,DescriptorSetLayoutInfo:O_,DescriptorSetInfo:L_,PipelineLayoutInfo:N_,InputState:F_,CommandBufferInfo:k_,QueueInfo:G_,QueryPoolInfo:V_,FormatInfo:U_,MemoryStatus:z_,DynamicStencilStates:H_,DynamicStates:W_,GFXObject:X_,get AttributeName(){return Uc},FormatInfos:j_,DESCRIPTOR_BUFFER_TYPE:Y_,DESCRIPTOR_SAMPLER_TYPE:q_,DESCRIPTOR_DYNAMIC_TYPE:K_,DRAW_INFO_SIZE:28,IsPowerOf2:Q_,FormatSize:Z_,FormatSurfaceSize:J_,GetTypeSize:tf,getTypedArrayConstructor:ef,formatAlignment:nf,alignTo:rf}),af=function(t){function e(){var e;return(e=t.call(this,Ql.BUFFER)||this)._usage=rc.NONE,e._memUsage=oc.NONE,e._size=0,e._stride=1,e._count=0,e._flags=sc.NONE,e._isBufferView=!1,e}return s(e,t),n(e,[{key:"usage",get:function(){return this._usage}},{key:"memUsage",get:function(){return this._memUsage}},{key:"size",get:function(){return this._size}},{key:"stride",get:function(){return this._stride}},{key:"count",get:function(){return this._count}},{key:"flags",get:function(){return this._flags}}]),e}(X_),of=function(t){function e(){var e;return(e=t.call(this,Ql.COMMAND_BUFFER)||this)._queue=null,e._type=Nc.PRIMARY,e._numDrawCalls=0,e._numInstances=0,e._numTris=0,e}return s(e,t),n(e,[{key:"type",get:function(){return this._type}},{key:"queue",get:function(){return this._queue}},{key:"numDrawCalls",get:function(){return this._numDrawCalls}},{key:"numInstances",get:function(){return this._numInstances}},{key:"numTris",get:function(){return this._numTris}}]),e}(X_),hf=function(){function t(){this._gfxAPI=Jl.UNKNOWN,this._renderer="",this._vendor="",this._features=new Array(tc.COUNT),this._formatFeatures=new Array(ec.COUNT),this._queue=null,this._cmdBuff=null,this._numDrawCalls=0,this._numInstances=0,this._numTris=0,this._memoryStatus=new z_,this._caps=new Hc,this._bindingMappingInfo=new e_,this._samplers=new Map,this._generalBarrierss=new Map,this._textureBarriers=new Map,this._bufferBarriers=new Map,this._swapchainFormat=ec.RGBA8}var e=t.prototype;return e.hasFeature=function(t){return this._features[t]},e.getFormatFeatures=function(t){return this._formatFeatures[t]},e.enableAutoBarrier=function(){},e.getMaxSampleCount=function(){return _c.X1},n(t,[{key:"gfxAPI",get:function(){return this._gfxAPI}},{key:"queue",get:function(){return this._queue}},{key:"commandBuffer",get:function(){return this._cmdBuff}},{key:"swapchainFormat",get:function(){return this._swapchainFormat}},{key:"renderer",get:function(){return this._renderer}},{key:"vendor",get:function(){return this._vendor}},{key:"numDrawCalls",get:function(){return this._numDrawCalls}},{key:"numInstances",get:function(){return this._numInstances}},{key:"numTris",get:function(){return this._numTris}},{key:"memoryStatus",get:function(){return this._memoryStatus}},{key:"capabilities",get:function(){return this._caps}},{key:"bindingMappingInfo",get:function(){return this._bindingMappingInfo}}]),t}();hf.canvas=void 0;var uf=function(){function t(t){this._texture2D=null,this._texture3D=null,this._textureCube=null,this._texture2DArray=null;var e=new Uint8Array(64);if(e.fill(255),t.capabilities.maxTextureSize>=2){this._texture2D=t.createTexture(new u_(hc.TEX2D,uc.STORAGE|uc.SAMPLED,ec.RGBA8,2,2,lc.NONE));var i=new Jc(0,0,0,new Xc(0,0,0),new Yc(2,2,1));t.copyBuffersToTexture([e],this._texture2D,[i])}if(t.capabilities.maxTextureSize>=2){this._textureCube=t.createTexture(new u_(hc.CUBE,uc.STORAGE|uc.SAMPLED,ec.RGBA8,2,2,lc.NONE,6));var n=new Jc(0,0,0,new Xc(0,0,0),new Yc(2,2,1));t.copyBuffersToTexture([e],this._textureCube,[n]),n.texSubres.baseArrayLayer=1,t.copyBuffersToTexture([e],this._textureCube,[n]),n.texSubres.baseArrayLayer=2,t.copyBuffersToTexture([e],this._textureCube,[n]),n.texSubres.baseArrayLayer=3,t.copyBuffersToTexture([e],this._textureCube,[n]),n.texSubres.baseArrayLayer=4,t.copyBuffersToTexture([e],this._textureCube,[n]),n.texSubres.baseArrayLayer=5,t.copyBuffersToTexture([e],this._textureCube,[n])}if(t.capabilities.max3DTextureSize>=2){this._texture3D=t.createTexture(new u_(hc.TEX3D,uc.STORAGE|uc.SAMPLED,ec.RGBA8,2,2,lc.NONE,1,1,_c.X1,2));var r=new Jc(0,0,0,new Xc(0,0,0),new Yc(2,2,2),new qc(0,0,1));t.copyBuffersToTexture([e],this._texture3D,[r])}if(t.capabilities.maxArrayTextureLayers>=2){this._texture2DArray=t.createTexture(new u_(hc.TEX2D_ARRAY,uc.STORAGE|uc.SAMPLED,ec.RGBA8,2,2,lc.NONE,2));var s=new Jc(0,0,0,new Xc(0,0,0),new Yc(2,2,1),new qc(0,0,1));t.copyBuffersToTexture([e],this._texture2DArray,[s]),s.texSubres.baseArrayLayer=1,t.copyBuffersToTexture([e],this._texture2DArray,[s])}}return t.prototype.getTexture=function(t){switch(t){case hc.TEX2D:return this._texture2D;case hc.TEX3D:return this._texture3D;case hc.CUBE:return this._textureCube;case hc.TEX2D_ARRAY:return this._texture2DArray;default:return null}},t}(),lf=function(t){function e(){var e;return(e=t.call(this,Ql.SWAPCHAIN)||this)._transform=$l.IDENTITY,e._colorTexture=null,e._depthStencilTexture=null,e}return s(e,t),n(e,[{key:"colorTexture",get:function(){return this._colorTexture}},{key:"depthStencilTexture",get:function(){return this._depthStencilTexture}},{key:"surfaceTransform",get:function(){return this._transform}},{key:"width",get:function(){return this._colorTexture.width}},{key:"height",get:function(){return this._colorTexture.height}}]),e}(X_),cf=function(t){function e(){var e;return(e=t.call(this,Ql.FRAMEBUFFER)||this)._renderPass=null,e._colorTextures=[],e._depthStencilTexture=null,e._width=0,e._height=0,e}return s(e,t),n(e,[{key:"renderPass",get:function(){return this._renderPass}},{key:"colorTextures",get:function(){return this._colorTextures}},{key:"depthStencilTexture",get:function(){return this._depthStencilTexture}},{key:"width",get:function(){return this.colorTextures.length>0?this.colorTextures[0].width:this.depthStencilTexture?this.depthStencilTexture.width:this._width}},{key:"height",get:function(){return this.colorTextures.length>0?this.colorTextures[0].height:this.depthStencilTexture?this.depthStencilTexture.height:this._height}},{key:"needRebuild",get:function(){return!1}}]),e}(X_),_f=function(t){function e(){var e;return(e=t.call(this,Ql.INPUT_ASSEMBLER)||this)._attributes=[],e._attributesHash=0,e._vertexBuffers=[],e._indexBuffer=null,e._indirectBuffer=null,e._drawInfo=new a_,e}s(e,t);var i=e.prototype;return i.getVertexBuffer=function(t){return void 0===t&&(t=0),t<this._vertexBuffers.length?this._vertexBuffers[t]:null},i.computeAttributesHash=function(){for(var t="attrs",e=0;e<this.attributes.length;++e){var i=this.attributes[e];t+=","+i.name+","+i.format+","+i.isNormalized+","+i.stream+","+i.isInstanced+","+i.location}return zl(t,666)},n(e,[{key:"attributes",get:function(){return this._attributes}},{key:"vertexBuffers",get:function(){return this._vertexBuffers}},{key:"indexBuffer",get:function(){return this._indexBuffer}},{key:"indirectBuffer",get:function(){return this._indirectBuffer}},{key:"attributesHash",get:function(){return this._attributesHash}},{key:"vertexCount",get:function(){return this._drawInfo.vertexCount},set:function(t){this._drawInfo.vertexCount=t}},{key:"firstVertex",get:function(){return this._drawInfo.firstVertex},set:function(t){this._drawInfo.firstVertex=t}},{key:"indexCount",get:function(){return this._drawInfo.indexCount},set:function(t){this._drawInfo.indexCount=t}},{key:"firstIndex",get:function(){return this._drawInfo.firstIndex},set:function(t){this._drawInfo.firstIndex=t}},{key:"vertexOffset",get:function(){return this._drawInfo.vertexOffset},set:function(t){this._drawInfo.vertexOffset=t}},{key:"instanceCount",get:function(){return this._drawInfo.instanceCount},set:function(t){this._drawInfo.instanceCount=t}},{key:"firstInstance",get:function(){return this._drawInfo.firstInstance},set:function(t){this._drawInfo.firstInstance=t}},{key:"drawInfo",get:function(){return this._drawInfo},set:function(t){this._drawInfo=t}}]),e}(X_),ff=function(t){function e(){var e;return(e=t.call(this,Ql.DESCRIPTOR_SET)||this)._layout=null,e._buffers=[],e._textures=[],e._samplers=[],e._isDirty=!1,e}s(e,t);var i=e.prototype;return i.bindBuffer=function(t,e,i){void 0===i&&(i=0);var n=this._layout.bindingIndices[t],r=this._layout.bindings[n];if(r&&r.descriptorType&Y_){var s=this._layout.descriptorIndices[t];this._buffers[s+i]!==e&&(this._buffers[s+i]=e,this._isDirty=!0)}},i.bindSampler=function(t,e,i){void 0===i&&(i=0);var n=this._layout.bindingIndices[t],r=this._layout.bindings[n];if(r&&r.descriptorType&q_){var s=this._layout.descriptorIndices[t];this._samplers[s+i]!==e&&(this._samplers[s+i]=e,this._isDirty=!0)}},i.bindTexture=function(t,e,i,n){void 0===i&&(i=0),void 0===n&&(n=Ec.NONE);var r=this._layout.bindingIndices[t],s=this._layout.bindings[r];if(s&&s.descriptorType&q_){var a=this._layout.descriptorIndices[t];this._textures[a+i]!==e&&(this._textures[a+i]=e,this._isDirty=!0)}},i.getBuffer=function(t,e){void 0===e&&(e=0);var i=this._layout.descriptorIndices[t];return this._buffers[i+e]},i.getSampler=function(t,e){void 0===e&&(e=0);var i=this._layout.descriptorIndices[t];return this._samplers[i+e]},i.getTexture=function(t,e){void 0===e&&(e=0);var i=this._layout.descriptorIndices[t];return this._textures[i+e]},n(e,[{key:"layout",get:function(){return this._layout}}]),e}(X_),df=function(t){function e(){var e;return(e=t.call(this,Ql.DESCRIPTOR_SET_LAYOUT)||this)._bindings=[],e._bindingIndices=[],e._descriptorIndices=[],e}return s(e,t),n(e,[{key:"bindings",get:function(){return this._bindings}},{key:"bindingIndices",get:function(){return this._bindingIndices}},{key:"descriptorIndices",get:function(){return this._descriptorIndices}}]),e}(X_),pf=function(t){function e(){var e;return(e=t.call(this,Ql.PIPELINE_LAYOUT)||this)._setLayouts=[],e}return s(e,t),n(e,[{key:"setLayouts",get:function(){return this._setLayouts}}]),e}(X_),mf=function(){function t(t,e,i,n,r,s,a,o,h,u,l,c){void 0===t&&(t=!1),void 0===e&&(e=Rc.FILL),void 0===i&&(i=Ic.GOURAND),void 0===n&&(n=Dc.BACK),void 0===r&&(r=!0),void 0===s&&(s=!1),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=!0),void 0===l&&(l=!1),void 0===c&&(c=1),this.isDiscard=t,this.polygonMode=e,this.shadeModel=i,this.cullMode=n,this.isFrontFaceCCW=r,this.depthBiasEnabled=s,this.depthBias=a,this.depthBiasClamp=o,this.depthBiasSlop=h,this.isDepthClip=u,this.isMultisample=l,this.lineWidth=c}var e=t.prototype;return e.reset=function(){this.isDiscard=!1,this.polygonMode=Rc.FILL,this.shadeModel=Ic.GOURAND,this.cullMode=Dc.BACK,this.isFrontFaceCCW=!0,this.depthBiasEnabled=!1,this.depthBias=0,this.depthBiasClamp=0,this.depthBiasSlop=0,this.isDepthClip=!0,this.isMultisample=!1,this.lineWidth=1},e.assign=function(t){Object.assign(this,t)},e.destroy=function(){},n(t,[{key:"native",get:function(){return this}}]),t}(),gf=function(){function t(t,e,i,n,r,s,a,o,h,u,l,c,_,f,d,p,m,g,v){void 0===t&&(t=!0),void 0===e&&(e=!0),void 0===i&&(i=mc.LESS),void 0===n&&(n=!1),void 0===r&&(r=mc.ALWAYS),void 0===s&&(s=65535),void 0===a&&(a=65535),void 0===o&&(o=gc.KEEP),void 0===h&&(h=gc.KEEP),void 0===u&&(u=gc.KEEP),void 0===l&&(l=1),void 0===c&&(c=!1),void 0===_&&(_=mc.ALWAYS),void 0===f&&(f=65535),void 0===d&&(d=65535),void 0===p&&(p=gc.KEEP),void 0===m&&(m=gc.KEEP),void 0===g&&(g=gc.KEEP),void 0===v&&(v=1),this.depthTest=t,this.depthWrite=e,this.depthFunc=i,this.stencilTestFront=n,this.stencilFuncFront=r,this.stencilReadMaskFront=s,this.stencilWriteMaskFront=a,this.stencilFailOpFront=o,this.stencilZFailOpFront=h,this.stencilPassOpFront=u,this.stencilRefFront=l,this.stencilTestBack=c,this.stencilFuncBack=_,this.stencilReadMaskBack=f,this.stencilWriteMaskBack=d,this.stencilFailOpBack=p,this.stencilZFailOpBack=m,this.stencilPassOpBack=g,this.stencilRefBack=v}var e=t.prototype;return e.reset=function(){this.depthTest=!0,this.depthWrite=!0,this.depthFunc=mc.LESS,this.stencilTestFront=!1,this.stencilFuncFront=mc.ALWAYS,this.stencilReadMaskFront=65535,this.stencilWriteMaskFront=65535,this.stencilFailOpFront=gc.KEEP,this.stencilZFailOpFront=gc.KEEP,this.stencilPassOpFront=gc.KEEP,this.stencilRefFront=1,this.stencilTestBack=!1,this.stencilFuncBack=mc.ALWAYS,this.stencilReadMaskBack=65535,this.stencilWriteMaskBack=65535,this.stencilFailOpBack=gc.KEEP,this.stencilZFailOpBack=gc.KEEP,this.stencilPassOpBack=gc.KEEP,this.stencilRefBack=1},e.assign=function(t){Object.assign(this,t)},e.destroy=function(){},n(t,[{key:"native",get:function(){return this}}]),t}(),vf=function(){function t(t,e,i,n,r,s,a,o){void 0===t&&(t=!1),void 0===e&&(e=vc.ONE),void 0===i&&(i=vc.ZERO),void 0===n&&(n=yc.ADD),void 0===r&&(r=vc.ONE),void 0===s&&(s=vc.ZERO),void 0===a&&(a=yc.ADD),void 0===o&&(o=Sc.ALL),this.blend=t,this.blendSrc=e,this.blendDst=i,this.blendEq=n,this.blendSrcAlpha=r,this.blendDstAlpha=s,this.blendAlphaEq=a,this.blendColorMask=o}var e=t.prototype;return e.reset=function(){this.blend=!1,this.blendSrc=vc.ONE,this.blendDst=vc.ZERO,this.blendEq=yc.ADD,this.blendSrcAlpha=vc.ONE,this.blendDstAlpha=vc.ZERO,this.blendAlphaEq=yc.ADD,this.blendColorMask=Sc.ALL},e.assign=function(t){Object.assign(this,t)},e.destroy=function(){},t}(),yf=function(){function t(t,e,i,n){void 0===t&&(t=!1),void 0===e&&(e=!1),void 0===i&&(i=new t_),void 0===n&&(n=[new vf]),this.isA2C=t,this.isIndepend=e,this.blendColor=i,this.targets=n}var e=t.prototype;return e.setTarget=function(t,e){var i=this.targets[t];i||(i=this.targets[t]=new vf),Object.assign(i,e)},e.reset=function(){this.isA2C=!1,this.isIndepend=!1,this.blendColor.x=0,this.blendColor.y=0,this.blendColor.z=0,this.blendColor.w=0,this.targets.length=1,this.targets[0].reset()},e.destroy=function(){},n(t,[{key:"native",get:function(){return this}}]),t}(),Sf=function(t,e,i,n,r,s,a,o,h,u){void 0===t&&(t=null),void 0===e&&(e=null),void 0===i&&(i=null),void 0===n&&(n=new F_),void 0===r&&(r=new mf),void 0===s&&(s=new gf),void 0===a&&(a=new yf),void 0===o&&(o=wc.TRIANGLE_LIST),void 0===h&&(h=Bc.NONE),void 0===u&&(u=xc.GRAPHICS),this.shader=t,this.pipelineLayout=e,this.renderPass=i,this.inputState=n,this.rasterizerState=r,this.depthStencilState=s,this.blendState=a,this.primitive=o,this.dynamicStates=h,this.bindPoint=u},Tf=function(t){function e(){var e;return(e=t.call(this,Ql.PIPELINE_STATE)||this)._shader=null,e._pipelineLayout=null,e._primitive=wc.TRIANGLE_LIST,e._is=null,e._rs=new mf,e._dss=new gf,e._bs=new yf,e._dynamicStates=Bc.NONE,e._renderPass=null,e}return s(e,t),n(e,[{key:"shader",get:function(){return this._shader}},{key:"pipelineLayout",get:function(){return this._pipelineLayout}},{key:"primitive",get:function(){return this._primitive}},{key:"rasterizerState",get:function(){return this._rs}},{key:"depthStencilState",get:function(){return this._dss}},{key:"blendState",get:function(){return this._bs}},{key:"inputState",get:function(){return this._is}},{key:"dynamicStates",get:function(){return this._dynamicStates}},{key:"renderPass",get:function(){return this._renderPass}}]),e}(X_),Af=function(t){function e(){var e;return(e=t.call(this,Ql.QUEUE)||this)._type=Oc.GRAPHICS,e}return s(e,t),n(e,[{key:"type",get:function(){return this._type}}]),e}(X_),bf=function(t){function e(){var e;return(e=t.call(this,Ql.RENDER_PASS)||this)._colorInfos=[],e._depthStencilInfo=null,e._subpasses=[],e._hash=0,e}return s(e,t),e.prototype.computeHash=function(){var t="";if(this._subpasses.length)for(var e=0;e<this._subpasses.length;++e){var i=this._subpasses[e];if(i.inputs.length){t+="ia";for(var n=0;n<i.inputs.length;++n){var r=this._colorInfos[i.inputs[n]];t+=","+r.format+","+r.sampleCount}}if(i.colors.length){t+="ca";for(var s=0;s<i.inputs.length;++s){var a=this._colorInfos[i.inputs[s]];t+=","+a.format+","+a.sampleCount}}if(i.depthStencil>=0){var o=this._colorInfos[i.depthStencil];t+="ds,"+o.format+","+o.sampleCount}}else{t+="ca";for(var h=0;h<this._colorInfos.length;++h){var u=this._colorInfos[h];t+=","+u.format+","+u.sampleCount}var l=this._depthStencilInfo;l&&(t+="ds,"+l.format+","+l.sampleCount)}return zl(t,666)},n(e,[{key:"colorAttachments",get:function(){return this._colorInfos}},{key:"depthStencilAttachment",get:function(){return this._depthStencilInfo}},{key:"subPasses",get:function(){return this._subpasses}},{key:"hash",get:function(){return this._hash}}]),e}(X_),Ef=function(t){function e(e,i){var n;return(n=t.call(this,Ql.SAMPLER)||this)._info=new c_,n._hash=0,n._info.copy(e),n._hash=i,n}return s(e,t),e.computeHash=function(t){var e=t.minFilter;return e|=t.magFilter<<2,e|=t.mipFilter<<4,e|=t.addressU<<6,e|=t.addressV<<8,e|=t.addressW<<10,(e|=t.maxAnisotropy<<12)|t.cmpFunc<<16},e.unpackFromHash=function(t){var e=new c_;return e.minFilter=(3&t)>>0,e.magFilter=(3&t)>>2,e.mipFilter=(3&t)>>4,e.addressU=(3&t)>>6,e.addressV=(3&t)>>8,e.addressW=(3&t)>>10,e.maxAnisotropy=(15&t)>>12,e.cmpFunc=(7&t)>>16,e},n(e,[{key:"info",get:function(){return this._info}},{key:"hash",get:function(){return this._hash}}]),e}(X_),Cf=function(t){function e(){var e;return(e=t.call(this,Ql.SHADER)||this)._name="",e._stages=[],e._attributes=[],e._blocks=[],e._samplers=[],e}return s(e,t),n(e,[{key:"name",get:function(){return this._name}},{key:"attributes",get:function(){return this._attributes}},{key:"blocks",get:function(){return this._blocks}},{key:"samplers",get:function(){return this._samplers}},{key:"stages",get:function(){return this._stages}}]),e}(X_),xf=function(t){function e(){var e;return(e=t.call(this,Ql.TEXTURE)||this)._info=new u_,e._viewInfo=new l_,e._isPowerOf2=!1,e._isTextureView=!1,e._size=0,e}return s(e,t),e.getLevelCount=function(t,e){return Math.floor(Math.log2(Math.max(t,e)))},n(e,[{key:"type",get:function(){return this._info.type}},{key:"usage",get:function(){return this._info.usage}},{key:"format",get:function(){return this._info.format}},{key:"width",get:function(){return this._info.width}},{key:"height",get:function(){return this._info.height}},{key:"depth",get:function(){return this._info.depth}},{key:"layerCount",get:function(){return this._info.layerCount}},{key:"levelCount",get:function(){return this._info.levelCount}},{key:"samples",get:function(){return this._info.samples}},{key:"flags",get:function(){return this._info.flags}},{key:"size",get:function(){return this._size}},{key:"info",get:function(){return this._info}},{key:"viewInfo",get:function(){return this._viewInfo}},{key:"isTextureView",get:function(){return this._isTextureView}}]),e}(X_),wf=function(t){function e(e,i){var n;return(n=t.call(this,Ql.GLOBAL_BARRIER)||this)._info=new I_,n._hash=0,n._info.copy(e),n._hash=i,n}return s(e,t),e.computeHash=function(t){return zl(t.prevAccesses+" "+t.nextAccesses+" "+t.type,666)},n(e,[{key:"info",get:function(){return this._info}},{key:"hash",get:function(){return this._hash}}]),e}(X_),Rf=function(t){function e(e,i){var n;return(n=t.call(this,Ql.TEXTURE_BARRIER)||this)._info=new D_,n._hash=0,n._info.copy(e),n._hash=i,n}return s(e,t),e.computeHash=function(t){var e=t.prevAccesses+" "+t.nextAccesses;return e+=t.type,e+=t.baseMipLevel,e+=t.levelCount,e+=t.baseSlice,e+=t.sliceCount,e+=t.discardContents,e+=t.srcQueue?t.srcQueue.type:0,zl(e+=t.dstQueue?t.dstQueue.type:0,666)},n(e,[{key:"info",get:function(){return this._info}},{key:"hash",get:function(){return this._hash}}]),e}(X_),If=function(t){function e(e,i){var n;return(n=t.call(this,Ql.BUFFER_BARRIER)||this)._info=new B_,n._hash=0,n._info.copy(e),n._hash=i,n}return s(e,t),e.computeHash=function(t){var e=t.prevAccesses+" "+t.nextAccesses;return e+=t.type,e+=t.offset,e+=t.size,e+=t.discardContents,e+=t.srcQueue?t.srcQueue.type:0,zl(e+=t.dstQueue?t.dstQueue.type:0,666)},n(e,[{key:"info",get:function(){return this._info}},{key:"hash",get:function(){return this._hash}}]),e}(X_),Df={Device:hf,Swapchain:lf,Buffer:af,Texture:xf,Sampler:Ef,Shader:Cf,InputAssembler:_f,RenderPass:bf,Framebuffer:cf,DescriptorSet:ff,DescriptorSetLayout:df,PipelineLayout:pf,PipelineState:Tf,CommandBuffer:of,Queue:Af,GeneralBarrier:wf,TextureBarrier:Rf,BufferBarrier:If,RasterizerState:mf,BlendState:yf,BlendTarget:vf,DepthStencilState:gf,PipelineStateInfo:Sf};Object.assign(Df,sf),S.gfx=Df;var Bf,Mf,Pf={GFXDevice:!0,GFXBuffer:!0,GFXTexture:!0,GFXSampler:!0,GFXShader:!0,GFXInputAssembler:!0,GFXRenderPass:!0,GFXFramebuffer:!0,GFXPipelineState:!0,GFXCommandBuffer:!0,GFXQueue:!0,GFXObjectType:!0,GFXObject:!1,GFXAttributeName:!0,GFXType:!0,GFXFormat:!0,GFXBufferUsageBit:!0,GFXMemoryUsageBit:!0,GFXBufferFlagBit:!0,GFXBufferAccessBit:"MemoryAccessBit",GFXPrimitiveMode:!0,GFXPolygonMode:!0,GFXShadeModel:!0,GFXCullMode:!0,GFXComparisonFunc:!0,GFXStencilOp:!0,GFXBlendOp:!0,GFXBlendFactor:!0,GFXColorMask:!0,GFXFilter:!0,GFXAddress:!0,GFXTextureType:!0,GFXTextureUsageBit:!0,GFXSampleCount:!0,GFXTextureFlagBit:!0,GFXShaderStageFlagBit:!0,GFXDescriptorType:!0,GFXCommandBufferType:!0,GFXLoadOp:!0,GFXStoreOp:!0,GFXPipelineBindPoint:!0,GFXDynamicStateFlagBit:!0,GFXStencilFace:!0,GFXQueueType:!0,GFXRect:!0,GFXViewport:!0,GFXColor:!0,GFXClearFlag:!0,GFXOffset:!0,GFXExtent:!0,GFXTextureSubres:"TextureSubresLayers",GFXTextureCopy:!0,GFXBufferTextureCopy:!0,GFXFormatType:!0,GFXFormatInfo:!0,GFXMemoryStatus:!0,GFXFormatInfos:!0,GFXFormatSize:!0,GFXFormatSurfaceSize:!0,GFXGetTypeSize:!0,getTypedArrayConstructor:!1};for(var Of in Pf){var Lf=Pf[Of];!0===Lf?Lf=Of.slice(3):!1===Lf&&(Lf=Of),ut(S,"cc",[{name:Of,newName:Lf,target:S.gfx,targetName:"cc.gfx"}])}lt(S,"cc",[{name:"GFX_MAX_VERTEX_ATTRIBUTES"},{name:"GFX_MAX_TEXTURE_UNITS"},{name:"GFX_MAX_ATTACHMENTS"},{name:"GFX_MAX_BUFFER_BINDINGS"},{name:"GFXTextureLayout"}]),lt(tc,"Feature",[{name:"COLOR_FLOAT",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.R32F) & FormatFeatureBit.RENDER_TARGET;"},{name:"COLOR_HALF_FLOAT",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.R16F) & FormatFeatureBit.RENDER_TARGET;"},{name:"TEXTURE_FLOAT",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = (device.getFormatFeatures(Format.R32F) & (FormatFeatureBit.RENDER_TARGET | FormatFeatureBit.SAMPLED_TEXTURE)) === (FormatFeatureBit.RENDER_TARGET | FormatFeatureBit.SAMPLED_TEXTURE);"},{name:"TEXTURE_HALF_FLOAT",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = (device.getFormatFeatures(Format.R16F) & (FormatFeatureBit.RENDER_TARGET | FormatFeatureBit.SAMPLED_TEXTURE)) === (FormatFeatureBit.RENDER_TARGET | FormatFeatureBit.SAMPLED_TEXTURE);"},{name:"TEXTURE_FLOAT_LINEAR",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.R32F) & FormatFeatureBit.LINEAR_FILTER;"},{name:"TEXTURE_HALF_FLOAT_LINEAR",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.R16F) & FormatFeatureBit.LINEAR_FILTER;"},{name:"FORMAT_R11G11B10F",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.R11G11B10F) !== FormatFeatureBit.NONE;"},{name:"FORMAT_SRGB",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.SRGB8) !== FormatFeatureBit.NONE;"},{name:"FORMAT_ETC1",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.ETC_RGB8) !== FormatFeatureBit.NONE;"},{name:"FORMAT_ETC2",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.ETC2_RGB8) !== FormatFeatureBit.NONE;"},{name:"FORMAT_DXT",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.BC1) !== FormatFeatureBit.NONE;"},{name:"FORMAT_PVRTC",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.PVRTC_RGB2) !== FormatFeatureBit.NONE;"},{name:"FORMAT_ASTC",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.ASTC_RGBA_4x4) !== FormatFeatureBit.NONE;"},{name:"FORMAT_RGB8",suggest:"Please use device.getFormatFeatures() instead, like: \nlet isSupported = device.getFormatFeatures(Format.RGB8) !== FormatFeatureBit.NONE;"}]),lt(E_.prototype,"ColorAttachment",[{name:"beginAccesses",suggest:"Please assign to ColorAttachment.barrier instead"},{name:"endAccesses",suggest:"Please assign to ColorAttachment.barrier instead"}]),lt(C_.prototype,"DepthStencilAttachment",[{name:"beginAccesses",suggest:"Please assign to DepthStencilAttachment.barrier instead"},{name:"endAccesses",suggest:"Please assign to DepthStencilAttachment.barrier instead"}]),ut(hf.prototype,"Device",[{name:"getGlobalBarrier",newName:"getGeneralBarrier"}]),function(t){t[t.AUTO=0]="AUTO",t[t.CANVAS=1]="CANVAS",t[t.WEBGL=2]="WEBGL",t[t.HEADLESS=3]="HEADLESS",t[t.WEBGPU=4]="WEBGPU"}(Bf||(Bf={})),function(t){t[t.UNKNOWN=-1]="UNKNOWN",t[t.CANVAS=0]="CANVAS",t[t.WEBGL=1]="WEBGL",t[t.WEBGPU=2]="WEBGPU",t[t.OPENGL=3]="OPENGL",t[t.HEADLESS=4]="HEADLESS"}(Mf||(Mf={}));var Nf=function(){function t(){this.initialized=!1,this._gfxDevice=void 0,this._canvas=null,this._swapchain=void 0,this._renderType=Mf.UNKNOWN,this._deviceInitialized=!1}var e=t.prototype;return e._tryInitializeWebGPUDevice=function(t,e){var i=this;return this._deviceInitialized?Promise.resolve(!0):t?(this._gfxDevice=new t,new Promise((function(t,n){i._gfxDevice.initialize(e).then((function(e){i._deviceInitialized=e,t(e)})).catch((function(t){n(t)}))}))):Promise.resolve(!1)},e._tryInitializeDeviceSync=function(t,e){return!!this._deviceInitialized||(t&&(this._gfxDevice=new t,this._deviceInitialized=this._gfxDevice.initialize(e)),this._deviceInitialized)},e.init=function(t,e){var i=this;if(this.initialized)return!0;var n=Me.querySettings(De.Category.RENDERING,"renderMode");this._canvas=t,this._canvas&&(this._canvas.oncontextmenu=function(){return!1}),this._renderType=this._determineRenderType(n),this._deviceInitialized=!1;var r=new n_(e);if(this._renderType===Mf.WEBGL||this._renderType===Mf.WEBGPU){var s=!!globalThis.WebGL2RenderingContext;if(globalThis.navigator.userAgent.toLowerCase(),Sa.browserType===Ws.UC&&(s=!1),hf.canvas=t,this._renderType===Mf.WEBGPU&&S.WebGPUDevice)return new Promise((function(t,e){i._tryInitializeWebGPUDevice(S.WebGPUDevice,r).then((function(e){i._initSwapchain(),t(e)})).catch((function(t){e(t)}))}));s&&S.WebGL2Device&&this._tryInitializeDeviceSync(S.WebGL2Device,r),S.WebGLDevice&&this._tryInitializeDeviceSync(S.WebGLDevice,r),S.EmptyDevice&&this._tryInitializeDeviceSync(S.EmptyDevice,r),this._initSwapchain()}else this._renderType===Mf.HEADLESS&&S.EmptyDevice&&(this._tryInitializeDeviceSync(S.EmptyDevice,r),this._initSwapchain());return!!this._gfxDevice||(it(16337),this._renderType=Mf.UNKNOWN,!1)},e._initSwapchain=function(){var t=new i_(1,this._canvas),e=ya.windowSize;t.width=e.width,t.height=e.height,this._swapchain=this._gfxDevice.createSwapchain(t)},e._supportWebGPU=function(){return"gpu"in globalThis.navigator},e._determineRenderType=function(t){("number"!=typeof t||t>Bf.WEBGPU||t<Bf.AUTO)&&(t=Bf.AUTO);var e=Mf.CANVAS,i=!1;if(t===Bf.CANVAS?(e=Mf.CANVAS,i=!0):t===Bf.AUTO||t===Bf.WEBGPU?(e=this._supportWebGPU()?Mf.WEBGPU:Mf.WEBGL,i=!0):t===Bf.WEBGL?(e=Mf.WEBGL,i=!0):t===Bf.HEADLESS&&(e=Mf.HEADLESS,i=!0),!i)throw new Error(at(3820,t));return e},n(t,[{key:"gfxDevice",get:function(){return this._gfxDevice}},{key:"swapchain",get:function(){return this._swapchain}}]),t}(),Ff=new Nf;t("aG",Object.freeze({__proto__:null,DescriptorSet:ff,Buffer:af,CommandBuffer:of,get ObjectType(){return Ql},get Status(){return Zl},get API(){return Jl},get SurfaceTransform(){return $l},get Feature(){return tc},get Format(){return ec},get FormatType(){return ic},get Type(){return nc},get BufferUsageBit(){return rc},get BufferFlagBit(){return sc},get MemoryAccessBit(){return ac},get MemoryUsageBit(){return oc},get TextureType(){return hc},get TextureUsageBit(){return uc},get TextureFlagBit(){return lc},get FormatFeatureBit(){return cc},get SampleCount(){return _c},get VsyncMode(){return fc},get Filter(){return dc},get Address(){return pc},get ComparisonFunc(){return mc},get StencilOp(){return gc},get BlendFactor(){return vc},get BlendOp(){return yc},get ColorMask(){return Sc},get ShaderStageFlagBit(){return Tc},get LoadOp(){return Ac},get StoreOp(){return bc},get AccessFlagBit(){return Ec},get ResolveMode(){return Cc},get PipelineBindPoint(){return xc},get PrimitiveMode(){return wc},get PolygonMode(){return Rc},get ShadeModel(){return Ic},get CullMode(){return Dc},get DynamicStateFlagBit(){return Bc},get StencilFace(){return Mc},get DescriptorType(){return Pc},get QueueType(){return Oc},get QueryType(){return Lc},get CommandBufferType(){return Nc},get ClearFlagBit(){return Fc},get BarrierType(){return kc},get PassType(){return Gc},Size:zc,DeviceCaps:Hc,DeviceOptions:Wc,Offset:Xc,Rect:jc,Extent:Yc,TextureSubresLayers:qc,TextureSubresRange:Kc,TextureCopy:Qc,TextureBlit:Zc,BufferTextureCopy:Jc,Viewport:$c,Color:t_,BindingMappingInfo:e_,SwapchainInfo:i_,DeviceInfo:n_,BufferInfo:r_,BufferViewInfo:s_,DrawInfo:a_,DispatchInfo:o_,IndirectBuffer:h_,TextureInfo:u_,TextureViewInfo:l_,SamplerInfo:c_,Uniform:__,UniformBlock:f_,UniformSamplerTexture:d_,UniformSampler:p_,UniformTexture:m_,UniformStorageImage:g_,UniformStorageBuffer:v_,UniformInputAttachment:y_,ShaderStage:S_,Attribute:T_,ShaderInfo:A_,InputAssemblerInfo:b_,ColorAttachment:E_,DepthStencilAttachment:C_,SubpassInfo:x_,SubpassDependency:w_,RenderPassInfo:R_,GeneralBarrierInfo:I_,TextureBarrierInfo:D_,BufferBarrierInfo:B_,FramebufferInfo:M_,DescriptorSetLayoutBinding:P_,DescriptorSetLayoutInfo:O_,DescriptorSetInfo:L_,PipelineLayoutInfo:N_,InputState:F_,CommandBufferInfo:k_,QueueInfo:G_,QueryPoolInfo:V_,FormatInfo:U_,MemoryStatus:z_,DynamicStencilStates:H_,DynamicStates:W_,GFXObject:X_,get AttributeName(){return Uc},FormatInfos:j_,DESCRIPTOR_BUFFER_TYPE:Y_,DESCRIPTOR_SAMPLER_TYPE:q_,DESCRIPTOR_DYNAMIC_TYPE:K_,DRAW_INFO_SIZE:28,IsPowerOf2:Q_,FormatSize:Z_,FormatSurfaceSize:J_,GetTypeSize:tf,getTypedArrayConstructor:ef,formatAlignment:nf,alignTo:rf,Device:hf,DefaultResource:uf,Swapchain:lf,Framebuffer:cf,InputAssembler:_f,DescriptorSetLayout:df,PipelineLayout:pf,BlendState:yf,BlendTarget:vf,RasterizerState:mf,DepthStencilState:gf,PipelineStateInfo:Sf,PipelineState:Tf,Queue:Af,RenderPass:bf,Sampler:Ef,Shader:Cf,Texture:xf,GeneralBarrier:wf,TextureBarrier:Rf,get LegacyRenderMode(){return Bf},get RenderType(){return Mf},DeviceManager:Nf,deviceManager:Ff}));var kf=new cn;function Gf(t,e,i,n){var r=i.chunk,s=i.data,a=r.vb,o=i.vertexCount,h=t.worldMatrix,u=h.m00,l=h.m01,c=h.m02,_=h.m03,f=h.m04,d=h.m05,p=h.m06,m=h.m07,g=h.m12,v=h.m13,y=h.m14,S=h.m15;kf.set(n.r/255,n.g/255,n.b/255,n.a/255);for(var T=0,A=0;A<o;++A){var b=s[A],E=b.x,C=b.y,x=_*E+m*C+S;x=x?1/x:1,a[T+0]=(u*E+f*C+g)*x,a[T+1]=(l*E+d*C+v)*x,a[T+2]=(c*E+p*C+y)*x,cn.toArray(a,kf,T+5),T+=9}r.bufferId;for(var w=r.vertexOffset,R=r.meshBuffer,I=r.meshBuffer.iData,D=R.indexOffset,B=0,M=o/4;B<M;B++){var P=w+4*B;I[D++]=P,I[D++]=P+1,I[D++]=P+2,I[D++]=P+1,I[D++]=P+3,I[D++]=P+2}R.indexOffset+=i.indexCount,R.setDirty()}var Vf={},Uf=function(){function t(t){this._map=null,this._count=0,t?(this._map=t,this._count=Object.keys(t).length):(this._map=Lt(!0),this._count=0)}var e=t.prototype;return e.add=function(t,e){return t in this._map||this._count++,this._map[t]=e},e.get=function(t){return this._map[t]},e.has=function(t){return t in this._map},e.remove=function(t){var e=this._map[t];return t in this._map&&(delete this._map[t],this._count--),e},e.clear=function(){0!==this._count&&(this._map=Lt(!0),this._count=0)},e.forEach=function(t){for(var e in this._map)t(this._map[e],e)},e.find=function(t){for(var e in this._map)if(t(this._map[e],e))return this._map[e];return null},e.destroy=function(){this._map=null},n(t,[{key:"map",get:function(){return this._map}},{key:"count",get:function(){return this._count}}]),t}(),zf=function(){function t(e,i){this.id=t._pipelineId++,this.name="",this.pipes=[],this.name=e;for(var n=0,r=i.length;n<r;n++)this.pipes.push(i[n])}var e=t.prototype;return e.insert=function(t,e){return e>this.pipes.length?(tt(4921),this):(this.pipes.splice(e,0,t),this)},e.append=function(t){return this.pipes.push(t),this},e.remove=function(t){return this.pipes.splice(t,1),this},e.sync=function(t){var e=this.pipes;if(0===e.length)return null;t.isFinished=!1;for(var i=0,n=e.length;i<n;){var r=(0,e[i])(t);if(r)return t.isFinished=!0,r;++i!==n&&(t.input=t.output,t.output=null)}return t.isFinished=!0,t.output},e.async=function(t){0!==this.pipes.length&&(t.isFinished=!1,this._flow(0,t))},e._flow=function(t,e){var i=this;(0,this.pipes[t])(e,(function(n){n?(e.isFinished=!0,e.dispatch("complete",n)):++t<i.pipes.length?(e.input=e.output,e.output=null,i._flow(t,e)):(e.isFinished=!0,e.dispatch("complete",n,e.output))}))},t}();zf._pipelineId=0,function(){function t(t){if(this._weakMap={},void 0===window.WeakRef)throw new Error("this platform does not support WeakRef!");if(t)for(var e in t)this._weakMap[e]=new WeakRef(t[e])}var e=t.prototype;e.add=function(t,e){return this._weakMap[t]=new WeakRef(e),e},e.has=function(t){return t in this._weakMap&&!!this._weakMap[t].deref()},e.get=function(t){return this._weakMap[t]&&this._weakMap[t].deref()},e.remove=function(t){var e=this._weakMap[t];return delete this._weakMap[t],e&&e.deref()},e.clear=function(){this._weakMap=Lt(!0)},e.forEach=function(t){for(var e in this._weakMap){var i=this.get(e);i&&t(i,e)}},e.find=function(t){for(var e in this._weakMap){var i=this.get(e);if(i&&t(i,e))return this._weakMap[e].deref()}return null},e.destroy=function(){this._weakMap={}},n(t,[{key:"count",get:function(){return Object.values(this._weakMap).filter((function(t){return t.deref()})).length}}])}();var Hf,Wf=new Uf,Xf=new Uf,jf=new Uf,Yf=new Uf,qf=new zf("normal load",[]),Kf=new zf("fetch",[]),Qf=new zf("transform url",[]),Zf=new Map;!function(t){t.UUID="uuid",t.PATH="path",t.DIR="dir",t.URL="url",t.SCENE="scene"}(Hf||(Hf={}));var Jf,$f={default:{priority:0},preload:{maxConcurrency:6,maxRequestsPerFrame:2,priority:-1},scene:{maxConcurrency:20,maxRequestsPerFrame:20,priority:1},bundle:{maxConcurrency:20,maxRequestsPerFrame:20,priority:2},remote:{maxRetryCount:4}};!function(t){t.INTERNAL="internal",t.RESOURCES="resources",t.MAIN="main",t.START_SCENE="start-scene"}(Jf||(Jf={}));var td=function(){function t(e){this.id=t._taskId++,this.onComplete=null,this.onProgress=null,this.onError=null,this.source=null,this.output=null,this.input=null,this.progress=null,this.options=null,this.isFinished=!0,this.set(e)}t.create=function(e){var i;return 0!==t._deadPool.length?(i=t._deadPool.pop()).set(e):i=new t(e),i};var e=t.prototype;return e.set=function(t){void 0===t&&(t=Object.create(null)),this.onComplete=t.onComplete||null,this.onProgress=t.onProgress||null,this.onError=t.onError||null,this.source=this.input=t.input,this.output=null,this.progress=t.progress,this.options=t.options||Object.create(null)},e.dispatch=function(t,e,i,n,r){switch(t){case"complete":this.onComplete&&this.onComplete(e,i);break;case"progress":this.onProgress&&this.onProgress(e,i,n,r);break;case"error":this.onError&&this.onError(e,i,n,r);break;default:var s="on"+t[0].toUpperCase()+t.substr(1);"function"==typeof this[s]&&this[s](e,i,n,r)}},e.recycle=function(){t._deadPool.length!==t.MAX_DEAD_NUM&&(this.onComplete=null,this.onProgress=null,this.onError=null,this.source=this.output=this.input=null,this.progress=null,this.options=null,t._deadPool.push(this))},n(t,[{key:"isFinish",get:function(){return this.isFinished},set:function(t){this.isFinished=t}}]),t}();td.MAX_DEAD_NUM=500,td._taskId=0,td._deadPool=[];var ed="0123456789abcdef".split(""),id=["","","",""],nd=id.concat(id,"-",id,"-",id,"-",id,"-",id,id,id),rd=nd.map((function(t,e){return"-"===t?NaN:e})).filter(Number.isFinite);function sd(t){var e=t.split("@")[0];if(22!==e.length)return t;nd[0]=t[0],nd[1]=t[1];for(var i=2,n=2;i<22;i+=2){var r=Ge[t.charCodeAt(i)],s=Ge[t.charCodeAt(i+1)];nd[rd[n++]]=ed[r>>2],nd[rd[n++]]=ed[(3&r)<<2|s>>4],nd[rd[n++]]=ed[15&s]}return t.replace(e,nd.join(""))}var ad=/.*[/\\][0-9a-fA-F]{2}[/\\]([0-9a-fA-F-@]{8,}).*/;function od(t){var e=ad.exec(t);return e?e[1]:""}function hd(t,e){(e=e||Object.create(null)).__isNative__=e.isNative,e.nativeExt&&(e.ext=e.nativeExt);var i=Yf.find((function(e){return!!e.getAssetInfo(t)}));return i&&(e.bundle=i.name),cd(t,e)}function ud(t){return!!t&&(t instanceof S.SceneAsset||t instanceof S.Scene)}function ld(t){return t&&(46===t.charCodeAt(0)&&47===t.charCodeAt(1)?t=t.slice(2):47===t.charCodeAt(0)&&(t=t.slice(1))),t}function cd(t,e){var i=td.create({input:t,options:e}),n=[];try{for(var r,s=f(Qf.sync(i));!(r=s()).done;){var a=r.value,o=a.url;a.recycle(),n.push(o)}}catch(t){for(var h,u=f(i.output);!(h=u()).done;)h.value.recycle();H(t.message,t.stack)}return i.recycle(),n.length>1?n:n[0]}var _d,fd,dd,pd=Object.freeze({__proto__:null,getUuidFromURL:od,getUrlWithUuid:hd,isScene:ud,normalize:ld,transform:cd,decodeUuid:sd}),md=lo,gd=so,vd=t("dX",eo("cc.Asset")((fd=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).loaded=!0,e._native=dd&&dd(),e._nativeUrl="",e._file=null,e._ref=0,Object.defineProperty(c(e),"_uuid",{value:"",writable:!0}),e}s(e,t),e.deserialize=function(t){return S.deserialize(t)};var i=e.prototype;return i.toString=function(){return this.nativeUrl},i.serialize=function(){},i._setRawAsset=function(t,e){void 0===e&&(e=!0),this._native=!1!==e?t||"":"/"+t},i.addRef=function(){return this._ref++,this},i.decRef=function(t){return void 0===t&&(t=!0),this._ref>0&&this._ref--,t&&S.assetManager._releaseManager.tryRelease(this),this},i.onLoaded=function(){},i.initDefault=function(t){t&&(this._uuid=t),this.isDefault=!0},i.validate=function(){return!0},i.destroy=function(){return X(at(12101,this._uuid)),t.prototype.destroy.call(this)},n(e,[{key:"nativeUrl",get:function(){if(!this._nativeUrl){if(!this._native)return"";var t=this._native;if(47===t.charCodeAt(0))return t.slice(1);46===t.charCodeAt(0)?this._nativeUrl=hd(this._uuid,{nativeExt:t,isNative:!0}):this._nativeUrl=hd(this._uuid,{__nativeName__:t,nativeExt:ia(t),isNative:!0})}return this._nativeUrl}},{key:"uuid",get:function(){return this._uuid}},{key:"_nativeAsset",get:function(){return this._file},set:function(t){this._file=t}},{key:"nativeAsset",get:function(){return this._file}},{key:"_nativeDep",get:function(){if(this._native)return{__isNative__:!0,uuid:this._uuid,ext:this._native}}},{key:"refCount",get:function(){return this._ref}}]),e}(zs(Ms)),dd=ja(fd.prototype,"_native",[md],(function(){return""})),m(fd.prototype,"_nativeAsset",[gd],Object.getOwnPropertyDescriptor(fd.prototype,"_nativeAsset"),fd.prototype),_d=fd))||_d);vd.prototype.createNode=null,S.Asset=vd;var yd,Sd,Td,Ad,bd,Ed;!function(t){t[t.RGB565=ec.R5G6B5]="RGB565",t[t.RGB5A1=ec.RGB5A1]="RGB5A1",t[t.RGBA4444=ec.RGBA4]="RGBA4444",t[t.RGB888=ec.RGB8]="RGB888",t[t.RGB32F=ec.RGB32F]="RGB32F",t[t.RGBA8888=ec.RGBA8]="RGBA8888",t[t.BGRA8888=ec.BGRA8]="BGRA8888",t[t.RGBA32F=ec.RGBA32F]="RGBA32F",t[t.A8=ec.A8]="A8",t[t.I8=ec.L8]="I8",t[t.AI8=ec.LA8]="AI8",t[t.RGB_PVRTC_2BPPV1=ec.PVRTC_RGB2]="RGB_PVRTC_2BPPV1",t[t.RGBA_PVRTC_2BPPV1=ec.PVRTC_RGBA2]="RGBA_PVRTC_2BPPV1",t[t.RGB_A_PVRTC_2BPPV1=1024]="RGB_A_PVRTC_2BPPV1",t[t.RGB_PVRTC_4BPPV1=ec.PVRTC_RGB4]="RGB_PVRTC_4BPPV1",t[t.RGBA_PVRTC_4BPPV1=ec.PVRTC_RGBA4]="RGBA_PVRTC_4BPPV1",t[t.RGB_A_PVRTC_4BPPV1=1025]="RGB_A_PVRTC_4BPPV1",t[t.RGB_ETC1=ec.ETC_RGB8]="RGB_ETC1",t[t.RGBA_ETC1=1026]="RGBA_ETC1",t[t.RGB_ETC2=ec.ETC2_RGB8]="RGB_ETC2",t[t.RGBA_ETC2=ec.ETC2_RGBA8]="RGBA_ETC2",t[t.RGBA_ASTC_4x4=ec.ASTC_RGBA_4X4]="RGBA_ASTC_4x4",t[t.RGBA_ASTC_5x4=ec.ASTC_RGBA_5X4]="RGBA_ASTC_5x4",t[t.RGBA_ASTC_5x5=ec.ASTC_RGBA_5X5]="RGBA_ASTC_5x5",t[t.RGBA_ASTC_6x5=ec.ASTC_RGBA_6X5]="RGBA_ASTC_6x5",t[t.RGBA_ASTC_6x6=ec.ASTC_RGBA_6X6]="RGBA_ASTC_6x6",t[t.RGBA_ASTC_8x5=ec.ASTC_RGBA_8X5]="RGBA_ASTC_8x5",t[t.RGBA_ASTC_8x6=ec.ASTC_RGBA_8X6]="RGBA_ASTC_8x6",t[t.RGBA_ASTC_8x8=ec.ASTC_RGBA_8X8]="RGBA_ASTC_8x8",t[t.RGBA_ASTC_10x5=ec.ASTC_RGBA_10X5]="RGBA_ASTC_10x5",t[t.RGBA_ASTC_10x6=ec.ASTC_RGBA_10X6]="RGBA_ASTC_10x6",t[t.RGBA_ASTC_10x8=ec.ASTC_RGBA_10X8]="RGBA_ASTC_10x8",t[t.RGBA_ASTC_10x10=ec.ASTC_RGBA_10X10]="RGBA_ASTC_10x10",t[t.RGBA_ASTC_12x10=ec.ASTC_RGBA_12X10]="RGBA_ASTC_12x10",t[t.RGBA_ASTC_12x12=ec.ASTC_RGBA_12X12]="RGBA_ASTC_12x12"}(yd||(yd={})),function(t){t[t.REPEAT=pc.WRAP]="REPEAT",t[t.CLAMP_TO_EDGE=pc.CLAMP]="CLAMP_TO_EDGE",t[t.MIRRORED_REPEAT=pc.MIRROR]="MIRRORED_REPEAT",t[t.CLAMP_TO_BORDER=pc.BORDER]="CLAMP_TO_BORDER"}(Sd||(Sd={})),function(t){t[t.NONE=dc.NONE]="NONE",t[t.LINEAR=dc.LINEAR]="LINEAR",t[t.NEAREST=dc.POINT]="NEAREST"}(Td||(Td={}));var Cd=1346981187,xd=Ee({PVR:0,PKM:1,ASTC:2});function wd(t,e){return t[e]<<8|t[e+1]}function Rd(t){return!!(Sa.hasFeature(Sa.Feature.IMAGE_BITMAP)&&t instanceof ImageBitmap)}var Id,Dd,Bd,Md,Pd,Od,Ld,Nd,Fd,kd,Gd,Vd=t("e1",eo("cc.ImageAsset")(((Ed=function(t){s(i,t),i.mergeCompressedTextureMips=function(t){var e=new Uint8Array(0);try{for(var i,n=8+4*t.length,r=0,s=f(t);!(i=s()).done;)r+=i.value.byteLength;r+=n,e=new Uint8Array(r);var a=new DataView(e.buffer,e.byteOffset,e.byteLength);a.setUint32(0,Cd,!0),a.setUint32(4,t.length,!0);for(var o=n,h=0;h<t.length;h++){var u=t[h];if(a.setUint32(8+4*h,u.byteLength,!0),u instanceof ArrayBuffer){var l=new Uint8Array(u);e.set(l,o)}else{var c=new Uint8Array(u.buffer,u.byteOffset,u.byteLength);e.set(c,o)}o+=u.byteLength}}catch(t){z(t)}return e},i.parseCompressedTextures=function(t,e){var n={_data:new Uint8Array(0),_compressed:!0,width:0,height:0,format:0,mipmapLevelDataSize:[]},r=t instanceof ArrayBuffer?t:t.buffer,s=new DataView(r);if(s.getUint32(0,!0)===Cd){var a=s.getUint32(4,!0),o=s.getUint32(8,!0),h=8+4*a;i.parseCompressedTexture(t,0,h,o,e,n);for(var u=h+o,l=1;l<a;l++){var c=s.getUint32(8+4*l,!0);i.parseCompressedTexture(t,l,u,c,e,n),u+=c}}else i.parseCompressedTexture(t,0,0,0,e,n);return n},i.parseCompressedTexture=function(t,e,n,r,s,a){switch(s){case xd.PVR:i.parsePVRTexture(t,e,n,r,a);break;case xd.PKM:i.parsePKMTexture(t,e,n,r,a);break;case xd.ASTC:i.parseASTCTexture(t,e,n,r,a)}},i.parsePVRTexture=function(t,e,i,n,r){var s=t instanceof ArrayBuffer?t:t.buffer,a=new Int32Array(s,i,13);if(55727696===a[0]){var o=i+a[12]+52,h=n-a.byteLength;if(n>0){var u=new Uint8Array(s,o,h),l=new Uint8Array(r._data.byteLength+u.byteLength);l.set(r._data),l.set(u,r._data.byteLength),r._data=l,r.mipmapLevelDataSize[e]=h}else r._data=new Uint8Array(s,o);r.width=e>0?r.width:a[7],r.height=e>0?r.height:a[6]}else{if(559044176!==a[11])throw new Error("Invalid magic number in PVR header");var c=i+a[0],_=n-a.byteLength;if(n>0){var f=new Uint8Array(s,c,_),d=new Uint8Array(r._data.byteLength+f.byteLength);d.set(r._data),d.set(f,r._data.byteLength),r._data=d,r.mipmapLevelDataSize[e]=_}else r._data=new Uint8Array(s,c);r.width=e>0?r.width:a[1],r.height=e>0?r.height:a[2]}},i.parsePKMTexture=function(t,e,i,n,r){var s=t instanceof ArrayBuffer?t:t.buffer,a=new Uint8Array(s,i,16),o=wd(a,6);if(0!==o&&1!==o&&3!==o)throw new Error("Invalid magic number in ETC header");var h=i+16,u=n-16;if(n>0){var l=new Uint8Array(s,h,u),c=new Uint8Array(r._data.byteLength+l.byteLength);c.set(r._data),c.set(l,r._data.byteLength),r._data=c,r.mipmapLevelDataSize[e]=u}else r._data=new Uint8Array(s,h);r.width=e>0?r.width:wd(a,12),r.height=e>0?r.height:wd(a,14)},i.parseASTCTexture=function(t,e,i,n,r){var s=t instanceof ArrayBuffer?t:t.buffer,a=new Uint8Array(s,i,16);if(1554098963!==a[0]+(a[1]<<8)+(a[2]<<16)+(a[3]<<24))throw new Error("Invalid magic number in ASTC header");var o=a[4],h=a[5],u=a[6];if((o<3||o>6||h<3||h>6||u<3||u>6)&&(o<4||7===o||9===o||11===o||o>12||h<4||7===h||9===h||11===h||h>12||1!==u))throw new Error("Invalid block number in ASTC header");var l=function(t,e){return 4===t?yd.RGBA_ASTC_4x4:5===t?4===e?yd.RGBA_ASTC_5x4:yd.RGBA_ASTC_5x5:6===t?5===e?yd.RGBA_ASTC_6x5:yd.RGBA_ASTC_6x6:8===t?5===e?yd.RGBA_ASTC_8x5:6===e?yd.RGBA_ASTC_8x6:yd.RGBA_ASTC_8x8:10===t?5===e?yd.RGBA_ASTC_10x5:6===e?yd.RGBA_ASTC_10x6:8===e?yd.RGBA_ASTC_10x8:yd.RGBA_ASTC_10x10:10===e?yd.RGBA_ASTC_12x10:yd.RGBA_ASTC_12x12}(o,h),c=i+16,_=n-16;if(n>0){var f=new Uint8Array(s,c,_),d=new Uint8Array(r._data.byteLength+f.byteLength);d.set(r._data),d.set(f,r._data.byteLength),r._data=d,r.mipmapLevelDataSize[e]=_}else r._data=new Uint8Array(s,c);r.width=e>0?r.width:a[7]+(a[8]<<8)+(a[9]<<16),r.height=e>0?r.height:a[10]+(a[11]<<8)+(a[12]<<16),r.format=l};var e=i.prototype;function i(e){var i;return(i=t.call(this)||this)._nativeData=void 0,i._exportedExts=void 0,i._format=yd.RGBA8888,i._width=0,i._height=0,i._nativeData={_data:null,width:0,height:0,format:0,_compressed:!1,mipmapLevelDataSize:[]},void 0!==e&&i.reset(e),i}return e.extractMipmap0=function(){if(this.mipmapLevelDataSize&&this.mipmapLevelDataSize.length>0){var t=this.mipmapLevelDataSize[0],e=this.data,n=new i({_data:new Uint8Array(e.buffer,0,t),_compressed:!0,width:this.width,height:this.height,format:this.format,mipmapLevelDataSize:[]});return n._uuid=""+this._uuid,n}return this},e.extractMipmaps=function(){var t=[];if(this.mipmapLevelDataSize&&this.mipmapLevelDataSize.length>0)for(var e,n=this.mipmapLevelDataSize,r=this.data,s=0,a=this.height,o=this.width,h=f(n);!(e=h()).done;){var u=e.value,l=new i({_data:new Uint8Array(r.buffer,s,u),_compressed:!0,width:o,height:a,format:this.format,mipmapLevelDataSize:[]});s+=u,l._uuid=""+this._uuid,o=Math.max(o>>1,1),a=Math.max(a>>1,1),t.push(l)}else t.push(this);return t},e.reset=function(t){Rd(t)||t instanceof HTMLElement?this._nativeData=t:(this._nativeData=t,this._format=t.format)},e.destroy=function(){if(this.data&&this.data instanceof HTMLImageElement)this.data.src="",this._setRawAsset("");else if(Rd(this.data)){var e;null===(e=this.data)||void 0===e||e.close()}return t.prototype.destroy.call(this)},e._serialize=function(){},e._deserialize=function(t){var e="";"string"==typeof t?e=t:(this._width=t.w,this._height=t.h,e=t.fmt);for(var n,r=Ff.gfxDevice,s=e.split("_"),a=Number.MAX_VALUE,o=this._format,h="",u=Pe.SUPPORT_TEXTURE_FORMATS,l=f(s);!(n=l()).done;){var c=n.value.split("@"),_=parseInt(c[0],void 0),d=i.extnames[_]||c[0],p=u.indexOf(d);if(-1!==p&&p<a){var m=c[1]?parseInt(c[1]):this._format;if(!(".astc"!==d||r&&r.getFormatFeatures(ec.ASTC_RGBA_4X4)&cc.SAMPLED_TEXTURE))continue;if(!(".pvr"!==d||r&&r.getFormatFeatures(ec.PVRTC_RGBA4)&cc.SAMPLED_TEXTURE))continue;if(!(m!==yd.RGB_ETC1&&m!==yd.RGBA_ETC1||r&&r.getFormatFeatures(ec.ETC_RGB8)&cc.SAMPLED_TEXTURE))continue;if(!(m!==yd.RGB_ETC2&&m!==yd.RGBA_ETC2||r&&r.getFormatFeatures(ec.ETC2_RGB8)&cc.SAMPLED_TEXTURE))continue;if(".webp"===d&&!Sa.hasFeature(Sa.Feature.WEBP))continue;a=p,h=d,o=m}}h?(this._setRawAsset(h),this._format=o):tt(3121)},e.initDefault=function(e){if(t.prototype.initDefault.call(this,e),i._sharedPlaceHolderCanvas)this.reset(i._sharedPlaceHolderCanvas);else{var n=A.document.createElement("canvas"),r=n.getContext("2d"),s=n.width=n.height=2;r.fillStyle="#ff00ff",r.fillRect(0,0,s,s),this.reset(n),i._sharedPlaceHolderCanvas=n}},e.validate=function(){return!!this.data},n(i,[{key:"_nativeAsset",get:function(){return this._nativeData},set:function(t){t instanceof HTMLElement||Rd(t)||(t.format=t.format||this._format),this.reset(t)}},{key:"data",get:function(){return(t=this._nativeData)instanceof HTMLImageElement||t instanceof HTMLCanvasElement||Rd(t)?this._nativeData:this._nativeData&&this._nativeData._data;var t}},{key:"width",get:function(){return this._nativeData.width||this._width}},{key:"height",get:function(){return this._nativeData.height||this._height}},{key:"format",get:function(){return this._format}},{key:"isCompressed",get:function(){return this._format>=yd.RGB_ETC1&&this._format<=yd.RGBA_ASTC_12x12||this._format>=yd.RGB_A_PVRTC_2BPPV1&&this._format<=yd.RGBA_ETC1}},{key:"mipmapLevelDataSize",get:function(){return this._nativeData.mipmapLevelDataSize}},{key:"url",get:function(){return this.nativeUrl}}]),i}(vd)).extnames=[".png",".jpg",".jpeg",".bmp",".webp",".pvr",".pkm",".astc"],Ed._sharedPlaceHolderCanvas=null,m((bd=Ed).prototype,"_nativeAsset",[jo],Object.getOwnPropertyDescriptor(bd.prototype,"_nativeAsset"),bd.prototype),Ad=bd))||Ad);S.ImageAsset=Vd,we(ec);var Ud,zd,Hd,Wd=new bt("Tex"),Xd=eo("cc.TextureBase")(((Gd=function(t){function e(){var e;return(e=t.call(this)||this)._format=Bd&&Bd(),e._minFilter=Md&&Md(),e._magFilter=Pd&&Pd(),e._mipFilter=Od&&Od(),e._wrapS=Ld&&Ld(),e._wrapT=Nd&&Nd(),e._wrapR=Fd&&Fd(),e._anisotropy=kd&&kd(),e._width=1,e._height=1,e._samplerInfo=new c_,e._gfxSampler=null,e._gfxDevice=null,e._textureHash=0,e._id=Wd.getNewId(),e._gfxDevice=e._getGFXDevice(),e._textureHash=zl(e._id,666),e}s(e,t);var i=e.prototype;return i.getId=function(){return this._id},i.getPixelFormat=function(){return this._format},i.getAnisotropy=function(){return this._anisotropy},i.setWrapMode=function(t,e,i){void 0===i&&(i=t),this._wrapS=t,this._samplerInfo.addressU=t,this._wrapT=e,this._samplerInfo.addressV=e,this._wrapR=i,this._samplerInfo.addressW=i,this._gfxDevice&&(this._gfxSampler=this._gfxDevice.getSampler(this._samplerInfo))},i.setFilters=function(t,e){this._minFilter=t,this._samplerInfo.minFilter=t,this._magFilter=e,this._samplerInfo.magFilter=e,this._gfxDevice&&(this._gfxSampler=this._gfxDevice.getSampler(this._samplerInfo))},i.setMipFilter=function(t){this._mipFilter=t,this._samplerInfo.mipFilter=t,this._gfxDevice&&(this._gfxSampler=this._gfxDevice.getSampler(this._samplerInfo))},i.setAnisotropy=function(t){this._anisotropy=t,this._samplerInfo.maxAnisotropy=t,this._gfxDevice&&(this._gfxSampler=this._gfxDevice.getSampler(this._samplerInfo))},i.destroy=function(){var e,i=t.prototype.destroy.call(this);return i&&null!==(e=S.director.root)&&void 0!==e&&e.batcher2D&&S.director.root.batcher2D._releaseDescriptorSetCache(this._textureHash),i},i.getHash=function(){return this._textureHash},i.getGFXTexture=function(){return null},i.getSamplerInfo=function(){return this._samplerInfo},i.getGFXSampler=function(){return this._gfxSampler||(this._gfxDevice?this._gfxSampler=this._gfxDevice.getSampler(this._samplerInfo):it(9302)),this._gfxSampler},i._serialize=function(){return""},i._deserialize=function(t){var e=t.split(",");e.unshift(""),e.length>=5&&(this.setFilters(parseInt(e[1]),parseInt(e[2])),this.setWrapMode(parseInt(e[3]),parseInt(e[4]))),e.length>=7&&(this.setMipFilter(parseInt(e[5])),this.setAnisotropy(parseInt(e[6])))},i._getGFXDevice=function(){return Ff.gfxDevice},i._getGFXFormat=function(){return this._getGFXPixelFormat(this._format)},i._setGFXFormat=function(t){this._format=void 0===t?yd.RGBA8888:t},i._getGFXPixelFormat=function(t){return t===yd.RGBA_ETC1?t=yd.RGB_ETC1:t===yd.RGB_A_PVRTC_4BPPV1?t=yd.RGB_PVRTC_4BPPV1:t===yd.RGB_A_PVRTC_2BPPV1&&(t=yd.RGB_PVRTC_2BPPV1),t},n(e,[{key:"isCompressed",get:function(){return this._format>=yd.RGB_ETC1&&this._format<=yd.RGBA_ASTC_12x12||this._format>=yd.RGB_A_PVRTC_2BPPV1&&this._format<=yd.RGBA_ETC1}},{key:"width",get:function(){return this._width}},{key:"height",get:function(){return this._height}}]),e}(vd)).PixelFormat=yd,Gd.WrapMode=Sd,Gd.Filter=Td,Bd=ja((Dd=Gd).prototype,"_format",[lo],(function(){return yd.RGBA8888})),Md=ja(Dd.prototype,"_minFilter",[lo],(function(){return Td.LINEAR})),Pd=ja(Dd.prototype,"_magFilter",[lo],(function(){return Td.LINEAR})),Od=ja(Dd.prototype,"_mipFilter",[lo],(function(){return Td.NONE})),Ld=ja(Dd.prototype,"_wrapS",[lo],(function(){return Sd.REPEAT})),Nd=ja(Dd.prototype,"_wrapT",[lo],(function(){return Sd.REPEAT})),Fd=ja(Dd.prototype,"_wrapR",[lo],(function(){return Sd.REPEAT})),kd=ja(Dd.prototype,"_anisotropy",[lo],(function(){return 0})),Id=Dd))||Id;S.TextureBase=Xd;var jd=t("e7",eo("cc.Script")(Ud=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(vd))||Ud);S._Script=jd;var Yd=t("e8",eo("cc.JavaScript")(zd=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(jd))||zd);S._JavaScript=Yd;var qd,Kd,Qd,Zd,Jd,$d,tp,ep=t("e9",eo("cc.TypeScript")(Hd=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(jd))||Hd);S._TypeScript=ep;var ip,np,rp,sp,ap,op,hp,up,lp,cp,_p,fp=t("dq",eo("cc.ClickEvent")((Kd=function(){function t(){this.target=Qd&&Qd(),this.component=Zd&&Zd(),this._componentId=Jd&&Jd(),this.handler=$d&&$d(),this.customEventData=tp&&tp()}t.emitEvents=function(e){for(var i=arguments.length,n=new Array(i>1?i-1:0),r=1;r<i;r++)n[r-1]=arguments[r];for(var s=0,a=e.length;s<a;s++){var o=e[s];o instanceof t&&o.emit(n)}};var e=t.prototype;return e.emit=function(t){var e=this.target;if(S.isValid(e)){this._genCompIdIfNeeded();var i=S.js.getClassById(this._componentId),n=e.getComponent(i);if(S.isValid(n)){var r=n[this.handler];"function"==typeof r&&(null!=this.customEventData&&""!==this.customEventData&&(t=t.slice()).push(this.customEventData),r.apply(n,t))}}},e._compName2Id=function(t){var e=S.js.getClassByName(t);return S.js.getClassId(e)},e._compId2Name=function(t){var e=S.js.getClassById(t);return S.js.getClassName(e)},e._genCompIdIfNeeded=function(){this._componentId||(this._componentName=this.component,this.component="")},n(t,[{key:"_componentName",get:function(){return this._genCompIdIfNeeded(),this._compId2Name(this._componentId)},set:function(t){this._componentId=this._compName2Id(t)}}]),t}(),Qd=ja(Kd.prototype,"target",[lo],(function(){return null})),Zd=ja(Kd.prototype,"component",[lo],(function(){return""})),Jd=ja(Kd.prototype,"_componentId",[lo],(function(){return""})),$d=ja(Kd.prototype,"handler",[lo],(function(){return""})),tp=ja(Kd.prototype,"customEventData",[lo],(function(){return""})),qd=Kd))||qd),dp=new bt("Comp"),pp=Ms.Flags.IsOnLoadCalled,mp=t("dr",(ip=eo("cc.Component"),np=Lo(jd),ip(((up=function(t){function e(){var e;return(e=t.call(this)||this).node=ap&&ap(),e._enabled=op&&op(),e.__prefab=hp&&hp(),e._sceneGetter=null,e._id=dp.getNewId(),e}s(e,t);var i=e.prototype;return i._getRenderScene=function(){return this._sceneGetter?this._sceneGetter():this.node.scene.renderScene},i.addComponent=function(t){return this.node.addComponent(t)},i.getComponent=function(t){return this.node.getComponent(t)},i.getComponents=function(t){return this.node.getComponents(t)},i.getComponentInChildren=function(t){return this.node.getComponentInChildren(t)},i.getComponentsInChildren=function(t){return this.node.getComponentsInChildren(t)},i.destroy=function(){return!!t.prototype.destroy.call(this)&&(this._enabled&&this.node.activeInHierarchy&&S.director._compScheduler.disableComp(this),!0)},i._onPreDestroy=function(){this.unscheduleAllCallbacks(),S.director._nodeActivator.destroyComp(this),this.node._removeComponent(this)},i._instantiate=function(t){return t||(t=S.instantiate._clone(this,this)),t&&(t.node=null),t},i.schedule=function(t,e,i,n){void 0===e&&(e=0),void 0===i&&(i=S.macro.REPEAT_FOREVER),void 0===n&&(n=0),st(Boolean(t),1619),st((e=e||0)>=0,1620),i=Number.isNaN(i)?S.macro.REPEAT_FOREVER:i,n=n||0;var r=S.director.getScheduler(),s=r.isTargetPaused(this);r.schedule(t,this,e,i,n,s)},i.scheduleOnce=function(t,e){void 0===e&&(e=0),this.schedule(t,0,0,e)},i.unschedule=function(t){t&&S.director.getScheduler().unschedule(t,this)},i.unscheduleAllCallbacks=function(){S.director.getScheduler().unscheduleAllForTarget(this)},n(e,[{key:"name",get:function(){if(this._name)return this._name;var t=Nt(this),e=t.lastIndexOf(".");return e>=0&&(t=t.slice(e+1)),this.node?this.node.name+"<"+t+">":t},set:function(t){this._name=t}},{key:"uuid",get:function(){return this._id}},{key:"__scriptAsset",get:function(){return null}},{key:"enabled",get:function(){return this._enabled},set:function(t){if(this._enabled!==t&&(this._enabled=t,this.node.activeInHierarchy)){var e=S.director._compScheduler;t?e.enableComp(this):e.disableComp(this)}}},{key:"enabledInHierarchy",get:function(){return this._enabled&&this.node&&this.node.activeInHierarchy}},{key:"_isOnLoadCalled",get:function(){return this._objFlags&pp}},{key:"internalUpdate",get:function(){return this.update}},{key:"internalLateUpdate",get:function(){return this.lateUpdate}},{key:"internalPreload",get:function(){return this.__preload}},{key:"internalOnLoad",get:function(){return this.onLoad}},{key:"internalStart",get:function(){return this.start}},{key:"internalOnEnable",get:function(){return this.onEnable}},{key:"internalOnDisable",get:function(){return this.onDisable}},{key:"internalOnDestroy",get:function(){return this.onDestroy}}]),e}(Ms)).EventHandler=fp,up._executionOrder=0,up._requireComponent=null,up.system=null,m((sp=up).prototype,"__scriptAsset",[np],Object.getOwnPropertyDescriptor(sp.prototype,"__scriptAsset"),sp.prototype),ap=ja(sp.prototype,"node",[lo],(function(){return null})),op=ja(sp.prototype,"_enabled",[lo],(function(){return!0})),hp=ja(sp.prototype,"__prefab",[lo],(function(){return null})),rp=sp))||rp));Bt(mp,"_registerEditorProps",(function(t,e){var i=e.requireComponent;i&&(Array.isArray(i)&&(i=i.filter(Boolean)),t._requireComponent=i);var n=e.executionOrder;n&&"number"==typeof n&&(t._executionOrder=n)})),S.Component=mp;var gp=t("dO",eo("cc.MissingScript")((cp=function(t){function e(){var e;return(e=t.call(this)||this)._$erialized=_p&&_p(),e}return s(e,t),e.safeFindClass=function(t){var e=ae(t);if(e)return e;S.deserialize.reportMissingClass(t)},e.prototype.onLoad=function(){tt(4600,this.node.name)},e}(mp),_p=ja(cp.prototype,"_$erialized",[lo,_o],(function(){return null})),lp=cp))||lp);S._MissingScript=gp;try{var vp=gp.__values__;0!==vp.length&&"_$erialized"===vp[vp.length-1]||(it(16338),it(16339,vp.join(", ")))}catch(lr){it(16340,""+lr)}var yp=function(){function t(t,e){this._document=t,this._chunks=e}return n(t,[{key:"document",get:function(){return this._document}},{key:"chunks",get:function(){return this._chunks}}]),t}();function Sp(t){var e=t;return{chunks:e.chunks,document:e.document}}function Tp(t){if(t.length<16)throw new Ap(at(13102));var e=new DataView(t.buffer,t.byteOffset,t.byteLength);if(1313817411!==e.getUint32(0,!0))throw new Ap(at(13100));var i=e.getUint32(4,!0);if(1!==i)throw new Ap(at(13101,i));if(e.getUint32(8,!0)!==e.byteLength)throw new Ap(at(13102));var n=12,r=e.getUint32(n,!0);n+=4;var s=new Uint8Array(e.buffer,n+e.byteOffset,r);n+=r;var a,o=function(t){if("undefined"!=typeof TextDecoder)return(new TextDecoder).decode(t);if("Buffer"in globalThis)return globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString();throw new Error(at(13104))}(s);try{a=JSON.parse(o)}catch(t){throw new Ap(t)}for(var h=[];n<e.byteLength;){n%8!=0&&(n+=8-n%8);var u=e.getUint32(n,!0);n+=4,h.push(new Uint8Array(e.buffer,n+e.byteOffset,u)),n+=u}if(n!==e.byteLength)throw new Ap(at(13102));return new yp(a,h)}var Ap=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(l(Error));function bp(t,e,i,n,r){if(e instanceof S.ValueType){r||t.push("if(prop){");var s=Nt(e);t.push("s._deserializeFastDefinedObject(o"+i+",prop,"+s+");"),r||t.push("}else o"+i+"=null;")}else t.push("\nif (prop) {\n s._deserializeAndAssignField(o, prop, "+n+");\n} else {\n o"+i+"=null;\n}\n")}!function(){function t(){this._viewOrPaddings=[],this._length=0}var e=t.prototype;e.alignAs=function(t){if(0!==t){var e=this._length%t;if(0!==e){var i=t-e;return this._viewOrPaddings.push(i),this._length+=i,i}}return 0},e.append=function(t){var e=this._length;return this._viewOrPaddings.push(t),this._length+=t.byteLength,e},e.get=function(){var t=new Uint8Array(this._length),e=0;return this._viewOrPaddings.forEach((function(i){"number"==typeof i?e+=i:(t.set(new Uint8Array(i.buffer,i.byteOffset,i.byteLength),e),e+=i.byteLength)})),t},n(t,[{key:"byteLength",get:function(){return this._length}}])}(),S.internal.parseCCONJson=Sp,S.internal.decodeCCONBinary=Tp,S.internal.CCON=yp;var Ep=Ci.Attr.DELIMETER,Cp=Ep+"type",xp=Ep+"default",wp=Ep+"formerlySerializedAs";function Rp(t,e){if(void 0===t)return e instanceof Ci.Attr.PrimitiveType||e===Si||e===Ti;var i=typeof t;return"string"===i||"number"===i||"boolean"===i}var Ip=function(t){function e(){return t.call(this,(function(t){t.clear()}),1)||this}return s(e,t),e}(le);Ip.prototype.get=function(t,e,i,n,r){var s=this._get();return s?(s.reset(t,e,i,n,r),s):new Dp(t,e,i,n,r)};var Dp=function(){function t(t,e,i,n){this.deserializedList=[],this.deserializedData=null,this.result=t,this.customEnv=n,this._classFinder=e,this._reportMissingClass=i,this._onDereferenced=null==e?void 0:e.onDereferenced}var e=t.prototype;return e.reset=function(t,e,i,n){this.result=t,this.customEnv=n,this._classFinder=e,this._reportMissingClass=i,this._onDereferenced=null==e?void 0:e.onDereferenced},e.clear=function(){this.result=null,this.customEnv=null,this.deserializedList.length=0,this.deserializedData=null,this._classFinder=null,this._reportMissingClass=null,this._onDereferenced=null},e.deserialize=function(t){var e,i=!1;t instanceof yp?(i=!0,e=t.document,t.chunks.length>0&&(t.chunks.length,this._mainBinChunk=t.chunks[0])):e=t,this._serializedData=e,this._context={fromCCON:i};var n=Array.isArray(e)?e[0]:e;return this.deserializedData=this._deserializeObject(n,0),this._serializedData=void 0,this._mainBinChunk=void 0,this._context=void 0,this.deserializedData},e._deserializeObject=function(t,e,i,n){switch(t.__type__){case"TypedArray":return this._deserializeTypedArrayView(t);case"TypedArrayRef":return this._deserializeTypedArrayViewRef(t);default:return t.__type__?this._deserializeTypeTaggedObject(t,e,i,n):Array.isArray(t)?this._deserializeArray(t):this._deserializePlainObject(t)}},e._deserializeTypedArrayView=function(t){return globalThis[t.ctor].from(t.array)},e._deserializeTypedArrayViewRef=function(t){var e=t.offset,i=t.length,n=t.ctor;return new globalThis[n](this._mainBinChunk.buffer,this._mainBinChunk.byteOffset+e,i)},e._deserializeArray=function(t){for(var e,i=new Array(t.length),n=0;n<t.length;n++)"object"==typeof(e=t[n])&&e?this._deserializeAndAssignField(i,e,""+n)&&(i[n]=null):i[n]=e;return i},e._deserializePlainObject=function(t){var e={};return this._fillPlainObject(e,t),e},e._deserializeTypeTaggedObject=function(t,e,i,n){var r=this,s=t.__type__,a=this._classFinder(s,t,i,n);if(!a)return this._classFinder===ae&&this._reportMissingClass(s),null;var o=function(t){var i=new t;return e>=0&&(r.deserializedList[e]=i),i}(a);return this._deserializeInto(t,o,a),o},e._deserializeInto=function(t,e,i,n){void 0===n&&(n=!1),n||!e[th]?e._deserialize?e._deserialize(t.content,this):S.Class._isCCClass(i)?this._deserializeFireClass(e,t,i):this._deserializeFastDefinedObject(e,t,i):this._runCustomizedDeserialize(t,e,i)},e._runCustomizedDeserialize=function(t,e,i){var n=this,r={readProperty:function(e){var i=t[e];return"object"==typeof i&&i?n._deserializeObjectField(i):i},readThis:function(){n._deserializeInto(t,e,i,!0)},readSuper:function(){var r=qt(i);r&&n._deserializeInto(t,e,r)}};e[th](r,this._context)},e._deserializeFireClass=function(t,e,i){var n;if(i.hasOwnProperty("__deserialize__"))n=i.__deserialize__;else{n=function(t,e){for(var i=Ci.Attr.getClassAttrs(e),n=e.__values__,r=["var prop;"],s=function(t){return Le.test(ue(t))}(e),a=0;a<n.length;a++){var o=n[a],h=void 0,u=void 0;Ci.IDENTIFIER_RE.test(o)?(u='"'+o+'"',h="."+o):h="["+(u=Ci.escapeForJS(o))+"]";var l=h;if(i[o+wp]){var c=i[o+wp];l=Ci.IDENTIFIER_RE.test(c)?"."+c:"["+Ci.escapeForJS(c)+"]"}r.push("prop=d"+l+";"),r.push('if(typeof prop!=="undefined"){');var _=Ci.getDefault(i[o+xp]),f=i[o+Cp];s&&(void 0!==_||f)?Rp(_,f)?r.push("o"+h+"=prop;"):bp(r,_,h,u,!0):(r.push('if(typeof prop!=="object"){o'+h+"=prop;}else{"),bp(r,_,h,u,!1),r.push("}")),r.push("}")}return(Kt(e,S.Node)||Kt(e,S.Component))&&r.push("d._id&&(o._id=d._id);"),"_$erialized"===n[n.length-1]&&(r.push("o._$erialized=JSON.parse(JSON.stringify(d));"),r.push("s._fillPlainObject(o._$erialized,d);")),Function("s","o","d","k",r.join(""))}(0,i);try{if(i===gp){var r=i.__values__;0!==r.length&&"_$erialized"===r[r.length-1]||(it(16341),it(16342,r.join(", ")));var s=n;n=function(t,e,i,n){s(t,e,i,n),e._$erialized||it(16343,JSON.stringify(i))}}}catch(t){it(16344,""+t)}Bt(i,"__deserialize__",n,!0)}n(this,t,e,i)},e._deserializeAndAssignField=function(t,e,i){var n=e.__id__;if("number"==typeof n){var r=this.deserializedList[n];if(r)t[i]=r;else{var s,a=this._serializedData[n];t[i]=this._deserializeObject(a,n,void 0,i),null===(s=this._onDereferenced)||void 0===s||s.call(this,this.deserializedList,n,t,i)}}else{var o=e.__uuid__;if(o){var h=e.__expectedType__;this.result.push(t,i,o,h)}else t[i]=this._deserializeObject(e,-1)}return!1},e._deserializeObjectField=function(t){var e=t.__id__;if("number"==typeof e){var i=this.deserializedList[e];if(i)return i;var n=this._serializedData[e];return this._deserializeObject(n,e,void 0,void 0)}if(t.__uuid__)throw t.__expectedType__,new Error("Asset reference field serialization is currently not supported in custom serialization.");return this._deserializeObject(t,-1)},e._fillPlainObject=function(t,e){for(var i in e)if(e.hasOwnProperty(i)){var n=e[i];"object"!=typeof n?"__type__"!==i&&(t[i]=n):n?this._deserializeAndAssignField(t,n,i)&&(t[i]=null):t[i]=null}},e._deserializeFastDefinedObject=function(t,e,i){if(i===S.Vec2)return t.x=e.x||0,void(t.y=e.y||0);if(i===S.Vec3)return t.x=e.x||0,t.y=e.y||0,void(t.z=e.z||0);if(i!==S.Color){if(i===S.Size)return t.width=e.width||0,void(t.height=e.height||0);for(var n=Ci.Attr.getClassAttrs(i),r=i.__values__,s=0;s<r.length;s++){var a=r[s],o=e[a];void 0!==o||e.hasOwnProperty(a)||(o=Ci.getDefault(n[a+xp])),"object"!=typeof o?t[a]=o:o?this._deserializeAndAssignField(t,o,a):t[a]=null}}else{t.r=e.r||0,t.g=e.g||0,t.b=e.b||0;var h=e.a;t.a=void 0===h?255:h}},n(t,[{key:"ignoreEditorOnly",get:function(){return this._ignoreEditorOnly}}]),t}();Dp.pool=new Ip;var Bp=[jn,gn,cn,Bn,En,Qn,Jn,Vn];function Mp(t,e){t.x=e[1],t.y=e[2],t.z=e[3],t.w=e[4]}var Pp=[function(t,e){t.x=e[1],t.y=e[2]},function(t,e){t.x=e[1],t.y=e[2],t.z=e[3]},Mp,Mp,function(t,e){En.fromUint32(t,e[1])},function(t,e){t.width=e[1],t.height=e[2]},function(t,e){t.x=e[1],t.y=e[2],t.width=e[3],t.height=e[4]},function(t,e){Vn.fromArray(t,e,1)}],Op=t("dV",function(){function t(){this.uuidObjList=null,this.uuidPropList=null,this.uuidList=null,this.uuidTypeList=[]}var e=t.prototype;return e.init=function(t){t?(this.uuidObjList=t[8],this.uuidPropList=t[9],this.uuidList=t[10]):this.uuidList||(this.uuidList=[],this.uuidObjList=[],this.uuidPropList=[],this.uuidTypeList=[])},e.reset=function(){this.uuidList&&(this.uuidList.length=0,this.uuidObjList.length=0,this.uuidPropList.length=0,this.uuidTypeList.length=0)},e.push=function(t,e,i,n){this.uuidObjList.push(t),this.uuidPropList.push(e),this.uuidList.push(i),this.uuidTypeList.push(n||"")},t}());function Lp(t,e){for(var i=t[4][e[0]],n=i[0],r=new(0,n[0]),s=n[1],a=n[2],o=i[i.length-1],h=1;h<o;++h)r[s[i[h]]]=e[h];for(;h<e.length;++h){var u=s[i[h]],l=n[i[h]+a];(0,Up[l])(t,r,u,e[h])}return r}function Np(t,e,i){var n=new e;return n._deserialize?n._deserialize(i,t[0]):it(5303,Nt(e)),n}function Fp(t,e,i,n){n>=0?e[i]=t[5][n]:t[7][3*~n]=e}function kp(t){return function(e,i,n,r){for(var s=0;s<r.length;++s)t(e,r,s,r[s]);i[n]=r}}function Gp(t,e,i,n){e[i]=null,t[8][n]=e}function Vp(t,e,i,n){e[i]=Lp(t,n)}Op.pool=new le((function(t){t.reset()}),5),Op.pool.get=function(){return this._get()||new Op};var Up=new Array(13);function zp(t,e,i){return t||i(e),Object}function Hp(t,e,i,n,r,s,a){var o=t(e);if(!o){if(r)return void(i[n]=function(e,i,n){return function(){var r=t(n)||zp(s,n,a);return e[i]=r,new r}}(i,n,e));o=zp(s,e,a)}i[n]=o}function Wp(t,e,i,n){for(var r=i||ae,s=t[3],a=0;a<s.length;++a){var o=s[a];"string"!=typeof o?Hp(r,o[0],o,0,e,i,n):Hp(r,o,s,a,e,i,n)}}function Xp(t){var e=t[4];if(e)for(var i=t[3],n=0;n<e.length;++n){var r=e[n];r[0]=i[r[0]]}}function jp(t,e,i){"string"==typeof t&&(t=JSON.parse(t));var n,r=!1;if(e||(e=Op.pool.get(),r=!0),function(t){if(Array.isArray(t)){var e=t[0];return"number"==typeof e||e instanceof Yp}return!1}(t)){!function(t,e,i){var n;e.init(t),null!==(n=i)&&void 0!==n||(i={});var r=t[0],s=!1;if("object"==typeof r&&(s=r.preprocessed,r=r.version),r<1)throw new Error(at(5304,r));var a,o=i;o._version=r,o.result=e,t[0]=o,s||(Wp(t,!1,i.classFinder,null!==(a=i.reportMissingClass)&&void 0!==a?a:jp.reportMissingClass),Xp(t))}(t,e,i);var s=t;S.game._isCloning=!0;var a=s[5],o=function(t){var e=t[5],i=t[6],n=0===i?0:i.length,r=e[e.length-1],s=e.length-n;"number"!=typeof r?r=0:(r<0&&(r=~r),--s);for(var a=0;a<s;++a)e[a]=Lp(t,e[a]);for(var o=t[3],h=0;h<n;++h,++a){var u=i[h],l=e[a];if(u>=0){var c=o[u];e[a]=Np(t,c,l)}else(0,Up[u=~u])(t,e,a,l)}return r}(s);S.game._isCloning=!1,s[7]&&function(t,e,i){for(var n=t.length-1,r=0,s=3*t[n];r<s;r+=3){var a=t[r],o=e[t[r+2]],h=t[r+1];h>=0?a[i[h]]=o:a[~h]=o}for(;r<n;r+=3){var u=e[t[r]],l=e[t[r+2]],c=t[r+1];c>=0?u[i[c]]=l:u[~c]=l}}(s[7],a,s[2]),function(t){for(var e=t[5],i=t[2],n=t[1],r=t[8],s=t[9],a=t[10],o=0;o<r.length;++o){var h=r[o];"number"==typeof h&&(r[o]=e[h]);var u=s[o];"number"==typeof u&&(u=u>=0?i[u]:~u,s[o]=u);var l=a[o];"number"==typeof l&&(a[o]=n[l])}}(s),n=a[o]}else n=function(t,e,i){var n,r=(i=i||{}).classFinder||ae,s=i.createAssetRefs||Sa.platform===qs.EDITOR_CORE,a=i.customEnv,o=i.ignoreEditorOnly,h=null!==(n=i.reportMissingClass)&&void 0!==n?n:S.deserialize.reportMissingClass;e.init();var u=Dp.pool.get(e,r,h,a,o);S.game._isCloning=!0;var l=u.deserialize(t);return S.game._isCloning=!1,Dp.pool.put(u),s&&e.assignAssetsBy((function(t,e){return EditorExtends.serialize.asAsset(t,e.type)})),l}(t,e,i);return r&&Op.pool.put(e),n}Up[0]=function(t,e,i,n){e[i]=n},Up[1]=Fp,Up[2]=kp(Fp),Up[3]=kp(Gp),Up[4]=Vp,Up[5]=function(t,e,i,n){var r=n[0],s=e[i];(0,Pp[r])(s,n)},Up[6]=Gp,Up[7]=function(t,e,i,n){e[i].set(n)},Up[8]=function(t,e,i,n){var r=n[0],s=new Bp[r];(0,Pp[r])(s,n),e[i]=s},Up[9]=kp(Vp),Up[10]=function(t,e,i,n){var r=t[3][n[0]];e[i]=Np(t,r,n[1])},Up[11]=function(t,e,i,n){var r=n[0];e[i]=r;for(var s=1;s<n.length;s+=3){var a=n[s],o=n[s+1],h=n[s+2];(0,Up[o])(t,r,a,h)}},Up[12]=function(t,e,i,n){for(var r=n[0],s=0;s<r.length;++s){var a=r[s],o=n[s+1];0!==o&&(0,Up[o])(t,r,s,a)}e[i]=r},jp.Details=Op,jp.reportMissingClass=function(t){it(5302,t)};var Yp=function(t){this.preprocessed=!0,this.version=t};function qp(t,e,i){return[1,0,0,[t],0,i?[e,-1]:[e],[0],0,[],[],[]]}S.deserialize=jp;var Kp=new WeakMap,Qp=new WeakSet,Zp=new WeakSet;function Jp(t,e){var i;i=gp.safeFindClass;var n,r=Op.pool.get();try{n=jp(t,r,{classFinder:i,customEnv:e})}catch(t){throw H(t),Op.pool.put(r),t}n._uuid=e.__uuid__||"";for(var s=r.uuidList,a=r.uuidObjList,o=r.uuidPropList,h=r.uuidTypeList||[],u=[],l=0;l<s.length;l++){var c=s[l];u[l]={uuid:sd(c),owner:a[l],prop:o[l],type:ae(h[l])}}return Kp.set(n,u),n._native&&Qp.add(n),Op.pool.put(r),n}var $p=function(){function t(){this._depends=new Uf}var e=t.prototype;return e.init=function(){this._depends.clear()},e.getNativeDep=function(t){var e=this._depends.get(t);return e&&e.nativeDep?r({},e.nativeDep):null},e.getDeps=function(t){return this._depends.has(t)?this._depends.get(t).deps:[]},e.getDepsRecursively=function(t){var e=Object.create(null),i=[];return this._descend(t,e,i),i},e.remove=function(t){this._depends.remove(t)},e.parse=function(t,e){var i,n,r=null;if(Array.isArray(e)||e.__type__||e instanceof yp){if(this._depends.has(t))return this._depends.get(t);if(!Array.isArray(e)||"number"==typeof(n=(i=e[5])[i.length-1])&&n<0)try{var s=Jp(e,{__uuid__:t});(r=this._parseDepsFromAsset(s)).nativeDep&&(r.nativeDep.uuid=t),jf.add(t+"@import",s)}catch(e){Xf.remove(t+"@import"),r={deps:[]}}else r={deps:this._parseDepsFromJson(e)}}else{if(this._depends.has(t)&&(r=this._depends.get(t)).parsedFromExistAsset)return r;r=this._parseDepsFromAsset(e)}return this._depends.add(t,r),r},e._parseDepsFromAsset=function(t){for(var e={deps:[],parsedFromExistAsset:!0},i=Kp.get(t),n=0,r=i.length;n<r;n++)e.deps.push(i[n].uuid);return Qp.has(t)&&(e.nativeDep=t._nativeDep),e},e._parseDepsFromJson=function(t){var e=function(t){return i=(e=t)[1],e[10].map((function(t){return i[t]}));var e,i}(t);return e.forEach((function(t,i){return e[i]=sd(t)})),e},e._descend=function(t,e,i){for(var n=this.getDeps(t),r=0;r<n.length;r++){var s=n[r];e[s]||(e[s]=!0,i.push(s),this._descend(s,e,i))}},n(t,null,[{key:"instance",get:function(){return this._instance||(this._instance=new t),this._instance}}]),t}();$p._instance=void 0;var tm,em=$p.instance,im=[new Jc];function nm(t){return t&&0==(t&t-1)}var rm,sm,am,om,hm,um=eo("cc.SimpleTexture")(tm=function(t){function e(){var e;return(e=t.call(this)||this)._gfxTexture=null,e._gfxTextureView=null,e._mipmapLevel=1,e._textureWidth=0,e._textureHeight=0,e._baseLevel=0,e._maxLevel=1e3,e}s(e,t);var i=e.prototype;return i.getGFXTexture=function(){return this._gfxTextureView},i.destroy=function(){return this._tryDestroyTextureView(),this._tryDestroyTexture(),t.prototype.destroy.call(this)},i.updateImage=function(){this.updateMipmaps(0)},i.updateMipmaps=function(){},i.uploadData=function(t,e,i){if(void 0===e&&(e=0),void 0===i&&(i=0),this._gfxTexture&&!(this._mipmapLevel<=e)){var n=this._getGFXDevice();if(n){var r=im[0];r.texExtent.width=this._textureWidth>>e,r.texExtent.height=this._textureHeight>>e,r.texSubres.mipLevel=e,r.texSubres.baseArrayLayer=i,ArrayBuffer.isView(t)?n.copyBuffersToTexture([t],this._gfxTexture,im):n.copyTexImagesToTexture([t],this._gfxTexture,im)}}},i._assignImage=function(t,e,i){var n=t.data;if(n&&(this.uploadData(n,e,i),this._checkTextureLoaded(),Pe.CLEANUP_IMAGE_CACHE)){var r=em.getDeps(this._uuid),s=r.indexOf(t._uuid);-1!==s&&(fe(r,s),t.decRef())}},i._checkTextureLoaded=function(){this._textureReady()},i._textureReady=function(){this.loaded=!0,this.emit("load")},i._setMipmapLevel=function(t){this._mipmapLevel=t<1?1:t},i._setMipRange=function(t,e){this._baseLevel=t<1?0:t,this._maxLevel=e<1?0:e},i.setMipRange=function(t,e){st(t<=e,3124),this._setMipRange(t,e);var i=this._getGFXDevice();if(i){var n=this._createTextureView(i);this._tryDestroyTextureView(),this._gfxTextureView=n}},i._getGfxTextureCreateInfo=function(){return null},i._getGfxTextureViewCreateInfo=function(){return null},i._tryReset=function(){if(this._tryDestroyTextureView(),this._tryDestroyTexture(),0!==this._mipmapLevel){var t=this._getGFXDevice();t&&(this._createTexture(t),this._gfxTextureView=this._createTextureView(t))}},i.isUsingOfflineMipmaps=function(){return!1},i._createTexture=function(t){if(0!==this._width&&0!==this._height){var e=lc.NONE;this._mipFilter!==Td.NONE&&function(t,e,i){return!(t.gfxAPI===Jl.WEBGL)||nm(e)&&nm(i)}(t,this._width,this._height)&&(this._mipmapLevel=function(t,e){for(var i=Math.max(t,e),n=0;i;)i>>=1,n++;return n}(this._width,this._height),this.isUsingOfflineMipmaps()||this.isCompressed||(e=lc.GEN_MIPMAP));var i=this._getGfxTextureCreateInfo({usage:uc.SAMPLED|uc.TRANSFER_DST|uc.COLOR_ATTACHMENT,format:this._getGFXFormat(),levelCount:this._mipmapLevel,flags:e});if(i){var n=t.createTexture(i);this._textureWidth=i.width,this._textureHeight=i.height,this._gfxTexture=n}}},i._createTextureView=function(t){if(!this._gfxTexture)return null;var e=this._maxLevel<this._mipmapLevel?this._maxLevel:this._mipmapLevel-1,i=this._getGfxTextureViewCreateInfo({texture:this._gfxTexture,format:this._getGFXFormat(),baseLevel:this._baseLevel,levelCount:e-this._baseLevel+1});return i?t.createTexture(i):null},i._tryDestroyTexture=function(){this._gfxTexture&&(this._gfxTexture.destroy(),this._gfxTexture=null)},i._tryDestroyTextureView=function(){this._gfxTextureView&&(this._gfxTextureView.destroy(),this._gfxTextureView=null)},n(e,[{key:"mipmapLevel",get:function(){return this._mipmapLevel}}]),e}(Xd))||tm;S.SimpleTexture=um;var lm=t("e2",(rm=eo("cc.Texture2D"),sm=Lo([Vd]),rm((om=function(t){function e(){var e;return(e=t.call(this)||this)._mipmaps=hm&&hm(),e._generatedMipmaps=[],e}s(e,t);var i=e.prototype;return i._setMipmapParams=function(t){var e=this;if(this._generatedMipmaps=t,this._setMipmapLevel(this._generatedMipmaps.length),this._generatedMipmaps.length>0){var i=this._generatedMipmaps[0];this.reset({width:i.width,height:i.height,format:i.format,mipmapLevel:this._generatedMipmaps.length,baseLevel:this._baseLevel,maxLevel:this._maxLevel}),this._generatedMipmaps.forEach((function(t,i){e._assignImage(t,i)}))}else this.reset({width:0,height:0,mipmapLevel:this._generatedMipmaps.length,baseLevel:this._baseLevel,maxLevel:this._maxLevel})},i.initialize=function(){this.mipmaps=this._mipmaps},i.onLoaded=function(){this.initialize()},i.reset=function(t){this._width=t.width,this._height=t.height,this._setGFXFormat(t.format);var e=void 0===t.mipmapLevel?1:t.mipmapLevel;this._setMipmapLevel(e);var i=void 0===t.baseLevel?0:t.baseLevel,n=void 0===t.maxLevel?1e3:t.maxLevel;this._setMipRange(i,n),this._tryReset()},i.create=function(t,e,i,n,r,s){void 0===i&&(i=yd.RGBA8888),void 0===n&&(n=1),void 0===r&&(r=0),void 0===s&&(s=1e3),this.reset({width:t,height:e,format:i,mipmapLevel:n,baseLevel:r,maxLevel:s})},i.toString=function(){return 0!==this._mipmaps.length?this._mipmaps[0].url:""},i.updateMipmaps=function(t,e){if(void 0===t&&(t=0),void 0===e&&(e=void 0),!(t>=this._generatedMipmaps.length))for(var i=Math.min(void 0===e?this._generatedMipmaps.length:e,this._generatedMipmaps.length-t),n=0;n<i;++n){var r=t+n;this._assignImage(this._generatedMipmaps[r],r)}},i.getHtmlElementObj=function(){return this._mipmaps[0]&&this._mipmaps[0].data instanceof HTMLElement?this._mipmaps[0].data:null},i.destroy=function(){return this._mipmaps=[],this._generatedMipmaps=[],t.prototype.destroy.call(this)},i.description=function(){return"<cc.Texture2D | Name = "+(this._mipmaps[0]?this._mipmaps[0].url:"")+" | Dimension = "+this.width+" x "+this.height+">"},i.releaseTexture=function(){this.destroy()},i._serialize=function(){return null},i._deserialize=function(e,i){var n=e;t.prototype._deserialize.call(this,n.base,i),this._mipmaps=new Array(n.mipmaps.length);for(var r=0;r<n.mipmaps.length;++r)if(this._mipmaps[r]=new Vd,n.mipmaps[r]){var s=n.mipmaps[r];i.result.push(this._mipmaps,""+r,s,ue(Vd))}},i._getGfxTextureCreateInfo=function(t){var e=new u_(hc.TEX2D);return e.width=this._width,e.height=this._height,Object.assign(e,t),e},i._getGfxTextureViewCreateInfo=function(t){var e=new l_;return e.type=hc.TEX2D,Object.assign(e,t),e},i.initDefault=function(e){t.prototype.initDefault.call(this,e);var i=new Vd;i.initDefault(),this.image=i},i.validate=function(){return this.mipmaps&&0!==this.mipmaps.length},n(e,[{key:"mipmaps",get:function(){return this._mipmaps},set:function(t){this._mipmaps=t;var e=[];if(1===t.length){var i=t[0];e.push.apply(e,i.extractMipmaps())}else if(t.length>1)for(var n=0;n<t.length;++n){var r=t[n];e.push(r.extractMipmap0())}this._setMipmapParams(e)}},{key:"image",get:function(){return 0===this._mipmaps.length?null:this._mipmaps[0]},set:function(t){this.mipmaps=t?[t]:[]}}]),e}(um),hm=ja(om.prototype,"_mipmaps",[sm],(function(){return[]})),am=om))||am));S.Texture2D=lm;var cm=t("A",function(){function t(t,e){this._innerTextureInfos={},this._innerSpriteFrames=[],this._count=0;var i=new _m;i.initWithSize(t,e),this._texture=i,this._width=t,this._height=e,this._x=2,this._y=2,this._nextY=2}var e=t.prototype;return e.insertSpriteFrame=function(t){var e=t.rect,i=t.texture,n=this._innerTextureInfos[i.getId()],r=e.x,s=e.y;if(n)r+=n.x,s+=n.y;else{var a=i.width,o=i.height;if(this._x+a+2>this._width&&(this._x=2,this._y=this._nextY),this._y+o+2>this._nextY&&(this._nextY=this._y+o+2),this._nextY>this._height)return null;S.internal.dynamicAtlasManager.textureBleeding&&((a<=8||o<=8)&&(this._texture.drawTextureAt(i.image,this._x-1,this._y-1),this._texture.drawTextureAt(i.image,this._x-1,this._y+1),this._texture.drawTextureAt(i.image,this._x+1,this._y-1),this._texture.drawTextureAt(i.image,this._x+1,this._y+1)),this._texture.drawTextureAt(i.image,this._x-1,this._y),this._texture.drawTextureAt(i.image,this._x+1,this._y),this._texture.drawTextureAt(i.image,this._x,this._y-1),this._texture.drawTextureAt(i.image,this._x,this._y+1)),this._texture.drawTextureAt(i.image,this._x,this._y),this._innerTextureInfos[i.getId()]={x:this._x,y:this._y,texture:i},this._count++,r+=this._x,s+=this._y,this._x+=a+2}var h={x:r,y:s,texture:this._texture};return this._innerSpriteFrames.push(t),h},e.removeSpriteFrame=function(t){pe(this._innerSpriteFrames,t)},e.deleteInnerTexture=function(t){t&&this._innerTextureInfos[t.getId()]&&(delete this._innerTextureInfos[t.getId()],this._count--)},e.isEmpty=function(){return this._count<=0},e.reset=function(){this._x=2,this._y=2,this._nextY=2;for(var t=this._innerSpriteFrames,e=0,i=t.length;e<i;e++){var n=t[e];n.isValid&&n._resetDynamicAtlasFrame()}this._innerSpriteFrames.length=0,this._innerTextureInfos={}},e.destroy=function(){this.reset(),this._texture.destroy()},t}()),_m=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.initWithSize=function(t,e,i){void 0===i&&(i=yd.RGBA8888),this.reset({width:t,height:e,format:i})},i.drawTextureAt=function(t,e,i){var n=this.getGFXTexture();if(t&&n){var r=this._getGFXDevice();if(r){var s=new Jc;s.texOffset.x=e,s.texOffset.y=i,s.texExtent.width=t.width,s.texExtent.height=t.height,r.copyTexImagesToTexture([t.data],n,[s])}else tt(16363)}},e}(lm),fm={NONE:0,IGNORE_RAYCAST:1<<20,GIZMOS:1<<21,EDITOR:1<<22,UI_3D:1<<23,SCENE_GIZMO:1<<24,UI_2D:1<<25,PROFILER:1<<28,DEFAULT:1<<30,ALL:4294967295},dm=t("dn",function(){function t(){}return t.init=function(){var e=Me.querySettings(De.Category.ENGINE,"customLayers");if(e)for(var i=0;i<e.length;i++){var n=e[i];t.addLayer(n.name,n.bit)}},t.makeMaskInclude=function(t){for(var e,i=0,n=f(t);!(e=n()).done;)i|=e.value;return i},t.makeMaskExclude=function(e){return~t.makeMaskInclude(e)},t.addLayer=function(e,i){if(void 0!==i)if(i>19||i<0)tt(16365);else{var n=1<<i;t.Enum[e],at(2104,e),t.Enum[e]=n,Bt(t.Enum,String(n),e),t.BitMask[e]=n,Bt(t.BitMask,String(n),e),Te.update(t.BitMask),Ee.update(t.Enum)}else tt(16364)},t.deleteLayer=function(e){if(e>19||e<0)tt(16366);else{var i=1<<e;delete t.Enum[t.Enum[i]],delete t.Enum[i],delete t.BitMask[t.BitMask[i]],delete t.BitMask[i],Te.update(t.BitMask),Ee.update(t.Enum)}},t.nameToLayer=function(e){return void 0===e?(tt(16367),-1):x(t.Enum[e])},t.layerToName=function(e){return e>31||e<0?(tt(16368),""):t.Enum[1<<e]},t}());dm.Enum=Ee(fm),dm.BitMask=Te(r({},fm)),S.Layers=dm;var pm,mm,gm=function(){var t=e.prototype;function e(t){this._uiComp=null,this._opacity=1,this._localOpacity=1,this.colorDirty=!0,this._uiTransformComp=null,this._node=t}return t.setOpacity=function(t){this._opacity=t},t.applyOpacity=function(t){this._opacity=this._localOpacity*t},e.markOpacityTree=function(){},n(e,[{key:"uiTransformComp",get:function(){return this._uiTransformComp||(this._uiTransformComp=this._node.getComponent("cc.UITransform")),this._uiTransformComp},set:function(t){this._uiTransformComp=t}},{key:"uiComp",get:function(){return this._uiComp},set:function(t){this._uiComp&&t?tt(12002):this._uiComp=t}},{key:"opacity",get:function(){return this._opacity}},{key:"localOpacity",get:function(){return this._localOpacity},set:function(t){this._localOpacity=t,this.colorDirty=!0}}]),e}();Ms.Flags.Destroying,S.GAME_VIEW,t("du",pm),function(t){t[t.LOCAL=0]="LOCAL",t[t.WORLD=1]="WORLD"}(pm||t("du",pm={})),t("dv",mm),function(t){t[t.NONE=0]="NONE",t[t.POSITION=1]="POSITION",t[t.ROTATION=2]="ROTATION",t[t.SCALE=4]="SCALE",t[t.RS=t.ROTATION|t.SCALE]="RS",t[t.TRS=t.POSITION|t.ROTATION|t.SCALE]="TRS",t[t.TRS_MASK=~t.TRS]="TRS_MASK"}(mm||t("dv",mm={})),S.internal.TransformBit=mm;var vm,ym,Sm,Tm,Am,bm,Em,Cm,xm,wm,Rm,Im,Dm,Bm,Mm,Pm,Om,Lm,Nm=t("dw",Ee({Static:0,Stationary:1,Movable:2}));t("dx",vm),function(t){t.TOUCH_START="touch-start",t.TOUCH_MOVE="touch-move",t.TOUCH_END="touch-end",t.TOUCH_CANCEL="touch-cancel",t.MOUSE_DOWN="mouse-down",t.MOUSE_MOVE="mouse-move",t.MOUSE_UP="mouse-up",t.MOUSE_WHEEL="mouse-wheel",t.MOUSE_ENTER="mouse-enter",t.MOUSE_LEAVE="mouse-leave",t.KEY_DOWN="keydown",t.KEY_UP="keyup",t.DEVICEMOTION="devicemotion",t.TRANSFORM_CHANGED="transform-changed",t.MOBILITY_CHANGED="mobility-changed",t.SCENE_CHANGED_FOR_PERSISTS="scene-changed-for-persists",t.SIZE_CHANGED="size-changed",t.ANCHOR_CHANGED="anchor-changed",t.COLOR_CHANGED="color-changed",t.CHILD_ADDED="child-added",t.CHILD_REMOVED="child-removed",t.PARENT_CHANGED="parent-changed",t.NODE_DESTROYED="node-destroyed",t.LAYER_CHANGED="layer-changed",t.SIBLING_ORDER_CHANGED="sibling-order-changed",t.CHILDREN_ORDER_CHANGED="sibling-order-changed",t.ACTIVE_IN_HIERARCHY_CHANGED="active-in-hierarchy-changed",t.COMPONENT_ADDED="component-added",t.COMPONENT_REMOVED="component-removed",t.LIGHT_PROBE_CHANGED="light-probe-changed",t.LIGHT_PROBE_BAKING_CHANGED="light-probe-baking-changed",t.ACTIVE_CHANGED="active-changed"}(vm||t("dx",vm={}));var Fm=Ms.Flags.Destroying,km=Ms.Flags.DontDestroy,Gm=Ms.Flags.Deactivating,Vm=new bt("Node");function Um(t){return t?"string"==typeof t?oe(t):t:(it(3804),null)}var zm,Hm,Wm,Xm,jm,Ym,qm,Km,Qm,Zm=vn(),Jm=vn(),$m=kn(),tg=kn(),eg=kn(),ig=new wn,ng=Wn(),rg=Wn(),sg=[],ag=Symbol("ReserveContentsForAllSyncablePrefab"),og=0,hg=t("dl",(ym=eo("cc.Node"),Sm=Lo(gn),Tm=Lo(Nm),ym(((Lm=function(t){s(i,t);var e=i.prototype;function i(e){var i;return void 0===e&&(e="New Node"),(i=t.call(this,e)||this)._parent=Em&&Em(),i._children=Cm&&Cm(),i._active=xm&&xm(),i._components=wm&&wm(),i._prefab=Rm&&Rm(),i._scene=null,i._activeInHierarchy=!1,i._id=Vm.getNewId(),i._eventProcessor=new S.NodeEventProcessor(c(i)),i._eventMask=0,i._siblingIndex=0,i._originalSceneId="",i._uiProps=new gm(c(i)),i._static=!1,i._lpos=Im&&Im(),i._lrot=Dm&&Dm(),i._lscale=Bm&&Bm(),i._mobility=Mm&&Mm(),i._layer=Pm&&Pm(),i._euler=Om&&Om(),i._transformFlags=mm.TRS,i._eulerDirty=!1,i._flagChangeVersion=0,i._hasChangedFlags=0,i._pos=new gn,i._rot=new Bn,i._scale=new gn(1,1,1),i._mat=new Vn,i}return e._setActiveInHierarchy=function(t){this._activeInHierarchy=t},i._setScene=function(t){t._updateScene()},i._findComponent=function(t,e){var i=e,n=t._components;if(i._sealed)for(var r=0;r<n.length;++r){var s=n[r];if(s.constructor===e)return s}else for(var a=0;a<n.length;++a){var o=n[a];if(o instanceof e)return o}return null},i._findComponents=function(t,e,i){var n=e,r=t._components;if(n._sealed)for(var s=0;s<r.length;++s){var a=r[s];a.constructor===e&&i.push(a)}else for(var o=0;o<r.length;++o){var h=r[o];h instanceof e&&i.push(h)}},i._findChildComponent=function(t,e){for(var n=0;n<t.length;++n){var r=t[n],s=i._findComponent(r,e);if(s)return s;if(r._children.length>0&&(s=i._findChildComponent(r._children,e)))return s}return null},i._findChildComponents=function(t,e,n){for(var r=0;r<t.length;++r){var s=t[r];i._findComponents(s,e,n),s._children.length>0&&i._findChildComponents(s._children,e,n)}},e.getWritableComponents=function(){return this._components},e._updateScene=function(){null==this._parent?it(1640,this.name,this.uuid):this._scene=this._parent._scene},e.attr=function(t){jt(this,t)},e.getParent=function(){return this._parent},e.modifyParent=function(t){this._parent=t},e.setParent=function(t,e){if(void 0===e&&(e=!1),e&&this.updateWorldTransform(),this._parent!==t){var i=this._parent,n=t;if(this._parent=n,this._siblingIndex=0,this._onSetParent(i,e),this.emit&&this.emit(vm.PARENT_CHANGED,i),i&&!(i._objFlags&Fm)){var r=i._children.indexOf(this);i._children.splice(r,1),i._updateSiblingIndex(),i.emit&&i.emit(vm.CHILD_REMOVED,this)}n&&(n._children.push(this),this._siblingIndex=n._children.length-1,n.emit&&n.emit(vm.CHILD_ADDED,this)),this._onHierarchyChanged(i)}},e.getChildByUuid=function(t){if(!t)return U("Invalid uuid"),null;for(var e=this._children,i=0,n=e.length;i<n;i++)if(e[i]._id===t)return e[i];return null},e.getChildByName=function(t){if(!t)return U("Invalid name"),null;for(var e=this._children,i=0,n=e.length;i<n;i++)if(e[i]._name===t)return e[i];return null},e.getChildByPath=function(t){for(var e,i=t.split("/"),n=this,r=function(){var t=i[s];if(0===t.length)return 0;var e=n.children.find((function(e){return e.name===t}));if(!e)return{v:null};n=e},s=0;s<i.length;++s)if(0!==(e=r())&&e)return e.v;return n},e.addChild=function(t){t.setParent(this)},e.insertChild=function(t,e){t.setParent(this),t.setSiblingIndex(e)},e.getSiblingIndex=function(){return this._siblingIndex},e.setSiblingIndex=function(t){if(this._parent)if(this._parent._objFlags&Gm)it(3821);else{var e=this._parent._children;t=-1!==t?t:e.length-1;var i=e.indexOf(this);t!==i&&(e.splice(i,1),t<e.length?e.splice(t,0,this):e.push(this),this._parent._updateSiblingIndex(),this._onSiblingIndexChanged&&this._onSiblingIndexChanged(t),this._eventProcessor.onUpdatingSiblingIndex())}},e.walk=function(t,e){var n=1,r=null,s=null,a=0,o=i._stacks[i._stackId];o||(o=[],i._stacks.push(o)),i._stackId++,o.length=0,o[0]=this;for(var h=null,u=!1;n;)if(s=o[--n])if(!u&&t?t(s):u&&e&&e(s),o[n]=null,u){if(h===this._parent)break;if(u=!1,r)if(r[++a])o[n]=r[a],n++;else if(h&&(o[n]=h,n++,u=!0,h._parent?(a=(r=h._parent._children).indexOf(h),h=h._parent):(h=null,r=null),a<0))break}else s._children.length>0?(h=s,r=s._children,a=0,o[n]=r[a],n++):(o[n]=s,n++,u=!0);o.length=0,i._stackId--},e.removeFromParent=function(){this._parent&&this._parent.removeChild(this)},e.removeChild=function(t){this._children.indexOf(t)>-1&&(t.parent=null)},e.removeAllChildren=function(){for(var t=this._children,e=t.length-1;e>=0;e--){var i=t[e];i&&(i.parent=null)}this._children.length=0},e.isChildOf=function(t){var e=this;do{if(e===t)return!0;e=e._parent}while(e);return!1},e.getComponent=function(t){var e=Um(t);return e?i._findComponent(this,e):null},e.getComponents=function(t){var e=Um(t),n=[];return e&&i._findComponents(this,e,n),n},e.getComponentInChildren=function(t){var e=Um(t);return e?i._findChildComponent(this._children,e):null},e.getComponentsInChildren=function(t){var e=Um(t),n=[];return e&&(i._findComponents(this,e,n),i._findChildComponents(this._children,e,n)),n},e.addComponent=function(t){var e;if("string"==typeof t){if(!(e=oe(t)))throw S._RF.peek()&&it(3808,t),TypeError(at(3807,t))}else{if(!t)throw TypeError(at(3804));e=t}if("function"!=typeof e)throw TypeError(at(3809));if(!Kt(e,S.Component))throw TypeError(at(3810));var i=e._requireComponent;if(i)if(Array.isArray(i))for(var n=0;n<i.length;n++){var r=i[n];this.getComponent(r)||this.addComponent(r)}else{var s=i;this.getComponent(s)||this.addComponent(s)}var a=new e;return a.node=this,this._components.push(a),this.emit(vm.COMPONENT_ADDED,a),this._activeInHierarchy&&S.director._nodeActivator.activateComp(a),a},e.removeComponent=function(t){if(t){var e=null;(e=t instanceof mp?t:this.getComponent(t))&&e.destroy()}else it(3813)},e.on=function(t,e,i,n){switch(void 0===n&&(n=!1),t){case vm.TRANSFORM_CHANGED:this._eventMask|=1;break;case vm.ACTIVE_CHANGED:this._eventMask|=2}this._eventProcessor.on(t,e,i,n)},e.off=function(t,e,i,n){if(void 0===n&&(n=!1),this._eventProcessor.off(t,e,i,n),!this._eventProcessor.hasEventListener(t))switch(t){case vm.TRANSFORM_CHANGED:this._eventMask&=-2;break;case vm.ACTIVE_CHANGED:this._eventMask&=-3}},e.once=function(t,e,i,n){this._eventProcessor.once(t,e,i,n)},e.emit=function(t,e,i,n,r,s){this._eventProcessor.emit(t,e,i,n,r,s)},e.dispatchEvent=function(t){this._eventProcessor.dispatchEvent(t)},e.hasEventListener=function(t,e,i){return this._eventProcessor.hasEventListener(t,e,i)},e.targetOff=function(t){this._eventProcessor.targetOff(t),1&this._eventMask&&!this._eventProcessor.hasEventListener(vm.TRANSFORM_CHANGED)&&(this._eventMask&=-2),2&this._eventMask&&!this._eventProcessor.hasEventListener(vm.ACTIVE_CHANGED)&&(this._eventMask&=-3)},e.destroy=function(){return!!t.prototype.destroy.call(this)&&(this.active=!1,!0)},e.destroyAllChildren=function(){for(var t=this._children,e=0;e<t.length;++e)t[e].destroy()},e._removeComponent=function(t){if(t){if(!(this._objFlags&Fm)){var e=this._components.indexOf(t);-1!==e?(this._components.splice(e,1),this.emit(vm.COMPONENT_REMOVED,t)):t.node!==this&&it(3815)}}else it(3814)},e._updateSiblingIndex=function(){for(var t=0;t<this._children.length;++t)this._children[t]._siblingIndex=t;this.emit(vm.CHILDREN_ORDER_CHANGED)},e._instantiate=function(t,e){return void 0===e&&(e=!1),t||(t=S.instantiate._clone(this,this)),t._prefab,t._parent=null,t._onBatchCreated(e),t},e._onHierarchyChangedBase=function(){var t=this._parent;!this._persistNode||t instanceof S.Scene||S.game.removePersistRootNode(this);var e=this._active&&!(!t||!t._activeInHierarchy);this._activeInHierarchy!==e&&S.director._nodeActivator.activateNode(this,e)},e._onPreDestroyBase=function(){this._objFlags|=Fm;var t=this._parent,e=!!t&&0!=(t._objFlags&Fm);if(this._persistNode&&S.game.removePersistRootNode(this),!e&&t){this.emit(vm.PARENT_CHANGED,this);var i=t._children.indexOf(this);t._children.splice(i,1),this._siblingIndex=0,t._updateSiblingIndex(),t.emit&&t.emit(vm.CHILD_REMOVED,this)}this.emit(vm.NODE_DESTROYED,this),this._eventProcessor.destroy();for(var n=this._children,r=0;r<n.length;++r)n[r]._destroyImmediate();for(var s=this._components,a=0;a<s.length;++a)s[a]._destroyImmediate();return e},i.isNode=function(t){return t instanceof i&&(t.constructor===i||!(t instanceof S.Scene))},e._onPreDestroy=function(){return this._onPreDestroyBase()},e[$o]=function(t){t.writeThis()},e._onSetParent=function(t,e){if(void 0===e&&(e=!1),this._parent&&(null!=t&&t._scene===this._parent._scene||null==this._parent._scene||this.walk(i._setScene)),e){var n=this._parent;n?(n.updateWorldTransform(),Ni(Vn.determinant(n._mat),0,Oi)?(tt(14300),this._transformFlags|=mm.TRS,this.updateWorldTransform()):(Vn.multiply(ng,Vn.invert(ng,n._mat),this._mat),Vn.toRTS(ng,this._lrot,this._lpos,this._lscale))):(gn.copy(this._lpos,this._pos),Bn.copy(this._lrot,this._rot),gn.copy(this._lscale,this._scale)),this._eulerDirty=!0}this.invalidateChildren(mm.TRS)},e._onHierarchyChanged=function(t){this.eventProcessor.reattach(),this._onHierarchyChangedBase(t)},e._onBatchCreated=function(t){2&this._eventMask&&(this._activeInHierarchy||this.emit(vm.ACTIVE_CHANGED,this,!1)),this.hasChangedFlags=mm.TRS;for(var e=this._children.length,i=0;i<e;++i)this._children[i]._siblingIndex=i,this._children[i]._onBatchCreated(t)},e._onBeforeSerialize=function(){this.eulerAngles},e._onPostActivated=function(t){2&this._eventMask&&this.emit(vm.ACTIVE_CHANGED,this,t),this._eventProcessor.setEnabled(t),t&&(this.invalidateChildren(mm.TRS),this._uiProps&&this._uiProps.uiComp&&(this._uiProps.uiComp.setNodeDirty(),this._uiProps.uiComp.setTextureDirty(),this._uiProps.uiComp.markForUpdateRenderData()))},e.translate=function(t,e){var i=e||pm.LOCAL;if(i===pm.LOCAL)gn.transformQuat(Zm,t,this._lrot),this._lpos.x+=Zm.x,this._lpos.y+=Zm.y,this._lpos.z+=Zm.z;else if(i===pm.WORLD)if(this._parent){Bn.invert($m,this._parent.worldRotation),gn.transformQuat(Zm,t,$m);var n=this.worldScale;this._lpos.x+=Zm.x/n.x,this._lpos.y+=Zm.y/n.y,this._lpos.z+=Zm.z/n.z}else this._lpos.x+=t.x,this._lpos.y+=t.y,this._lpos.z+=t.z;this.invalidateChildren(mm.POSITION),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.POSITION)},e.rotate=function(t,e){var i=e||pm.LOCAL;if(Bn.normalize($m,t),i===pm.LOCAL)Bn.multiply(this._lrot,this._lrot,$m);else if(i===pm.WORLD){var n=this.worldRotation;Bn.multiply(tg,$m,n),Bn.invert($m,n),Bn.multiply(tg,$m,tg),Bn.multiply(this._lrot,this._lrot,tg)}this._eulerDirty=!0,this.invalidateChildren(mm.ROTATION),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.ROTATION)},e.lookAt=function(t,e){this.getWorldPosition(Zm),gn.subtract(Zm,Zm,t),gn.normalize(Zm,Zm),Bn.fromViewUp($m,Zm,e),this.setWorldRotation($m)},e.invalidateChildren=function(t){var e,i,n=0,r=0,s=0,a=0,o=t|mm.POSITION;for(sg[0]=this;n>=0;){if(a=(e=sg[n--]).hasChangedFlags,e.isValid&&(e._transformFlags&a&t)!==t)for(e._transformFlags|=t,e.hasChangedFlags=a|t,s=(i=e._children).length,r=0;r<s;r++)sg[++n]=i[r];t=o}},e.updateWorldTransform=function(){if(this._transformFlags){for(var t,e=this,i=0;e&&e._transformFlags;)sg[i++]=e,e=e._parent;for(var n=0;i;){if(n|=(t=sg[--i])._transformFlags,e){if(n&mm.POSITION&&(gn.transformMat4(t._pos,t._lpos,e._mat),t._mat.m12=t._pos.x,t._mat.m13=t._pos.y,t._mat.m14=t._pos.z),n&mm.RS){Vn.fromRTS(t._mat,t._lrot,t._lpos,t._lscale),Vn.multiply(t._mat,e._mat,t._mat);var r=n&mm.ROTATION?t._rot:null;Vn.toRTS(t._mat,r,null,t._scale)}}else n&mm.POSITION&&(gn.copy(t._pos,t._lpos),t._mat.m12=t._pos.x,t._mat.m13=t._pos.y,t._mat.m14=t._pos.z),n&mm.RS&&(n&mm.ROTATION&&Bn.copy(t._rot,t._lrot),n&mm.SCALE&&gn.copy(t._scale,t._lscale),Vn.fromRTS(t._mat,t._rot,t._pos,t._scale));t._transformFlags=mm.NONE,e=t}}},e.setPosition=function(t,e,i){var n=this._lpos;if(void 0===e){if(n.equals(t))return;gn.copy(n,t)}else{if(void 0===i&&(i=n.z),n.equals(Zm.set(t,e,i)))return;gn.copy(n,Zm)}this.invalidateChildren(mm.POSITION),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.POSITION)},e.getPosition=function(t){return t?gn.set(t,this._lpos.x,this._lpos.y,this._lpos.z):gn.copy(new gn,this._lpos)},e.setRotation=function(t,e,i,n){var r=this._lrot;if(void 0===e){if(r.equals(t))return;Bn.copy(r,t)}else{if(r.equals($m.set(t,e,i,n)))return;Bn.copy(r,$m)}this._eulerDirty=!0,this.invalidateChildren(mm.ROTATION),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.ROTATION)},e.setRotationFromEuler=function(t,e,i){var n=this._euler;if(void 0===e){if(n.equals(t))return;gn.copy(n,t),Bn.fromEuler(this._lrot,t.x,t.y,t.z)}else{var r=void 0===i?this._euler.z:i;if(gn.set(Zm,t,e,r),n.equals(Zm))return;gn.copy(n,Zm),Bn.fromEuler(this._lrot,t,e,r)}this._eulerDirty=!1,this.invalidateChildren(mm.ROTATION),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.ROTATION)},e.getRotation=function(t){return t?Bn.set(t,this._lrot.x,this._lrot.y,this._lrot.z,this._lrot.w):Bn.copy(new Bn,this._lrot)},e.setScale=function(t,e,i){var n=this._lscale;if(void 0===e){if(n.equals(t))return;gn.copy(n,t)}else{if(void 0===i&&(i=n.z),gn.set(Zm,t,e,i),n.equals(Zm))return;gn.copy(n,Zm)}this.invalidateChildren(mm.SCALE),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.SCALE)},e.getScale=function(t){return t?gn.set(t,this._lscale.x,this._lscale.y,this._lscale.z):gn.copy(new gn,this._lscale)},e.inverseTransformPoint=function(t,e){gn.copy(t,e);for(var i=this,n=0;i._parent;)sg[n++]=i,i=i._parent;for(;n>=0;)gn.transformInverseRTS(t,t,i._lrot,i._lpos,i._lscale),i=sg[--n];return t},e.setWorldPosition=function(t,e,i){var n=this._pos,r=this._parent&&(this._transformFlags&mm.POSITION)!==mm.NONE;if(void 0===e){if(!r&&n.equals(t))return;gn.copy(n,t)}else{if(gn.set(Zm,t,e,i),!r&&n.equals(Zm))return;gn.copy(n,Zm)}var s=this._parent,a=this._lpos;s?(s.updateWorldTransform(),gn.transformMat4(a,n,Vn.invert(ng,s._mat))):gn.copy(a,n),this.invalidateChildren(mm.POSITION),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.POSITION)},e.getWorldPosition=function(t){return this.updateWorldTransform(),t?gn.copy(t,this._pos):gn.copy(new gn,this._pos)},e.setWorldRotation=function(t,e,i,n){var r=this._rot,s=this._parent&&(this._transformFlags&mm.ROTATION)!==mm.NONE;if(void 0===e){if(!s&&r.equals(t))return;Bn.copy(r,t)}else{if(Bn.set($m,t,e,i,n),!s&&r.equals($m))return;Bn.copy(r,$m)}this._parent?(this._parent.updateWorldTransform(),Bn.multiply(this._lrot,Bn.conjugate(this._lrot,this._parent._rot),r)):Bn.copy(this._lrot,r),this._eulerDirty=!0,this.invalidateChildren(mm.ROTATION),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.ROTATION)},e.setWorldRotationFromEuler=function(t,e,i){Bn.fromEuler($m,t,e,i),this.setWorldRotation($m)},e.getWorldRotation=function(t){return this.updateWorldTransform(),t?Bn.copy(t,this._rot):Bn.copy(new Bn,this._rot)},e.setWorldScale=function(t,e,i){var n=this._scale,r=this._parent&&(this._transformFlags&mm.SCALE)!==mm.NONE,s=this._parent;if(s&&this.updateWorldTransform(),void 0===e){if(!r&&n.equals(t))return;gn.copy(n,t)}else{if(gn.set(Zm,t,e,i),!r&&n.equals(Zm))return;gn.copy(n,Zm)}s?(Zm.x=n.x/gn.set(Jm,this._mat.m00,this._mat.m01,this._mat.m02).length(),Zm.y=n.y/gn.set(Jm,this._mat.m04,this._mat.m05,this._mat.m06).length(),Zm.z=n.z/gn.set(Jm,this._mat.m08,this._mat.m09,this._mat.m10).length(),Vn.scale(ng,this._mat,Zm),Vn.multiply(rg,Vn.invert(rg,s._mat),ng),wn.fromQuat(ig,Bn.conjugate(eg,this._lrot)),wn.multiplyMat4(ig,ig,rg),this._lscale.x=gn.set(Zm,ig.m00,ig.m01,ig.m02).length(),this._lscale.y=gn.set(Zm,ig.m03,ig.m04,ig.m05).length(),this._lscale.z=gn.set(Zm,ig.m06,ig.m07,ig.m08).length()):gn.copy(this._lscale,n),this.invalidateChildren(mm.SCALE),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.SCALE)},e.getWorldScale=function(t){return this.updateWorldTransform(),t?gn.copy(t,this._scale):gn.copy(new gn,this._scale)},e.getWorldMatrix=function(t){this.updateWorldTransform();var e=t||new Vn;return Vn.copy(e,this._mat)},e.getWorldRS=function(t){this.updateWorldTransform();var e=t||new Vn;return Vn.copy(e,this._mat),e.m12=0,e.m13=0,e.m14=0,e},e.getWorldRT=function(t){this.updateWorldTransform();var e=t||new Vn;return Vn.fromRT(e,this._rot,this._pos)},e.setRTS=function(t,e,i){var n=0;t&&(n|=mm.ROTATION,void 0!==t.w?(Bn.copy(this._lrot,t),this._eulerDirty=!0):(gn.copy(this._euler,t),Bn.fromEuler(this._lrot,t.x,t.y,t.z),this._eulerDirty=!1)),e&&(gn.copy(this._lpos,e),n|=mm.POSITION),i&&(gn.copy(this._lscale,i),n|=mm.SCALE),n&&(this.invalidateChildren(n),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,n))},e.isTransformDirty=function(){return this._transformFlags!==mm.NONE},e.pauseSystemEvents=function(t){this._eventProcessor.setEnabled(!1,t)},e.resumeSystemEvents=function(t){this._eventProcessor.setEnabled(!0,t)},i.resetHasChangedFlags=function(){og+=1},i.clearNodeArray=function(){i.ClearFrame<i.ClearRound?i.ClearFrame++:(i.ClearFrame=0,sg.length=0)},e.getPathInHierarchy=function(){for(var t=this.name,e=this.parent;e&&!(e instanceof S.Scene);)t=e.name+"/"+t,e=e.parent;return t},n(i,[{key:"components",get:function(){return this._components}},{key:"_persistNode",get:function(){return(this._objFlags&km)>0},set:function(t){t?this._objFlags|=km:this._objFlags&=~km}},{key:"name",get:function(){return this._name},set:function(t){this._name=t}},{key:"uuid",get:function(){return this._id}},{key:"children",get:function(){return this._children}},{key:"active",get:function(){return this._active},set:function(t){if(t=!!t,this._active!==t){this._active=t;var e=this._parent;e&&e._activeInHierarchy&&S.director._nodeActivator.activateNode(this,t)}}},{key:"activeInHierarchy",get:function(){return this._activeInHierarchy}},{key:"parent",get:function(){return this._parent},set:function(t){this.setParent(t)}},{key:"scene",get:function(){return this._scene}},{key:"eventProcessor",get:function(){return this._eventProcessor}},{key:"prefab",get:function(){return this._prefab}},{key:"id",set:function(t){this._id=t}},{key:"siblingIndex",get:function(){return this._siblingIndex},set:function(t){this._siblingIndex=t}},{key:"position",get:function(){return this._lpos},set:function(t){this.setPosition(t)}},{key:"worldPosition",get:function(){return this.updateWorldTransform(),this._pos},set:function(t){this.setWorldPosition(t)}},{key:"rotation",get:function(){return this._lrot},set:function(t){this.setRotation(t)}},{key:"eulerAngles",get:function(){return this._eulerDirty&&(Bn.toEuler(this._euler,this._lrot),this._eulerDirty=!1),this._euler},set:function(t){this.setRotationFromEuler(t.x,t.y,t.z)}},{key:"angle",get:function(){return this.eulerAngles.z},set:function(t){this._euler.equals(Zm.set(0,0,t))||(gn.set(this._euler,0,0,t),Bn.fromAngleZ(this._lrot,t),this._eulerDirty=!1,this.invalidateChildren(mm.ROTATION),1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.ROTATION))}},{key:"worldRotation",get:function(){return this.updateWorldTransform(),this._rot},set:function(t){this.setWorldRotation(t)}},{key:"scale",get:function(){return this._lscale},set:function(t){this.setScale(t)}},{key:"worldScale",get:function(){return this.updateWorldTransform(),this._scale},set:function(t){this.setWorldScale(t)}},{key:"matrix",set:function(t){Vn.toRTS(t,this._lrot,this._lpos,this._lscale),this.invalidateChildren(mm.TRS),this._eulerDirty=!0,1&this._eventMask&&this.emit(vm.TRANSFORM_CHANGED,mm.TRS)}},{key:"worldMatrix",get:function(){return this.updateWorldTransform(),this._mat}},{key:"forward",get:function(){return gn.transformQuat(new gn,gn.FORWARD,this.worldRotation)},set:function(t){var e=t.length();gn.multiplyScalar(Zm,t,-1/e),Bn.fromViewUp($m,Zm),this.setWorldRotation($m)}},{key:"up",get:function(){return gn.transformQuat(new gn,gn.UP,this.worldRotation)}},{key:"right",get:function(){return gn.transformQuat(new gn,gn.RIGHT,this.worldRotation)}},{key:"mobility",get:function(){return this._mobility},set:function(t){this._mobility!==t&&(this._mobility=t,this.emit(vm.MOBILITY_CHANGED))}},{key:"layer",get:function(){return this._layer},set:function(t){this._layer!==t&&(this._layer=t,this._uiProps&&this._uiProps.uiComp&&(this._uiProps.uiComp.setNodeDirty(),this._uiProps.uiComp.markForUpdateRenderData()),this.emit(vm.LAYER_CHANGED,this._layer))}},{key:"flagChangedVersion",get:function(){return this._flagChangeVersion}},{key:"hasChangedFlags",get:function(){return this._flagChangeVersion===og?this._hasChangedFlags:0},set:function(t){this._flagChangeVersion=og,this._hasChangedFlags=t}}]),i}(Ms)).idGenerator=Vm,Lm._stacks=[[]],Lm._stackId=0,Lm.EventType=vm,Lm.NodeSpace=pm,Lm.TransformDirtyBit=mm,Lm.TransformBit=mm,Lm.reserveContentsForAllSyncablePrefabTag=ag,Lm.ClearFrame=0,Lm.ClearRound=1e3,m((bm=Lm).prototype,"_persistNode",[so],Object.getOwnPropertyDescriptor(bm.prototype,"_persistNode"),bm.prototype),Em=ja(bm.prototype,"_parent",[lo],(function(){return null})),Cm=ja(bm.prototype,"_children",[lo],(function(){return[]})),xm=ja(bm.prototype,"_active",[lo],(function(){return!0})),wm=ja(bm.prototype,"_components",[lo],(function(){return[]})),Rm=ja(bm.prototype,"_prefab",[lo],(function(){return null})),Im=ja(bm.prototype,"_lpos",[lo],(function(){return new gn})),Dm=ja(bm.prototype,"_lrot",[lo],(function(){return new Bn})),Bm=ja(bm.prototype,"_lscale",[lo],(function(){return new gn(1,1,1)})),Mm=ja(bm.prototype,"_mobility",[lo],(function(){return Nm.Static})),Pm=ja(bm.prototype,"_layer",[lo],(function(){return dm.Enum.DEFAULT})),Om=ja(bm.prototype,"_euler",[lo],(function(){return new gn})),m(bm.prototype,"eulerAngles",[Sm],Object.getOwnPropertyDescriptor(bm.prototype,"eulerAngles"),bm.prototype),m(bm.prototype,"mobility",[Tm],Object.getOwnPropertyDescriptor(bm.prototype,"mobility"),bm.prototype),Am=bm))||Am));S.Node=hg,function(t){t[t.right=0]="right",t[t.left=1]="left",t[t.top=2]="top",t[t.bottom=3]="bottom",t[t.front=4]="front",t[t.back=5]="back"}(Km||(Km={})),function(t){t[t.NONE=0]="NONE",t[t.AUTO=1]="AUTO",t[t.BAKED_CONVOLUTION_MAP=2]="BAKED_CONVOLUTION_MAP"}(Qm||(Qm={}));var ug=t("e3",eo("cc.TextureCube")(((qm=function(t){function e(){var e;return(e=t.call(this)||this).isRGBE=Wm&&Wm(),e._mipmapAtlas=Xm&&Xm(),e._mipmapMode=jm&&jm(),e._mipmaps=Ym&&Ym(),e._generatedMipmaps=[],e}s(e,t);var i=e.prototype;return i._setMipmapParams=function(t){var e=this;if(this._generatedMipmaps=t,this._setMipmapLevel(this._generatedMipmaps.length),this._generatedMipmaps.length>0){var i=this._generatedMipmaps[0].front;this.reset({width:i.width,height:i.height,format:i.format,mipmapLevel:this._generatedMipmaps.length,baseLevel:this._baseLevel,maxLevel:this._maxLevel}),this._generatedMipmaps.forEach((function(t,i){lg(t,(function(t,n){e._assignImage(t,i,n)}))}))}else this.reset({width:0,height:0,mipmapLevel:this._generatedMipmaps.length,baseLevel:this._baseLevel,maxLevel:this._maxLevel})},i.isUsingOfflineMipmaps=function(){return this._mipmapMode===Qm.BAKED_CONVOLUTION_MAP},e.fromTexture2DArray=function(t,i){for(var n=[],r=t.length/6,s=0;s<r;s++){var a=6*s;n.push({front:t[a+Km.front].image,back:t[a+Km.back].image,left:t[a+Km.left].image,right:t[a+Km.right].image,top:t[a+Km.top].image,bottom:t[a+Km.bottom].image})}return(i=i||new e).mipmaps=n,i},i.onLoaded=function(){this._mipmapMode===Qm.BAKED_CONVOLUTION_MAP?this.mipmapAtlas=this._mipmapAtlas:this.mipmaps=this._mipmaps},i.reset=function(t){this._width=t.width,this._height=t.height,this._setGFXFormat(t.format);var e=void 0===t.mipmapLevel?1:t.mipmapLevel;this._setMipmapLevel(e);var i=void 0===t.baseLevel?0:t.baseLevel,n=void 0===t.maxLevel?1e3:t.maxLevel;this._setMipRange(i,n),this._tryReset()},i.updateMipmaps=function(t,e){var i=this;if(void 0===t&&(t=0),void 0===e&&(e=void 0),!(t>=this._generatedMipmaps.length))for(var n=Math.min(void 0===e?this._generatedMipmaps.length:e,this._generatedMipmaps.length-t),r=function(){var e=t+s;lg(i._generatedMipmaps[e],(function(t,n){i._assignImage(t,e,n)}))},s=0;s<n;++s)r()},i.destroy=function(){return this._mipmaps=[],this._generatedMipmaps=[],this._mipmapAtlas=null,t.prototype.destroy.call(this)},i.releaseTexture=function(){this.destroy()},i._serialize=function(){return null},i._deserialize=function(e,i){var n=e;if(t.prototype._deserialize.call(this,n.base,i),this.isRGBE=n.rgbe,this._mipmapMode=n.mipmapMode,this._mipmapMode===Qm.BAKED_CONVOLUTION_MAP){var r=n.mipmapAtlas,s=n.mipmapLayout;this._mipmapAtlas={atlas:{},layout:s},this._mipmapAtlas.atlas={front:new Vd,back:new Vd,left:new Vd,right:new Vd,top:new Vd,bottom:new Vd};var a=ue(Vd);i.result.push(this._mipmapAtlas.atlas,"front",r.front,a),i.result.push(this._mipmapAtlas.atlas,"back",r.back,a),i.result.push(this._mipmapAtlas.atlas,"left",r.left,a),i.result.push(this._mipmapAtlas.atlas,"right",r.right,a),i.result.push(this._mipmapAtlas.atlas,"top",r.top,a),i.result.push(this._mipmapAtlas.atlas,"bottom",r.bottom,a)}else{this._mipmaps=new Array(n.mipmaps.length);for(var o=0;o<n.mipmaps.length;++o){this._mipmaps[o]={front:new Vd,back:new Vd,left:new Vd,right:new Vd,top:new Vd,bottom:new Vd};var h=n.mipmaps[o],u=ue(Vd);i.result.push(this._mipmaps[o],"front",h.front,u),i.result.push(this._mipmaps[o],"back",h.back,u),i.result.push(this._mipmaps[o],"left",h.left,u),i.result.push(this._mipmaps[o],"right",h.right,u),i.result.push(this._mipmaps[o],"top",h.top,u),i.result.push(this._mipmaps[o],"bottom",h.bottom,u)}}},i._getGfxTextureCreateInfo=function(t){var e=new u_(hc.CUBE);return e.width=this._width,e.height=this._height,e.layerCount=6,Object.assign(e,t),e},i._getGfxTextureViewCreateInfo=function(t){var e=new l_;return e.type=hc.CUBE,e.baseLayer=0,e.layerCount=6,Object.assign(e,t),e},i._uploadAtlas=function(){var t=this,e=this._mipmapAtlas.layout,i=e[0];this.reset({width:i.width,height:i.height,format:this._mipmapAtlas.atlas.front.format,mipmapLevel:e.length}),lg(this._mipmapAtlas.atlas,(function(i,n){var r=new lm;r.image=i,r.reset({width:i.width,height:i.height,format:i.format}),r.uploadData(i.data);for(var s=0;s<e.length;s++){var a=e[s],o=r.getGFXTexture().size,h=new Uint8Array(o),u=new Jc;u.texOffset.x=a.left,u.texOffset.y=a.top,u.texExtent.width=a.width,u.texExtent.height=a.height,t._getGFXDevice().copyTextureToBuffers(r.getGFXTexture(),[h],[u]);var l=new Vd({_data:h,_compressed:i.isCompressed,width:a.width,height:a.height,format:i.format});t._assignImage(l,a.level,n)}}))},i.initDefault=function(e){t.prototype.initDefault.call(this,e);var i=new Vd;i.initDefault(),this.mipmaps=[{front:i,back:i,top:i,bottom:i,left:i,right:i}]},i.validate=function(){if(this._mipmapMode===Qm.BAKED_CONVOLUTION_MAP){if(null===this.mipmapAtlas||0===this.mipmapAtlas.layout.length)return!1;var t=this.mipmapAtlas.atlas;return!!(t.top&&t.bottom&&t.front&&t.back&&t.left&&t.right)}return 0!==this._mipmaps.length&&!this._mipmaps.find((function(t){return!(t.top&&t.bottom&&t.front&&t.back&&t.left&&t.right)}))},n(e,[{key:"mipmaps",get:function(){return this._mipmaps},set:function(t){this._mipmaps=t;var e=[];if(1===t.length){var i=t[0],n=i.front.extractMipmaps(),r=i.back.extractMipmaps(),s=i.left.extractMipmaps(),a=i.right.extractMipmaps(),o=i.top.extractMipmaps(),h=i.bottom.extractMipmaps();if(n.length!==r.length||n.length!==s.length||n.length!==a.length||n.length!==o.length||n.length!==h.length)return it(16347),void this._setMipmapParams([]);for(var u=n.length,l=0;l<u;++l){var c={front:n[l],back:r[l],left:s[l],right:a[l],top:o[l],bottom:h[l]};e.push(c)}}else t.length>1&&t.forEach((function(t){var i={front:t.front.extractMipmap0(),back:t.back.extractMipmap0(),left:t.left.extractMipmap0(),right:t.right.extractMipmap0(),top:t.top.extractMipmap0(),bottom:t.bottom.extractMipmap0()};e.push(i)}));this._setMipmapParams(e)}},{key:"mipmapAtlas",get:function(){return this._mipmapAtlas},set:function(t){var e=this;if(this._mipmapAtlas=t,this._mipmapAtlas){var i=this._mipmapAtlas.atlas.front;if(i.data){var n=this._mipmapAtlas.atlas,r=this._mipmapAtlas.layout,s=r[0],a=Object.assign(A.document.createElement("canvas"),{width:i.width,height:i.height}).getContext("2d");this.reset({width:s.width,height:s.height,format:i.format,mipmapLevel:r.length});for(var o=function(){var t=r[h];lg(n,(function(n,r){a.clearRect(0,0,i.width,i.height);var s=n.data;a.drawImage(s,0,0);var o=a.getImageData(t.left,t.top,t.width,t.height),h=new Vd({_data:o.data,_compressed:n.isCompressed,width:o.width,height:o.height,format:n.format});e._assignImage(h,t.level,r)}))},h=0;h<r.length;h++)o()}}else this.reset({width:0,height:0,mipmapLevel:0})}},{key:"image",get:function(){return 0===this._mipmaps.length?null:this._mipmaps[0]},set:function(t){this.mipmaps=t?[t]:[]}}]),e}(um)).FaceIndex=Km,Wm=ja((Hm=qm).prototype,"isRGBE",[lo],(function(){return!1})),Xm=ja(Hm.prototype,"_mipmapAtlas",[lo],(function(){return null})),jm=ja(Hm.prototype,"_mipmapMode",[lo],(function(){return Qm.NONE})),Ym=ja(Hm.prototype,"_mipmaps",[lo],(function(){return[]})),zm=Hm))||zm);function lg(t,e){e(t.front,Km.front),e(t.back,Km.back),e(t.left,Km.left),e(t.right,Km.right),e(t.top,Km.top),e(t.bottom,Km.bottom)}S.TextureCube=ug;var cg,_g,fg,dg,pg,mg,gg,vg,yg,Sg,Tg,Ag,bg,Eg,Cg,xg,wg=function(){function t(){this._groundAlbedoHDR=new cn(.2,.2,.2,1),this._skyColorHDR=new cn(.2,.5,.8,1),this._skyIllumHDR=0,this._groundAlbedoLDR=new cn(.2,.2,.2,1),this._skyColorLDR=new cn(.2,.5,.8,1),this._skyIllumLDR=0,this._mipmapCount=1,this._enabled=!1}return t.prototype.initialize=function(t){this._skyColorHDR=t.skyColorHDR,this._groundAlbedoHDR.set(t.groundAlbedoHDR),this._skyIllumHDR=t.skyIllumHDR,this._skyColorLDR=t.skyColorLDR,this._groundAlbedoLDR.set(t.groundAlbedoLDR),this._skyIllumLDR=t.skyIllumLDR},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t}},{key:"skyColor",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._skyColorHDR:this._skyColorLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this._skyColorHDR.set(t):this._skyColorLDR.set(t)}},{key:"skyIllum",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._skyIllumHDR:this._skyIllumLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this._skyIllumHDR=t:this._skyIllumLDR=t}},{key:"groundAlbedo",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._groundAlbedoHDR:this._groundAlbedoLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this._groundAlbedoHDR.set(t):this._groundAlbedoLDR.set(t)}}]),t}();wg.SUN_ILLUM=65e3,wg.SKY_ILLUM=2e4,S.Ambient=wg,function(t){t[t.DEFAULT=100]="DEFAULT",t[t.UI=200]="UI"}(Cg||(Cg={})),S.RenderPassStage=Cg,function(t){t[t.MIN=0]="MIN",t[t.MAX=255]="MAX",t[t.DEFAULT=128]="DEFAULT"}(xg||(xg={}));var Rg,Ig={bindings:[],layouts:{}},Dg={bindings:[],layouts:{}};!function(t){t[t.UBO_GLOBAL=0]="UBO_GLOBAL",t[t.UBO_CAMERA=1]="UBO_CAMERA",t[t.UBO_SHADOW=2]="UBO_SHADOW",t[t.UBO_CSM=3]="UBO_CSM",t[t.SAMPLER_SHADOWMAP=4]="SAMPLER_SHADOWMAP",t[t.SAMPLER_ENVIRONMENT=5]="SAMPLER_ENVIRONMENT",t[t.SAMPLER_SPOT_SHADOW_MAP=6]="SAMPLER_SPOT_SHADOW_MAP",t[t.SAMPLER_DIFFUSEMAP=7]="SAMPLER_DIFFUSEMAP",t[t.COUNT=8]="COUNT"}(Rg||(Rg={}));var Bg,Mg=Rg.SAMPLER_SHADOWMAP,Pg=Rg.COUNT-Mg;!function(t){t[t.UBO_LOCAL=0]="UBO_LOCAL",t[t.UBO_FORWARD_LIGHTS=1]="UBO_FORWARD_LIGHTS",t[t.UBO_SKINNING_ANIMATION=2]="UBO_SKINNING_ANIMATION",t[t.UBO_SKINNING_TEXTURE=3]="UBO_SKINNING_TEXTURE",t[t.UBO_MORPH=4]="UBO_MORPH",t[t.UBO_UI_LOCAL=5]="UBO_UI_LOCAL",t[t.UBO_SH=6]="UBO_SH",t[t.SAMPLER_JOINTS=7]="SAMPLER_JOINTS",t[t.SAMPLER_MORPH_POSITION=8]="SAMPLER_MORPH_POSITION",t[t.SAMPLER_MORPH_NORMAL=9]="SAMPLER_MORPH_NORMAL",t[t.SAMPLER_MORPH_TANGENT=10]="SAMPLER_MORPH_TANGENT",t[t.SAMPLER_LIGHTMAP=11]="SAMPLER_LIGHTMAP",t[t.SAMPLER_SPRITE=12]="SAMPLER_SPRITE",t[t.SAMPLER_REFLECTION=13]="SAMPLER_REFLECTION",t[t.STORAGE_REFLECTION=14]="STORAGE_REFLECTION",t[t.SAMPLER_REFLECTION_PROBE_CUBE=15]="SAMPLER_REFLECTION_PROBE_CUBE",t[t.SAMPLER_REFLECTION_PROBE_PLANAR=16]="SAMPLER_REFLECTION_PROBE_PLANAR",t[t.SAMPLER_REFLECTION_PROBE_DATA_MAP=17]="SAMPLER_REFLECTION_PROBE_DATA_MAP",t[t.SAMPLER_REFLECTION_PROBE_BLEND_CUBE=18]="SAMPLER_REFLECTION_PROBE_BLEND_CUBE",t[t.COUNT=19]="COUNT"}(Bg||(Bg={}));var Og,Lg=Bg.SAMPLER_JOINTS,Ng=Bg.STORAGE_REFLECTION-Lg,Fg=Bg.COUNT-Lg-Ng;!function(t){t[t.GLOBAL=0]="GLOBAL",t[t.MATERIAL=1]="MATERIAL",t[t.LOCAL=2]="LOCAL",t[t.COUNT=3]="COUNT"}(Og||(Og={}));var kg=new e_([Mg,0,Lg,0],[Pg,0,Ng,0],[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,Fg,0],[0,0,0,0],[0,2,1,3]),Gg=function(){};cg=Gg,Gg.TIME_OFFSET=0,Gg.SCREEN_SIZE_OFFSET=cg.TIME_OFFSET+4,Gg.NATIVE_SIZE_OFFSET=cg.SCREEN_SIZE_OFFSET+4,Gg.PROBE_INFO_OFFSET=cg.NATIVE_SIZE_OFFSET+4,Gg.DEBUG_VIEW_MODE_OFFSET=cg.PROBE_INFO_OFFSET+4,Gg.COUNT=cg.DEBUG_VIEW_MODE_OFFSET+4,Gg.SIZE=4*cg.COUNT,Gg.NAME="CCGlobal",Gg.BINDING=Rg.UBO_GLOBAL,Gg.DESCRIPTOR=new P_(cg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.ALL),Gg.LAYOUT=new f_(Og.GLOBAL,cg.BINDING,cg.NAME,[new __("cc_time",nc.FLOAT4,1),new __("cc_screenSize",nc.FLOAT4,1),new __("cc_nativeSize",nc.FLOAT4,1),new __("cc_probeInfo",nc.FLOAT4,1),new __("cc_debug_view_mode",nc.FLOAT4,1)],1),Ig.layouts[Gg.NAME]=Gg.LAYOUT,Ig.bindings[Gg.BINDING]=Gg.DESCRIPTOR;var Vg=function(){};_g=Vg,Vg.MAT_VIEW_OFFSET=0,Vg.MAT_VIEW_INV_OFFSET=_g.MAT_VIEW_OFFSET+16,Vg.MAT_PROJ_OFFSET=_g.MAT_VIEW_INV_OFFSET+16,Vg.MAT_PROJ_INV_OFFSET=_g.MAT_PROJ_OFFSET+16,Vg.MAT_VIEW_PROJ_OFFSET=_g.MAT_PROJ_INV_OFFSET+16,Vg.MAT_VIEW_PROJ_INV_OFFSET=_g.MAT_VIEW_PROJ_OFFSET+16,Vg.CAMERA_POS_OFFSET=_g.MAT_VIEW_PROJ_INV_OFFSET+16,Vg.SURFACE_TRANSFORM_OFFSET=_g.CAMERA_POS_OFFSET+4,Vg.SCREEN_SCALE_OFFSET=_g.SURFACE_TRANSFORM_OFFSET+4,Vg.EXPOSURE_OFFSET=_g.SCREEN_SCALE_OFFSET+4,Vg.MAIN_LIT_DIR_OFFSET=_g.EXPOSURE_OFFSET+4,Vg.MAIN_LIT_COLOR_OFFSET=_g.MAIN_LIT_DIR_OFFSET+4,Vg.AMBIENT_SKY_OFFSET=_g.MAIN_LIT_COLOR_OFFSET+4,Vg.AMBIENT_GROUND_OFFSET=_g.AMBIENT_SKY_OFFSET+4,Vg.GLOBAL_FOG_COLOR_OFFSET=_g.AMBIENT_GROUND_OFFSET+4,Vg.GLOBAL_FOG_BASE_OFFSET=_g.GLOBAL_FOG_COLOR_OFFSET+4,Vg.GLOBAL_FOG_ADD_OFFSET=_g.GLOBAL_FOG_BASE_OFFSET+4,Vg.NEAR_FAR_OFFSET=_g.GLOBAL_FOG_ADD_OFFSET+4,Vg.VIEW_PORT_OFFSET=_g.NEAR_FAR_OFFSET+4,Vg.COUNT=_g.VIEW_PORT_OFFSET+4,Vg.SIZE=4*_g.COUNT,Vg.NAME="CCCamera",Vg.BINDING=Rg.UBO_CAMERA,Vg.DESCRIPTOR=new P_(_g.BINDING,Pc.UNIFORM_BUFFER,1,Tc.ALL),Vg.LAYOUT=new f_(Og.GLOBAL,_g.BINDING,_g.NAME,[new __("cc_matView",nc.MAT4,1),new __("cc_matViewInv",nc.MAT4,1),new __("cc_matProj",nc.MAT4,1),new __("cc_matProjInv",nc.MAT4,1),new __("cc_matViewProj",nc.MAT4,1),new __("cc_matViewProjInv",nc.MAT4,1),new __("cc_cameraPos",nc.FLOAT4,1),new __("cc_surfaceTransform",nc.FLOAT4,1),new __("cc_screenScale",nc.FLOAT4,1),new __("cc_exposure",nc.FLOAT4,1),new __("cc_mainLitDir",nc.FLOAT4,1),new __("cc_mainLitColor",nc.FLOAT4,1),new __("cc_ambientSky",nc.FLOAT4,1),new __("cc_ambientGround",nc.FLOAT4,1),new __("cc_fogColor",nc.FLOAT4,1),new __("cc_fogBase",nc.FLOAT4,1),new __("cc_fogAdd",nc.FLOAT4,1),new __("cc_nearFar",nc.FLOAT4,1),new __("cc_viewPort",nc.FLOAT4,1)],1),Ig.layouts[Vg.NAME]=Vg.LAYOUT,Ig.bindings[Vg.BINDING]=Vg.DESCRIPTOR;var Ug=function(){};fg=Ug,Ug.MAT_LIGHT_VIEW_OFFSET=0,Ug.MAT_LIGHT_VIEW_PROJ_OFFSET=fg.MAT_LIGHT_VIEW_OFFSET+16,Ug.SHADOW_INV_PROJ_DEPTH_INFO_OFFSET=fg.MAT_LIGHT_VIEW_PROJ_OFFSET+16,Ug.SHADOW_PROJ_DEPTH_INFO_OFFSET=fg.SHADOW_INV_PROJ_DEPTH_INFO_OFFSET+4,Ug.SHADOW_PROJ_INFO_OFFSET=fg.SHADOW_PROJ_DEPTH_INFO_OFFSET+4,Ug.SHADOW_NEAR_FAR_LINEAR_SATURATION_INFO_OFFSET=fg.SHADOW_PROJ_INFO_OFFSET+4,Ug.SHADOW_WIDTH_HEIGHT_PCF_BIAS_INFO_OFFSET=fg.SHADOW_NEAR_FAR_LINEAR_SATURATION_INFO_OFFSET+4,Ug.SHADOW_LIGHT_PACKING_NBIAS_NULL_INFO_OFFSET=fg.SHADOW_WIDTH_HEIGHT_PCF_BIAS_INFO_OFFSET+4,Ug.SHADOW_COLOR_OFFSET=fg.SHADOW_LIGHT_PACKING_NBIAS_NULL_INFO_OFFSET+4,Ug.PLANAR_NORMAL_DISTANCE_INFO_OFFSET=fg.SHADOW_COLOR_OFFSET+4,Ug.COUNT=fg.PLANAR_NORMAL_DISTANCE_INFO_OFFSET+4,Ug.SIZE=4*fg.COUNT,Ug.NAME="CCShadow",Ug.BINDING=Rg.UBO_SHADOW,Ug.DESCRIPTOR=new P_(fg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.ALL),Ug.LAYOUT=new f_(Og.GLOBAL,fg.BINDING,fg.NAME,[new __("cc_matLightView",nc.MAT4,1),new __("cc_matLightViewProj",nc.MAT4,1),new __("cc_shadowInvProjDepthInfo",nc.FLOAT4,1),new __("cc_shadowProjDepthInfo",nc.FLOAT4,1),new __("cc_shadowProjInfo",nc.FLOAT4,1),new __("cc_shadowNFLSInfo",nc.FLOAT4,1),new __("cc_shadowWHPBInfo",nc.FLOAT4,1),new __("cc_shadowLPNNInfo",nc.FLOAT4,1),new __("cc_shadowColor",nc.FLOAT4,1),new __("cc_planarNDInfo",nc.FLOAT4,1)],1),Ig.layouts[Ug.NAME]=Ug.LAYOUT,Ig.bindings[Ug.BINDING]=Ug.DESCRIPTOR;var zg=function(){};dg=zg,zg.CSM_LEVEL_COUNT=4,zg.CSM_VIEW_DIR_0_OFFSET=0,zg.CSM_VIEW_DIR_1_OFFSET=dg.CSM_VIEW_DIR_0_OFFSET+4*dg.CSM_LEVEL_COUNT,zg.CSM_VIEW_DIR_2_OFFSET=dg.CSM_VIEW_DIR_1_OFFSET+4*dg.CSM_LEVEL_COUNT,zg.CSM_ATLAS_OFFSET=dg.CSM_VIEW_DIR_2_OFFSET+4*dg.CSM_LEVEL_COUNT,zg.MAT_CSM_VIEW_PROJ_OFFSET=dg.CSM_ATLAS_OFFSET+4*dg.CSM_LEVEL_COUNT,zg.CSM_PROJ_DEPTH_INFO_OFFSET=dg.MAT_CSM_VIEW_PROJ_OFFSET+16*dg.CSM_LEVEL_COUNT,zg.CSM_PROJ_INFO_OFFSET=dg.CSM_PROJ_DEPTH_INFO_OFFSET+4*dg.CSM_LEVEL_COUNT,zg.CSM_SPLITS_INFO_OFFSET=dg.CSM_PROJ_INFO_OFFSET+4*dg.CSM_LEVEL_COUNT,zg.COUNT=dg.CSM_SPLITS_INFO_OFFSET+4,zg.SIZE=4*dg.COUNT,zg.NAME="CCCSM",zg.BINDING=Rg.UBO_CSM,zg.DESCRIPTOR=new P_(dg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.FRAGMENT),zg.LAYOUT=new f_(Og.GLOBAL,dg.BINDING,dg.NAME,[new __("cc_csmViewDir0",nc.FLOAT4,dg.CSM_LEVEL_COUNT),new __("cc_csmViewDir1",nc.FLOAT4,dg.CSM_LEVEL_COUNT),new __("cc_csmViewDir2",nc.FLOAT4,dg.CSM_LEVEL_COUNT),new __("cc_csmAtlas",nc.FLOAT4,dg.CSM_LEVEL_COUNT),new __("cc_matCSMViewProj",nc.MAT4,dg.CSM_LEVEL_COUNT),new __("cc_csmProjDepthInfo",nc.FLOAT4,dg.CSM_LEVEL_COUNT),new __("cc_csmProjInfo",nc.FLOAT4,dg.CSM_LEVEL_COUNT),new __("cc_csmSplitsInfo",nc.FLOAT4,1)],1),Ig.layouts[zg.NAME]=zg.LAYOUT,Ig.bindings[zg.BINDING]=zg.DESCRIPTOR;var Hg=Rg.SAMPLER_SHADOWMAP,Wg=new P_(Hg,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),Xg=new d_(Og.GLOBAL,Hg,"cc_shadowMap",nc.SAMPLER2D,1);Ig.layouts.cc_shadowMap=Xg,Ig.bindings[Hg]=Wg;var jg=Rg.SAMPLER_ENVIRONMENT,Yg=new P_(jg,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),qg=new d_(Og.GLOBAL,jg,"cc_environment",nc.SAMPLER_CUBE,1);Ig.layouts.cc_environment=qg,Ig.bindings[jg]=Yg;var Kg=Rg.SAMPLER_DIFFUSEMAP,Qg=new P_(Kg,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),Zg=new d_(Og.GLOBAL,Kg,"cc_diffuseMap",nc.SAMPLER_CUBE,1);Ig.layouts.cc_diffuseMap=Zg,Ig.bindings[Kg]=Qg;var Jg=Rg.SAMPLER_SPOT_SHADOW_MAP,$g=new P_(Jg,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),tv=new d_(Og.GLOBAL,Jg,"cc_spotShadowMap",nc.SAMPLER2D,1);Ig.layouts.cc_spotShadowMap=tv,Ig.bindings[Jg]=$g;var ev=function(){};pg=ev,ev.MAT_WORLD_OFFSET=0,ev.MAT_WORLD_IT_OFFSET=pg.MAT_WORLD_OFFSET+16,ev.LIGHTINGMAP_UVPARAM=pg.MAT_WORLD_IT_OFFSET+16,ev.LOCAL_SHADOW_BIAS=pg.LIGHTINGMAP_UVPARAM+4,ev.REFLECTION_PROBE_DATA1=pg.LOCAL_SHADOW_BIAS+4,ev.REFLECTION_PROBE_DATA2=pg.REFLECTION_PROBE_DATA1+4,ev.REFLECTION_PROBE_BLEND_DATA1=pg.REFLECTION_PROBE_DATA2+4,ev.REFLECTION_PROBE_BLEND_DATA2=pg.REFLECTION_PROBE_BLEND_DATA1+4,ev.COUNT=pg.REFLECTION_PROBE_BLEND_DATA2+4,ev.SIZE=4*pg.COUNT,ev.NAME="CCLocal",ev.BINDING=Bg.UBO_LOCAL,ev.DESCRIPTOR=new P_(pg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.VERTEX|Tc.FRAGMENT|Tc.COMPUTE),ev.LAYOUT=new f_(Og.LOCAL,pg.BINDING,pg.NAME,[new __("cc_matWorld",nc.MAT4,1),new __("cc_matWorldIT",nc.MAT4,1),new __("cc_lightingMapUVParam",nc.FLOAT4,1),new __("cc_localShadowBias",nc.FLOAT4,1),new __("cc_reflectionProbeData1",nc.FLOAT4,1),new __("cc_reflectionProbeData2",nc.FLOAT4,1),new __("cc_reflectionProbeBlendData1",nc.FLOAT4,1),new __("cc_reflectionProbeBlendData2",nc.FLOAT4,1)],1),Dg.layouts[ev.NAME]=ev.LAYOUT,Dg.bindings[ev.BINDING]=ev.DESCRIPTOR;var iv=function(){};mg=iv,iv.WORLD_BOUND_CENTER=0,iv.WORLD_BOUND_HALF_EXTENTS=mg.WORLD_BOUND_CENTER+4,iv.COUNT=mg.WORLD_BOUND_HALF_EXTENTS+4,iv.SIZE=4*mg.COUNT,iv.NAME="CCWorldBound",iv.BINDING=Bg.UBO_LOCAL,iv.DESCRIPTOR=new P_(mg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.VERTEX|Tc.COMPUTE),iv.LAYOUT=new f_(Og.LOCAL,mg.BINDING,mg.NAME,[new __("cc_worldBoundCenter",nc.FLOAT4,1),new __("cc_worldBoundHalfExtents",nc.FLOAT4,1)],1),Dg.layouts[iv.NAME]=iv.LAYOUT,Dg.bindings[iv.BINDING]=iv.DESCRIPTOR;var nv="a_matWorld0",rv="a_sh_linear_const_r",sv=function(){};gg=sv,sv.BATCHING_COUNT=10,sv.MAT_WORLDS_OFFSET=0,sv.COUNT=16*gg.BATCHING_COUNT,sv.SIZE=4*gg.COUNT,sv.NAME="CCLocalBatched",sv.BINDING=Bg.UBO_LOCAL,sv.DESCRIPTOR=new P_(gg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.VERTEX|Tc.COMPUTE),sv.LAYOUT=new f_(Og.LOCAL,gg.BINDING,gg.NAME,[new __("cc_matWorlds",nc.MAT4,gg.BATCHING_COUNT)],1),Dg.layouts[sv.NAME]=sv.LAYOUT,Dg.bindings[sv.BINDING]=sv.DESCRIPTOR;var av=function(){};vg=av,av.LIGHTS_PER_PASS=1,av.LIGHT_POS_OFFSET=0,av.LIGHT_COLOR_OFFSET=vg.LIGHT_POS_OFFSET+4*vg.LIGHTS_PER_PASS,av.LIGHT_SIZE_RANGE_ANGLE_OFFSET=vg.LIGHT_COLOR_OFFSET+4*vg.LIGHTS_PER_PASS,av.LIGHT_DIR_OFFSET=vg.LIGHT_SIZE_RANGE_ANGLE_OFFSET+4*vg.LIGHTS_PER_PASS,av.LIGHT_BOUNDING_SIZE_VS_OFFSET=vg.LIGHT_DIR_OFFSET+4*vg.LIGHTS_PER_PASS,av.COUNT=vg.LIGHT_BOUNDING_SIZE_VS_OFFSET+4*vg.LIGHTS_PER_PASS,av.SIZE=4*vg.COUNT,av.NAME="CCForwardLight",av.BINDING=Bg.UBO_FORWARD_LIGHTS,av.DESCRIPTOR=new P_(vg.BINDING,Pc.DYNAMIC_UNIFORM_BUFFER,1,Tc.FRAGMENT),av.LAYOUT=new f_(Og.LOCAL,vg.BINDING,vg.NAME,[new __("cc_lightPos",nc.FLOAT4,vg.LIGHTS_PER_PASS),new __("cc_lightColor",nc.FLOAT4,vg.LIGHTS_PER_PASS),new __("cc_lightSizeRangeAngle",nc.FLOAT4,vg.LIGHTS_PER_PASS),new __("cc_lightDir",nc.FLOAT4,vg.LIGHTS_PER_PASS),new __("cc_lightBoundingSizeVS",nc.FLOAT4,vg.LIGHTS_PER_PASS)],1),Dg.layouts[av.NAME]=av.LAYOUT,Dg.bindings[av.BINDING]=av.DESCRIPTOR;var ov=function(){};ov.LIGHTS_PER_PASS=10;var hv=function(){};yg=hv,hv.JOINTS_TEXTURE_INFO_OFFSET=0,hv.COUNT=yg.JOINTS_TEXTURE_INFO_OFFSET+4,hv.SIZE=4*yg.COUNT,hv.NAME="CCSkinningTexture",hv.BINDING=Bg.UBO_SKINNING_TEXTURE,hv.DESCRIPTOR=new P_(yg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.VERTEX),hv.LAYOUT=new f_(Og.LOCAL,yg.BINDING,yg.NAME,[new __("cc_jointTextureInfo",nc.FLOAT4,1)],1),Dg.layouts[hv.NAME]=hv.LAYOUT,Dg.bindings[hv.BINDING]=hv.DESCRIPTOR;var uv=function(){};Sg=uv,uv.JOINTS_ANIM_INFO_OFFSET=0,uv.COUNT=Sg.JOINTS_ANIM_INFO_OFFSET+4,uv.SIZE=4*Sg.COUNT,uv.NAME="CCSkinningAnimation",uv.BINDING=Bg.UBO_SKINNING_ANIMATION,uv.DESCRIPTOR=new P_(Sg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.VERTEX),uv.LAYOUT=new f_(Og.LOCAL,Sg.BINDING,Sg.NAME,[new __("cc_jointAnimInfo",nc.FLOAT4,1)],1),Dg.layouts[uv.NAME]=uv.LAYOUT,Dg.bindings[uv.BINDING]=uv.DESCRIPTOR;var lv="a_jointAnimInfo",cv=function(){function t(){}return t.initLayout=function(e){t._jointUniformCapacity=e,t._count=12*e,t._size=4*t._count,t.LAYOUT.members[0].count=3*e},n(t,null,[{key:"JOINT_UNIFORM_CAPACITY",get:function(){return t._jointUniformCapacity}},{key:"COUNT",get:function(){return t._count}},{key:"SIZE",get:function(){return t._size}}]),t}();function _v(t){cv.initLayout(t),Dg.layouts[cv.NAME]=cv.LAYOUT,Dg.bindings[cv.BINDING]=cv.DESCRIPTOR}Tg=cv,cv._jointUniformCapacity=0,cv._count=0,cv._size=0,cv.NAME="CCSkinning",cv.BINDING=Bg.UBO_SKINNING_TEXTURE,cv.DESCRIPTOR=new P_(Tg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.VERTEX),cv.LAYOUT=new f_(Og.LOCAL,Tg.BINDING,Tg.NAME,[new __("cc_joints",nc.FLOAT4,1)],1);var fv=function(){};Ag=fv,fv.MAX_MORPH_TARGET_COUNT=60,fv.OFFSET_OF_WEIGHTS=0,fv.OFFSET_OF_DISPLACEMENT_TEXTURE_WIDTH=4*Ag.MAX_MORPH_TARGET_COUNT,fv.OFFSET_OF_DISPLACEMENT_TEXTURE_HEIGHT=Ag.OFFSET_OF_DISPLACEMENT_TEXTURE_WIDTH+4,fv.OFFSET_OF_VERTICES_COUNT=Ag.OFFSET_OF_DISPLACEMENT_TEXTURE_HEIGHT+4,fv.COUNT_BASE_4_BYTES=4*Math.ceil(Ag.MAX_MORPH_TARGET_COUNT/4)+4,fv.SIZE=4*Ag.COUNT_BASE_4_BYTES,fv.NAME="CCMorph",fv.BINDING=Bg.UBO_MORPH,fv.DESCRIPTOR=new P_(Ag.BINDING,Pc.UNIFORM_BUFFER,1,Tc.VERTEX),fv.LAYOUT=new f_(Og.LOCAL,Ag.BINDING,Ag.NAME,[new __("cc_displacementWeights",nc.FLOAT4,Ag.MAX_MORPH_TARGET_COUNT/4),new __("cc_displacementTextureInfo",nc.FLOAT4,1)],1),Dg.layouts[fv.NAME]=fv.LAYOUT,Dg.bindings[fv.BINDING]=fv.DESCRIPTOR;var dv=function(){};bg=dv,dv.NAME="CCUILocal",dv.BINDING=Bg.UBO_UI_LOCAL,dv.DESCRIPTOR=new P_(bg.BINDING,Pc.DYNAMIC_UNIFORM_BUFFER,1,Tc.VERTEX),dv.LAYOUT=new f_(Og.LOCAL,bg.BINDING,bg.NAME,[new __("cc_local_data",nc.FLOAT4,1)],1),Dg.layouts[dv.NAME]=dv.LAYOUT,Dg.bindings[dv.BINDING]=dv.DESCRIPTOR;var pv=function(){};Eg=pv,pv.SH_LINEAR_CONST_R_OFFSET=0,pv.SH_LINEAR_CONST_G_OFFSET=Eg.SH_LINEAR_CONST_R_OFFSET+4,pv.SH_LINEAR_CONST_B_OFFSET=Eg.SH_LINEAR_CONST_G_OFFSET+4,pv.SH_QUADRATIC_R_OFFSET=Eg.SH_LINEAR_CONST_B_OFFSET+4,pv.SH_QUADRATIC_G_OFFSET=Eg.SH_QUADRATIC_R_OFFSET+4,pv.SH_QUADRATIC_B_OFFSET=Eg.SH_QUADRATIC_G_OFFSET+4,pv.SH_QUADRATIC_A_OFFSET=Eg.SH_QUADRATIC_B_OFFSET+4,pv.COUNT=Eg.SH_QUADRATIC_A_OFFSET+4,pv.SIZE=4*Eg.COUNT,pv.NAME="CCSH",pv.BINDING=Bg.UBO_SH,pv.DESCRIPTOR=new P_(Eg.BINDING,Pc.UNIFORM_BUFFER,1,Tc.FRAGMENT),pv.LAYOUT=new f_(Og.LOCAL,Eg.BINDING,Eg.NAME,[new __("cc_sh_linear_const_r",nc.FLOAT4,1),new __("cc_sh_linear_const_g",nc.FLOAT4,1),new __("cc_sh_linear_const_b",nc.FLOAT4,1),new __("cc_sh_quadratic_r",nc.FLOAT4,1),new __("cc_sh_quadratic_g",nc.FLOAT4,1),new __("cc_sh_quadratic_b",nc.FLOAT4,1),new __("cc_sh_quadratic_a",nc.FLOAT4,1)],1),Dg.layouts[pv.NAME]=pv.LAYOUT,Dg.bindings[pv.BINDING]=pv.DESCRIPTOR;var mv=Bg.SAMPLER_JOINTS,gv=new P_(mv,Pc.SAMPLER_TEXTURE,1,Tc.VERTEX),vv=new d_(Og.LOCAL,mv,"cc_jointTexture",nc.SAMPLER2D,1);Dg.layouts.cc_jointTexture=vv,Dg.bindings[mv]=gv;var yv=Bg.SAMPLER_JOINTS,Sv=new P_(yv,Pc.SAMPLER_TEXTURE,1,Tc.VERTEX),Tv=new d_(Og.LOCAL,yv,"cc_realtimeJoint",nc.SAMPLER2D,1);Dg.layouts.cc_realtimeJoint=Tv,Dg.bindings[yv]=Sv;var Av=Bg.SAMPLER_MORPH_POSITION,bv=new P_(Av,Pc.SAMPLER_TEXTURE,1,Tc.VERTEX),Ev=new d_(Og.LOCAL,Av,"cc_PositionDisplacements",nc.SAMPLER2D,1);Dg.layouts.cc_PositionDisplacements=Ev,Dg.bindings[Av]=bv;var Cv=Bg.SAMPLER_MORPH_NORMAL,xv=new P_(Cv,Pc.SAMPLER_TEXTURE,1,Tc.VERTEX),wv=new d_(Og.LOCAL,Cv,"cc_NormalDisplacements",nc.SAMPLER2D,1);Dg.layouts.cc_NormalDisplacements=wv,Dg.bindings[Cv]=xv;var Rv=Bg.SAMPLER_MORPH_TANGENT,Iv=new P_(Rv,Pc.SAMPLER_TEXTURE,1,Tc.VERTEX),Dv=new d_(Og.LOCAL,Rv,"cc_TangentDisplacements",nc.SAMPLER2D,1);Dg.layouts.cc_TangentDisplacements=Dv,Dg.bindings[Rv]=Iv;var Bv=Bg.SAMPLER_LIGHTMAP,Mv=new P_(Bv,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),Pv=new d_(Og.LOCAL,Bv,"cc_lightingMap",nc.SAMPLER2D,1);Dg.layouts.cc_lightingMap=Pv,Dg.bindings[Bv]=Mv;var Ov=Bg.SAMPLER_SPRITE,Lv=new P_(Ov,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),Nv=new d_(Og.LOCAL,Ov,"cc_spriteTexture",nc.SAMPLER2D,1);Dg.layouts.cc_spriteTexture=Nv,Dg.bindings[Ov]=Lv;var Fv=Bg.SAMPLER_REFLECTION,kv=new P_(Fv,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),Gv=new d_(Og.LOCAL,Fv,"cc_reflectionTexture",nc.SAMPLER2D,1);Dg.layouts.cc_reflectionTexture=Gv,Dg.bindings[Fv]=kv;var Vv=Bg.STORAGE_REFLECTION,Uv=new P_(Vv,Pc.STORAGE_IMAGE,1,Tc.COMPUTE),zv=new g_(Og.LOCAL,Vv,"cc_reflectionStorage",nc.IMAGE2D,1);Dg.layouts.cc_reflectionStorage=zv,Dg.bindings[Vv]=Uv;var Hv=Bg.SAMPLER_REFLECTION_PROBE_CUBE,Wv=new P_(Hv,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),Xv=new d_(Og.LOCAL,Hv,"cc_reflectionProbeCubemap",nc.SAMPLER_CUBE,1);Dg.layouts.cc_reflectionProbeCubemap=Xv,Dg.bindings[Hv]=Wv;var jv=Bg.SAMPLER_REFLECTION_PROBE_PLANAR,Yv=new P_(jv,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),qv=new d_(Og.LOCAL,jv,"cc_reflectionProbePlanarMap",nc.SAMPLER2D,1);Dg.layouts.cc_reflectionProbePlanarMap=qv,Dg.bindings[jv]=Yv;var Kv=Bg.SAMPLER_REFLECTION_PROBE_DATA_MAP,Qv=new P_(Kv,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),Zv=new d_(Og.LOCAL,Kv,"cc_reflectionProbeDataMap",nc.SAMPLER2D,1);Dg.layouts.cc_reflectionProbeDataMap=Zv,Dg.bindings[Kv]=Qv;var Jv=Bg.SAMPLER_REFLECTION_PROBE_BLEND_CUBE,$v=new P_(Jv,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT),ty=new d_(Og.LOCAL,Jv,"cc_reflectionProbeBlendCubemap",nc.SAMPLER_CUBE,1);Dg.layouts.cc_reflectionProbeBlendCubemap=ty,Dg.bindings[Jv]=$v;var ey,iy,ny,ry,sy=dm.makeMaskExclude([dm.BitMask.UI_2D,dm.BitMask.GIZMOS,dm.BitMask.EDITOR,dm.BitMask.SCENE_GIZMO,dm.BitMask.PROFILER]),ay=dm.makeMaskExclude([dm.BitMask.UI_2D,dm.BitMask.PROFILER]),oy=dm.Enum.ALL;function hy(t){if(ey)return ey;var e=new u_(hc.TEX2D,uc.NONE,uy(t)?ec.R32F:ec.RGBA8,16,16,lc.NONE,1,1,_c.X1,1);return ey=t.createTexture(e)}function uy(t){return(t.getFormatFeatures(ec.R32F)&(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE))==(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE)&&!(t.gfxAPI===Jl.WEBGL)}function ly(t){return(t.getFormatFeatures(ec.RGBA16F)&(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE))==(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE)}function cy(){return!(!S.rendering||!S.rendering.enableEffectImport)}t("dc",Object.freeze({__proto__:null,PIPELINE_FLOW_MAIN:"MainFlow",PIPELINE_FLOW_FORWARD:"ForwardFlow",PIPELINE_FLOW_SHADOW:"ShadowFlow",PIPELINE_FLOW_SMAA:"SMAAFlow",PIPELINE_FLOW_TONEMAP:"ToneMapFlow",get RenderPassStage(){return Cg},get RenderPriority(){return xg},globalDescriptorSetLayout:Ig,localDescriptorSetLayout:Dg,get PipelineGlobalBindings(){return Rg},get ModelLocalBindings(){return Bg},get SetIndex(){return Og},bindingMappingInfo:kg,UBOGlobal:Gg,UBOCamera:Vg,UBOShadow:Ug,UBOCSM:zg,UNIFORM_SHADOWMAP_BINDING:Hg,UNIFORM_ENVIRONMENT_BINDING:jg,UNIFORM_DIFFUSEMAP_BINDING:Kg,UNIFORM_SPOT_SHADOW_MAP_TEXTURE_BINDING:Jg,UBOLocal:ev,UBOWorldBound:iv,INST_MAT_WORLD:nv,INST_SH:rv,UBOLocalBatched:sv,UBOForwardLight:av,UBODeferredLight:ov,JOINT_UNIFORM_CAPACITY:30,UBOSkinningTexture:hv,UBOSkinningAnimation:uv,INST_JOINT_ANIM_INFO:lv,UBOSkinning:cv,localDescriptorSetLayout_ResizeMaxJoints:_v,UBOMorph:fv,UBOUILocal:dv,UBOSH:pv,UNIFORM_JOINT_TEXTURE_BINDING:mv,UNIFORM_REALTIME_JOINT_TEXTURE_BINDING:yv,UNIFORM_POSITION_MORPH_TEXTURE_BINDING:Av,UNIFORM_NORMAL_MORPH_TEXTURE_BINDING:Cv,UNIFORM_TANGENT_MORPH_TEXTURE_BINDING:Rv,UNIFORM_LIGHTMAP_TEXTURE_BINDING:Bv,UNIFORM_SPRITE_TEXTURE_BINDING:Ov,UNIFORM_REFLECTION_TEXTURE_BINDING:Fv,UNIFORM_REFLECTION_STORAGE_BINDING:Vv,UNIFORM_REFLECTION_PROBE_CUBEMAP_BINDING:Hv,UNIFORM_REFLECTION_PROBE_TEXTURE_BINDING:jv,UNIFORM_REFLECTION_PROBE_DATA_MAP_BINDING:Kv,UNIFORM_REFLECTION_PROBE_BLEND_CUBEMAP_BINDING:Jv,CAMERA_DEFAULT_MASK:sy,CAMERA_EDITOR_MASK:ay,MODEL_ALWAYS_MASK:oy,supportsR16HalfFloatTexture:function(t){return(t.getFormatFeatures(ec.R16F)&(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE))==(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE)},getDefaultShadowTexture:hy,supportsR32FloatTexture:uy,supportsRGBA16HalfFloatTexture:ly,supportsRGBA32FloatTexture:function(t){return(t.getFormatFeatures(ec.RGBA32F)&(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE))==(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE)},isEnableEffect:cy}));var _y=4227858432,fy=66060288,dy=1044480,py=function(t,e,i,n){return void 0===n&&(n=0),e<<26&_y|t<<20&fy|i<<12&dy|4095&n},my=function(t){return(t&_y)>>>26},gy=function(t){return(t&fy)>>>20},vy=function(t){return(t&dy)>>>12},yy=function(t){return 4095&t},Sy=function(t,e){return 67108863&t|e<<26&_y},Ty=((iy={})[nc.UNKNOWN]=function(t,e,i){return void 0===i&&(i=0),tt(12010,i)},iy[nc.INT]=function(t,e,i){return void 0===i&&(i=0),t[i]},iy[nc.INT2]=function(t,e,i){return void 0===i&&(i=0),jn.fromArray(e,t,i)},iy[nc.INT3]=function(t,e,i){return void 0===i&&(i=0),gn.fromArray(e,t,i)},iy[nc.INT4]=function(t,e,i){return void 0===i&&(i=0),cn.fromArray(e,t,i)},iy[nc.FLOAT]=function(t,e,i){return void 0===i&&(i=0),t[i]},iy[nc.FLOAT2]=function(t,e,i){return void 0===i&&(i=0),jn.fromArray(e,t,i)},iy[nc.FLOAT3]=function(t,e,i){return void 0===i&&(i=0),gn.fromArray(e,t,i)},iy[nc.FLOAT4]=function(t,e,i){return void 0===i&&(i=0),cn.fromArray(e,t,i)},iy[nc.MAT3]=function(t,e,i){return void 0===i&&(i=0),wn.fromArray(e,t,i)},iy[nc.MAT4]=function(t,e,i){return void 0===i&&(i=0),Vn.fromArray(e,t,i)},iy),Ay=((ny={})[nc.UNKNOWN]=function(t,e,i){return void 0===i&&(i=0),tt(12010,i)},ny[nc.INT]=function(t,e,i){return void 0===i&&(i=0),t[i]=e},ny[nc.INT2]=function(t,e,i){return void 0===i&&(i=0),jn.toArray(t,e,i)},ny[nc.INT3]=function(t,e,i){return void 0===i&&(i=0),gn.toArray(t,e,i)},ny[nc.INT4]=function(t,e,i){return void 0===i&&(i=0),cn.toArray(t,e,i)},ny[nc.FLOAT]=function(t,e,i){return void 0===i&&(i=0),t[i]=e},ny[nc.FLOAT2]=function(t,e,i){return void 0===i&&(i=0),jn.toArray(t,e,i)},ny[nc.FLOAT3]=function(t,e,i){return void 0===i&&(i=0),gn.toArray(t,e,i)},ny[nc.FLOAT4]=function(t,e,i){return void 0===i&&(i=0),cn.toArray(t,e,i)},ny[nc.MAT3]=function(t,e,i){return void 0===i&&(i=0),wn.toArray(t,e,i)},ny[nc.MAT4]=function(t,e,i){return void 0===i&&(i=0),Vn.toArray(t,e,i)},ny),by=((ry={})[nc.INT]=function(t){return"number"==typeof t},ry[nc.FLOAT]=function(t){return"number"==typeof t},ry[nc.INT2]=function(t){return!!(t instanceof jn)},ry[nc.FLOAT2]=function(t){return!!(t instanceof jn)},ry[nc.INT3]=function(t){return!!(t instanceof gn)},ry[nc.FLOAT3]=function(t){return!!(t instanceof gn)},ry[nc.INT4]=function(t){return!!(t instanceof cn)},ry[nc.FLOAT4]=function(t){return!!(t instanceof cn||t instanceof En||t instanceof Bn)},ry[nc.MAT3]=function(t){return!!(t instanceof wn)},ry[nc.MAT4]=function(t){return!!(t instanceof Vn)},ry),Ey=[Object.freeze([0]),Object.freeze([0,0]),Object.freeze([0,0,0,0]),Object.freeze([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1])];function Cy(t){switch(t){case nc.BOOL:case nc.INT:case nc.UINT:case nc.FLOAT:return Ey[0];case nc.BOOL2:case nc.INT2:case nc.UINT2:case nc.FLOAT2:return Ey[1];case nc.BOOL4:case nc.INT4:case nc.UINT4:case nc.FLOAT4:return Ey[2];case nc.MAT4:return Ey[3];case nc.SAMPLER2D:return"default-texture";case nc.SAMPLER_CUBE:return"default-cube-texture";case nc.SAMPLER2D_ARRAY:return"default-array-texture";case nc.SAMPLER3D:return"default-3d-texture"}return Ey[0]}function xy(t){switch(t){case nc.SAMPLER2D:return"-texture";case nc.SAMPLER_CUBE:return"-cube-texture";case nc.SAMPLER2D_ARRAY:return"-array-texture";case nc.SAMPLER3D:return"-3d-texture";default:return"-unknown"}}function wy(t,e){for(var i=Object.entries(e),n=!1,r=0;r<i.length;r++)t[i[r][0]]!==i[r][1]&&(t[i[r][0]]=i[r][1],n=!0);return n}function Ry(t,e){switch(t.type){case"boolean":return"number"==typeof e?e.toString():e?"1":"0";case"string":return void 0!==e?e:t.options[0];case"number":return void 0!==e?e.toString():t.range[0].toString();default:return tt(16369),"-1"}}function Iy(t,e){for(var i=[],n=0;n<e.length;n++){var r=e[n],s=r.name,a=t[s],o=Ry(r,a),h=!a||"0"===a;i.push({name:s,value:o,isDefault:h})}return i}function Dy(t,e){return t+e.reduce((function(t,e){return e.isDefault?t:t+"|"+e.name+e.value}),"")}function By(t,e){for(var i=0;i<t.length;i++){var n=t[i];if("!"===n[0]){if(e[n.slice(1)])return!1}else if(!e[n])return!1}return!0}function My(t,e,i){for(var n=[],r=t.attributes,s=0;s<r.length;s++)By(r[s].defines,i)&&n.push(e[s]);return n}function Py(t,e){var i=t.defines;if(t.uber){for(var n="",r=0;r<i.length;r++){var s=i[r],a=e[s.name];if(a&&s._map){var o=s._map(a);n+=""+s._offset+o+"|"}}return""+n+t.hash}for(var h=0,u=0;u<i.length;u++){var l=i[u],c=e[l.name];c&&l._map&&(h|=l._map(c)<<l._offset)}return h.toString(16)+"|"+t.hash}var Oy=new Map;function Ly(t,e){if(e.count)return t+tf(e.type)*e.count;var i=Oy.get(e.name);return void 0!==i?t+tf(e.type)*i:(it(16345,e.name),t)}function Ny(t){return t.reduce(Ly,0)}function Fy(t){for(var e={},i=0;i<t.blocks.length;i++)for(var n=t.blocks[i],r=n.members,s=0,a=0;a<r.length;a++){var o=r[a];e[o.name]=py(n.binding,o.type,o.count,s),s+=(tf(o.type)>>2)*o.count}for(var h=0;h<t.samplerTextures.length;h++){var u=t.samplerTextures[h];e[u.name]=py(u.binding,u.type,u.count)}return e}function ky(t){return Math.ceil(Math.log2(Math.max(t,2)))}function Gy(t){for(var e=0,i=function(){var i=t.defines[n],r=1;if("number"===i.type){var s=i.range;r=ky(s[1]-s[0]+1),i._map=function(t){return t-s[0]}}else"string"===i.type?(r=ky(i.options.length),i._map=function(t){return Math.max(0,i.options.findIndex((function(e){return e===t})))}):"boolean"===i.type&&(i._map=function(t){return t?1:0});i._offset=e,e+=r},n=0;n<t.defines.length;n++)i();for(var r in e>31&&(t.uber=!0),t.constantMacros="",t.builtins.statistics)t.constantMacros+="#define "+r+" "+t.builtins.statistics[r]+"\n"}function Vy(t){return Object.keys(t).reduce((function(e,i){return e.reduce((function(e,n){for(var s=t[i],a=0;a<s.length;++a){var o=r({},n);o[i]=s[a],e.push(o)}return e}),[])}),[{}])}Oy.set("cc_joints",cv.LAYOUT.members[0].count),Oy.set("cc_lightPos",av.LIGHTS_PER_PASS),Oy.set("cc_lightColor",av.LIGHTS_PER_PASS),Oy.set("cc_lightSizeRangeAngle",av.LIGHTS_PER_PASS),Oy.set("cc_lightDir",av.LIGHTS_PER_PASS),Oy.set("cc_lightBoundingSizeVS",av.LIGHTS_PER_PASS);var Uy=new O_;function zy(t,e,i,n,r){for(var s=t.builtins[n],a=[],o=function(){var t=s.blocks[h],e=i.layouts[t.name],n=e&&i.bindings.find((function(t){return t.binding===e.binding}));if(!(e&&n&&n.descriptorType&Y_))return tt(16348,t.name),1;a.push(e),r&&!r.includes(n)&&r.push(n)},h=0;h<s.blocks.length;h++)o();Array.prototype.unshift.apply(e.shaderInfo.blocks,a);for(var u=[],l=function(){var t=s.samplerTextures[c],e=i.layouts[t.name],n=e&&i.bindings.find((function(t){return t.binding===e.binding}));if(!(e&&n&&n.descriptorType&q_))return tt(16349,t.name),1;u.push(e),r&&!r.includes(n)&&r.push(n)},c=0;c<s.samplerTextures.length;c++)l();Array.prototype.unshift.apply(e.shaderInfo.samplerTextures,u),r&&r.sort((function(t,e){return t.binding-e.binding}))}function Hy(t){switch(t.gfxAPI){case Jl.GLES2:case Jl.WEBGL:return"glsl1";case Jl.GLES3:case Jl.WEBGL2:return"glsl3";default:return"glsl4"}}var Wy,Xy,jy,Yy,qy,Ky,Qy,Zy=new(function(){function t(){this._templates={},this._cache={},this._templateInfos={}}var e=t.prototype;return e.register=function(t){for(var e=0;e<t.shaders.length;e++)this.define(t.shaders[e]).effectName=t.name;for(var i=0;i<t.techniques.length;i++)for(var n=t.techniques[i],r=0;r<n.passes.length;r++){var s=n.passes[r];void 0!==s.propertyIndex&&void 0===s.properties&&(s.properties=n.passes[s.propertyIndex].properties)}},e.define=function(t){var e=this._templates[t.name];if(e&&e.hash===t.hash)return e;var i=r({},t);if(Gy(i),this._templates[t.name]=i,!this._templateInfos[i.hash]){var n={};n.samplerStartBinding=i.blocks.length,n.shaderInfo=new A_,n.blockSizes=[],n.bindings=[];for(var s=0;s<i.blocks.length;s++){var a=i.blocks[s];n.blockSizes.push(Ny(a.members)),n.bindings.push(new P_(a.binding,Pc.UNIFORM_BUFFER,1,a.stageFlags)),n.shaderInfo.blocks.push(new f_(Og.MATERIAL,a.binding,a.name,a.members.map((function(t){return new __(t.name,t.type,t.count)})),1))}for(var o=0;o<i.samplerTextures.length;o++){var h=i.samplerTextures[o];n.bindings.push(new P_(h.binding,Pc.SAMPLER_TEXTURE,h.count,h.stageFlags)),n.shaderInfo.samplerTextures.push(new d_(Og.MATERIAL,h.binding,h.name,h.type,h.count))}for(var u=0;u<i.samplers.length;u++){var l=i.samplers[u];n.bindings.push(new P_(l.binding,Pc.SAMPLER,l.count,l.stageFlags)),n.shaderInfo.samplers.push(new p_(Og.MATERIAL,l.binding,l.name,l.count))}for(var c=0;c<i.textures.length;c++){var _=i.textures[c];n.bindings.push(new P_(_.binding,Pc.TEXTURE,_.count,_.stageFlags)),n.shaderInfo.textures.push(new m_(Og.MATERIAL,_.binding,_.name,_.type,_.count))}for(var f=0;f<i.buffers.length;f++){var d=i.buffers[f];n.bindings.push(new P_(d.binding,Pc.STORAGE_BUFFER,1,d.stageFlags)),n.shaderInfo.buffers.push(new v_(Og.MATERIAL,d.binding,d.name,1,d.memoryAccess))}for(var p=0;p<i.images.length;p++){var m=i.images[p];n.bindings.push(new P_(m.binding,Pc.STORAGE_IMAGE,m.count,m.stageFlags)),n.shaderInfo.images.push(new g_(Og.MATERIAL,m.binding,m.name,m.type,m.count,m.memoryAccess))}for(var g=0;g<i.subpassInputs.length;g++){var v=i.subpassInputs[g];n.bindings.push(new P_(v.binding,Pc.INPUT_ATTACHMENT,v.count,v.stageFlags)),n.shaderInfo.subpassInputs.push(new y_(Og.MATERIAL,v.binding,v.name,v.count))}n.gfxAttributes=[];for(var y=0;y<i.attributes.length;y++){var S=i.attributes[y];n.gfxAttributes.push(new T_(S.name,S.format,S.isNormalized,0,S.isInstanced,S.location))}zy(i,n,Dg,"locals"),n.shaderInfo.stages.push(new S_(Tc.VERTEX,"")),n.shaderInfo.stages.push(new S_(Tc.FRAGMENT,"")),n.handleMap=Fy(i),n.setLayouts=[],this._templateInfos[i.hash]=n}return i},e.getTemplate=function(t){return this._templates[t]},e.getTemplateInfo=function(t){var e=this._templates[t].hash;return this._templateInfos[e]},e.getDescriptorSetLayout=function(t,e,i){void 0===i&&(i=!1);var n=this._templates[e],r=this._templateInfos[n.hash];return r.setLayouts.length||(Uy.bindings=r.bindings,r.setLayouts[Og.MATERIAL]=t.createDescriptorSetLayout(Uy),Uy.bindings=Dg.bindings,r.setLayouts[Og.LOCAL]=t.createDescriptorSetLayout(Uy)),r.setLayouts[i?Og.LOCAL:Og.MATERIAL]},e.hasProgram=function(t){return void 0!==this._templates[t]},e.getKey=function(t,e){return Py(this._templates[t],e)},e.destroyShaderByDefines=function(t){var e=this,i=Object.keys(t);if(i.length)for(var n=i.map((function(e){var i=t[e];return"boolean"==typeof i&&(i=i?"1":"0"),new RegExp(""+e+i)})),r=Object.keys(this._cache).filter((function(t){return n.every((function(i){return i.test(e._cache[t].name)}))})),s=0;s<r.length;s++){var a=r[s],o=this._cache[a];X("destroyed shader "+o.name),o.destroy(),delete this._cache[a]}},e.getGFXShader=function(t,e,i,n,r){Object.assign(i,n.macros),r||(r=this.getKey(e,i));var s=this._cache[r];if(s)return s;var a=this._templates[e],o=this._templateInfos[a.hash];o.pipelineLayout||(this.getDescriptorSetLayout(t,e),zy(a,o,Ig,"globals"),o.setLayouts[Og.GLOBAL]=n.descriptorSetLayout,o.pipelineLayout=t.createPipelineLayout(new N_(o.setLayouts)));var h=Iy(i,a.defines),u=n.constantMacros+a.constantMacros+h.reduce((function(t,e){return t+"#define "+e.name+" "+e.value+"\n"}),""),l=a.glsl3,c=Hy(t);c?l=a[c]:it(16346),o.shaderInfo.stages[0].source=u+l.vert,o.shaderInfo.stages[1].source=u+l.frag,o.shaderInfo.attributes=My(a,o.gfxAttributes,i),o.shaderInfo.name=Dy(e,h);var _=o.shaderInfo;return this._cache[r]=t.createShader(_)},t}());S.programLib=Zy;var Jy=["planar-shadow","skybox","deferred-lighting","bloom","hbao","copy-pass","post-process","profiler","splash-screen","unlit","sprite","particle","particle-gpu","particle-trail","billboard","terrain","graphics","clear-stencil","spine","occlusion-query","geometry-renderer","debug-renderer","ssss-blur","float-output-process"],$y=t("e4",eo("cc.EffectAsset")(((Qy=function(t){function e(){var e;return(e=t.call(this)||this).techniques=jy&&jy(),e.shaders=Yy&&Yy(),e.combinations=qy&&qy(),e.hideInEditor=Ky&&Ky(),e}s(e,t),e.register=function(t){e._effects[t.name]=t,e._layoutValid=!1},e.remove=function(t){if("string"!=typeof t)e._effects[t.name]&&e._effects[t.name]===t&&delete e._effects[t.name];else{if(e._effects[t])return void delete e._effects[t];for(var i in e._effects)if(e._effects[i]._uuid===t)return void delete e._effects[i]}},e.get=function(t){if(e._effects[t])return e._effects[t];for(var i in e._effects)if(e._effects[i]._uuid===t)return e._effects[i];return Jy.includes(t)&&tt(16101,t),null},e.getAll=function(){return e._effects},e.isLayoutValid=function(){return e._layoutValid},e.setLayoutValid=function(){e._layoutValid=!0};var i=e.prototype;return i.onLoaded=function(){if(S.rendering&&S.rendering.enableEffectImport){!function(t){for(var e=0;e<t.techniques.length;e++)for(var i=t.techniques[e],n=0;n<i.passes.length;n++){var r=i.passes[n];void 0!==r.propertyIndex&&void 0===r.properties&&(r.properties=i.passes[r.propertyIndex].properties)}}(this);var t=S.rendering.programLib;t.addEffect(this),t.init(Ff.gfxDevice)}else Zy.register(this);e.register(this),S.game.once(S.Game.EVENT_RENDERER_INITED,this._precompile,this)},i._precompile=function(){var t=this;if(S.rendering&&S.rendering.enableEffectImport)S.rendering.programLib.precompileEffect(Ff.gfxDevice,this);else for(var e=S.director.root,i=function(){var i=t.shaders[n],r=t.combinations[n];if(!r)return 1;Vy(r).forEach((function(t){return Zy.getGFXShader(Ff.gfxDevice,i.name,t,e.pipeline)}))},n=0;n<this.shaders.length;n++)i()},i.destroy=function(){return e.remove(this),t.prototype.destroy.call(this)},i.initDefault=function(i){t.prototype.initDefault.call(this,i);var n=e.get("builtin-unlit");this.name="builtin-unlit",this.shaders=n.shaders,this.combinations=n.combinations,this.techniques=n.techniques},i.validate=function(){return this.techniques.length>0&&this.shaders.length>0},e}(vd))._effects={},Qy._layoutValid=!0,jy=ja((Xy=Qy).prototype,"techniques",[lo],(function(){return[]})),Yy=ja(Xy.prototype,"shaders",[lo],(function(){return[]})),qy=ja(Xy.prototype,"combinations",[lo],(function(){return[]})),Ky=ja(Xy.prototype,"hideInEditor",[lo,_o],(function(){return!1})),Wy=Xy))||Wy);S.EffectAsset=$y;var tS=function(){function t(){this.name="",this.base="",this.importBase="",this.nativeBase="",this.deps=null,this.assetInfos=new Uf,this.scenes=new Uf,this.paths=new Uf}var e=t.prototype;return e.init=function(t){var e=this;!function(t){var e=t.uuids,i=t.paths,n=t.types,r=t.deps,s=t.paths=Object.create(null);if(!1===t.debug){for(var a=0,o=e.length;a<o;a++)e[a]=sd(e[a]);for(var h in i){var u=i[h],l=u[1];u[1]=n[l]}}else{for(var c=Object.create(null),_=0,f=e.length;_<f;_++){var d=e[_];e[_]=c[d]=sd(d)}e=c}for(var p in i){var m=i[p];s[e[p]]=m}var g=t.scenes;for(var v in g){var y=g[v];g[v]=e[y]}var S=t.packs;for(var T in S)for(var A=S[T],b=0;b<A.length;++b)A[b]=e[A[b]];var E=t.versions;if(E)for(var C in E)for(var x=E[C],w=0;w<x.length;w+=2){var R=x[w];x[w]=e[R]||R}var I=t.redirect;if(I)for(var D=0;D<I.length;D+=2)I[D]=e[I[D]],I[D+1]=r[I[D+1]];if(t.extensionMap){var B=function(i){if(!Object.prototype.hasOwnProperty.call(t.extensionMap,i))return 1;t.extensionMap[i].forEach((function(n,r){t.extensionMap[i][r]=e[n]||n}))};for(var M in t.extensionMap)B(M)}}(t),this.importBase=t.importBase||"",this.nativeBase=t.nativeBase||"",this.base=t.base||"",this.name=t.name||"",this.deps=t.deps||[],this._initUuid(t.uuids),this._initPath(t.paths),this._initScene(t.scenes),this._initPackage(t.packs),this._initVersion(t.versions),this._initRedirect(t.redirect);var i=function(i){if(!Object.prototype.hasOwnProperty.call(t.extensionMap,i))return 1;t.extensionMap[i].forEach((function(t){var n=e.assetInfos.get(t);n&&(n.extension=i)}))};for(var n in t.extensionMap)i(n)},e.getInfoWithPath=function(t,e){if(!t)return null;t=ld(t);var i=this.paths.get(t);if(i){if(!e)return i[0];for(var n=0,r=i.length;n<r;n++){var s=i[n];if(Kt(s.ctor,e))return s}}return null},e.getDirWithPath=function(t,e,i){"/"===(t=ld(t))[t.length-1]&&(t=t.slice(0,-1));var n=i||[];return this.paths.forEach((function(i,r){if(r.startsWith(t)&&function(t,e){return!(t.length>e.length)||47===t.charCodeAt(e.length)}(r,t)||!t)for(var s=0,a=i.length;s<a;s++){var o=i[s];e&&!Kt(o.ctor,e)||n.push(o)}})),n},e.getAssetInfo=function(t){return this.assetInfos.get(t)||null},e.getSceneInfo=function(t){return t.endsWith(".scene")||(t+=".scene"),"/"===t[0]||t.startsWith("db://")||(t="/"+t),this.scenes.find((function(e,i){return i.endsWith(t)}))},e.destroy=function(){this.paths.destroy(),this.scenes.destroy(),this.assetInfos.destroy()},e._initUuid=function(t){if(t){this.assetInfos.clear();for(var e=0,i=t.length;e<i;e++){var n=t[e];this.assetInfos.add(n,{uuid:n})}}},e._initPath=function(t){if(t){var e=this.paths;for(var i in e.clear(),t){var n=t[i],r=n[0],s=n[1],a=3===n.length,o=this.assetInfos.get(i);o.path=r,o.ctor=ae(s),e.has(r)?a?e.get(r).push(o):e.get(r).unshift(o):e.add(r,[o])}}},e._initScene=function(t){if(t){var e=this.scenes;e.clear();var i=this.assetInfos;for(var n in t){var r=t[n],s=i.get(r);s.url=n,e.add(n,s)}}},e._initPackage=function(t){if(t){var e=this.assetInfos;for(var i in t){var n=t[i],r={uuid:i,packedUuids:n,ext:".json"};e.add(i,r);for(var s=0,a=n.length;s<a;s++){var o=n[s],h=e.get(o),u=h.packs;u?1===a?u.unshift(r):u.push(r):h.packs=[r]}}}},e._initVersion=function(t){if(t){var e=this.assetInfos,i=t.import;if(i)for(var n=0,r=i.length;n<r;n+=2){var s=i[n];e.get(s).ver=i[n+1]}if(i=t.native)for(var a=0,o=i.length;a<o;a+=2){var h=i[a];e.get(h).nativeVer=i[a+1]}}},e._initRedirect=function(t){if(t)for(var e=this.assetInfos,i=0,n=t.length;i<n;i+=2){var r=t[i];e.get(r).redirect=t[i+1]}},t}();function eS(t,e){t._uuid&&e.push(t._uuid)}function iS(t,e){for(var i=Object.getOwnPropertyNames(t),n=0;n<i.length;n++){var r=i[n];if("node"!==r&&"__eventTargets"!==r){var s=t[r];if("object"==typeof s&&s)if(Array.isArray(s))for(var a=0;a<s.length;a++){var o=s[a];o instanceof vd&&eS(o,e)}else if(s.constructor&&s.constructor!==Object)s instanceof vd&&eS(s,e);else for(var h=Object.getOwnPropertyNames(s),u=0;u<h.length;u++){var l=s[h[u]];l instanceof vd&&eS(l,e)}}}}function nS(t,e){for(var i=0;i<t._components.length;i++)iS(t._components[i],e);for(var n=0;n<t._children.length;n++)nS(t._children[n],e)}function rS(t,e,i,n){i.push(t._uuid);for(var r=em.getDeps(t._uuid),s=0,a=r.length;s<a;s++){var o=Wf.get(r[s]);if(o){var h=o._uuid;h in e?e[h]+=n:e[h]=o.refCount+n,i.includes(h)||rS(o,e,i,n)}}}var sS=[],aS=new(function(){function t(){this._persistNodeDeps=new Uf,this._toDelete=new Uf,this._eventListener=!1,this._dontDestroyAssets=[]}var e=t.prototype;return e.addIgnoredAsset=function(t){this._dontDestroyAssets.push(t._uuid)},e.init=function(){this._persistNodeDeps.clear(),this._toDelete.clear()},e._addPersistNodeRef=function(t){var e=[];nS(t,e);for(var i=0,n=e.length;i<n;i++){var r=Wf.get(e[i]);r&&r.addRef()}this._persistNodeDeps.add(t.uuid,e)},e._removePersistNodeRef=function(t){if(this._persistNodeDeps.has(t.uuid)){for(var e=this._persistNodeDeps.get(t.uuid),i=0,n=e.length;i<n;i++){var r=Wf.get(e[i]);r&&r.decRef()}this._persistNodeDeps.remove(t.uuid)}},e._autoRelease=function(t,e,i){if(t){for(var n=em.getDeps(t.uuid),r=0,s=n.length;r<s;r++){var a=Wf.get(n[r]);a&&a.decRef(t.autoReleaseAssets)}var o=em._depends.get(t.uuid);if(o&&o.persistDeps)for(var h=o.persistDeps,u=0,l=h.length;u<l;u++){var c=Wf.get(h[u]);c&&c.decRef(t.autoReleaseAssets)}t.uuid!==e.uuid&&em.remove(t.uuid)}var _=em._depends.get(e.uuid);for(var d in _&&(_.persistDeps=[]),i){for(var p,m,g=i[d],v=this._persistNodeDeps.get(g.uuid),y=f(v);!(m=y()).done;){var S=m.value,T=Wf.get(S);T&&T.addRef()}_&&(p=_.persistDeps).push.apply(p,v)}},e.tryRelease=function(t,e){void 0===e&&(e=!1),t instanceof vd&&(e?this._free(t,e):(this._toDelete.add(t._uuid,t),this._eventListener||(this._eventListener=!0,We(this._freeAssets.bind(this)))))},e._freeAssets=function(){var t=this;this._eventListener=!1,this._toDelete.forEach((function(e){t._free(e)})),this._toDelete.clear()},e._free=function(t,e){void 0===e&&(e=!1);var i=t._uuid;if(this._toDelete.remove(i),Os(t,!0)&&-1===this._dontDestroyAssets.indexOf(i)&&!(!e&&t.refCount>0&&function(t){var e=Object.create(null);if(e[t._uuid]=t.refCount,rS(t,e,sS,-1),sS.length=0,0!==e[t._uuid])return e[t._uuid];for(var i in e)0!==e[i]&&rS(Wf.get(i),e,sS,1);return sS.length=0,e[t._uuid]}(t)>0)){Wf.remove(i);for(var n=em.getDeps(i),r=0,s=n.length;r<s;r++){var a=Wf.get(n[r]);a&&(a.decRef(!1),this._free(a,!1))}t.destroy(),em.remove(i)}},t}()),oS=null;function hS(t,e){for(var i=0,n=t.input.length;i<n;i++){var r=t.input[i];e&&!r.isNative&&r.content instanceof vd&&r.content.decRef(!1),r.recycle()}t.input=null}function uS(t,e){return e?/\?/.test(t)?t+"&_t="+Date.now():t+"?_t="+Date.now():t}function lS(t,e,i,n,r){void 0===r&&(r=0),t(r,(function(s,a){r++,!s||r>e?n&&n(s,a):setTimeout((function(){lS(t,e,i,n,r)}),i)}))}function cS(t,e,i,n,s){try{for(var a=em.parse(t,e),o=0,h=a.deps.length;o<h;o++){var u=a.deps[o];u in i||(i[u]=!0,n.push({uuid:u,bundle:s&&s.name}))}a.nativeDep&&(s&&(a.nativeDep.bundle=s.name),n.push(r({},a.nativeDep)))}catch(t){H(t.message,t.stack)}}function _S(t,e,i){e&&(i=void 0!==i?i:S.assetManager.cacheAsset,ud(e)||!i||e.isDefault||Wf.add(t,e))}function fS(t,e,i){var n=0,r=[],s=t.length;0===s&&i&&i(r);for(var a=function(t){t&&r.push(t),++n===s&&i&&i(r)},o=0;o<s;o++)e(t[o],a)}function dS(t,e,i){var n=t,r=e,s=i;if(void 0===i){var a="function"==typeof t;e?(s=e,a||(r=null)):void 0===e&&a&&(s=t,n=null,r=null),void 0!==e&&a&&(r=t,n=null)}return{options:n||Object.create(null),onProgress:r,onComplete:s}}function pS(t,e,i){var n=t,r=e,s=i;if(void 0===i){var a=Kt(t,vd);e?(s=e,a&&(r=null)):void 0!==e||a||(s=t,r=null,n=null),void 0===e||a||(r=t,n=null)}return{type:n,onProgress:r||oS,onComplete:s}}function mS(t,e,i,n){if(void 0===n&&(n={}),!i[e]||n[e])return!1;n[e]=!0;var r=!1,s=em.getDeps(e);if(s)for(var a=0,o=s.length;a<o;a++){var h=s[a];if(h===t||mS(t,h,i,n)){r=!0;break}}return r}function gS(t){return function(e,i){if(t){var n=[];Array.isArray(i)?i.forEach((function(t){return t instanceof vd&&n.push(t.addRef())})):i instanceof vd&&n.push(i.addRef()),We((function(){n.forEach((function(t){return t.decRef(!1)})),t(e,i)}))}}}var vS=function(){function t(){this._config=new tS}var e=t.prototype;return e.getInfoWithPath=function(t,e){return this._config.getInfoWithPath(t,e)},e.getDirWithPath=function(t,e,i){return this._config.getDirWithPath(t,e,i)},e.getAssetInfo=function(t){return this._config.getAssetInfo(t)},e.getSceneInfo=function(t){return this._config.getSceneInfo(t)},e.init=function(t){this._config.init(t),Yf.add(t.name,this)},e.load=function(t,e,i,n){var r=pS(e,i,n),s=r.type,a=r.onProgress,o=r.onComplete,h={__requestType__:Hf.PATH,type:s,bundle:this.name,__outputAsArray__:Array.isArray(t)};S.assetManager.loadAny(t,h,a,o)},e.preload=function(t,e,i,n){var r=pS(e,i,n),s=r.type,a=r.onProgress,o=r.onComplete;S.assetManager.preloadAny(t,{__requestType__:Hf.PATH,type:s,bundle:this.name},a,o)},e.loadDir=function(t,e,i,n){var r=pS(e,i,n),s=r.type,a=r.onProgress,o=r.onComplete;S.assetManager.loadAny(t,{__requestType__:Hf.DIR,type:s,bundle:this.name,__outputAsArray__:!0},a,o)},e.preloadDir=function(t,e,i,n){var r=pS(e,i,n),s=r.type,a=r.onProgress,o=r.onComplete;S.assetManager.preloadAny(t,{__requestType__:Hf.DIR,type:s,bundle:this.name},a,o)},e.loadScene=function(t,e,i,n){var r=dS(e,i,n),s=r.options,a=r.onProgress,o=r.onComplete;s.preset=s.preset||"scene",s.bundle=this.name,S.assetManager.loadAny({scene:t},s,a,(function(t,e){if(t)H(t.message,t.stack);else if(e.scene){var i=e.scene;i._id=e._uuid,i.name=e.name}else t=new Error("The asset "+e._uuid+" is not a scene");o&&o(t,e)}))},e.preloadScene=function(t,e,i,n){var r=dS(e,i,n),s=r.options,a=r.onProgress,o=r.onComplete;s.bundle=this.name,S.assetManager.preloadAny({scene:t},s,a,(function(e){e&&it(1210,t,e.message),o&&o(e)}))},e.get=function(t,e){var i=this.getInfoWithPath(t,e);return i&&Wf.get(i.uuid)||null},e.release=function(t,e){var i=this.get(t,e);i&&aS.tryRelease(i,!0)},e.releaseUnusedAssets=function(){var t=this;Wf.forEach((function(e){var i=t.getAssetInfo(e._uuid);i&&!i.redirect&&aS.tryRelease(e)}))},e.releaseAll=function(){var t=this;Wf.forEach((function(e){var i=t.getAssetInfo(e._uuid);i&&!i.redirect&&aS.tryRelease(e,!0)}))},e._destroy=function(){this._config.destroy()},n(t,[{key:"config",get:function(){return this._config}},{key:"name",get:function(){return this._config.name}},{key:"deps",get:function(){return this._config.deps}},{key:"base",get:function(){return this._config.base}}]),t}(),yS=t("ec",new vS);function SS(t,e,i){var n=new A.Image;function r(){n.removeEventListener("load",r),n.removeEventListener("error",s),i&&i(null,n)}function s(){n.removeEventListener("load",r),n.removeEventListener("error",s),i&&i(new Error(at(4930,t)))}return"file:"!==A.location.protocol&&(n.crossOrigin="anonymous"),n.addEventListener("load",r),n.addEventListener("error",s),n.src=t,n}function TS(t,e,i,n){var r=new XMLHttpRequest,s="download failed: "+t+", status: ";if(r.open("GET",t,!0),void 0!==e.xhrResponseType&&(r.responseType=e.xhrResponseType),void 0!==e.xhrWithCredentials&&(r.withCredentials=e.xhrWithCredentials),void 0!==e.xhrMimeType&&r.overrideMimeType&&r.overrideMimeType(e.xhrMimeType),void 0!==e.xhrTimeout&&(r.timeout=e.xhrTimeout),e.xhrHeader)for(var a in e.xhrHeader)r.setRequestHeader(a,e.xhrHeader[a]);return r.onload=function(){200===r.status||0===r.status?n&&n(null,r.response):n&&n(new Error(""+s+r.status+"(no response)"))},i&&(r.onprogress=function(t){t.lengthComputable&&i(t.loaded,t.total)}),r.onerror=function(){n&&n(new Error(""+s+r.status+"(error)"))},r.ontimeout=function(){n&&n(new Error(""+s+r.status+"(time out)"))},r.onabort=function(){n&&n(new Error(""+s+r.status+"(abort)"))},r.send(null),r}S.resources=yS;var AS=A.document,bS={};function ES(t,e,i){if(bS[t])return i&&i(null),null;var n=AS.createElement("script");function r(){n.parentNode.removeChild(n),n.removeEventListener("load",r,!1),n.removeEventListener("error",s,!1),bS[t]=!0,i&&i(null)}function s(){n.parentNode.removeChild(n),n.removeEventListener("load",r,!1),n.removeEventListener("error",s,!1),i&&i(new Error(at(4928,t)))}return"file:"!==A.location.protocol&&(n.crossOrigin="anonymous"),n.async=e.scriptAsyncLoading||!1,n.src=t,n.addEventListener("load",r,!1),n.addEventListener("error",s,!1),AS.body.appendChild(n),n}var CS=/^(?:\w+:\/\/|\.+\/).+/,xS=function(t,e,i){(Sa.hasFeature(Sa.Feature.IMAGE_BITMAP)&&S.assetManager.allowImageBitmap?wS:SS)(t,e,i)},wS=function(t,e,i){e.xhrResponseType="blob",TS(t,e,e.onFileProgress,i)},RS=function(t,e,i){e.xhrResponseType="json",TS(t,e,e.onFileProgress,i)},IS=function(t,e,i){e.xhrResponseType="arraybuffer",TS(t,e,e.onFileProgress,i)},DS=function(t,e,i){US._downloadJson(t,e,(function(e,n){if(e)i(e);else{var r=Sp(n);Promise.all(r.chunks.map((function(i){return new Promise((function(n,r){US._downloadArrayBuffer(""+na(t)+i,{},(function(t,i){e?r(e):n(new Uint8Array(i))}))}))}))).then((function(t){var e=new yp(r.document,t);i(null,e)})).catch((function(t){i(t)}))}}))},BS=function(t,e,i){US._downloadArrayBuffer(t,e,(function(t,e){if(t)i(t);else try{var n=Tp(new Uint8Array(e));i(null,n)}catch(t){i(t)}}))},MS=function(t,e,i){e.xhrResponseType="text",TS(t,e,e.onFileProgress,i)},PS=function(t,e,i){var n=ra(t),r=t;CS.test(r)||(r=-1!==US.remoteBundles.indexOf(n)?US.remoteServerAddress+"remote/"+n:"assets/"+n);var s=e.version||US.bundleVers[n],a=0,o=null,h=null;RS(r+"/config."+(s?s+".":"")+"json",e,(function(t,e){h=t||h,(o=e)&&(o.base=r+"/"),2==++a&&i(h,o)})),ES(r+"/index."+(s?s+".":"")+"js",e,(function(t){h=t||h,2==++a&&i(h,o)}))},OS=function(){var t=e.prototype;function e(){this.maxConcurrency=15,this.maxRequestsPerFrame=15,this.maxRetryCount=3,this.appendTimeStamp=!1,this.limited=!0,this.retryInterval=2e3,this.bundleVers={},this.remoteBundles=[],this.downloadDomImage=SS,this.downloadDomAudio=null,this.downloadFile=TS,this.downloadScript=ES,this._downloadArrayBuffer=IS,this._downloadJson=RS,this._downloaders={".png":xS,".jpg":xS,".bmp":xS,".jpeg":xS,".gif":xS,".ico":xS,".tiff":xS,".webp":xS,".image":xS,".pvr":IS,".pkm":IS,".astc":IS,".txt":MS,".xml":MS,".vsh":MS,".fsh":MS,".atlas":MS,".tmx":MS,".tsx":MS,".json":RS,".ExportJson":RS,".plist":MS,".ccon":DS,".cconb":BS,".fnt":MS,".binary":IS,".bin":IS,".dbbin":IS,".skel":IS,".js":ES,bundle:PS,default:MS},this._downloading=new Uf,this._queue=[],this._queueDirty=!1,this._totalNum=0,this._totalNumThisPeriod=0,this._lastDate=-1,this._checkNextPeriod=!1,this._remoteServerAddress="",this._maxInterval=1/30}return t.init=function(t,e,i){void 0===t&&(t=""),void 0===e&&(e={}),void 0===i&&(i=[]),this._downloading.clear(),this._queue.length=0,this._remoteServerAddress=t,this.bundleVers=e,this.remoteBundles=i},t.register=function(t,e){"object"==typeof t?jt(this._downloaders,t):this._downloaders[t]=e},t.download=function(t,e,i,n,r){var s=this,a=Xf.get(t);if(a)r(null,a);else{var o=this._downloading.get(t);if(o){o.push(r);var h=this._queue.find((function(e){return e.id===t}));if(!h)return;var u=n.priority||0;h.priority<u&&(h.priority=u,this._queueDirty=!0)}else{var l=void 0!==n.maxRetryCount?n.maxRetryCount:this.maxRetryCount,c=void 0!==n.maxConcurrency?n.maxConcurrency:this.maxConcurrency,_=void 0!==n.maxRequestsPerFrame?n.maxRequestsPerFrame:this.maxRequestsPerFrame,f=this._downloaders[i]||this._downloaders.default;lS((function(i,a){if(0===i&&s._downloading.add(t,[r]),s.limited){s._updateTime();var o=function(t,e){s._totalNum--,s._handleQueueInNextFrame(c,_),a(t,e)};s._totalNum<c&&s._totalNumThisPeriod<_?(f(uS(e,s.appendTimeStamp),n,o),s._totalNum++,s._totalNumThisPeriod++):(s._queue.push({id:t,priority:n.priority||0,url:e,options:n,done:o,handler:f}),s._queueDirty=!0,s._totalNum<c&&s._handleQueueInNextFrame(c,_))}else f(uS(e,s.appendTimeStamp),n,a)}),l,this.retryInterval,(function(e,i){e||Xf.add(t,i);for(var n=s._downloading.remove(t),r=0,a=n.length;r<a;r++)n[r](e,i)}))}}},t.loadSubpackage=function(t,e){S.assetManager.loadBundle(t,null,e)},t._updateTime=function(){var t=performance.now(),e=S.game.deltaTime,i=e>this._maxInterval?this._maxInterval:e;t-this._lastDate>1e3*i&&(this._totalNumThisPeriod=0,this._lastDate=t)},t._handleQueue=function(t,e){for(this._checkNextPeriod=!1,this._updateTime();this._queue.length>0&&this._totalNum<t&&this._totalNumThisPeriod<e;){this._queueDirty&&(this._queue.sort((function(t,e){return t.priority-e.priority})),this._queueDirty=!1);var i=this._queue.pop();if(!i)break;this._totalNum++,this._totalNumThisPeriod++,i.handler(uS(i.url,this.appendTimeStamp),i.options,i.done)}this._handleQueueInNextFrame(t,e)},t._handleQueueInNextFrame=function(t,e){!this._checkNextPeriod&&this._queue.length>0&&(We(this._handleQueue.bind(this),t,e),this._checkNextPeriod=!0)},n(e,[{key:"remoteServerAddress",get:function(){return this._remoteServerAddress}}],[{key:"instance",get:function(){return e._instance||(e._instance=new e),e._instance}}]),e}();OS._instance=void 0;var LS,NS,FS,kS,GS,VS,US=OS.instance,zS=OS.instance,HS=t("e0",eo("cc.JsonAsset")((NS=function(t){function e(){var e;return(e=t.call(this)||this).json=FS&&FS(),e}return s(e,t),e}(vd),FS=ja(NS.prototype,"json",[lo],(function(){return null})),LS=NS))||LS);S.JsonAsset=HS;var WS,XS,jS=t("d$",eo("cc.TextAsset")((GS=function(t){function e(){var e;return(e=t.call(this)||this).text=VS&&VS(),e}return s(e,t),e.prototype.toString=function(){return this.text},e}(vd),VS=ja(GS.prototype,"text",[lo],(function(){return""})),kS=GS))||kS);S.TextAsset=jS;var YS=t("dY",eo("cc.BufferAsset")((m((XS=function(t){function e(){var e;return(e=t.call(this)||this)._buffer=null,e}s(e,t);var i=e.prototype;return i.buffer=function(){return this._buffer,this._buffer},i.validate=function(){return!!this._buffer},n(e,[{key:"_nativeAsset",get:function(){return this._buffer},set:function(t){t instanceof ArrayBuffer?this._buffer=t:this._buffer=t.buffer}}]),e}(vd)).prototype,"_nativeAsset",[jo],Object.getOwnPropertyDescriptor(XS.prototype,"_nativeAsset"),XS.prototype),WS=XS))||WS);function qS(t,e,i,n){var r=null,s=null;try{(r=new Vd)._nativeUrl=t,r._nativeAsset=e}catch(t){s=t}n(s,r)}function KS(t,e,i,n){var r=new HS;r.json=e,n(null,r)}function QS(t,e,i,n){var r=new jS;r.text=e,n(null,r)}function ZS(t,e,i,n){var r=new YS;r._nativeUrl=t,r._nativeAsset=e,n(null,r)}function JS(t,e,i,n){var r=new vd;r._nativeUrl=t,r._nativeAsset=e,n(null,r)}function $S(t,i,n,r){var s=Yf.get(i.name);s||(s=i.name===Jf.RESOURCES?yS:new vS,i.base=i.base||t+"/",s.init(i)),e.import("virtual:///prerequisite-imports/"+s.name).then((function(){r(null,s)})).catch(r)}S.BufferAsset=YS;var tT=new(function(){function t(){this._creating=new Uf,this._producers={".png":qS,".jpg":qS,".bmp":qS,".jpeg":qS,".gif":qS,".ico":qS,".tiff":qS,".webp":qS,".image":qS,".pvr":qS,".pkm":qS,".astc":qS,".txt":QS,".xml":QS,".vsh":QS,".fsh":QS,".atlas":QS,".tmx":QS,".tsx":QS,".fnt":QS,".json":KS,".ExportJson":KS,".binary":ZS,".bin":ZS,".dbbin":ZS,".skel":ZS,bundle:$S,default:JS}}var e=t.prototype;return e.register=function(t,e){"object"==typeof t?jt(this._producers,t):this._producers[t]=e},e.create=function(t,e,i,n,r){var s=this,a=this._producers[i]||this._producers.default,o=Wf.get(t);if(n.reloadAsset||!o){var h=this._creating.get(t);h?h.push(r):(this._creating.add(t,[r]),a(t,e,n,(function(e,i){!e&&i instanceof vd&&(i._uuid=t,_S(t,i,n.cacheAsset));for(var r=s._creating.remove(t),a=0,o=r.length;a<o;a++)r[a](e,i)})))}else r(null,o)},t}()),eT=new(function(){function t(){this._loading=new Uf,this._unpackers={".json":this.unpackJson}}var e=t.prototype;return e.unpackJson=function(t,e,i,n){var r=Lt(!0),s=null;if(Array.isArray(e)){(e=function(t){if(t[0]<1)throw new Error(at(5304,t[0]));Wp(t,!0,void 0,jp.reportMissingClass),Xp(t);for(var e=new Yp(t[0]),i=t[1],n=t[2],r=t[3],s=t[4],a=t[5],o=0;o<a.length;++o)a[o].unshift(e,i,n,r,s);return a}(e)).length!==t.length&&it(4915);for(var a=0;a<t.length;a++)r[t[a]+"@import"]=e[a]}else{var o=ue(lm),h=ue(Vd);if(e.type===o&&e.data){var u=e.data;u.length!==t.length&&it(4915);for(var l=0;l<t.length;l++)r[t[l]+"@import"]=qp(o,{base:u[l][0],mipmaps:u[l][1]})}else{if(e.type!==h||!e.data)return void n(s=new Error("unmatched type pack!"),null);var c=e.data;c.length!==t.length&&it(4915);for(var _=0;_<t.length;_++)r[t[_]+"@import"]=c[_]}}n(s,r)},e.init=function(){this._loading.clear()},e.register=function(t,e){"object"==typeof t?jt(this._unpackers,t):this._unpackers[t]=e},e.unpack=function(t,e,i,n,r){e?(0,this._unpackers[i])(t,e,n,r):r(new Error("package data is wrong!"))},e.load=function(t,e,i){var n=this;if(!t.isNative&&t.info&&t.info.packs)if(Xf.has(t.id))i(null,Xf.get(t.id));else{var r=t.info.packs,s=r.find((function(t){return n._loading.has(t.uuid)}));if(s)this._loading.get(s.uuid).push({onComplete:i,id:t.id});else{var a=r[0];this._loading.add(a.uuid,[{onComplete:i,id:t.id}]),t.config;var o=cd(a.uuid,{ext:a.ext,bundle:t.config.name});zS.download(a.uuid,o,a.ext,t.options,(function(e,i){Xf.remove(a.uuid),e&&H(e.message,e.stack),n.unpack(a.packedUuids,i,a.ext,t.options,(function(t,i){if(!t)for(var r in i)Xf.add(r,i[r]);for(var s=n._loading.remove(a.uuid),o=0,h=s.length;o<h;o++){var u=s[o];if(e||t)u.onComplete(e||t);else{var l=i[u.id];l?u.onComplete(null,l):u.onComplete(new Error("can not retrieve data from package"))}}}))}))}}else zS.download(t.id,t.url,t.ext,t.options,i)},t}());function iT(t,e){var i=!1;t.progress||(t.progress={finish:0,total:t.input.length,canInvoke:!0},i=!0);var n=t.options,r=t.progress,s=[],a=r.total,o=n.__exclude__=n.__exclude__||Object.create(null);t.output=[],fS(t.input,(function(n,h){if(!n.isNative&&Wf.has(n.uuid)){var u=Wf.get(n.uuid);return n.content=u.addRef(),t.output.push(n),r.canInvoke&&t.dispatch("progress",++r.finish,r.total,n),void h()}eT.load(n,t.options,(function(u,l){u?t.isFinished||(!S.assetManager.force||i?(H(u.message,u.stack),r.canInvoke=!1,e(u)):(t.output.push(n),r.canInvoke&&t.dispatch("progress",++r.finish,r.total,n))):t.isFinished||(n.file=l,t.output.push(n),n.isNative||(o[n.uuid]=!0,cS(n.uuid,l,o,s,n.config),r.total=a+s.length),r.canInvoke&&t.dispatch("progress",++r.finish,r.total,n)),h()}))}),(function(){if(t.isFinished)return hS(t,!0),void t.dispatch("error");if(s.length>0){var a=td.create({input:s,progress:r,options:n,onProgress:t.onProgress,onError:td.prototype.recycle,onComplete:function(n){var r;n||((r=t.output).push.apply(r,a.output),a.recycle()),i&&nT(t),e(n)}});Kf.async(a)}else i&&nT(t),e()}))}function nT(t){for(var e=t.output,i=0,n=e.length;i<n;i++)e[i].content&&e[i].content.decRef(!1)}var rT=function(){function t(){this._parser=null,globalThis.DOMParser&&(this._parser=new DOMParser)}var e=t.prototype;return e.parse=function(t){return this._parseXML(t)},e._parseXML=function(t){if(this._parser)return this._parser.parseFromString(t,"text/xml");throw new Error("Dom parser is not supported in this platform!")},t}(),sT=new(function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.parse=function(t){var e=this._parseXML(t).documentElement;if("plist"!==e.tagName)return tt(5100),{};for(var i=null,n=0,r=e.childNodes.length;n<r&&1!==(i=e.childNodes[n]).nodeType;n++);return this._parseNode(i)},i._parseNode=function(t){var e=null,i=t.tagName;if("dict"===i)e=this._parseDict(t);else if("array"===i)e=this._parseArray(t);else if("string"===i)if(1===t.childNodes.length)e=t.firstChild.nodeValue;else{e="";for(var n=0;n<t.childNodes.length;n++)e+=t.childNodes[n].nodeValue}else"false"===i?e=!1:"true"===i?e=!0:"real"===i?e=parseFloat(t.firstChild.nodeValue):"integer"===i&&(e=parseInt(t.firstChild.nodeValue,10));return e},i._parseArray=function(t){for(var e=[],i=0,n=t.childNodes.length;i<n;i++){var r=t.childNodes[i];1===r.nodeType&&e.push(this._parseNode(r))}return e},i._parseDict=function(t){for(var e={},i="",n=0,r=t.childNodes.length;n<r;n++){var s=t.childNodes[n];1===s.nodeType&&("key"===s.tagName?i=s.firstChild.nodeValue:e[i]=this._parseNode(s))}return e},e}(rT)),aT=function(){function t(){this._parsing=new Uf,this._parsers={".png":this.parseImage,".jpg":this.parseImage,".bmp":this.parseImage,".jpeg":this.parseImage,".gif":this.parseImage,".ico":this.parseImage,".tiff":this.parseImage,".webp":this.parseImage,".image":this.parseImage,".pvr":this.parsePVRTex,".pkm":this.parsePKMTex,".astc":this.parseASTCTex,".plist":this.parsePlist,import:this.parseImport,".ccon":this.parseImport,".cconb":this.parseImport}}var e=t.prototype;return e.parseImage=function(t,e,i){t instanceof HTMLImageElement?i(null,t):createImageBitmap(t,{premultiplyAlpha:"none"}).then((function(t){i(null,t)}),(function(t){i(t,null)}))},e.parsePVRTex=function(t,e,i){var n=null,r=null;try{r=Vd.parseCompressedTextures(t,0)}catch(t){z(n=t)}i(n,r)},e.parsePKMTex=function(t,e,i){var n=null,r=null;try{r=Vd.parseCompressedTextures(t,1)}catch(t){z(n=t)}i(n,r)},e.parseASTCTex=function(t,e,i){var n=null,r=null;try{r=Vd.parseCompressedTextures(t,2)}catch(t){z(n=t)}i(n,r)},e.parsePlist=function(t,e,i){var n=null,r=sT.parse(t);r||(n=new Error("parse failed")),i(n,r)},e.parseImport=function(t,e,i){if(t){var n=null,r=null;try{n=Jp(t,e)}catch(t){r=t}i(r,n)}else i(new Error("The json file of asset "+e.__uuid__+" is empty or missing"))},e.init=function(){this._parsing.clear()},e.register=function(t,e){"object"==typeof t?jt(this._parsers,t):this._parsers[t]=e},e.parse=function(t,e,i,n,r){var s=this,a=jf.get(t);if(a)r(null,a);else{var o=this._parsing.get(t);if(o)o.push(r);else{var h=this._parsers[i];h?(this._parsing.add(t,[r]),h(e,n,(function(e,i){e?Xf.remove(t):ud(i)||jf.add(t,i);for(var n=s._parsing.remove(t),r=0,a=n.length;r<a;r++)n[r](e,i)}))):r(null,e)}}},n(t,null,[{key:"instance",get:function(){return this._instance||(this._instance=new t),this._instance}}]),t}();aT._instance=void 0;var oT=aT.instance;function hT(t,e){var i=!1;t.progress||(t.progress={finish:0,total:t.input.length,canInvoke:!0},i=!0);var n=t.options,r=t.progress;n.__exclude__=n.__exclude__||Object.create(null),t.output=[],fS(t.input,(function(s,a){var o=td.create({input:s,onProgress:t.onProgress,options:n,progress:r,onComplete:function(n,h){n&&!t.isFinished&&(!S.assetManager.force||i?(H(n.message,n.stack),r.canInvoke=!1,e(n)):r.canInvoke&&t.dispatch("progress",++r.finish,r.total,s)),t.output.push(h),o.recycle(),a(null)}});uT.async(o)}),(function(){if(n.__exclude__=null,t.isFinished)return hS(t,!0),void t.dispatch("error");!function(t){var e=t.source;if(t.options.__outputAsArray__||1!==e.length)for(var i=t.output=[],n=0,r=e.length;n<r;n++)i.push(e[n].content);else t.output=e[0].content}(t),hS(t,!0),e()}))}var uT=new zf("loadOneAsset",[function(t,e){var i=t.output=t.input,n=i.options,r=i.isNative,s=i.uuid,a=i.file,o=n.reloadAsset;a||!o&&!r&&Wf.has(s)?e():eT.load(i,t.options,(function(t,n){i.file=n,e(t)}))},function(t,e){var i=t.output=t.input,n=t.progress,r=t.options.__exclude__,s=i.id,a=i.file,o=i.options;if(i.isNative)oT.parse(s,a,i.ext,o,(function(r,a){r?e(r):(i.content=a,n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),Xf.remove(s),jf.remove(s),e())}));else{var h=i.uuid;if(h in r){var u=r[h],l=u.finish,c=u.content,_=u.err,d=u.callbacks;n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),l||mS(h,h,r)?(c&&c.addRef(),i.content=c,e(_)):d.push({done:e,item:i})}else if(!o.reloadAsset&&Wf.has(h)){var p=Wf.get(h);i.content=p.addRef(),n.canInvoke&&t.dispatch("progress",++n.finish,n.total,i),e()}else o.__uuid__=h,oT.parse(s,a,"import",o,(function(i,n){i?e(i):function(t,e,i){var n=t.input,r=t.progress,s=n,a=s.uuid,o=s.id,h=s.options,u=s.config,l=h.cacheAsset,c=[];e.addRef&&e.addRef(),cS(a,e,Object.create(null),c,u),r.canInvoke&&t.dispatch("progress",++r.finish,r.total+=c.length,n);var _=t.options.__exclude__[a]={content:e,finish:!1,callbacks:[{done:i,item:n}]},d=td.create({input:c,options:t.options,onProgress:t.onProgress,onError:td.prototype.recycle,progress:r,onComplete:function(t){if(e.decRef&&e.decRef(!1),_.finish=!0,_.err=t,!t){for(var i,n=Array.isArray(d.output)?d.output:[d.output],r=Object.create(null),s=f(n);!(i=s()).done;){var h=i.value;h&&(r[h instanceof vd?h._uuid+"@import":a+"@native"]=h)}!function(t,e,i){var n=Kp.get(e);if(n){for(var r=0,s=n.length;r<s;r++){var a=n[r],o=i[a.uuid+"@import"];if(o)a.owner[a.prop]=o.addRef();else{if(it(16350,a.uuid),S.assetManager.dispatchAssetMissing(e,a.owner,a.prop,a.uuid),a.type&&a.type!==vd){var h=new a.type;h.initDefault(a.uuid),a.owner[a.prop]=h}!0}}Kp.delete(e)}Qp.has(e)&&(i[t+"@native"]?e._nativeAsset=i[t+"@native"]:(!0,it(16351,t)),Qp.delete(e))}(a,e,r);try{"function"!=typeof e.onLoaded||Zp.has(e)||Qp.has(e)||(e.onLoaded(),Zp.add(e))}catch(t){it(16352,a,t.message,t.stack)}Xf.remove(o),jf.remove(o),_S(a,e,l),d.recycle()}for(var u=_.callbacks,c=0,p=u.length;c<p;c++){var m=u[c];e.addRef&&e.addRef(),m.item.content=e,m.done(t)}u.length=0}});qf.async(d)}(t,n,e)}))}}]);function lT(t,e){var i=t.options,n=Object.create(null),r=Object.create(null);for(var s in i)switch(s){case Hf.PATH:case Hf.UUID:case Hf.DIR:case Hf.SCENE:case Hf.URL:break;case"__requestType__":case"__isNative__":case"ext":case"type":case"__nativeName__":case"audioLoadMode":case"bundle":n[s]=i[s];break;case"__exclude__":case"__outputAsArray__":r[s]=i[s];break;default:n[s]=i[s],r[s]=i[s]}t.options=r;var a=td.create({input:t.input,options:n}),o=null;try{t.output=t.source=Qf.sync(a)}catch(t){o=t;for(var h=0,u=a.output.length;h<u;h++)a.output[h].recycle()}a.recycle(),e(o)}var cT=function(){function t(){this.uuid="",this.overrideUuid="",this.url="",this.ext=".json",this.content=null,this.file=null,this.info=null,this.config=null,this.isNative=!1,this.options=Object.create(null),this._id=""}return t.create=function(){return 0!==t._deadPool.length?t._deadPool.pop():new t},t.prototype.recycle=function(){t._deadPool.length!==t.MAX_DEAD_NUM&&(this._id="",this.uuid="",this.overrideUuid="",this.url="",this.ext=".json",this.content=null,this.file=null,this.info=null,this.config=null,this.isNative=!1,this.options=Object.create(null),t._deadPool.push(this))},n(t,[{key:"id",get:function(){return this._id||(this._id=(this.overrideUuid||this.uuid)+"@"+(this.isNative?"native":"import")),this._id}}]),t}();cT.MAX_DEAD_NUM=500,cT._deadPool=[];var _T=[];function fT(t){var e=t.options,i=Array.isArray(t.input)?t.input:[t.input];t.output=[];for(var n=function(){var n=i[r],s=cT.create(),a=null,o=null;if("string"==typeof n&&((n=Object.create(null))[e.__requestType__||Hf.UUID]=i[r]),"object"==typeof n){Xt(n,e),n.preset&&Xt(n,$f[n.preset]);var h=function(){var t;switch(u){case Hf.UUID:var e,r=s.uuid=sd(n.uuid);if(!n.bundle){var h=Yf.find((function(t){return!!t.getAssetInfo(r)}));n.bundle=h&&h.name}if(Yf.has(n.bundle)){if(a=Yf.get(n.bundle).config,(o=a.getAssetInfo(r))&&o.redirect){if(!Yf.has(o.redirect))throw new Error("Please load bundle "+o.redirect+" first");a=Yf.get(o.redirect).config,o=a.getAssetInfo(r)}s.config=a,s.info=o}s.ext=n.ext||(null===(e=o)||void 0===e?void 0:e.extension)||".json";break;case"__requestType__":case"ext":case"bundle":case"preset":case"type":break;case Hf.DIR:if(Yf.has(n.bundle)){Yf.get(n.bundle).config.getDirWithPath(n.dir,n.type,_T);for(var l,c=f(_T);!(l=c()).done;){var _=l.value;i.push({uuid:_.uuid,__isNative__:!1,ext:_.extension||".json",bundle:n.bundle})}_T.length=0}s.recycle(),s=null;break;case Hf.PATH:if(Yf.has(n.bundle)){if(a=Yf.get(n.bundle).config,(o=a.getInfoWithPath(n.path,n.type))&&o.redirect){if(!Yf.has(o.redirect))throw new Error("you need to load bundle "+o.redirect+" first");a=Yf.get(o.redirect).config,o=a.getAssetInfo(o.uuid)}if(!o)throw s.recycle(),new Error("Bundle "+n.bundle+" doesn't contain "+n.path);s.config=a,s.uuid=o.uuid,s.info=o}s.ext=n.ext||(null===(t=o)||void 0===t?void 0:t.extension)||".json";break;case Hf.SCENE:if(!n.bundle){var d=Yf.find((function(t){return!!t.getSceneInfo(n.scene)}));n.bundle=d&&d.name}if(Yf.has(n.bundle)){if(a=Yf.get(n.bundle).config,(o=a.getSceneInfo(n.scene))&&o.redirect){if(!Yf.has(o.redirect))throw new Error("you need to load bundle "+o.redirect+" first");a=Yf.get(o.redirect).config,o=a.getAssetInfo(o.uuid)}if(!o)throw s.recycle(),new Error("Bundle "+a.name+" doesn't contain scene "+n.scene);s.config=a,s.uuid=o.uuid,s.info=o}break;case"__isNative__":s.isNative=n.__isNative__;break;case Hf.URL:s.url=n.url,s.uuid=n.uuid||n.url,s.ext=n.ext||ia(n.url),s.isNative=void 0===n.__isNative__||n.__isNative__;break;default:s.options[u]=n[u]}if(!s)return 1};for(var u in n)if(h())break}if(!s)return 1;if(t.output.push(s),!s.uuid&&!s.url)throw new Error("Can not parse this input:"+JSON.stringify(n))},r=0;r<i.length;r++)n();return null}function dT(t){for(var e=t.output=t.input,i=function(){var t=e[n];if(Zf.has(t.uuid)){var i=Zf.get(t.uuid),r=Yf.find((function(t){return!!t.getAssetInfo(i)}));if(r){var s;t.overrideUuid=i;var a=r.config,o=a.getAssetInfo(i);if(o&&o.redirect){if(!Yf.has(o.redirect))throw new Error("Please load bundle "+o.redirect+" first");o=(a=Yf.get(o.redirect).config).getAssetInfo(i)}t.config=a,t.info=o,t.ext=t.isNative?t.ext:(null===(s=o)||void 0===s?void 0:s.extension)||".json"}else tt(16201,i,t.uuid)}},n=0;n<e.length;n++)i()}function pT(t){for(var e=t.output=t.input,i=0;i<e.length;i++){var n=e[i];if(!n.url){var r,s,a=n.config;s=n.isNative?a&&a.nativeBase?a.base+a.nativeBase:S.assetManager.generalNativeBase:a&&a.importBase?a.base+a.importBase:S.assetManager.generalImportBase;var o=n.overrideUuid||n.uuid,h="";n.info&&(h=n.isNative?n.info.nativeVer?"."+n.info.nativeVer:"":n.info.ver?"."+n.info.ver:""),r=".ttf"===n.ext?s+"/"+o.slice(0,2)+"/"+o+h+"/"+n.options.__nativeName__:s+"/"+o.slice(0,2)+"/"+o+h+n.ext,n.url=r}}return null}var mT="asset-missing",gT=t("eb",function(){function t(){this.pipeline=qf.append(lT).append(hT),this.fetchPipeline=Kf.append(lT).append(iT),this.transformPipeline=Qf.append(fT).append(dT).append(pT),this.bundles=Yf,this.assets=Wf,this.assetsOverrideMap=Zf,this.generalImportBase="",this.generalNativeBase="",this.dependUtil=em,this.force=false,this.allowImageBitmap=!1,this.utils=pd,this.downloader=zS,this.parser=oT,this.packManager=eT,this.cacheAsset=!0,this.cacheManager=null,this.presets=$f,this.factory=tT,this.preprocessPipe=lT,this.fetchPipe=iT,this.loadPipe=hT,this.references=null,this._releaseManager=aS,this._files=Xf,this._parsed=jf,this._parsePipeline=null,this._projectBundles=[],this._eventTarget=new Hs}var e=t.prototype;return e.onAssetMissing=function(t,e){this._eventTarget.on(mT,t,e)},e.offAssetMissing=function(t,e){this._eventTarget.off(mT,t,e)},e.dispatchAssetMissing=function(t,e,i,n){this._eventTarget.emit(mT,t,e,i,n)},e.init=function(t){void 0===t&&(t={});var e=t.server||Me.querySettings(De.Category.ASSETS,"server")||"",i=t.bundleVers||Me.querySettings(De.Category.ASSETS,"bundleVers")||{},n=t.remoteBundles||Me.querySettings(De.Category.ASSETS,"remoteBundles")||[],r=t.downloadMaxConcurrency||Me.querySettings(De.Category.ASSETS,"downloadMaxConcurrency");r&&r>0&&(this.downloader.maxConcurrency=r),this._files.clear(),this._parsed.clear(),this._releaseManager.init(),this.assets.clear(),this.bundles.clear(),this.packManager.init(),this.downloader.init(e,i,n),this.parser.init(),this.dependUtil.init();var s=t.importBase||Me.querySettings(De.Category.ASSETS,"importBase")||"";s&&s.endsWith("/")&&(s=s.substr(0,s.length-1));var a=t.nativeBase||Me.querySettings(De.Category.ASSETS,"nativeBase")||"";a&&a.endsWith("/")&&(a=a.substr(0,a.length-1)),this.generalImportBase=s,this.generalNativeBase=a,this._projectBundles=Me.querySettings(De.Category.ASSETS,"projectBundles")||[];var o=Me.querySettings(De.Category.ASSETS,"assetsOverrides")||{};for(var h in o)this.assetsOverrideMap.set(h,o[h])},e.getBundle=function(t){return Yf.get(t)||null},e.removeBundle=function(t){t._destroy(),Yf.remove(t.name)},e.loadAny=function(t,e,i,n){var r=dS(e,i,n),s=r.options,a=r.onProgress,o=r.onComplete;s.preset=s.preset||"default",t=Array.isArray(t)?t.slice():t;var h=td.create({input:t,onProgress:a,onComplete:gS(o),options:s});qf.async(h)},e.preloadAny=function(t,e,i,n){var r=dS(e,i,n),s=r.options,a=r.onProgress,o=r.onComplete;s.preset=s.preset||"preload",t=Array.isArray(t)?t.slice():t;var h=td.create({input:t,onProgress:a,onComplete:gS(o),options:s});Kf.async(h)},e.loadRemote=function(t,e,i){var n=dS(e,void 0,i),r=n.options,s=n.onComplete;r.reloadAsset||!this.assets.has(t)?(r.__isNative__=!0,r.preset=r.preset||"remote",this.loadAny({url:t},r,null,(function(e,i){e?(H(e.message,e.stack),s&&s(e,i)):tT.create(t,i,r.ext||ia(t),r,(function(t,e){s&&s(t,e)}))}))):gS(s)(null,this.assets.get(t))},e.loadBundle=function(t,e,i){var n=dS(e,void 0,i),r=n.options,s=n.onComplete,a=ra(t);this.bundles.has(a)?gS(s)(null,this.getBundle(a)):(r.preset=r.preset||"bundle",r.ext="bundle",r.__isNative__=!0,this.loadAny({url:t},r,null,(function(e,i){e?(H(e.message,e.stack),s&&s(e,i)):tT.create(t,i,"bundle",r,(function(t,e){s&&s(t,e)}))})))},e.releaseAsset=function(t){aS.tryRelease(t,!0)},e.releaseUnusedAssets=function(){Wf.forEach((function(t){aS.tryRelease(t)}))},e.releaseAll=function(){Wf.forEach((function(t){aS.tryRelease(t,!0)}))},e.loadWithJson=function(){throw new Error("Only valid in Editor")},n(t,[{key:"main",get:function(){return Yf.get(Jf.MAIN)||null}},{key:"resources",get:function(){return Yf.get(Jf.RESOURCES)||null}}],[{key:"instance",get:function(){return this._instance||(this._instance=new t),this._instance}}]),t}());gT._instance=void 0,gT.Pipeline=zf,gT.Task=td,gT.Cache=Uf,gT.RequestItem=cT,gT.Bundle=vS,gT.BuiltinBundleName=Jf,gT.CacheManager=function(){this.cacheDir=void 0,this.cacheEnabled=void 0,this.autoClear=void 0,this.cacheInterval=void 0,this.deleteInterval=void 0,this.cachedFiles=void 0},gT.Downloader=OS,gT.Parser=aT,gT.DependUtil=$p;var vT=t("ea",S.assetManager=gT.instance);S.AssetManager=gT;var yT,ST,TT,AT=t("eh",function(){function t(){this._resources={},this._materialsToBeCompiled=[]}var e=t.prototype;return e.init=function(){for(var t=this._resources,e=new Uint8Array(16),i=new Uint8Array(16),n=new Uint8Array(16),r=new Uint8Array(16),s=new Uint8Array(16),a=0,o=0;o<4;o++)e[a]=0,e[a+1]=0,e[a+2]=0,e[a+3]=255,i[a]=0,i[a+1]=0,i[a+2]=0,i[a+3]=0,n[a]=119,n[a+1]=119,n[a+2]=119,n[a+3]=255,r[a]=255,r[a+1]=255,r[a+2]=255,r[a+3]=255,s[a]=127,s[a+1]=127,s[a+2]=255,s[a+3]=255,a+=4;var h=new Uint8Array(1024);a=0;for(var u=0;u<256;u++)h[a]=221,h[a+1]=221,h[a+2]=221,h[a+3]=255,a+=4;a=0;for(var l=0;l<8;l++){for(var c=0;c<8;c++)h[a]=85,h[a+1]=85,h[a+2]=85,h[a+3]=255,a+=4;a+=32}a+=32;for(var _=0;_<8;_++){for(var f=0;f<8;f++)h[a]=85,h[a+1]=85,h[a+2]=85,h[a+3]=255,a+=4;a+=32}var d={width:2,height:2,_data:e,_compressed:!1,format:lm.PixelFormat.RGBA8888},p={width:2,height:2,_data:i,_compressed:!1,format:lm.PixelFormat.RGBA8888},m={width:2,height:2,_data:n,_compressed:!1,format:lm.PixelFormat.RGBA8888},g={width:2,height:2,_data:r,_compressed:!1,format:lm.PixelFormat.RGBA8888},v={width:2,height:2,_data:s,_compressed:!1,format:lm.PixelFormat.RGBA8888},y={width:16,height:16,_data:h,_compressed:!1,format:lm.PixelFormat.RGBA8888},T=new Vd(d),A=new lm;A._uuid="black-texture",A.image=T,t[A._uuid]=A;var b=new Vd(p),E=new lm;E._uuid="empty-texture",E.image=b,t[E._uuid]=E;var C=new ug;C._uuid="black-cube-texture",C.setMipFilter(ug.Filter.NEAREST),C.image={front:new Vd(d),back:new Vd(d),left:new Vd(d),right:new Vd(d),top:new Vd(d),bottom:new Vd(d)},t[C._uuid]=C;var x=new Vd(m),w=new lm;w._uuid="grey-texture",w.image=x,t[w._uuid]=w;var R=new ug;R._uuid="grey-cube-texture",R.setMipFilter(ug.Filter.NEAREST),R.image={front:new Vd(m),back:new Vd(m),left:new Vd(m),right:new Vd(m),top:new Vd(m),bottom:new Vd(m)},t[R._uuid]=R;var I=new Vd(g),D=new lm;D._uuid="white-texture",D.image=I,t[D._uuid]=D;var B=new ug;B._uuid="white-cube-texture",B.setMipFilter(ug.Filter.NEAREST),B.image={front:new Vd(g),back:new Vd(g),left:new Vd(g),right:new Vd(g),top:new Vd(g),bottom:new Vd(g)},t[B._uuid]=B;var M=new Vd(v),P=new lm;P._uuid="normal-texture",P.image=M,t[P._uuid]=P;var O=new Vd(y),L=new lm;L._uuid="default-texture",L.image=O,t[L._uuid]=L;var N=new ug;if(N.setMipFilter(ug.Filter.NEAREST),N._uuid="default-cube-texture",N.image={front:new Vd(y),back:new Vd(y),left:new Vd(y),right:new Vd(y),top:new Vd(y),bottom:new Vd(y)},t[N._uuid]=N,S.SpriteFrame){var F=new S.SpriteFrame,k=T,G=new lm;G.image=k,F.texture=G,F._uuid="default-spriteframe",t[F._uuid]=F}},e.addAsset=function(t,e){this._resources[t]=e},e.get=function(t){return this._resources[t]},e.loadBuiltinAssets=function(){var t=this,e=Me.querySettings(De.Category.ENGINE,"builtinAssets");if(!e)return Promise.resolve();var i=this._resources;return new Promise((function(n,r){vT.loadBundle(Jf.INTERNAL,(function(s){s?r(s):vT.loadAny(e,(function(e,s){e?r(e):(s.forEach((function(e){i[e.name]=e,aS.addIgnoredAsset(e),e instanceof S.Material&&t._materialsToBeCompiled.push(e)})),n())}))}))}))},e.compileBuiltinMaterial=function(){for(var t=0;t<this._materialsToBeCompiled.length;++t)for(var e=this._materialsToBeCompiled[t],i=0;i<e.passes.length;++i)e.passes[i].tryCompile();this._materialsToBeCompiled.length=0},t}()),bT=t("ei",S.builtinResMgr=new AT),ET=t("dj",(yT=new Map,ST=0,function(t){return"number"==typeof t?t:(yT.has(t)||(yT.set(t,1<<ST),ST++),yT.get(t))})),CT=t("de",function(){function t(t){this.instances=[],this.hasPendingModels=!1,this.dynamicOffsets=[],this._device=t.device,this.pass=t}var e=t.prototype;return e.destroy=function(){for(var t=0;t<this.instances.length;++t){var e=this.instances[t];e.vb.destroy(),e.ia.destroy()}this.instances.length=0},e.merge=function(t,e,i){void 0===i&&(i=null);var n=t.instancedAttributeBlock,r=n.buffer.length;if(r){var s=t.inputAssembler,a=t.descriptorSet.getTexture(Bv),o=t.descriptorSet.getTexture(Hv),h=t.descriptorSet.getTexture(jv),u=t.descriptorSet.getTexture(Jv),l=t.useReflectionProbeType,c=i;c||(c=t.shaders[e]);for(var _=t.descriptorSet,f=0;f<this.instances.length;++f){var d,p,m=this.instances[f];if(!((null===(d=m.ia.indexBuffer)||void 0===d?void 0:d.objectID)!==(null===(p=s.indexBuffer)||void 0===p?void 0:p.objectID)||m.count>=1024)&&m.lightingMap.objectID===a.objectID&&m.useReflectionProbeType===l&&m.reflectionProbeCubemap.objectID===o.objectID&&m.reflectionProbePlanarMap.objectID===h.objectID&&m.reflectionProbeBlendCubemap.objectID===u.objectID&&m.stride===r){if(m.count>=m.capacity){m.capacity<<=1;var g=m.stride*m.capacity,v=m.data;m.data=new Uint8Array(g),m.data.set(v),m.vb.resize(g)}return m.shader=c,m.descriptorSet=_,m.data.set(n.buffer,m.stride*m.count++),void(this.hasPendingModels=!0)}}for(var y=this._device.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,32*r,r)),S=new Uint8Array(32*r),T=s.vertexBuffers.slice(),A=s.attributes.slice(),b=s.indexBuffer,E=0;E<n.attributes.length;E++){var C=n.attributes[E],x=new T_(C.name,C.format,C.isNormalized,T.length,!0);A.push(x)}S.set(n.buffer),T.push(y);var w=new b_(A,T,b),R=this._device.createInputAssembler(w);this.instances.push({count:1,capacity:32,vb:y,data:S,ia:R,stride:r,shader:c,descriptorSet:_,lightingMap:a,reflectionProbeCubemap:o,reflectionProbePlanarMap:h,useReflectionProbeType:l,reflectionProbeBlendCubemap:u}),this.hasPendingModels=!0}},e.uploadBuffers=function(t){for(var e=0;e<this.instances.length;++e){var i=this.instances[e];i.count&&(i.ia.instanceCount=i.count,t.updateBuffer(i.vb,i.data))}},e.clear=function(){for(var t=0;t<this.instances.length;++t)this.instances[t].count=0;this.hasPendingModels=!1},t}()),xT=new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.DEVICE),wT=new s_(null),RT=new L_(null);!function(t){t[t.NONE=0]="NONE",t[t.INSTANCING=1]="INSTANCING"}(TT||(TT={}));var IT=function(){function t(t){this._rootBuffer=null,this._buffers=[],this._descriptorSet=null,this._pipelineLayout=null,this._passIndex=0,this._propertyIndex=0,this._programName="",this._dynamics={},this._propertyHandleMap={},this._rootBlock=null,this._blocksInt=[],this._blocks=[],this._shaderInfo=null,this._defines={},this._properties={},this._shader=null,this._bs=new yf,this._dss=new gf,this._rs=new mf,this._priority=xg.DEFAULT,this._stage=Cg.DEFAULT,this._phase=ET("default"),this._passID=4294967295,this._subpassID=4294967295,this._phaseID=4294967295,this._primitive=wc.TRIANGLE_LIST,this._batchingScheme=TT.NONE,this._dynamicStates=Bc.NONE,this._instancedBuffers={},this._hash=0,this._rootBufferDirty=!1,this._root=t,this._device=Ff.gfxDevice}t.fillPipelineInfo=function(t,e){void 0!==e.priority&&(t._priority=e.priority),void 0!==e.primitive&&(t._primitive=e.primitive),void 0!==e.stage&&(t._stage=e.stage),void 0!==e.dynamicStates&&(t._dynamicStates=e.dynamicStates),void 0!==e.phase&&(t._phase=ET(e.phase));var i=t._bs;if(e.blendState){var n=e.blendState,r=n.targets;r&&r.forEach((function(t,e){i.setTarget(e,t)})),void 0!==n.isA2C&&(i.isA2C=n.isA2C),void 0!==n.isIndepend&&(i.isIndepend=n.isIndepend),void 0!==n.blendColor&&(i.blendColor=n.blendColor)}t._rs.assign(e.rasterizerState),t._dss.assign(e.depthStencilState)},t.getPassHash=function(t){var e="";if(S.rendering&&S.rendering.enableEffectImport){var i=S.rendering.programLib.getKey(t._phaseID,t.program,t.defines);e=t._phaseID.toString()+","+i}else e=Zy.getKey(t.program,t.defines);var n,r=e+","+t._primitive+","+t._dynamicStates;return r+=function(t){for(var e,i=",bs,"+t.isA2C,n=f(t.targets);!(e=n()).done;){var r=e.value;i+=",bt,"+r.blend+","+r.blendEq+","+r.blendAlphaEq+","+r.blendColorMask,i+=","+r.blendSrc+","+r.blendDst+","+r.blendSrcAlpha+","+r.blendDstAlpha}return i}(t._bs),r+=function(t){var e=",dss,"+t.depthTest+","+t.depthWrite+","+t.depthFunc;return e+=","+t.stencilTestFront+","+t.stencilFuncFront+","+t.stencilRefFront+","+t.stencilReadMaskFront,e+=","+t.stencilFailOpFront+","+t.stencilZFailOpFront+","+t.stencilPassOpFront+","+t.stencilWriteMaskFront,(e+=","+t.stencilTestBack+","+t.stencilFuncBack+","+t.stencilRefBack+","+t.stencilReadMaskBack)+","+t.stencilFailOpBack+","+t.stencilZFailOpBack+","+t.stencilPassOpBack+","+t.stencilWriteMaskBack}(t._dss),zl(r+=",rs,"+(n=t._rs).cullMode+","+n.depthBias+","+n.isFrontFaceCCW,666)};var e=t.prototype;return e.initialize=function(t){this._doInit(t),this.resetUBOs(),this.resetTextures(),this.tryCompile()},e.getHandle=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=nc.UNKNOWN);var n=this._propertyHandleMap[t];return n?(i?n=Sy(n,i):e&&(n=Sy(n,my(n)-e)),n+e):0},e.getBinding=function(e){var i=this.getHandle(e);return i?t.getBindingFromHandle(i):-1},e.setUniform=function(e,i){var n=t.getBindingFromHandle(e),r=t.getTypeFromHandle(e),s=t.getOffsetFromHandle(e),a=this._getBlockView(r,n);Ay[r](a,i,s),this._rootBufferDirty=!0},e.getUniform=function(e,i){var n=t.getBindingFromHandle(e),r=t.getTypeFromHandle(e),s=t.getOffsetFromHandle(e),a=this._getBlockView(r,n);return Ty[r](a,i,s)},e.setUniformArray=function(e,i){for(var n=t.getBindingFromHandle(e),r=t.getTypeFromHandle(e),s=tf(r)>>2,a=this._getBlockView(r,n),o=t.getOffsetFromHandle(e),h=0;h<i.length;h++,o+=s)null!==i[h]&&Ay[r](a,i[h],o);this._rootBufferDirty=!0},e.bindTexture=function(t,e,i){this._descriptorSet.bindTexture(t,e,i||0)},e.bindSampler=function(t,e,i){this._descriptorSet.bindSampler(t,e,i||0)},e.setDynamicState=function(t,e){var i=this._dynamics[t];i&&i.value===e||(i.value=e,i.dirty=!0)},e.overridePipelineStates=function(){tt(12102)},e.update=function(){this._descriptorSet?(this._rootBuffer&&this._rootBufferDirty&&(this._rootBuffer.update(this._rootBlock),this._rootBufferDirty=!1),this._descriptorSet.update()):it(12006)},e.getInstancedBuffer=function(t){return void 0===t&&(t=0),this._instancedBuffers[t]||(this._instancedBuffers[t]=new CT(this))},e.destroy=function(){for(var t=0;t<this._shaderInfo.blocks.length;t++){var e=this._shaderInfo.blocks[t];this._buffers[e.binding].destroy()}for(var i in this._buffers=[],this._rootBuffer&&(this._rootBuffer.destroy(),this._rootBuffer=null),this._instancedBuffers)this._instancedBuffers[i].destroy();this._descriptorSet.destroy(),this._rs.destroy(),this._dss.destroy(),this._bs.destroy()},e.resetUniform=function(e){var i=this.getHandle(e);if(i){for(var n=t.getTypeFromHandle(i),r=t.getBindingFromHandle(i),s=t.getOffsetFromHandle(i),a=t.getCountFromHandle(i),o=this._getBlockView(n,r),h=this._properties[e],u=h&&h.value||Cy(n),l=(tf(n)>>2)*a,c=0;c+u.length<=l;c+=u.length)o.set(u,s+c);this._rootBufferDirty=!0}},e.resetTexture=function(e,i){var n=this.getHandle(e);if(n){var r,s=t.getTypeFromHandle(n),a=t.getBindingFromHandle(n),o=this._properties[e],h=o&&o.value,u=(r="string"==typeof h?bT.get(""+h+xy(s)):h||bT.get(Cy(s)))&&r.getGFXTexture(),l=o&&void 0!==o.samplerHash?Ef.unpackFromHash(o.samplerHash):r&&r.getSamplerInfo(),c=this._device.getSampler(l);this._descriptorSet.bindSampler(a,c,i||0),this._descriptorSet.bindTexture(a,u,i||0)}},e.resetUBOs=function(){for(var t=0;t<this._shaderInfo.blocks.length;t++)for(var e=this._shaderInfo.blocks[t],i=0,n=0;n<e.members.length;n++){for(var r=e.members[n],s=this._getBlockView(r.type,e.binding),a=this._properties[r.name],o=a&&a.value||Cy(r.type),h=(tf(r.type)>>2)*r.count,u=0;u+o.length<=h;u+=o.length)s.set(o,i+u);i+=h}this._rootBufferDirty=!0},e.resetTextures=function(){if(S.rendering)for(var t,e=f(this._shaderInfo.descriptors[Og.MATERIAL].samplerTextures);!(t=e()).done;)for(var i=t.value,n=0;n<i.count;++n)this.resetTexture(i.name,n);else for(var r=0;r<this._shaderInfo.samplerTextures.length;r++)for(var s=this._shaderInfo.samplerTextures[r],a=0;a<s.count;a++)this.resetTexture(s.name,a)},e.tryCompile=function(){var e=this._root.pipeline;if(!e)return!1;if(this._syncBatchingScheme(),S.rendering&&S.rendering.enableEffectImport){var i=S.rendering.programLib,n=i.getProgramVariant(this._device,this._phaseID,this._programName,this._defines);if(!n)return tt(12103,this._programName),!1;this._shader=n.shader,this._pipelineLayout=i.getPipelineLayout(this.device,this._phaseID,this._programName)}else{var r=Zy.getGFXShader(this._device,this._programName,this._defines,e);if(!r)return tt(12104,this._programName),!1;this._shader=r,this._pipelineLayout=Zy.getTemplateInfo(this._programName).pipelineLayout}return this._hash=t.getPassHash(this),!0},e.getShaderVariant=function(t){if(void 0===t&&(t=null),!this._shader&&!this.tryCompile())return tt(12105),null;if(!t)return this._shader;for(var e=this._root.pipeline,i=0;i<t.length;i++){var n=t[i];this._defines[n.name]=n.value}this._isBlend&&(this._defines.CC_IS_TRANSPARENCY_PASS=1);var r=null;if(S.rendering&&S.rendering.enableEffectImport){var s=S.rendering.programLib.getProgramVariant(this._device,this._phaseID,this._programName,this._defines);s&&(r=s.shader)}else r=Zy.getGFXShader(this._device,this._programName,this._defines,e);for(var a=0;a<t.length;a++){var o=t[a];delete this._defines[o.name]}return r},e.beginChangeStatesSilently=function(){},e.endChangeStatesSilently=function(){},e._doInit=function(e,i){if(void 0===i&&(i=!1),this._priority=xg.DEFAULT,this._stage=Cg.DEFAULT,S.rendering&&S.rendering.enableEffectImport){var n=S.rendering;if("number"==typeof e.phase?(this._passID=e._passID,this._subpassID=e._subpassID,this._phaseID=e._phaseID):(this._passID=n.getPassID(e.pass),this._passID!==n.INVALID_ID&&(e.subpass?(this._subpassID=n.getSubpassID(this._passID,e.subpass),this._phaseID=n.getPhaseID(this._subpassID,e.phase)):this._phaseID=n.getPhaseID(this._passID,e.phase))),this._passID===n.INVALID_ID)return void it(12107,e.program);if(this._phaseID===n.INVALID_ID)return void it(12108,e.program)}this._phase=ET("default"),this._primitive=wc.TRIANGLE_LIST,this._passIndex=e.passIndex,this._propertyIndex=void 0!==e.propertyIndex?e.propertyIndex:e.passIndex,this._programName=e.program,this._defines=i?r({},e.defines):e.defines,S.rendering&&S.rendering.enableEffectImport?this._shaderInfo=S.rendering.programLib.getProgramInfo(this._phaseID,this._programName):this._shaderInfo=Zy.getTemplate(e.program),this._properties=e.properties||this._properties;var s=this._device;t.fillPipelineInfo(this,e),e.stateOverrides&&t.fillPipelineInfo(this,e.stateOverrides),S.rendering&&S.rendering.enableEffectImport?RT.layout=S.rendering.programLib.getMaterialDescriptorSetLayout(this._device,this._phaseID,e.program):RT.layout=Zy.getDescriptorSetLayout(this._device,e.program),this._descriptorSet=this._device.createDescriptorSet(RT);var a,o,h=this._shaderInfo.blocks;if(S.rendering&&S.rendering.enableEffectImport){var u=S.rendering.programLib;a=u.getBlockSizes(this._phaseID,this._programName),o=u.getHandleMap(this._phaseID,this._programName)}else{var l=Zy.getTemplateInfo(e.program);a=l.blockSizes,o=l.handleMap}if(S.rendering&&S.rendering.enableEffectImport){var c=S.rendering.programLib.getShaderInfo(this._phaseID,this.program);this._buildMaterialUniformBlocks(s,c.blocks,a)}else this._buildUniformBlocks(s,h,a);var _=this._propertyHandleMap=o,f={};for(var d in this._properties){var p=this._properties[d];p.handleInfo&&(f[d]=this.getHandle.apply(this,p.handleInfo))}Object.assign(_,f)},e._buildUniformBlocks=function(t,e,i){for(var n=t.capabilities.uboOffsetAlignment,r=[],s=0,a=0,o=0;o<e.length;o++){var h=i[o];r.push(a),a+=Math.ceil(h/n)*n,s=h}var u=r[r.length-1]+s;u&&(xT.size=16*Math.ceil(u/16),this._rootBuffer=t.createBuffer(xT),this._rootBlock=new ArrayBuffer(u));for(var l=0,c=0;l<e.length;l++){var _=e[l].binding,f=i[l];wT.buffer=this._rootBuffer,wT.offset=r[c++],wT.range=16*Math.ceil(f/16);var d=this._buffers[_]=t.createBuffer(wT);this._blocks[_]=new Float32Array(this._rootBlock,wT.offset,f/Float32Array.BYTES_PER_ELEMENT),this._blocksInt[_]=new Int32Array(this._blocks[_].buffer,this._blocks[_].byteOffset,this._blocks[_].length),this._descriptorSet.bindBuffer(_,d)}},e._buildMaterialUniformBlocks=function(t,e,i){for(var n=t.capabilities.uboOffsetAlignment,r=[],s=0,a=0,o=0;o<e.length;o++)if(1===e[o].set){var h=i[o];r.push(a),a+=Math.ceil(h/n)*n,s=h}if(0!==s){var u=r[r.length-1]+s;u&&(xT.size=16*Math.ceil(u/16),this._rootBuffer=t.createBuffer(xT),this._rootBlock=new ArrayBuffer(u))}for(var l=0,c=0;l<e.length;l++)if(1===e[l].set){var _=e[l].binding,f=i[l];wT.buffer=this._rootBuffer,wT.offset=r[c++],wT.range=16*Math.ceil(f/16);var d=this._buffers[_]=t.createBuffer(wT);this._blocks[_]=new Float32Array(this._rootBlock,wT.offset,f/Float32Array.BYTES_PER_ELEMENT),this._blocksInt[_]=new Int32Array(this._blocks[_].buffer,this._blocks[_].byteOffset,this._blocks[_].length),this._descriptorSet.bindBuffer(_,d)}},e._syncBatchingScheme=function(){this._defines.USE_INSTANCING?this._device.hasFeature(tc.INSTANCED_ARRAYS)?this._batchingScheme=TT.INSTANCING:(this._defines.USE_INSTANCING=!1,this._batchingScheme=TT.NONE):this._batchingScheme=TT.NONE},e._getBlockView=function(t,e){return t<nc.FLOAT?this._blocksInt[e]:this._blocks[e]},e._initPassFromTarget=function(t,e,i){this._priority=t.priority,this._stage=t.stage,this._phase=t.phase,this._phaseID=t._phaseID,this._passID=t._passID,this._batchingScheme=t.batchingScheme,this._primitive=t.primitive,this._dynamicStates=t.dynamicStates,this._bs=t.blendState,this._dss=e,this._descriptorSet=t.descriptorSet,this._rs=t.rasterizerState,this._passIndex=t.passIndex,this._propertyIndex=t.propertyIndex,this._programName=t.program,this._defines=t.defines,this._shaderInfo=t._shaderInfo,this._properties=t._properties,this._blocks=t._blocks,this._blocksInt=t._blocksInt,this._dynamics=t._dynamics,this._shader=t._shader,S.rendering&&S.rendering.enableEffectImport?this._pipelineLayout=S.rendering.programLib.getPipelineLayout(this.device,this._phaseID,this._programName):this._pipelineLayout=Zy.getTemplateInfo(this._programName).pipelineLayout,this._hash=t._hash^i},e._updatePassHash=function(){this._hash=t.getPassHash(this)},e.setRootBufferDirty=function(t){this._rootBufferDirty=t},e.setPriority=function(t){this._priority=t},n(t,[{key:"_isBlend",get:function(){for(var t,e=!1,i=f(this.blendState.targets);!(t=i()).done;)t.value.blend&&(e=!0);return e}},{key:"root",get:function(){return this._root}},{key:"device",get:function(){return this._device}},{key:"shaderInfo",get:function(){return this._shaderInfo}},{key:"localSetLayout",get:function(){return S.rendering&&S.rendering.enableEffectImport?S.rendering.programLib.getLocalDescriptorSetLayout(this._device,this._phaseID,this._programName):Zy.getDescriptorSetLayout(this._device,this._programName,!0)}},{key:"program",get:function(){return this._programName}},{key:"properties",get:function(){return this._properties}},{key:"defines",get:function(){return this._defines}},{key:"passIndex",get:function(){return this._passIndex}},{key:"propertyIndex",get:function(){return this._propertyIndex}},{key:"dynamics",get:function(){return this._dynamics}},{key:"blocks",get:function(){return this._blocks}},{key:"blocksInt",get:function(){return this._blocksInt}},{key:"rootBufferDirty",get:function(){return this._rootBufferDirty}},{key:"priority",get:function(){return this._priority}},{key:"primitive",get:function(){return this._primitive}},{key:"stage",get:function(){return this._stage}},{key:"phase",get:function(){return this._phase}},{key:"passID",get:function(){return this._passID}},{key:"phaseID",get:function(){return this._phaseID}},{key:"rasterizerState",get:function(){return this._rs}},{key:"depthStencilState",get:function(){return this._dss}},{key:"blendState",get:function(){return this._bs}},{key:"dynamicStates",get:function(){return this._dynamicStates}},{key:"batchingScheme",get:function(){return this._batchingScheme}},{key:"descriptorSet",get:function(){return this._descriptorSet}},{key:"hash",get:function(){return this._hash}},{key:"pipelineLayout",get:function(){return this._pipelineLayout}}]),t}();IT.getTypeFromHandle=my,IT.getBindingFromHandle=gy,IT.getCountFromHandle=vy,IT.getOffsetFromHandle=yy;var DT,BT,MT,PT,OT,LT,NT,FT,kT,GT=t("df",function(){function t(){}return t.getOrCreatePipelineState=function(t,e,i,n,r){var s=e.hash^n.hash^r.attributesHash^i.typedID,a=this._PSOHashMap.get(s);if(!a){var o=e.pipelineLayout,h=new F_(r.attributes),u=new Sf(i,o,n,h,e.rasterizerState,e.depthStencilState,e.blendState,e.primitive,e.dynamicStates);a=t.createPipelineState(u),this._PSOHashMap.set(s,a)}return a},t}());function VT(t,e){t.x=e.x*e.x,t.y=e.y*e.y,t.z=e.z*e.z}GT._PSOHashMap=new Map,new $c,new jc;var UT=new cn,zT=t("e5",(DT=eo("cc.Material"),BT=Lo($y),DT((PT=function(t){function e(){var e;return(e=t.call(this)||this)._effectAsset=OT&&OT(),e._techIdx=LT&<(),e._defines=NT&&NT(),e._states=FT&&FT(),e._props=kT&&kT(),e._passes=[],e._hash=0,e}s(e,t),e.getHash=function(t){for(var e,i=0,n=f(t.passes);!(e=n()).done;)i^=e.value.hash;return i};var i=e.prototype;return i.initialize=function(t){this._passes.length?tt(12005):(this._defines||(this._defines=[]),this._states||(this._states=[]),this._props||(this._props=[]),this._fillInfo(t),this._update())},i.reset=function(t){this.initialize(t)},i.destroy=function(){return this._doDestroy(),t.prototype.destroy.call(this)},i.recompileShaders=function(){tt(16370,this.name)},i.overridePipelineStates=function(){tt(16371,this.name)},i.onLoaded=function(){this._update()},i.resetUniforms=function(t){void 0===t&&(t=!0),this._props.length=this._passes.length;for(var e=0;e<this._props.length;e++)this._props[e]={};if(t)for(var i,n=f(this._passes);!(i=n()).done;){var r=i.value;r.resetUBOs(),r.resetTextures()}},i.setProperty=function(t,e,i){var n=!1;if(void 0===i)for(var r=this._passes,s=r.length,a=0;a<s;a++){var o=r[a];this._uploadProperty(o,t,e)&&(this._props[o.propertyIndex][t]=e,n=!0)}else{i>=this._passes.length&&tt(16372,i);var h=this._passes[i];this._uploadProperty(h,t,e)&&(this._props[h.propertyIndex][t]=e,n=!0)}n||tt(16373,t)},i.getProperty=function(t,e){if(void 0===e)for(var i=this._props,n=i.length,r=0;r<n;r++){var s=i[r];if(t in s)return s[t]}else{if(e>=this._passes.length)return tt(16372,e),null;var a=this._props[this._passes[e].propertyIndex];if(t in a)return a[t]}return null},i.copy=function(t,e){this._techIdx=t._techIdx,this._props.length=t._props.length;for(var i=0;i<t._props.length;i++)this._props[i]=r({},t._props[i]);this._defines.length=t._defines.length;for(var n=0;n<t._defines.length;n++)this._defines[n]=r({},t._defines[n]);this._states.length=t._states.length;for(var s=0;s<t._states.length;s++)this._states[s]=r({},t._states[s]);this._effectAsset=t._effectAsset,e&&this._fillInfo(e),this._update()},i._fillInfo=function(t){void 0!==t.technique&&(this._techIdx=t.technique),t.effectAsset?this._effectAsset=t.effectAsset:t.effectName&&(this._effectAsset=$y.get(t.effectName)),t.defines&&this._prepareInfo(t.defines,this._defines),t.states&&this._prepareInfo(t.states,this._states)},i._prepareInfo=function(t,e){var i=t;if(!Array.isArray(i)){var n=this._effectAsset?this._effectAsset.techniques[this._techIdx].passes.length:1;i=Array(n).fill(i)}for(var r=0;r<i.length;++r)Object.assign(e[r]||(e[r]={}),i[r])},i._createPasses=function(){var t=this._effectAsset.techniques[this._techIdx||0];if(!t)return[];for(var e=t.passes.length,i=[],n=0;n<e;++n){var r=t.passes[n],s=r.passIndex=n,a=r.defines=this._defines[s]||(this._defines[s]={});if(r.stateOverrides=this._states[s]||(this._states[s]={}),void 0!==r.propertyIndex&&Object.assign(a,this._defines[r.propertyIndex]),void 0!==r.embeddedMacros&&Object.assign(a,r.embeddedMacros),!r.switch||a[r.switch]){var o=new IT(S.director.root);o.initialize(r),i.push(o)}}return i},i._update=function(t){var i=this;if(void 0===t&&(t=!0),this._effectAsset){this._passes=this._createPasses();var n=this._effectAsset.techniques[this._techIdx].passes.length;if(this._props.length=n,t)this._passes.forEach((function(t,e){var n=i._props[e];for(var r in n||(n=i._props[e]={}),void 0!==t.propertyIndex&&Object.assign(n,i._props[t.propertyIndex]),n)i._uploadProperty(t,r,n[r])}));else for(var r=0;r<this._props.length;r++)this._props[r]={}}this._hash=e.getHash(this)},i._uploadProperty=function(t,e,i){var n=t.getHandle(e);if(!n)return!1;if(IT.getTypeFromHandle(n)<nc.SAMPLER1D)if(Array.isArray(i))t.setUniformArray(n,i);else if(null!==i){var r;if(null!==(r=t.properties[e])&&void 0!==r&&r.linear){var s=i;VT(UT,s),UT.w=s.w,i=UT}t.setUniform(n,i)}else t.resetUniform(e);else if(Array.isArray(i))for(var a=0;a<i.length;a++)this._bindTexture(t,n,i[a],a);else i?this._bindTexture(t,n,i):t.resetTexture(e);return!0},i._bindTexture=function(t,e,i,n){var r=IT.getBindingFromHandle(e);if(i instanceof xf)t.bindTexture(r,i,n);else if(i instanceof Xd){var s=i.getGFXTexture();if(!s||!s.width||!s.height)return;t.bindTexture(r,s,n),t.bindSampler(r,i.getGFXSampler(),n)}},i._doDestroy=function(){if(this._passes&&this._passes.length)for(var t,e=f(this._passes);!(t=e()).done;)t.value.destroy();this._passes.length=0},i.initDefault=function(e){t.prototype.initDefault.call(this,e),this.initialize({effectName:"builtin-unlit",defines:{USE_COLOR:!0},technique:0}),this.setProperty("mainColor",new En("#ff00ff"))},i.validate=function(){return!!this._effectAsset&&!this._effectAsset.isDefault&&this.passes.length>0},n(e,[{key:"effectAsset",get:function(){return this._effectAsset}},{key:"effectName",get:function(){return this._effectAsset?this._effectAsset.name:""}},{key:"technique",get:function(){return this._techIdx}},{key:"passes",get:function(){return this._passes}},{key:"hash",get:function(){return this._hash}},{key:"parent",get:function(){return null}},{key:"owner",get:function(){return null}}]),e}(vd),OT=ja(PT.prototype,"_effectAsset",[BT],(function(){return null})),LT=ja(PT.prototype,"_techIdx",[lo],(function(){return 0})),NT=ja(PT.prototype,"_defines",[lo],(function(){return[]})),FT=ja(PT.prototype,"_states",[lo],(function(){return[]})),kT=ja(PT.prototype,"_props",[lo],(function(){return[]})),MT=PT))||MT));S.Material=zT;var HT=Ee({Low_256x256:256,Medium_512x512:512,High_1024x1024:1024,Ultra_2048x2048:2048}),WT=Ee({Planar:0,ShadowMap:1}),XT=Ee({HARD:0,SOFT:1,SOFT_2X:2,SOFT_4X:3}),jT=Ee({LEVEL_1:1,LEVEL_2:2,LEVEL_3:3,LEVEL_4:4}),YT=Ee({NONE:1,RemoveDuplicates:2,DisableRotationFix:3}),qT=WT.ShadowMap+1,KT=function(){function t(){this.fixedSphere=new Ir(0,0,0,.01),this.maxReceived=4,this._matLight=new Vn,this._material=null,this._instancingMaterial=null,this._enabled=!1,this._type=qT,this._distance=0,this._planeBias=1,this._normal=new gn(0,1,0),this._shadowColor=new En(0,0,0,76),this._size=new jn(1024,1024),this._shadowMapDirty=!1}var e=t.prototype;return e.getPlanarShader=function(t){this._material||(this._material=new zT,this._material.initialize({effectName:"pipeline/planar-shadow"}));var e=this._material.passes;return e.length>0?e[0].getShaderVariant(t):null},e.initialize=function(t){this._enabled=t.enabled,this._type=this.enabled?t.type:qT,this.normal=t.planeDirection,this.distance=t.planeHeight,this.planeBias=t.planeBias,this.shadowColor=t.shadowColor,this.maxReceived=t.maxReceived,t.shadowMapSize!==this._size.x&&(this.size.set(t.shadowMapSize,t.shadowMapSize),this._shadowMapDirty=!0)},e.activate=function(){if(this._enabled)if(this.type===WT.Planar)this._updatePlanarInfo();else{var t=S.director.root;t.pipeline.macros.CC_SHADOW_TYPE=2,t.onGlobalPipelineStateChanged()}else{var e=S.director.root;e.pipeline.macros.CC_SHADOW_TYPE=0,e.onGlobalPipelineStateChanged()}},e._updatePlanarInfo=function(){this._material||(this._material=new zT,this._material.initialize({effectName:"pipeline/planar-shadow"}));var t=S.director.root;t.pipeline.macros.CC_SHADOW_TYPE=1,t.onGlobalPipelineStateChanged()},e.destroy=function(){this._material&&this._material.destroy(),this._instancingMaterial&&this._instancingMaterial.destroy(),this.fixedSphere.destroy()},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t,this.activate()}},{key:"type",get:function(){return this._type},set:function(t){this._type=this.enabled?t:qT,this.activate()}},{key:"normal",get:function(){return this._normal},set:function(t){gn.copy(this._normal,t)}},{key:"distance",get:function(){return this._distance},set:function(t){this._distance=t}},{key:"planeBias",get:function(){return this._planeBias},set:function(t){this._planeBias=t}},{key:"shadowColor",get:function(){return this._shadowColor},set:function(t){this._shadowColor=t}},{key:"size",get:function(){return this._size},set:function(t){this._size.set(t)}},{key:"shadowMapDirty",get:function(){return this._shadowMapDirty},set:function(t){this._shadowMapDirty=t}},{key:"matLight",get:function(){return this._matLight}},{key:"material",get:function(){return this._material}},{key:"instancingMaterial",get:function(){return this._instancingMaterial}}]),t}();KT.MAX_FAR=2e3,KT.COEFFICIENT_OF_EXPANSION=2*Math.sqrt(3),S.Shadows=KT;var QT=function(t){function e(e,i){var n;(n=t.call(this,e.root)||this)._dontNotify=!1,n._parent=e,n._owner=i,n._doInit(n._parent,!0);for(var r=0;r<n._shaderInfo.blocks.length;r++){var s=n._shaderInfo.blocks[r],a=n._blocks[s.binding],o=n._parent.blocks[s.binding];a.set(o)}n._rootBufferDirty=!0;for(var h=n._parent,u=0;u<n._shaderInfo.samplerTextures.length;u++)for(var l=n._shaderInfo.samplerTextures[u],_=0;_<l.count;_++){var f=h._descriptorSet.getSampler(l.binding,_),d=h._descriptorSet.getTexture(l.binding,_);n._descriptorSet.bindSampler(l.binding,f,_),n._descriptorSet.bindTexture(l.binding,d,_)}return t.prototype.tryCompile.call(c(n)),n}s(e,t);var i=e.prototype;return i.overridePipelineStates=function(t,e){this._bs.reset(),this._rs.reset(),this._dss.reset(),IT.fillPipelineInfo(this,t),IT.fillPipelineInfo(this,e),this._onStateChange()},i.tryCompile=function(e){if(e&&!wy(this._defines,e))return!1;var i=t.prototype.tryCompile.call(this);return this._onStateChange(),i},i.beginChangeStatesSilently=function(){this._dontNotify=!0},i.endChangeStatesSilently=function(){this._dontNotify=!1},i._syncBatchingScheme=function(){this._defines.USE_INSTANCING=!1,this._batchingScheme=TT.NONE},i._onStateChange=function(){this._hash=IT.getPassHash(this),this._owner.onPassStateChange(this._dontNotify)},n(e,[{key:"parent",get:function(){return this._parent}}]),e}(IT),ZT=function(t){function e(e){var i;return(i=t.call(this)||this)._passes=[],i._subModelIdx=0,i._parent=e.parent,i._owner=e.owner||null,i._subModelIdx=e.subModelIdx||0,i.copy(i._parent),i}s(e,t);var i=e.prototype;return i.recompileShaders=function(t,e){if(this._passes&&this.effectAsset)if(void 0===e)for(var i,n=f(this._passes);!(i=n()).done;)i.value.tryCompile(t);else this._passes[e].tryCompile(t)},i.overridePipelineStates=function(t,e){if(this._passes&&this.effectAsset){var i=this.effectAsset.techniques[this.technique].passes;if(void 0===e)for(var n=0;n<this._passes.length;n++){var r=this._passes[n],s=this._states[n]||(this._states[n]={});for(var a in t)s[a]=t[a];r.overridePipelineStates(i[r.passIndex],s)}else{var o=this._states[e]||(this._states[e]={});for(var h in t)o[h]=t[h];this._passes[e].overridePipelineStates(i[e],o)}}},i.destroy=function(){return this._doDestroy(),!0},i.onPassStateChange=function(t){this._hash=zT.getHash(this),!t&&this._owner&&this._owner._onRebuildPSO(this._subModelIdx,this)},i._createPasses=function(){var t=[],e=this._parent.passes;if(!e)return t;for(var i=0;i<e.length;++i)t.push(new QT(e[i],this));return t},n(e,[{key:"parent",get:function(){return this._parent}},{key:"owner",get:function(){return this._owner}}]),e}(zT),JT=null,$T=null,tA=Ee({HEMISPHERE_DIFFUSE:0,AUTOGEN_HEMISPHERE_DIFFUSE_WITH_REFLECTION:1,DIFFUSEMAP_WITH_REFLECTION:2}),eA=function(){function t(){this._envmapLDR=null,this._envmapHDR=null,this._diffuseMapLDR=null,this._diffuseMapHDR=null,this._globalDSManager=null,this._model=null,this._default=null,this._enabled=!1,this._useIBL=!1,this._useHDR=!0,this._useDiffuseMap=!1,this._editableMaterial=null,this._activated=!1,this._reflectionHDR=null,this._reflectionLDR=null,this._rotationAngle=0}var e=t.prototype;return e.initialize=function(t){this._activated=!1,this._enabled=t.enabled,this._useIBL=t.useIBL,this._useDiffuseMap=t.applyDiffuseMap,this._useHDR=t.useHDR},e.setEnvMaps=function(t,e){this._envmapHDR=t,this._envmapLDR=e,this._updateGlobalBinding(),this._updatePipeline()},e.setDiffuseMaps=function(t,e){this._diffuseMapHDR=t,this._diffuseMapLDR=e,this._updateGlobalBinding(),this._updatePipeline()},e.setSkyboxMaterial=function(t){t?(this._editableMaterial=new ZT({parent:t}),this._editableMaterial.recompileShaders({USE_RGBE_CUBEMAP:this.isRGBE})):this._editableMaterial=null,this._updatePipeline()},e.setReflectionMaps=function(t,e){this._reflectionHDR=t,this._reflectionLDR=e,this._updateGlobalBinding(),this._updatePipeline()},e.setRotationAngle=function(t){this._rotationAngle=t},e.getRotationAngle=function(){return this._rotationAngle},e.updateMaterialRenderInfo=function(){this._updateGlobalBinding(),this._updatePipeline()},e.activate=function(){var t=S.director.root.pipeline;this._globalDSManager=t.globalDSManager,this._default=bT.get("default-cube-texture"),this._model||(this._model=S.director.root.createModel(S.renderer.scene.Model));var e=this._default.isRGBE;if(this._default.isUsingOfflineMipmaps(),this.envmap&&(e=this.envmap.isRGBE,this.envmap.isUsingOfflineMipmaps()),!$T){var i=new zT;i.initialize({effectName:"pipeline/skybox",defines:{USE_RGBE_CUBEMAP:e}}),$T=new ZT({parent:i})}this.enabled&&(JT||(JT=S.utils.createMesh(S.primitives.box({width:2,height:2,length:2}))),this._editableMaterial?this._model.initSubModel(0,JT.renderingSubMeshes[0],this._editableMaterial):this._model.initSubModel(0,JT.renderingSubMeshes[0],$T)),this.envmap||(this.envmap=this._default),this.diffuseMap||(this.diffuseMap=this._default),this._updateGlobalBinding(),this._updatePipeline(),this._activated=!0},e._updatePipeline=function(){var t=S.director.root,e=t.pipeline,i=this.useIBL?this.isRGBE?2:1:0,n=this.useIBL&&this.useDiffuseMap&&this.diffuseMap&&this.diffuseMap!==this._default?this.isRGBE?2:1:0,r=this.useHDR,s=this.useConvolutionMap;if(e.macros.CC_USE_IBL===i&&e.macros.CC_USE_DIFFUSEMAP===n&&e.macros.CC_USE_HDR===r&&e.macros.CC_IBL_CONVOLUTED===s||(e.macros.CC_USE_IBL=i,e.macros.CC_USE_DIFFUSEMAP=n,e.macros.CC_USE_HDR=r,e.macros.CC_IBL_CONVOLUTED=s,this._activated&&t.onGlobalPipelineStateChanged()),this.enabled){var a=this.envmap?this.envmap:this._default,o=this._editableMaterial?this._editableMaterial:$T;o&&(o.setProperty("environmentMap",a),o.recompileShaders({USE_RGBE_CUBEMAP:this.isRGBE})),this._model&&(this._model.setSubModelMaterial(0,o),this._updateSubModes())}},e._updateGlobalBinding=function(){if(this._globalDSManager){var t=Ff.gfxDevice;if(this.reflectionMap){var e=this.reflectionMap.getGFXTexture(),i=t.getSampler(this.reflectionMap.getSamplerInfo());this._globalDSManager.bindSampler(jg,i),this._globalDSManager.bindTexture(jg,e)}else{var n=this.envmap?this.envmap:this._default;if(n){var r=n.getGFXTexture(),s=t.getSampler(n.getSamplerInfo());this._globalDSManager.bindSampler(jg,s),this._globalDSManager.bindTexture(jg,r)}}var a=this.diffuseMap?this.diffuseMap:this._default;if(a){var o=a.getGFXTexture(),h=t.getSampler(a.getSamplerInfo());this._globalDSManager.bindSampler(Kg,h),this._globalDSManager.bindTexture(Kg,o)}this._globalDSManager.update()}},e._updateSubModes=function(){if(this._model)for(var t=this._model.subModels,e=0;e<t.length;e++)t[e].update()},n(t,[{key:"model",get:function(){return this._model}},{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t,t?this.activate():this._updatePipeline()}},{key:"useHDR",get:function(){return this._useHDR},set:function(t){this._useHDR=t,this.setEnvMaps(this._envmapHDR,this._envmapLDR)}},{key:"useIBL",get:function(){return this._useIBL},set:function(t){this._useIBL=t,this._updatePipeline()}},{key:"useDiffuseMap",get:function(){return this._useDiffuseMap},set:function(t){this._useDiffuseMap=t,this._updatePipeline()}},{key:"isRGBE",get:function(){return!!this.envmap&&this.envmap.isRGBE}},{key:"useConvolutionMap",get:function(){return this.reflectionMap?this.reflectionMap.isUsingOfflineMipmaps():!!this.envmap&&this.envmap.isUsingOfflineMipmaps()}},{key:"envmap",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._envmapHDR:this._envmapLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this.setEnvMaps(t,this._envmapLDR):this.setEnvMaps(this._envmapHDR,t)}},{key:"diffuseMap",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._diffuseMapHDR:this._diffuseMapLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this.setDiffuseMaps(t,this._diffuseMapLDR):this.setDiffuseMaps(this._diffuseMapHDR,t)}},{key:"reflectionMap",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._reflectionHDR:this._reflectionLDR}},{key:"editableMaterial",get:function(){return this._editableMaterial}}]),t}();S.Skybox=eA;var iA=new cn,nA=Ee({LINEAR:0,EXP:1,EXP_SQUARED:2,LAYERED:3}),rA=nA.LAYERED+1,sA=function(){function t(){this._fogColor=new En("#C8C8C8"),this._colorArray=new cn(.2,.2,.2,1),this._enabled=!1,this._accurate=!1,this._type=0,this._fogDensity=.3,this._fogStart=.5,this._fogEnd=300,this._fogAtten=5,this._fogTop=1.5,this._fogRange=1.2,this._activated=!1}var e=t.prototype;return e.initialize=function(t){this._activated=!1,this.fogColor=t.fogColor,this._enabled=t.enabled,this._type=this.enabled?t.type:rA,this._accurate=t.accurate,this.fogDensity=t.fogDensity,this.fogStart=t.fogStart,this.fogEnd=t.fogEnd,this.fogAtten=t.fogAtten,this.fogTop=t.fogTop,this.fogRange=t.fogRange},e.activate=function(){this._updatePipeline(),this._activated=!0},e._updatePipeline=function(){var t=S.director.root,e=this.enabled?this.type:rA,i=this.accurate?1:0,n=t.pipeline;n.macros.CC_USE_FOG===e&&n.macros.CC_USE_ACCURATE_FOG===i||(n.macros.CC_USE_FOG=e,n.macros.CC_USE_ACCURATE_FOG=i,this._activated&&t.onGlobalPipelineStateChanged())},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t,t?this.activate():(this._type=rA,this._updatePipeline())}},{key:"accurate",get:function(){return this._accurate},set:function(t){this._accurate=t,this._updatePipeline()}},{key:"fogColor",get:function(){return this._fogColor},set:function(t){this._fogColor.set(t),iA.set(t.x,t.y,t.z,t.w),VT(this._colorArray,iA)}},{key:"type",get:function(){return this._type},set:function(t){this._type=this.enabled?t:rA,this.enabled&&this._updatePipeline()}},{key:"fogDensity",get:function(){return this._fogDensity},set:function(t){this._fogDensity=t}},{key:"fogStart",get:function(){return this._fogStart},set:function(t){this._fogStart=t}},{key:"fogEnd",get:function(){return this._fogEnd},set:function(t){this._fogEnd=t}},{key:"fogAtten",get:function(){return this._fogAtten},set:function(t){this._fogAtten=t}},{key:"fogTop",get:function(){return this._fogTop},set:function(t){this._fogTop=t}},{key:"fogRange",get:function(){return this._fogRange},set:function(t){this._fogRange=t}},{key:"colorArray",get:function(){return this._colorArray}}]),t}();S.Fog=sA;var aA,oA,hA,uA,lA,cA,_A,fA,dA,pA,mA,gA,vA,yA,SA,TA,AA,bA,EA,CA,xA,wA,RA,IA,DA,BA,MA,PA,OA,LA,NA,FA,kA,GA,VA,UA,zA,HA,WA,XA,jA,YA,qA,KA,QA,ZA,JA,$A,tb,eb,ib,nb,rb,sb,ab,ob,hb,ub,lb,cb,_b,fb,db,pb,mb,gb,vb,yb,Sb,Tb,Ab,bb,Eb,Cb,xb,wb,Rb,Ib,Db,Bb,Mb,Pb,Ob,Lb,Nb,Fb,kb,Gb,Vb,Ub,zb,Hb,Wb,Xb,jb,Yb,qb,Kb,Qb,Zb,Jb,$b,tE,eE,iE,nE,rE,sE,aE,oE,hE,uE,lE,cE,_E,fE,dE,pE,mE,gE,vE,yE,SE,TE,AE,bE,EE,CE,xE,wE,RE=Ee({DEFAULT:0,LINEAR:1}),IE=function(){function t(){this._toneMappingType=RE.DEFAULT,this._activated=!1}var e=t.prototype;return e.initialize=function(t){this._toneMappingType=t.toneMappingType},e.activate=function(){this._updatePipeline(),this._activated=!0},e._updatePipeline=function(){var t=S.director.root;t.pipeline.macros.CC_TONE_MAPPING_TYPE=this._toneMappingType,this._activated&&t.onGlobalPipelineStateChanged()},n(t,[{key:"toneMappingType",get:function(){return this._toneMappingType},set:function(t){this._toneMappingType=t,this._updatePipeline()}}]),t}(),DE=new gn(0,1,0),BE=new gn,ME=new cn,PE=new En,OE=new Bn,LE=function(t){var e=1/Math.max(Math.max(Math.max(t.x,t.y),t.z),1e-4);e<1&&(t.x*=e,t.y*=e,t.z*=e)},NE=t("dy",(aA=eo("cc.AmbientInfo"),oA=Lo(ni),hA=co("_skyColor"),uA=co("_skyIllum"),lA=co("_groundAlbedo"),aA((m((_A=function(){function t(){this._skyColorHDR=fA&&fA(),this._skyIllumHDR=dA&&dA(),this._groundAlbedoHDR=pA&&pA(),this._skyColorLDR=mA&&mA(),this._skyIllumLDR=gA&&gA(),this._groundAlbedoLDR=vA&&vA(),this._resource=null}return t.prototype.activate=function(t){this._resource=t,this._resource.initialize(this)},n(t,[{key:"skyColorHDR",get:function(){return this._skyColorHDR}},{key:"groundAlbedoHDR",get:function(){return this._groundAlbedoHDR}},{key:"skyIllumHDR",get:function(){return this._skyIllumHDR}},{key:"skyColorLDR",get:function(){return this._skyColorLDR}},{key:"groundAlbedoLDR",get:function(){return this._groundAlbedoLDR}},{key:"skyIllumLDR",get:function(){return this._skyIllumLDR}},{key:"skyLightingColor",get:function(){var t=S.director.root.pipeline.pipelineSceneData.isHDR;return ME.set(t?this._skyColorHDR:this._skyColorLDR),LE(ME),PE.set(255*ME.x,255*ME.y,255*ME.z,255)},set:function(t){ME.set(t.x,t.y,t.z,t.w),S.director.root.pipeline.pipelineSceneData.isHDR?this._skyColorHDR.set(ME):this._skyColorLDR.set(ME),this._resource&&this._resource.skyColor.set(ME)}},{key:"skyColor",set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this._skyColorHDR.set(t):this._skyColorLDR.set(t),this._resource&&this._resource.skyColor.set(t)}},{key:"skyIllum",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._skyIllumHDR:this._skyIllumLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this._skyIllumHDR=t:this._skyIllumLDR=t,this._resource&&(this._resource.skyIllum=t)}},{key:"groundLightingColor",get:function(){var t=S.director.root.pipeline.pipelineSceneData.isHDR;return ME.set(t?this._groundAlbedoHDR:this._groundAlbedoLDR),LE(ME),PE.set(255*ME.x,255*ME.y,255*ME.z,255)},set:function(t){ME.set(t.x,t.y,t.z,t.w),S.director.root.pipeline.pipelineSceneData.isHDR?this._groundAlbedoHDR.set(ME):this._groundAlbedoLDR.set(ME),this._resource&&this._resource.groundAlbedo.set(ME)}},{key:"groundAlbedo",set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this._groundAlbedoHDR.set(t):this._groundAlbedoLDR.set(t),this._resource&&this._resource.groundAlbedo.set(t)}}]),t}()).prototype,"skyIllum",[oA],Object.getOwnPropertyDescriptor(_A.prototype,"skyIllum"),_A.prototype),fA=ja(_A.prototype,"_skyColorHDR",[lo,hA],(function(){return new cn(.2,.5,.8,1)})),dA=ja(_A.prototype,"_skyIllumHDR",[lo,uA],(function(){return wg.SKY_ILLUM})),pA=ja(_A.prototype,"_groundAlbedoHDR",[lo,lA],(function(){return new cn(.2,.2,.2,1)})),mA=ja(_A.prototype,"_skyColorLDR",[lo],(function(){return new cn(.2,.5,.8,1)})),gA=ja(_A.prototype,"_skyIllumLDR",[lo],(function(){return wg.SKY_ILLUM})),vA=ja(_A.prototype,"_groundAlbedoLDR",[lo],(function(){return new cn(.2,.2,.2,1)})),cA=_A))||cA));S.AmbientInfo=NE;var FE=t("dz",(yA=eo("cc.SkyboxInfo"),SA=Lo(tA),TA=Lo(ug),AA=Lo(ni),bA=Lo(ug),EA=Lo(ug),CA=Lo(zT),xA=Lo(ug),wA=co("_envmap"),RA=Lo(ug),IA=Lo(ug),DA=Lo(ug),BA=Lo(zT),MA=Lo(ug),PA=Lo(ug),yA((m((LA=function(){function t(){this._envLightingType=NA&&NA(),this._envmapHDR=FA&&FA(),this._envmapLDR=kA&&kA(),this._diffuseMapHDR=GA&&GA(),this._diffuseMapLDR=VA&&VA(),this._enabled=UA&&UA(),this._useHDR=zA&&zA(),this._editableMaterial=HA&&HA(),this._reflectionHDR=WA&&WA(),this._reflectionLDR=XA&&XA(),this._rotationAngle=jA&&jA(),this._resource=null}var e=t.prototype;return e.activate=function(t){this.envLightingType=this._envLightingType,this._resource=t,this._resource.initialize(this),this._resource.setEnvMaps(this._envmapHDR,this._envmapLDR),this._resource.setDiffuseMaps(this._diffuseMapHDR,this._diffuseMapLDR),this._resource.setSkyboxMaterial(this._editableMaterial),this._resource.setReflectionMaps(this._reflectionHDR,this._reflectionLDR),this._resource.setRotationAngle(this._rotationAngle),this._resource.activate()},e.updateEnvMap=function(t){t||(this.applyDiffuseMap=!1,this.useIBL=!1,this.envLightingType=tA.HEMISPHERE_DIFFUSE,tt(15001)),this._resource&&(this._resource.setEnvMaps(this._envmapHDR,this._envmapLDR),this._resource.setDiffuseMaps(this._diffuseMapHDR,this._diffuseMapLDR),this._resource.setReflectionMaps(this._reflectionHDR,this._reflectionLDR),this._resource.useDiffuseMap=this.applyDiffuseMap,this._resource.envmap=t)},e.setMaterialProperty=function(t,e,i){this._resource&&this._resource.enabled&&this._resource.editableMaterial&&(this._resource.editableMaterial.setProperty(t,e,i),this._resource.editableMaterial.passes.forEach((function(t){t.update()})))},n(t,[{key:"applyDiffuseMap",get:function(){return tA.DIFFUSEMAP_WITH_REFLECTION===this._envLightingType},set:function(t){this._resource&&(this._resource.useDiffuseMap=t)}},{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled!==t&&(this._enabled=t,this._resource&&(this._resource.enabled=this._enabled))}},{key:"envLightingType",get:function(){return this._envLightingType},set:function(t){this.envmap||tA.HEMISPHERE_DIFFUSE===t?(tA.HEMISPHERE_DIFFUSE===t?(this.useIBL=!1,this.applyDiffuseMap=!1):tA.AUTOGEN_HEMISPHERE_DIFFUSE_WITH_REFLECTION===t?(this.useIBL=!0,this.applyDiffuseMap=!1):tA.DIFFUSEMAP_WITH_REFLECTION===t&&(this.useIBL=!0,this.applyDiffuseMap=!0),this._envLightingType=t):(this.useIBL=!1,this.applyDiffuseMap=!1,this._envLightingType=tA.HEMISPHERE_DIFFUSE,tt(15001))}},{key:"useIBL",get:function(){return tA.HEMISPHERE_DIFFUSE!==this._envLightingType},set:function(t){this._resource&&(this._resource.useIBL=t)}},{key:"useHDR",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR=this._useHDR,this._useHDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR=t,this._useHDR=t,this._resource&&this.envLightingType===tA.DIFFUSEMAP_WITH_REFLECTION&&(null===this.diffuseMap?(this.envLightingType=tA.AUTOGEN_HEMISPHERE_DIFFUSE_WITH_REFLECTION,tt(15e3)):this.diffuseMap.isDefault&&tt(15002)),this._resource&&(this._resource.useHDR=this._useHDR,this._resource.updateMaterialRenderInfo())}},{key:"envmap",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._envmapHDR:this._envmapLDR},set:function(t){var e=S.director.root.pipeline.pipelineSceneData.isHDR;e?(this._envmapHDR=t,this._reflectionHDR=null):(this._envmapLDR=t,this._reflectionLDR=null),t||(e?this._diffuseMapHDR=null:this._diffuseMapLDR=null,this.applyDiffuseMap=!1,this.useIBL=!1,this.envLightingType=tA.HEMISPHERE_DIFFUSE,tt(15001)),this._resource&&(this._resource.setEnvMaps(this._envmapHDR,this._envmapLDR),this._resource.setDiffuseMaps(this._diffuseMapHDR,this._diffuseMapLDR),this._resource.setReflectionMaps(this._reflectionHDR,this._reflectionLDR),this._resource.useDiffuseMap=this.applyDiffuseMap,this._resource.envmap=t)}},{key:"rotationAngle",get:function(){return this._rotationAngle},set:function(t){this._rotationAngle=t,this._resource&&this._resource.setRotationAngle(this._rotationAngle)}},{key:"diffuseMap",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._diffuseMapHDR:this._diffuseMapLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this._diffuseMapHDR=t:this._diffuseMapLDR=t,this._resource&&this._resource.setDiffuseMaps(this._diffuseMapHDR,this._diffuseMapLDR)}},{key:"reflectionMap",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._reflectionHDR:this._reflectionLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this._reflectionHDR=t:this._reflectionLDR=t,this._resource&&this._resource.setReflectionMaps(this._reflectionHDR,this._reflectionLDR)}},{key:"skyboxMaterial",get:function(){return this._editableMaterial},set:function(t){this._editableMaterial=t,this._resource&&this._resource.setSkyboxMaterial(this._editableMaterial)}}]),t}()).prototype,"envLightingType",[SA],Object.getOwnPropertyDescriptor(LA.prototype,"envLightingType"),LA.prototype),m(LA.prototype,"envmap",[TA],Object.getOwnPropertyDescriptor(LA.prototype,"envmap"),LA.prototype),m(LA.prototype,"rotationAngle",[AA],Object.getOwnPropertyDescriptor(LA.prototype,"rotationAngle"),LA.prototype),m(LA.prototype,"diffuseMap",[bA],Object.getOwnPropertyDescriptor(LA.prototype,"diffuseMap"),LA.prototype),m(LA.prototype,"reflectionMap",[EA],Object.getOwnPropertyDescriptor(LA.prototype,"reflectionMap"),LA.prototype),m(LA.prototype,"skyboxMaterial",[CA],Object.getOwnPropertyDescriptor(LA.prototype,"skyboxMaterial"),LA.prototype),NA=ja(LA.prototype,"_envLightingType",[lo],(function(){return tA.HEMISPHERE_DIFFUSE})),FA=ja(LA.prototype,"_envmapHDR",[lo,xA,wA],(function(){return null})),kA=ja(LA.prototype,"_envmapLDR",[lo,RA],(function(){return null})),GA=ja(LA.prototype,"_diffuseMapHDR",[lo,IA],(function(){return null})),VA=ja(LA.prototype,"_diffuseMapLDR",[lo,DA],(function(){return null})),UA=ja(LA.prototype,"_enabled",[lo],(function(){return!1})),zA=ja(LA.prototype,"_useHDR",[lo],(function(){return!0})),HA=ja(LA.prototype,"_editableMaterial",[lo,BA],(function(){return null})),WA=ja(LA.prototype,"_reflectionHDR",[lo,MA],(function(){return null})),XA=ja(LA.prototype,"_reflectionLDR",[lo,PA],(function(){return null})),jA=ja(LA.prototype,"_rotationAngle",[lo],(function(){return 0})),OA=LA))||OA));S.SkyboxInfo=FE;var kE=t("dA",(YA=eo("cc.FogInfo"),qA=Lo(nA),KA=Lo(ni),QA=Lo(ni),ZA=Lo(ni),JA=Lo(ni),$A=Lo(ni),tb=Lo(ni),YA(((fb=function(){function t(){this._type=nb&&nb(),this._fogColor=rb&&rb(),this._enabled=sb&&sb(),this._fogDensity=ab&&ab(),this._fogStart=ob&&ob(),this._fogEnd=hb&&hb(),this._fogAtten=ub&&ub(),this._fogTop=lb&&lb(),this._fogRange=cb&&cb(),this._accurate=_b&&_b(),this._resource=null}return t.prototype.activate=function(t){this._resource=t,this._resource.initialize(this),this._resource.activate()},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled!==t&&(this._enabled=t,this._resource&&(this._resource.enabled=t,t&&(this._resource.type=this._type)))}},{key:"accurate",get:function(){return this._accurate},set:function(t){this._accurate!==t&&(this._accurate=t,this._resource&&(this._resource.accurate=t,t&&(this._resource.type=this._type)))}},{key:"fogColor",get:function(){return this._fogColor},set:function(t){this._fogColor.set(t),this._resource&&(this._resource.fogColor=this._fogColor)}},{key:"type",get:function(){return this._type},set:function(t){this._type=t,this._resource&&(this._resource.type=t)}},{key:"fogDensity",get:function(){return this._fogDensity},set:function(t){this._fogDensity=t,this._resource&&(this._resource.fogDensity=t)}},{key:"fogStart",get:function(){return this._fogStart},set:function(t){this._fogStart=t,this._resource&&(this._resource.fogStart=t)}},{key:"fogEnd",get:function(){return this._fogEnd},set:function(t){this._fogEnd=t,this._resource&&(this._resource.fogEnd=t)}},{key:"fogAtten",get:function(){return this._fogAtten},set:function(t){this._fogAtten=t,this._resource&&(this._resource.fogAtten=t)}},{key:"fogTop",get:function(){return this._fogTop},set:function(t){this._fogTop=t,this._resource&&(this._resource.fogTop=t)}},{key:"fogRange",get:function(){return this._fogRange},set:function(t){this._fogRange=t,this._resource&&(this._resource.fogRange=t)}}]),t}()).FogType=nA,m((ib=fb).prototype,"type",[qA],Object.getOwnPropertyDescriptor(ib.prototype,"type"),ib.prototype),m(ib.prototype,"fogDensity",[KA],Object.getOwnPropertyDescriptor(ib.prototype,"fogDensity"),ib.prototype),m(ib.prototype,"fogStart",[QA],Object.getOwnPropertyDescriptor(ib.prototype,"fogStart"),ib.prototype),m(ib.prototype,"fogEnd",[ZA],Object.getOwnPropertyDescriptor(ib.prototype,"fogEnd"),ib.prototype),m(ib.prototype,"fogAtten",[JA],Object.getOwnPropertyDescriptor(ib.prototype,"fogAtten"),ib.prototype),m(ib.prototype,"fogTop",[$A],Object.getOwnPropertyDescriptor(ib.prototype,"fogTop"),ib.prototype),m(ib.prototype,"fogRange",[tb],Object.getOwnPropertyDescriptor(ib.prototype,"fogRange"),ib.prototype),nb=ja(ib.prototype,"_type",[lo],(function(){return nA.LINEAR})),rb=ja(ib.prototype,"_fogColor",[lo],(function(){return new En("#C8C8C8")})),sb=ja(ib.prototype,"_enabled",[lo],(function(){return!1})),ab=ja(ib.prototype,"_fogDensity",[lo],(function(){return.3})),ob=ja(ib.prototype,"_fogStart",[lo],(function(){return.5})),hb=ja(ib.prototype,"_fogEnd",[lo],(function(){return 300})),ub=ja(ib.prototype,"_fogAtten",[lo],(function(){return 5})),lb=ja(ib.prototype,"_fogTop",[lo],(function(){return 1.5})),cb=ja(ib.prototype,"_fogRange",[lo],(function(){return 1.2})),_b=ja(ib.prototype,"_accurate",[lo],(function(){return!1})),eb=ib))||eb)),GE=t("dB",(db=eo("cc.ShadowsInfo"),pb=Lo(WT),mb=Lo(ni),gb=Lo(ni),vb=Lo(ii),yb=Lo(HT),db((m((Tb=function(){function t(){this._enabled=Ab&&Ab(),this._type=bb&&bb(),this._normal=Eb&&Eb(),this._distance=Cb&&Cb(),this._planeBias=xb&&xb(),this._shadowColor=wb&&wb(),this._maxReceived=Rb&&Rb(),this._size=Ib&&Ib(),this._resource=null}var e=t.prototype;return e.setPlaneFromNode=function(t){t.getWorldRotation(OE),this.planeDirection=gn.transformQuat(BE,DE,OE),t.getWorldPosition(BE),this.planeHeight=gn.dot(this._normal,BE)},e.activate=function(t){this._resource=t,this._resource.initialize(this),this._resource.activate()},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled!==t&&(this._enabled=t,this._resource&&(this._resource.enabled=t,t&&(this._resource.type=this._type)))}},{key:"type",get:function(){return this._type},set:function(t){this._type=t,this._resource&&(this._resource.type=t)}},{key:"shadowColor",get:function(){return this._shadowColor},set:function(t){this._shadowColor.set(t),this._resource&&(this._resource.shadowColor=t)}},{key:"planeDirection",get:function(){return this._normal},set:function(t){gn.copy(this._normal,t),this._resource&&(this._resource.normal=t)}},{key:"planeHeight",get:function(){return this._distance},set:function(t){this._distance=t,this._resource&&(this._resource.distance=t)}},{key:"planeBias",get:function(){return this._planeBias},set:function(t){this._planeBias=t,this._resource&&(this._resource.planeBias=t)}},{key:"maxReceived",get:function(){return this._maxReceived},set:function(t){this._maxReceived=t,this._resource&&(this._resource.maxReceived=t)}},{key:"shadowMapSize",get:function(){return this._size.x},set:function(t){this._size.set(t,t),this._resource&&(this._resource.size.set(t,t),this._resource.shadowMapDirty=!0)}}]),t}()).prototype,"type",[pb],Object.getOwnPropertyDescriptor(Tb.prototype,"type"),Tb.prototype),m(Tb.prototype,"planeHeight",[mb],Object.getOwnPropertyDescriptor(Tb.prototype,"planeHeight"),Tb.prototype),m(Tb.prototype,"planeBias",[gb],Object.getOwnPropertyDescriptor(Tb.prototype,"planeBias"),Tb.prototype),m(Tb.prototype,"maxReceived",[vb],Object.getOwnPropertyDescriptor(Tb.prototype,"maxReceived"),Tb.prototype),m(Tb.prototype,"shadowMapSize",[yb],Object.getOwnPropertyDescriptor(Tb.prototype,"shadowMapSize"),Tb.prototype),Ab=ja(Tb.prototype,"_enabled",[lo],(function(){return!1})),bb=ja(Tb.prototype,"_type",[lo],(function(){return WT.Planar})),Eb=ja(Tb.prototype,"_normal",[lo],(function(){return new gn(0,1,0)})),Cb=ja(Tb.prototype,"_distance",[lo],(function(){return 0})),xb=ja(Tb.prototype,"_planeBias",[lo],(function(){return 1})),wb=ja(Tb.prototype,"_shadowColor",[lo],(function(){return new En(0,0,0,76)})),Rb=ja(Tb.prototype,"_maxReceived",[lo],(function(){return 4})),Ib=ja(Tb.prototype,"_size",[lo],(function(){return new jn(1024,1024)})),Sb=Tb))||Sb));S.ShadowsInfo=GE;var VE=t("dC",new gn(-1024,-1024,-1024)),UE=t("dD",new gn(1024,1024,1024)),zE=t("dE",8),HE=t("dF",(Db=eo("cc.OctreeInfo"),Bb=Lo(ii),Db((m((Pb=function(){function t(){this._enabled=Ob&&Ob(),this._minPos=Lb&&Lb(),this._maxPos=Nb&&Nb(),this._depth=Fb&&Fb(),this._resource=null}return t.prototype.activate=function(t){this._resource=t,this._resource.initialize(this)},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled!==t&&(this._enabled=t,this._resource&&(this._resource.enabled=t))}},{key:"minPos",get:function(){return this._minPos},set:function(t){this._minPos=t,this._resource&&(this._resource.minPos=t)}},{key:"maxPos",get:function(){return this._maxPos},set:function(t){this._maxPos=t,this._resource&&(this._resource.maxPos=t)}},{key:"depth",get:function(){return this._depth},set:function(t){this._depth=t,this._resource&&(this._resource.depth=t)}}]),t}()).prototype,"depth",[Bb],Object.getOwnPropertyDescriptor(Pb.prototype,"depth"),Pb.prototype),Ob=ja(Pb.prototype,"_enabled",[lo],(function(){return!1})),Lb=ja(Pb.prototype,"_minPos",[lo],(function(){return new gn(VE)})),Nb=ja(Pb.prototype,"_maxPos",[lo],(function(){return new gn(UE)})),Fb=ja(Pb.prototype,"_depth",[lo],(function(){return zE})),Mb=Pb))||Mb));S.OctreeInfo=HE;var WE=t("dG",(kb=eo("cc.SkinInfo"),Gb=Lo(ni),Vb=Lo(ni),kb((m((zb=function(){function t(){this._enabled=Hb&&Hb(),this._blurRadius=Wb&&Wb(),this._sssIntensity=Xb&&Xb(),this._resource=null}return t.prototype.activate=function(t){this._resource=t,this._resource.initialize(this)},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled!==t&&(this._enabled=t,this._resource&&(this._resource.enabled=t))}},{key:"blurRadius",get:function(){return this._blurRadius},set:function(t){this._blurRadius=t,this._resource&&(this._resource.blurRadius=t)}},{key:"sssIntensity",get:function(){return this._sssIntensity},set:function(t){this._sssIntensity=t,this._resource&&(this._resource.sssIntensity=t)}}]),t}()).prototype,"blurRadius",[Gb],Object.getOwnPropertyDescriptor(zb.prototype,"blurRadius"),zb.prototype),m(zb.prototype,"sssIntensity",[Vb],Object.getOwnPropertyDescriptor(zb.prototype,"sssIntensity"),zb.prototype),Hb=ja(zb.prototype,"_enabled",[lo],(function(){return!0})),Wb=ja(zb.prototype,"_blurRadius",[lo],(function(){return.01})),Xb=ja(zb.prototype,"_sssIntensity",[lo],(function(){return 3})),Ub=zb))||Ub));S.SkinInfo=WE;var XE=t("dH",(jb=eo("cc.PostSettingsInfo"),Yb=Lo(RE),jb((m((Kb=function(){function t(){this._toneMappingType=Qb&&Qb(),this._resource=null}return t.prototype.activate=function(t){this._resource=t,this._resource.initialize(this),this._resource.activate()},n(t,[{key:"toneMappingType",get:function(){return this._toneMappingType},set:function(t){this._toneMappingType=t,this._resource&&(this._resource.toneMappingType=t)}}]),t}()).prototype,"toneMappingType",[Yb],Object.getOwnPropertyDescriptor(Kb.prototype,"toneMappingType"),Kb.prototype),Qb=ja(Kb.prototype,"_toneMappingType",[lo],(function(){return RE.DEFAULT})),qb=Kb))||qb));S.PostSettingsInfo=XE;var jE,YE,qE,KE,QE,ZE,JE,$E,tC,eC,iC,nC,rC,sC,aC,oC,hC,uC,lC,cC,_C,fC,dC,pC,mC,gC,vC,yC,SC,TC,AC,bC,EC,CC,xC,wC,RC,IC,DC,BC,MC,PC,OC,LC,NC,FC,kC,GC,VC,UC,zC,HC,WC,XC,jC,YC,qC,KC,QC,ZC,JC,$C,tx,ex,ix,nx,rx,sx,ax,ox=t("dI",(Zb=eo("cc.LightProbeInfo"),Jb=Lo(ni),$b=Lo(ii),tE=Lo(ii),eE=Lo(ni),iE=Lo(ni),Zb((m((rE=function(){function t(){this._giScale=sE&&sE(),this._giSamples=aE&&aE(),this._bounces=oE&&oE(),this._reduceRinging=hE&&hE(),this._showProbe=uE&&uE(),this._showWireframe=lE&&lE(),this._showConvex=cE&&cE(),this._data=_E&&_E(),this._lightProbeSphereVolume=fE&&fE(),this._nodes=[],this._scene=null,this._resource=null}var e=t.prototype;return e.activate=function(t,e){this._scene=t,this._resource=e,this._resource.initialize(this)},e.onProbeBakeFinished=function(){this.onProbeBakingChanged(this._scene)},e.onProbeBakeCleared=function(){this.clearSHCoefficients(),this.onProbeBakingChanged(this._scene)},e.onProbeBakingChanged=function(t){if(t){t.emit(vm.LIGHT_PROBE_BAKING_CHANGED);for(var e=0;e<t.children.length;e++){var i=t.children[e];this.onProbeBakingChanged(i)}}},e.clearSHCoefficients=function(){if(this._data){for(var t=this._data.probes,e=0;e<t.length;e++)t[e].coefficients.length=0;this.clearAllSHUBOs()}},e.isUniqueNode=function(){return 1===this._nodes.length},e.addNode=function(t){if(!t)return!1;for(var e=0;e<this._nodes.length;e++)if(this._nodes[e].node===t)return!1;return this._nodes.push({node:t,probes:null}),!0},e.removeNode=function(t){if(!t)return!1;var e=this._nodes.findIndex((function(e){return e.node===t}));return-1!==e&&(this._nodes.splice(e,1),!0)},e.syncData=function(t,e){for(var i=0;i<this._nodes.length;i++)if(this._nodes[i].node===t)return void(this._nodes[i].probes=e)},e.update=function(t){if(void 0===t&&(t=!0),S.internal.LightProbesData){this._data||(this._data=new S.internal.LightProbesData,this._resource&&(this._resource.data=this._data));for(var e=[],i=0;i<this._nodes.length;i++){var n=this._nodes[i].node,r=this._nodes[i].probes,s=n.worldPosition;if(r)for(var a=0;a<r.length;a++){var o=new gn(0,0,0);gn.add(o,r[a],s),e.push(o)}}if(e.length<4)return this.resetAllTetraIndices(),void this._data.reset();this._data.updateProbes(e),t&&(this.resetAllTetraIndices(),this._data.updateTetrahedrons())}},e.clearAllSHUBOs=function(){if(this._scene){var t=this._scene.renderScene;if(t)for(var e=t.models,i=0;i<e.length;i++)e[i].clearSHUBOs()}},e.resetAllTetraIndices=function(){if(this._scene){var t=this._scene.renderScene;if(t)for(var e=t.models,i=0;i<e.length;i++)e[i].tetrahedronIndex=-1}},n(t,[{key:"giScale",get:function(){return this._giScale},set:function(t){this._giScale!==t&&(this._giScale=t,this._resource&&(this._resource.giScale=t))}},{key:"giSamples",get:function(){return this._giSamples},set:function(t){this._giSamples!==t&&(this._giSamples=t,this._resource&&(this._resource.giSamples=t))}},{key:"bounces",get:function(){return this._bounces},set:function(t){this._bounces!==t&&(this._bounces=t,this._resource&&(this._resource.bounces=t))}},{key:"reduceRinging",get:function(){return this._reduceRinging},set:function(t){this._reduceRinging!==t&&(this._reduceRinging=t,this._resource&&(this._resource.reduceRinging=t))}},{key:"showProbe",get:function(){return this._showProbe},set:function(t){this._showProbe!==t&&(this._showProbe=t,this._resource&&(this._resource.showProbe=t))}},{key:"showWireframe",get:function(){return this._showWireframe},set:function(t){this._showWireframe!==t&&(this._showWireframe=t,this._resource&&(this._resource.showWireframe=t))}},{key:"showConvex",get:function(){return this._showConvex},set:function(t){this._showConvex!==t&&(this._showConvex=t,this._resource&&(this._resource.showConvex=t))}},{key:"data",get:function(){return this._data},set:function(t){this._data!==t&&(this._data=t,this._resource&&(this._resource.data=t))}},{key:"lightProbeSphereVolume",get:function(){return this._lightProbeSphereVolume},set:function(t){this._lightProbeSphereVolume!==t&&(this._lightProbeSphereVolume=t,this._resource&&(this._resource.lightProbeSphereVolume=t))}}]),t}()).prototype,"giScale",[Jb],Object.getOwnPropertyDescriptor(rE.prototype,"giScale"),rE.prototype),m(rE.prototype,"giSamples",[$b],Object.getOwnPropertyDescriptor(rE.prototype,"giSamples"),rE.prototype),m(rE.prototype,"bounces",[tE],Object.getOwnPropertyDescriptor(rE.prototype,"bounces"),rE.prototype),m(rE.prototype,"reduceRinging",[eE],Object.getOwnPropertyDescriptor(rE.prototype,"reduceRinging"),rE.prototype),m(rE.prototype,"lightProbeSphereVolume",[iE],Object.getOwnPropertyDescriptor(rE.prototype,"lightProbeSphereVolume"),rE.prototype),sE=ja(rE.prototype,"_giScale",[lo],(function(){return 1})),aE=ja(rE.prototype,"_giSamples",[lo],(function(){return 1024})),oE=ja(rE.prototype,"_bounces",[lo],(function(){return 2})),hE=ja(rE.prototype,"_reduceRinging",[lo],(function(){return 0})),uE=ja(rE.prototype,"_showProbe",[lo],(function(){return!0})),lE=ja(rE.prototype,"_showWireframe",[lo],(function(){return!0})),cE=ja(rE.prototype,"_showConvex",[lo],(function(){return!1})),_E=ja(rE.prototype,"_data",[lo],(function(){return null})),fE=ja(rE.prototype,"_lightProbeSphereVolume",[lo],(function(){return 1})),nE=rE))||nE)),hx=t("dJ",(dE=eo("cc.SceneGlobals"),pE=Lo(FE),dE((gE=function(){function t(){this.ambient=vE&&vE(),this.shadows=yE&&yE(),this._skybox=SE&&SE(),this.fog=TE&&TE(),this.octree=AE&&AE(),this.skin=bE&&bE(),this.lightProbeInfo=EE&&EE(),this.postSettings=CE&&CE(),this.bakedWithStationaryMainLight=xE&&xE(),this.bakedWithHighpLightmap=wE&&wE(),this.disableLightmap=!1}return t.prototype.activate=function(t){var e=S.director.root.pipeline.pipelineSceneData;this.skybox.activate(e.skybox),this.ambient.activate(e.ambient),this.shadows.activate(e.shadows),this.fog.activate(e.fog),this.octree.activate(e.octree),this.skin.activate(e.skin),this.postSettings.activate(e.postSettings),this.lightProbeInfo&&e.lightProbes&&this.lightProbeInfo.activate(t,e.lightProbes),S.director.root.onGlobalPipelineStateChanged()},n(t,[{key:"skybox",get:function(){return this._skybox},set:function(t){this._skybox=t}}]),t}(),vE=ja(gE.prototype,"ambient",[lo],(function(){return new NE})),yE=ja(gE.prototype,"shadows",[lo],(function(){return new GE})),SE=ja(gE.prototype,"_skybox",[lo],(function(){return new FE})),TE=ja(gE.prototype,"fog",[lo],(function(){return new kE})),m(gE.prototype,"skybox",[pE],Object.getOwnPropertyDescriptor(gE.prototype,"skybox"),gE.prototype),AE=ja(gE.prototype,"octree",[lo],(function(){return new HE})),bE=ja(gE.prototype,"skin",[lo],(function(){return new WE})),EE=ja(gE.prototype,"lightProbeInfo",[lo],(function(){return new ox})),CE=ja(gE.prototype,"postSettings",[lo],(function(){return new XE})),xE=ja(gE.prototype,"bakedWithStationaryMainLight",[lo],(function(){return!1})),wE=ja(gE.prototype,"bakedWithHighpLightmap",[lo],(function(){return!1})),mE=gE))||mE));S.SceneGlobals=hx;var ux=(jE=eo("cc.TargetInfo"),YE=Lo([si]),jE((KE=function(){this.localID=QE&&QE()},QE=ja(KE.prototype,"localID",[lo,YE],(function(){return[]})),qE=KE))||qE),lx=(ZE=eo("cc.TargetOverrideInfo"),JE=Lo(Ms),$E=Lo(ux),tC=Lo([si]),eC=Lo(hg),iC=Lo(ux),ZE((rC=function(){this.source=sC&&sC(),this.sourceInfo=aC&&aC(),this.propertyPath=oC&&oC(),this.target=hC&&hC(),this.targetInfo=uC&&uC()},sC=ja(rC.prototype,"source",[lo,JE],(function(){return null})),aC=ja(rC.prototype,"sourceInfo",[lo,$E],(function(){return null})),oC=ja(rC.prototype,"propertyPath",[lo,tC],(function(){return[]})),hC=ja(rC.prototype,"target",[lo,eC],(function(){return null})),uC=ja(rC.prototype,"targetInfo",[lo,iC],(function(){return null})),nC=rC))||nC),cx=eo("cc.CompPrefabInfo")((cC=function(){this.fileId=_C&&_C()},_C=ja(cC.prototype,"fileId",[lo],(function(){return""})),lC=cC))||lC,_x=(fC=eo("CCPropertyOverrideInfo"),dC=Lo(ux),pC=Lo([si]),fC((gC=function(){function t(){this.targetInfo=vC&&vC(),this.propertyPath=yC&&yC(),this.value=SC&&SC()}return t.prototype.isTarget=function(){},t}(),vC=ja(gC.prototype,"targetInfo",[lo,dC],(function(){return null})),yC=ja(gC.prototype,"propertyPath",[lo,pC],(function(){return[]})),SC=ja(gC.prototype,"value",[lo],null),mC=gC))||mC),fx=(TC=eo("cc.MountedChildrenInfo"),AC=Lo(ux),bC=Lo([hg]),TC((CC=function(){function t(){this.targetInfo=xC&&xC(),this.nodes=wC&&wC()}return t.prototype.isTarget=function(){},t}(),xC=ja(CC.prototype,"targetInfo",[lo,AC],(function(){return null})),wC=ja(CC.prototype,"nodes",[lo,bC],(function(){return[]})),EC=CC))||EC),dx=(RC=eo("cc.MountedComponentsInfo"),IC=Lo(ux),DC=Lo([mp]),RC((MC=function(){function t(){this.targetInfo=PC&&PC(),this.components=OC&&OC()}return t.prototype.isTarget=function(){},t}(),PC=ja(MC.prototype,"targetInfo",[lo,IC],(function(){return null})),OC=ja(MC.prototype,"components",[lo,DC],(function(){return[]})),BC=MC))||BC),px=(LC=eo("cc.PrefabInstance"),NC=Lo(hg),FC=Lo([fx]),kC=Lo([dx]),GC=Lo([_x]),VC=Lo([ux]),LC((zC=function(){function t(){this.fileId=HC&&HC(),this.prefabRootNode=WC&&WC(),this.mountedChildren=XC&&XC(),this.mountedComponents=jC&&jC(),this.propertyOverrides=YC&&YC(),this.removedComponents=qC&&qC(),this.targetMap={},this.expanded=!1}var e=t.prototype;return e.findPropertyOverride=function(){},e.removePropertyOverride=function(){},t}(),HC=ja(zC.prototype,"fileId",[lo],(function(){return""})),WC=ja(zC.prototype,"prefabRootNode",[lo,NC],null),XC=ja(zC.prototype,"mountedChildren",[lo,FC],(function(){return[]})),jC=ja(zC.prototype,"mountedComponents",[lo,kC],(function(){return[]})),YC=ja(zC.prototype,"propertyOverrides",[lo,GC],(function(){return[]})),qC=ja(zC.prototype,"removedComponents",[lo,VC],(function(){return[]})),UC=zC))||UC),mx=(KC=eo("cc.PrefabInfo"),QC=Lo(hg),ZC=Lo(px),JC=Lo([lx]),KC((tx=function(){this.root=ex&&ex(),this.asset=ix&&ix(),this.fileId=nx&&nx(),this.instance=rx&&rx(),this.targetOverrides=sx&&sx(),this.nestedPrefabInstanceRoots=ax&&ax()},ex=ja(tx.prototype,"root",[lo,QC],null),ix=ja(tx.prototype,"asset",[lo],null),nx=ja(tx.prototype,"fileId",[lo],(function(){return""})),rx=ja(tx.prototype,"instance",[lo,ZC],null),sx=ja(tx.prototype,"targetOverrides",[lo,JC],null),ax=ja(tx.prototype,"nestedPrefabInstanceRoots",[lo],null),$C=tx))||$C);function gx(t){var e=null==t?void 0:t.prefab;if(e&&e.instance){if(!e.asset)return it(3701,t.name),void(e.instance=void 0);var i=t._objFlags,n=t.getParent(),r=t.uuid;t[Ds],S.game._isCloning=!0,e.asset._doInstantiate(t),S.game._isCloning=!1,t._objFlags=i,t.modifyParent(n),t.id=r,t.prefab&&(t.prefab.instance=e.instance)}}function vx(t,e,i){var n;if(e&&t){var r=e,s=null===(n=t.prefab)||void 0===n?void 0:n.instance;!i&&s&&(e[s.fileId]={},r=e[s.fileId]);var a=t.prefab;a&&(r[a.fileId]=t);for(var o=t.components,h=0;h<o.length;h++){var u=o[h];u.__prefab&&(r[u.__prefab.fileId]=u)}for(var l=0;l<t.children.length;l++)vx(t.children[l],r,!1)}}function yx(t,e){if(!t)return null;for(var i=e,n=0;n<t.length;n++){if(!i)return null;i=i[t[n]]}return i}function Sx(t,e,i){if(e)for(var n=0;n<e.length;n++){var r=e[n];if(r&&r.targetInfo){var s=yx(r.targetInfo.localID,i);if(!s)continue;var a=i,o=r.targetInfo.localID;if(o.length>0)for(var h=0;h<o.length-1;h++)a=a[o[h]];if(r.nodes)for(var u=0;u<r.nodes.length;u++){var l=r.nodes[u];l&&!s.children.includes(l)&&(s.children.push(l),l.modifyParent(s),vx(l,a,!1),l.siblingIndex=s.children.length-1,Cx(l,!0))}}}}function Tx(t,e,i){if(e)for(var n=0;n<e.length;n++){var r=e[n];if(r&&r.targetInfo){var s=yx(r.targetInfo.localID,i);if(!s)continue;if(r.components)for(var a=0;a<r.components.length;a++){var o=r.components[a];o&&(o.node=s,s.getWritableComponents().push(o))}}}}function Ax(t,e,i){if(e)for(var n=0;n<e.length;n++){var r=e[n];if(r){var s=yx(r.localID,i);if(!s||!s.node)continue;var a=s.node.components.indexOf(s);a>=0&&s.node.getWritableComponents().splice(a,1)}}}function bx(t,e,i){if(!(e.length<=0))for(var n=null,r=0;r<e.length;r++){var s=e[r];if(s&&s.targetInfo){if(!(n=yx(s.targetInfo.localID,i)))continue;var a=n,o=s.propertyPath.slice();if(o.length>0){var h=o.pop();if(!h)continue;for(var u=0;u<o.length&&(a=a[o[u]]);u++);if(!a)continue;if(Array.isArray(a))if("length"===h)a[h]=s.value;else{var l=Number.parseInt(h);Number.isInteger(l)&&l<a.length&&(a[h]=s.value)}else a[h]instanceof Ie?a[h].set(s.value):a[h]=s.value}}}}function Ex(t){var e,i=null===(e=t.prefab)||void 0===e?void 0:e.targetOverrides;if(i)for(var n=0;n<i.length;n++){var r,s=i[n],a=s.source,o=s.sourceInfo;if(o){var h,u=s.source,l=null==u||null===(h=u.prefab)||void 0===h?void 0:h.instance;l&&l.targetMap&&(a=yx(o.localID,l.targetMap))}if(a){var c,_=s.targetInfo;if(_){var f=s.target,d=null==f||null===(r=f.prefab)||void 0===r?void 0:r.instance;if(d&&d.targetMap&&(c=yx(_.localID,d.targetMap))){var p=s.propertyPath.slice(),m=a;if(p.length>0){var g=p.pop();if(!g)return;for(var v=0;v<p.length&&(m=m[p[v]]);v++);if(!m)continue;m[g]=c}}}}}}function Cx(t,e){var i;void 0===e&&(e=!1);var n=null==t||null===(i=t.prefab)||void 0===i?void 0:i.instance;if(n&&!n.expanded){gx(t),e&&t&&t.children&&t.children.forEach((function(t){Cx(t,!0)}));var r={};n.targetMap=r,vx(t,r,!0),Sx(0,n.mountedChildren,r),Ax(0,n.removedComponents,r),Tx(0,n.mountedComponents,r),bx(0,n.propertyOverrides,r),n.expanded=!0}else e&&t&&t.children&&t.children.forEach((function(t){Cx(t,!0)}))}function xx(t){var e=t.prefab;e&&e.nestedPrefabInstanceRoots&&e.nestedPrefabInstanceRoots.forEach((function(t){Cx(t)}))}S._PrefabInfo=mx;var wx,Rx,Ix,Dx,Bx,Mx,Px,Ox=Object.freeze({__proto__:null,createNodeWithPrefab:gx,generateTargetMap:vx,getTarget:yx,applyMountedChildren:Sx,applyMountedComponents:Tx,applyRemovedComponents:Ax,applyPropertyOverrides:bx,applyTargetOverrides:Ex,expandPrefabInstanceNode:Cx,expandNestedPrefabInstanceNode:xx,applyNodeAndComponentId:function t(e,i){for(var n=e.components,r=e.children,s=0;s<n.length;s++){var a,o,h=n[s],u=null!==(a=null===(o=h.__prefab)||void 0===o?void 0:o.fileId)&&void 0!==a?a:"";h._id=""+i+u}for(var l=0;l<r.length;l++){var c=r[l],_=c.prefab,f=null!=_&&_.instance?_.instance.fileId:null==_?void 0:_.fileId;f&&(c.id=""+i+f,null!=_&&_.instance||t(c,i))}},TargetInfo:ux,TargetOverrideInfo:lx,CompPrefabInfo:cx,PropertyOverrideInfo:_x,MountedChildrenInfo:fx,MountedComponentsInfo:dx,PrefabInstance:px,PrefabInfo:mx}),Lx=t("dm",eo("cc.Scene")((Rx=function(t){s(i,t);var e=i.prototype;function i(e){var i;return(i=t.call(this,e)||this).autoReleaseAssets=Ix&&Ix(),i._globals=Dx&&Dx(),i.dependAssets=null,i._renderScene=null,i._prefabSyncedInLiveReload=!1,i._activeInHierarchy=!1,S.director&&S.director.root&&(i._renderScene=S.director.root.createScene({})),i._inited=!S.game||!S.game._isCloning,i}return e._updateScene=function(){this._scene=this},e.destroy=function(){var t=Ms.prototype.destroy.call(this);if(t)for(var e=this._children,i=0;i<e.length;++i)e[i].active=!1;return this._renderScene&&S.director.root.destroyScene(this._renderScene),this._active=!1,this._activeInHierarchy=!1,t},e.addComponent=function(){throw new Error(at(3822))},e._onHierarchyChanged=function(){},e._onPostActivated=function(){},e._onBatchCreated=function(t){for(var e=this._children.length,i=0;i<e;++i)this._children[i]._siblingIndex=i,this._children[i]._onBatchCreated(t)},e.updateWorldTransform=function(){},e._instantiate=function(){return null},e._load=function(){this._inited||(xx(this),Ex(this),this._onBatchCreated(v),this._inited=!0),this.walk(hg._setScene)},e._activate=function(t){void 0===t&&(t=!0),S.director._nodeActivator.activateNode(this,t),this._globals.activate(this)},n(i,[{key:"renderScene",get:function(){return this._renderScene}},{key:"globals",get:function(){return this._globals}}]),i}(hg),Ix=ja(Rx.prototype,"autoReleaseAssets",[lo],(function(){return!1})),Dx=ja(Rx.prototype,"_globals",[lo],(function(){return new hx})),wx=Rx))||wx);S.Scene=Lx;var Nx=t("d_",eo("cc.SceneAsset")((Mx=function(t){function e(){var e;return(e=t.call(this)||this).scene=Px&&Px(),e}s(e,t);var i=e.prototype;return i.initDefault=function(e){t.prototype.initDefault.call(this,e),this.scene=new Lx("New Scene")},i.validate=function(){return!!this.scene},e}(vd),Px=ja(Mx.prototype,"scene",[lo],(function(){return null})),Bx=Mx))||Bx);S.SceneAsset=Nx,Tt({SystemEventType:{newName:"Input.EventType",since:"3.3.0",removed:!1}}),Tt({SystemEvent:{newName:"Input",since:"3.4.0",removed:!1},systemEvent:{newName:"input",since:"3.4.0",removed:!1}});var Fx,kx,Gx=t("el",function(){function t(t,e){this.target=null,this.currentTarget=null,this.eventPhase=0,this.propagationStopped=!1,this.propagationImmediateStopped=!1,this.type=t,this.bubbles=!!e}var e=t.prototype;return e.unuse=function(){this.type=t.NO_TYPE,this.target=null,this.currentTarget=null,this.eventPhase=t.NONE,this.propagationStopped=!1,this.propagationImmediateStopped=!1},e.reuse=function(t,e){this.type=t,this.bubbles=e||!1},e.isStopped=function(){return this.propagationStopped||this.propagationImmediateStopped},e.getCurrentTarget=function(){return this.currentTarget},e.getType=function(){return this.type},t}());Gx.NO_TYPE="no_type",Gx.TOUCH="touch",Gx.MOUSE="mouse",Gx.KEYBOARD="keyboard",Gx.ACCELERATION="acceleration",Gx.NONE=0,Gx.CAPTURING_PHASE=1,Gx.AT_TARGET=2,Gx.BUBBLING_PHASE=3,S.Event=Gx,t("ek",Fx),function(t){t.TOUCH_START="touch-start",t.TOUCH_MOVE="touch-move",t.TOUCH_END="touch-end",t.TOUCH_CANCEL="touch-cancel",t.MOUSE_DOWN="mouse-down",t.MOUSE_MOVE="mouse-move",t.MOUSE_UP="mouse-up",t.MOUSE_WHEEL="mouse-wheel",t.MOUSE_ENTER="mouse-enter",t.MOUSE_LEAVE="mouse-leave",t.KEY_DOWN="keydown",t.KEY_UP="keyup",t.DEVICEMOTION="devicemotion",t.TRANSFORM_CHANGED="transform-changed",t.SCENE_CHANGED_FOR_PERSISTS="scene-changed-for-persists",t.SIZE_CHANGED="size-changed",t.ANCHOR_CHANGED="anchor-changed",t.COLOR_CHANGED="color-changed",t.CHILD_ADDED="child-added",t.CHILD_REMOVED="child-removed",t.PARENT_CHANGED="parent-changed",t.NODE_DESTROYED="node-destroyed",t.LAYER_CHANGED="layer-changed",t.SIBLING_ORDER_CHANGED="sibling-order-changed"}(Fx||t("ek",Fx={})),function(t){t.TOUCH_START="touch-start",t.TOUCH_MOVE="touch-move",t.TOUCH_END="touch-end",t.TOUCH_CANCEL="touch-cancel",t.MOUSE_DOWN="mouse-down",t.MOUSE_MOVE="mouse-move",t.MOUSE_UP="mouse-up",t.MOUSE_LEAVE="mouse-leave-window",t.MOUSE_ENTER="mouse-enter-window",t.MOUSE_WHEEL="mouse-wheel",t.KEY_DOWN="keydown",t.KEY_PRESSING="key-pressing",t.KEY_UP="keyup",t.DEVICEMOTION="devicemotion",t.GAMEPAD_INPUT="gamepad-input",t.GAMEPAD_CHANGE="gamepad-change",t.HANDLE_INPUT="handle-input",t.HANDLE_POSE_INPUT="handle-pose-input",t.HMD_POSE_INPUT="hmd-pose-input",t.HANDHELD_POSE_INPUT="handheld-pose-input"}(kx||(kx={})),S.SystemEventType=Fx;var Vx=t("em",function(t){function e(e,i){var n;return(n=t.call(this,Fx.DEVICEMOTION,i)||this).acc=e,n}return s(e,t),e}(Gx));Gx.EventAcceleration=Vx;var Ux=t("en",function(t){function e(e,i,n){var r;return"boolean"==typeof i&&(i=i?Fx.KEY_DOWN:Fx.KEY_UP),(r=t.call(this,i,n)||this).rawEvent=void 0,r._isPressed=i!==Fx.KEY_UP,"number"==typeof e?r.keyCode=e:(r.keyCode=e.keyCode,r.rawEvent=e),r.windowId=0,r}return s(e,t),n(e,[{key:"isPressed",get:function(){return this._isPressed}}]),e}(Gx));Gx.EventKeyboard=Ux;var zx=t("eo",function(t){function e(i,n,r,s){var a;return(a=t.call(this,i,n)||this).movementX=0,a.movementY=0,a.windowId=0,a.preventSwallow=!1,a._button=e.BUTTON_MISSING,a._x=0,a._y=0,a._prevX=0,a._prevY=0,a._scrollX=0,a._scrollY=0,a._eventType=i,r&&(a._prevX=r.x,a._prevY=r.y),a.windowId=null!=s?s:a.windowId,a}s(e,t);var i=e.prototype;return i.setScrollData=function(t,e){this._scrollX=t,this._scrollY=e},i.getScrollX=function(){return this._scrollX},i.getScrollY=function(){return this._scrollY},i.setLocation=function(t,e){this._x=t,this._y=e},i.getLocation=function(t){return t||(t=new jn),jn.set(t,this._x,this._y),t},i.getLocationInView=function(t){return t||(t=new jn),jn.set(t,this._x,S.view._designResolutionSize.height-this._y),t},i.getUILocation=function(t){return t||(t=new jn),jn.set(t,this._x,this._y),S.view._convertToUISpace(t),t},i.getPreviousLocation=function(t){return t||(t=new jn),jn.set(t,this._prevX,this._prevY),t},i.getUIPreviousLocation=function(t){return t||(t=new jn),jn.set(t,this._prevX,this._prevY),S.view._convertToUISpace(t),t},i.getDelta=function(t){return t||(t=new jn),jn.set(t,this._x-this._prevX,this._y-this._prevY),t},i.getDeltaX=function(){return this._x-this._prevX},i.getDeltaY=function(){return this._y-this._prevY},i.getUIDelta=function(t){return t||(t=new jn),jn.set(t,(this._x-this._prevX)/S.view.getScaleX(),(this._y-this._prevY)/S.view.getScaleY()),t},i.getUIDeltaX=function(){return(this._x-this._prevX)/S.view.getScaleX()},i.getUIDeltaY=function(){return(this._y-this._prevY)/S.view.getScaleY()},i.setButton=function(t){this._button=t},i.getButton=function(){return this._button},i.getLocationX=function(){return this._x},i.getLocationY=function(){return this._y},i.getUILocationX=function(){var t=S.view.getViewportRect();return(this._x-t.x)/S.view.getScaleX()},i.getUILocationY=function(){var t=S.view.getViewportRect();return(this._y-t.y)/S.view.getScaleY()},n(e,[{key:"eventType",get:function(){return this._eventType}}]),e}(Gx));zx.BUTTON_MISSING=-1,zx.BUTTON_LEFT=0,zx.BUTTON_RIGHT=2,zx.BUTTON_MIDDLE=1,zx.BUTTON_4=3,zx.BUTTON_5=4,zx.BUTTON_6=5,zx.BUTTON_7=6,zx.BUTTON_8=7,Gx.EventMouse=zx;var Hx=new jn,Wx=t("ep",function(t){function e(e,i,n,r){var s;return void 0===r&&(r=[]),(s=t.call(this,n,i)||this).touch=null,s.simulate=!1,s.windowId=0,s.preventSwallow=!1,s._eventCode=n,s._touches=e||[],s._allTouches=r,s}s(e,t);var i=e.prototype;return i.getEventCode=function(){return this._eventCode},i.getTouches=function(){return this._touches},i.getAllTouches=function(){return this._allTouches},i.setLocation=function(t,e){this.touch&&this.touch.setTouchInfo(this.touch.getID(),t,e)},i.getLocation=function(t){return this.touch?this.touch.getLocation(t):new jn},i.getUILocation=function(t){return this.touch?this.touch.getUILocation(t):new jn},i.getLocationInView=function(t){return this.touch?this.touch.getLocationInView(t):new jn},i.getPreviousLocation=function(t){return this.touch?this.touch.getPreviousLocation(t):new jn},i.getStartLocation=function(t){return this.touch?this.touch.getStartLocation(t):new jn},i.getUIStartLocation=function(t){return this.touch?this.touch.getUIStartLocation(t):new jn},i.getID=function(){return this.touch?this.touch.getID():null},i.getDelta=function(t){return this.touch?this.touch.getDelta(t):new jn},i.getUIDelta=function(t){return this.touch?this.touch.getUIDelta(t):new jn},i.getDeltaX=function(){return this.touch?this.touch.getDelta(Hx).x:0},i.getDeltaY=function(){return this.touch?this.touch.getDelta(Hx).y:0},i.getLocationX=function(){return this.touch?this.touch.getLocationX():0},i.getLocationY=function(){return this.touch?this.touch.getLocationY():0},e}(Gx));Wx.MAX_TOUCHES=5,Gx.EventTouch=Wx;var Xx,jx=t("eq",function(t){function e(e,i){var n;return(n=t.call(this,e,!1)||this).gamepad=i,n}return s(e,t),e}(Gx)),Yx=t("er",function(t){function e(e,i){var n;return(n=t.call(this,e,!1)||this).handleInputDevice=i,n}return s(e,t),e}(Gx)),qx=t("es",function(t){function e(e,i){var n;return(n=t.call(this,e,!1)||this).hmdInputDevice=i,n}return s(e,t),e}(Gx)),Kx=(t("et",function(t){function e(e,i){var n;return(n=t.call(this,e,!1)||this).handheldInputDevice=i,n}return s(e,t),e}(Gx)),t("eu",(function(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),this.x=t,this.y=e,this.z=i,this.timestamp=n})));t("ev",Xx),function(t){t[t.NONE=0]="NONE",t[t.MOBILE_BACK=6]="MOBILE_BACK",t[t.BACKSPACE=8]="BACKSPACE",t[t.TAB=9]="TAB",t[t.ENTER=13]="ENTER",t[t.SHIFT_LEFT=16]="SHIFT_LEFT",t[t.CTRL_LEFT=17]="CTRL_LEFT",t[t.ALT_LEFT=18]="ALT_LEFT",t[t.PAUSE=19]="PAUSE",t[t.CAPS_LOCK=20]="CAPS_LOCK",t[t.ESCAPE=27]="ESCAPE",t[t.SPACE=32]="SPACE",t[t.PAGE_UP=33]="PAGE_UP",t[t.PAGE_DOWN=34]="PAGE_DOWN",t[t.END=35]="END",t[t.HOME=36]="HOME",t[t.ARROW_LEFT=37]="ARROW_LEFT",t[t.ARROW_UP=38]="ARROW_UP",t[t.ARROW_RIGHT=39]="ARROW_RIGHT",t[t.ARROW_DOWN=40]="ARROW_DOWN",t[t.INSERT=45]="INSERT",t[t.DELETE=46]="DELETE",t[t.DIGIT_0=48]="DIGIT_0",t[t.DIGIT_1=49]="DIGIT_1",t[t.DIGIT_2=50]="DIGIT_2",t[t.DIGIT_3=51]="DIGIT_3",t[t.DIGIT_4=52]="DIGIT_4",t[t.DIGIT_5=53]="DIGIT_5",t[t.DIGIT_6=54]="DIGIT_6",t[t.DIGIT_7=55]="DIGIT_7",t[t.DIGIT_8=56]="DIGIT_8",t[t.DIGIT_9=57]="DIGIT_9",t[t.KEY_A=65]="KEY_A",t[t.KEY_B=66]="KEY_B",t[t.KEY_C=67]="KEY_C",t[t.KEY_D=68]="KEY_D",t[t.KEY_E=69]="KEY_E",t[t.KEY_F=70]="KEY_F",t[t.KEY_G=71]="KEY_G",t[t.KEY_H=72]="KEY_H",t[t.KEY_I=73]="KEY_I",t[t.KEY_J=74]="KEY_J",t[t.KEY_K=75]="KEY_K",t[t.KEY_L=76]="KEY_L",t[t.KEY_M=77]="KEY_M",t[t.KEY_N=78]="KEY_N",t[t.KEY_O=79]="KEY_O",t[t.KEY_P=80]="KEY_P",t[t.KEY_Q=81]="KEY_Q",t[t.KEY_R=82]="KEY_R",t[t.KEY_S=83]="KEY_S",t[t.KEY_T=84]="KEY_T",t[t.KEY_U=85]="KEY_U",t[t.KEY_V=86]="KEY_V",t[t.KEY_W=87]="KEY_W",t[t.KEY_X=88]="KEY_X",t[t.KEY_Y=89]="KEY_Y",t[t.KEY_Z=90]="KEY_Z",t[t.NUM_0=96]="NUM_0",t[t.NUM_1=97]="NUM_1",t[t.NUM_2=98]="NUM_2",t[t.NUM_3=99]="NUM_3",t[t.NUM_4=100]="NUM_4",t[t.NUM_5=101]="NUM_5",t[t.NUM_6=102]="NUM_6",t[t.NUM_7=103]="NUM_7",t[t.NUM_8=104]="NUM_8",t[t.NUM_9=105]="NUM_9",t[t.NUM_MULTIPLY=106]="NUM_MULTIPLY",t[t.NUM_PLUS=107]="NUM_PLUS",t[t.NUM_SUBTRACT=109]="NUM_SUBTRACT",t[t.NUM_DECIMAL=110]="NUM_DECIMAL",t[t.NUM_DIVIDE=111]="NUM_DIVIDE",t[t.F1=112]="F1",t[t.F2=113]="F2",t[t.F3=114]="F3",t[t.F4=115]="F4",t[t.F5=116]="F5",t[t.F6=117]="F6",t[t.F7=118]="F7",t[t.F8=119]="F8",t[t.F9=120]="F9",t[t.F10=121]="F10",t[t.F11=122]="F11",t[t.F12=123]="F12",t[t.NUM_LOCK=144]="NUM_LOCK",t[t.SCROLL_LOCK=145]="SCROLL_LOCK",t[t.SEMICOLON=186]="SEMICOLON",t[t.EQUAL=187]="EQUAL",t[t.COMMA=188]="COMMA",t[t.DASH=189]="DASH",t[t.PERIOD=190]="PERIOD",t[t.SLASH=191]="SLASH",t[t.BACK_QUOTE=192]="BACK_QUOTE",t[t.BRACKET_LEFT=219]="BRACKET_LEFT",t[t.BACKSLASH=220]="BACKSLASH",t[t.BRACKET_RIGHT=221]="BRACKET_RIGHT",t[t.QUOTE=222]="QUOTE",t[t.SHIFT_RIGHT=2e3]="SHIFT_RIGHT",t[t.CTRL_RIGHT=2001]="CTRL_RIGHT",t[t.ALT_RIGHT=2002]="ALT_RIGHT",t[t.NUM_ENTER=2003]="NUM_ENTER"}(Xx||t("ev",Xx={}));var Qx=new jn,Zx=t("ew",function(){function t(t,e,i){void 0===i&&(i=0),this._point=new jn,this._prevPoint=new jn,this._lastModified=0,this._id=0,this._startPoint=new jn,this._startPointCaptured=!1,this.setTouchInfo(i,t,e)}var e=t.prototype;return e.getLocation=function(t){return t||(t=new jn),t.set(this._point.x,this._point.y),t},e.getLocationX=function(){return this._point.x},e.getLocationY=function(){return this._point.y},e.getUILocation=function(t){return t||(t=new jn),t.set(this._point.x,this._point.y),S.view._convertToUISpace(t),t},e.getUILocationX=function(){var t=S.view.getViewportRect();return(this._point.x-t.x)/S.view.getScaleX()},e.getUILocationY=function(){var t=S.view.getViewportRect();return(this._point.y-t.y)/S.view.getScaleY()},e.getPreviousLocation=function(t){return t||(t=new jn),t.set(this._prevPoint.x,this._prevPoint.y),t},e.getUIPreviousLocation=function(t){return t||(t=new jn),t.set(this._prevPoint.x,this._prevPoint.y),S.view._convertToUISpace(t),t},e.getStartLocation=function(t){return t||(t=new jn),t.set(this._startPoint.x,this._startPoint.y),t},e.getUIStartLocation=function(t){return t||(t=new jn),t.set(this._startPoint.x,this._startPoint.y),S.view._convertToUISpace(t),t},e.getDelta=function(t){return t||(t=new jn),t.set(this._point),t.subtract(this._prevPoint),t},e.getUIDelta=function(t){return t||(t=new jn),Qx.set(this._point),Qx.subtract(this._prevPoint),t.set(S.view.getScaleX(),S.view.getScaleY()),jn.divide(t,Qx,t),t},e.getLocationInView=function(t){return t||(t=new jn),t.set(this._point.x,S.view._designResolutionSize.height-this._point.y),t},e.getPreviousLocationInView=function(t){return t||(t=new jn),t.set(this._prevPoint.x,S.view._designResolutionSize.height-this._prevPoint.y),t},e.getStartLocationInView=function(t){return t||(t=new jn),t.set(this._startPoint.x,S.view._designResolutionSize.height-this._startPoint.y),t},e.getID=function(){return this._id},e.setTouchInfo=function(t,e,i){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),this._prevPoint=this._point,this._point=new jn(e||0,i||0),this._id=t,this._startPointCaptured||(this._startPoint=new jn(this._point),this._startPointCaptured=!0)},e.setPoint=function(t,e){"object"==typeof t?(this._point.x=t.x,this._point.y=t.y):(this._point.x=t||0,this._point.y=e||0),this._lastModified=S.game.frameStartTime},e.setPrevPoint=function(t,e){this._prevPoint="object"==typeof t?new jn(t.x,t.y):new jn(t||0,e||0),this._lastModified=S.game.frameStartTime},e.clone=function(){var e=this.getID();this.getStartLocation(Qx);var i=new t(Qx.x,Qx.y,e);return this.getLocation(Qx),i.setPoint(Qx.x,Qx.y),this.getPreviousLocation(Qx),i.setPrevPoint(Qx),i},n(t,[{key:"lastModified",get:function(){return this._lastModified}}]),t}());S.Touch=Zx;var Jx=function(){function t(){this._intervalInMileSeconds=200,this._accelTimer=0,this._eventTarget=new Hs,this._globalEventClass=window.DeviceMotionEvent||window.DeviceOrientationEvent,Zs.browserType===Ws.MOBILE_QQ&&(this._globalEventClass=window.DeviceOrientationEvent),this._deviceEventName=this._globalEventClass===window.DeviceMotionEvent?"devicemotion":"deviceorientation",this._didAccelerateFunc=this._didAccelerate.bind(this)}var e=t.prototype;return e._registerEvent=function(){this._accelTimer=performance.now(),window.addEventListener(this._deviceEventName,this._didAccelerateFunc,!1)},e._unregisterEvent=function(){this._accelTimer=0,window.removeEventListener(this._deviceEventName,this._didAccelerateFunc,!1)},e._didAccelerate=function(t){var e=performance.now();if(!(e-this._accelTimer<this._intervalInMileSeconds)){this._accelTimer=e;var i=0,n=0,r=0;if(this._globalEventClass===window.DeviceMotionEvent){var s=t.accelerationIncludingGravity;i=.1*((null==s?void 0:s.x)||0),n=.1*((null==s?void 0:s.y)||0),r=.1*((null==s?void 0:s.z)||0)}else{var a=t;i=(a.gamma||0)/90*.981,n=-(a.beta||0)/90*.981,r=(a.alpha||0)/90*.981}if(ga.isFrameRotated){var o=i;i=-n,n=o}var h=i;90===window.orientation?(i=-n,n=h):-90===window.orientation?(i=n,n=-h):180===window.orientation&&(i=-i,n=-n),Zs.os===Ys.ANDROID&&Zs.browserType!==Ws.MOBILE_QQ&&(i=-i,n=-n);var u=performance.now(),l=new Kx(i,n,r,u),c=new Vx(l);this._eventTarget.emit(kx.DEVICEMOTION,c)}},e.start=function(){var t=this;window.DeviceMotionEvent&&"function"==typeof DeviceMotionEvent.requestPermission?DeviceMotionEvent.requestPermission().then((function(e){"granted"===e&&t._registerEvent()})).catch((function(t){z(t)})):this._registerEvent()},e.stop=function(){this._unregisterEvent()},e.setInterval=function(t){this._intervalInMileSeconds=t},e.on=function(t,e,i){this._eventTarget.on(t,e,i)},t}(),$x=function(){},tw=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.getValue=function(){throw new Error("Method not implemented.")},e}($x),ew=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.getValue=function(){throw new Error("Method not implemented.")},e}($x),iw=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.getValue=function(){throw new Error("Method not implemented.")},e}($x),nw=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.getValue=function(){throw new Error("Method not implemented.")},e}($x),rw=function(t){function e(e){var i;return(i=t.call(this)||this).positive=e.positive,i.negative=e.negative,i}return s(e,t),e.prototype.getValue=function(){var t=this.positive.getValue(),e=this.negative.getValue();return Math.abs(t)>Math.abs(e)?t:-e},e}(tw),sw=function(t){function e(e){var i;return(i=t.call(this)||this).up=e.up,i.down=e.down,i.left=e.left,i.right=e.right,i.xAxis=new rw({positive:i.right,negative:i.left}),i.yAxis=new rw({positive:i.up,negative:i.down}),i}return s(e,t),e.prototype.getValue=function(){return new jn(this.xAxis.getValue(),this.yAxis.getValue())},e}(ew);!function(t){function e(e){var i;return(i=t.call(this)||this).up=e.up,i.down=e.down,i.left=e.left,i.right=e.right,i.forward=e.forward,i.backward=e.backward,i.xAxis=new rw({positive:i.right,negative:i.left}),i.yAxis=new rw({positive:i.up,negative:i.down}),i.zAxis=new rw({positive:i.forward,negative:i.backward}),i}s(e,t),e.prototype.getValue=function(){return new gn(this.xAxis.getValue(),this.yAxis.getValue(),this.zAxis.getValue())}}(iw);var aw,ow=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.getValue=function(){return t.prototype.getValue.call(this)},e}(tw),hw=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(sw),uw=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(sw),lw=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.getValue=function(){return t.prototype.getValue.call(this)},e}(nw),cw=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.getValue=function(){return t.prototype.getValue.call(this)},e}(iw),_w=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.getValue=function(){return t.prototype.getValue.call(this)},e}(tw),fw="left",dw="right",pw=[];!function(t){t[t.HAND_LEFT=1]="HAND_LEFT",t[t.HAND_RIGHT=4]="HAND_RIGHT",t[t.AIM_LEFT=2]="AIM_LEFT",t[t.AIM_RIGHT=5]="AIM_RIGHT"}(aw||(aw={}));var mw,gw,vw,yw,Sw,Tw=function(){function t(t){var e;this._deviceId=-1,this._connected=!1,this._webPoseState=((e={})[aw.HAND_LEFT]={position:gn.ZERO,orientation:Bn.IDENTITY},e[aw.HAND_RIGHT]={position:gn.ZERO,orientation:Bn.IDENTITY},e[aw.AIM_LEFT]={position:gn.ZERO,orientation:Bn.IDENTITY},e[aw.AIM_RIGHT]={position:gn.ZERO,orientation:Bn.IDENTITY},e),this._deviceId=t,this._initInputSource()}t._init=function(){Zs.hasFeature(Ks.EVENT_GAMEPAD)&&t._registerEvent()},t._on=function(e,i,n){t._eventTarget.on(e,i,n)},t._removeInputDevice=function(e){var i=t.all.findIndex((function(t){return t.deviceId===e}));-1!==i&&fe(t.all,i)},t._getOrCreateInputDevice=function(e,i){var n=t.all.find((function(t){return t.deviceId===e}));return n||(n=new t(e),t.all.push(n)),n._connected=i,n},t._ensureDirectorDefined=function(e){t._intervalId=setInterval((function(){S.director&&S.Director&&(clearInterval(t._intervalId),t._intervalId=-1,e())}),50)},t._updateGamepadCnt=function(){for(var e=0,i=0,n=t._cachedWebGamepads.length;i<n;i++)t._cachedWebGamepads[i]&&e++;t._totalGamepadCnt=e},t._registerEvent=function(){t._ensureDirectorDefined((function(){t._cachedWebGamepads=t._getWebGamePads(),t._updateGamepadCnt(),S.director.on(S.Director.EVENT_BEGIN_FRAME,t._scanGamepads)})),window.addEventListener("gamepadconnected",(function(e){t._cachedWebGamepads[e.gamepad.index]=e.gamepad,t._updateGamepadCnt();var i=t._getOrCreateInputDevice(e.gamepad.index,!0);t._eventTarget.emit(kx.GAMEPAD_CHANGE,new jx(kx.GAMEPAD_CHANGE,i))})),window.addEventListener("gamepaddisconnected",(function(e){t._cachedWebGamepads[e.gamepad.index]=null,t._updateGamepadCnt();var i=t._getOrCreateInputDevice(e.gamepad.index,!1);t._removeInputDevice(e.gamepad.index),t._eventTarget.emit(kx.GAMEPAD_CHANGE,new jx(kx.GAMEPAD_CHANGE,i))}))},t._scanWebGamepads=function(e){if(0!==t._totalGamepadCnt){var i=t._getWebGamePads();if(i){for(var n=0;n<i.length;++n){var r=i[n];if(r){var s=t._cachedWebGamepads[r.index];if(s){for(var a=void 0,o=s.buttons,h=0;h<o.length;++h){var u=o[h],l=r.buttons[h];if(Math.abs(u.value-l.value)>.01){a=t._getOrCreateInputDevice(r.index,!0);break}}if(a){e.push(a);continue}for(var c=s.axes,_=0;_<c.length;++_){var f=c[_],d=r.axes[_];if(Math.abs(f-d)>.01){a=t._getOrCreateInputDevice(r.index,!0);break}}if(a){e.push(a);continue}}}}t._cachedWebGamepads=i}}},t._scanGamepads=function(){pw.length=0,t._scanWebGamepads(pw),t._scanWebXRGamepads(pw);for(var e=0;e<pw.length;++e){var i=pw[e];t._eventTarget.emit(kx.GAMEPAD_INPUT,new jx(kx.GAMEPAD_INPUT,i))}t._scanWebXRGamepadsPose()},t._scanWebXRGamepads=function(e){var i,n,r=t._getWebXRGamepadMap();if(!r)return t._cachedWebXRGamepadMap=null,void(t.xr&&t.xr._connected&&(t.xr._connected=!1,t._eventTarget.emit(kx.GAMEPAD_CHANGE,new jx(kx.GAMEPAD_CHANGE,t.xr)),e.push(t.xr)));t.xr||(t.xr=new t(-1));var s=r.get(fw),a=r.get(dw);s||a?t.xr._connected||(t.xr._connected=!0,t._eventTarget.emit(kx.GAMEPAD_CHANGE,new jx(kx.GAMEPAD_CHANGE,t.xr))):t.xr._connected&&(t.xr._connected=!1,t._eventTarget.emit(kx.GAMEPAD_CHANGE,new jx(kx.GAMEPAD_CHANGE,t.xr))),(t.checkGamepadChanged(s,null===(i=t._cachedWebXRGamepadMap)||void 0===i?void 0:i.get(fw))||t.checkGamepadChanged(a,null===(n=t._cachedWebXRGamepadMap)||void 0===n?void 0:n.get(dw)))&&e.push(t.xr),t._cachedWebXRGamepadMap||(t._cachedWebXRGamepadMap=new Map),t._cachedWebXRGamepadMap.set(fw,t._copyCacheGamepadValue(s)),t._cachedWebXRGamepadMap.set(dw,t._copyCacheGamepadValue(a))},t.checkGamepadChanged=function(t,e){if(!t&&!e)return!1;if(!t||!e)return!0;for(var i=e.buttons,n=0;n<i.length;++n){var r=i[n];if(0!==t.buttons[n].value||0!==r)return!0}for(var s=e.axes,a=0;a<s.length;++a){var o=s[a];if(0!==t.axes[a]||0!==o)return!0}return!1},t._copyCacheGamepadValue=function(t){if(t){for(var e={buttons:new Array(t.buttons.length),axes:new Array(t.axes.length)},i=0;i<t.buttons.length;++i)e.buttons[i]=t.buttons[i].value;for(var n=0;n<t.axes.length;++n)e.axes[n]=t.axes[n];return e}},t._scanWebXRGamepadsPose=function(){var e,i=null===(e=globalThis.__globalXR)||void 0===e?void 0:e.webxrHandlePoseInfos;if(i&&t.xr){for(var n=0;n<i.length;++n){var r=i[n];t.xr._updateWebPoseState(r)}t._eventTarget.emit(kx.HANDLE_POSE_INPUT,new jx(kx.HANDLE_POSE_INPUT,t.xr))}},t._getWebXRGamepadMap=function(){var t;return null===(t=globalThis.__globalXR)||void 0===t?void 0:t.webxrGamepadMap},t._getWebGamePads=function(){return"function"==typeof navigator.getGamepads?navigator.getGamepads():"function"==typeof navigator.webkitGetGamepads?navigator.webkitGetGamepads():[]},t._getWebGamepad=function(e){for(var i=t._getWebGamePads(),n=0;n<i.length;++n){var r=i[n];if(r&&r.index===e)return r}};var e=t.prototype;return e._axisToButtons=function(t){var e=Math.abs(t);return t>0?{negative:0,positive:e}:t<0?{negative:e,positive:0}:{negative:0,positive:0}},e._updateWebPoseState=function(t){t.code!==aw.HAND_LEFT&&t.code!==aw.AIM_LEFT&&t.code!==aw.HAND_RIGHT&&t.code!==aw.AIM_RIGHT||(this._webPoseState[t.code]={position:new gn(t.position.x,t.position.y,t.position.z),orientation:new Bn(t.orientation.x,t.orientation.y,t.orientation.z,t.orientation.w)})},e._initInputSource=function(){var e=this;this._buttonNorth=new ow,this._buttonNorth.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);return n&&n.buttons.length>5?n.buttons[5].value:0}var r=t._getWebGamepad(e.deviceId);return r?r.buttons[3].value:0},this._buttonEast=new ow,this._buttonEast.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);return n&&n.buttons.length>5?n.buttons[5].value:0}var r=t._getWebGamepad(e.deviceId);return r?r.buttons[1].value:0},this._buttonWest=new ow,this._buttonWest.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);return n&&n.buttons.length>4?n.buttons[4].value:0}var r=t._getWebGamepad(e.deviceId);return r?r.buttons[2].value:0},this._buttonSouth=new ow,this._buttonSouth.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);return n&&n.buttons.length>4?n.buttons[4].value:0}var r=t._getWebGamepad(e.deviceId);return r?r.buttons[0].value:0},this._buttonL1=new ow,this._buttonL1.getValue=function(){var i=t._getWebGamepad(e.deviceId);return i?i.buttons[4].value:0},this._buttonL2=new ow,this._buttonL2.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);return n&&n.buttons.length>0?n.buttons[0].value:0}var r=t._getWebGamepad(e.deviceId);return r?r.buttons[6].value:0},this._buttonL3=new ow,this._buttonL3.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);if(n){if(n.buttons.length>3&&0!==n.buttons[3].value)return n.buttons[3].value;if(n.buttons.length>2&&0!==n.buttons[2].value)return n.buttons[2].value}return 0}var r=t._getWebGamepad(e.deviceId);return r?r.buttons[10].value:0},this._buttonR1=new ow,this._buttonR1.getValue=function(){var i=t._getWebGamepad(e.deviceId);return i?i.buttons[5].value:0},this._buttonR2=new ow,this._buttonR2.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);return n&&n.buttons.length>0?n.buttons[0].value:0}var r=t._getWebGamepad(e.deviceId);return r?r.buttons[7].value:0},this._buttonR3=new ow,this._buttonR3.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);if(n){if(n.buttons.length>3&&0!==n.buttons[3].value)return n.buttons[3].value;if(n.buttons.length>2&&0!==n.buttons[2].value)return n.buttons[2].value}return 0}var r=t._getWebGamepad(e.deviceId);return r?r.buttons[11].value:0},this._buttonShare=new ow,this._buttonShare.getValue=function(){var i=t._getWebGamepad(e.deviceId);return i?i.buttons[8].value:0},this._buttonOptions=new ow,this._buttonOptions.getValue=function(){var i=t._getWebGamepad(e.deviceId);return i?i.buttons[9].value:0};var i=new ow;i.getValue=function(){var i=t._getWebGamepad(e.deviceId);return i?i.buttons[12].value:0};var n=new ow;n.getValue=function(){var i=t._getWebGamepad(e.deviceId);return i?i.buttons[13].value:0};var r=new ow;r.getValue=function(){var i=t._getWebGamepad(e.deviceId);return i?i.buttons[14].value:0};var s=new ow;s.getValue=function(){var i=t._getWebGamepad(e.deviceId);return i?i.buttons[15].value:0},this._dpad=new hw({up:i,down:n,left:r,right:s});var a=new ow;a.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);if(n){if(n.axes.length>3&&0!==n.axes[3])return e._axisToButtons(n.axes[3]).negative;if(n.axes.length>1&&0!==n.axes[1])return e._axisToButtons(n.axes[1]).negative}return 0}var r=t._getWebGamepad(e.deviceId);return r?e._axisToButtons(r.axes[1]).negative:0};var o=new ow;o.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);if(n){if(n.axes.length>3&&0!==n.axes[3])return e._axisToButtons(n.axes[3]).positive;if(n.axes.length>1&&0!==n.axes[1])return e._axisToButtons(n.axes[1]).positive}return 0}var r=t._getWebGamepad(e.deviceId);return r?e._axisToButtons(r.axes[1]).positive:0};var h=new ow;h.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);if(n){if(n.axes.length>2&&0!==n.axes[2])return e._axisToButtons(n.axes[2]).negative;if(n.axes.length>0&&0!==n.axes[0])return e._axisToButtons(n.axes[0]).negative}return 0}var r=t._getWebGamepad(e.deviceId);return r?e._axisToButtons(r.axes[0]).negative:0};var u=new ow;u.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);if(n){if(n.axes.length>2&&0!==n.axes[2])return e._axisToButtons(n.axes[2]).positive;if(n.axes.length>0&&0!==n.axes[0])return e._axisToButtons(n.axes[0]).positive}return 0}var r=t._getWebGamepad(e.deviceId);return r?e._axisToButtons(r.axes[0]).positive:0},this._leftStick=new uw({up:a,down:o,left:h,right:u});var l=new ow;l.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);if(n){if(n.axes.length>3&&0!==n.axes[3])return e._axisToButtons(n.axes[3]).negative;if(n.axes.length>1&&0!==n.axes[1])return e._axisToButtons(n.axes[1]).negative}return 0}var r=t._getWebGamepad(e.deviceId);return r?e._axisToButtons(r.axes[3]).negative:0};var c=new ow;c.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);if(n){if(n.axes.length>3&&0!==n.axes[3])return e._axisToButtons(n.axes[3]).positive;if(n.axes.length>1&&0!==n.axes[1])return e._axisToButtons(n.axes[1]).positive}return 0}var r=t._getWebGamepad(e.deviceId);return r?e._axisToButtons(r.axes[3]).positive:0};var _=new ow;_.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);if(n){if(n.axes.length>2&&0!==n.axes[2])return e._axisToButtons(n.axes[2]).negative;if(n.axes.length>0&&0!==n.axes[0])return e._axisToButtons(n.axes[0]).negative}return 0}var r=t._getWebGamepad(e.deviceId);return r?e._axisToButtons(r.axes[2]).negative:0};var f=new ow;f.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);if(n){if(n.axes.length>2&&0!==n.axes[2])return e._axisToButtons(n.axes[2]).positive;if(n.axes.length>0&&0!==n.axes[0])return e._axisToButtons(n.axes[0]).positive}return 0}var r=t._getWebGamepad(e.deviceId);return r?e._axisToButtons(r.axes[2]).positive:0},this._rightStick=new uw({up:l,down:c,left:_,right:f}),this._buttonStart=new ow,this._buttonStart.getValue=function(){return 0},this._gripLeft=new ow,this._gripLeft.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(fw);if(n&&n.buttons.length>1)return n.buttons[1].value}return 0},this._gripRight=new ow,this._gripRight.getValue=function(){if(-1===e.deviceId){var i,n=null===(i=t._getWebXRGamepadMap())||void 0===i?void 0:i.get(dw);if(n&&n.buttons.length>1)return n.buttons[1].value}return 0},this._handLeftPosition=new cw,this._handLeftPosition.getValue=function(){return e._webPoseState[aw.HAND_LEFT].position},this._handLeftOrientation=new lw,this._handLeftOrientation.getValue=function(){return e._webPoseState[aw.HAND_LEFT].orientation},this._handRightPosition=new cw,this._handRightPosition.getValue=function(){return e._webPoseState[aw.HAND_RIGHT].position},this._handRightOrientation=new lw,this._handRightOrientation.getValue=function(){return e._webPoseState[aw.HAND_RIGHT].orientation},this._aimLeftPosition=new cw,this._aimLeftPosition.getValue=function(){return e._webPoseState[aw.AIM_LEFT].position},this._aimLeftOrientation=new lw,this._aimLeftOrientation.getValue=function(){return e._webPoseState[aw.AIM_LEFT].orientation},this._aimRightPosition=new cw,this._aimRightPosition.getValue=function(){return e._webPoseState[aw.AIM_RIGHT].position},this._aimRightOrientation=new lw,this._aimRightOrientation.getValue=function(){return e._webPoseState[aw.AIM_RIGHT].orientation}},n(t,[{key:"buttonNorth",get:function(){return this._buttonNorth}},{key:"buttonEast",get:function(){return this._buttonEast}},{key:"buttonWest",get:function(){return this._buttonWest}},{key:"buttonSouth",get:function(){return this._buttonSouth}},{key:"buttonL1",get:function(){return this._buttonL1}},{key:"buttonL2",get:function(){return this._buttonL2}},{key:"buttonL3",get:function(){return this._buttonL3}},{key:"buttonR1",get:function(){return this._buttonR1}},{key:"buttonR2",get:function(){return this._buttonR2}},{key:"buttonR3",get:function(){return this._buttonR3}},{key:"buttonShare",get:function(){return this._buttonShare}},{key:"buttonOptions",get:function(){return this._buttonOptions}},{key:"dpad",get:function(){return this._dpad}},{key:"leftStick",get:function(){return this._leftStick}},{key:"rightStick",get:function(){return this._rightStick}},{key:"buttonStart",get:function(){return this._buttonStart}},{key:"gripLeft",get:function(){return this._gripLeft}},{key:"gripRight",get:function(){return this._gripRight}},{key:"handLeftPosition",get:function(){return this._handLeftPosition}},{key:"handLeftOrientation",get:function(){return this._handLeftOrientation}},{key:"handRightPosition",get:function(){return this._handRightPosition}},{key:"handRightOrientation",get:function(){return this._handRightOrientation}},{key:"aimLeftPosition",get:function(){return this._aimLeftPosition}},{key:"aimLeftOrientation",get:function(){return this._aimLeftOrientation}},{key:"aimRightPosition",get:function(){return this._aimRightPosition}},{key:"aimRightOrientation",get:function(){return this._aimRightOrientation}},{key:"deviceId",get:function(){return this._deviceId}},{key:"connected",get:function(){return this._connected}}]),t}();Tw.all=[],Tw.xr=null,Tw._eventTarget=new Hs,Tw._cachedWebGamepads=[],Tw._cachedWebXRGamepadMap=null,Tw._intervalId=-1,Tw._totalGamepadCnt=0,function(t){t[t.BUTTON_EAST=0]="BUTTON_EAST",t[t.BUTTON_SOUTH=1]="BUTTON_SOUTH",t[t.BUTTON_WEST=2]="BUTTON_WEST",t[t.BUTTON_NORTH=3]="BUTTON_NORTH",t[t.BUTTON_TRIGGER_LEFT=4]="BUTTON_TRIGGER_LEFT",t[t.BUTTON_TRIGGER_RIGHT=5]="BUTTON_TRIGGER_RIGHT",t[t.TRIGGER_LEFT=6]="TRIGGER_LEFT",t[t.TRIGGER_RIGHT=7]="TRIGGER_RIGHT",t[t.GRIP_LEFT=8]="GRIP_LEFT",t[t.GRIP_RIGHT=9]="GRIP_RIGHT",t[t.BUTTON_LEFT_STICK=10]="BUTTON_LEFT_STICK",t[t.LEFT_STICK_UP=11]="LEFT_STICK_UP",t[t.LEFT_STICK_DOWN=12]="LEFT_STICK_DOWN",t[t.LEFT_STICK_LEFT=13]="LEFT_STICK_LEFT",t[t.LEFT_STICK_RIGHT=14]="LEFT_STICK_RIGHT",t[t.BUTTON_RIGHT_STICK=15]="BUTTON_RIGHT_STICK",t[t.RIGHT_STICK_UP=16]="RIGHT_STICK_UP",t[t.RIGHT_STICK_DOWN=17]="RIGHT_STICK_DOWN",t[t.RIGHT_STICK_LEFT=18]="RIGHT_STICK_LEFT",t[t.RIGHT_STICK_RIGHT=19]="RIGHT_STICK_RIGHT",t[t.ROKID_MENU=20]="ROKID_MENU",t[t.ROKID_START=21]="ROKID_START"}(mw||(mw={})),function(t){t[t.KET_CLICK=0]="KET_CLICK",t[t.KET_STICK=1]="KET_STICK",t[t.KET_GRAB=2]="KET_GRAB",t[t.KET_TOUCH=3]="KET_TOUCH"}(gw||(gw={})),function(t){t[t.UNDEFINE=0]="UNDEFINE",t[t.A=1]="A",t[t.B=2]="B",t[t.X=3]="X",t[t.Y=4]="Y",t[t.L1=5]="L1",t[t.R1=6]="R1",t[t.MINUS=7]="MINUS",t[t.PLUS=8]="PLUS",t[t.L3=9]="L3",t[t.R3=10]="R3",t[t.MENU=11]="MENU",t[t.START=12]="START",t[t.TRIGGER_LEFT=13]="TRIGGER_LEFT",t[t.TRIGGER_RIGHT=14]="TRIGGER_RIGHT"}(vw||(vw={})),function(t){t[t.UNDEFINE=0]="UNDEFINE",t[t.X=1]="X",t[t.Y=2]="Y",t[t.LEFT_STICK_X=3]="LEFT_STICK_X",t[t.LEFT_STICK_Y=4]="LEFT_STICK_Y",t[t.RIGHT_STICK_X=5]="RIGHT_STICK_X",t[t.RIGHT_STICK_Y=6]="RIGHT_STICK_Y",t[t.L2=7]="L2",t[t.R2=8]="R2",t[t.LEFT_GRIP=9]="LEFT_GRIP",t[t.RIGHT_GRIP=10]="RIGHT_GRIP"}(yw||(yw={})),function(t){t[t.UNDEFINE=0]="UNDEFINE",t[t.A=1]="A",t[t.B=2]="B",t[t.X=3]="X",t[t.Y=4]="Y",t[t.LEFT_TRIGGER=5]="LEFT_TRIGGER",t[t.RIGHT_TRIGGER=6]="RIGHT_TRIGGER",t[t.LEFT_THUMBSTICK=7]="LEFT_THUMBSTICK",t[t.RIGHT_THUMBSTICK=8]="RIGHT_THUMBSTICK"}(Sw||(Sw={}));var Aw,bw={1:mw.BUTTON_EAST,2:mw.BUTTON_SOUTH,3:mw.BUTTON_NORTH,4:mw.BUTTON_WEST,9:mw.BUTTON_LEFT_STICK,10:mw.BUTTON_RIGHT_STICK,11:mw.ROKID_MENU,12:mw.ROKID_START,13:mw.BUTTON_TRIGGER_LEFT,14:mw.BUTTON_TRIGGER_RIGHT},Ew=function(){function t(){var t,e,i=this;this._eventTarget=new Hs,this._nativeButtonState=((t={})[mw.BUTTON_SOUTH]=0,t[mw.BUTTON_EAST]=0,t[mw.BUTTON_WEST]=0,t[mw.BUTTON_NORTH]=0,t[mw.BUTTON_TRIGGER_LEFT]=0,t[mw.BUTTON_TRIGGER_RIGHT]=0,t[mw.TRIGGER_LEFT]=0,t[mw.TRIGGER_RIGHT]=0,t[mw.GRIP_LEFT]=0,t[mw.GRIP_RIGHT]=0,t[mw.LEFT_STICK_UP]=0,t[mw.LEFT_STICK_DOWN]=0,t[mw.LEFT_STICK_LEFT]=0,t[mw.LEFT_STICK_RIGHT]=0,t[mw.RIGHT_STICK_UP]=0,t[mw.RIGHT_STICK_DOWN]=0,t[mw.RIGHT_STICK_LEFT]=0,t[mw.RIGHT_STICK_RIGHT]=0,t[mw.BUTTON_LEFT_STICK]=0,t[mw.BUTTON_RIGHT_STICK]=0,t[mw.ROKID_MENU]=0,t[mw.ROKID_START]=0,t),this._nativeTouchState=((e={})[Sw.UNDEFINE]=0,e[Sw.A]=0,e[Sw.B]=0,e[Sw.X]=0,e[Sw.Y]=0,e[Sw.LEFT_TRIGGER]=0,e[Sw.RIGHT_TRIGGER]=0,e[Sw.LEFT_THUMBSTICK]=0,e[Sw.RIGHT_THUMBSTICK]=0,e),this._initInputSource(),window.addEventListener("xr-remote-input",(function(t){var e=t,n=e.detail.keyEventType,r=e.detail.stickAxisCode,s=e.detail.stickAxisValue,a=e.detail.stickKeyCode,o=e.detail.isButtonPressed,h=e.detail.touchCode,u=e.detail.touchValue;if(n===gw.KET_CLICK){var l=bw[a];i._nativeButtonState[l]=o?1:0}else if(n===gw.KET_STICK||n===gw.KET_GRAB){var c,_,f;switch(r){case yw.LEFT_STICK_X:c=mw.LEFT_STICK_LEFT,_=mw.LEFT_STICK_RIGHT,f=i._axisToButtons(s);break;case yw.LEFT_STICK_Y:c=mw.LEFT_STICK_DOWN,_=mw.LEFT_STICK_UP,f=i._axisToButtons(s);break;case yw.RIGHT_STICK_X:c=mw.RIGHT_STICK_LEFT,_=mw.RIGHT_STICK_RIGHT,f=i._axisToButtons(s);break;case yw.RIGHT_STICK_Y:c=mw.RIGHT_STICK_DOWN,_=mw.RIGHT_STICK_UP,f=i._axisToButtons(s);break;case yw.L2:i._nativeButtonState[mw.TRIGGER_LEFT]=s;break;case yw.R2:i._nativeButtonState[mw.TRIGGER_RIGHT]=s;break;case yw.LEFT_GRIP:i._nativeButtonState[mw.GRIP_LEFT]=s;break;case yw.RIGHT_GRIP:i._nativeButtonState[mw.GRIP_RIGHT]=s}c&&_&&f&&(i._nativeButtonState[c]=f.negative,i._nativeButtonState[_]=f.positive)}else if(n===gw.KET_TOUCH)switch(h){case Sw.A:case Sw.B:case Sw.X:case Sw.Y:case Sw.LEFT_TRIGGER:case Sw.RIGHT_TRIGGER:case Sw.LEFT_THUMBSTICK:case Sw.RIGHT_THUMBSTICK:i._nativeTouchState[h]=u}i._eventTarget.emit(kx.HANDLE_INPUT,new Yx(kx.HANDLE_INPUT,i))}))}var e=t.prototype;return e._axisToButtons=function(t){var e=Math.abs(t);return t>0?{negative:0,positive:e}:t<0?{negative:e,positive:0}:{negative:0,positive:0}},e._on=function(t,e,i){this._eventTarget.on(t,e,i)},e._initInputSource=function(){var t=this;this._buttonNorth=new ow,this._buttonNorth.getValue=function(){return t._nativeButtonState[mw.BUTTON_NORTH]},this._buttonEast=new ow,this._buttonEast.getValue=function(){return t._nativeButtonState[mw.BUTTON_EAST]},this._buttonWest=new ow,this._buttonWest.getValue=function(){return t._nativeButtonState[mw.BUTTON_WEST]},this._buttonSouth=new ow,this._buttonSouth.getValue=function(){return t._nativeButtonState[mw.BUTTON_SOUTH]},this._buttonTriggerLeft=new ow,this._buttonTriggerLeft.getValue=function(){return t._nativeButtonState[mw.BUTTON_TRIGGER_LEFT]},this._buttonTriggerRight=new ow,this._buttonTriggerRight.getValue=function(){return t._nativeButtonState[mw.BUTTON_TRIGGER_RIGHT]},this._triggerLeft=new ow,this._triggerLeft.getValue=function(){return t._nativeButtonState[mw.TRIGGER_LEFT]},this._triggerRight=new ow,this._triggerRight.getValue=function(){return t._nativeButtonState[mw.TRIGGER_RIGHT]},this._gripLeft=new ow,this._gripLeft.getValue=function(){return t._nativeButtonState[mw.GRIP_LEFT]},this._gripRight=new ow,this._gripRight.getValue=function(){return t._nativeButtonState[mw.GRIP_RIGHT]},this._buttonLeftStick=new ow,this._buttonLeftStick.getValue=function(){return t._nativeButtonState[mw.BUTTON_LEFT_STICK]};var e=new ow;e.getValue=function(){return t._nativeButtonState[mw.LEFT_STICK_UP]};var i=new ow;i.getValue=function(){return t._nativeButtonState[mw.LEFT_STICK_DOWN]};var n=new ow;n.getValue=function(){return t._nativeButtonState[mw.LEFT_STICK_LEFT]};var r=new ow;r.getValue=function(){return t._nativeButtonState[mw.LEFT_STICK_RIGHT]},this._leftStick=new uw({up:e,down:i,left:n,right:r}),this._buttonRightStick=new ow,this._buttonRightStick.getValue=function(){return t._nativeButtonState[mw.BUTTON_RIGHT_STICK]};var s=new ow;s.getValue=function(){return t._nativeButtonState[mw.RIGHT_STICK_UP]};var a=new ow;a.getValue=function(){return t._nativeButtonState[mw.RIGHT_STICK_DOWN]};var o=new ow;o.getValue=function(){return t._nativeButtonState[mw.RIGHT_STICK_LEFT]};var h=new ow;h.getValue=function(){return t._nativeButtonState[mw.RIGHT_STICK_RIGHT]},this._rightStick=new uw({up:s,down:a,left:o,right:h}),this._buttonOptions=new ow,this._buttonOptions.getValue=function(){return t._nativeButtonState[mw.ROKID_MENU]},this._buttonStart=new ow,this._buttonStart.getValue=function(){return t._nativeButtonState[mw.ROKID_START]},this._handLeftPosition=new cw,this._handLeftPosition.getValue=function(){return gn.ZERO},this._handLeftOrientation=new lw,this._handLeftOrientation.getValue=function(){return Bn.IDENTITY},this._handRightPosition=new cw,this._handRightPosition.getValue=function(){return gn.ZERO},this._handRightOrientation=new lw,this._handRightOrientation.getValue=function(){return Bn.IDENTITY},this._aimLeftPosition=new cw,this._aimLeftPosition.getValue=function(){return gn.ZERO},this._aimLeftOrientation=new lw,this._aimLeftOrientation.getValue=function(){return Bn.IDENTITY},this._aimRightPosition=new cw,this._aimRightPosition.getValue=function(){return gn.ZERO},this._aimRightOrientation=new lw,this._aimRightOrientation.getValue=function(){return Bn.IDENTITY},this._touchButtonA=new _w,this._touchButtonA.getValue=function(){return t._nativeTouchState[Sw.A]},this._touchButtonB=new _w,this._touchButtonB.getValue=function(){return t._nativeTouchState[Sw.B]},this._touchButtonX=new _w,this._touchButtonX.getValue=function(){return t._nativeTouchState[Sw.X]},this._touchButtonY=new _w,this._touchButtonY.getValue=function(){return t._nativeTouchState[Sw.Y]},this._touchButtonTriggerLeft=new _w,this._touchButtonTriggerLeft.getValue=function(){return t._nativeTouchState[Sw.LEFT_TRIGGER]},this._touchButtonTriggerRight=new _w,this._touchButtonTriggerRight.getValue=function(){return t._nativeTouchState[Sw.RIGHT_TRIGGER]},this._touchButtonThumbStickLeft=new _w,this._touchButtonThumbStickLeft.getValue=function(){return t._nativeTouchState[Sw.LEFT_THUMBSTICK]},this._touchButtonThumbStickRight=new _w,this._touchButtonThumbStickRight.getValue=function(){return t._nativeTouchState[Sw.RIGHT_THUMBSTICK]}},n(t,[{key:"buttonNorth",get:function(){return this._buttonNorth}},{key:"buttonEast",get:function(){return this._buttonEast}},{key:"buttonWest",get:function(){return this._buttonWest}},{key:"buttonSouth",get:function(){return this._buttonSouth}},{key:"buttonTriggerLeft",get:function(){return this._buttonTriggerLeft}},{key:"buttonTriggerRight",get:function(){return this._buttonTriggerRight}},{key:"triggerLeft",get:function(){return this._triggerLeft}},{key:"triggerRight",get:function(){return this._triggerRight}},{key:"gripLeft",get:function(){return this._gripLeft}},{key:"gripRight",get:function(){return this._gripRight}},{key:"leftStick",get:function(){return this._leftStick}},{key:"rightStick",get:function(){return this._rightStick}},{key:"buttonLeftStick",get:function(){return this._buttonLeftStick}},{key:"buttonRightStick",get:function(){return this._buttonRightStick}},{key:"buttonOptions",get:function(){return this._buttonOptions}},{key:"buttonStart",get:function(){return this._buttonStart}},{key:"handLeftPosition",get:function(){return this._handLeftPosition}},{key:"handLeftOrientation",get:function(){return this._handLeftOrientation}},{key:"handRightPosition",get:function(){return this._handRightPosition}},{key:"handRightOrientation",get:function(){return this._handRightOrientation}},{key:"aimLeftPosition",get:function(){return this._aimLeftPosition}},{key:"aimLeftOrientation",get:function(){return this._aimLeftOrientation}},{key:"aimRightPosition",get:function(){return this._aimRightPosition}},{key:"aimRightOrientation",get:function(){return this._aimRightOrientation}},{key:"touchButtonA",get:function(){return this._touchButtonA}},{key:"touchButtonB",get:function(){return this._touchButtonB}},{key:"touchButtonX",get:function(){return this._touchButtonX}},{key:"touchButtonY",get:function(){return this._touchButtonY}},{key:"touchButtonTriggerLeft",get:function(){return this._touchButtonTriggerLeft}},{key:"touchButtonTriggerRight",get:function(){return this._touchButtonTriggerRight}},{key:"touchButtonThumbStickLeft",get:function(){return this._touchButtonThumbStickLeft}},{key:"touchButtonThumbStickRight",get:function(){return this._touchButtonThumbStickRight}}]),t}();!function(t){t[t.VIEW_LEFT=0]="VIEW_LEFT",t[t.VIEW_RIGHT=3]="VIEW_RIGHT",t[t.HEAD_MIDDLE=6]="HEAD_MIDDLE"}(Aw||(Aw={}));var Cw,xw,ww=function(){function t(){var t;this._eventTarget=new Hs,this._intervalId=-1,this._webPoseState=((t={})[Aw.VIEW_LEFT]={position:gn.ZERO,orientation:Bn.IDENTITY},t[Aw.VIEW_RIGHT]={position:gn.ZERO,orientation:Bn.IDENTITY},t[Aw.HEAD_MIDDLE]={position:gn.ZERO,orientation:Bn.IDENTITY},t),this._initInputSource(),this._registerEvent()}var e=t.prototype;return e._ensureDirectorDefined=function(){var t=this;return new Promise((function(e){t._intervalId=setInterval((function(){S.director&&S.Director&&(clearInterval(t._intervalId),t._intervalId=-1,e())}),50)}))},e._registerEvent=function(){var t=this;this._ensureDirectorDefined().then((function(){S.director.on(S.Director.EVENT_BEGIN_FRAME,t._scanHmd,t)})).catch((function(){}))},e._scanHmd=function(){var t,e=null===(t=globalThis.__globalXR)||void 0===t?void 0:t.webxrHmdPoseInfos;if(e){for(var i=0;i<e.length;++i){var n=e[i];this._updateWebPoseState(n)}this._eventTarget.emit(kx.HMD_POSE_INPUT,new qx(kx.HMD_POSE_INPUT,this))}},e._on=function(t,e,i){this._eventTarget.on(t,e,i)},e._updateWebPoseState=function(t){t.code!==Aw.VIEW_LEFT&&t.code!==Aw.VIEW_RIGHT&&t.code!==Aw.HEAD_MIDDLE||(this._webPoseState[t.code]={position:new gn(t.position.x,t.position.y,t.position.z),orientation:new Bn(t.orientation.x,t.orientation.y,t.orientation.z,t.orientation.w)})},e._initInputSource=function(){var t=this;this._viewLeftPosition=new cw,this._viewLeftPosition.getValue=function(){return t._webPoseState[Aw.VIEW_LEFT].position},this._viewLeftOrientation=new lw,this._viewLeftOrientation.getValue=function(){return t._webPoseState[Aw.VIEW_LEFT].orientation},this._viewRightPosition=new cw,this._viewRightPosition.getValue=function(){return t._webPoseState[Aw.VIEW_RIGHT].position},this._viewRightOrientation=new lw,this._viewRightOrientation.getValue=function(){return t._webPoseState[Aw.VIEW_RIGHT].orientation},this._headMiddlePosition=new cw,this._headMiddlePosition.getValue=function(){return t._webPoseState[Aw.HEAD_MIDDLE].position},this._headMiddleOrientation=new lw,this._headMiddleOrientation.getValue=function(){return t._webPoseState[Aw.HEAD_MIDDLE].orientation}},n(t,[{key:"viewLeftPosition",get:function(){return this._viewLeftPosition}},{key:"viewLeftOrientation",get:function(){return this._viewLeftOrientation}},{key:"viewRightPosition",get:function(){return this._viewRightPosition}},{key:"viewRightOrientation",get:function(){return this._viewRightOrientation}},{key:"headMiddlePosition",get:function(){return this._headMiddlePosition}},{key:"headMiddleOrientation",get:function(){return this._headMiddleOrientation}}]),t}(),Rw=function(){function t(){this._eventTarget=new Hs,this._initInputSource()}var e=t.prototype;return e._on=function(t,e,i){this._eventTarget.on(t,e,i)},e._initInputSource=function(){this._handheldPosition=new cw,this._handheldPosition.getValue=function(){return gn.ZERO},this._handheldOrientation=new lw,this._handheldOrientation.getValue=function(){return Bn.IDENTITY}},n(t,[{key:"handheldPosition",get:function(){return this._handheldPosition}},{key:"handheldOrientation",get:function(){return this._handheldOrientation}}]),t}(),Iw={Backspace:Xx.BACKSPACE,Tab:Xx.TAB,Enter:Xx.ENTER,ShiftLeft:Xx.SHIFT_LEFT,ControlLeft:Xx.CTRL_LEFT,AltLeft:Xx.ALT_LEFT,ShiftRight:Xx.SHIFT_RIGHT,ControlRight:Xx.CTRL_RIGHT,AltRight:Xx.ALT_RIGHT,Pause:Xx.PAUSE,CapsLock:Xx.CAPS_LOCK,Escape:Xx.ESCAPE,Space:Xx.SPACE,PageUp:Xx.PAGE_UP,PageDown:Xx.PAGE_DOWN,End:Xx.END,Home:Xx.HOME,ArrowLeft:Xx.ARROW_LEFT,ArrowUp:Xx.ARROW_UP,ArrowRight:Xx.ARROW_RIGHT,ArrowDown:Xx.ARROW_DOWN,Insert:Xx.INSERT,Delete:Xx.DELETE,Digit0:Xx.DIGIT_0,Digit1:Xx.DIGIT_1,Digit2:Xx.DIGIT_2,Digit3:Xx.DIGIT_3,Digit4:Xx.DIGIT_4,Digit5:Xx.DIGIT_5,Digit6:Xx.DIGIT_6,Digit7:Xx.DIGIT_7,Digit8:Xx.DIGIT_8,Digit9:Xx.DIGIT_9,KeyA:Xx.KEY_A,KeyB:Xx.KEY_B,KeyC:Xx.KEY_C,KeyD:Xx.KEY_D,KeyE:Xx.KEY_E,KeyF:Xx.KEY_F,KeyG:Xx.KEY_G,KeyH:Xx.KEY_H,KeyI:Xx.KEY_I,KeyJ:Xx.KEY_J,KeyK:Xx.KEY_K,KeyL:Xx.KEY_L,KeyM:Xx.KEY_M,KeyN:Xx.KEY_N,KeyO:Xx.KEY_O,KeyP:Xx.KEY_P,KeyQ:Xx.KEY_Q,KeyR:Xx.KEY_R,KeyS:Xx.KEY_S,KeyT:Xx.KEY_T,KeyU:Xx.KEY_U,KeyV:Xx.KEY_V,KeyW:Xx.KEY_W,KeyX:Xx.KEY_X,KeyY:Xx.KEY_Y,KeyZ:Xx.KEY_Z,Numpad0:Xx.NUM_0,Numpad1:Xx.NUM_1,Numpad2:Xx.NUM_2,Numpad3:Xx.NUM_3,Numpad4:Xx.NUM_4,Numpad5:Xx.NUM_5,Numpad6:Xx.NUM_6,Numpad7:Xx.NUM_7,Numpad8:Xx.NUM_8,Numpad9:Xx.NUM_9,NumpadMultiply:Xx.NUM_MULTIPLY,NumpadAdd:Xx.NUM_PLUS,NumpadSubtract:Xx.NUM_SUBTRACT,NumpadDecimal:Xx.NUM_DECIMAL,NumpadDivide:Xx.NUM_DIVIDE,NumpadEnter:Xx.NUM_ENTER,F1:Xx.F1,F2:Xx.F2,F3:Xx.F3,F4:Xx.F4,F5:Xx.F5,F6:Xx.F6,F7:Xx.F7,F8:Xx.F8,F9:Xx.F9,F10:Xx.F10,F11:Xx.F11,F12:Xx.F12,NumLock:Xx.NUM_LOCK,ScrollLock:Xx.SCROLL_LOCK,Semicolon:Xx.SEMICOLON,Equal:Xx.EQUAL,Comma:Xx.COMMA,Minus:Xx.DASH,Period:Xx.PERIOD,Slash:Xx.SLASH,Backquote:Xx.BACK_QUOTE,BracketLeft:Xx.BRACKET_LEFT,Backslash:Xx.BACKSLASH,BracketRight:Xx.BRACKET_RIGHT,Quote:Xx.QUOTE},Dw=function(){function t(){this._eventTarget=new Hs,this._registerEvent()}var e=t.prototype;return e.dispatchKeyboardDownEvent=function(t){this._handleKeyboardDown(t)},e.dispatchKeyboardUpEvent=function(t){this._handleKeyboardUp(t)},e.on=function(t,e,i){this._eventTarget.on(t,e,i)},e._registerEvent=function(){var t=document.getElementById("GameCanvas");null==t||t.addEventListener("keydown",this._handleKeyboardDown.bind(this)),null==t||t.addEventListener("keyup",this._handleKeyboardUp.bind(this))},e._getInputEvent=function(t,e){var i,n=(i=t.code,Iw[i]||Xx.NONE);return new Ux(n,e)},e._handleKeyboardDown=function(t){if(t.stopPropagation(),t.preventDefault(),t.repeat){var e=this._getInputEvent(t,kx.KEY_PRESSING);this._eventTarget.emit(kx.KEY_PRESSING,e)}else{var i=this._getInputEvent(t,kx.KEY_DOWN);this._eventTarget.emit(kx.KEY_DOWN,i)}},e._handleKeyboardUp=function(t){var e=this._getInputEvent(t,kx.KEY_UP);t.stopPropagation(),t.preventDefault(),this._eventTarget.emit(kx.KEY_UP,e)},t}(),Bw=function(){function t(){this._canvas=void 0,this._eventTarget=new Hs,this._pointLocked=!1,this._isPressed=!1,this._preMousePos=new jn,this._handleMouseDown=void 0,this._handleMouseMove=void 0,this._handleMouseUp=void 0,Zs.hasFeature(Ks.EVENT_MOUSE)&&(this._canvas=document.getElementById("GameCanvas"),this._canvas||console.warn("failed to access canvas"),this._handleMouseDown=this._createCallback(kx.MOUSE_DOWN),this._handleMouseMove=this._createCallback(kx.MOUSE_MOVE),this._handleMouseUp=this._createCallback(kx.MOUSE_UP),this._registerEvent())}var e=t.prototype;return e.dispatchMouseDownEvent=function(t){this._handleMouseDown(t)},e.dispatchMouseMoveEvent=function(t){this._handleMouseMove(t)},e.dispatchMouseUpEvent=function(t){this._handleMouseUp(t)},e.dispatchScrollEvent=function(t){this._handleMouseWheel(t)},e.on=function(t,e,i){this._eventTarget.on(t,e,i)},e._getCanvasRect=function(){var t=this._canvas,e=null==t?void 0:t.getBoundingClientRect();return e?new Jn(e.x,e.y,e.width,e.height):new Jn(0,0,0,0)},e._getLocation=function(t){var e=this._getCanvasRect(),i=ga.devicePixelRatio,n=this._pointLocked?this._preMousePos.x/i+t.movementX:t.clientX-e.x,r=this._pointLocked?this._preMousePos.y/i-t.movementY:e.y+e.height-t.clientY;return new jn(n*=i,r*=i)},e._registerEvent=function(){var t,e,i,n,r,s,a=this;window.addEventListener("mousedown",(function(){a._isPressed=!0})),null===(t=this._canvas)||void 0===t||t.addEventListener("mousedown",this._handleMouseDown),null===(e=this._canvas)||void 0===e||e.addEventListener("mousemove",this._handleMouseMove),window.addEventListener("mouseup",this._handleMouseUp),null===(i=this._canvas)||void 0===i||i.addEventListener("mouseup",this._handleMouseUp),null===(n=this._canvas)||void 0===n||n.addEventListener("wheel",this._handleMouseWheel.bind(this)),this._registerPointerLockEvent(),null===(r=this._canvas)||void 0===r||r.addEventListener("mouseleave",this._handleMouseLeave.bind(this)),null===(s=this._canvas)||void 0===s||s.addEventListener("mouseenter",this._handleMouseEnter.bind(this))},e._registerPointerLockEvent=function(){var t=this,e=function(){var e=t._canvas;document.pointerLockElement===e||document.mozPointerLockElement===e?t._pointLocked=!0:t._pointLocked=!1};"onpointerlockchange"in document?document.addEventListener("pointerlockchange",e,!1):"onmozpointerlockchange"in document&&document.addEventListener("mozpointerlockchange",e,!1)},e._createCallback=function(t){var e=this;return function(i){var n,r=e._getLocation(i),s=i.button,a=i.buttons,o=s;switch(t){case kx.MOUSE_DOWN:null===(n=e._canvas)||void 0===n||n.focus(),e._isPressed=!0;break;case kx.MOUSE_UP:e._isPressed=!1;break;case kx.MOUSE_MOVE:o=1&a?zx.BUTTON_LEFT:2&a?zx.BUTTON_RIGHT:4&a?zx.BUTTON_MIDDLE:zx.BUTTON_MISSING}var h=new zx(t,!1,e._preMousePos);h.setLocation(r.x,r.y),h.setButton(o),h.movementX=i.movementX,h.movementY=i.movementY,e._preMousePos.set(r.x,r.y),i.stopPropagation(),i.target===e._canvas&&i.preventDefault(),e._eventTarget.emit(t,h)}},e._handleMouseWheel=function(t){var e=kx.MOUSE_WHEEL,i=this._getLocation(t),n=t.button,r=new zx(e,!1,this._preMousePos);r.setLocation(i.x,i.y),r.setButton(n),r.movementX=t.movementX,r.movementY=t.movementY,r.setScrollData(5*t.deltaX,5*-t.deltaY),this._preMousePos.set(i.x,i.y),t.stopPropagation(),t.target===this._canvas&&t.preventDefault(),this._eventTarget.emit(e,r)},e._handleMouseLeave=function(){var t=kx.MOUSE_LEAVE,e=new zx(t,!1);this._eventTarget.emit(t,e)},e._handleMouseEnter=function(){var t=kx.MOUSE_ENTER,e=new zx(t,!1);this._eventTarget.emit(t,e)},t}(),Mw=new jn,Pw=new(function(){function t(){this._touchMap=new Map,this._maxTouches=8}var e=t.prototype;return e._createTouch=function(t,e,i){if(this._touchMap.has(t))U("Cannot create the same touch object.");else{if(!this._checkTouchMapSizeMoreThanMax(t)){var n=new Zx(e,i,t);return this._touchMap.set(t,n),this._updateTouch(n,e,i),n}U("The touches is more than MAX_TOUCHES.")}},e.releaseTouch=function(t){this._touchMap.has(t)&&this._touchMap.delete(t)},e.getTouch=function(t){return this._touchMap.get(t)},e.getOrCreateTouch=function(t,e,i){var n=this.getTouch(t);return n?this._updateTouch(n,e,i):n=this._createTouch(t,e,i),n},e.getAllTouches=function(){var t=[];return this._touchMap.forEach((function(e){e&&t.push(e)})),t},e.getTouchCount=function(){return Pw._touchMap.size},e._updateTouch=function(t,e,i){t.getLocation(Mw),t.setPrevPoint(Mw),t.setPoint(e,i)},e._checkTouchMapSizeMoreThanMax=function(t){var e=this;if(this._touchMap.has(t))return!1;var i=Pe.ENABLE_MULTI_TOUCH?this._maxTouches:1;if(this._touchMap.size<i)return!1;var n=performance.now();return this._touchMap.forEach((function(t){n-t.lastModified>Pe.TOUCH_TIMEOUT&&(U("The touches is more than MAX_TOUCHES, release touch id "+t.getID()+"."),e.releaseTouch(t.getID()))})),i>=this._touchMap.size},t}()),Ow=function(){function t(){this._canvas=void 0,this._eventTarget=new Hs,Zs.hasFeature(Ks.INPUT_TOUCH)&&(this._canvas=document.getElementById("GameCanvas"),this._canvas||z("failed to access canvas"),this._registerEvent())}var e=t.prototype;return e._registerEvent=function(){var t,e,i,n;null===(t=this._canvas)||void 0===t||t.addEventListener("touchstart",this._createCallback(kx.TOUCH_START)),null===(e=this._canvas)||void 0===e||e.addEventListener("touchmove",this._createCallback(kx.TOUCH_MOVE)),null===(i=this._canvas)||void 0===i||i.addEventListener("touchend",this._createCallback(kx.TOUCH_END)),null===(n=this._canvas)||void 0===n||n.addEventListener("touchcancel",this._createCallback(kx.TOUCH_CANCEL))},e._createCallback=function(t){var e=this;return function(i){for(var n,r=e._getCanvasRect(),s=[],a=i.changedTouches.length,o=0;o<a;++o){var h=i.changedTouches[o],u=h.identifier;if(null!==u){var l=e._getLocation(h,r),c=Pw.getOrCreateTouch(u,l.x,l.y);c&&(t!==kx.TOUCH_END&&t!==kx.TOUCH_CANCEL||Pw.releaseTouch(u),s.push(c))}}if(i.stopPropagation(),i.target===e._canvas&&i.preventDefault(),t===kx.TOUCH_START&&(null===(n=e._canvas)||void 0===n||n.focus()),s.length>0){var _=new Wx(s,!1,t,Pw.getAllTouches());e._eventTarget.emit(t,_)}}},e._getCanvasRect=function(){var t=this._canvas,e=null==t?void 0:t.getBoundingClientRect();return e?new Jn(e.x,e.y,e.width,e.height):new Jn(0,0,0,0)},e._getLocation=function(t,e){if(globalThis.__globalXR&&globalThis.__globalXR.ar&&globalThis.__globalXR.ar.isWebXR())return new jn(t.clientX,t.clientY);var i=t.clientX-e.x,n=e.y+e.height-t.clientY;if(ga.isFrameRotated){var r=i;i=e.height-n,n=r}var s=ga.devicePixelRatio;return new jn(i*=s,n*=s)},e.on=function(t,e,i){this._eventTarget.on(t,e,i)},t}();!function(t){t[t.GLOBAL=0]="GLOBAL",t[t.UI=1]="UI"}(xw||(xw={}));var Lw=function(){function t(t){this.priority=xw.GLOBAL,this._inputEventTarget=t}var e=t.prototype;return e.onThrowException=function(){},e.dispatchEvent=function(t){return this._inputEventTarget.emit(t.type,t),!0},t}(),Nw=((Cw={})[kx.MOUSE_DOWN]=kx.TOUCH_START,Cw[kx.MOUSE_MOVE]=kx.TOUCH_MOVE,Cw[kx.MOUSE_UP]=kx.TOUCH_END,Cw),Fw=t("ey",function(){function t(){this._dispatchImmediately=!0,this._eventTarget=new Hs,this._touchInput=new Ow,this._mouseInput=new Bw,this._keyboardInput=new Dw,this._accelerometerInput=new Jx,this._handleInput=new Ew,this._hmdInput=new ww,this._handheldInput=new Rw,this._eventTouchList=[],this._eventMouseList=[],this._eventKeyboardList=[],this._eventAccelerationList=[],this._eventGamepadList=[],this._eventHandleList=[],this._eventHMDList=[],this._eventHandheldList=[],this._needSimulateTouchMoveEvent=!1,this._eventDispatcherList=[],this._registerEvent(),this._inputEventDispatcher=new Lw(this._eventTarget),this._registerEventDispatcher(this._inputEventDispatcher),Tw._init()}var e=t.prototype;return e._dispatchMouseDownEvent=function(t){var e,i;null===(e=(i=this._mouseInput).dispatchMouseDownEvent)||void 0===e||e.call(i,t)},e._dispatchMouseMoveEvent=function(t){var e,i;null===(e=(i=this._mouseInput).dispatchMouseMoveEvent)||void 0===e||e.call(i,t)},e._dispatchMouseUpEvent=function(t){var e,i;null===(e=(i=this._mouseInput).dispatchMouseUpEvent)||void 0===e||e.call(i,t)},e._dispatchMouseScrollEvent=function(t){var e,i;null===(e=(i=this._mouseInput).dispatchScrollEvent)||void 0===e||e.call(i,t)},e._dispatchKeyboardDownEvent=function(t){var e,i;null===(e=(i=this._keyboardInput).dispatchKeyboardDownEvent)||void 0===e||e.call(i,t)},e._dispatchKeyboardUpEvent=function(t){var e,i;null===(e=(i=this._keyboardInput).dispatchKeyboardUpEvent)||void 0===e||e.call(i,t)},e.on=function(t,e,i){return this._eventTarget.on(t,e,i),e},e.once=function(t,e,i){return this._eventTarget.once(t,e,i),e},e.off=function(t,e,i){this._eventTarget.off(t,e,i)},e.getTouch=function(t){return Pw.getTouch(t)},e.getAllTouches=function(){return Pw.getAllTouches()},e.getTouchCount=function(){return Pw.getTouchCount()},e.setAccelerometerEnabled=function(t){t?this._accelerometerInput.start():this._accelerometerInput.stop()},e.setAccelerometerInterval=function(t){this._accelerometerInput.setInterval(t)},e._simulateEventTouch=function(t){var e=Nw[t.type],i=Pw.getOrCreateTouch(0,t.getLocationX(),t.getLocationY());if(i){var n=[i],r=new Wx(n,!1,e,e===kx.TOUCH_END?[]:n);r.windowId=t.windowId,e===kx.TOUCH_END&&Pw.releaseTouch(0),this._dispatchOrPushEventTouch(r,this._eventTouchList)}},e._registerEventDispatcher=function(t){this._eventDispatcherList.push(t),this._eventDispatcherList.sort((function(t,e){return e.priority-t.priority}))},e._emitEvent=function(t){for(var e=this._eventDispatcherList.length,i=0;i<e;++i){var n=this._eventDispatcherList[i];try{if(!n.dispatchEvent(t))break}catch(t){throw this._clearEvents(),n.onThrowException(),t}}},e._registerEvent=function(){var t=this;if(Sa.hasFeature(Sa.Feature.INPUT_TOUCH)){var e=this._eventTouchList;this._touchInput.on(kx.TOUCH_START,(function(i){t._dispatchOrPushEventTouch(i,e)})),this._touchInput.on(kx.TOUCH_MOVE,(function(i){t._dispatchOrPushEventTouch(i,e)})),this._touchInput.on(kx.TOUCH_END,(function(i){t._dispatchOrPushEventTouch(i,e)})),this._touchInput.on(kx.TOUCH_CANCEL,(function(i){t._dispatchOrPushEventTouch(i,e)}))}if(Sa.hasFeature(Sa.Feature.EVENT_MOUSE)){var i=this._eventMouseList;this._mouseInput.on(kx.MOUSE_DOWN,(function(e){t._needSimulateTouchMoveEvent=!0,t._simulateEventTouch(e),t._dispatchOrPushEvent(e,i)})),this._mouseInput.on(kx.MOUSE_MOVE,(function(e){t._needSimulateTouchMoveEvent&&t._simulateEventTouch(e),t._dispatchOrPushEvent(e,i)})),this._mouseInput.on(kx.MOUSE_UP,(function(e){t._needSimulateTouchMoveEvent=!1,t._simulateEventTouch(e),t._dispatchOrPushEvent(e,i)})),this._mouseInput.on(kx.MOUSE_WHEEL,(function(e){t._dispatchOrPushEvent(e,i)})),this._mouseInput.on(kx.MOUSE_LEAVE,(function(e){t._dispatchOrPushEvent(e,i)})),this._mouseInput.on(kx.MOUSE_ENTER,(function(e){t._dispatchOrPushEvent(e,i)}))}if(Sa.hasFeature(Sa.Feature.EVENT_KEYBOARD)){var n=this._eventKeyboardList;this._keyboardInput.on(kx.KEY_DOWN,(function(e){t._dispatchOrPushEvent(e,n)})),this._keyboardInput.on(kx.KEY_PRESSING,(function(e){t._dispatchOrPushEvent(e,n)})),this._keyboardInput.on(kx.KEY_UP,(function(e){t._dispatchOrPushEvent(e,n)}))}if(Sa.hasFeature(Sa.Feature.EVENT_ACCELEROMETER)){var r=this._eventAccelerationList;this._accelerometerInput.on(kx.DEVICEMOTION,(function(e){t._dispatchOrPushEvent(e,r)}))}if(Sa.hasFeature(Sa.Feature.EVENT_GAMEPAD)){var s=this._eventGamepadList;Tw._on(kx.GAMEPAD_CHANGE,(function(e){t._dispatchOrPushEvent(e,s)})),Tw._on(kx.GAMEPAD_INPUT,(function(e){t._dispatchOrPushEvent(e,s)})),Tw._on(kx.HANDLE_POSE_INPUT,(function(e){t._dispatchOrPushEvent(e,s)}))}if(Sa.hasFeature(Sa.Feature.EVENT_HANDLE)){var a=this._eventHandleList;this._handleInput._on(kx.HANDLE_INPUT,(function(e){t._dispatchOrPushEvent(e,a)})),this._handleInput._on(kx.HANDLE_POSE_INPUT,(function(e){t._dispatchOrPushEvent(e,a)}))}if(Sa.hasFeature(Sa.Feature.EVENT_HMD)){var o=this._eventHMDList;this._hmdInput._on(kx.HMD_POSE_INPUT,(function(e){t._dispatchOrPushEvent(e,o)}))}if(Sa.hasFeature(Sa.Feature.EVENT_HANDHELD)){var h=this._eventHandheldList;this._handheldInput._on(kx.HANDHELD_POSE_INPUT,(function(e){t._dispatchOrPushEvent(e,h)}))}},e._clearEvents=function(){this._eventMouseList.length=0,this._eventTouchList.length=0,this._eventKeyboardList.length=0,this._eventAccelerationList.length=0,this._eventGamepadList.length=0,this._eventHandleList.length=0,this._eventHMDList.length=0},e._dispatchOrPushEvent=function(t,e){this._dispatchImmediately?this._emitEvent(t):e.push(t)},e._dispatchOrPushEventTouch=function(t,e){if(this._dispatchImmediately)for(var i=t.getTouches(),n=i.length,r=0;r<n;++r)t.touch=i[r],t.propagationStopped=t.propagationImmediateStopped=!1,this._emitEvent(t);else e.push(t)},e._frameDispatchEvents=function(){for(var t=this._eventHMDList,e=0,i=t.length;e<i;++e){var n=t[e];this._emitEvent(n)}for(var r=this._eventHandheldList,s=0,a=r.length;s<a;++s){var o=r[s];this._emitEvent(o)}for(var h=this._eventMouseList,u=0,l=h.length;u<l;++u){var c=h[u];this._emitEvent(c)}for(var _=this._eventTouchList,f=0,d=_.length;f<d;++f)for(var p=_[f],m=p.getTouches(),g=m.length,v=0;v<g;++v)p.touch=m[v],p.propagationStopped=p.propagationImmediateStopped=!1,this._emitEvent(p);for(var y=this._eventKeyboardList,S=0,T=y.length;S<T;++S){var A=y[S];this._emitEvent(A)}for(var b=this._eventAccelerationList,E=0,C=b.length;E<C;++E){var x=b[E];this._emitEvent(x)}for(var w=this._eventGamepadList,R=0,I=w.length;R<I;++R){var D=w[R];this._emitEvent(D)}for(var B=this._eventHandleList,M=0,P=B.length;M<P;++M){var O=B[M];this._emitEvent(O)}this._clearEvents()},t}());Fw.EventType=kx;var kw=t("ex",new Fw),Gw=t("eA",function(t){function e(){var e;return e=t.call(this)||this,kw.on(kx.MOUSE_DOWN,(function(t){e.emit(Fx.MOUSE_DOWN,t)})),kw.on(kx.MOUSE_MOVE,(function(t){e.emit(Fx.MOUSE_MOVE,t)})),kw.on(kx.MOUSE_UP,(function(t){e.emit(Fx.MOUSE_UP,t)})),kw.on(kx.MOUSE_WHEEL,(function(t){e.emit(Fx.MOUSE_WHEEL,t)})),kw.on(kx.TOUCH_START,(function(t){e.emit(Fx.TOUCH_START,t.touch,t)})),kw.on(kx.TOUCH_MOVE,(function(t){e.emit(Fx.TOUCH_MOVE,t.touch,t)})),kw.on(kx.TOUCH_END,(function(t){e.emit(Fx.TOUCH_END,t.touch,t)})),kw.on(kx.TOUCH_CANCEL,(function(t){e.emit(Fx.TOUCH_CANCEL,t.touch,t)})),kw.on(kx.KEY_DOWN,(function(t){e.emit(Fx.KEY_DOWN,t)})),kw.on(kx.KEY_PRESSING,(function(t){e.emit(Fx.KEY_DOWN,t)})),kw.on(kx.KEY_UP,(function(t){e.emit(Fx.KEY_UP,t)})),kw.on(kx.DEVICEMOTION,(function(t){e.emit(Fx.DEVICEMOTION,t)})),e}s(e,t);var i=e.prototype;return i.setAccelerometerEnabled=function(t){kw.setAccelerometerEnabled(t)},i.setAccelerometerInterval=function(t){kw.setAccelerometerInterval(t)},i.on=function(e,i,n,r){return t.prototype.on.call(this,e,i,n,r),i},i.off=function(e,i,n){t.prototype.off.call(this,e,i,n)},e}(Hs));Gw.EventType=Fx,S.SystemEvent=Gw;var Vw=t("ez",new Gw);S.systemEvent=Vw,ut(Fx,"Node.EventType",[{name:"POSITION_PART",newName:"TRANSFORM_CHANGED"},{name:"ROTATION_PART",newName:"TRANSFORM_CHANGED"},{name:"SCALE_PART",newName:"TRANSFORM_CHANGED"}]),ut(Gx,"Event",[{name:"ACCELERATION",newName:"DEVICEMOTION",target:Gw.EventType,targetName:"SystemEvent.EventType"}]),ct(Gx,"Event",[{name:"TOUCH",suggest:"please use SystemEvent.EventType.TOUCH_START, SystemEvent.EventType.TOUCH_MOVE, SystemEvent.EventType.TOUCH_END and SystemEvent.EventType.TOUCH_CANCEL instead"},{name:"MOUSE",suggest:"please use SystemEvent.EventType.MOUSE_DOWN, SystemEvent.EventType.MOUSE_MOVE, SystemEvent.EventType.MOUSE_UP, SystemEvent.EventType.MOUSE_WHEEL, Node.EventType.MOUSE_ENTER and Node.EventType.MOUSE_LEAVE instead"},{name:"KEYBOARD",suggest:"please use SystemEvent.EventType.KEY_DOWN and SystemEvent.EventType.KEY_UP instead"}]),ut(zx,"EventMouse",["DOWN","UP","MOVE"].map((function(t){return{name:t,newName:"MOUSE_"+t,target:Gw.EventType,targetName:"SystemEvent.EventType"}}))),ut(zx,"EventMouse",[{name:"SCROLL",newName:"MOUSE_WHEEL",target:Gw.EventType,targetName:"SystemEvent.EventType"}]),ct(zx.prototype,"EventMouse.prototype",[{name:"eventType",suggest:"please use EventMouse.prototype.type instead"}]),ut(Wx,"EventTouch",[{name:"BEGAN",newName:"TOUCH_START",target:Gw.EventType,targetName:"SystemEvent.EventType"}]),ut(Wx,"EventTouch",[{name:"MOVED",newName:"TOUCH_MOVE",target:Gw.EventType,targetName:"SystemEvent.EventType"}]),ut(Wx,"EventTouch",[{name:"ENDED",newName:"TOUCH_END",target:Gw.EventType,targetName:"SystemEvent.EventType"}]),ut(Wx,"EventTouch",[{name:"CANCELLED",newName:"TOUCH_CANCEL",target:Gw.EventType,targetName:"SystemEvent.EventType"}]),ct(Wx.prototype,"EventTouch.prototype",[{name:"getEventCode",suggest:"please use EventTouch.prototype.type instead"}]),ut(Wx.prototype,"EventTouch.prototype",[{name:"getUILocationInView",newName:"getLocationInView",target:Wx,targetName:"EventTouch"}]),ct(Pe.KEY,"macro.KEY",["back","menu","0","1","2","3","4","5","6","7","8","9","0","*","+","-","/",";","=",",",".","[","]","dpadLeft","dpadRight","dpadUp","dpadDown","dpadCenter"].map((function(t){return{name:t}}))),ct(Pe.KEY,"macro.KEY",[{name:"shift",suggest:"please use KeyCode.SHIFT_LEFT instead"}]),ct(Pe.KEY,"macro.KEY",[{name:"ctrl",suggest:"please use KeyCode.CTRL_LEFT instead"}]),ct(Pe.KEY,"macro.KEY",[{name:"alt",suggest:"please use KeyCode.ALT_LEFT instead"}]),ct(Pe,"macro",[{name:"KEY",suggest:"please use KeyCode instead"}]);var Uw,zw,Hw,Ww,Xw,jw,Yw,qw,Kw=t("di",function(){function t(){this._singleMode=0,this._compositeModeValue=0,this._lightingWithAlbedo=!0,this._csmLayerColoration=!1,this._activate()}var e=t.prototype;return e.isCompositeModeEnabled=function(t){return 0!=(this._compositeModeValue&1<<t)},e.enableCompositeMode=function(t,e){this._enableCompositeMode(t,e),this._updatePipeline()},e.enableAllCompositeMode=function(t){this._enableAllCompositeMode(t),this._updatePipeline()},e.isEnabled=function(){return 0!==this._getType()},e.reset=function(){this._activate(),this._updatePipeline()},e._activate=function(){this._singleMode=0,this._enableAllCompositeMode(!0),this._lightingWithAlbedo=!0,this._csmLayerColoration=!1},e._updatePipeline=function(){var t=S.director.root,e=t.pipeline,i=this._getType();e.macros.CC_USE_DEBUG_VIEW!==i&&(e.macros.CC_USE_DEBUG_VIEW=i,t.onGlobalPipelineStateChanged())},e._enableCompositeMode=function(t,e){e?this._compositeModeValue|=1<<t:this._compositeModeValue&=~(1<<t)},e._enableAllCompositeMode=function(t){for(var e=0;e<17;e++)t?this._compositeModeValue|=1<<e:this._compositeModeValue&=~(1<<e)},e._getType=function(){if(0!==this._singleMode)return 1;if(!0!==this._lightingWithAlbedo||!1!==this._csmLayerColoration)return 2;for(var t=0;t<17;t++)if(!this.isCompositeModeEnabled(t))return 2;return 0},n(t,[{key:"singleMode",get:function(){return this._singleMode},set:function(t){this._singleMode=t,this._updatePipeline()}},{key:"lightingWithAlbedo",get:function(){return this._lightingWithAlbedo},set:function(t){this._lightingWithAlbedo=t,this._updatePipeline()}},{key:"csmLayerColoration",get:function(){return this._csmLayerColoration},set:function(t){this._csmLayerColoration=t,this._updatePipeline()}},{key:"debugViewType",get:function(){return this._getType()}}]),t}());!function(t){t[t.VERTICAL=0]="VERTICAL",t[t.HORIZONTAL=1]="HORIZONTAL"}(Uw||(Uw={})),function(t){t[t.ORTHO=0]="ORTHO",t[t.PERSPECTIVE=1]="PERSPECTIVE"}(zw||(zw={})),function(t){t[t.F1_8=0]="F1_8",t[t.F2_0=1]="F2_0",t[t.F2_2=2]="F2_2",t[t.F2_5=3]="F2_5",t[t.F2_8=4]="F2_8",t[t.F3_2=5]="F3_2",t[t.F3_5=6]="F3_5",t[t.F4_0=7]="F4_0",t[t.F4_5=8]="F4_5",t[t.F5_0=9]="F5_0",t[t.F5_6=10]="F5_6",t[t.F6_3=11]="F6_3",t[t.F7_1=12]="F7_1",t[t.F8_0=13]="F8_0",t[t.F9_0=14]="F9_0",t[t.F10_0=15]="F10_0",t[t.F11_0=16]="F11_0",t[t.F13_0=17]="F13_0",t[t.F14_0=18]="F14_0",t[t.F16_0=19]="F16_0",t[t.F18_0=20]="F18_0",t[t.F20_0=21]="F20_0",t[t.F22_0=22]="F22_0"}(Hw||(Hw={})),function(t){t[t.ISO100=0]="ISO100",t[t.ISO200=1]="ISO200",t[t.ISO400=2]="ISO400",t[t.ISO800=3]="ISO800"}(Ww||(Ww={})),function(t){t[t.D1=0]="D1",t[t.D2=1]="D2",t[t.D4=2]="D4",t[t.D8=3]="D8",t[t.D15=4]="D15",t[t.D30=5]="D30",t[t.D60=6]="D60",t[t.D125=7]="D125",t[t.D250=8]="D250",t[t.D500=9]="D500",t[t.D1000=10]="D1000",t[t.D2000=11]="D2000",t[t.D4000=12]="D4000"}(Xw||(Xw={})),function(t){t[t.DEFAULT=-1]="DEFAULT",t[t.LEFT_EYE=0]="LEFT_EYE",t[t.RIGHT_EYE=1]="RIGHT_EYE",t[t.MAIN=2]="MAIN"}(jw||(jw={})),function(t){t[t.NO_TRACKING=0]="NO_TRACKING",t[t.POSITION_AND_ROTATION=1]="POSITION_AND_ROTATION",t[t.POSITION=2]="POSITION",t[t.ROTATION=3]="ROTATION"}(Yw||(Yw={})),function(t){t[t.EDITOR=0]="EDITOR",t[t.GAME_VIEW=1]="GAME_VIEW",t[t.SCENE_VIEW=2]="SCENE_VIEW",t[t.PREVIEW=3]="PREVIEW",t[t.GAME=100]="GAME"}(qw||(qw={}));var Qw,Zw=[1.8,2,2.2,2.5,2.8,3.2,3.5,4,4.5,5,5.6,6.3,7.1,8,9,10,11,13,14,16,18,20,22],Jw=[1,.5,1/4,1/8,1/15,1/30,1/60,.008,.004,.002,.001,5e-4,1/4e3],$w=[100,200,400,800],tR=new gn,eR=new gn,iR=new Vn,nR=Fc.STENCIL<<1,rR=[],sR=function(){function t(t){if(this.isWindowSize=!0,this.screenScale=1,this.postProcess=null,this.usePostProcess=!1,this.pipeline="",this.pipelineSettings=null,this._scene=null,this._node=null,this._name=null,this._enabled=!1,this._proj=-1,this._aspect=1,this._orthoHeight=10,this._fovAxis=Uw.VERTICAL,this._fov=Vi(45),this._nearClip=1,this._farClip=1e3,this._clearColor=new t_(.2,.2,.2,1),this._viewport=new Jn(0,0,1,1),this._orientedViewport=new Jn(0,0,1,1),this._curTransform=$l.IDENTITY,this._isProjDirty=!0,this._matView=new Vn,this._matProj=new Vn,this._matProjInv=new Vn,this._matViewProj=new Vn,this._matViewProjInv=new Vn,this._frustum=new La,this._forward=new gn,this._position=new gn,this._priority=0,this._aperture=Hw.F16_0,this._shutter=Xw.D125,this._shutterValue=0,this._iso=Ww.ISO100,this._isoValue=0,this._window=null,this._width=1,this._height=1,this._clearFlag=Fc.NONE,this._clearDepth=1,this._visibility=sy,this._exposure=0,this._clearStencil=0,this._geometryRenderer=null,this._windowId=0,this._cameraType=jw.DEFAULT,this._trackingType=Yw.NO_TRACKING,this._usage=qw.GAME,this._device=t,this._apertureValue=Zw[this._aperture],this._shutterValue=Jw[this._shutter],this._isoValue=$w[this._iso],this._frustum.accurate=!0,!rR.length){var e=t.capabilities.clipSpaceSignY;rR[$l.IDENTITY]=new Vn(1,0,0,0,0,e),rR[$l.ROTATE_90]=new Vn(0,1,0,0,-e,0),rR[$l.ROTATE_180]=new Vn(-1,0,0,0,0,-e),rR[$l.ROTATE_270]=new Vn(0,-1,0,0,e,0)}}var e=t.prototype;return e._updateAspect=function(t){if(void 0===t&&(t=!0),this._aspect=this.window.width*this._viewport.width/(this.window.height*this._viewport.height),t){var e=this.window.swapchain;(e&&e.surfaceTransform||$l.IDENTITY)%2&&(this._aspect=1/this._aspect)}this._isProjDirty=!0},e.initialize=function(t){void 0!==t.usage?this._usage=t.usage:this.setDefaultUsage(),void 0!==t.trackingType&&(this._trackingType=t.trackingType),void 0!==t.cameraType&&(this._cameraType=t.cameraType),this.node=t.node,this._width=1,this._height=1,this.clearFlag=Fc.NONE,this.clearDepth=1,this.visibility=sy,this._name=t.name,this._proj=t.projection,this._priority=t.priority||0,this._aspect=this.screenScale=1,this.updateExposure(),this.changeTargetWindow(t.window)},e.destroy=function(){var t;this._node=null,this.detachFromScene(),this._window&&(this._window.detachCamera(this),this.window=null),this._name=null,null===(t=this._geometryRenderer)||void 0===t||t.destroy()},e.attachToScene=function(t){this._enabled=!0,this._scene=t},e.detachFromScene=function(){this._enabled=!1,this._scene=null},e.resize=function(t,e){this._window&&(this._width=t,this._height=e,this._aspect=t*this._viewport.width/(e*this._viewport.height),this._isProjDirty=!0)},e.setFixedSize=function(t,e){this._width=t,this._height=e,this._updateAspect(),this.isWindowSize=!1},e.syncCameraEditor=function(){},e.update=function(t){var e;if(void 0===t&&(t=!1),this._node){var i=!1,n=globalThis.__globalXR;if(n&&n.isWebXR&&n.webXRWindowMap&&n.updateViewport){var r=n.webXRMatProjs?1/n.webXRMatProjs.length:1,s=n.webXRWindowMap.get(this._window);this.setViewportInOrientedSpace(new Jn(r*s,0,r,1))}(this._node.hasChangedFlags||t)&&(Vn.invert(this._matView,this._node.worldMatrix),this._forward.x=-this._matView.m02,this._forward.y=-this._matView.m06,this._forward.z=-this._matView.m10,Vn.multiply(this._matView,(new Vn).scale(this._node.worldScale),this._matView),this._node.getWorldPosition(this._position),i=!0);var a=null===(e=this.window)||void 0===e?void 0:e.swapchain,o=a&&a.surfaceTransform||$l.IDENTITY;if(this._isProjDirty||this._curTransform!==o){this._curTransform=o;var h=this._device.capabilities.clipSpaceSignY;if(this._proj===zw.PERSPECTIVE)if(n&&n.isWebXR&&n.webXRWindowMap&&n.webXRMatProjs){var u=n.webXRWindowMap.get(this._window);this._matProj.set(n.webXRMatProjs[u])}else Vn.perspective(this._matProj,this._fov,this._aspect,this._nearClip,this._farClip,this._fovAxis===Uw.VERTICAL,this._device.capabilities.clipSpaceMinZ,h,o);else{var l=this._orthoHeight*this._aspect,c=this._orthoHeight;Vn.ortho(this._matProj,-l,l,-c,c,this._nearClip,this._farClip,this._device.capabilities.clipSpaceMinZ,h,o)}Vn.invert(this._matProjInv,this._matProj),i=!0,this._isProjDirty=!1}i&&(Vn.multiply(this._matViewProj,this._matProj,this._matView),Vn.invert(this._matViewProjInv,this._matViewProj),this._frustum.update(this._matViewProj,this._matViewProjInv))}},e.setViewportInOrientedSpace=function(t){var e,i=t.x,n=t.width,r=t.height,s=this._device.capabilities.screenSpaceSignY<0?1-t.y-r:t.y,a=null===(e=this.window)||void 0===e?void 0:e.swapchain;switch(a&&a.surfaceTransform||$l.IDENTITY){case $l.ROTATE_90:this._viewport.x=1-s-r,this._viewport.y=i,this._viewport.width=r,this._viewport.height=n;break;case $l.ROTATE_180:this._viewport.x=1-i-n,this._viewport.y=1-s-r,this._viewport.width=n,this._viewport.height=r;break;case $l.ROTATE_270:this._viewport.x=s,this._viewport.y=1-i-n,this._viewport.width=r,this._viewport.height=n;break;case $l.IDENTITY:this._viewport.x=i,this._viewport.y=s,this._viewport.width=n,this._viewport.height=r}this._orientedViewport.x=i,this._orientedViewport.y=s,this._orientedViewport.width=n,this._orientedViewport.height=r,this.resize(this.width,this.height)},e.initGeometryRenderer=function(){var t;this._geometryRenderer||(this._geometryRenderer=S.internal.GeometryRenderer?new S.internal.GeometryRenderer:null,null===(t=this._geometryRenderer)||void 0===t||t.activate(this._device))},e.changeTargetWindow=function(t){void 0===t&&(t=null),this._window&&this._window.detachCamera(this);var e=t||S.director.root.mainWindow;if(e){e.attachCamera(this),this.window=e;var i=e.swapchain;(i&&i.surfaceTransform||$l.IDENTITY)%2?this.resize(e.height,e.width):this.resize(e.width,e.height)}},e.detachCamera=function(){this._window&&this._window.detachCamera(this)},e.screenPointToRay=function(t,e,i){if(!this._node)return null;var n=this.width,r=this.height,s=this._orientedViewport.x*n,a=this._orientedViewport.y*r,o=this._orientedViewport.width*n,h=this._orientedViewport.height*r,u=this._proj===zw.PERSPECTIVE,l=this._device.capabilities.clipSpaceSignY,c=Gn[this._curTransform];gn.set(tR,(e-s)/o*2-1,(i-a)/h*2-1,u?1:-1);var _=tR.x,f=tR.y;return tR.x=_*c[0]+f*c[2]*l,tR.y=_*c[1]+f*c[3]*l,gn.transformMat4(u?tR:t.o,tR,this._matViewProjInv),u?(this._node.getWorldPosition(eR),gr.fromPoints(t,eR,tR)):gn.transformQuat(t.d,gn.FORWARD,this._node.worldRotation),t},e.screenToWorld=function(t,e){var i=this.width,n=this.height,r=this._orientedViewport.x*i,s=this._orientedViewport.y*n,a=this._orientedViewport.width*i,o=this._orientedViewport.height*n,h=this._device.capabilities.clipSpaceSignY,u=Gn[this._curTransform];if(this._proj===zw.PERSPECTIVE){gn.set(t,(e.x-r)/a*2-1,(e.y-s)/o*2-1,1);var l=t.x,c=t.y;t.x=l*u[0]+c*u[2]*h,t.y=l*u[1]+c*u[3]*h,gn.transformMat4(t,t,this._matViewProjInv),this._node&&this._node.getWorldPosition(tR),gn.lerp(t,tR,t,Gi(this._nearClip/this._farClip,1,e.z))}else{gn.set(t,(e.x-r)/a*2-1,(e.y-s)/o*2-1,2*e.z-1);var _=t.x,f=t.y;t.x=_*u[0]+f*u[2]*h,t.y=_*u[1]+f*u[3]*h,gn.transformMat4(t,t,this._matViewProjInv)}return t},e.worldToScreen=function(t,e){var i=this._device.capabilities.clipSpaceSignY,n=Gn[this._curTransform];gn.transformMat4(t,e,this._matViewProj);var r=t.x,s=t.y;t.x=r*n[0]+s*n[2]*i,t.y=r*n[1]+s*n[3]*i;var a=this.width,o=this.height,h=this._orientedViewport.x*a,u=this._orientedViewport.y*o,l=this._orientedViewport.width*a,c=this._orientedViewport.height*o;return t.x=h+.5*(t.x+1)*l,t.y=u+.5*(t.y+1)*c,t.z=.5*t.z+.5,t},e.worldMatrixToScreen=function(t,e,i,n){Vn.multiply(t,this._matViewProj,e),Vn.multiply(t,rR[this._curTransform],t);var r=i/2,s=n/2;return Vn.identity(iR),Vn.transform(iR,iR,gn.set(tR,r,s,0)),Vn.scale(iR,iR,gn.set(tR,r,s,1)),Vn.multiply(t,iR,t),t},e.calculateObliqueMat=function(t){var e=new cn(Math.sign(t.x),Math.sign(t.y),1,1).transformMat4(this._matProjInv),i=new cn(this._matProj.m03,this._matProj.m07,this._matProj.m11,this._matProj.m15),n=2/cn.dot(t,e),r=t.multiplyScalar(n).subtract(i);this._matProj.m02=r.x,this._matProj.m06=r.y,this._matProj.m10=r.z,this._matProj.m14=r.w},e.getClipSpaceMinz=function(){return this._device.capabilities.clipSpaceMinZ},e.setExposure=function(t){this._exposure=.833333/Math.pow(2,t)},e.updateExposure=function(){var t=Math.log2(this._apertureValue*this._apertureValue/this._shutterValue*100/this._isoValue);this.setExposure(t)},e.setDefaultUsage=function(){this._usage=qw.GAME},n(t,[{key:"name",get:function(){return this._name}},{key:"scene",get:function(){return this._scene}},{key:"node",get:function(){return this._node},set:function(t){this._node=t}},{key:"systemWindowId",get:function(){return this._windowId}},{key:"window",get:function(){return this._window},set:function(t){this._window=t}},{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t}},{key:"visibility",get:function(){return this._visibility},set:function(t){this._visibility=t}},{key:"priority",get:function(){return this._priority},set:function(t){this._priority=t}},{key:"width",get:function(){return this._width}},{key:"height",get:function(){return this._height}},{key:"position",get:function(){return this._position},set:function(t){this._position=t}},{key:"forward",get:function(){return this._forward},set:function(t){this._forward=t}},{key:"aperture",get:function(){return this._aperture},set:function(t){this._aperture=t,this._apertureValue=Zw[this._aperture],this.updateExposure()}},{key:"apertureValue",get:function(){return this._apertureValue}},{key:"shutter",get:function(){return this._shutter},set:function(t){this._shutter=t,this._shutterValue=Jw[this._shutter],this.updateExposure()}},{key:"shutterValue",get:function(){return this._shutterValue}},{key:"iso",get:function(){return this._iso},set:function(t){this._iso=t,this._isoValue=$w[this._iso],this.updateExposure()}},{key:"isoValue",get:function(){return this._isoValue}},{key:"exposure",get:function(){return this._exposure}},{key:"clearFlag",get:function(){return this._clearFlag},set:function(t){this._clearFlag=t}},{key:"clearColor",get:function(){return this._clearColor},set:function(t){this._clearColor.x=t.x,this._clearColor.y=t.y,this._clearColor.z=t.z,this._clearColor.w=t.w}},{key:"clearDepth",get:function(){return this._clearDepth},set:function(t){this._clearDepth=t}},{key:"clearStencil",get:function(){return this._clearStencil},set:function(t){this._clearStencil=t}},{key:"projectionType",get:function(){return this._proj},set:function(t){this._proj=t,this._isProjDirty=!0}},{key:"aspect",get:function(){return this._aspect}},{key:"orthoHeight",get:function(){return this._orthoHeight},set:function(t){this._orthoHeight=t,this._isProjDirty=!0}},{key:"fovAxis",get:function(){return this._fovAxis},set:function(t){this._fovAxis=t,this._isProjDirty=!0}},{key:"fov",get:function(){return this._fov},set:function(t){this._fov=t,this._isProjDirty=!0}},{key:"nearClip",get:function(){return this._nearClip},set:function(t){this._nearClip=t,this._isProjDirty=!0}},{key:"farClip",get:function(){return this._farClip},set:function(t){this._farClip=t,this._isProjDirty=!0}},{key:"viewport",get:function(){return this._viewport},set:function(t){tt(8302),this.setViewportInOrientedSpace(t)}},{key:"frustum",get:function(){return this._frustum},set:function(t){this._frustum=t}},{key:"matView",get:function(){return this._matView}},{key:"matProj",get:function(){return this._matProj}},{key:"matProjInv",get:function(){return this._matProjInv}},{key:"matViewProj",get:function(){return this._matViewProj}},{key:"matViewProjInv",get:function(){return this._matViewProjInv}},{key:"surfaceTransform",get:function(){return this._curTransform}},{key:"geometryRenderer",get:function(){return this._geometryRenderer}},{key:"cameraType",get:function(){return this._cameraType},set:function(t){this._cameraType=t}},{key:"trackingType",get:function(){return this._trackingType},set:function(t){this._trackingType=t}},{key:"cameraUsage",get:function(){return this._usage},set:function(t){this._usage=t}}],[{key:"standardExposureValue",get:function(){return 1/38400}},{key:"standardLightMeterScale",get:function(){return 1e4}}]),t}(),aR=new L_(null),oR=function(){function t(){this._device=null,this._passes=null,this._shaders=null,this._subMesh=null,this._patches=null,this._priority=xg.DEFAULT,this._inputAssembler=null,this._descriptorSet=null,this._worldBoundDescriptorSet=null,this._reflectionTex=null,this._reflectionSampler=null,this._instancedAttributeBlock={buffer:null,views:[],attributes:[]},this._instancedWorldMatrixIndex=-1,this._instancedSHIndex=-1,this._useReflectionProbeType=0}var e=t.prototype;return e.initialize=function(t,e,i){void 0===i&&(i=null);var n=S.director.root;this._device=Ff.gfxDevice,aR.layout=e[0].localSetLayout,this._inputAssembler=this._device.createInputAssembler(t.iaInfo),this._descriptorSet=this._device.createDescriptorSet(aR);var r=S.director.root.pipeline.pipelineSceneData.getOcclusionQueryPass();if(r){var s=new L_(null);s.layout=r.localSetLayout,this._worldBoundDescriptorSet=this._device.createDescriptorSet(s)}this._subMesh=t,this._patches=i?i.sort():null,this._passes=e,this._flushPassInfo(),this.priority=xg.DEFAULT;var a=S.rendering;if((!a||!a.enableEffectImport)&&e[0].phase===ET("reflection")||cy()&&e[0].phaseID===a.getPhaseID(a.getPassID("default"),"reflection")){var o=n.mainWindow.width,h=n.mainWindow.height,u=512;h<o?(o=u*o/h,h=u):h=u*h/(o=u),this._reflectionTex=this._device.createTexture(new u_(hc.TEX2D,uc.STORAGE|uc.TRANSFER_SRC|uc.SAMPLED,ec.RGBA8,o,h)),this.descriptorSet.bindTexture(Fv,this._reflectionTex),this._reflectionSampler=this._device.getSampler(new c_(dc.LINEAR,dc.LINEAR,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP)),this.descriptorSet.bindSampler(Fv,this._reflectionSampler),this.descriptorSet.bindTexture(Vv,this._reflectionTex)}},e.destroy=function(){var t;this._descriptorSet.destroy(),this._descriptorSet=null,this._inputAssembler.destroy(),this._inputAssembler=null,null===(t=this._worldBoundDescriptorSet)||void 0===t||t.destroy(),this._worldBoundDescriptorSet=null,this.priority=xg.DEFAULT,this._patches=null,this._subMesh=null,this._passes=null,this._shaders=null,this._reflectionTex&&this._reflectionTex.destroy(),this._reflectionTex=null,this._reflectionSampler=null},e.update=function(){for(var t,e=0;e<this._passes.length;++e)this._passes[e].update();this._descriptorSet.update(),null===(t=this._worldBoundDescriptorSet)||void 0===t||t.update()},e.onPipelineStateChanged=function(){var t=this._passes;if(t){for(var e=0;e<t.length;e++){var i=t[e];i.beginChangeStatesSilently(),i.tryCompile(),i.endChangeStatesSilently()}this._flushPassInfo()}},e.onMacroPatchesStateChanged=function(t){if((t||this._patches)&&(!t||(t=t.sort(),!this._patches||t.length!==this._patches.length||JSON.stringify(t)!==JSON.stringify(this._patches)))){this._patches=t;var e=this._passes;if(e){for(var i=0;i<e.length;i++){var n=e[i];n.beginChangeStatesSilently(),n.tryCompile(),n.endChangeStatesSilently()}this._flushPassInfo()}}},e.onGeometryChanged=function(){if(this._subMesh){var t=this._subMesh.drawInfo;if(this._inputAssembler&&t){var e=this._inputAssembler.drawInfo;Object.keys(t).forEach((function(i){e[i]=t[i]})),this._inputAssembler.drawInfo=e}}},e.getInstancedAttributeIndex=function(t){for(var e=this.instancedAttributeBlock.attributes,i=0;i<e.length;i++)if(e[i].name===t)return i;return-1},e.updateInstancedWorldMatrix=function(t,e){var i=this.instancedAttributeBlock.views,n=i[e],r=i[e+1],s=i[e+2];n[0]=t.m00,n[1]=t.m01,n[2]=t.m02,n[3]=t.m12,r[0]=t.m04,r[1]=t.m05,r[2]=t.m06,r[3]=t.m13,s[0]=t.m08,s[1]=t.m09,s[2]=t.m10,s[3]=t.m14},e.updateInstancedSH=function(t,e){for(var i=this.instancedAttributeBlock.views,n=(pv.SH_QUADRATIC_R_OFFSET-pv.SH_LINEAR_CONST_R_OFFSET)/4,r=0,s=e;s<e+n;s++)for(var a=0;a<4;a++)i[s][a]=t[r++]},e.UpdateInstancedAttributes=function(t){this.instancedWorldMatrixIndex=-1,this.instancedSHIndex=-1;var e=this.passes[0];if(e.device.hasFeature(tc.INSTANCED_ARRAYS)){for(var i=0,n=0;n<t.length;n++){var r=t[n];r.isInstanced&&(i+=j_[r.format].size)}var s=this.instancedAttributeBlock;s.buffer=new Uint8Array(i),s.views.length=s.attributes.length=0;for(var a=0,o=0;o<t.length;o++){var h=t[o];if(h.isInstanced){var u=new T_;u.format=h.format,u.name=h.name,u.isNormalized=h.isNormalized,u.location=h.location,s.attributes.push(u);var l=j_[h.format],c=new(ef(l))(s.buffer.buffer,a,l.count);s.views.push(c),a+=l.size}}e.batchingScheme===TT.INSTANCING&&e.getInstancedBuffer().destroy(),this.instancedWorldMatrixIndex=this.getInstancedAttributeIndex(nv),this.instancedSHIndex=this.getInstancedAttributeIndex(rv)}},e._flushPassInfo=function(){var t=this._passes;if(t){this._shaders||(this._shaders=[]),this._shaders.length=t.length;for(var e=0,i=t.length;e<i;e++)this._shaders[e]=t[e].getShaderVariant(this.patches)}},n(t,[{key:"passes",get:function(){return this._passes},set:function(t){t.length>8?it(12004,8):(this._passes=t,this._flushPassInfo(),this._descriptorSet&&(this._descriptorSet.destroy(),aR.layout=t[0].localSetLayout,this._descriptorSet=this._device.createDescriptorSet(aR)))}},{key:"shaders",get:function(){return this._shaders}},{key:"subMesh",get:function(){return this._subMesh},set:function(t){this._inputAssembler.destroy(),this._inputAssembler=this._device.createInputAssembler(t.iaInfo),this._subMesh=t}},{key:"priority",get:function(){return this._priority},set:function(t){this._priority=t}},{key:"inputAssembler",get:function(){return this._inputAssembler}},{key:"descriptorSet",get:function(){return this._descriptorSet}},{key:"worldBoundDescriptorSet",get:function(){return this._worldBoundDescriptorSet}},{key:"patches",get:function(){return this._patches}},{key:"instancedAttributeBlock",get:function(){return this._instancedAttributeBlock}},{key:"instancedWorldMatrixIndex",get:function(){return this._instancedWorldMatrixIndex},set:function(t){this._instancedWorldMatrixIndex=t}},{key:"instancedSHIndex",get:function(){return this._instancedSHIndex},set:function(t){this._instancedSHIndex=t}},{key:"useReflectionProbeType",get:function(){return this._useReflectionProbeType},set:function(t){this._useReflectionProbeType=t}}]),t}(),hR=new E_;hR.format=ec.RGBA8;var uR=new C_;uR.format=ec.DEPTH_STENCIL;var lR,cR,_R=new R_([hR],uR),fR={width:1,height:1,renderPassInfo:_R},dR=t("e6",eo("cc.RenderTexture")(Qw=function(t){function e(){var e;return(e=t.call(this)||this)._window=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._name=t.name||"",this._width=t.width,this._height=t.height,this._initWindow(t)},i.reset=function(t){this.initialize(t)},i.destroy=function(){if(this._window){var e=S.director.root;null==e||e.destroyWindow(this._window),this._window=null}return t.prototype.destroy.call(this)},i.resize=function(t,e){this._width=Math.floor(Fi(t,1,2048)),this._height=Math.floor(Fi(e,1,2048)),this._window&&this._window.resize(this._width,this._height),this.emit("resize",this._window)},i._serialize=function(){return{}},i._deserialize=function(e,i){var n=e;this._width=n.w,this._height=n.h,this._name=n.n,t.prototype._deserialize.call(this,n.base,i)},i.getGFXTexture=function(){return this._window&&this._window.framebuffer.colorTextures[0]},i.onLoaded=function(){this._initWindow()},i._initWindow=function(t){var e=S.director.root;fR.title=this._name,fR.width=this._width,fR.height=this._height,fR.renderPassInfo=t&&t.passInfo?t.passInfo:_R,fR.externalResLow=t&&t.externalResLow?t.externalResLow:0,fR.externalResHigh=t&&t.externalResHigh?t.externalResHigh:0,fR.externalFlag=t&&t.externalFlag?t.externalFlag:lc.NONE,fR.renderPassInfo.colorAttachments.forEach((function(t){t.format=e.device.swapchainFormat})),hR.barrier=Ff.gfxDevice.getGeneralBarrier(new I_(Ec.FRAGMENT_SHADER_READ_TEXTURE,Ec.FRAGMENT_SHADER_READ_TEXTURE)),this._window?(this._window.destroy(),this._window.initialize(Ff.gfxDevice,fR)):this._window=e.createWindow(fR)},i.initDefault=function(e){t.prototype.initDefault.call(this,e),this._width=this._height=1,this._initWindow()},i.validate=function(){return this.width>=1&&this.width<=2048&&this.height>=1&&this.height<=2048},i.readPixels=function(t,e,i,n,r){t=t||0,e=e||0,i=i||this.width,n=n||this.height;var s=this.getGFXTexture();if(!s)return it(7606),null;var a=4*i*n;if(void 0===r)r=new Uint8Array(a);else if(r.length<a)return it(7607,a),null;var o=this._getGFXDevice(),h=[],u=[],l=new Jc;return l.texOffset.x=t,l.texOffset.y=e,l.texExtent.width=i,l.texExtent.height=n,u.push(l),h.push(r),null==o||o.copyTextureToBuffers(s,h,u),r},n(e,[{key:"window",get:function(){return this._window}}]),e}(Xd))||Qw);S.RenderTexture=dR,function(t){t[t.SKYBOX=nR|Fc.DEPTH_STENCIL]="SKYBOX",t[t.SOLID_COLOR=Fc.ALL]="SOLID_COLOR"}(lR||(lR={})),function(t){t[t.CUBE=0]="CUBE",t[t.PLANAR=1]="PLANAR"}(cR||(cR={}));var pR,mR=[new gn(0,-90,0),new gn(0,90,0),new gn(90,0,0),new gn(-90,0,0),new gn(0,0,0),new gn(0,180,0)],gR=function(){function t(t){this.bakedCubeTextures=[],this.realtimePlanarTexture=null,this._resolution=256,this._clearFlag=lR.SKYBOX,this._backgroundColor=new En(0,0,0,255),this._visibility=sy,this._probeType=cR.CUBE,this._cubemap=null,this._size=new gn(1,1,1),this._camera=null,this._probeId=0,this._needRefresh=!1,this._needRender=!1,this._node=null,this._cameraNode=null,this._boundingBox=null,this._cameraWorldPos=new gn,this._cameraWorldRotation=new Bn,this._forward=new gn,this._up=new gn,this._previewSphere=null,this._previewPlane=null,this._probeId=t}var e=t.prototype;return e.initialize=function(t,e){this._node=t,this._cameraNode=e;var i=this.node.getWorldPosition();this._boundingBox=Ra.create(i.x,i.y,i.z,this._size.x,this._size.y,this._size.z),this._createCamera(e)},e.initBakedTextures=function(){if(0===this.bakedCubeTextures.length)for(var t=0;t<6;t++){var e=this._createTargetTexture(this._resolution,this._resolution);this.bakedCubeTextures.push(e)}},e.captureCubemap=function(){this.initBakedTextures(),this._resetCameraParams(),this._needRender=!0},e.renderPlanarReflection=function(t){if(t){if(!this.realtimePlanarTexture){var e=S.view.getDesignResolutionSize();this.realtimePlanarTexture=this._createTargetTexture(e.width,e.height),S.internal.reflectionProbeManager.updatePlanarMap(this,this.realtimePlanarTexture.getGFXTexture())}this._syncCameraParams(t),this._transformReflectionCamera(t),this._needRender=!0}},e.switchProbeType=function(t,e){t===cR.CUBE?this._needRender=!1:null!==e&&this.renderPlanarReflection(e)},e.getProbeId=function(){return this._probeId},e.updateProbeId=function(t){this._probeId=t},e.renderArea=function(){return this._probeType===cR.PLANAR?new jn(this.realtimePlanarTexture.width,this.realtimePlanarTexture.height):new jn(this.resolution,this.resolution)},e.isFinishedRendering=function(){return!0},e.validate=function(){return null!==this.cubemap},e.destroy=function(){this._camera&&(this._camera.destroy(),this._camera=null);for(var t=0;t<this.bakedCubeTextures.length;t++)this.bakedCubeTextures[t].destroy();this.bakedCubeTextures=[],this.realtimePlanarTexture&&(this.realtimePlanarTexture.destroy(),this.realtimePlanarTexture=null)},e.enable=function(){},e.disable=function(){},e.updateCameraDir=function(t){this.cameraNode.setRotationFromEuler(mR[t]),this.camera.update(!0)},e.updateBoundingBox=function(){if(this.node){var t=this.node.getWorldPosition();Ra.set(this._boundingBox,t.x,t.y,t.z,this._size.x,this._size.y,this._size.z)}},e.hasFrameBuffer=function(t){if(this.probeType===cR.PLANAR){var e;if(!this.realtimePlanarTexture)return!1;if((null===(e=this.realtimePlanarTexture.window)||void 0===e?void 0:e.framebuffer)===t)return!0}else{if(0===this.bakedCubeTextures.length)return!1;for(var i=0;i<this.bakedCubeTextures.length;i++){var n;if((null===(n=this.bakedCubeTextures[i].window)||void 0===n?void 0:n.framebuffer)===t)return!0}}return!1},e.isRGBE=function(){return!0},e._syncCameraParams=function(t){this.camera.projectionType=t.projectionType,this.camera.orthoHeight=t.orthoHeight,this.camera.nearClip=t.nearClip,this.camera.farClip=t.farClip,this.camera.fov=t.fov,this.camera.clearFlag=t.clearFlag,this.camera.clearColor=t.clearColor,this.camera.priority=t.priority-1,this.camera.resize(t.width,t.height)},e._createCamera=function(t){var e=S.director.root;if(!this._camera){if(this._camera=e.createCamera(),!this._camera)return null;this._camera.initialize({name:t.name,node:t,projection:zw.PERSPECTIVE,window:e&&e.tempWindow,priority:0,cameraType:jw.DEFAULT,trackingType:Yw.NO_TRACKING})}return this._camera.setViewportInOrientedSpace(new Jn(0,0,1,1)),this._camera.fovAxis=Uw.VERTICAL,this._camera.fov=Vi(90),this._camera.orthoHeight=10,this._camera.nearClip=1,this._camera.farClip=1e3,this._camera.clearColor=this._backgroundColor,this._camera.clearDepth=1,this._camera.clearStencil=0,this._camera.clearFlag=this._clearFlag,this._camera.visibility=this._visibility,this._camera.aperture=Hw.F16_0,this._camera.shutter=Xw.D125,this._camera.iso=Ww.ISO100,this._camera},e._resetCameraParams=function(){this.camera.projectionType=zw.PERSPECTIVE,this.camera.orthoHeight=10,this.camera.nearClip=1,this.camera.farClip=1e3,this.camera.fov=Vi(90),this.camera.priority=0,this.camera.resize(this.resolution,this.resolution),this.camera.visibility=this._visibility,this.camera.clearFlag=this._clearFlag,this.camera.clearColor=this._backgroundColor,this.cameraNode.worldPosition=this.node.worldPosition,this.cameraNode.worldRotation=this.node.worldRotation,this.camera.update(!0)},e._createTargetTexture=function(t,e){var i=new dR;return i.reset({width:t,height:e}),i},e._transformReflectionCamera=function(t){var e=gn.dot(this.node.worldPosition,this.node.up);this._reflect(this._cameraWorldPos,t.node.worldPosition,this.node.up,e),this.cameraNode.worldPosition=this._cameraWorldPos,gn.transformQuat(this._forward,gn.FORWARD,t.node.worldRotation),this._reflect(this._forward,this._forward,this.node.up,0),this._forward.normalize(),this._forward.negative(),gn.transformQuat(this._up,gn.UP,t.node.worldRotation),this._reflect(this._up,this._up,this.node.up,0),this._up.normalize(),Bn.fromViewUp(this._cameraWorldRotation,this._forward,this._up),this.cameraNode.worldRotation=this._cameraWorldRotation,this.camera.update(!0);var i=new cn(this.node.up.x,this.node.up.y,this.node.up.z,-gn.dot(this.node.up,this.node.worldPosition));i.transformMat4(this.camera.matView.clone().invert().transpose()),this.camera.calculateObliqueMat(i)},e._reflect=function(t,e,i,n){var r=gn.clone(i);r.normalize();var s=gn.dot(r,e)-n;return r.multiplyScalar(2*s),gn.subtract(t,e,r),t},n(t,[{key:"probeType",get:function(){return this._probeType},set:function(t){this._probeType=t}},{key:"resolution",get:function(){return this._resolution},set:function(t){t!==this._resolution&&this.bakedCubeTextures.forEach((function(e){e.resize(t,t)})),this._resolution=t}},{key:"clearFlag",get:function(){return this._clearFlag},set:function(t){this._clearFlag=t,this.camera.clearFlag=this._clearFlag}},{key:"backgroundColor",get:function(){return this._backgroundColor},set:function(t){this._backgroundColor=t,this.camera.clearColor=this._backgroundColor}},{key:"visibility",get:function(){return this._visibility},set:function(t){this._visibility=t,this._camera.visibility=this._visibility}},{key:"size",get:function(){return this._size},set:function(t){this._size.set(t);var e=this.node.getWorldPosition();Ra.set(this._boundingBox,e.x,e.y,e.z,this._size.x,this._size.y,this._size.z)}},{key:"cubemap",get:function(){return this._cubemap},set:function(t){this._cubemap=t}},{key:"node",get:function(){return this._node}},{key:"camera",get:function(){return this._camera}},{key:"needRefresh",get:function(){return this._needRefresh},set:function(t){this._needRefresh=t}},{key:"needRender",get:function(){return this._needRender},set:function(t){this._needRender=t}},{key:"boundingBox",get:function(){return this._boundingBox}},{key:"cameraNode",get:function(){return this._cameraNode},set:function(t){this._cameraNode=t}},{key:"previewSphere",get:function(){return this._previewSphere},set:function(t){this._previewSphere=t}},{key:"previewPlane",get:function(){return this._previewPlane},set:function(t){this._previewPlane=t}}]),t}();t("aq",pR),function(t){t[t.NONE=0]="NONE",t[t.BAKED_CUBEMAP=1]="BAKED_CUBEMAP",t[t.PLANAR_REFLECTION=2]="PLANAR_REFLECTION",t[t.BLEND_PROBES=3]="BLEND_PROBES",t[t.BLEND_PROBES_AND_SKYBOX=4]="BLEND_PROBES_AND_SKYBOX"}(pR||t("aq",pR={}));var vR,yR=new Vn,SR=[{name:"CC_RECEIVE_SHADOW",value:!0}],TR=[{name:"CC_USE_LIGHTMAP",value:1}],AR=[{name:"CC_USE_LIGHTMAP",value:2}],bR=[{name:"CC_LIGHT_MAP_VERSION",value:2}],ER=[{name:"CC_USE_LIGHT_PROBE",value:!0}];!function(t){t[t.DEFAULT=0]="DEFAULT",t[t.SKINNING=1]="SKINNING",t[t.BAKED_SKINNING=2]="BAKED_SKINNING",t[t.BATCH_2D=3]="BATCH_2D",t[t.PARTICLE_BATCH=4]="PARTICLE_BATCH",t[t.LINE=5]="LINE"}(vR||(vR={}));var CR,xR=new c_(dc.LINEAR,dc.LINEAR,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP),wR=new c_(dc.LINEAR,dc.LINEAR,dc.LINEAR,pc.CLAMP,pc.CLAMP,pc.CLAMP),RR=function(){function t(){this.type=vR.DEFAULT,this.scene=null,this.isDynamicBatching=!1,this._worldBounds=null,this._modelBounds=null,this._subModels=[],this._node=null,this._transform=null,this._inited=!1,this._descriptorSetCount=1,this._updateStamp=-1,this._localDataUpdated=!0,this._localData=new Float32Array(ev.COUNT),this._localBuffer=null,this._localSHData=null,this._localSHBuffer=null,this._lightmap=null,this._lightmapUVParam=new cn,this._tetrahedronIndex=-1,this._lastWorldBoundCenter=new gn(1/0,1/0,1/0),this._useLightProbe=!1,this._worldBoundBuffer=null,this._receiveShadow=!1,this._castShadow=!1,this._receiveDirLight=!0,this._shadowBias=0,this._shadowNormalBias=0,this._reflectionProbeId=-1,this._reflectionProbeBlendId=-1,this._reflectionProbeBlendWeight=0,this._enabled=!0,this._visFlags=dm.Enum.NONE,this._priority=0,this._bakeToReflectionProbe=!0,this._reflectionProbeType=pR.NONE,this._device=Ff.gfxDevice}var e=t.prototype;return e.initialize=function(){this._inited||(this._receiveShadow=!0,this.castShadow=!1,this.enabled=!0,this.visFlags=dm.Enum.NONE,this._inited=!0,this._bakeToReflectionProbe=!0,this._reflectionProbeType=pR.NONE)},e.destroy=function(){for(var t=this._subModels,e=0;e<t.length;e++)this._subModels[e].destroy();this._localBuffer&&(this._localBuffer.destroy(),this._localBuffer=null),this._localSHBuffer&&(this._localSHBuffer.destroy(),this._localSHBuffer=null),this._worldBoundBuffer&&(this._worldBoundBuffer.destroy(),this._worldBoundBuffer=null),this._worldBounds=null,this._modelBounds=null,this._subModels.length=0,this._inited=!1,this._localDataUpdated=!0,this._transform=null,this._node=null,this.isDynamicBatching=!1},e.attachToScene=function(t){this.scene=t,this._localDataUpdated=!0},e.detachFromScene=function(){this.scene=null},e.updateTransform=function(){var t=this.transform;if(t.hasChangedFlags||t.isTransformDirty()){t.updateWorldTransform(),this._localDataUpdated=!0;var e=this._worldBounds;this._modelBounds&&e&&this._modelBounds.transform(t._mat,t._pos,t._rot,t._scale,e)}},e.updateWorldBound=function(){var t=this.transform;if(null!==t){t.updateWorldTransform(),this._localDataUpdated=!0;var e=this._worldBounds;this._modelBounds&&e&&this._modelBounds.transform(t._mat,t._pos,t._rot,t._scale,e)}},e.updateUBOs=function(t){for(var e=this._subModels,i=0;i<e.length;i++)e[i].update();this._updateStamp=t,this.updateSHUBOs();var n=this.node.scene.globals.shadows.enabled&&this.node.scene.globals.shadows.type===WT.Planar;if(this._localDataUpdated){this._localDataUpdated=!1;for(var r=this.transform._mat,s=!1,a=0;a<e.length;a++){var o=e[a],h=o.instancedWorldMatrixIndex;h>=0?o.updateInstancedWorldMatrix(r,h):s=!0}(s||n)&&this._localBuffer&&(Vn.toArray(this._localData,r,ev.MAT_WORLD_OFFSET),Vn.invert(yR,r),Vn.transpose(yR,yR),Vn.toArray(this._localData,yR,ev.MAT_WORLD_IT_OFFSET),this._localBuffer.update(this._localData))}},e.invalidateLocalData=function(){this._localDataUpdated=!0},e.showTetrahedron=function(){return this.isLightProbeAvailable()},e.isLightProbeAvailable=function(){if(!this._useLightProbe)return!1;var t=S.director.root.pipeline.pipelineSceneData.lightProbes;return!(!t||t.empty()||!this._worldBounds)},e.updateSHBuffer=function(){if(this._localSHData){for(var t=this._subModels,e=!1,i=0;i<t.length;i++){var n=t[i],r=n.instancedSHIndex;r>=0?n.updateInstancedSH(this._localSHData,r):e=!0}e&&this._localSHBuffer&&this._localSHBuffer.update(this._localSHData)}},e.clearSHUBOs=function(){if(this._localSHData){for(var t=0;t<pv.COUNT;t++)this._localSHData[t]=0;this.updateSHBuffer()}},e.updateSHUBOs=function(){if(this.isLightProbeAvailable()){var t=this._worldBounds.center;if(!t.equals(this._lastWorldBoundCenter,Oi)){var e=[],i=new cn(0,0,0,0),n=S.director.root.pipeline.pipelineSceneData.lightProbes;this._lastWorldBoundCenter.set(t),this._tetrahedronIndex=n.data.getInterpolationWeights(t,this._tetrahedronIndex,i),n.data.getInterpolationSHCoefficients(this._tetrahedronIndex,i,e)&&this._localSHData&&(S.internal.SH.reduceRinging(e,n.reduceRinging),S.internal.SH.updateUBOData(this._localSHData,pv.SH_LINEAR_CONST_R_OFFSET,e),this.updateSHBuffer())}}},e.createBoundingShape=function(t,e){t&&e&&(this._modelBounds||(this._modelBounds=Ra.create()),this._worldBounds||(this._worldBounds=Ra.create()),Ra.fromPoints(this._modelBounds,t,e),this._worldBounds.copy(this._modelBounds))},e._createSubModel=function(){return new oR},e.initSubModel=function(t,e,i){this.initialize(),null==this._subModels[t]?this._subModels[t]=this._createSubModel():this._subModels[t].destroy(),this._subModels[t].initialize(e,i.passes,this.getMacroPatches(t)),this._updateAttributesAndBinding(t)},e.setSubModelMesh=function(t,e){this._subModels[t]&&(this._subModels[t].subMesh=e)},e.setSubModelMaterial=function(t,e){this._subModels[t]&&(this._subModels[t].passes=e.passes,this._updateAttributesAndBinding(t))},e.onGlobalPipelineStateChanged=function(){for(var t=this._subModels,e=0;e<t.length;e++)t[e].onPipelineStateChanged()},e.onMacroPatchesStateChanged=function(){for(var t=this._subModels,e=0;e<t.length;e++)t[e].onMacroPatchesStateChanged(this.getMacroPatches(e))},e.onGeometryChanged=function(){for(var t=this._subModels,e=0;e<t.length;e++)t[e].onGeometryChanged()},e.initLightingmap=function(t,e){this._lightmap=t,this._lightmapUVParam=e},e.updateLightingmap=function(t,e){cn.toArray(this._localData,e,ev.LIGHTINGMAP_UVPARAM),this._localDataUpdated=!0,this._lightmap=t,this._lightmapUVParam=e,this.onMacroPatchesStateChanged(),t||(t=bT.get("empty-texture"));var i=t.getGFXTexture();if(i)for(var n=this._device.getSampler(t.mipmaps.length>1?wR:xR),r=this._subModels,s=0;s<r.length;s++){var a=r[s].descriptorSet;a.bindTexture(Bv,i),a.bindSampler(Bv,n),a.update()}},e.updateReflectionProbeCubemap=function(t){this._localDataUpdated=!0,this.onMacroPatchesStateChanged(),t||(t=bT.get("default-cube-texture"));var e=t.getGFXTexture();if(e)for(var i=this._device.getSampler(t.getSamplerInfo()),n=this._subModels,r=0;r<n.length;r++){var s=n[r].descriptorSet;s&&(s.bindSampler(Hv,i),s.bindTexture(Hv,e),s.update())}},e.updateReflectionProbeBlendCubemap=function(t){this._localDataUpdated=!0,this.onMacroPatchesStateChanged(),t||(t=bT.get("default-cube-texture"));var e=t.getGFXTexture();if(e)for(var i=this._device.getSampler(t.getSamplerInfo()),n=this._subModels,r=0;r<n.length;r++){var s=n[r].descriptorSet;s&&(s.bindSampler(Jv,i),s.bindTexture(Jv,e),s.update())}},e.updateReflectionProbePlanarMap=function(t){this._localDataUpdated=!0,this.onMacroPatchesStateChanged();var e=this._device.getSampler(new c_(dc.LINEAR,dc.LINEAR,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP));if(t||(t=bT.get("empty-texture").getGFXTexture()),t)for(var i=this._subModels,n=0;n<i.length;n++){var r=i[n].descriptorSet;r&&(r.bindTexture(jv,t),r.bindSampler(jv,e),r.update())}},e.updateReflectionProbeDataMap=function(t){this._localDataUpdated=!0,this.onMacroPatchesStateChanged(),t||(t=bT.get("empty-texture"));var e=t.getGFXTexture();if(e)for(var i=this._subModels,n=0;n<i.length;n++){var r=i[n].descriptorSet;r&&(r.bindTexture(Kv,e),r.bindSampler(Kv,t.getGFXSampler()),r.update())}},e.updateLocalShadowBias=function(){var t=this._localData;t[ev.LOCAL_SHADOW_BIAS+0]=this._shadowBias,t[ev.LOCAL_SHADOW_BIAS+1]=this._shadowNormalBias,this._localDataUpdated=!0},e.updateReflectionProbeId=function(){var t=this._localData;t[ev.LOCAL_SHADOW_BIAS+2]=this._reflectionProbeId,t[ev.LOCAL_SHADOW_BIAS+3]=this._reflectionProbeBlendId;var e=null,i=null;if(S.internal.reflectionProbeManager&&(e=S.internal.reflectionProbeManager.getProbeById(this._reflectionProbeId),i=S.internal.reflectionProbeManager.getProbeById(this._reflectionProbeBlendId)),e){if(e.probeType===cR.PLANAR)t[ev.REFLECTION_PROBE_DATA1]=e.node.up.x,t[ev.REFLECTION_PROBE_DATA1+1]=e.node.up.y,t[ev.REFLECTION_PROBE_DATA1+2]=e.node.up.z,t[ev.REFLECTION_PROBE_DATA1+3]=1,t[ev.REFLECTION_PROBE_DATA2]=1,t[ev.REFLECTION_PROBE_DATA2+1]=0,t[ev.REFLECTION_PROBE_DATA2+2]=0,t[ev.REFLECTION_PROBE_DATA2+3]=1;else{t[ev.REFLECTION_PROBE_DATA1]=e.node.worldPosition.x,t[ev.REFLECTION_PROBE_DATA1+1]=e.node.worldPosition.y,t[ev.REFLECTION_PROBE_DATA1+2]=e.node.worldPosition.z,t[ev.REFLECTION_PROBE_DATA1+3]=0,t[ev.REFLECTION_PROBE_DATA2]=e.size.x,t[ev.REFLECTION_PROBE_DATA2+1]=e.size.y,t[ev.REFLECTION_PROBE_DATA2+2]=e.size.z;var n=e.isRGBE()?1e3:0;t[ev.REFLECTION_PROBE_DATA2+3]=e.cubemap?e.cubemap.mipmapLevel+n:1+n}if(this._reflectionProbeType===pR.BLEND_PROBES||this._reflectionProbeType===pR.BLEND_PROBES_AND_SKYBOX)if(i){t[ev.REFLECTION_PROBE_BLEND_DATA1]=i.node.worldPosition.x,t[ev.REFLECTION_PROBE_BLEND_DATA1+1]=i.node.worldPosition.y,t[ev.REFLECTION_PROBE_BLEND_DATA1+2]=i.node.worldPosition.z,t[ev.REFLECTION_PROBE_BLEND_DATA1+3]=this.reflectionProbeBlendWeight,t[ev.REFLECTION_PROBE_BLEND_DATA2]=i.size.x,t[ev.REFLECTION_PROBE_BLEND_DATA2+1]=i.size.y,t[ev.REFLECTION_PROBE_BLEND_DATA2+2]=i.size.z;var r=i.isRGBE()?1e3:0;t[ev.REFLECTION_PROBE_BLEND_DATA2+3]=i.cubemap?i.cubemap.mipmapLevel+r:1+r}else this._reflectionProbeType===pR.BLEND_PROBES_AND_SKYBOX&&(t[ev.REFLECTION_PROBE_BLEND_DATA1+3]=this.reflectionProbeBlendWeight)}this._localDataUpdated=!0},e.getMacroPatches=function(){var t=this.receiveShadow?SR:null;if(null!=this._lightmap&&this.node&&this.node.scene&&!this.node.scene.globals.disableLightmap){var e=this.node.scene.globals.bakedWithStationaryMainLight?AR:TR;t=t?t.concat(e):e,this.node.scene.globals.bakedWithHighpLightmap&&(t=t.concat(bR))}this._useLightProbe&&(t=t?t.concat(ER):ER);var i=[{name:"CC_USE_REFLECTION_PROBE",value:this._reflectionProbeType}];t=t?t.concat(i):i;var n=[{name:"CC_DISABLE_DIRECTIONAL_LIGHT",value:!this._receiveDirLight}];return t?t.concat(n):n},e._updateAttributesAndBinding=function(t){var e=this._subModels[t];if(e){this._initLocalDescriptors(t),this._updateLocalDescriptors(t,e.descriptorSet),this._initLocalSHDescriptors(t),this._updateLocalSHDescriptors(t,e.descriptorSet),this._initWorldBoundDescriptors(t),e.worldBoundDescriptorSet&&this._updateWorldBoundDescriptors(t,e.worldBoundDescriptorSet);for(var i,n=[],r=new Set,s=f(e.passes);!(i=s()).done;)for(var a,o=f(i.value.getShaderVariant(e.patches).attributes);!(a=o()).done;){var h=a.value;r.has(h.name)||(n.push(h),r.add(h.name))}this._updateInstancedAttributes(n,e)}},e._updateInstancedAttributes=function(t,e){e.UpdateInstancedAttributes(t),this._localDataUpdated=!0},e._initLocalDescriptors=function(){this._localBuffer||(this._localBuffer=this._device.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.DEVICE,ev.SIZE,ev.SIZE)))},e._initLocalSHDescriptors=function(){this._useLightProbe&&(this._localSHData||(this._localSHData=new Float32Array(pv.COUNT)),this._localSHBuffer||(this._localSHBuffer=this._device.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.DEVICE,pv.SIZE,pv.SIZE))))},e._initWorldBoundDescriptors=function(){this._worldBoundBuffer||(this._worldBoundBuffer=this._device.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.DEVICE,iv.SIZE,iv.SIZE)))},e._updateLocalDescriptors=function(t,e){this._localBuffer&&e.bindBuffer(ev.BINDING,this._localBuffer)},e._updateLocalSHDescriptors=function(t,e){this._localSHBuffer&&e.bindBuffer(pv.BINDING,this._localSHBuffer)},e._updateWorldBoundDescriptors=function(t,e){this._worldBoundBuffer&&e.bindBuffer(iv.BINDING,this._worldBoundBuffer)},n(t,[{key:"subModels",get:function(){return this._subModels}},{key:"inited",get:function(){return this._inited}},{key:"worldBounds",get:function(){return this._worldBounds}},{key:"modelBounds",get:function(){return this._modelBounds}},{key:"localBuffer",get:function(){return this._localBuffer}},{key:"localSHBuffer",get:function(){return this._localSHBuffer}},{key:"worldBoundBuffer",get:function(){return this._worldBoundBuffer}},{key:"updateStamp",get:function(){return this._updateStamp}},{key:"useLightProbe",get:function(){return this._useLightProbe},set:function(t){this._useLightProbe=t,this.onMacroPatchesStateChanged()}},{key:"tetrahedronIndex",get:function(){return this._tetrahedronIndex},set:function(t){this._tetrahedronIndex=t}},{key:"shadowBias",get:function(){return this._shadowBias},set:function(t){this._shadowBias=t}},{key:"shadowNormalBias",get:function(){return this._shadowNormalBias},set:function(t){this._shadowNormalBias=t}},{key:"receiveShadow",get:function(){return this._receiveShadow},set:function(t){this._receiveShadow=t,this.onMacroPatchesStateChanged()}},{key:"castShadow",get:function(){return this._castShadow},set:function(t){this._castShadow=t}},{key:"receiveDirLight",get:function(){return this._receiveDirLight},set:function(t){this._receiveDirLight=t,this.onMacroPatchesStateChanged()}},{key:"node",get:function(){return this._node},set:function(t){this._node=t}},{key:"transform",get:function(){return this._transform},set:function(t){this._transform=t}},{key:"visFlags",get:function(){return this._visFlags},set:function(t){this._visFlags=t}},{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t}},{key:"priority",get:function(){return this._priority},set:function(t){this._priority=t}},{key:"bakeToReflectionProbe",get:function(){return this._bakeToReflectionProbe},set:function(t){this._bakeToReflectionProbe=t}},{key:"reflectionProbeType",get:function(){return this._reflectionProbeType},set:function(t){this._reflectionProbeType=t;for(var e=this._subModels,i=0;i<e.length;i++)e[i].useReflectionProbeType=t;this.onMacroPatchesStateChanged()}},{key:"reflectionProbeId",get:function(){return this._reflectionProbeId},set:function(t){this._reflectionProbeId=t}},{key:"reflectionProbeBlendId",get:function(){return this._reflectionProbeBlendId},set:function(t){this._reflectionProbeBlendId=t}},{key:"reflectionProbeBlendWeight",get:function(){return this._reflectionProbeBlendWeight},set:function(t){this._reflectionProbeBlendWeight=t}}]),t}(),IR=function(){function t(){this._enabled=!1,this._minPos=new gn(0,0,0),this._maxPos=new gn(0,0,0),this._depth=0}return t.prototype.initialize=function(t){this._enabled=t.enabled,this._minPos=t.minPos,this._maxPos=t.maxPos,this._depth=t.depth},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t}},{key:"minPos",get:function(){return this._minPos},set:function(t){this._minPos=t}},{key:"maxPos",get:function(){return this._maxPos},set:function(t){this._maxPos=t}},{key:"depth",get:function(){return this._depth},set:function(t){this._depth=t}}]),t}(),DR=function(){function t(){this._enabled=!0,this._blurRadius=.01,this._sssIntensity=3}return t.prototype.initialize=function(t){this._enabled=t.enabled,this._blurRadius=t.blurRadius,this._sssIntensity=t.sssIntensity},n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t}},{key:"blurRadius",get:function(){return this._blurRadius},set:function(t){this._blurRadius=t}},{key:"sssIntensity",get:function(){return this._sssIntensity},set:function(t){this._sssIntensity=t}}]),t}();function BR(t,e){e<1e3?e=1e3:e>15e3&&(e=15e3);var i=e*e,n=(.860117757+.000154118254*e+1.28641212e-7*i)/(1+.000842420235*e+7.08145163e-7*i),r=(.317398726+422806245e-13*e+4.20481691e-8*i)/(1-289741816e-13*e+1.61456053e-7*i),s=2*n-8*r+4,a=3*n/s,o=2*r/s,h=1/o*a,u=1/o*(1-a-o);t.x=3.2404542*h-1.5371385+-.4985314*u,t.y=-.969266*h+1.8760108+.041556*u,t.z=.0556434*h-.2040259+1.0572252*u}!function(t){t[t.DIRECTIONAL=0]="DIRECTIONAL",t[t.SPHERE=1]="SPHERE",t[t.SPOT=2]="SPOT",t[t.POINT=3]="POINT",t[t.RANGED_DIRECTIONAL=4]="RANGED_DIRECTIONAL",t[t.UNKNOWN=5]="UNKNOWN"}(CR||(CR={}));var MR,PR,OR=function(t){return 4*Math.PI*Math.PI*t*t},LR=function(){function t(){this._baked=!1,this._color=new gn(1,1,1),this._colorTemp=6550,this._colorTempRGB=new gn(1,1,1),this._finalColor=new gn(1,1,1),this._scene=null,this._node=null,this._name=null,this._useColorTemperature=!1,this._type=CR.UNKNOWN,this._visibility=sy}var e=t.prototype;return e.initialize=function(){this.color=new gn(1,1,1),this.colorTemperature=6550},e.attachToScene=function(t){this._scene=t},e.detachFromScene=function(){this._scene=null},e.destroy=function(){this._name=null,this._node=null},e.update=function(){},n(t,[{key:"baked",get:function(){return this._baked},set:function(t){this._baked=t}},{key:"color",get:function(){return this._color},set:function(t){this._color.set(t),this._useColorTemperature&&gn.multiply(this._finalColor,this._color,this._colorTempRGB)}},{key:"useColorTemperature",get:function(){return this._useColorTemperature},set:function(t){this._useColorTemperature=t,t&&gn.multiply(this._finalColor,this._color,this._colorTempRGB)}},{key:"colorTemperature",get:function(){return this._colorTemp},set:function(t){this._colorTemp=t,BR(this._colorTempRGB,this._colorTemp),this._useColorTemperature&&gn.multiply(this._finalColor,this._color,this._colorTempRGB)}},{key:"colorTemperatureRGB",get:function(){return this._colorTempRGB}},{key:"finalColor",get:function(){return this._finalColor}},{key:"visibility",get:function(){return this._visibility},set:function(t){this._visibility=t}},{key:"node",get:function(){return this._node},set:function(t){this._node=t,this._node&&(this._node.hasChangedFlags|=mm.ROTATION)}},{key:"type",get:function(){return this._type}},{key:"name",get:function(){return this._name},set:function(t){this._name=t}},{key:"scene",get:function(){return this._scene}}]),t}(),NR=new gn(0,0,-1),FR=new gn,kR=function(t){function e(){var e;return(e=t.call(this)||this)._dir=new gn(1,-1,-1),e._illuminanceHDR=wg.SUN_ILLUM,e._illuminanceLDR=1,e._shadowEnabled=!1,e._shadowPcf=XT.HARD,e._shadowBias=1e-5,e._shadowNormalBias=0,e._shadowSaturation=1,e._shadowDistance=50,e._shadowInvisibleOcclusionRange=200,e._csmLevel=jT.LEVEL_4,e._csmNeedUpdate=!1,e._csmLayerLambda=.75,e._csmOptimizationMode=YT.DisableRotationFix,e._csmLayersTransition=!1,e._csmTransitionRange=.05,e._shadowFixedArea=!1,e._shadowNear=.1,e._shadowFar=10,e._shadowOrthoSize=5,e._type=CR.DIRECTIONAL,e}s(e,t);var i=e.prototype;return i.initialize=function(){t.prototype.initialize.call(this),this.illuminance=wg.SUN_ILLUM,this.direction=new gn(1,-1,-1)},i.update=function(){this._node&&this._node.hasChangedFlags&&(this.direction=gn.transformQuat(FR,NR,this._node.worldRotation))},i.activate=function(){var t=S.director.root,e=t.pipeline;this._shadowEnabled?(this._shadowFixedArea||!e.pipelineSceneData.csmSupported?e.macros.CC_DIR_LIGHT_SHADOW_TYPE=1:this.csmLevel>1&&e.pipelineSceneData.csmSupported?(e.macros.CC_DIR_LIGHT_SHADOW_TYPE=2,e.macros.CC_CASCADED_LAYERS_TRANSITION=this._csmLayersTransition):e.macros.CC_DIR_LIGHT_SHADOW_TYPE=1,e.macros.CC_DIR_SHADOW_PCF_TYPE=this._shadowPcf):e.macros.CC_DIR_LIGHT_SHADOW_TYPE=0,t.onGlobalPipelineStateChanged()},n(e,[{key:"direction",get:function(){return this._dir},set:function(t){gn.normalize(this._dir,t)}},{key:"illuminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._illuminanceHDR:this._illuminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this.illuminanceHDR=t:this.illuminanceLDR=t}},{key:"illuminanceHDR",get:function(){return this._illuminanceHDR},set:function(t){this._illuminanceHDR=t}},{key:"illuminanceLDR",get:function(){return this._illuminanceLDR},set:function(t){this._illuminanceLDR=t}},{key:"shadowEnabled",get:function(){return this._shadowEnabled},set:function(t){this._shadowEnabled=t,this.activate()}},{key:"shadowPcf",get:function(){return this._shadowPcf},set:function(t){this._shadowPcf=t,this.activate()}},{key:"shadowBias",get:function(){return this._shadowBias},set:function(t){this._shadowBias=t}},{key:"shadowNormalBias",get:function(){return this._shadowNormalBias},set:function(t){this._shadowNormalBias=t}},{key:"shadowSaturation",get:function(){return this._shadowSaturation},set:function(t){this._shadowSaturation=t}},{key:"shadowDistance",get:function(){return this._shadowDistance},set:function(t){this._shadowDistance=Math.min(t,KT.MAX_FAR)}},{key:"shadowInvisibleOcclusionRange",get:function(){return this._shadowInvisibleOcclusionRange},set:function(t){this._shadowInvisibleOcclusionRange=Math.min(t,KT.MAX_FAR)}},{key:"csmLevel",get:function(){return this._csmLevel},set:function(t){this._csmLevel=t,this.activate()}},{key:"csmNeedUpdate",get:function(){return this._csmNeedUpdate},set:function(t){this._csmNeedUpdate=t}},{key:"csmLayerLambda",get:function(){return this._csmLayerLambda},set:function(t){this._csmLayerLambda=t}},{key:"csmOptimizationMode",get:function(){return this._csmOptimizationMode},set:function(t){this._csmOptimizationMode=t}},{key:"shadowFixedArea",get:function(){return this._shadowFixedArea},set:function(t){this._shadowFixedArea=t,this.activate()}},{key:"shadowNear",get:function(){return this._shadowNear},set:function(t){this._shadowNear=t}},{key:"shadowFar",get:function(){return this._shadowFar},set:function(t){this._shadowFar=Math.min(t,KT.MAX_FAR)}},{key:"shadowOrthoSize",get:function(){return this._shadowOrthoSize},set:function(t){this._shadowOrthoSize=t}},{key:"csmLayersTransition",get:function(){return this._csmLayersTransition},set:function(t){this._csmLayersTransition=t,this.activate()}},{key:"csmTransitionRange",get:function(){return this._csmTransitionRange},set:function(t){this._csmTransitionRange=t}}]),e}(LR),GR=function(t){function e(){var e;return(e=t.call(this)||this)._needUpdate=!1,e._size=.15,e._range=1,e._luminanceHDR=0,e._luminanceLDR=0,e._pos=new gn,e._aabb=Ra.create(),e._type=CR.SPHERE,e}s(e,t);var i=e.prototype;return i.initialize=function(){t.prototype.initialize.call(this),this.size=.15,this.range=1,this.luminanceHDR=1700/OR(.15),this.luminanceLDR=1},i.update=function(){if(this._node&&(this._node.hasChangedFlags||this._needUpdate)){this._node.getWorldPosition(this._pos);var t=this._range;Ra.set(this._aabb,this._pos.x,this._pos.y,this._pos.z,t,t,t),this._needUpdate=!1}},n(e,[{key:"position",get:function(){return this._pos}},{key:"size",get:function(){return this._size},set:function(t){this._size=t}},{key:"range",get:function(){return this._range},set:function(t){this._range=t,this._needUpdate=!0}},{key:"luminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR:this._luminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this.luminanceHDR=t:this.luminanceLDR=t}},{key:"luminanceHDR",get:function(){return this._luminanceHDR},set:function(t){this._luminanceHDR=t}},{key:"luminanceLDR",set:function(t){this._luminanceLDR=t}},{key:"aabb",get:function(){return this._aabb}}]),e}(LR),VR=new gn(0,0,-1),UR=new Bn,zR=new Vn,HR=new Vn,WR=new Vn,XR=new Vn,jR=function(t){function e(){var e;return(e=t.call(this)||this)._dir=new gn(1,-1,-1),e._range=5,e._spotAngle=Math.cos(Math.PI/6),e._angleAttenuationStrength=0,e._pos=new gn,e._aabb=Ra.create(),e._frustum=La.create(),e._angle=0,e._needUpdate=!1,e._size=.15,e._luminanceHDR=0,e._luminanceLDR=0,e._shadowEnabled=!1,e._shadowPcf=XT.HARD,e._shadowBias=1e-5,e._shadowNormalBias=0,e._type=CR.SPOT,e}s(e,t);var i=e.prototype;return i.initialize=function(){t.prototype.initialize.call(this),this.size=.15,this.luminanceHDR=1700/OR(.15),this.luminanceLDR=1,this.range=Math.cos(Math.PI/6),this._dir.set(new gn(1,-1,-1))},i.update=function(){this._node&&(this._node.hasChangedFlags||this._needUpdate)&&(this._node.getWorldPosition(this._pos),gn.transformQuat(this._dir,VR,this._node.getWorldRotation(UR)),gn.normalize(this._dir,this._dir),Ra.set(this._aabb,this._pos.x,this._pos.y,this._pos.z,this._range,this._range,this._range),this._node.getWorldRT(zR),Vn.invert(zR,zR),Vn.perspective(HR,this._angle,1,.001,this._range),Vn.multiply(WR,HR,zR),this._frustum.update(WR,XR),this._needUpdate=!1)},n(e,[{key:"position",get:function(){return this._pos}},{key:"size",get:function(){return this._size},set:function(t){this._size=t}},{key:"range",get:function(){return this._range},set:function(t){this._range=t,this._needUpdate=!0}},{key:"luminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR:this._luminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this.luminanceHDR=t:this.luminanceLDR=t}},{key:"luminanceHDR",get:function(){return this._luminanceHDR},set:function(t){this._luminanceHDR=t}},{key:"luminanceLDR",get:function(){return this._luminanceLDR},set:function(t){this._luminanceLDR=t}},{key:"direction",get:function(){return this._dir}},{key:"spotAngle",get:function(){return this._spotAngle},set:function(t){this._angle=t,this._spotAngle=Math.cos(.5*t),this._needUpdate=!0}},{key:"angleAttenuationStrength",get:function(){return this._angleAttenuationStrength},set:function(t){this._angleAttenuationStrength=t,this._needUpdate=!0}},{key:"angle",get:function(){return this._angle}},{key:"aabb",get:function(){return this._aabb}},{key:"frustum",get:function(){return this._frustum}},{key:"shadowEnabled",get:function(){return this._shadowEnabled},set:function(t){this._shadowEnabled=t}},{key:"shadowPcf",get:function(){return this._shadowPcf},set:function(t){this._shadowPcf=t}},{key:"shadowBias",get:function(){return this._shadowBias},set:function(t){this._shadowBias=t}},{key:"shadowNormalBias",get:function(){return this._shadowNormalBias},set:function(t){this._shadowNormalBias=t}}]),e}(LR),YR=function(t){function e(){var e;return(e=t.call(this)||this)._needUpdate=!1,e._range=1,e._luminanceHDR=0,e._luminanceLDR=0,e._pos=new gn,e._aabb=Ra.create(),e._type=CR.POINT,e}s(e,t);var i=e.prototype;return i.initialize=function(){t.prototype.initialize.call(this),this.range=1,this.luminanceHDR=1700/OR(1),this.luminanceLDR=1},i.update=function(){if(this._node&&(this._node.hasChangedFlags||this._needUpdate)){this._node.getWorldPosition(this._pos);var t=this._range;Ra.set(this._aabb,this._pos.x,this._pos.y,this._pos.z,t,t,t),this._needUpdate=!1}},n(e,[{key:"position",get:function(){return this._pos}},{key:"range",get:function(){return this._range},set:function(t){this._range=t,this._needUpdate=!0}},{key:"luminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR:this._luminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this.luminanceHDR=t:this.luminanceLDR=t}},{key:"luminanceHDR",get:function(){return this._luminanceHDR},set:function(t){this._luminanceHDR=t}},{key:"luminanceLDR",set:function(t){this._luminanceLDR=t}},{key:"aabb",get:function(){return this._aabb}}]),e}(LR),qR=new gn(0,0,-1),KR=function(t){function e(){var e;return(e=t.call(this)||this)._dir=new gn(0,0,-1),e._pos=new gn(0,0,0),e._scale=new gn(1,1,1),e._right=new gn(1,0,0),e._illuminanceHDR=wg.SUN_ILLUM,e._illuminanceLDR=1,e._type=CR.RANGED_DIRECTIONAL,e}s(e,t);var i=e.prototype;return i.initialize=function(){t.prototype.initialize.call(this),this.illuminance=wg.SUN_ILLUM},i.update=function(){this._node&&this._node.hasChangedFlags&&(this._node.getWorldPosition(this._pos),this._node.getWorldScale(this._scale),gn.transformQuat(this._dir,qR,this._node.worldRotation),gn.transformQuat(this._right,gn.RIGHT,this._node.worldRotation))},n(e,[{key:"direction",get:function(){return this._dir}},{key:"right",get:function(){return this._right}},{key:"position",get:function(){return this._pos}},{key:"scale",get:function(){return this._scale}},{key:"illuminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._illuminanceHDR:this._illuminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?this.illuminanceHDR=t:this.illuminanceLDR=t}},{key:"illuminanceHDR",get:function(){return this._illuminanceHDR},set:function(t){this._illuminanceHDR=t}},{key:"illuminanceLDR",get:function(){return this._illuminanceLDR},set:function(t){this._illuminanceLDR=t}}]),e}(LR),QR=function(){function t(){this.screenUsagePercentage=1,this._models=[]}var e=t.prototype;return e.addModel=function(t){this._models.splice(0,0,t)},e.eraseModel=function(t){var e=this._models.indexOf(t);e>=0&&this._models.splice(e,1)},e.clearModels=function(){this._models.length=0},n(t,[{key:"models",get:function(){return this._models}}]),t}(),ZR=function(){function t(){this.scene=void 0,this.node=null,this.enabled=!0,this._localBoundaryCenter=new gn(0,0,0),this._objectSize=1,this._lodDataArray=[],this._lockedLODLevelVec=[],this._isLockLevelChanged=!1,this._device=Ff.gfxDevice}var e=t.prototype;return e.attachToScene=function(t){this.scene=t},e.detachFromScene=function(){this.scene=null},e.lockLODLevels=function(t){if(t.length!==this._lockedLODLevelVec.length)this._isLockLevelChanged=!0;else for(var e=t.length,i=0;i<e;i++)if(t[i]!==this._lockedLODLevelVec[i]){this._isLockLevelChanged=!0;break}this._lockedLODLevelVec=t.slice()},e.isLockLevelChanged=function(){return this._isLockLevelChanged},e.resetLockChangeFlag=function(){this._isLockLevelChanged=!1},e.getLockedLODLevels=function(){return this._lockedLODLevelVec},e.clearLODs=function(){this._lodDataArray.length=0},e.insertLOD=function(t,e){this._lodDataArray.splice(t,0,e)},e.updateLOD=function(t,e){this._lodDataArray[t]=e},e.eraseLOD=function(t){this._lodDataArray.splice(t,1)},e.getVisibleLODLevel=function(t){for(var e=this.getScreenUsagePercentage(t),i=-1,n=0;n<this.lodCount;++n)if(e>=this.lodDataArray[n].screenUsagePercentage){i=n;break}return i},e.getScreenUsagePercentage=function(t){return this.node?(t.projectionType===zw.PERSPECTIVE&&(e=gn.len(this.localBoundaryCenter.transformMat4(this.node.worldMatrix).subtract(t.node.worldPosition))),this.distanceToScreenUsagePercentage(t,e,this.getWorldSpaceSize())):0;var e},e.distanceToScreenUsagePercentage=function(t,e,i){return t.projectionType===zw.PERSPECTIVE?i*t.matProj.m05/(2*e):i*t.matProj.m05*.5},e.getWorldSpaceSize=function(){var t=this.node.scale;return Math.max(Math.abs(t.x),Math.abs(t.y),Math.abs(t.z))*this.objectSize},n(t,[{key:"localBoundaryCenter",get:function(){return this._localBoundaryCenter.clone()},set:function(t){this._localBoundaryCenter.set(t)}},{key:"lodCount",get:function(){return this._lodDataArray.length}},{key:"objectSize",get:function(){return this._objectSize},set:function(t){this._objectSize=t}},{key:"lodDataArray",get:function(){return this._lodDataArray}}]),t}(),JR=Object.freeze({__proto__:null,get CameraFOVAxis(){return Uw},get CameraProjection(){return zw},get CameraAperture(){return Hw},get CameraISO(){return Ww},get CameraShutter(){return Xw},get CameraType(){return jw},get TrackingType(){return Yw},get CameraUsage(){return qw},SKYBOX_FLAG:nR,Camera:sR,get ModelType(){return vR},Model:RR,SubModel:oR,Ambient:wg,EnvironmentLightingType:tA,Skybox:eA,ShadowSize:HT,ShadowType:WT,PCFType:XT,CSMLevel:jT,CSMOptimizationMode:YT,Shadows:KT,FogType:nA,FOG_TYPE_NONE:rA,Fog:sA,Octree:IR,Skin:DR,ColorTemperatureToRGB:BR,get LightType(){return CR},nt2lm:OR,Light:LR,DirectionalLight:kR,SphereLight:GR,SpotLight:jR,PointLight:YR,RangedDirectionalLight:KR,get ProbeClearFlag(){return lR},get ProbeType(){return cR},ReflectionProbe:gR,LODData:QR,LODGroup:ZR,ToneMappingType:RE,PostSettings:IE}),$R=function(){function t(t){this._name="",this._cameras=[],this._models=[],this._lodGroups=[],this._batches=[],this._directionalLights=[],this._sphereLights=[],this._spotLights=[],this._pointLights=[],this._rangedDirLights=[],this._mainLight=null,this._modelId=0,this._lodStateCache=null,this._root=t}t.registerCreateFunc=function(e){e._createSceneFun=function(e){return new t(e)}};var e=t.prototype;return e.initialize=function(t){return this._name=t.name,this._lodStateCache=new eI(this),!0},e.update=function(t){var e=this._mainLight;e&&e.update();for(var i=this._sphereLights,n=0;n<i.length;n++)i[n].update();for(var r=this._spotLights,s=0;s<r.length;s++)r[s].update();for(var a=this._pointLights,o=0;o<a.length;o++)a[o].update();for(var h=this._rangedDirLights,u=0;u<h.length;u++)h[u].update();for(var l=this._models,c=0;c<l.length;c++){var _=l[c];_.enabled&&(_.updateTransform(t),_.updateUBOs(t))}this._lodStateCache.updateLodState()},e.destroy=function(){this.removeCameras(),this.removeSphereLights(),this.removeSpotLights(),this.removeRangedDirLights(),this.removeModels(),this.removeLODGroups(),this._lodStateCache.clearCache()},e.isCulledByLod=function(t,e){return this._lodStateCache.isLodModelCulled(t,e)},e.addCamera=function(t){t.attachToScene(this),this._cameras.push(t),this._lodStateCache.addCamera(t)},e.removeCamera=function(t){for(var e=0;e<this._cameras.length;++e)if(this._cameras[e]===t)return this._cameras.splice(e,1),t.detachFromScene(),void this._lodStateCache.removeCamera(t)},e.removeCameras=function(){for(var t,e=f(this._cameras);!(t=e()).done;){var i=t.value;i.detachFromScene(),this._lodStateCache.removeCamera(i)}this._cameras.splice(0)},e.setMainLight=function(t){this._mainLight=t,this._mainLight&&this._mainLight.activate()},e.unsetMainLight=function(t){if(this._mainLight===t){var e=this._directionalLights;if(e.length)return this.setMainLight(e[e.length-1]),void(this._mainLight.node&&(this._mainLight.node.hasChangedFlags|=mm.ROTATION));this.setMainLight(null)}},e.addDirectionalLight=function(t){t.attachToScene(this),this._directionalLights.push(t)},e.removeDirectionalLight=function(t){for(var e=0;e<this._directionalLights.length;++e)if(this._directionalLights[e]===t)return t.detachFromScene(),void this._directionalLights.splice(e,1)},e.addSphereLight=function(t){t.attachToScene(this),this._sphereLights.push(t)},e.removeSphereLight=function(t){for(var e=0;e<this._sphereLights.length;++e)if(this._sphereLights[e]===t)return t.detachFromScene(),void this._sphereLights.splice(e,1)},e.addSpotLight=function(t){t.attachToScene(this),this._spotLights.push(t)},e.removeSpotLight=function(t){for(var e=0;e<this._spotLights.length;++e)if(this._spotLights[e]===t)return t.detachFromScene(),void this._spotLights.splice(e,1)},e.removeSphereLights=function(){for(var t=0;t<this._sphereLights.length;++t)this._sphereLights[t].detachFromScene();this._sphereLights.length=0},e.removeSpotLights=function(){for(var t=0;t<this._spotLights.length;++t)this._spotLights[t].detachFromScene();this._spotLights.length=0},e.addPointLight=function(t){t.attachToScene(this),this._pointLights.push(t)},e.removePointLight=function(t){for(var e=0;e<this._pointLights.length;++e)if(this._pointLights[e]===t)return t.detachFromScene(),void this._pointLights.splice(e,1)},e.removePointLights=function(){for(var t=0;t<this._pointLights.length;++t)this._pointLights[t].detachFromScene();this._pointLights.length=0},e.addRangedDirLight=function(t){t.attachToScene(this),this._rangedDirLights.push(t)},e.removeRangedDirLight=function(t){for(var e=0;e<this._rangedDirLights.length;++e)if(this._rangedDirLights[e]===t)return t.detachFromScene(),void this._rangedDirLights.splice(e,1)},e.removeRangedDirLights=function(){for(var t=0;t<this._rangedDirLights.length;++t)this._rangedDirLights[t].detachFromScene();this._rangedDirLights.length=0},e.addModel=function(t){t.attachToScene(this),this._models.push(t)},e.removeModel=function(t){for(var e=0;e<this._models.length;++e)if(this._models[e]===t)return this._lodStateCache.removeModel(t),t.detachFromScene(),void this._models.splice(e,1)},e.removeModels=function(){for(var t,e=f(this._models);!(t=e()).done;){var i=t.value;this._lodStateCache.removeModel(i),i.detachFromScene(),i.destroy()}this._models.length=0},e.addBatch=function(t){this._batches.push(t)},e.removeBatch=function(t){for(var e=0;e<this._batches.length;++e)if(this._batches[e]===t)return void this._batches.splice(e,1)},e.removeBatches=function(){this._batches.length=0},e.addLODGroup=function(t){this._lodGroups.push(t),t.attachToScene(this),this._lodStateCache.addLodGroup(t)},e.removeLODGroup=function(t){var e=this._lodGroups.indexOf(t);e>=0&&(this._lodGroups.splice(e,1),t.detachFromScene(),this._lodStateCache.removeLodGroup(t))},e.removeLODGroups=function(){for(var t,e=f(this._lodGroups);!(t=e()).done;){var i=t.value;this._lodStateCache.removeLodGroup(i)}this._lodGroups.length=0},e.onGlobalPipelineStateChanged=function(){for(var t,e=f(this._models);!(t=e()).done;)t.value.onGlobalPipelineStateChanged()},e.generateModelId=function(){return this._modelId++},n(t,[{key:"root",get:function(){return this._root}},{key:"name",get:function(){return this._name}},{key:"cameras",get:function(){return this._cameras}},{key:"mainLight",get:function(){return this._mainLight}},{key:"sphereLights",get:function(){return this._sphereLights}},{key:"spotLights",get:function(){return this._spotLights}},{key:"pointLights",get:function(){return this._pointLights}},{key:"rangedDirLights",get:function(){return this._rangedDirLights}},{key:"models",get:function(){return this._models}},{key:"batches",get:function(){return this._batches}},{key:"lodGroups",get:function(){return this._lodGroups}}]),t}(),tI=function(){this.usedLevel=-1,this.lastUsedLevel=-1,this.transformDirty=!0},eI=function(){function t(t){this._renderScene=null,this._modelsInLODGroup=new Map,this._lodStateInCamera=new Map,this._newAddedLodGroupVec=new Array,this._levelModels=new Map,this._renderScene=t}var e=t.prototype;return e.addCamera=function(t){for(var e,i=f(this._renderScene.lodGroups);!(e=i()).done;){var n=e.value.node.layer;if((t.visibility&n)===n){this._lodStateInCamera.has(t)||this._lodStateInCamera.set(t,new Map);break}}},e.removeCamera=function(t){this._lodStateInCamera.has(t)&&this._lodStateInCamera.delete(t)},e.addLodGroup=function(t){this._newAddedLodGroupVec.push(t);for(var e,i=f(this._renderScene.cameras);!(e=i()).done;){var n=e.value;if(!this._lodStateInCamera.has(n)){var r=t.node.layer;(n.visibility&r)===r&&this._lodStateInCamera.set(n,new Map)}}},e.removeLodGroup=function(t){for(var e=0;e<t.lodCount;e++)for(var i,n=f(t.lodDataArray[e].models);!(i=n()).done;){var r=i.value;this._modelsInLODGroup.delete(r)}for(var s,a=f(this._lodStateInCamera);!(s=a()).done;)s.value[1].delete(t);this._levelModels.delete(t)},e.removeModel=function(t){this._modelsInLODGroup.has(t)&&this._modelsInLODGroup.delete(t)},e.updateLodState=function(){for(var t,e=this,i=f(this._newAddedLodGroupVec);!(t=i()).done;){var n=t.value,r=this._levelModels.get(n);r||(r=new Map,this._levelModels.set(n,r));for(var s=0;s<n.lodCount;s++){var a=r.get(s);a||(a=new Array);for(var o,h=f(n.lodDataArray[s].models);!(o=h()).done;){var u=o.value,l=this._modelsInLODGroup.get(u);l||(l=new Map),this._modelsInLODGroup.set(u,l),a.push(u)}r.set(s,a)}}this._newAddedLodGroupVec.length=0;for(var c,_=function(){var t=c.value;if(t.enabled){var i=t.getLockedLODLevels();if(i.length>0){if(t.node.hasChangedFlags>0)for(var n,r=f(e._lodStateInCamera);!(n=r()).done;){var s=n.value,a=s[1].get(t);a||(a=new tI,s[1].set(t,a)),a.transformDirty=!0}if(t.isLockLevelChanged()){t.resetLockChangeFlag();var o=e._levelModels.get(t);if(o){o.forEach((function(t){t.forEach((function(t){var i=e._modelsInLODGroup.get(t);i&&i.clear()}))}));for(var h,u=f(i);!(h=u()).done;){var l=h.value,_=o.get(l);_&&_.forEach((function(t){var i=e._modelsInLODGroup.get(t);if(i&&t.node&&t.node.active)for(var n,r=f(e._lodStateInCamera);!(n=r()).done;){var s=n.value;i.set(s[0],!0)}}))}}}return 0}for(var d,p=!1,m=f(e._lodStateInCamera);!(d=m()).done;){var g=d.value,v=g[1].get(t);v||(v=new tI,g[1].set(t,v));var y=g[0].node.hasChangedFlags,S=t.node.hasChangedFlags;if(y>0||S>0||v.transformDirty){v.transformDirty&&(v.transformDirty=!1);var T=t.getVisibleLODLevel(g[0]);T!==v.usedLevel&&(v.lastUsedLevel=v.usedLevel,v.usedLevel=T,p=!0)}}var A=e._levelModels.get(t);if(!A)return 0;t.isLockLevelChanged()?(t.resetLockChangeFlag(),A.forEach((function(t){t.forEach((function(t){var i=e._modelsInLODGroup.get(t);i&&i.clear()}))})),p=!0):p&&e._lodStateInCamera.forEach((function(i){var n=i.get(t);if(n&&n.usedLevel!==n.lastUsedLevel){var r=A.get(n.lastUsedLevel);r&&r.forEach((function(t){var i=e._modelsInLODGroup.get(t);i&&i.clear()}))}})),p&&e._lodStateInCamera.forEach((function(i,n){var r=i.get(t);if(r){var s=r.usedLevel,a=A.get(s);a&&a.forEach((function(t){var i=e._modelsInLODGroup.get(t);i&&t.node&&t.node.active&&i.set(n,!0)}))}}))}},d=f(this._renderScene.lodGroups);!(c=d()).done;)_()},e.isLodModelCulled=function(t,e){var i=this._modelsInLODGroup.get(e);return!!i&&!i.has(t)},e.clearCache=function(){this._levelModels.clear(),this._modelsInLODGroup.clear(),this._lodStateInCamera.clear(),this._newAddedLodGroupVec.length=0},e.isLodGroupVisibleByCamera=function(t,e){var i=t.node.layer;return(e.visibility&i)===i},t}(),iI=((MR={})[Be.PORTRAIT]=$l.IDENTITY,MR[Be.LANDSCAPE_RIGHT]=$l.ROTATE_90,MR[Be.PORTRAIT_UPSIDE_DOWN]=$l.ROTATE_180,MR[Be.LANDSCAPE_LEFT]=$l.ROTATE_270,MR),nI=0,rI=function(){var t=e.prototype;function e(){this._title="",this._width=1,this._height=1,this._swapchain=null,this._renderPass=null,this._colorTextures=[],this._depthStencilTexture=null,this._cameras=[],this._hasOnScreenAttachments=!1,this._hasOffScreenAttachments=!1,this._framebuffer=null,this._device=null,this._renderWindowId=nI++,this._isResized=!0,this._colorName="Color"+this._renderWindowId,this._depthStencilName="DepthStencil"+this._renderWindowId}return t.isRenderWindowResized=function(){return this._isResized},t.setRenderWindowResizeHandled=function(){this._isResized=!1},e.registerCreateFunc=function(t){t._createWindowFun=function(){return new e}},t.initialize=function(t,e){if(void 0!==e.title&&(this._title=e.title),void 0!==e.swapchain&&(this._swapchain=e.swapchain),this._width=e.width,this._height=e.height,this._device=t,this._renderPass=t.createRenderPass(e.renderPassInfo),e.swapchain)this._swapchain=e.swapchain,this._colorTextures.push(e.swapchain.colorTexture),this._depthStencilTexture=e.swapchain.depthStencilTexture;else{for(var i=0;i<e.renderPassInfo.colorAttachments.length;i++){var n=new u_(hc.TEX2D,uc.COLOR_ATTACHMENT|uc.SAMPLED|uc.TRANSFER_SRC,e.renderPassInfo.colorAttachments[i].format,this._width,this._height);e.externalFlag&&(e.externalFlag&lc.EXTERNAL_NORMAL||e.externalFlag&lc.EXTERNAL_OES)&&(n.flags|=e.externalFlag,n.externalRes=e.externalResLow?e.externalResLow:0),this._colorTextures.push(t.createTexture(n))}e.renderPassInfo.depthStencilAttachment&&e.renderPassInfo.depthStencilAttachment.format!==ec.UNKNOWN&&(this._depthStencilTexture=t.createTexture(new u_(hc.TEX2D,uc.DEPTH_STENCIL_ATTACHMENT|uc.SAMPLED,e.renderPassInfo.depthStencilAttachment.format,this._width,this._height)),this._hasOffScreenAttachments=!0)}return this._framebuffer=t.createFramebuffer(new M_(this._renderPass,this._colorTextures,this._depthStencilTexture)),!0},t.destroy=function(){this.clearCameras(),this._framebuffer&&(this._framebuffer.destroy(),this._framebuffer=null),this._depthStencilTexture&&(this._depthStencilTexture.destroy(),this._depthStencilTexture=null);for(var t=0;t<this._colorTextures.length;t++){var e=this._colorTextures[t];e&&e.destroy()}this._colorTextures.length=0,this._device=null},t.resize=function(t,e){if(this._swapchain)this._swapchain.resize(t,e,iI[ga.orientation]),this._width=this._swapchain.width,this._height=this._swapchain.height;else{for(var i=0;i<this._colorTextures.length;i++)this._colorTextures[i].resize(t,e);this._depthStencilTexture&&this._depthStencilTexture.resize(t,e),this._width=t,this._height=e}this.framebuffer&&(this.framebuffer.destroy(),this._framebuffer=this._device.createFramebuffer(new M_(this._renderPass,this._colorTextures,this._depthStencilTexture)));for(var n,r=f(this._cameras);!(n=r()).done;)n.value.resize(t,e);this._isResized=!0},t.extractRenderCameras=function(t){for(var e=0;e<this._cameras.length;e++){var i=this._cameras[e];i.enabled&&(i.update(),t.push(i))}},t.attachCamera=function(t){for(var e=0;e<this._cameras.length;e++)if(this._cameras[e]===t)return;this._cameras.push(t),this.sortCameras(),this._isResized=!0},t.detachCamera=function(t){for(var e=0;e<this._cameras.length;++e)if(this._cameras[e]===t)return void this._cameras.splice(e,1)},t.clearCameras=function(){this._cameras.length=0},t.sortCameras=function(){this._cameras.sort((function(t,e){return t.priority-e.priority}))},n(e,[{key:"width",get:function(){return this._width}},{key:"height",get:function(){return this._height}},{key:"swapchain",get:function(){return this._swapchain}},{key:"framebuffer",get:function(){return this._framebuffer}},{key:"cameras",get:function(){return this._cameras}},{key:"renderWindowId",get:function(){return this._renderWindowId}},{key:"colorName",get:function(){return this._colorName}},{key:"depthStencilName",get:function(){return this._depthStencilName}}]),e}();t("dh",PR),function(t){t.RENDER_FRAME_BEGIN="render-frame-begin",t.RENDER_FRAME_END="render-frame-end",t.RENDER_CAMERA_BEGIN="render-camera-begin",t.RENDER_CAMERA_END="render-camera-end",t.ATTACHMENT_SCALE_CAHNGED="attachment-scale-changed"}(PR||t("dh",PR={}));var sI,aI,oI,hI=t("dg",function(t){function e(){var e;return(e=t.call(this)||this).eventTargetOn=t.prototype.on,e.eventTargetOnce=t.prototype.once,e}s(e,t);var i=e.prototype;return i.on=function(t,e,i,n){return this.eventTargetOn(t,e,i,n)},i.once=function(t,e,i){return this.eventTargetOnce(t,e,i)},e}(Hs));!function(t){t[t.NONE=-1]="NONE",t[t.LEFT=0]="LEFT",t[t.RIGHT=1]="RIGHT"}(sI||(sI={})),function(t){t[t.SESSION_RUNNING=2]="SESSION_RUNNING",t[t.VIEW_COUNT=6]="VIEW_COUNT",t[t.SWAPCHAIN_WIDTH=7]="SWAPCHAIN_WIDTH",t[t.SWAPCHAIN_HEIGHT=8]="SWAPCHAIN_HEIGHT",t[t.DEVICE_IPD=37]="DEVICE_IPD",t[t.SPLIT_AR_GLASSES=42]="SPLIT_AR_GLASSES"}(aI||(aI={})),function(t){t[t.VIEW_LEFT=0]="VIEW_LEFT",t[t.HAND_LEFT=1]="HAND_LEFT",t[t.AIM_LEFT=2]="AIM_LEFT",t[t.VIEW_RIGHT=3]="VIEW_RIGHT",t[t.HAND_RIGHT=4]="HAND_RIGHT",t[t.AIM_RIGHT=5]="AIM_RIGHT",t[t.HEAD_MIDDLE=6]="HEAD_MIDDLE"}(oI||(oI={}));var uI=t("aI",function(){function t(t){var e=this;this._createSceneFun=null,this._createWindowFun=null,this._windows=[],this._mainWindow=null,this._curWindow=null,this._tempWindow=null,this._usesCustomPipeline=!0,this._pipeline=null,this._pipelineEvent=new hI,this._classicPipeline=null,this._customPipeline=null,this._batcher=null,this._scenes=[],this._modelPools=new Map,this._cameraPool=null,this._lightPools=new Map,this._debugView=new Kw,this._fpsTime=0,this._frameCount=0,this._fps=0,this._fixedFPS=0,this._useDeferredPipeline=!1,this._fixedFPSFrameTime=0,this._cumulativeTime=0,this._frameTime=0,this._cameraList=[],this._device=t,this._dataPoolMgr=S.internal.DataPoolManager&&new S.internal.DataPoolManager(t),$R.registerCreateFunc(this),rI.registerCreateFunc(this),this._cameraPool=new ws((function(){return new sR(e._device)}),4,(function(t){return t.destroy()}))}var e=t.prototype;return e.initialize=function(){var t,e=Ff.swapchain,i=new E_;i.format=e.colorTexture.format;var n=new C_;n.format=e.depthStencilTexture.format,n.depthStoreOp=bc.DISCARD,n.stencilStoreOp=bc.DISCARD;var r=new R_([i],n);this._mainWindow=this.createWindow({title:"rootMainWindow",width:e.width,height:e.height,renderPassInfo:r,swapchain:e}),this._curWindow=this._mainWindow;var s=Me.querySettings(De.Category.ANIMATION,"customJointTextureLayouts")||[];null===(t=this._dataPoolMgr)||void 0===t||t.jointTexturePool.registerCustomTextureLayouts(s),this._resizeMaxJointForDS()},e.destroy=function(){this.destroyScenes(),this._pipeline&&(this._pipeline.destroy(),this._pipeline=null,this._pipelineEvent=null),this._batcher&&(this._batcher.destroy(),this._batcher=null),this._curWindow=null,this._mainWindow=null,this.dataPoolManager.clear(),S.rendering&&S.rendering.destroy()},e.resize=function(t,e){for(var i,n=f(this._windows);!(i=n()).done;){var r=i.value;r.swapchain&&r.resize(t,e)}},e.setRenderPipeline=function(t){var e=S.internal,i=S.director,n=S.rendering,r=S.legacy_rendering;if(void 0===n&&void 0===r)return it(1223),!1;var s=!1;if(t)this._customPipeline=n.createCustomPipeline(),s=!0,this._pipeline=this._customPipeline,U("Using custom pipeline: "+Pe.CUSTOM_PIPELINE_NAME);else{var a=r.createDefaultPipeline();s=!0,U("Using legacy pipeline"),this._classicPipeline=a,this._pipeline=this._classicPipeline,this._pipelineEvent=this._classicPipeline,this._usesCustomPipeline=!1}if((Me.querySettings(De.Category.RENDERING,"renderMode")!==Bf.HEADLESS||this._classicPipeline)&&!this._pipeline.activate(this._mainWindow.swapchain))return s&&this._pipeline.destroy(),this._classicPipeline=null,this._customPipeline=null,this._pipeline=null,this._pipelineEvent=null,!1;var o=i.getScene();return o&&o.globals.activate(),this.onGlobalPipelineStateChanged(),!(!this._batcher&&e.Batcher2D&&(this._batcher=new e.Batcher2D(this),!this._batcher.initialize())&&(this.destroy(),1))},e.onGlobalPipelineStateChanged=function(){for(var t=0;t<this._scenes.length;t++)this._scenes[t].onGlobalPipelineStateChanged();this._pipeline.pipelineSceneData.skybox.enabled&&this._pipeline.pipelineSceneData.skybox.model.onGlobalPipelineStateChanged(),this._pipeline.onGlobalPipelineStateChanged()},e.activeWindow=function(t){this._curWindow=t},e.resetCumulativeTime=function(){this._cumulativeTime=0},e.frameMove=function(t){var e;this._frameTime=t,++this._frameCount,this._cumulativeTime+=t,this._fpsTime+=t,this._fpsTime>1&&(this._fps=this._frameCount,this._frameCount=0,this._fpsTime=0),null!==(e=globalThis.__globalXR)&&void 0!==e&&e.isWebXR?this._doWebXRFrameMove():(this._frameMoveBegin(),this._frameMoveProcess(),this._frameMoveEnd())},e.createWindow=function(t){var e=this._createWindowFun(this);return e.initialize(this.device,t),this._windows.push(e),e},e.destroyWindow=function(t){for(var e=0;e<this._windows.length;++e)if(this._windows[e]===t)return t.destroy(),void this._windows.splice(e,1)},e.destroyWindows=function(){for(var t,e=f(this._windows);!(t=e()).done;)t.value.destroy();this._windows.length=0},e.createScene=function(t){var e=this._createSceneFun(this);return e.initialize(t),this._scenes.push(e),e},e.destroyScene=function(t){for(var e=0;e<this._scenes.length;++e)if(this._scenes[e]===t)return t.destroy(),void this._scenes.splice(e,1)},e.destroyScenes=function(){for(var t,e=f(this._scenes);!(t=e()).done;)t.value.destroy();this._scenes.length=0},e.createModel=function(t){var e=this._modelPools.get(t);e||(this._modelPools.set(t,new ws((function(){return new t}),10,(function(t){return t.destroy()}))),e=this._modelPools.get(t));var i=e.alloc();return i.initialize(),i},e.destroyModel=function(t){var e=this._modelPools.get(t.constructor);e?(e.free(t),t.scene&&t.scene.removeModel(t)):tt(1300,t.constructor.name),t.destroy()},e.createCamera=function(){return this._cameraPool.alloc()},e.createLight=function(t){var e=this._lightPools.get(t);e||(this._lightPools.set(t,new ws((function(){return new t}),4,(function(t){return t.destroy()}))),e=this._lightPools.get(t));var i=e.alloc();return i.initialize(),i},e.destroyLight=function(t){if(t.scene)switch(t.type){case CR.DIRECTIONAL:t.scene.removeDirectionalLight(t);break;case CR.SPHERE:t.scene.removeSphereLight(t);break;case CR.SPOT:t.scene.removeSpotLight(t);break;case CR.POINT:t.scene.removePointLight(t);break;case CR.RANGED_DIRECTIONAL:t.scene.removeRangedDirLight(t)}t.destroy()},e.recycleLight=function(t){var e=this._lightPools.get(t.constructor);if(e&&(e.free(t),t.scene))switch(t.type){case CR.DIRECTIONAL:t.scene.removeDirectionalLight(t);break;case CR.SPHERE:t.scene.removeSphereLight(t);break;case CR.SPOT:t.scene.removeSpotLight(t);break;case CR.POINT:t.scene.removePointLight(t);break;case CR.RANGED_DIRECTIONAL:t.scene.removeRangedDirLight(t)}},e._doWebXRFrameMove=function(){var t=globalThis.__globalXR;if(t){var e=this._windows,i=this._cameraList,n=t.webXRMatProjs?t.webXRMatProjs.length:1;t.webXRWindowMap||(t.webXRWindowMap=new Map);for(var r=[],s=t.webxrHmdPoseInfos,a=0;a<n;a++){for(var o,h=f(e);!(o=h()).done;){var u=o.value;r=r.concat(u.cameras),u.swapchain&&t.webXRWindowMap.set(u,a)}if(s){for(var l=[0,0,0],c=0;c<s.length;c++){var _=s[c];if(_.code===oI.VIEW_LEFT&&a===sI.LEFT||_.code===oI.VIEW_RIGHT&&a===sI.RIGHT){l[0]=_.position.x,l[1]=_.position.y,l[2]=_.position.z;break}}for(var d,p=f(r);!(d=p()).done;){var m=d.value;m.trackingType!==Yw.NO_TRACKING&&m.node&&(m.trackingType===Yw.ROTATION&&(l=[0,0,0]),m.node.setPosition(l[0],l[1],l[2]))}}r.length=0,this._frameMoveBegin(),this._frameMoveProcess();for(var g=i.length-1;g>=0;g--){var v=i[g];(a===sI.LEFT&&v.cameraType===jw.RIGHT_EYE||a===sI.RIGHT&&v.cameraType===jw.LEFT_EYE)&&i.splice(g,1)}this._frameMoveEnd()}}},e._frameMoveBegin=function(){for(var t=0;t<this._scenes.length;++t)this._scenes[t].removeBatches();this._cameraList.length=0},e._frameMoveProcess=function(){for(var t=S.director,e=this._windows,i=this._cameraList,n=0;n<e.length;n++)e[n].extractRenderCameras(i);if(this._pipeline&&i.length>0){this._device.acquire([Ff.swapchain]);var r=this._scenes,s=t.getTotalFrames();this._batcher&&(this._batcher.update(),this._batcher.uploadBuffers());for(var a=0;a<r.length;a++)r[a].update(s)}},e._frameMoveEnd=function(){var t=S.director,e=S.Director,i=this._cameraList;if(this._pipeline&&i.length>0){t.emit(e.EVENT_BEFORE_COMMIT),i.sort((function(t,e){return t.priority-e.priority}));for(var n=0;n<i.length;++n){var r;null===(r=i[n].geometryRenderer)||void 0===r||r.update()}t.emit(e.EVENT_BEFORE_RENDER),this._pipeline.render(i),t.emit(e.EVENT_AFTER_RENDER),this._device.present()}this._batcher&&this._batcher.reset()},e._resizeMaxJointForDS=function(){var t=Math.max((Gg.COUNT+Vg.COUNT+Ug.COUNT+ev.COUNT+iv.COUNT)/4,100),e=Math.floor((Ff.gfxDevice.capabilities.maxVertexUniformVectors-t)/3);_v(e=e<256?e:256)},n(t,[{key:"device",get:function(){return this._device}},{key:"mainWindow",get:function(){return this._mainWindow}},{key:"curWindow",get:function(){return this._curWindow},set:function(t){this._curWindow=t}},{key:"tempWindow",get:function(){return this._tempWindow},set:function(t){this._tempWindow=t}},{key:"windows",get:function(){return this._windows}},{key:"usesCustomPipeline",get:function(){return this._usesCustomPipeline}},{key:"pipeline",get:function(){return this._pipeline}},{key:"customPipeline",get:function(){return this._customPipeline}},{key:"pipelineEvent",get:function(){return this._pipelineEvent}},{key:"batcher2D",get:function(){return this._batcher}},{key:"scenes",get:function(){return this._scenes}},{key:"debugView",get:function(){return this._debugView}},{key:"cumulativeTime",get:function(){return this._cumulativeTime}},{key:"frameTime",get:function(){return this._frameTime}},{key:"frameCount",get:function(){return this._frameCount}},{key:"fps",get:function(){return this._fps}},{key:"fixedFPS",get:function(){return this._fixedFPS},set:function(t){t>0?(this._fixedFPS=t,this._fixedFPSFrameTime=1e3/t):this._fixedFPSFrameTime=0}},{key:"dataPoolManager",get:function(){return this._dataPoolMgr}},{key:"useDeferredPipeline",get:function(){return this._useDeferredPipeline}},{key:"cameraList",get:function(){return this._cameraList}}]),t}());S.Root=uI,Ci.Attr.setClassAttr(fp,"target","type","Object"),Ci.Attr.setClassAttr(fp,"target","ctor",hg);var lI,cI=new ws((function(){return new Array(16)}),3),_I=null,fI=new jn,dI=[vm.TOUCH_START,vm.TOUCH_MOVE,vm.TOUCH_END,vm.TOUCH_CANCEL],pI=[vm.MOUSE_DOWN,vm.MOUSE_ENTER,vm.MOUSE_MOVE,vm.MOUSE_LEAVE,vm.MOUSE_UP,vm.MOUSE_WHEEL];!function(t){t[t.ADD_POINTER_EVENT_PROCESSOR=0]="ADD_POINTER_EVENT_PROCESSOR",t[t.REMOVE_POINTER_EVENT_PROCESSOR=1]="REMOVE_POINTER_EVENT_PROCESSOR",t[t.MARK_LIST_DIRTY=2]="MARK_LIST_DIRTY"}(lI||(lI={}));var mI,gI=function(){function t(t){this.claimedTouchIdList=[],this.maskList=null,this.cachedCameraPriority=0,this.previousMouseIn=!1,this.bubblingTarget=null,this.capturingTarget=null,this.shouldHandleEventMouse=!1,this.shouldHandleEventTouch=!1,this._dispatchingTouch=null,this._isEnabled=!1,this._isMouseLeaveWindow=!1,this._node=t}var e=t.prototype;return e.setEnabled=function(e,i){if(void 0===i&&(i=!1),this._isEnabled!==e){this._isEnabled=e;var n=this.node.children;if(e&&this._attachMask(),t.callbacksInvoker.emit(lI.MARK_LIST_DIRTY),i&&n.length>0)for(var r=0;r<n.length;++r)n[r].eventProcessor.setEnabled(e,!0)}},e.reattach=function(){var e,i=this;this.node.walk((function(n){e||(e=i._searchComponentsInParent(t._maskComp)),n.eventProcessor.maskList=e}))},e.destroy=function(){if(_I===this._node&&(_I=null),this.capturingTarget&&this.capturingTarget.clear(),this.bubblingTarget&&this.bubblingTarget.clear(),t.callbacksInvoker.emit(lI.REMOVE_POINTER_EVENT_PROCESSOR,this),this._dispatchingTouch){var e=new Wx([this._dispatchingTouch],!0,kx.TOUCH_CANCEL);e.touch=this._dispatchingTouch,this.dispatchEvent(e),this._dispatchingTouch=null}},e.on=function(t,e,i,n){var r,s;return this._tryEmittingAddEvent(t),((n=!!n)?null!==(r=this.capturingTarget)&&void 0!==r?r:this.capturingTarget=this._newCallbacksInvoker():null!==(s=this.bubblingTarget)&&void 0!==s?s:this.bubblingTarget=this._newCallbacksInvoker()).on(t,e,i),e},e.once=function(t,e,i,n){var r,s;return this._tryEmittingAddEvent(t),((n=!!n)?null!==(r=this.capturingTarget)&&void 0!==r?r:this.capturingTarget=this._newCallbacksInvoker():null!==(s=this.bubblingTarget)&&void 0!==s?s:this.bubblingTarget=this._newCallbacksInvoker()).on(t,e,i,!0),e},e.off=function(t,e,i,n){var r;null===(r=(n=!!n)?this.capturingTarget:this.bubblingTarget)||void 0===r||r.off(t,e,i)},e.targetOff=function(e){var i,n;null===(i=this.capturingTarget)||void 0===i||i.removeAll(e),null===(n=this.bubblingTarget)||void 0===n||n.removeAll(e),this.shouldHandleEventTouch&&!this._hasTouchListeners()&&(this.shouldHandleEventTouch=!1),this.shouldHandleEventMouse&&!this._hasMouseListeners()&&(this.shouldHandleEventMouse=!1),this._hasPointerListeners()||t.callbacksInvoker.emit(lI.REMOVE_POINTER_EVENT_PROCESSOR,this)},e.emit=function(t,e,i,n,r,s){var a;null===(a=this.bubblingTarget)||void 0===a||a.emit(t,e,i,n,r,s)},e.dispatchEvent=function(t){var e,i=this.node,n=0;t.target=i;var r=cI.alloc();for(r.length=0,this.getCapturingTargets(t.type,r),t.eventPhase=1,n=r.length-1;n>=0;--n)if((e=r[n]).eventProcessor.capturingTarget&&(t.currentTarget=e,e.eventProcessor.capturingTarget.emit(t.type,t,r),t.propagationStopped))return void cI.free(r);if(t.eventPhase=2,t.currentTarget=i,this.capturingTarget&&this.capturingTarget.emit(t.type,t),!t.propagationImmediateStopped&&this.bubblingTarget&&this.bubblingTarget.emit(t.type,t),!t.propagationStopped&&t.bubbles)for(r.length=0,this.getBubblingTargets(t.type,r),t.eventPhase=3,n=0;n<r.length;++n)if((e=r[n]).eventProcessor.bubblingTarget&&(t.currentTarget=e,e.eventProcessor.bubblingTarget.emit(t.type,t),t.propagationStopped))return void cI.free(r);cI.free(r)},e.hasEventListener=function(t,e,i){var n=!1;return this.bubblingTarget&&(n=this.bubblingTarget.hasEventListener(t,e,i)),!n&&this.capturingTarget&&(n=this.capturingTarget.hasEventListener(t,e,i)),n},e.getCapturingTargets=function(t,e){for(var i=this._node.parent;i;){var n;null!==(n=i.eventProcessor.capturingTarget)&&void 0!==n&&n.hasEventListener(t)&&e.push(i),i=i.parent}},e.getBubblingTargets=function(t,e){for(var i=this._node.parent;i;){var n;null!==(n=i.eventProcessor.bubblingTarget)&&void 0!==n&&n.hasEventListener(t)&&e.push(i),i=i.parent}},e.onUpdatingSiblingIndex=function(){t.callbacksInvoker.emit(lI.MARK_LIST_DIRTY)},e._searchComponentsInParent=function(t){var e=this.node;if(t){for(var i=0,n=[],r=e;r&&hg.isNode(r);r=r.parent,++i){var s=r.getComponent(t);if(s){var a={index:i,comp:s};n?n.push(a):n=[a]}}return n.length>0?n:null}return null},e._attachMask=function(){this.maskList=this._searchComponentsInParent(t._maskComp)},e._isTouchEvent=function(t){return-1!==dI.indexOf(t)},e._isMouseEvent=function(t){return-1!==pI.indexOf(t)},e._hasTouchListeners=function(){for(var t=0;t<dI.length;++t){var e=dI[t];if(this.hasEventListener(e))return!0}return!1},e._hasMouseListeners=function(){for(var t=0;t<pI.length;++t){var e=pI[t];if(this.hasEventListener(e))return!0}return!1},e._hasPointerListeners=function(){return!!this._hasTouchListeners()||this._hasMouseListeners()},e._tryEmittingAddEvent=function(e){var i=this._isTouchEvent(e),n=this._isMouseEvent(e);i?this.shouldHandleEventTouch=!0:n&&(this.shouldHandleEventMouse=!0),!i&&!n||this._hasPointerListeners()||t.callbacksInvoker.emit(lI.ADD_POINTER_EVENT_PROCESSOR,this)},e._newCallbacksInvoker=function(){var e=this,i=new Us;return i._registerOffCallback((function(){e.shouldHandleEventTouch&&!e._hasTouchListeners()&&(e.shouldHandleEventTouch=!1),e.shouldHandleEventMouse&&!e._hasMouseListeners()&&(e.shouldHandleEventMouse=!1),e._hasPointerListeners()||t.callbacksInvoker.emit(lI.REMOVE_POINTER_EVENT_PROCESSOR,e)})),i},e._handleEventMouse=function(t){switch(t.type){case kx.MOUSE_DOWN:return this._handleMouseDown(t);case kx.MOUSE_MOVE:return this._handleMouseMove(t);case kx.MOUSE_UP:return this._handleMouseUp(t);case kx.MOUSE_WHEEL:return this._handleMouseWheel(t);case kx.MOUSE_LEAVE:return this._handleMouseLeave(t);case kx.MOUSE_ENTER:return this._handleMouseEnter(t);default:return!1}},e._handleMouseDown=function(t){var e=this._node;return!(!e||!e._uiProps.uiTransformComp||(t.getLocation(fI),!e._uiProps.uiTransformComp.hitTest(fI,t.windowId)||(t.type=vm.MOUSE_DOWN,t.bubbles=!0,e.dispatchEvent(t),t.propagationStopped=!0,0)))},e._handleMouseMove=function(t){var e=this._node;return!(!e||!e._uiProps.uiTransformComp||this._isMouseLeaveWindow||(t.getLocation(fI),e._uiProps.uiTransformComp.hitTest(fI,t.windowId)?(this.previousMouseIn||(_I&&_I!==e&&(t.type=vm.MOUSE_LEAVE,_I.dispatchEvent(t),_I.eventProcessor.previousMouseIn=!1),_I=e,t.type=vm.MOUSE_ENTER,e.dispatchEvent(t),this.previousMouseIn=!0),t.type=vm.MOUSE_MOVE,t.bubbles=!0,e.dispatchEvent(t),t.propagationStopped=!0,0):(this.previousMouseIn&&(t.type=vm.MOUSE_LEAVE,e.dispatchEvent(t),this.previousMouseIn=!1,_I=null),1)))},e._handleMouseUp=function(t){var e=this._node;return!(!e||!e._uiProps.uiTransformComp||(t.getLocation(fI),!e._uiProps.uiTransformComp.hitTest(fI,t.windowId)||(t.type=vm.MOUSE_UP,t.bubbles=!0,e.dispatchEvent(t),t.propagationStopped=!0,0)))},e._handleMouseWheel=function(t){var e=this._node;return!(!e||!e._uiProps.uiTransformComp||(t.getLocation(fI),!e._uiProps.uiTransformComp.hitTest(fI,t.windowId)||(t.type=vm.MOUSE_WHEEL,t.bubbles=!0,e.dispatchEvent(t),t.propagationStopped=!0,0)))},e._handleMouseLeave=function(t){return this._isMouseLeaveWindow=!0,this.previousMouseIn&&(t.type=vm.MOUSE_LEAVE,this._node.dispatchEvent(t),this.previousMouseIn=!1,_I=null),!1},e._handleMouseEnter=function(){return this._isMouseLeaveWindow=!1,!1},e._handleEventTouch=function(t){try{switch(t.type){case kx.TOUCH_START:return this._handleTouchStart(t);case kx.TOUCH_MOVE:return this._handleTouchMove(t);case kx.TOUCH_END:return this._handleTouchEnd(t);case kx.TOUCH_CANCEL:return this._handleTouchCancel(t);default:return!1}}catch(t){throw this.claimedTouchIdList.length=0,t}},e._handleTouchStart=function(t){var e=this.node;return!(!e||!e._uiProps.uiTransformComp||(t.getLocation(fI),!e._uiProps.uiTransformComp.hitTest(fI,t.windowId)||(t.type=vm.TOUCH_START,t.bubbles=!0,this._dispatchingTouch=t.touch,e.dispatchEvent(t),0)))},e._handleTouchMove=function(t){var e=this.node;return!(!e||!e._uiProps.uiTransformComp||(t.type=vm.TOUCH_MOVE,t.bubbles=!0,this._dispatchingTouch=t.touch,e.dispatchEvent(t),0))},e._handleTouchEnd=function(t){var e=this.node;e&&e._uiProps.uiTransformComp&&(t.getLocation(fI),e._uiProps.uiTransformComp.hitTest(fI,t.windowId)?t.type=vm.TOUCH_END:t.type=vm.TOUCH_CANCEL,t.bubbles=!0,e.dispatchEvent(t),this._dispatchingTouch=null)},e._handleTouchCancel=function(t){var e=this.node;e&&e._uiProps.uiTransformComp&&(t.type=vm.TOUCH_CANCEL,t.bubbles=!0,e.dispatchEvent(t),this._dispatchingTouch=null)},n(t,[{key:"isEnabled",get:function(){return this._isEnabled}},{key:"node",get:function(){return this._node}}]),t}();gI._maskComp=null,gI.callbacksInvoker=new Us,S.NodeEventProcessor=gI,ut(hg.prototype,"Node",[{name:"childrenCount",newName:"children.length",customGetter:function(){return this.children.length}}]),ut(hg.prototype,"Node",[{name:"width",targetName:"node.getComponent(UITransform)",customGetter:function(){return this._uiProps.uiTransformComp.width},customSetter:function(t){this._uiProps.uiTransformComp.width=t}},{name:"height",targetName:"node.getComponent(UITransform)",customGetter:function(){return this._uiProps.uiTransformComp.height},customSetter:function(t){this._uiProps.uiTransformComp.height=t}},{name:"anchorX",targetName:"node.getComponent(UITransform)",customGetter:function(){return this._uiProps.uiTransformComp.anchorX},customSetter:function(t){this._uiProps.uiTransformComp.anchorX=t}},{name:"anchorY",targetName:"node.getComponent(UITransform)",customGetter:function(){return this._uiProps.uiTransformComp.anchorY},customSetter:function(t){this._uiProps.uiTransformComp.anchorY=t}},{name:"getAnchorPoint",targetName:"node.getComponent(UITransform)",customFunction:function(t){return t||(t=new jn),t.set(this._uiProps.uiTransformComp.anchorPoint),t}},{name:"setAnchorPoint",targetName:"node.getComponent(UITransform)",customFunction:function(t,e){this._uiProps.uiTransformComp.setAnchorPoint(t,e)}},{name:"getContentSize",targetName:"node.getComponent(UITransform)",customFunction:function(t){return t||(t=new Qn),t.set(this._uiProps.uiTransformComp.contentSize),t}},{name:"setContentSize",targetName:"node.getComponent(UITransform)",customFunction:function(t,e){"number"==typeof t?this._uiProps.uiTransformComp.setContentSize(t,e):this._uiProps.uiTransformComp.setContentSize(t)}}]),lt(hx.prototype,"SceneGlobals.prototype",[{name:"aspect"},{name:"selfShadow"},{name:"linear"},{name:"packing"},{name:"autoAdapt"},{name:"fixedArea"},{name:"pcf"},{name:"bias"},{name:"normalBias"},{name:"near"},{name:"far"},{name:"shadowDistance"},{name:"invisibleOcclusionRange"},{name:"orthoSize"},{name:"saturation"}]),ut(hx.prototype,"SceneGlobals.prototype",[{name:"distance",newName:"planeHeight"},{name:"normal",newName:"planeDirection"},{name:"size",newName:"shadowMapSize"}]),lt(hg.prototype,"Node.prototype",[{name:"addLayer"},{name:"removeLayer"}]),ut(gm.prototype,"NodeUIProperties",[{name:"opacityDirty",newName:"colorDirty"}]),lt(dm,"Layers",[{name:"All"},{name:"RaycastMask"},{name:"check"}]),ut(dm,"Layers",[{name:"Default",newName:"DEFAULT",target:dm.Enum,targetName:"Layers.Enum"},{name:"Always",newName:"ALWAYS",target:dm.Enum,targetName:"Layers.Enum"},{name:"IgnoreRaycast",newName:"IGNORE_RAYCAST",target:dm.Enum,targetName:"Layers.Enum"},{name:"Gizmos",newName:"GIZMOS",target:dm.Enum,targetName:"Layers.Enum"},{name:"Editor",newName:"EDITOR",target:dm.Enum,targetName:"Layers.Enum"},{name:"UI",newName:"UI_3D",target:dm.Enum,targetName:"Layers.Enum"},{name:"UI2D",newName:"UI_2D",target:dm.Enum,targetName:"Layers.Enum"},{name:"SceneGizmo",newName:"SCENE_GIZMO",target:dm.Enum,targetName:"Layers.Enum"},{name:"makeInclusiveMask",newName:"makeMaskInclude",target:dm,targetName:"Layers"},{name:"makeExclusiveMask",newName:"makeMaskExclude",target:dm,targetName:"Layers"}]),lt(dm.Enum,"Layers.Enum",[{name:"ALWAYS"}]),lt(dm.BitMask,"Layers.BitMask",[{name:"ALWAYS"}]);var vI=Ms.Flags.HideInHierarchy,yI=Ms.Flags.DontSave,SI=t("dK",eo("cc.PrivateNode")(mI=function(t){function e(e){var i;return tt(12003,(i=t.call(this,e)||this).name),i.hideFlags|=yI|vI,i}return s(e,t),e}(hg))||mI);function TI(t,e){if(!e){var i=S.director.getScene();if(!i)return null;e=i}return e.getChildByPath(t)}ut(Fx,"SystemEventType",["MOUSE_ENTER","MOUSE_LEAVE","TRANSFORM_CHANGED","SCENE_CHANGED_FOR_PERSISTS","SIZE_CHANGED","ANCHOR_CHANGED","COLOR_CHANGED","CHILD_ADDED","CHILD_REMOVED","PARENT_CHANGED","NODE_DESTROYED","LAYER_CHANGED","SIBLING_ORDER_CHANGED"].map((function(t){return{name:t,target:hg.EventType,targetName:"Node.EventType"}}))),ut(hg.EventType,"Node.EventType",[{name:"DEVICEMOTION",target:Gw.EventType,targetName:"SystemEvent.EventType"},{name:"KEY_DOWN",target:Gw.EventType,targetName:"SystemEvent.EventType"},{name:"KEY_UP",target:Gw.EventType,targetName:"SystemEvent.EventType"}]),S.PrivateNode=SI,Tt({BaseNode:{newName:"Node",since:"3.7.0",removed:!1}}),S.find=TI;var AI=fe,bI=Ms.Flags.IsStartCalled,EI=Ms.Flags.IsOnEnableCalled;function CI(t,e){for(var i=e.constructor._executionOrder,n=e._id,r=0,s=t.length-1,a=s>>>1;r<=s;a=r+s>>>1){var o=t[a],h=o.constructor._executionOrder;if(h>i)s=a-1;else if(h<i)r=a+1;else{var u=o._id;if(u>n)s=a-1;else{if(!(u<n))return a;r=a+1}}}return~r}function xI(t,e){for(var i=t.array,n=t.i+1;n<i.length;){var r=i[n];r.node._activeInHierarchy?++n:(t.removeAt(n),e&&(r._objFlags&=~e))}}Ms.Flags.IsEditorOnEnableCalled;var wI=function(){function t(t){var e=ce;this._zero=new e([]),this._neg=new e([]),this._pos=new e([]),this._invoke=t}return n(t,[{key:"zero",get:function(){return this._zero}},{key:"neg",get:function(){return this._neg}},{key:"pos",get:function(){return this._pos}}]),t}();function RI(t,e){return t.constructor._executionOrder-e.constructor._executionOrder}wI.stableRemoveInactive=xI;var II=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.add=function(t){var e=t.constructor._executionOrder;(0===e?this._zero:e<0?this._neg:this._pos).array.push(t)},i.remove=function(t){var e=t.constructor._executionOrder;(0===e?this._zero:e<0?this._neg:this._pos).fastRemove(t)},i.cancelInactive=function(t){xI(this._zero,t),xI(this._neg,t),xI(this._pos,t)},i.invoke=function(){var t=this._neg;t.array.length>0&&(t.array.sort(RI),this._invoke(t),t.array.length=0),this._invoke(this._zero),this._zero.array.length=0;var e=this._pos;e.array.length>0&&(e.array.sort(RI),this._invoke(e),e.array.length=0)},e}(wI),DI=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.add=function(t){var e=t.constructor._executionOrder;if(0===e)this._zero.array.push(t);else{var i=e<0?this._neg.array:this._pos.array,n=CI(i,t);n<0&&i.splice(~n,0,t)}},i.remove=function(t){var e=t.constructor._executionOrder;if(0===e)this._zero.fastRemove(t);else{var i=e<0?this._neg:this._pos,n=CI(i.array,t);n>=0&&i.removeAt(n)}},i.invoke=function(t){this._neg.array.length>0&&this._invoke(this._neg,t),this._invoke(this._zero,t),this._pos.array.length>0&&this._invoke(this._pos,t)},e}(wI);function BI(t,e,i){var n="var a=it.array;for(it.i=0;it.i<a.length;++it.i){var c=a[it.i];"+t+"}",r=e?Function("it","dt",n):Function("it",n);return function(t,e,i){return function(n,r){try{e(n,r)}catch(e){S._throw(e);var s=n.array;for(i&&(s[n.i]._objFlags|=i),++n.i;n.i<s.length;++n.i)try{t(s[n.i],r)}catch(t){S._throw(t),i&&(s[n.i]._objFlags|=i)}}}}(Function("c","dt",t),r,i)}var MI=BI("c.start();c._objFlags|="+bI,!1,bI),PI=BI("c.update(dt)",!0),OI=BI("c.lateUpdate(dt)",!0),LI=function(t){var e=S.director._compScheduler,i=t.array;for(t.i=0;t.i<i.length;++t.i){var n=i[t.i];n._enabled&&(n.onEnable(),!n.node._activeInHierarchy||e._onEnabled(n))}},NI=function(){function t(){this._deferredComps=[],this.unscheduleAll()}var e=t.prototype;return e.unscheduleAll=function(){this.startInvoker=new II(MI),this.updateInvoker=new DI(PI),this.lateUpdateInvoker=new DI(OI),this._updating=!1},e._onEnabled=function(t){S.director.getScheduler().resumeTarget(t),t._objFlags|=EI,this._updating?this._deferredComps.push(t):this._scheduleImmediate(t)},e._onDisabled=function(t){S.director.getScheduler().pauseTarget(t),t._objFlags&=~EI;var e=this._deferredComps.indexOf(t);e>=0?AI(this._deferredComps,e):(!t.internalStart||t._objFlags&bI||this.startInvoker.remove(t),t.internalUpdate&&this.updateInvoker.remove(t),t.internalLateUpdate&&this.lateUpdateInvoker.remove(t))},e.enableComp=function(t,e){if(!(t._objFlags&EI)){if(t.internalOnEnable){if(e)return void e.add(t);if(t.internalOnEnable(),!t.node.activeInHierarchy)return}this._onEnabled(t)}},e.disableComp=function(t){t._objFlags&EI&&(t.internalOnDisable&&t.internalOnDisable(),this._onDisabled(t))},e.startPhase=function(){this._updating=!0,this.startInvoker.invoke(),this._startForNewComps()},e.updatePhase=function(t){this.updateInvoker.invoke(t)},e.lateUpdatePhase=function(t){this.lateUpdateInvoker.invoke(t),this._updating=!1,this._startForNewComps()},e._startForNewComps=function(){this._deferredComps.length>0&&(this._deferredSchedule(),this.startInvoker.invoke())},e._scheduleImmediate=function(t){"function"!=typeof t.internalStart||t._objFlags&bI||this.startInvoker.add(t),"function"==typeof t.internalUpdate&&this.updateInvoker.add(t),"function"==typeof t.internalLateUpdate&&this.lateUpdateInvoker.add(t)},e._deferredSchedule=function(){for(var t=this._deferredComps,e=0,i=t.length;e<i;e++)this._scheduleImmediate(t[e]);t.length=0},t}(),FI=Ms.Flags.IsPreloadStarted,kI=Ms.Flags.IsOnLoadStarted,GI=Ms.Flags.IsOnLoadCalled,VI=Ms.Flags.IsOnEnableCalled,UI=Ms.Flags.Deactivating,zI=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.add=function(t){this._zero.array.push(t)},i.remove=function(t){this._zero.fastRemove(t)},i.cancelInactive=function(t){wI.stableRemoveInactive(this._zero,t)},i.invoke=function(){this._invoke(this._zero),this._zero.array.length=0},e}(wI),HI=BI("c.__preload();"),WI=BI("c.onLoad();c._objFlags|="+GI,!1,GI),XI=new le(4);function jI(t,e,i){it(3817,t.name,i),console.log("Corrupted component value:",e),e?t._removeComponent(e):_e(t.getWritableComponents(),i)}XI.get=function(){var t=this._get()||{preload:new zI(HI),onLoad:new II(WI),onEnable:new II(LI)};t.preload.zero.i=-1;var e=t.onLoad;return e.zero.i=-1,e.neg.i=-1,e.pos.i=-1,(e=t.onEnable).zero.i=-1,e.neg.i=-1,e.pos.i=-1,t};var YI=t("ds",function(){function t(){this.reset()}var e=t.prototype;return e.reset=function(){this._activatingStack=[]},e.activateNode=function(t,e){if(e){var i=XI.get();i&&(this._activatingStack.push(i),this._activateNodeRecursively(t,i.preload,i.onLoad,i.onEnable),i.preload.invoke(),i.onLoad.invoke(),i.onEnable.invoke(),this._activatingStack.pop(),XI.put(i))}else{this._deactivateNodeRecursively(t);for(var n,r=f(this._activatingStack);!(n=r()).done;){var s=n.value;s.preload.cancelInactive(FI),s.onLoad.cancelInactive(kI),s.onEnable.cancelInactive(VI)}}t.emit(vm.ACTIVE_IN_HIERARCHY_CHANGED,t)},e.activateComp=function(t,e,i,n){if(Os(t,!0)&&(t._objFlags&FI||(t._objFlags|=FI,t.internalPreload&&(e?e.add(t):t.internalPreload())),t._objFlags&kI||(t._objFlags|=kI,t.internalOnLoad?i?i.add(t):(t.internalOnLoad(),t._objFlags|=GI):t._objFlags|=GI),t._enabled)){if(!t.node.activeInHierarchy)return;S.director._compScheduler.enableComp(t,n)}},e.destroyComp=function(t){S.director._compScheduler.disableComp(t),t.internalOnDestroy&&t._objFlags&GI&&t.internalOnDestroy()},e._activateNodeRecursively=function(t,e,i,n){if(t._objFlags&UI)it(3816,t.name);else{t._setActiveInHierarchy(!0);for(var r=t.components.length,s=0;s<r;++s){var a=t.components[s];a instanceof S.Component?this.activateComp(a,e,i,n):(jI(t,a,s),--s,--r)}for(var o=0,h=t.children.length;o<h;++o){var u=t.children[o];u.active&&this._activateNodeRecursively(u,e,i,n)}t._onPostActivated(!0)}},e._deactivateNodeRecursively=function(t){t._objFlags|=UI,t._setActiveInHierarchy(!1);for(var e=t.components.length,i=0;i<e;++i){var n=t.components[i];if(n._enabled&&(S.director._compScheduler.disableComp(n),t.activeInHierarchy))return void(t._objFlags&=~UI)}for(var r=0,s=t.children.length;r<s;++r){var a=t.children[r];if(a.activeInHierarchy&&(this._deactivateNodeRecursively(a),t.activeInHierarchy))return void(t._objFlags&=~UI)}t._onPostActivated(!1),t._objFlags&=~UI},t}()),qI=Ms.Flags.Destroyed,KI=Ms.Flags.PersistentMask,QI=Ci.Attr.DELIMETER+"default",ZI=Ci.IDENTIFIER_RE,JI="var ",$I="o",tD={"cc.ClickEvent":!1,"cc.PrefabInfo":!1},eD=Ci.escapeForJS,iD=function(){function t(t,e){this.varName=t,this.expression=e}return t.prototype.toString=function(){return JI+this.varName+"="+this.expression+";"},t}();function nD(t,e){return e instanceof iD?new iD(e.varName,t+e.expression):t+e}function rD(t,e,i){Array.isArray(i)?(i[0]=nD(e,i[0]),t.push(i)):t.push(nD(e,i)+";")}var sD=function(){function t(t){this._exps=[],this._targetExp=t}var e=t.prototype;return e.append=function(t,e){this._exps.push([t,e])},e.writeCode=function(t){var e;if(this._exps.length>1)t.push("t="+this._targetExp+";"),e="t";else{if(1!==this._exps.length)return;e=this._targetExp}for(var i=0;i<this._exps.length;i++){var n=this._exps[i];rD(t,e+aD(n[0])+"=",n[1])}},t}();function aD(t){return ZI.test(t)?"."+t:"["+eD(t)+"]"}sD.pool=void 0,sD.pool=new le((function(t){t._exps.length=0,t._targetExp=null}),1),sD.pool.get=function(t){var e=this._get()||new sD;return e._targetExp=t,e};var oD,hD,uD,lD,cD,_D,fD=function(){function t(t,e){var i;this.objsToClear_iN$t=[],this.codeArray=[],this.objs=[],this.funcs=[],this.globalVariables=[],this.globalVariableId=0,this.localVariableId=0,this.parent=e,this.funcModuleCache=Lt(),jt(this.funcModuleCache,tD),this.codeArray.push("var o,t;","if(R){","o=R;","}else{","o=R=new "+this.getFuncModule(t.constructor,!0)+"();","}"),t._iN$t={globalVar:"R"},this.objsToClear_iN$t.push(t),this.enumerateObject(this.codeArray,t),this.globalVariables.length>0&&(i=JI+this.globalVariables.join(",")+";");var n=Kl(["return (function(R){",i||[],this.codeArray,"return o;","})"]);this.result=Function("O","F",n)(this.objs,this.funcs);for(var r=0,s=this.objsToClear_iN$t.length;r<s;++r)this.objsToClear_iN$t[r]._iN$t=null;this.objsToClear_iN$t.length=0}var e=t.prototype;return e.getFuncModule=function(t,e){var i=Nt(t);if(i){var n=this.funcModuleCache[i];if(n)return n;if(void 0===n){var r=-1!==i.indexOf(".");if(r)try{if(r=t===Function("return "+i)())return this.funcModuleCache[i]=i,i}catch(t){}}}var s=this.funcs.indexOf(t);s<0&&(s=this.funcs.length,this.funcs.push(t));var a="F["+s+"]";return e&&(a="("+a+")"),this.funcModuleCache[i]=a,a},e.getObjRef=function(t){var e=this.objs.indexOf(t);return e<0&&(e=this.objs.length,this.objs.push(t)),"O["+e+"]"},e.setValueType=function(t,e,i,n){var r=sD.pool.get(n),s=e.constructor.__props__;s||(s=Object.keys(e));for(var a=0;a<s.length;a++){var o=s[a],h=i[o];if(e[o]!==h){var u=this.enumerateField(i,o,h);r.append(o,u)}}r.writeCode(t),sD.pool.put(r)},e.enumerateCCClass=function(t,e,i){for(var n=i.__values__,r=Ci.Attr.getClassAttrs(i),s=0;s<n.length;s++){var a=n[s],o=e[a],h=r[a+QI];if(!dD(h,o))if("object"==typeof o&&o instanceof S.ValueType&&(h=Ci.getDefault(h))&&h.constructor===o.constructor){var u=$I+aD(a);this.setValueType(t,h,o,u)}else this.setObjProp(t,e,a,o)}},e.instantiateArray=function(t){if(0===t.length)return"[]";var e="a"+ ++this.localVariableId,i=[new iD(e,"new Array("+t.length+")")];t._iN$t={globalVar:"",source:i},this.objsToClear_iN$t.push(t);for(var n=0;n<t.length;++n)rD(i,e+"["+n+"]=",this.enumerateField(t,n,t[n]));return i},e.instantiateTypedArray=function(t){var e=t.constructor.name;if(0===t.length)return"new "+e;var i="a"+ ++this.localVariableId,n=[new iD(i,"new "+e+"("+t.length+")")];t._iN$t={globalVar:"",source:n},this.objsToClear_iN$t.push(t);for(var r=0;r<t.length;++r)0!==t[r]&&rD(n,i+"["+r+"]=",t[r]);return n},e.enumerateField=function(t,e,i){if("object"==typeof i&&i){var n=i._iN$t;if(n){var r=n.globalVar;if(!r){r=n.globalVar="v"+ ++this.globalVariableId,this.globalVariables.push(r);var s=n.source[0];n.source[0]=nD(r+"=",s)}return r}return ArrayBuffer.isView(i)?this.instantiateTypedArray(i):Array.isArray(i)?this.instantiateArray(i):this.instantiateObj(i)}return"function"==typeof i?this.getFuncModule(i):"string"==typeof i?eD(i):("_objFlags"===e&&Ps(t)&&(i&=KI),i)},e.setObjProp=function(t,e,i,n){rD(t,$I+aD(i)+"=",this.enumerateField(e,i,n))},e.enumerateObject=function(t,e){var i=e.constructor;if(xi(i))this.enumerateCCClass(t,e,i);else for(var n in e)if(e.hasOwnProperty(n)&&(95!==n.charCodeAt(0)||95!==n.charCodeAt(1)||"__type__"===n)){var r=e[n];"object"==typeof r&&r&&r===e._iN$t||this.setObjProp(t,e,n,r)}},e.instantiateObj=function(t){if(t instanceof S.ValueType)return Ci.getNewValueTypeCode(t);if(t instanceof S.Asset)return this.getObjRef(t);if(t._objFlags&qI)return null;var e,i=t.constructor;if(xi(i)){if(this.parent)if(this.parent instanceof S.Component){if(t instanceof S.Node||t instanceof S.Component)return this.getObjRef(t)}else if(this.parent instanceof S.Node)if(t instanceof S.Node){if(!t.isChildOf(this.parent))return this.getObjRef(t)}else if(t instanceof S.Component){var n;if(null===(n=t.node)||void 0===n||!n.isChildOf(this.parent))return this.getObjRef(t)}e=new iD($I,"new "+this.getFuncModule(i,!0)+"()")}else if(i===Object)e=new iD($I,"{}");else{if(i)return this.getObjRef(t);e=new iD($I,"Object.create(null)")}var r=[e];return t._iN$t={globalVar:"",source:r},this.objsToClear_iN$t.push(t),this.enumerateObject(r,t),["(function(){",r,"return o;})();"]},t}();function dD(t,e){if("function"==typeof t)try{t=t()}catch(t){return!1}if(t===e)return!0;if(t&&e&&"object"==typeof t&&"object"==typeof e&&t.constructor===e.constructor)if(t instanceof S.ValueType){if(t.equals(e))return!0}else{if(Array.isArray(t))return 0===t.length&&0===e.length;if(t.constructor===Object)return It(t)&&It(e)}return!1}var pD=Ee({AUTO:0,SINGLE_INSTANCE:1,MULTI_INSTANCE:2}),mD=t("dt",eo("cc.Prefab")(((_D=function(t){function e(){var e;return(e=t.call(this)||this).data=uD&&uD(),e.optimizationPolicy=lD&&lD(),e.persistent=cD&&cD(),e._createFunction=null,e._instantiatedTimes=0,e}s(e,t);var i=e.prototype;return i.createNode=function(t){var e=S.instantiate(this);e.name=this.name,t(null,e)},i.compileCreateFunction=function(){var t,e;this._createFunction=(e=(t=this.data)instanceof S.Node&&t,new fD(t,e).result)},i._doInstantiate=function(t){return this.data._prefab||tt(3700),this._createFunction||this.compileCreateFunction(),this._createFunction(t)},i._instantiate=function(){var t;return this.optimizationPolicy!==pD.SINGLE_INSTANCE&&(this.optimizationPolicy===pD.MULTI_INSTANCE||this._instantiatedTimes+1>=e.OptimizationPolicyThreshold)?(t=this._doInstantiate(),this.data._instantiate(t)):t=this.data._instantiate(),++this._instantiatedTimes,t},i.initDefault=function(e){t.prototype.initDefault.call(this,e),this.data=new hg,this.data.name="(Missing Node)";var i=new S._PrefabInfo;i.asset=this,i.root=this.data,this.data._prefab=i},i.validate=function(){return!!this.data},i.onLoaded=function(){var t=this.data;xx(t),Ex(t)},e}(vd)).OptimizationPolicy=pD,_D.OptimizationPolicyThreshold=3,uD=ja((hD=_D).prototype,"data",[lo],(function(){return null})),lD=ja(hD.prototype,"optimizationPolicy",[lo],(function(){return pD.AUTO})),cD=ja(hD.prototype,"persistent",[lo],(function(){return!1})),oD=hD))||oD);Bt(mD,"_utils",Ox),S.Prefab=mD,Ft(S,"cc._Prefab","Prefab");var gD=new(function(){function t(){this._allRenderers=[],this._dirtyRenderers=[],this._dirtyVersion=0}var e=t.prototype;return e.addRenderer=function(t){-1===t._internalId&&(t._internalId=this._allRenderers.length,this._allRenderers.push(t))},e.removeRenderer=function(t){if(-1!==t._internalId){var e=t._internalId;this._allRenderers[this._allRenderers.length-1]._internalId=e,fe(this._allRenderers,e),t._internalId=-1,t._dirtyVersion===this._dirtyVersion&&(pe(this._dirtyRenderers,t),t._dirtyVersion=-1)}},e.markDirtyRenderer=function(t){t._dirtyVersion!==this._dirtyVersion&&-1!==t._internalId&&(this._dirtyRenderers.push(t),t._dirtyVersion=this._dirtyVersion)},e.updateAllDirtyRenderers=function(){for(var t=this._dirtyRenderers,e=0;e<this._dirtyRenderers.length;e++)t[e].updateRenderer();this._dirtyRenderers.length=0,this._dirtyVersion++},t}()),vD=[".png",".jpg",".bmp",".jpeg",".gif",".ico",".tiff",".webp",".image",".pvr",".pkm",".astc"],yD=[".mp3",".ogg",".wav",".m4a"];function SD(){return!0}var TD={transformURL:function(t){var e=od(t);if(!e)return t;var i=Yf.find((function(t){return!!t.getAssetInfo(e)}));if(!i)return t;var n,r=i.getAssetInfo(e);if(!(n=t.startsWith(i.base+i.config.nativeBase)?r.nativeVer||"":r.ver||"")||-1!==t.indexOf(n))return t;var s=!1;if(".ttf"===ia(t)&&(s=!0),s){var a=sa(t),o=ra(t);t=a+"."+n+"/"+o}else t=t.replace(/.*[/\\][0-9a-fA-F]{2}[/\\]([0-9a-fA-F-@]{8,})/,(function(t){return t+"."+n}));return t}},AD=t("ed",function(){function t(){this._autoReleaseSetting=Object.create(null),this._parseLoadResArgs=pS}var e=t.prototype;return e.load=function(t,e,i){void 0===i&&void 0!==e&&(i=e,e=null);for(var n=Array.isArray(t)?t:[t],r=0;r<n.length;r++){var s=n[r];"string"==typeof s?n[r]={url:s,__isNative__:!0}:(s.type&&(s.ext="."+s.type,s.type=void 0),s.url&&(s.__isNative__=!0))}var a=[],o=[];vT.loadAny(n,null,(function(t,i,n){n.content&&(vD.includes(n.ext)?a.push(n.content):yD.includes(n.ext)&&o.push(n.content)),e&&e(t,i,n)}),(function(t,e){var r=null;if(!t){e=Array.isArray(e)?e:[e];for(var s=function(t){var i=e[t];if(!(i instanceof vd)){var r=i,s=n[t].url;a.includes(r)?tT.create(s,i,".png",{},(function(i,n){r=e[t]=n})):o.includes(r)&&tT.create(s,i,".mp3",{},(function(i,n){r=e[t]=n})),Wf.add(s,r)}},h=0;h<e.length;h++)s(h);if(e.length>1){var u=Object.create(null);e.forEach((function(t){u[t._uuid]=t})),r={isCompleted:SD,_map:u}}else r=e[0]}i&&i(t,r)}))},e.getXMLHttpRequest=function(){return new XMLHttpRequest},e.getItem=function(t){return vT.assets.has(t)?{content:vT.assets.get(t)}:null},e.loadRes=function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=r.type,a=r.onProgress,o=r.onComplete,h=ia(t);h&&!yS.getInfoWithPath(t,s)&&(t=t.slice(0,-h.length)),yS.load(t,s,a,o)},e.loadResArray=function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=r.type,a=r.onProgress,o=r.onComplete;t.forEach((function(e,i){var n=ia(e);n&&!yS.getInfoWithPath(e,s)&&(t[i]=e.slice(0,-n.length))})),yS.load(t,s,a,o)},e.loadResDir=function(t,e,i,n){var r=this._parseLoadResArgs(e,i,n),s=r.type,a=r.onProgress,o=r.onComplete;yS.loadDir(t,s,a,(function(e,i){var n=[];e||(n=yS.getDirWithPath(t,s).map((function(t){return t.path}))),o&&o(e,i,n)}))},e.getRes=function(t,e){return Wf.has(t)?Wf.get(t):yS.get(t,e)},e.getResCount=function(){return Wf.count},e.getDependsRecursively=function(t){if(!t)return[];var e="string"==typeof t?t:t._uuid;return em.getDepsRecursively(e).concat([e])},e.addDownloadHandlers=function(t){var e=Object.create(null),i=function(){var i=t[n];e["."+n]=function(t,e,n){i({url:t},n)}};for(var n in t)i();zS.register(e)},e.addLoadHandlers=function(t){var e=Object.create(null),i=function(){var i=t[n];e["."+n]=function(t,e,n){i({content:t},n)}};for(var n in t)i();oT.register(e)},e.release=function(t){if(Array.isArray(t))for(var e=0;e<t.length;e++){var i=t[e];"string"==typeof i&&(i=Wf.get(i)),vT.releaseAsset(i)}else t&&("string"==typeof t&&(t=Wf.get(t)),vT.releaseAsset(t))},e.releaseAsset=function(t){vT.releaseAsset(t)},e.releaseRes=function(t,e){yS.release(t,e)},e.releaseAll=function(){vT.releaseAll(),Wf.clear()},e.removeItem=function(t){return!!Wf.remove(t)},e.setAutoRelease=function(t,e){"object"==typeof t&&(t=t._uuid),this._autoReleaseSetting[t]=!!e},e.setAutoReleaseRecursively=function(t,e){"object"==typeof t&&(t=t._uuid),e=!!e,this._autoReleaseSetting[t]=e;for(var i=em.getDepsRecursively(t),n=0;n<i.length;n++)this._autoReleaseSetting[i[n]]=e},e.isAutoRelease=function(t){return"object"==typeof t&&(t=t._uuid),!!this._autoReleaseSetting[t]},n(t,[{key:"onProgress",set:function(t){oS=t}},{key:"_cache",get:function(){if(Wf instanceof Uf)return Wf.map;var t={};return Wf.forEach((function(e,i){t[i]=e})),t}},{key:"md5Pipe",get:function(){return TD}},{key:"downloader",get:function(){return zS}},{key:"loader",get:function(){return vT.parser}}]),t}()),bD=t("ee",new AD),ED=t("ef",{init:function(t){t.importBase=t.libraryPath,t.nativeBase=t.rawAssetsBase,vT.init(t),t.rawAssets&&yS.init({base:"",deps:[],scenes:{},redirect:[],debug:!0,packs:{},types:[],versions:{import:[],native:[]},name:Jf.RESOURCES,importBase:t.importBase,nativeBase:t.nativeBase,paths:t.rawAssets.assets,uuids:Object.keys(t.rawAssets.assets),extensionMap:{}})},loadAsset:function(t,e){vT.loadAny(t,e)}}),CD=t("eg",{});ut(CD,"url",[{name:"normalize",target:vT.utils,targetName:"assetManager.utils",newName:"normalize"},{name:"raw",targetName:"Asset.prototype",newName:"nativeUrl",customFunction:function(t){return t.startsWith("resources/")?cd({path:aa(t.substr(10)),bundle:Jf.RESOURCES,__isNative__:!0,ext:ia(t)}):""}}]),lt(ED,"AssetLibrary",[{name:"getLibUrlNoExt",suggest:"AssetLibrary.getLibUrlNoExt was removed, if you want to transform url, please use assetManager.utils.getUrlWithUuid instead"},{name:"queryAssetInfo",suggest:"AssetLibrary.queryAssetInfo was removed"}]),lt(bD,"loader",[{name:"releaseResDir",suggest:"loader.releaseResDir was removed, please use assetManager.releaseAsset instead"},{name:"flowInDeps",suggest:"loader.flowInDeps was removed"},{name:"assetLoader",suggest:"loader.assetLoader was removed, assetLoader and md5Pipe were merged into assetManager.transformPipeline"}]),ut(S,"cc",[{name:"loader",newName:"assetManager",logTimes:1,customGetter:function(){return bD}},{name:"AssetLibrary",newName:"assetManager",logTimes:1,customGetter:function(){return ED}},{name:"Pipeline",target:gT,targetName:"AssetManager",newName:"Pipeline",logTimes:1},{name:"url",targetName:"assetManager",newName:"utils",logTimes:1,customGetter:function(){return CD}}]),lt(S,"cc",[{name:"LoadingItems",suggest:at(1400,"LoadingItems","AssetManager.Task")}]),ut(Pe,"macro",[{name:"DOWNLOAD_MAX_CONCURRENT",target:zS,targetName:"assetManager.downloader",newName:"maxConcurrency"}]);var xD=aS._autoRelease;aS._autoRelease=function(t,e,i){xD.call(aS,t,e,i);for(var n=bD._autoReleaseSetting,r=Object.keys(n),s=0;s<r.length;s++){var a=r[s];if(!0===n[a]){var o=Wf.get(a);o&&aS.tryRelease(o)}}};var wD=t("dQ",function(t){function e(){var e;return(e=t.call(this)||this)._compScheduler=new NI,e._nodeActivator=new YI,e._invalid=!1,e._paused=!1,e._root=null,e._loadingScene="",e._scene=null,e._totalFrames=0,e._scheduler=new kl,e._systems=[],e._persistRootNodes={},e}s(e,t);var i=e.prototype;return i.end=function(){var t=this;this.once(e.EVENT_END_FRAME,(function(){t.purgeDirector()}))},i.pause=function(){this._paused=!0},i.purgeDirector=function(){this._scheduler.unscheduleAll(),this._compScheduler.unscheduleAll(),this._nodeActivator.reset(),Os(this._scene)&&this._scene.destroy(),this._scene=null,this.stopAnimation(),vT.releaseAll()},i.reset=function(){var t;for(var i in this.purgeDirector(),this._persistRootNodes)this.removePersistRootNode(this._persistRootNodes[i]);null===(t=this.getScene())||void 0===t||t.destroy(),this.emit(e.EVENT_RESET),this.startAnimation()},i.runSceneImmediate=function(t,i,n){var r=this;t instanceof Nx&&(t=t.scene),st(t instanceof Lx,1216),t._load();for(var s=Object.keys(this._persistRootNodes).map((function(t){return r._persistRootNodes[t]})),a=0;a<s.length;a++){var o=s[a];o.emit(hg.EventType.SCENE_CHANGED_FOR_PERSISTS,t.renderScene);var h=t.uuid===o._originalSceneId&&t.getChildByUuid(o.uuid);if(h){var u=h.getSiblingIndex();o.hideFlags&=~Ms.Flags.DontSave,o.hideFlags|=Ms.Flags.DontSave&h.hideFlags,h._destroyImmediate(),t.insertChild(o,u)}else o.hideFlags|=Ms.Flags.DontSave,o.parent=t}var l=this._scene;Os(l)&&l.destroy(),aS._autoRelease(l,t,this._persistRootNodes),this._scene=null,Ms._deferredDestroy(),i&&i(),this.emit(e.EVENT_BEFORE_SCENE_LAUNCH,t),this._scene=t,t._activate(),this._root&&this._root.resetCumulativeTime(),this.startAnimation(),n&&n(null,t),this.emit(e.EVENT_AFTER_SCENE_LAUNCH,t)},i.runScene=function(t,i,n){var r=this;t instanceof Nx&&(t=t.scene),st(Boolean(t),1205),st(t instanceof Lx,1216),this.once(e.EVENT_END_FRAME,(function(){r.runSceneImmediate(t,i,n)}))},i.loadScene=function(t,i,n){var r=this;if(this._loadingScene)return tt(1208,t,this._loadingScene),!1;var s=vT.bundles.find((function(e){return!!e.getSceneInfo(t)}));return s?(this.emit(e.EVENT_BEFORE_SCENE_LOADING,t),this._loadingScene=t,console.time("LoadScene "+t),s.loadScene(t,(function(e,s){console.timeEnd("LoadScene "+t),r._loadingScene="",e?(H(e),i&&i(e)):r.runSceneImmediate(s,n,i)})),!0):(it(1209,t),!1)},i.preloadScene=function(t,e,i){var n=vT.bundles.find((function(e){return!!e.getSceneInfo(t)}));if(n)n.preloadScene(t,null,e,i);else{var r='Can not preload the scene "'+t+'" because it is not in the build settings.';i&&i(new Error(r)),H("preloadScene: "+r)}},i.resume=function(){this._paused=!1},i.getScene=function(){return this._scene},i.getDeltaTime=function(){return S.game.deltaTime},i.getTotalTime=function(){return S.game.totalTime},i.getCurrentTime=function(){return S.game.frameStartTime},i.getTotalFrames=function(){return this._totalFrames},i.isPaused=function(){return this._paused},i.getScheduler=function(){return this._scheduler},i.setScheduler=function(t){this._scheduler!==t&&(this.unregisterSystem(this._scheduler),this._scheduler=t,this.registerSystem(kl.ID,t,200))},i.registerSystem=function(t,e,i){e.id=t,e.priority=i,this._systems.push(e),this._systems.sort(Ml.sortByPriority)},i.unregisterSystem=function(t){pe(this._systems,t),this._systems.sort(Ml.sortByPriority)},i.getSystem=function(t){return this._systems.find((function(e){return e.id===t}))},i.getAnimationManager=function(){return this.getSystem(S.AnimationManager.ID)},i.startAnimation=function(){this._invalid=!1},i.stopAnimation=function(){this._invalid=!0},i.mainLoop=function(t){var e;e=S.game._calculateDT(t),this.tick(e)},i.tick=function(t){if(!this._invalid){if(this.emit(e.EVENT_BEGIN_FRAME),kw._frameDispatchEvents(),!this._paused){this.emit(e.EVENT_BEFORE_UPDATE),this._compScheduler.startPhase(),this._compScheduler.updatePhase(t);for(var i=0;i<this._systems.length;++i)this._systems[i].update(t);this._compScheduler.lateUpdatePhase(t),this.emit(e.EVENT_AFTER_UPDATE),Ms._deferredDestroy();for(var n=0;n<this._systems.length;++n)this._systems[n].postUpdate(t)}this.emit(e.EVENT_BEFORE_DRAW),gD.updateAllDirtyRenderers(),this._root.frameMove(t),this.emit(e.EVENT_AFTER_DRAW),hg.resetHasChangedFlags(),hg.clearNodeArray(),xs.update(t),this.emit(e.EVENT_END_FRAME),this._totalFrames++}},i.buildRenderPipeline=function(){if(this._root){var t=this._root.customPipeline,e=this._root.cameraList;t.beginSetup();var i=S.rendering.getCustomPipeline(Pe.CUSTOM_PIPELINE_NAME);S.rendering.dispatchResizeEvents(e,i,t),i.setup(e,t),t.endSetup()}},i.setupRenderPipelineBuilder=function(){""!==Pe.CUSTOM_PIPELINE_NAME&&S.rendering&&this._root&&this._root.usesCustomPipeline&&(this.on(e.EVENT_BEFORE_RENDER,this.buildRenderPipeline,this),this.on(e.EVENT_BEFORE_SCENE_LAUNCH,S.rendering.forceResizeAllWindows,S.rendering))},i.init=function(){this._totalFrames=0,this._paused=!1,this.registerSystem(kl.ID,this._scheduler,200),this._root=new uI(Ff.gfxDevice),this._root.initialize({}),this.setupRenderPipelineBuilder();for(var t=0;t<this._systems.length;t++)this._systems[t].init();this.emit(e.EVENT_INIT)},i.addPersistRootNode=function(t){if(hg.isNode(t)&&t.uuid){var e=t.uuid;if(!this._persistRootNodes[e]){var i=this._scene;if(Os(i))if(t.parent){if(!(t.parent instanceof Lx))return void tt(3801);if(t.parent!==i)return void tt(3802);t._originalSceneId=i.uuid}else t.parent=i,t._originalSceneId=i.uuid;this._persistRootNodes[e]=t,t._persistNode=!0,aS._addPersistNodeRef(t)}}else tt(3800)},i.removePersistRootNode=function(t){var e=t.uuid||"";t===this._persistRootNodes[e]&&(delete this._persistRootNodes[e],t._persistNode=!1,t._originalSceneId="",aS._removePersistNodeRef(t))},i.isPersistRootNode=function(t){return!!t._persistNode},n(e,[{key:"root",get:function(){return this._root}}]),e}(Hs));wD.EVENT_INIT="director_init",wD.EVENT_RESET="director_reset",wD.EVENT_BEFORE_SCENE_LOADING="director_before_scene_loading",wD.EVENT_BEFORE_SCENE_LAUNCH="director_before_scene_launch",wD.EVENT_AFTER_SCENE_LAUNCH="director_after_scene_launch",wD.EVENT_BEFORE_UPDATE="director_before_update",wD.EVENT_AFTER_UPDATE="director_after_update",wD.EVENT_BEFORE_DRAW="director_before_draw",wD.EVENT_AFTER_DRAW="director_after_draw",wD.EVENT_BEFORE_COMMIT="director_before_commit",wD.EVENT_BEFORE_RENDER="director_before_render",wD.EVENT_AFTER_RENDER="director_after_render",wD.EVENT_BEFORE_PHYSICS="director_before_physics",wD.EVENT_AFTER_PHYSICS="director_after_physics",wD.EVENT_BEGIN_FRAME="director_begin_frame",wD.EVENT_END_FRAME="director_end_frame",wD.instance=void 0,S.Director=wD;var RD,ID=t("dR",wD.instance=S.director=new wD),DD=function(){function t(){var t=this;this._stHandle=0,this._onTick=null,this._targetFrameRate=60,this._frameTime=0,this._startTime=0,this._isPlaying=!1,this._frameCount=0,this._callback=null,this._rAF=void 0,this._cAF=void 0,this._handleRAF=function(){var e=performance.now(),i=e-t._startTime,n=Math.floor(i/t._frameTime);n<0&&(t._startTime=e,t._frameCount=0),n<t._frameCount?t._stHandle=t._rAF.call(window,t._handleRAF):(t._frameCount=n+1,t._callback&&t._callback())},this._frameTime=1e3/this._targetFrameRate,this._rAF=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame,this._cAF=window.cancelAnimationFrame||window.cancelRequestAnimationFrame||window.msCancelRequestAnimationFrame||window.mozCancelRequestAnimationFrame||window.oCancelRequestAnimationFrame||window.webkitCancelRequestAnimationFrame||window.msCancelAnimationFrame||window.mozCancelAnimationFrame||window.webkitCancelAnimationFrame||window.ocancelAnimationFrame}var e=t.prototype;return e.start=function(){var t,e=this;if(!this._isPlaying){var i=void 0===this._rAF||(null===(t=globalThis.__globalXR)||void 0===t?void 0:t.isWebXR);this._startTime=performance.now(),this._stHandle=this._stTime((function t(){i&&(e._startTime=performance.now()),e._isPlaying&&(e._stHandle=e._stTime(t)),e._onTick&&e._onTick()})),this._isPlaying=!0,this._frameCount=0}},e.stop=function(){this._isPlaying&&(this._ctTime(this._stHandle),this._stHandle=0,this._isPlaying=!1,this._frameCount=0)},e._stTime=function(t){var e;if(void 0===this._rAF||null!==(e=globalThis.__globalXR)&&void 0!==e&&e.isWebXR){var i=performance.now(),n=Math.max(0,i-this._startTime),r=Math.max(0,this._frameTime-n);return setTimeout(t,r)}return this._callback=t,this._rAF.call(window,this._handleRAF)},e._ctTime=function(t){var e;void 0===this._cAF||null!==(e=globalThis.__globalXR)&&void 0!==e&&e.isWebXR?clearTimeout(t):t&&this._cAF.call(window,t)},n(t,[{key:"targetFrameRate",get:function(){return this._targetFrameRate},set:function(t){this._targetFrameRate!==t&&(this._targetFrameRate=t,this._frameTime=1e3/this._targetFrameRate,this._isPlaying&&(this.stop(),this.start()))}},{key:"onTick",get:function(){return this._onTick},set:function(t){this._onTick=t}}]),t}(),BD=t("dk",(function(){this.quadIB=null,this.quadVB=null,this.quadIA=null}));lt(Xd.prototype,"TextureBase.prototype",[{name:"hasPremultipliedAlpha"},{name:"setPremultiplyAlpha"},{name:"setFlipY"}]),ut(dR.prototype,"RenderTexture.prototype",[{name:"getGFXWindow",customFunction:function(){return this.window}}]);var MD=((RD={})[ic.UNORM]="Uint",RD[ic.SNORM]="Int",RD[ic.UINT]="Uint",RD[ic.INT]="Int",RD[ic.UFLOAT]="Float",RD[ic.FLOAT]="Float",RD.default="Uint",RD);function PD(t){return""+(MD[t.type]||MD.default)+t.size/t.count*8}function OD(t,e,i,n,r){void 0===i&&(i=ec.R32F),void 0===n&&(n=0),void 0===r&&(r=0);var s=j_[i];r||(r=s.size);for(var a="set"+PD(s),o=s.size/s.count,h=Math.floor(e.length/s.count),u=Sa.isLittleEndian,l=0;l<h;++l)for(var c=n+r*l,_=0;_<s.count;++_){var f=c+o*_;t[a](f,e[s.count*l+_],u)}}function LD(t,e,i,n,r,s){void 0===e&&(e=ec.R32F),void 0===i&&(i=0),void 0===n&&(n=t.byteLength-i),void 0===r&&(r=0),void 0===s&&(s=[]);var a=j_[e];r||(r=a.size);for(var o="get"+PD(a),h=a.size/a.count,u=Math.floor(n/r),l=Sa.isLittleEndian,c=0;c<u;++c)for(var _=i+r*c,f=0;f<a.count;++f){var d=_+h*f;s[a.count*c+f]=t[o](d,l)}return s}function ND(t,e,i,n,r,s,a){void 0===i&&(i=ec.R32F),void 0===n&&(n=0),void 0===r&&(r=t.byteLength-n),void 0===s&&(s=0),a||(a=new DataView(t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)));var o=j_[i];s||(s=o.size);for(var h="set"+PD(o),u="get"+PD(o),l=o.size/o.count,c=Math.floor(r/s),_=Sa.isLittleEndian,f=0;f<c;++f)for(var d=n+s*f,p=0;p<o.count;++p){var m=d+l*p,g=t[u](m,_);a[h](m,e(g,p,t),_)}return a}var FD=t("dZ",function(){function t(t,e,i,n,r,s){void 0===n&&(n=null),void 0===r&&(r=null),void 0===s&&(s=!0),this.mesh=void 0,this.subMeshIdx=void 0,this._flatBuffers=[],this._jointMappedBuffers=void 0,this._jointMappedBufferIndices=void 0,this._vertexIdChannel=void 0,this._geometricInfo=void 0,this._vertexBuffers=void 0,this._drawInfo=null,this._attributes=e,this._vertexBuffers=t,this._indexBuffer=n,this._indirectBuffer=r,this._primitiveMode=i,this._iaInfo=new b_(e,t,n,r),this._isOwnerOfIndexBuffer=s}var e=t.prototype;return e.invalidateGeometricInfo=function(){this._geometricInfo=void 0},e.genFlatBuffers=function(){if(!this._flatBuffers.length&&this.mesh&&void 0!==this.subMeshIdx){var t=this.mesh,e=0,i=t.struct.primitives[this.subMeshIdx];i.indexView&&(e=i.indexView.count);for(var n=0;n<i.vertexBundelIndices.length;n++){var r=i.vertexBundelIndices[n],s=t.struct.vertexBundles[r],a=i.indexView?i.indexView.count:s.view.count,o=s.view.stride,h=o*a,u=new Uint8Array(t.data.buffer,s.view.offset,s.view.length),l=new Uint8Array(i.indexView?h:s.view.length);if(i.indexView){for(var c=t.readIndices(this.subMeshIdx),_=0;_<e;++_)for(var f=_*o,d=c[_]*o,p=0;p<o;++p)l[f+p]=u[d+p];this._flatBuffers.push({stride:o,count:a,buffer:l})}else l.set(t.data.subarray(s.view.offset,s.view.offset+s.view.length)),this._flatBuffers.push({stride:o,count:a,buffer:l})}}},e.destroy=function(){for(var t=0;t<this.vertexBuffers.length;t++)this.vertexBuffers[t].destroy();if(this.vertexBuffers.length=0,this._indexBuffer&&(this._isOwnerOfIndexBuffer&&this._indexBuffer.destroy(),this._indexBuffer=null),this._jointMappedBuffers&&this._jointMappedBufferIndices){for(var e=0;e<this._jointMappedBufferIndices.length;e++)this._jointMappedBuffers[this._jointMappedBufferIndices[e]].destroy();this._jointMappedBuffers=void 0,this._jointMappedBufferIndices=void 0}this._indirectBuffer&&(this._indirectBuffer.destroy(),this._indirectBuffer=null)},e.enableVertexIdChannel=function(t){if(!this._vertexIdChannel){var e=this.vertexBuffers.length,i=this.attributes.length,n=this._allocVertexIdBuffer(t);this._vertexBuffers.push(n),this._attributes.push(new T_("a_vertexId",ec.R32F,!1,e)),this._iaInfo.attributes=this._attributes,this._iaInfo.vertexBuffers=this._vertexBuffers,this._vertexIdChannel={stream:e,index:i}}},e._allocVertexIdBuffer=function(t){for(var e=0===this.vertexBuffers.length||0===this.vertexBuffers[0].stride?0:this.vertexBuffers[0].size/this.vertexBuffers[0].stride,i=new Float32Array(e),n=0;n<e;++n)i[n]=n+.5;var r=t.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,i.byteLength,i.BYTES_PER_ELEMENT));return r.update(i),r},n(t,[{key:"attributes",get:function(){return this._attributes}},{key:"vertexBuffers",get:function(){return this._vertexBuffers}},{key:"indexBuffer",get:function(){return this._indexBuffer}},{key:"indirectBuffer",get:function(){return this._indirectBuffer}},{key:"primitiveMode",get:function(){return this._primitiveMode}},{key:"geometricInfo",get:function(){if(this._geometricInfo)return this._geometricInfo;if(void 0===this.mesh)return t.EMPTY_GEOMETRIC_INFO;if(void 0===this.subMeshIdx)return t.EMPTY_GEOMETRIC_INFO;var e,i=this.mesh,n=this.subMeshIdx,r=this.attributes.find((function(t){return t.name===Uc.ATTR_POSITION}));if(!r)return t.EMPTY_GEOMETRIC_INFO;switch(r.format){case ec.RG32F:case ec.RGB32F:if(!(e=i.readAttribute(n,Uc.ATTR_POSITION)))return t.EMPTY_GEOMETRIC_INFO;break;case ec.RGBA32F:var s=i.readAttribute(n,Uc.ATTR_POSITION);if(!s)return t.EMPTY_GEOMETRIC_INFO;var a=s.length/4;e=new Float32Array(3*a);for(var o=0;o<a;++o){var h=3*o,u=4*o;e[h]=s[u],e[h+1]=s[u+1],e[h+2]=s[u+2]}break;case ec.RG16F:case ec.RGB16F:var l=i.readAttribute(n,Uc.ATTR_POSITION);if(!l)return t.EMPTY_GEOMETRIC_INFO;e=new Float32Array(l.length);for(var c=0;c<l.length;++c)e[c]=un(l[c]);break;case ec.RGBA16F:var _=i.readAttribute(n,Uc.ATTR_POSITION);if(!_)return t.EMPTY_GEOMETRIC_INFO;var f=_.length/4;e=new Float32Array(3*f);for(var d=0;d<f;++d){var p=3*d,m=4*d;e[p]=un(_[m]),e[p+1]=un(_[m+1]),e[p+2]=un(_[m+2])}break;default:return t.EMPTY_GEOMETRIC_INFO}var g=i.readIndices(n)||void 0,v=new gn,y=new gn,S=j_[r.format].count;2===S?(v.set(e[0],e[1],0),y.set(e[0],e[1],0)):(v.set(e[0],e[1],e[2]),y.set(e[0],e[1],e[2]));for(var T=0;T<e.length;T+=S)2===S?(v.x=e[T]>v.x?e[T]:v.x,v.y=e[T+1]>v.y?e[T+1]:v.y,y.x=e[T]<y.x?e[T]:y.x,y.y=e[T+1]<y.y?e[T+1]:y.y):(v.x=e[T]>v.x?e[T]:v.x,v.y=e[T+1]>v.y?e[T+1]:v.y,v.z=e[T+2]>v.z?e[T+2]:v.z,y.x=e[T]<y.x?e[T]:y.x,y.y=e[T+1]<y.y?e[T+1]:y.y,y.z=e[T+2]<y.z?e[T+2]:y.z);return this._geometricInfo={positions:e,indices:g,boundingBox:{max:v,min:y}},this._geometricInfo}},{key:"drawInfo",get:function(){return this._drawInfo},set:function(t){this._drawInfo=t}},{key:"flatBuffers",get:function(){return this._flatBuffers}},{key:"jointMappedBuffers",get:function(){var t=this;if(this._jointMappedBuffers)return this._jointMappedBuffers;var e=this._jointMappedBuffers=[],i=this._jointMappedBufferIndices=[];if(!this.mesh||void 0===this.subMeshIdx)return this._jointMappedBuffers=this.vertexBuffers;var n,r,s=this.mesh.struct,a=s.primitives[this.subMeshIdx];if(!s.jointMaps||void 0===a.jointMapIndex||!s.jointMaps[a.jointMapIndex])return this._jointMappedBuffers=this.vertexBuffers;for(var o=S.director.root.device,h=function(){var h=s.vertexBundles[a.vertexBundelIndices[u]];r=0,n=ec.UNKNOWN;for(var l=0;l<h.attributes.length;l++){var c=h.attributes[l];if(c.name===Uc.ATTR_JOINTS){n=c.format;break}r+=j_[c.format].size}if(n){var _=new Uint8Array(t.mesh.data.buffer,h.view.offset,h.view.length),f=new DataView(_.slice().buffer),d=s.jointMaps[a.jointMapIndex];ND(f,(function(t){return d.indexOf(t)}),n,r,h.view.length,h.view.stride,f);var p=o.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,h.view.length,h.view.stride));p.update(f.buffer),e.push(p),i.push(u)}else e.push(t.vertexBuffers[a.vertexBundelIndices[u]])},u=0;u<a.vertexBundelIndices.length;u++)h();return this._vertexIdChannel&&e.push(this._allocVertexIdBuffer(o)),e}},{key:"iaInfo",get:function(){return this._iaInfo}}]),t}());FD.EMPTY_GEOMETRIC_INFO={positions:new Float32Array,indices:new Uint8Array,boundingBox:{min:gn.ZERO,max:gn.ZERO}};var kD,GD=new Vn,VD=new Vn,UD=new Vn,zD=new Vn,HD=new Vn,WD=new Vn,XD=new Vn,jD=new gn(0,0,0),YD=new gn,qD=new jn,KD=new gn,QD=new gn,ZD=new gn(1e7,1e7,1e7),JD=new gn(-1e7,-1e7,-1e7),$D=new gn,tB=0,eB=0,iB=function(){function t(t){this._shadowObjects=[],this._shadowCameraFar=0,this._matShadowView=new Vn,this._matShadowProj=new Vn,this._matShadowViewProj=new Vn,this._validFrustum=new La,this._splitFrustum=new La,this._lightViewFrustum=new La,this._castLightViewBoundingBox=new Ra,this._level=t,this._validFrustum.accurate=!0,this._splitFrustum.accurate=!0,this._lightViewFrustum.accurate=!0}var e=t.prototype;return e.copyToValidFrustum=function(t){La.copy(this._validFrustum,t)},e.calculateValidFrustumOrtho=function(t,e,i,n,r){La.createOrtho(this._validFrustum,t,e,i,n,r)},e.calculateSplitFrustum=function(t,e,i,n){this._splitFrustum.split(i,n,t.aspect,t.fov,e)},e.destroy=function(){this._shadowObjects.length=0},e.createMatrix=function(t,e,i){var n=S.director.root.device,r=t.shadowInvisibleOcclusionRange;La.copy(this._lightViewFrustum,this._splitFrustum),Vn.fromRT(VD,t.node.rotation,jD),Vn.invert(UD,VD);var s,a,o=UD.clone();this._lightViewFrustum.transform(UD),Ra.fromPoints(this._castLightViewBoundingBox,ZD,JD),this._castLightViewBoundingBox.mergeFrustum(this._lightViewFrustum),t.csmOptimizationMode===YT.DisableRotationFix?(s=2*this._castLightViewBoundingBox.halfExtents.x,a=2*this._castLightViewBoundingBox.halfExtents.y):s=a=gn.distance(this._lightViewFrustum.vertices[0],this._lightViewFrustum.vertices[6]);var h=S.director.root.pipeline.pipelineSceneData.csmSupported?t.csmLevel:1;if(h>1&&t.csmOptimizationMode===YT.RemoveDuplicates)if(this._level>=h-1)eB=this._castLightViewBoundingBox.halfExtents.z,tB=this._castLightViewBoundingBox.center.z;else{var u=Math.abs(this._castLightViewBoundingBox.center.z-tB)+eB;this._castLightViewBoundingBox.halfExtents.z=Math.max(this._castLightViewBoundingBox.center.z,u)}var l=this._castLightViewBoundingBox.halfExtents.z;this._shadowCameraFar=2*l+r;var c=this._castLightViewBoundingBox.center;if($D.set(c.x,c.y,c.z+l+r),gn.transformMat4($D,$D,VD),Vn.fromRT(VD,t.node.rotation,$D),Vn.invert(UD,VD),!i){var _=.5*s,f=.5*a;Vn.ortho(zD,-_,_,-f,f,.1,this._shadowCameraFar,n.capabilities.clipSpaceMinZ,n.capabilities.clipSpaceSignY),Vn.multiply(WD,zD,o),gn.transformMat4(YD,$D,WD);var d=2/e;qD.set(d,d);var p=YD.x%qD.x,m=YD.y%qD.y;KD.set(YD.x-p,YD.y-m,YD.z),Vn.invert(XD,WD),gn.transformMat4(QD,KD,XD),Vn.fromRT(VD,t.node.rotation,QD),Vn.invert(UD,VD),Vn.multiply(HD,zD,UD),Vn.copy(this._matShadowView,UD),Vn.copy(this._matShadowProj,zD),Vn.copy(this._matShadowViewProj,HD)}La.createOrtho(this._validFrustum,s,a,.1,this._shadowCameraFar,VD)},n(t,[{key:"level",get:function(){return this._level}},{key:"shadowObjects",get:function(){return this._shadowObjects}},{key:"shadowCameraFar",get:function(){return this._shadowCameraFar},set:function(t){this._shadowCameraFar=t}},{key:"matShadowView",get:function(){return this._matShadowView},set:function(t){this._matShadowView=t}},{key:"matShadowProj",get:function(){return this._matShadowProj},set:function(t){this._matShadowProj=t}},{key:"matShadowViewProj",get:function(){return this._matShadowViewProj},set:function(t){this._matShadowViewProj=t}},{key:"validFrustum",get:function(){return this._validFrustum}},{key:"splitFrustum",get:function(){return this._splitFrustum}},{key:"lightViewFrustum",get:function(){return this._lightViewFrustum}},{key:"castLightViewBoundingBox",get:function(){return this._castLightViewBoundingBox}}]),t}(),nB=function(t){function e(e){var i;return(i=t.call(this,e)||this)._splitCameraNear=0,i._splitCameraFar=0,i._csmAtlas=new cn,i._calculateAtlas(e),i}s(e,t);var i=e.prototype;return i.destroy=function(){t.prototype.destroy.call(this)},i._calculateAtlas=function(t){var e=S.director.root.device.capabilities.clipSpaceSignY,i=t%2-.5,n=(.5-Math.floor(t/2))*e;this._csmAtlas.set(.5,.5,i,n)},n(e,[{key:"splitCameraNear",get:function(){return this._splitCameraNear},set:function(t){this._splitCameraNear=t}},{key:"splitCameraFar",get:function(){return this._splitCameraFar},set:function(t){this._splitCameraFar=t}},{key:"csmAtlas",get:function(){return this._csmAtlas},set:function(t){this._csmAtlas=t}}]),e}(iB),rB=function(){function t(){this._castShadowObjects=[],this._layerObjects=new Is(64),this._layers=[],this._levelCount=0,this._specialLayer=new iB(1),this._shadowDistance=0;for(var t=0;t<jT.LEVEL_4;t++)this._layers[t]=new nB(t)}var e=t.prototype;return e.update=function(t,e){var i=e.scene.mainLight;if(null!==i){var n=t.shadows,r=S.director.root.pipeline.pipelineSceneData.csmSupported?i.csmLevel:1,s=i.shadowDistance;n.enabled&&i.shadowEnabled&&(i.shadowFixedArea?this._updateFixedArea(i):((i.csmNeedUpdate||this._levelCount!==r||this._shadowDistance!==s)&&(this._splitFrustumLevels(i),this._levelCount=r,this._shadowDistance=s),this._calculateCSM(e,i,n)))}},e.destroy=function(){this._castShadowObjects.length=0;for(var t=0;t<this._layers.length;t++)this._layers[t].destroy();this._layers.length=0},e._updateFixedArea=function(t){var e=S.director.root.device,i=t.shadowOrthoSize,n=t.shadowOrthoSize,r=t.shadowNear,s=t.shadowFar;Vn.fromRT(VD,t.node.getWorldRotation(),t.node.getWorldPosition()),Vn.invert(UD,VD),Vn.ortho(zD,-i,i,-n,n,r,s,e.capabilities.clipSpaceMinZ,e.capabilities.clipSpaceSignY),Vn.multiply(HD,zD,UD),this._specialLayer.matShadowView=UD,this._specialLayer.matShadowProj=zD,this._specialLayer.matShadowViewProj=HD,this._specialLayer.calculateValidFrustumOrtho(2*i,2*n,r,s,VD)},e._splitFrustumLevels=function(t){var e=.1,i=t.shadowDistance,n=i/e,r=S.director.root.pipeline.pipelineSceneData.csmSupported?t.csmLevel:1,s=t.csmLayerLambda;this._layers[0].splitCameraNear=e;for(var a=1;a<r;a++){var o=a/r,h=s*e*Math.pow(n,o)+(1-s)*(e+(i-e)*o),u=1.005*h;this._layers[a].splitCameraNear=h,this._layers[a-1].splitCameraFar=u}this._layers[r-1].splitCameraFar=i,t.csmNeedUpdate=!1},e._calculateCSM=function(t,e,i){var n=S.director.root.pipeline.pipelineSceneData.csmSupported?e.csmLevel:1,r=n>1?.5*i.size.x:i.size.x;if(!(r<0)){this._getCameraWorldMatrix(GD,t);for(var s=n-1;s>=0;s--){var a=this._layers[s],o=a.splitCameraNear,h=a.splitCameraFar;a.calculateSplitFrustum(t,GD,o,h),a.createMatrix(e,r,!1)}n===jT.LEVEL_1?(this._specialLayer.shadowCameraFar=this._layers[0].shadowCameraFar,Vn.copy(this._specialLayer.matShadowView,this._layers[0].matShadowView),Vn.copy(this._specialLayer.matShadowProj,this._layers[0].matShadowProj),Vn.copy(this._specialLayer.matShadowViewProj,this._layers[0].matShadowViewProj),this._specialLayer.copyToValidFrustum(this._layers[0].validFrustum)):(this._specialLayer.calculateSplitFrustum(t,GD,.1,e.shadowDistance),this._specialLayer.createMatrix(e,r,!0))}},e._getCameraWorldMatrix=function(t,e){if(e.node){var i=e.node,n=i.getWorldPosition(),r=i.getWorldRotation();Vn.fromRT(t,r,n)}},n(t,[{key:"castShadowObjects",get:function(){return this._castShadowObjects}},{key:"layerObjects",get:function(){return this._layerObjects}},{key:"layers",get:function(){return this._layers}},{key:"specialLayer",get:function(){return this._specialLayer}}]),t}(),sB=t("dd",function(){function t(){this.fog=new sA,this.ambient=new wg,this.skybox=new eA,this.shadows=new KT,this.csmLayers=new rB,this.octree=new IR,this.skin=new DR,this.postSettings=new IE,this.lightProbes=S.internal.LightProbes?new S.internal.LightProbes:null,this.validPunctualLights=[],this.renderObjects=[],this.shadowFrameBufferMap=new Map,this._geometryRendererMaterials=[],this._geometryRendererPasses=[],this._geometryRendererShaders=[],this._occlusionQueryVertexBuffer=null,this._occlusionQueryIndicesBuffer=null,this._occlusionQueryInputAssembler=null,this._occlusionQueryMaterial=null,this._occlusionQueryShader=null,this._isHDR=!0,this._shadingScale=1,this._csmSupported=!0,this._standardSkinMeshRenderer=null,this._standardSkinModel=null,this._skinMaterialModel=null,this._shadingScale=1}var e=t.prototype;return e.activate=function(t){return this._device=t,this.initGeometryRendererMaterials(),this.initOcclusionQuery(),!0},e.initGeometryRendererMaterials=function(){for(var t=0,e=0;e<6;e++){this._geometryRendererMaterials[e]=new zT,this._geometryRendererMaterials[e]._uuid="geometry-renderer-material-"+e,this._geometryRendererMaterials[e].initialize({effectName:"internal/builtin-geometry-renderer",technique:e});for(var i=0;i<this._geometryRendererMaterials[e].passes.length;++i)this._geometryRendererPasses[t]=this._geometryRendererMaterials[e].passes[i],this._geometryRendererShaders[t]=this._geometryRendererMaterials[e].passes[i].getShaderVariant(),t++}},e.initOcclusionQuery=function(){if(this._occlusionQueryInputAssembler||(this._occlusionQueryInputAssembler=this._createOcclusionQueryIA()),!this._occlusionQueryMaterial){var t=new zT;t._uuid="default-occlusion-query-material",t.initialize({effectName:"internal/builtin-occlusion-query"}),this._occlusionQueryMaterial=t,t.passes.length>0&&(this._occlusionQueryShader=t.passes[0].getShaderVariant())}},e.getOcclusionQueryPass=function(){return this._occlusionQueryMaterial&&this._occlusionQueryMaterial.passes.length>0?this._occlusionQueryMaterial.passes[0]:null},e.updatePipelineSceneData=function(){},e.destroy=function(){var t,e,i;this.shadows.destroy(),this.csmLayers.destroy(),this.validPunctualLights.length=0,null===(t=this._occlusionQueryInputAssembler)||void 0===t||t.destroy(),this._occlusionQueryInputAssembler=null,null===(e=this._occlusionQueryVertexBuffer)||void 0===e||e.destroy(),this._occlusionQueryVertexBuffer=null,null===(i=this._occlusionQueryIndicesBuffer)||void 0===i||i.destroy(),this._occlusionQueryIndicesBuffer=null,this._standardSkinMeshRenderer=null,this._standardSkinModel=null,this._skinMaterialModel=null},e._createOcclusionQueryIA=function(){var t=this._device,e=new Float32Array([-1,-1,-1,1,-1,-1,-1,1,-1,1,1,-1,-1,-1,1,1,-1,1,-1,1,1,1,1,1]),i=3*Float32Array.BYTES_PER_ELEMENT,n=8*i;this._occlusionQueryVertexBuffer=t.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,n,i)),this._occlusionQueryVertexBuffer.update(e);var r=new Uint16Array([0,2,1,1,2,3,4,5,6,5,7,6,1,3,7,1,7,5,0,4,6,0,6,2,0,1,5,0,5,4,2,6,7,2,7,3]),s=Uint16Array.BYTES_PER_ELEMENT,a=36*s;this._occlusionQueryIndicesBuffer=t.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,a,s)),this._occlusionQueryIndicesBuffer.update(r);var o=[new T_("a_position",ec.RGB32F)],h=new b_(o,[this._occlusionQueryVertexBuffer],this._occlusionQueryIndicesBuffer);return t.createInputAssembler(h)},n(t,[{key:"isHDR",get:function(){return this._isHDR},set:function(t){this._isHDR=t}},{key:"shadingScale",get:function(){return this._shadingScale},set:function(t){this._shadingScale=t}},{key:"csmSupported",get:function(){return this._csmSupported},set:function(t){this._csmSupported=t}},{key:"standardSkinModel",get:function(){return this._standardSkinModel},set:function(t){this._standardSkinModel=t}},{key:"standardSkinMeshRenderer",get:function(){return this._standardSkinMeshRenderer},set:function(t){this._standardSkinMeshRenderer&&this._standardSkinMeshRenderer!==t&&this._standardSkinMeshRenderer.clearGlobalStandardSkinObjectFlag(),this._standardSkinMeshRenderer=t,this.standardSkinModel=t?t.model:null}},{key:"skinMaterialModel",get:function(){return this._skinMaterialModel},set:function(t){this._skinMaterialModel=t}},{key:"geometryRendererPasses",get:function(){return this._geometryRendererPasses}},{key:"geometryRendererShaders",get:function(){return this._geometryRendererShaders}}]),t}()),aB=Zn(),oB=((kD={})[Pe.ORIENTATION_AUTO]=Be.AUTO,kD[Pe.ORIENTATION_LANDSCAPE]=Be.LANDSCAPE,kD[Pe.ORIENTATION_PORTRAIT]=Be.PORTRAIT,kD),hB=t("h2",function(t){function e(){var e;(e=t.call(this)||this)._designResolutionSize=Zn(0,0),e._scaleX=1,e._scaleY=1,e._viewportRect=$n(),e._visibleRect=$n(),e._autoFullScreen=!1,e._retinaEnabled=!1,e._resizeCallback=null;var i=uB,n=lB;return e._rpExactFit=new vB(i.EQUAL_TO_FRAME,n.EXACT_FIT),e._rpShowAll=new vB(i.EQUAL_TO_FRAME,n.SHOW_ALL),e._rpNoBorder=new vB(i.EQUAL_TO_FRAME,n.NO_BORDER),e._rpFixedHeight=new vB(i.EQUAL_TO_FRAME,n.FIXED_HEIGHT),e._rpFixedWidth=new vB(i.EQUAL_TO_FRAME,n.FIXED_WIDTH),e._resolutionPolicy=e._rpShowAll,e}s(e,t);var i=e.prototype;return i.init=function(){var t=ya.windowSize,e=t.width,i=t.height;this._designResolutionSize.width=e,this._designResolutionSize.height=i,this._viewportRect.width=e,this._viewportRect.height=i,this._visibleRect.width=e,this._visibleRect.height=i,aB.width=this._visibleRect.width,aB.height=this._visibleRect.height,Ta&&Ta.init(this._visibleRect),this.resizeWithBrowserSize(!0);var n=Me.querySettings(De.Category.SCREEN,"designResolution");n&&this.setDesignResolutionSize(Number(n.width),Number(n.height),n.policy||vB.FIXED_HEIGHT),ya.on("window-resize",this._updateAdaptResult,this),ya.on("fullscreen-change",this._updateAdaptResult,this)},i.resizeWithBrowserSize=function(t){ga.handleResizeEvent=t},i.setResizeCallback=function(t){"function"!=typeof t&&null!=t||(this._resizeCallback=t)},i.setOrientation=function(t){ga.orientation=oB[t]},i.adjustViewportMeta=function(){},i.enableRetina=function(t){this._retinaEnabled=!!t},i.isRetinaEnabled=function(){return this._retinaEnabled},i.enableAutoFullScreen=function(t){t!==this._autoFullScreen&&(this._autoFullScreen=t,t&&ya.requestFullScreen().catch((function(){})))},i.isAutoFullScreenEnabled=function(){return this._autoFullScreen},i.setCanvasSize=function(t,e){ga.resolutionScale=1;var i=ga.devicePixelRatio,n=new Qn(t*i,e*i);ya.windowSize=n},i.getCanvasSize=function(){return ya.windowSize},i.getFrameSize=function(){var t=ga.devicePixelRatio,e=ya.windowSize;return e.width/=t,e.height/=t,e},i.setFrameSize=function(t,e){var i=ga.devicePixelRatio;ya.windowSize=new Qn(t*i,e*i)},i.getVisibleSize=function(){return new Qn(this._visibleRect.width,this._visibleRect.height)},i.getVisibleSizeInPixel=function(){return new Qn(this._visibleRect.width*this._scaleX,this._visibleRect.height*this._scaleY)},i.getVisibleOrigin=function(){return new jn(this._visibleRect.x,this._visibleRect.y)},i.getVisibleOriginInPixel=function(){return new jn(this._visibleRect.x*this._scaleX,this._visibleRect.y*this._scaleY)},i.getResolutionPolicy=function(){return this._resolutionPolicy},i._updateResolutionPolicy=function(t){if(t instanceof vB)this._resolutionPolicy=t;else{var e=vB;t===e.EXACT_FIT&&(this._resolutionPolicy=this._rpExactFit),t===e.SHOW_ALL&&(this._resolutionPolicy=this._rpShowAll),t===e.NO_BORDER&&(this._resolutionPolicy=this._rpNoBorder),t===e.FIXED_HEIGHT&&(this._resolutionPolicy=this._rpFixedHeight),t===e.FIXED_WIDTH&&(this._resolutionPolicy=this._rpFixedWidth)}},i.setResolutionPolicy=function(t){this._updateResolutionPolicy(t);var e=yB.getDesignResolutionSize();yB.setDesignResolutionSize(e.width,e.height,t)},i.setDesignResolutionSize=function(t,e,i){if(t>0&&e>0){this._updateResolutionPolicy(i);var n=this._resolutionPolicy;n&&n.preApply(this),this._designResolutionSize.width=t,this._designResolutionSize.height=e;var r=n.apply(this,this._designResolutionSize);if(r.scale&&2===r.scale.length&&(this._scaleX=r.scale[0],this._scaleY=r.scale[1]),r.viewport){var s=this._viewportRect,a=this._visibleRect,o=r.viewport;s.x=o.x,s.y=o.y,s.width=o.width,s.height=o.height,a.x=0,a.y=0,a.width=o.width/this._scaleX,a.height=o.height/this._scaleY}n.postApply(this),aB.width=this._visibleRect.width,aB.height=this._visibleRect.height,Ta&&Ta.init(this._visibleRect),this.emit("design-resolution-changed")}else it(2200)},i.getDesignResolutionSize=function(){return new Qn(this._designResolutionSize.width,this._designResolutionSize.height)},i.setRealPixelResolution=function(t,e,i){document.documentElement.style.width=t+"px",document.body.style.width=t+"px",document.body.style.left="0px",document.body.style.top="0px",this.setDesignResolutionSize(t,e,i)},i.getViewportRect=function(){return this._viewportRect},i.getScaleX=function(){return this._scaleX},i.getScaleY=function(){return this._scaleY},i.getDevicePixelRatio=function(){return ga.devicePixelRatio},i.convertToLocationInView=function(t,e,i,n){void 0===n&&(n=new jn);var r=ga.devicePixelRatio*(t-i.left),s=ga.devicePixelRatio*(i.top+i.height-e);return ga.isFrameRotated?(n.x=ya.windowSize.width-s,n.y=r):(n.x=r,n.y=s),n},i._convertToUISpace=function(t){var e=this._viewportRect;t.x=(t.x-e.x)/this._scaleX,t.y=(t.y-e.y)/this._scaleY},i._updateAdaptResult=function(t,e,i){var n;S.director.root.resize(t,e,void 0===i||0===i?1:i);var r=this._designResolutionSize.width,s=this._designResolutionSize.height;t>0&&e>0?this.setDesignResolutionSize(r,s,this._resolutionPolicy):W(!1,"_updateAdaptResult Invalid size."),this.emit("canvas-resize"),null===(n=this._resizeCallback)||void 0===n||n.call(this)},e}(zs(Ml)));hB.instance=void 0;var uB=function(){function t(){this.name="ContainerStrategy"}var e=t.prototype;return e.preApply=function(){},e.apply=function(){},e.postApply=function(){},e._setupCanvas=function(){var t=S.game.canvas;if(t){var e=ya.windowSize;t.width!==e.width&&(t.width=e.width),t.height!==e.height&&(t.height=e.height)}},t}();uB.EQUAL_TO_FRAME=void 0,uB.PROPORTION_TO_FRAME=void 0;var lB=function(){function t(){this.name="ContentStrategy",this._result={scale:[1,1],viewport:null},this._strategy=vB.UNKNOWN}var e=t.prototype;return e.preApply=function(){},e.apply=function(){return{scale:[1,1]}},e.postApply=function(){},e._buildResult=function(t,e,i,n,r,s){Math.abs(t-i)<2&&(i=t),Math.abs(e-n)<2&&(n=e);var a=new Jn(Math.round((t-i)/2),Math.round((e-n)/2),i,n);return this._result.scale=[r,s],this._result.viewport=a,this._result},n(t,[{key:"strategy",get:function(){return this._strategy}}]),t}(),cB=function(t){function e(){var e;return(e=t.call(this)||this).name="EqualToFrame",e}return s(e,t),e.prototype.apply=function(){ga.isProportionalToFrame=!1,this._setupCanvas()},e}(uB),_B=function(t){function e(){var e;return(e=t.call(this)||this).name="ProportionalToFrame",e}return s(e,t),e.prototype.apply=function(){ga.isProportionalToFrame=!0,this._setupCanvas()},e}(uB);uB.EQUAL_TO_FRAME=new cB,uB.PROPORTION_TO_FRAME=new _B;var fB=function(t){function e(){var e;return(e=t.call(this)||this).name="ExactFit",e._strategy=vB.EXACT_FIT,e}return s(e,t),e.prototype.apply=function(t,e){var i=ya.windowSize,n=i.width,r=i.height,s=n/e.width,a=r/e.height;return this._buildResult(n,r,n,r,s,a)},e}(lB),dB=function(t){function e(){var e;return(e=t.call(this)||this).name="ShowAll",e._strategy=vB.SHOW_ALL,e}return s(e,t),e.prototype.apply=function(t,e){var i,n,r=ya.windowSize,s=r.width,a=r.height,o=e.width,h=e.height,u=s/o,l=a/h,c=0;return u<l?(i=s,n=h*(c=u)):(i=o*(c=l),n=a),this._buildResult(s,a,i,n,c,c)},e}(lB),pB=function(t){function e(){var e;return(e=t.call(this)||this).name="NoBorder",e._strategy=vB.NO_BORDER,e}return s(e,t),e.prototype.apply=function(t,e){var i,n,r,s=ya.windowSize,a=s.width,o=s.height,h=e.width,u=e.height,l=a/h,c=o/u;return l<c?(n=h*(i=c),r=o):(n=a,r=u*(i=l)),this._buildResult(a,o,n,r,i,i)},e}(lB),mB=function(t){function e(){var e;return(e=t.call(this)||this).name="FixedHeight",e._strategy=vB.FIXED_HEIGHT,e}return s(e,t),e.prototype.apply=function(t,e){var i=ya.windowSize,n=i.width,r=i.height,s=r/e.height,a=n,o=r;return this._buildResult(n,r,a,o,s,s)},e}(lB),gB=function(t){function e(){var e;return(e=t.call(this)||this).name="FixedWidth",e._strategy=vB.FIXED_WIDTH,e}return s(e,t),e.prototype.apply=function(t,e){var i=ya.windowSize,n=i.width,r=i.height,s=n/e.width,a=n,o=r;return this._buildResult(n,r,a,o,s,s)},e}(lB),vB=t("h3",function(){function t(t,e){this.name="ResolutionPolicy",this._containerStrategy=t,this._contentStrategy=e}var e=t.prototype;return e.preApply=function(t){this._contentStrategy.preApply(t)},e.apply=function(t,e){return this._containerStrategy.apply(t,e),this._contentStrategy.apply(t,e)},e.postApply=function(t){this._contentStrategy.postApply(t)},e.setContainerStrategy=function(t){this._containerStrategy=t},e.setContentStrategy=function(t){this._contentStrategy=t},e.getContentStrategy=function(){return this._contentStrategy},n(t,[{key:"canvasSize",get:function(){return ya.windowSize}}]),t}());vB.EXACT_FIT=0,vB.NO_BORDER=1,vB.SHOW_ALL=2,vB.FIXED_HEIGHT=3,vB.FIXED_WIDTH=4,vB.UNKNOWN=5,vB.ContainerStrategy=uB,vB.ContentStrategy=lB,S.ResolutionPolicy=vB,lB.EXACT_FIT=new fB,lB.SHOW_ALL=new dB,lB.NO_BORDER=new pB,lB.FIXED_HEIGHT=new mB,lB.FIXED_WIDTH=new gB;var yB=t("h4",hB.instance=S.view=new hB);ID.registerSystem("view",yB,0),S.winSize=aB;var SB=new jn;new L_(null);var TB=function(){var t=e.prototype;function e(){this.settings=void 0,this._curTime=0,this.device=void 0,this.swapchain=void 0,this.shader=void 0,this.sampler=void 0,this.cmdBuff=void 0,this.quadAssmebler=void 0,this.vertexBuffers=void 0,this.indicesBuffers=void 0,this.renderArea=void 0,this.clearColors=void 0,this.projection=void 0,this.isMobile=!1,this.bgMat=void 0,this.bgImage=void 0,this.bgTexture=void 0,this.logoMat=void 0,this.logoImage=void 0,this.logoTexture=void 0,this.watermarkMat=void 0,this.watermarkTexture=void 0,this.bgWidth=1920,this.bgHeight=1080,this.logoWidthTemp=140,this.logoHeightTemp=200,this.logoWidth=0,this.logoHeight=0,this.logoXTrans=.5,this.logoYTrans=1/6+2.5/6,this.textSize=24,this.textHeight=24,this.textXTrans=.5,this.textYExtraTrans=32,this.textExpandSize=4,this.scaleSize=1}return t.init=function(){var t,e,i,n,r,s,a,o=this,h=vB.SHOW_ALL,u=Me.querySettings(De.Category.SCREEN,"designResolution");if(null!==u&&(h=u.policy),this.settings={policy:null!==(t=h)&&void 0!==t?t:vB.SHOW_ALL,displayRatio:null!==(e=Me.querySettings(De.Category.SPLASH_SCREEN,"displayRatio"))&&void 0!==e?e:.4,totalTime:null!==(i=Me.querySettings(De.Category.SPLASH_SCREEN,"totalTime"))&&void 0!==i?i:3e3,watermarkLocation:null!==(n=Me.querySettings(De.Category.SPLASH_SCREEN,"watermarkLocation"))&&void 0!==n?n:"default",autoFit:null===(r=Me.querySettings(De.Category.SPLASH_SCREEN,"autoFit"))||void 0===r||r,logo:null!==(s=Me.querySettings(De.Category.SPLASH_SCREEN,"logo"))&&void 0!==s?s:void 0,background:null!==(a=Me.querySettings(De.Category.SPLASH_SCREEN,"background"))&&void 0!==a?a:void 0},this._curTime=0,!(this.settings.totalTime<=0||void 0===this.settings.logo||void 0===this.settings.background)){this.device=S.director.root.device,this.swapchain=S.director.root.mainWindow.swapchain,this.preInit(),this.initLayout(),"default"===this.settings.logo.type&&this.initWaterMark();var l=Promise.resolve(),c=Promise.resolve();return"custom"===this.settings.background.type&&(l=new Promise((function(t,e){o.bgImage=new A.Image,o.bgImage.onload=function(){o.initBG(),t()},o.bgImage.onerror=function(){e()},o.bgImage.src=o.settings.background.base64}))),"none"!==this.settings.logo.type&&(c=new Promise((function(t,e){o.logoImage=new A.Image,o.logoImage.onload=function(){o.initLogo(),t()},o.logoImage.onerror=function(){e()},o.logoImage.src=o.settings.logo.base64}))),Promise.all([l,c])}return this.settings.totalTime=0,Promise.resolve([])},t.preInit=function(){var t,e=null===(t=this.settings.background)||void 0===t?void 0:t.color;this.clearColors=e?[new t_(e.x,e.y,e.z,e.w)]:[new t_(0,0,0,1)];var i=this.device,n=this.swapchain;this.renderArea=new jc(0,0,n.width,n.height),this.cmdBuff=i.commandBuffer;var r=new Float32Array([.5,.5,1,0,-.5,.5,0,0,.5,-.5,1,1,-.5,-.5,0,1]),s=4*Float32Array.BYTES_PER_ELEMENT,a=4*s;this.vertexBuffers=i.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,a,s)),this.vertexBuffers.update(r);var o=new Uint16Array([0,1,2,1,3,2]),h=Uint16Array.BYTES_PER_ELEMENT,u=6*h;this.indicesBuffers=i.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,u,h)),this.indicesBuffers.update(o);var l=[new T_("a_position",ec.RG32F),new T_("a_texCoord",ec.RG32F)],c=new b_(l,[this.vertexBuffers],this.indicesBuffers);this.quadAssmebler=i.createInputAssembler(c),this.projection=new Vn,Vn.ortho(this.projection,-1,1,-1,1,-1,1,i.capabilities.clipSpaceMinZ,i.capabilities.clipSpaceSignY,n.surfaceTransform),this.isMobile=Sa.isMobile},t.initLayout=function(){this.isMobile?(this.bgWidth=812,this.bgHeight=375,this.logoWidthTemp=70,this.logoHeightTemp=100,this.textSize=12,this.textHeight=this.textSize+this.textExpandSize,this.textXTrans=.5,this.textYExtraTrans=16):(this.bgWidth=1920,this.bgHeight=1080,this.logoWidthTemp=140,this.logoHeightTemp=200,this.textSize=24,this.textHeight=this.textSize+this.textExpandSize,this.textXTrans=.5,this.textYExtraTrans=32),this.logoXTrans=.5,this.logoYTrans=1/6+2.5/6,this.initScale()},t.initScale=function(){var t=this.swapchain.width,e=this.swapchain.height,i=this.isMobile?375:1080,n=this.isMobile?812:1920;if(t>e){var r=n;n=i,i=r}this.scaleSize=t/e>16/9?e/n:t/i},t.update=function(t){var e=this.settings,i=this.device,n=this.swapchain;Vn.ortho(this.projection,-1,1,-1,1,-1,1,i.capabilities.clipSpaceMinZ,i.capabilities.clipSpaceSignY,n.surfaceTransform);var r=n.width,s=n.height;this.initScale(),this._curTime+=1e3*t;var a=oh(ki(this._curTime/e.totalTime)),o=1,h=1;"custom"===this.settings.background.type&&(this.settings.policy===vB.FIXED_WIDTH?(o=r,h=r/this.bgImage.width*this.bgImage.height):this.settings.policy===vB.FIXED_HEIGHT?(o=s/this.bgImage.height*this.bgImage.width,h=s):this.settings.policy===vB.SHOW_ALL?this.bgImage.width/this.bgHeight>r/s?(o=r,h=r/this.bgImage.width*this.bgImage.height):(o=s/this.bgImage.height*this.bgImage.width,h=s):this.settings.policy===vB.NO_BORDER?this.bgImage.width/this.bgImage.height>r/s?(o=s/this.bgImage.height*this.bgImage.width,h=s):(o=r,h=r/this.bgImage.width*this.bgImage.height):(o=r,h=s),this.bgMat.setProperty("resolution",SB.set(r,s),0),this.bgMat.setProperty("scale",SB.set(o,h),0),this.bgMat.setProperty("translate",SB.set(.5*r,.5*s),0),this.bgMat.setProperty("percent",1),this.bgMat.setProperty("u_projection",this.projection),this.bgMat.passes[0].update());var u=s*this.logoYTrans;if("none"!==this.settings.logo.type&&(h=.185*s*e.displayRatio,o=this.logoWidth*(.185*s/this.logoHeight)*e.displayRatio,this.logoMat.setProperty("resolution",SB.set(r,s),0),this.logoMat.setProperty("scale",SB.set(o,h),0),this.logoMat.setProperty("translate",SB.set(r*this.logoXTrans,u),0),this.logoMat.setProperty("percent",a),this.logoMat.setProperty("u_projection",this.projection),this.logoMat.passes[0].update()),"default"===this.settings.logo.type&&this.watermarkMat){var l=this.watermarkTexture.width,c=this.watermarkTexture.height;o=l,h=c;var _=u-(.5*this.logoHeight*e.displayRatio+this.textYExtraTrans)*this.scaleSize-.5*c;this.watermarkMat.setProperty("resolution",SB.set(r,s),0),this.watermarkMat.setProperty("scale",SB.set(o,h),0),this.watermarkMat.setProperty("translate",SB.set(r*this.textXTrans,_),0),this.watermarkMat.setProperty("percent",a),this.watermarkMat.setProperty("u_projection",this.projection),this.watermarkMat.passes[0].update()}this.frame()},t.initBG=function(){var t=this.device;this.bgMat=new zT,this.bgMat.initialize({effectName:"util/splash-screen"});var e=new c_;e.addressU=pc.CLAMP,e.addressV=pc.CLAMP,e.addressW=pc.CLAMP,this.sampler=t.getSampler(e),this.bgTexture=t.createTexture(new u_(hc.TEX2D,uc.SAMPLED|uc.TRANSFER_DST,ec.RGBA8,this.bgImage.width,this.bgImage.height));var i=this.bgMat.passes[0],n=i.getBinding("mainTexture");i.bindTexture(n,this.bgTexture),this.shader=i.getShaderVariant();var r=i.descriptorSet;r.bindSampler(n,this.sampler),r.update();var s=new Jc;s.texExtent.width=this.bgImage.width,s.texExtent.height=this.bgImage.height,s.texExtent.depth=1,t.copyTexImagesToTexture([this.bgImage],this.bgTexture,[s])},t.initLogo=function(){var t=this.device;this.logoMat=new zT,this.logoMat.initialize({effectName:"util/splash-screen"});var e=new c_;e.addressU=pc.CLAMP,e.addressV=pc.CLAMP,e.addressW=pc.CLAMP,this.sampler=t.getSampler(e),this.logoTexture=t.createTexture(new u_(hc.TEX2D,uc.SAMPLED|uc.TRANSFER_DST,ec.RGBA8,this.logoImage.width,this.logoImage.height));var i=this.logoMat.passes[0],n=i.getBinding("mainTexture");i.bindTexture(n,this.logoTexture),this.shader=i.getShaderVariant();var r=i.descriptorSet;r.bindSampler(n,this.sampler),r.update();var s=new Jc;s.texExtent.width=this.logoImage.width,s.texExtent.height=this.logoImage.height,s.texExtent.depth=1,t.copyTexImagesToTexture([this.logoImage],this.logoTexture,[s]);var a=this.logoImage.width/this.logoImage.height;a<1?(this.logoWidth=this.logoWidthTemp,this.logoHeight=this.logoWidthTemp/a):(this.logoWidth=this.logoHeightTemp*a,this.logoHeight=this.logoHeightTemp)},t.initWaterMark=function(){var t=A.document.createElement("canvas");t.height=this.textHeight*this.scaleSize,t.style.width=""+t.width,t.style.height=""+t.height;var e="Created with Cocos",i=t.getContext("2d");i.font=this.textSize*this.scaleSize+"px Arial",i.textBaseline="top",i.textAlign="center",i.fillStyle="#707070";var n=i.measureText(e).width+10;t.width=n,i.font=this.textSize*this.scaleSize+"px Arial",i.textBaseline="top",i.textAlign="center",i.fillStyle="#707070",i.fillText(e,t.width/2,0);var r=new Jc;r.texExtent.width=t.width,r.texExtent.height=t.height,r.texExtent.depth=1,this.watermarkTexture=this.device.createTexture(new u_(hc.TEX2D,uc.SAMPLED|uc.TRANSFER_DST,ec.RGBA8,t.width,t.height)),this.device.copyTexImagesToTexture([t],this.watermarkTexture,[r]),this.watermarkMat=new zT,this.watermarkMat.initialize({effectName:"util/splash-screen"});var s=this.watermarkMat.passes[0],a=s.getBinding("mainTexture");s.bindTexture(a,this.watermarkTexture),s.descriptorSet.update()},t.frame=function(){var t=this.device,e=this.swapchain;if(!Sa.isXR||xr.entry.isRenderAllowable())for(var i=Sa.isXR?2:1,n=0;n<i;n++){if(Sa.isXR){xr.entry.renderLoopStart(n);var r=xr.entry.getEyeFov(n),s=1,a=1;n===sI.LEFT?s=Math.abs(Math.tan(r[0]))/Math.abs(Math.tan(r[1])):n===sI.RIGHT&&(a=Math.abs(Math.tan(r[1]))/Math.abs(Math.tan(r[0]))),Vn.ortho(this.projection,-s,a,-1,1,-1,1,t.capabilities.clipSpaceMinZ,t.capabilities.clipSpaceSignY,e.surfaceTransform),this.projection.m00=Gn[e.surfaceTransform][0],this.projection.m05=Gn[e.surfaceTransform][3]*t.capabilities.clipSpaceSignY,"custom"===this.settings.background.type&&(this.bgMat.setProperty("u_projection",this.projection),this.bgMat.passes[0].update()),"none"!==this.settings.logo.type&&(this.logoMat.setProperty("u_projection",this.projection),this.logoMat.passes[0].update()),"default"===this.settings.logo.type&&this.watermarkMat&&(this.watermarkMat.setProperty("u_projection",this.projection),this.watermarkMat.passes[0].update())}t.enableAutoBarrier(!0),t.acquire([e]);var o=this.cmdBuff,h=S.director.root.mainWindow.framebuffer,u=this.renderArea;u.width=e.width,u.height=e.height,o.begin(),o.beginRenderPass(h.renderPass,h,u,this.clearColors,1,0);var l=S.director.root.pipeline;if("custom"===this.settings.background.type){var c=this.bgMat.passes[0],_=GT.getOrCreatePipelineState(t,c,this.shader,h.renderPass,this.quadAssmebler);o.bindPipelineState(_),o.bindDescriptorSet(Og.GLOBAL,l.descriptorSet),o.bindDescriptorSet(Og.MATERIAL,c.descriptorSet),o.bindInputAssembler(this.quadAssmebler),o.draw(this.quadAssmebler)}if("none"!==this.settings.logo.type){var f=this.logoMat.passes[0],d=GT.getOrCreatePipelineState(t,f,this.shader,h.renderPass,this.quadAssmebler);o.bindPipelineState(d),o.bindDescriptorSet(Og.GLOBAL,l.descriptorSet),o.bindDescriptorSet(Og.MATERIAL,f.descriptorSet),o.bindInputAssembler(this.quadAssmebler),o.draw(this.quadAssmebler)}if("default"===this.settings.logo.type&&this.watermarkMat){var p=this.watermarkMat.passes[0],m=GT.getOrCreatePipelineState(t,p,this.shader,h.renderPass,this.quadAssmebler);o.bindPipelineState(m),o.bindDescriptorSet(Og.GLOBAL,l.descriptorSet),o.bindDescriptorSet(Og.MATERIAL,p.descriptorSet),o.bindInputAssembler(this.quadAssmebler),o.draw(this.quadAssmebler)}o.endRenderPass(),o.end(),t.flushCommands([o]),t.queue.submit([o]),t.present(),t.enableAutoBarrier(!S.rendering),Sa.isXR&&xr.entry.renderLoopEnd(n)}},t.destroy=function(){this.device=null,this.swapchain=null,this.clearColors=null,"custom"===this.settings.background.type&&(this.bgImage.destroy&&this.bgImage.destroy(),this.bgImage=null,this.bgMat.destroy(),this.bgMat=null,this.bgTexture.destroy(),this.bgTexture=null),"none"!==this.settings.logo.type&&(this.logoImage.destroy&&this.logoImage.destroy(),this.logoImage=null,this.logoMat.destroy(),this.logoMat=null,this.logoTexture.destroy(),this.logoTexture=null),this.renderArea=null,this.cmdBuff=null,this.shader=null,this.quadAssmebler.destroy(),this.quadAssmebler=null,this.vertexBuffers.destroy(),this.vertexBuffers=null,this.indicesBuffers.destroy(),this.indicesBuffers=null,this.sampler=null,"default"===this.settings.logo.type&&this.watermarkTexture&&(this.watermarkMat.destroy(),this.watermarkMat=null,this.watermarkTexture.destroy(),this.watermarkTexture=null),this.settings=null},n(e,[{key:"isFinished",get:function(){return this._curTime>=this.settings.totalTime}},{key:"curTime",get:function(){return this._curTime},set:function(t){this._curTime=t}}],[{key:"instance",get:function(){return e._ins||(e._ins=new e),e._ins}}]),e}();TB._ins=void 0,S.internal.SplashScreen=TB;var AB=new(function(){function t(){this._data=null}return t.prototype.init=function(t){var e=this;return void 0===t&&(t=""),S.rendering&&S.rendering.enableEffectImport&&t?new Promise((function(i,n){var r=new XMLHttpRequest;r.open("GET",t),r.responseType="arraybuffer",r.onload=function(){e._data=r.response,i()},r.onerror=function(){n(new Error("request effect settings failed!"))},r.send(null)})):Promise.resolve()},n(t,[{key:"data",get:function(){return this._data}}]),t}());S.effectSettings=AB;var bB=t("dS",function(t){function i(){var e;return(e=t.call(this)||this).frame=null,e.container=null,e.canvas=null,e.renderType=-1,e.eventTargetOn=t.prototype.on,e.eventTargetOnce=t.prototype.once,e.config={},e.onStart=null,e.frameTime=1e3/60,e._isCloning=!1,e._inited=!1,e._engineInited=!1,e._rendererInitialized=!1,e._paused=!0,e._pausedByEngine=!1,e._frameRate=60,e._pacer=null,e._initTime=0,e._startTime=0,e._deltaTime=0,e._useFixedDeltaTime=!1,e._shouldLoadLaunchScene=!0,e.onPreBaseInitDelegate=new Qs,e.onPostBaseInitDelegate=new Qs,e.onPreInfrastructureInitDelegate=new Qs,e.onPostInfrastructureInitDelegate=new Qs,e.onPreSubsystemInitDelegate=new Qs,e.onPostSubsystemInitDelegate=new Qs,e.onPreProjectInitDelegate=new Qs,e.onPostProjectInitDelegate=new Qs,e}s(i,t);var r=i.prototype;return r.setFrameRate=function(t){this.frameRate=t},r.getFrameRate=function(){return this.frameRate},r.step=function(){ID.tick(this._calculateDT(!0))},r.pauseByEngine=function(){this._paused||(this._pausedByEngine=!0,this.pause())},r.resumeByEngine=function(){this._pausedByEngine&&(this.resume(),this._pausedByEngine=!1)},r.pause=function(){var t;this._paused||(this._paused=!0,null===(t=this._pacer)||void 0===t||t.stop(),this.emit(i.EVENT_PAUSE))},r.resume=function(){var t;this._paused&&(kw._clearEvents(),this._paused=!1,null===(t=this._pacer)||void 0===t||t.start(),this.emit(i.EVENT_RESUME))},r.isPaused=function(){return this._paused},r.restart=function(){var t=this;return new Promise((function(t){ID.once(wD.EVENT_END_FRAME,(function(){return t()}))})).then((function(){ID.reset(),S.Object._deferredDestroy(),t.pause(),t.resume(),t._shouldLoadLaunchScene=!0,TB.instance.curTime=0,t._safeEmit(i.EVENT_RESTART)}))},r.end=function(){Zs.close()},r.on=function(t,e,i,n){return this.canRegisterEvent(t)&&e.call(i),this.eventTargetOn(t,e,i,n)},r.once=function(t,e,i){return this.canRegisterEvent(t)?e.call(i):this.eventTargetOnce(t,e,i)},r.canRegisterEvent=function(t){return this._engineInited&&t===i.EVENT_ENGINE_INITED||this._inited&&t===i.EVENT_GAME_INITED||this._rendererInitialized&&t===i.EVENT_RENDERER_INITED},r.init=function(t){var n=this;return this._compatibleWithOldParams(t),Promise.resolve().then((function(){return n.emit(i.EVENT_PRE_BASE_INIT),n.onPreBaseInitDelegate.dispatch()})).then((function(){j(t.debugMode||nt.NONE)})).then((function(){return Sa.init()})).then((function(){n._initEvents()})).then((function(){return Me.init(t.settingsPath,t.overrideSettings)})).then((function(){return n.emit(i.EVENT_POST_BASE_INIT),n.onPostBaseInitDelegate.dispatch()})).then((function(){return n.emit(i.EVENT_PRE_INFRASTRUCTURE_INIT),n.onPreInfrastructureInitDelegate.dispatch()})).then((function(){Pe.init(),n._initXR();var t={frame:document.querySelector("#GameDiv"),container:document.querySelector("#Cocos3dGameContainer"),canvas:document.querySelector("#GameCanvas")};return t&&(n.canvas=t.canvas,n.frame=t.frame,n.container=t.container),ya.init(),jl.init(),Ff.init(n.canvas,kg)})).then((function(){if(Me.querySettings(De.Category.RENDERING,"customPipeline")){if(!S.rendering)return void it(12109);Pe.CUSTOM_PIPELINE_NAME||(Pe.CUSTOM_PIPELINE_NAME="Builtin")}else S.rendering=void 0;vT.init(),bT.init(),dm.init(),n.initPacer()})).then((function(){return n.emit(i.EVENT_POST_INFRASTRUCTURE_INIT),n.onPostInfrastructureInitDelegate.dispatch()})).then((function(){return n.emit(i.EVENT_PRE_SUBSYSTEM_INIT),n.onPreSubsystemInitDelegate.dispatch()})).then((function(){return AB.init(Me.querySettings(De.Category.RENDERING,"effectSettingsPath"))})).then((function(){if(S.rendering&&S.rendering.enableEffectImport)if(Me.querySettings(De.Category.RENDERING,"renderMode")!==Bf.HEADLESS){var t=AB.data;null!==t?S.rendering.init(Ff.gfxDevice,t):it(1102)}else S.rendering.init(Ff.gfxDevice,null)})).then((function(){var t=Me.querySettings(De.Category.SCRIPTING,"scriptPackages");return t?Promise.all(t.map((function(t){return e.import(t)}))):Promise.resolve([])})).then((function(){return ID.init(),bT.loadBuiltinAssets()})).then((function(){return n.emit(i.EVENT_POST_SUBSYSTEM_INIT),n.onPostSubsystemInitDelegate.dispatch()})).then((function(){U("Cocos Creator v"+T),n.emit(i.EVENT_ENGINE_INITED),n._engineInited=!0})).then((function(){return n.emit(i.EVENT_PRE_PROJECT_INIT),n.onPreProjectInitDelegate.dispatch()})).then((function(){var t=Me.querySettings(De.Category.PLUGINS,"jsList"),e=Promise.resolve();return t&&t.forEach((function(t){e=e.then((function(){return e="src/"+t,new Promise((function(t,i){var n;function r(t){t.filename===e&&(n=t.error)}window.addEventListener("error",r);var s=document.createElement("script");s.charset="utf-8",s.async=!0,s.crossOrigin="anonymous",s.addEventListener("error",(function(){window.removeEventListener("error",r),i(Error("Error loading "+e))})),s.addEventListener("load",(function(){window.removeEventListener("error",r),document.head.removeChild(s),n?i(n):t()})),s.src=e.replace("#","%23"),document.head.appendChild(s)}));var e}))})),e})).then((function(){return n._loadProjectBundles()})).then((function(){return n._loadCCEScripts()})).then((function(){return n._setupRenderPipeline()})).then((function(){return n._loadPreloadAssets()})).then((function(){return bT.compileBuiltinMaterial(),TB.instance.init()})).then((function(){return n.emit(i.EVENT_POST_PROJECT_INIT),n.onPostProjectInitDelegate.dispatch()})).then((function(){n._inited=!0,n._safeEmit(i.EVENT_GAME_INITED)}))},r._initXR=function(){var t;if(void 0===globalThis.__globalXR&&(globalThis.__globalXR={}),globalThis.__globalXR.webxrCompatible=null!==(t=Me.querySettings(De.Category.XR,"webxrCompatible"))&&void 0!==t&&t,Sa.isXR){var e,i;xr.entry=xr.XrEntry.getInstance();var n=null!==(e=Me.querySettings(De.Category.RENDERING,"msaa"))&&void 0!==e?e:1,r=null!==(i=Me.querySettings(De.Category.RENDERING,"renderingScale"))&&void 0!==i?i:1;xr.entry.setMultisamplesRTT(n),xr.entry.setRenderingScale(r)}},r._compatibleWithOldParams=function(t){var e=t.overrideSettings=t.overrideSettings||{};"showFPS"in t&&(e.profiling=e.profiling||{},e.profiling.showFPS=t.showFPS),"frameRate"in t&&(e.screen=e.screen||{},e.screen.frameRate=t.frameRate),"renderMode"in t&&(e.rendering=e.rendering||{},e.rendering.renderMode=t.renderMode),"renderPipeline"in t&&(e.rendering=e.rendering||{},e.rendering.renderPipeline=t.renderPipeline),"assetOptions"in t&&(e.assets=e.assets||{},Object.assign(e.assets,t.assetOptions)),"customJointTextureLayouts"in t&&(e.animation=e.animation||{},e.animation.customJointTextureLayouts=t.customJointTextureLayouts),"physics"in t&&(e.physics=e.physics||{},Object.assign(e.physics,t.physics)),"orientation"in t&&(e.screen=e.screen||{},e.screen.orientation=t.orientation),"exactFitScreen"in t&&(e.screen=e.screen||{},e.screen.exactFitScreen=t.exactFitScreen)},r._loadPreloadAssets=function(){var t=Me.querySettings(De.Category.ASSETS,"preloadAssets");return t?Promise.all(t.map((function(t){return new Promise((function(e,i){vT.loadAny(t,(function(t){t?i(t):e()}))}))}))):Promise.resolve([])},r._loadCCEScripts=function(){return new Promise((function(t){t()}))},r._loadProjectBundles=function(){var t=Me.querySettings(De.Category.ASSETS,"preloadBundles");return t?Promise.all(t.map((function(t){var e=t.bundle,i=t.version;return new Promise((function(t,n){var r={};i&&(r.version=i),vT.loadBundle(e,r,(function(e){e?n(e):t()}))}))}))):Promise.resolve([])},r.run=function(t){t&&(this.onStart=t),this._inited&&this.resume()},r._calculateDT=function(t){if(this._useFixedDeltaTime=t,t)return this._startTime=performance.now(),this.frameTime/1e3;var e=performance.now();return this._deltaTime=e>this._startTime?(e-this._startTime)/1e3:0,this._deltaTime>i.DEBUG_DT_THRESHOLD&&(this._deltaTime=this.frameTime/1e3),this._startTime=e,this._deltaTime},r._updateCallback=function(){var t=this;if(this._inited)if(TB.instance.isFinished)if(this._shouldLoadLaunchScene){this._shouldLoadLaunchScene=!1;var e,i=Me.querySettings(De.Category.LAUNCH,"launchScene");i?ID.loadScene(i,(function(){var e;Q(1103,i),t._initTime=performance.now(),ID.startAnimation(),null===(e=t.onStart)||void 0===e||e.call(t)})):(this._initTime=performance.now(),ID.startAnimation(),null===(e=this.onStart)||void 0===e||e.call(this))}else ID.tick(this._calculateDT(!1));else TB.instance.update(this._calculateDT(!1))},r.initPacer=function(){var t,e=null!==(t=Me.querySettings(De.Category.SCREEN,"frameRate"))&&void 0!==t?t:60;W("number"==typeof e),this._pacer=new DD,this._pacer.onTick=this._updateCallback.bind(this),this.frameRate=e},r._initEvents=function(){Zs.on("show",this._onShow,this),Zs.on("hide",this._onHide,this),Zs.on("close",this._onClose,this)},r._onHide=function(){this.emit(i.EVENT_HIDE),this.pauseByEngine()},r._onShow=function(){this.emit(i.EVENT_SHOW),this.resumeByEngine()},r._onClose=function(){this.emit(i.EVENT_CLOSE),Zs.exit()},r.addPersistRootNode=function(t){ID.addPersistRootNode(t)},r.removePersistRootNode=function(t){ID.removePersistRootNode(t)},r.isPersistRootNode=function(t){return ID.isPersistRootNode(t)},r._setupRenderPipeline=function(){var t=Me.querySettings(De.Category.RENDERING,"customPipeline");return this._setRenderPipeline(!!t)},r._setRenderPipeline=function(t){ID.root.setRenderPipeline(t)?(this._rendererInitialized=!0,this._safeEmit(i.EVENT_RENDERER_INITED)):it(1222)},r._safeEmit=function(t){this.emit(t)},n(i,[{key:"inited",get:function(){return this._inited}},{key:"frameRate",get:function(){return this._frameRate},set:function(t){"number"!=typeof t&&(t=parseInt(t,10),Number.isNaN(t)&&(t=60)),this._frameRate=t,this.frameTime=1e3/t,this._pacer&&(this._pacer.targetFrameRate=this._frameRate)}},{key:"deltaTime",get:function(){return this._useFixedDeltaTime?this.frameTime/1e3:this._deltaTime}},{key:"totalTime",get:function(){return performance.now()-this._initTime}},{key:"frameStartTime",get:function(){return this._startTime}}]),i}(Hs));bB.EVENT_HIDE="game_on_hide",bB.EVENT_SHOW="game_on_show",bB.EVENT_LOW_MEMORY="game_on_low_memory",bB.EVENT_GAME_INITED="game_inited",bB.EVENT_ENGINE_INITED="engine_inited",bB.EVENT_RENDERER_INITED="renderer_inited",bB.EVENT_PRE_BASE_INIT="pre_base_init",bB.EVENT_POST_BASE_INIT="post_base_init",bB.EVENT_PRE_INFRASTRUCTURE_INIT="pre_infrastructure_init",bB.EVENT_POST_INFRASTRUCTURE_INIT="post_infrastructure_init",bB.EVENT_PRE_SUBSYSTEM_INIT="pre_subsystem_init",bB.EVENT_POST_SUBSYSTEM_INIT="post_subsystem_init",bB.EVENT_PRE_PROJECT_INIT="pre_project_init",bB.EVENT_POST_PROJECT_INIT="post_project_init",bB.EVENT_RESTART="game_on_restart",bB.EVENT_PAUSE="game_on_pause",bB.EVENT_RESUME="game_on_resume",bB.EVENT_CLOSE="game_on_close",bB.RENDER_TYPE_CANVAS=0,bB.RENDER_TYPE_WEBGL=1,bB.RENDER_TYPE_OPENGL=2,bB.RENDER_TYPE_HEADLESS=3,bB.DEBUG_DT_THRESHOLD=1,S.Game=bB;var EB=t("dT",S.game=new bB);ct(wD.prototype,"director",[{name:"calculateDeltaTime"},{name:"getDeltaTime",suggest:"Use game.deltaTime instead"},{name:"getTotalTime",suggest:"Use game.totalTime instead"},{name:"getCurrentTime",suggest:"Use game.frameStartTime instead"}]),lt(wD.prototype,"director",[{name:"setAnimationInterval",suggest:"please use game.frameRate instead"},{name:"getAnimationInterval",suggest:"please use game.frameRate instead"},{name:"getRunningScene",suggest:"please use getScene instead"},{name:"setDepthTest",suggest:"please use camera API instead"},{name:"setClearColor",suggest:"please use camera API instead"},{name:"getWinSize",suggest:"please use view.getVisibleSize instead"},{name:"getWinSizeInPixels"},{name:"purgeCachedData",suggest:"please use assetManager.releaseAll instead"},{name:"convertToGL"},{name:"convertToUI"}]),ut(ID,"director",[{name:"_getSceneUuid",targetName:"assetManager.main",newName:"getSceneInfo",customFunction:function(t){var e;return vT.main?null===(e=vT.main.getSceneInfo(t))||void 0===e?void 0:e.uuid:""}}]),ct(EB,"game",[{name:"collisionMatrix"},{name:"groupList"}]),ut(EB,"game",[{name:"_sceneInfos",targetName:"assetManager.main",newName:"getSceneInfo",customGetter:function(){var t=[];return vT.main&&vT.main.config.scenes.forEach((function(e){t.push(e)})),t}}]);var CB=t("a4",function(t){function e(){var e;return(e=t.call(this)||this)._atlases=[],e._atlasIndex=-1,e._maxAtlasCount=5,e._textureSize=2048,e._maxFrameSize=512,e._textureBleeding=!0,e._enabled=!1,e}s(e,t);var i=e.prototype;return i.newAtlas=function(){var t=this._atlases[++this._atlasIndex];return!t&&this._atlasIndex<this.maxAtlasCount&&(t=new cm(this._textureSize,this._textureSize),this._atlases.push(t)),t},i.beforeSceneLoad=function(){this.reset()},i.init=function(){this.enabled=!Pe.CLEANUP_IMAGE_CACHE},i.insertSpriteFrame=function(t){if(!this._enabled||this._atlasIndex>=this._maxAtlasCount||!t||t.original)return null;if(!t.packable)return null;var e=t.texture.getSamplerInfo();if(e.minFilter!==dc.LINEAR||e.magFilter!==dc.LINEAR||e.mipFilter!==dc.NONE)return null;var i=this._atlases[this._atlasIndex];i||(i=this.newAtlas());var n=i?i.insertSpriteFrame(t):null;return!n&&this._atlasIndex<this._maxAtlasCount?(i=this.newAtlas())?i.insertSpriteFrame(t):null:n},i.reset=function(){for(var t=0,e=this._atlases.length;t<e;t++)this._atlases[t].destroy();this._atlases.length=0,this._atlasIndex=-1},i.deleteAtlasSpriteFrame=function(t){if(t.original){for(var e=this._atlases.length-1;e>=0;e--)this._atlases[e].removeSpriteFrame(t);var i=t.original._texture;this.deleteAtlasTexture(i)}},i.deleteAtlasTexture=function(t){if(t)for(var e=this._atlases.length-1;e>=0;e--)this._atlases[e].deleteInnerTexture(t),this._atlases[e].isEmpty()&&(this._atlases[e].destroy(),this._atlases.splice(e,1),this._atlasIndex--)},i.packToDynamicAtlas=function(t,e){if(this._enabled&&e&&!e.original&&e.packable&&e.texture&&e.texture.width>0&&e.texture.height>0){var i=this.insertSpriteFrame(e);i&&e._setDynamicAtlasFrame(i)}},n(e,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled!==t&&(t?(this.reset(),S.director.on(S.Director.EVENT_BEFORE_SCENE_LAUNCH,this.beforeSceneLoad,this)):(this.reset(),S.director.off(S.Director.EVENT_BEFORE_SCENE_LAUNCH,this.beforeSceneLoad,this)),this._enabled=t)}},{key:"maxAtlasCount",get:function(){return this._maxAtlasCount},set:function(t){this._maxAtlasCount=t}},{key:"atlasCount",get:function(){return this._atlases.length}},{key:"textureBleeding",get:function(){return this._textureBleeding},set:function(t){this._textureBleeding=t}},{key:"textureSize",get:function(){return this._textureSize},set:function(t){this._textureSize=t}},{key:"maxFrameSize",get:function(){return this._maxFrameSize},set:function(t){this._maxFrameSize=t}}]),e}(Ml));CB.instance=void 0;var xB,wB=t("a5",CB.instance=new CB);ID.registerSystem("dynamicAtlasManager",wB,0),S.internal.dynamicAtlasManager=wB,function(t){t[t.positions=Uc.ATTR_POSITION]="positions",t[t.normals=Uc.ATTR_NORMAL]="normals",t[t.uvs=Uc.ATTR_TEX_COORD]="uvs",t[t.colors=Uc.ATTR_COLOR]="colors"}(xB||(xB={}));var RB=function(){function t(){this._arrayBufferOrPaddings=[],this._length=0}var e=t.prototype;return e.setNextAlignment=function(t){if(0!==t){var e=this._length%t;if(0!==e){var i=t-e;this._arrayBufferOrPaddings.push(i),this._length+=i}}},e.addBuffer=function(t){var e=this._length;return this._arrayBufferOrPaddings.push(t),this._length+=t.byteLength,e},e.getLength=function(){return this._length},e.getCombined=function(){var t=new Uint8Array(this._length),e=0;return this._arrayBufferOrPaddings.forEach((function(i){"number"==typeof i?e+=i:(t.set(new Uint8Array(i),e),e+=i.byteLength)})),t.buffer},t}(),IB=function(){function t(t,e){if(this._subMeshRenderings=[],this._mesh=t,this._mesh.struct.morph){var i=this._mesh.struct.primitives.length;this._subMeshRenderings=new Array(i).fill(null);for(var n=0;n<i;++n){var r=this._mesh.struct.morph.subMeshMorphs[n];r&&(r.targets.length>fv.MAX_MORPH_TARGET_COUNT?this._subMeshRenderings[n]=new BB(this._mesh,n,this._mesh.struct.morph,e):this._subMeshRenderings[n]=new DB(this._mesh,n,this._mesh.struct.morph,e))}}}return t.prototype.createInstance=function(){for(var t=this,e=this._mesh.struct.primitives.length,i=new Array(e),n=0;n<e;++n){var r,s;i[n]=null!==(r=null===(s=this._subMeshRenderings[n])||void 0===s?void 0:s.createInstance())&&void 0!==r?r:null}return{setWeights:function(t,e){var n;null===(n=i[t])||void 0===n||n.setWeights(e)},requiredPatches:function(e){t._mesh.struct.morph;var n=t._mesh.struct.morph.subMeshMorphs[e],r=i[e];if(null===r)return null;var s=[{name:"CC_USE_MORPH",value:!0},{name:"CC_MORPH_TARGET_COUNT",value:n.targets.length}];return n.attributes.includes(Uc.ATTR_POSITION)&&s.push({name:"CC_MORPH_TARGET_HAS_POSITION",value:!0}),n.attributes.includes(Uc.ATTR_NORMAL)&&s.push({name:"CC_MORPH_TARGET_HAS_NORMAL",value:!0}),n.attributes.includes(Uc.ATTR_TANGENT)&&s.push({name:"CC_MORPH_TARGET_HAS_TANGENT",value:!0}),s.push.apply(s,r.requiredPatches()),s},adaptPipelineState:function(t,e){var n;null===(n=i[t])||void 0===n||n.adaptPipelineState(e)},destroy:function(){for(var t=0,e=i;t<e.length;t++){var n=e[t];null==n||n.destroy()}}}},t}(),DB=function(){function t(t,e,i,n){this._gfxDevice=n;var r=i.subMeshMorphs[e];this._subMeshMorph=r,LB(t,e,n);var s=t.struct.vertexBundles[t.struct.primitives[e].vertexBundelIndices[0]].view.count;this._verticesCount=s;var a=r.targets.length,o=OB(n,s*a);this._textureInfo={width:o.width,height:o.height},this._attributes=r.attributes.map((function(e,i){var n=o.create(),a=n.valueView;return r.targets.forEach((function(e,n){for(var r=e.displacements[i],o=new Float32Array(t.data.buffer,t.data.byteOffset+r.offset,r.count),h=s*n*4,u=0;u<s;++u)a[h+4*u+0]=o[3*u+0],a[h+4*u+1]=o[3*u+1],a[h+4*u+2]=o[3*u+2]})),n.updatePixels(),{name:e,morphTexture:n}}))}var e=t.prototype;return e.destroy=function(){for(var t,e=f(this._attributes);!(t=e()).done;)t.value.morphTexture.destroy()},e.createInstance=function(){var t=this,e=new PB(this._gfxDevice,this._subMeshMorph.targets.length);return e.setMorphTextureInfo(this._textureInfo.width,this._textureInfo.height),e.setVerticesCount(this._verticesCount),e.commit(),{setWeights:function(t){e.setWeights(t),e.commit()},requiredPatches:function(){return[{name:"CC_MORPH_TARGET_USE_TEXTURE",value:!0}]},adaptPipelineState:function(i){for(var n,r=f(t._attributes);!(n=r()).done;){var s=n.value,a=void 0;switch(s.name){case Uc.ATTR_POSITION:a=Av;break;case Uc.ATTR_NORMAL:a=Cv;break;case Uc.ATTR_TANGENT:a=Rv;break;default:tt(16374)}void 0!==a&&(i.bindSampler(a,s.morphTexture.sampler),i.bindTexture(a,s.morphTexture.texture))}i.bindBuffer(fv.BINDING,e.buffer),i.update()},destroy:function(){}}},t}(),BB=function(){function t(t,e,i,n){this._attributes=[],this._gfxDevice=n;var r=i.subMeshMorphs[e];LB(t,e,n),this._attributes=r.attributes.map((function(e,i){return{name:e,targets:r.targets.map((function(e){return{displacements:new Float32Array(t.data.buffer,t.data.byteOffset+e.displacements[i].offset,e.displacements[i].count)}}))}}))}return t.prototype.createInstance=function(){return new MB(this,this._attributes[0].targets[0].displacements.length/3,this._gfxDevice)},n(t,[{key:"data",get:function(){return this._attributes}}]),t}(),MB=function(){function t(t,e,i){this._owner=t,this._morphUniforms=new PB(i,0);var n=OB(i,e);this._morphUniforms.setMorphTextureInfo(n.width,n.height),this._morphUniforms.commit(),this._attributes=this._owner.data.map((function(t){var e=n.create();return{attributeName:t.name,morphTexture:e}}))}var e=t.prototype;return e.setWeights=function(t){for(var e=0;e<this._attributes.length;++e){var i=this._attributes[e],n=i.morphTexture.valueView,r=this._owner.data[e];t.length,r.targets.length;for(var s=0;s<r.targets.length;++s){var a=r.targets[s].displacements,o=t[s],h=a.length/3;if(0===s)for(var u=0;u<h;++u)n[4*u+0]=a[3*u+0]*o,n[4*u+1]=a[3*u+1]*o,n[4*u+2]=a[3*u+2]*o;else if(0!==o)for(var l=0;l<h;++l)n[4*l+0]+=a[3*l+0]*o,n[4*l+1]+=a[3*l+1]*o,n[4*l+2]+=a[3*l+2]*o}i.morphTexture.updatePixels()}},e.requiredPatches=function(){return[{name:"CC_MORPH_TARGET_USE_TEXTURE",value:!0},{name:"CC_MORPH_PRECOMPUTED",value:!0}]},e.adaptPipelineState=function(t){for(var e,i=f(this._attributes);!(e=i()).done;){var n=e.value,r=void 0;switch(n.attributeName){case Uc.ATTR_POSITION:r=Av;break;case Uc.ATTR_NORMAL:r=Cv;break;case Uc.ATTR_TANGENT:r=Rv;break;default:tt(16374)}void 0!==r&&(t.bindSampler(r,n.morphTexture.sampler),t.bindTexture(r,n.morphTexture.texture))}t.bindBuffer(fv.BINDING,this._morphUniforms.buffer),t.update()},e.destroy=function(){this._morphUniforms.destroy();for(var t=0;t<this._attributes.length;++t)this._attributes[t].morphTexture.destroy()},t}(),PB=function(){function t(t,e){this._targetCount=e,this._localBuffer=new DataView(new ArrayBuffer(fv.SIZE)),this._remoteBuffer=t.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,fv.SIZE,fv.SIZE))}var e=t.prototype;return e.destroy=function(){this._remoteBuffer.destroy()},e.setWeights=function(t){t.length,this._targetCount;for(var e=S.sys.isLittleEndian,i=0;i<t.length;++i)this._localBuffer.setFloat32(fv.OFFSET_OF_WEIGHTS+4*i,t[i],e)},e.setMorphTextureInfo=function(t,e){var i=S.sys.isLittleEndian;this._localBuffer.setFloat32(fv.OFFSET_OF_DISPLACEMENT_TEXTURE_WIDTH,t,i),this._localBuffer.setFloat32(fv.OFFSET_OF_DISPLACEMENT_TEXTURE_HEIGHT,e,i)},e.setVerticesCount=function(t){var e=S.sys.isLittleEndian;this._localBuffer.setFloat32(fv.OFFSET_OF_VERTICES_COUNT,t,e)},e.commit=function(){this._remoteBuffer.update(this._localBuffer.buffer)},n(t,[{key:"buffer",get:function(){return this._remoteBuffer}}]),t}();function OB(t,e){var i,n,r,s;t.getFormatFeatures(ec.RGBA32F)&cc.SAMPLED_TEXTURE?(i=e,r=16,n=lm.PixelFormat.RGBA32F,s=Float32Array):(i=4*e,r=4,n=lm.PixelFormat.RGBA8888,s=Uint8Array);var a=function(t){t<5&&(t=5);var e=x(Ki(t)),i=e>>1;return{width:1<<(1&e?i+1:i),height:1<<i}}(i),o=a.width,h=a.height;return{width:o,height:h,create:function(){var e=new ArrayBuffer(o*h*r),i=new Float32Array(e),a=s===Float32Array?i:new s(e),u=new Vd({width:o,height:h,_data:a,_compressed:!1,format:n}),l=new lm;l.setFilters(lm.Filter.NEAREST,lm.Filter.NEAREST),l.setMipFilter(lm.Filter.NONE),l.setWrapMode(lm.WrapMode.CLAMP_TO_EDGE,lm.WrapMode.CLAMP_TO_EDGE,lm.WrapMode.CLAMP_TO_EDGE),l.image=u,l.getGFXTexture()||tt(16375);var c=t.getSampler(l.getSamplerInfo());return{get texture(){return l.getGFXTexture()},get sampler(){return c},get valueView(){return i},destroy:function(){l.destroy()},updatePixels:function(){l.uploadData(a)}}}}}function LB(t,e,i){t.renderingSubMeshes[e].enableVertexIdChannel(i)}function NB(t,e){return FB(t).then((function(t){return WebAssembly.instantiate(t,e)}))}function FB(t){return new Promise((function(i,n){try{t=new URL(t,e.meta.url).href,fetch(t).then((function(t){return t.arrayBuffer().then(i)})).catch((function(){}))}catch(t){n(t)}}))}function kB(){return Promise.resolve()}var GB={};EB.onPostInfrastructureInitDelegate.add((function(){return kB().then((function(){return Sa.hasFeature(Sa.Feature.WASM)?Promise.all([e.import("./meshopt_decoder.wasm-ebbcb6df.js"),e.import("./meshopt_decoder.wasm-43855155.js")]).then((function(t){var e,i,n=t[0].default,r=t[1].default;return e=n,i=r,Promise.all([e.ready((function(t){return NB(i,t)}))]).then((function(){GB.supported=e.supported,GB.ready=Promise.resolve(),GB.decodeVertexBuffer=e.decodeVertexBuffer,GB.decodeIndexBuffer=e.decodeIndexBuffer,GB.decodeIndexSequence=e.decodeIndexSequence,GB.decodeGltfBuffer=e.decodeGltfBuffer,GB.useWorkers=e.useWorkers,GB.decodeGltfBufferAsync=e.decodeGltfBufferAsync,Q(14203)}))})):e.import("./meshopt_decoder.asm-28d34b23.js").then((function(t){var e,i=t.default;return e=i,Promise.all([e.ready]).then((function(){GB.supported=e.supported,GB.ready=Promise.resolve(),GB.decodeVertexBuffer=e.decodeVertexBuffer,GB.decodeIndexBuffer=e.decodeIndexBuffer,GB.decodeIndexSequence=e.decodeIndexSequence,GB.decodeGltfBuffer=e.decodeGltfBuffer,GB.useWorkers=e.useWorkers,GB.decodeGltfBufferAsync=e.decodeGltfBufferAsync,Q(14202)}))}))})).catch((function(t){H(t)}))}));
- /** @license zlib.js 2012 - imaya [ https://github.com/imaya/zlib.js ] The MIT License */
- var VB={};(function(){function t(t){throw t}var e=void 0,i=!0,n=this;function r(t,i){var r,s=t.split("."),a=n;!(s[0]in a)&&a.execScript&&a.execScript("var "+s[0]);for(;s.length&&(r=s.shift());)s.length||i===e?a=a[r]?a[r]:a[r]={}:a[r]=i}var s="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array;function a(t){if("string"==typeof t){var e,i,n=t.split("");for(e=0,i=n.length;e<i;e++)n[e]=(255&n[e].charCodeAt(0))>>>0;t=n}for(var r,s=1,a=0,o=t.length,h=0;0<o;){o-=r=1024<o?1024:o;do{a+=s+=t[h++]}while(--r);s%=65521,a%=65521}return(a<<16|s)>>>0}function o(e,i){this.index="number"==typeof i?i:0,this.i=0,this.buffer=e instanceof(s?Uint8Array:Array)?e:new(s?Uint8Array:Array)(32768),2*this.buffer.length<=this.index&&t(Error("invalid index")),this.buffer.length<=this.index&&this.f()}o.prototype.f=function(){var t,e=this.buffer,i=e.length,n=new(s?Uint8Array:Array)(i<<1);if(s)n.set(e);else for(t=0;t<i;++t)n[t]=e[t];return this.buffer=n},o.prototype.d=function(t,e,i){var n,r=this.buffer,s=this.index,a=this.i,o=r[s];if(i&&1<e&&(t=8<e?(f[255&t]<<24|f[t>>>8&255]<<16|f[t>>>16&255]<<8|f[t>>>24&255])>>32-e:f[t]>>8-e),8>e+a)o=o<<e|t,a+=e;else for(n=0;n<e;++n)o=o<<1|t>>e-n-1&1,8==++a&&(a=0,r[s++]=f[o],o=0,s===r.length&&(r=this.f()));r[s]=o,this.buffer=r,this.i=a,this.index=s},o.prototype.finish=function(){var t,e=this.buffer,i=this.index;return 0<this.i&&(e[i]<<=8-this.i,e[i]=f[e[i]],i++),s?t=e.subarray(0,i):(e.length=i,t=e),t};var h,u=new(s?Uint8Array:Array)(256);for(h=0;256>h;++h){for(var l=_=h,c=7,_=_>>>1;_;_>>>=1)l<<=1,l|=1&_,--c;u[h]=(l<<c&255)>>>0}var f=u;function d(t){this.buffer=new(s?Uint16Array:Array)(2*t),this.length=0}function p(t){var e,i,n,r,a,o,h,u,l,c=t.length,_=0,f=Number.POSITIVE_INFINITY;for(u=0;u<c;++u)t[u]>_&&(_=t[u]),t[u]<f&&(f=t[u]);for(e=1<<_,i=new(s?Uint32Array:Array)(e),n=1,r=0,a=2;n<=_;){for(u=0;u<c;++u)if(t[u]===n){for(o=0,h=r,l=0;l<n;++l)o=o<<1|1&h,h>>=1;for(l=o;l<e;l+=a)i[l]=n<<16|u;++r}++n,r<<=1,a<<=1}return[i,_,f]}function m(t,e){this.h=v,this.w=0,this.input=t,this.b=0,e&&(e.lazy&&(this.w=e.lazy),"number"==typeof e.compressionType&&(this.h=e.compressionType),e.outputBuffer&&(this.a=s&&e.outputBuffer instanceof Array?new Uint8Array(e.outputBuffer):e.outputBuffer),"number"==typeof e.outputIndex&&(this.b=e.outputIndex)),this.a||(this.a=new(s?Uint8Array:Array)(32768))}d.prototype.getParent=function(t){return 2*((t-2)/4|0)},d.prototype.push=function(t,e){var i,n,r,s=this.buffer;for(i=this.length,s[this.length++]=e,s[this.length++]=t;0<i&&(n=this.getParent(i),s[i]>s[n]);)r=s[i],s[i]=s[n],s[n]=r,r=s[i+1],s[i+1]=s[n+1],s[n+1]=r,i=n;return this.length},d.prototype.pop=function(){var t,e,i,n,r,s=this.buffer;for(e=s[0],t=s[1],this.length-=2,s[0]=s[this.length],s[1]=s[this.length+1],r=0;!((n=2*r+2)>=this.length)&&(n+2<this.length&&s[n+2]>s[n]&&(n+=2),s[n]>s[r]);)i=s[r],s[r]=s[n],s[n]=i,i=s[r+1],s[r+1]=s[n+1],s[n+1]=i,r=n;return{index:t,value:e,length:this.length}};var g,v=2,y={NONE:0,r:1,j:v,N:3},S=[];for(g=0;288>g;g++)switch(i){case 143>=g:S.push([g+48,8]);break;case 255>=g:S.push([g-144+400,9]);break;case 279>=g:S.push([g-256+0,7]);break;case 287>=g:S.push([g-280+192,8]);break;default:t("invalid literal: "+g)}function T(t,e){this.length=t,this.G=e}function A(){var e=b;switch(i){case 3===e:return[257,e-3,0];case 4===e:return[258,e-4,0];case 5===e:return[259,e-5,0];case 6===e:return[260,e-6,0];case 7===e:return[261,e-7,0];case 8===e:return[262,e-8,0];case 9===e:return[263,e-9,0];case 10===e:return[264,e-10,0];case 12>=e:return[265,e-11,1];case 14>=e:return[266,e-13,1];case 16>=e:return[267,e-15,1];case 18>=e:return[268,e-17,1];case 22>=e:return[269,e-19,2];case 26>=e:return[270,e-23,2];case 30>=e:return[271,e-27,2];case 34>=e:return[272,e-31,2];case 42>=e:return[273,e-35,3];case 50>=e:return[274,e-43,3];case 58>=e:return[275,e-51,3];case 66>=e:return[276,e-59,3];case 82>=e:return[277,e-67,4];case 98>=e:return[278,e-83,4];case 114>=e:return[279,e-99,4];case 130>=e:return[280,e-115,4];case 162>=e:return[281,e-131,5];case 194>=e:return[282,e-163,5];case 226>=e:return[283,e-195,5];case 257>=e:return[284,e-227,5];case 258===e:return[285,e-258,0];default:t("invalid length: "+e)}}m.prototype.n=function(){var n,r,a,h,u=this.input;switch(this.h){case 0:for(a=0,h=u.length;a<h;){var l,c,_,f=r=s?u.subarray(a,a+65535):u.slice(a,a+65535),d=(a+=r.length)===h,p=e,m=e,g=this.a,y=this.b;if(s){for(g=new Uint8Array(this.a.buffer);g.length<=y+f.length+5;)g=new Uint8Array(g.length<<1);g.set(this.a)}if(l=d?1:0,g[y++]=0|l,_=65536+~(c=f.length)&65535,g[y++]=255&c,g[y++]=c>>>8&255,g[y++]=255&_,g[y++]=_>>>8&255,s)g.set(f,y),y+=f.length,g=g.subarray(0,y);else{for(p=0,m=f.length;p<m;++p)g[y++]=f[p];g.length=y}this.b=y,this.a=g}break;case 1:var T=new o(new Uint8Array(this.a.buffer),this.b);T.d(1,1,i),T.d(1,2,i);var A,b,E,C=w(this,u);for(A=0,b=C.length;A<b;A++)if(E=C[A],o.prototype.d.apply(T,S[E]),256<E)T.d(C[++A],C[++A],i),T.d(C[++A],5),T.d(C[++A],C[++A],i);else if(256===E)break;this.a=T.finish(),this.b=this.a.length;break;case v:var x,D,B,M,P,O,L,N,F,k,G,V,U,z,H,W=new o(new Uint8Array(this.a),this.b),X=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],j=Array(19);for(x=v,W.d(1,1,i),W.d(x,2,i),D=w(this,u),L=I(O=R(this.L,15)),F=I(N=R(this.K,7)),B=286;257<B&&0===O[B-1];B--);for(M=30;1<M&&0===N[M-1];M--);var Y,q,K,Q,Z,J,$=B,tt=M,et=new(s?Uint32Array:Array)($+tt),it=new(s?Uint32Array:Array)(316),nt=new(s?Uint8Array:Array)(19);for(Y=q=0;Y<$;Y++)et[q++]=O[Y];for(Y=0;Y<tt;Y++)et[q++]=N[Y];if(!s)for(Y=0,Q=nt.length;Y<Q;++Y)nt[Y]=0;for(Y=Z=0,Q=et.length;Y<Q;Y+=q){for(q=1;Y+q<Q&&et[Y+q]===et[Y];++q);if(K=q,0===et[Y])if(3>K)for(;0<K--;)it[Z++]=0,nt[0]++;else for(;0<K;)(J=138>K?K:138)>K-3&&J<K&&(J=K-3),10>=J?(it[Z++]=17,it[Z++]=J-3,nt[17]++):(it[Z++]=18,it[Z++]=J-11,nt[18]++),K-=J;else if(it[Z++]=et[Y],nt[et[Y]]++,3>--K)for(;0<K--;)it[Z++]=et[Y],nt[et[Y]]++;else for(;0<K;)(J=6>K?K:6)>K-3&&J<K&&(J=K-3),it[Z++]=16,it[Z++]=J-3,nt[16]++,K-=J}for(n=s?it.subarray(0,Z):it.slice(0,Z),k=R(nt,7),z=0;19>z;z++)j[z]=k[X[z]];for(P=19;4<P&&0===j[P-1];P--);for(G=I(k),W.d(B-257,5,i),W.d(M-1,5,i),W.d(P-4,4,i),z=0;z<P;z++)W.d(j[z],3,i);for(z=0,H=n.length;z<H;z++)if(V=n[z],W.d(G[V],k[V],i),16<=V){switch(z++,V){case 16:U=2;break;case 17:U=3;break;case 18:U=7;break;default:t("invalid code: "+V)}W.d(n[z],U,i)}var rt,st,at,ot,ht,ut,lt,ct,_t=[L,O],ft=[F,N];for(ht=_t[0],ut=_t[1],lt=ft[0],ct=ft[1],rt=0,st=D.length;rt<st;++rt)if(at=D[rt],W.d(ht[at],ut[at],i),256<at)W.d(D[++rt],D[++rt],i),ot=D[++rt],W.d(lt[ot],ct[ot],i),W.d(D[++rt],D[++rt],i);else if(256===at)break;this.a=W.finish(),this.b=this.a.length;break;default:t("invalid compression type")}return this.a};var b,E,C=[];for(b=3;258>=b;b++)E=A(),C[b]=E[2]<<24|E[1]<<16|E[0];var x=s?new Uint32Array(C):C;function w(n,r){function a(e,n){var r,s,a,o,h=e.G,u=[],l=0;switch(r=x[e.length],u[l++]=65535&r,u[l++]=r>>16&255,u[l++]=r>>24,i){case 1===h:s=[0,h-1,0];break;case 2===h:s=[1,h-2,0];break;case 3===h:s=[2,h-3,0];break;case 4===h:s=[3,h-4,0];break;case 6>=h:s=[4,h-5,1];break;case 8>=h:s=[5,h-7,1];break;case 12>=h:s=[6,h-9,2];break;case 16>=h:s=[7,h-13,2];break;case 24>=h:s=[8,h-17,3];break;case 32>=h:s=[9,h-25,3];break;case 48>=h:s=[10,h-33,4];break;case 64>=h:s=[11,h-49,4];break;case 96>=h:s=[12,h-65,5];break;case 128>=h:s=[13,h-97,5];break;case 192>=h:s=[14,h-129,6];break;case 256>=h:s=[15,h-193,6];break;case 384>=h:s=[16,h-257,7];break;case 512>=h:s=[17,h-385,7];break;case 768>=h:s=[18,h-513,8];break;case 1024>=h:s=[19,h-769,8];break;case 1536>=h:s=[20,h-1025,9];break;case 2048>=h:s=[21,h-1537,9];break;case 3072>=h:s=[22,h-2049,10];break;case 4096>=h:s=[23,h-3073,10];break;case 6144>=h:s=[24,h-4097,11];break;case 8192>=h:s=[25,h-6145,11];break;case 12288>=h:s=[26,h-8193,12];break;case 16384>=h:s=[27,h-12289,12];break;case 24576>=h:s=[28,h-16385,13];break;case 32768>=h:s=[29,h-24577,13];break;default:t("invalid distance")}for(r=s,u[l++]=r[0],u[l++]=r[1],u[l++]=r[2],a=0,o=u.length;a<o;++a)g[v++]=u[a];S[u[0]]++,A[u[3]]++,y=e.length+n-1,d=null}var o,h,u,l,c,_,f,d,p,m={},g=s?new Uint16Array(2*r.length):[],v=0,y=0,S=new(s?Uint32Array:Array)(286),A=new(s?Uint32Array:Array)(30),b=n.w;if(!s){for(u=0;285>=u;)S[u++]=0;for(u=0;29>=u;)A[u++]=0}for(S[256]=1,o=0,h=r.length;o<h;++o){for(u=c=0,l=3;u<l&&o+u!==h;++u)c=c<<8|r[o+u];if(m[c]===e&&(m[c]=[]),_=m[c],!(0<y--)){for(;0<_.length&&32768<o-_[0];)_.shift();if(o+3>=h){for(d&&a(d,-1),u=0,l=h-o;u<l;++u)p=r[o+u],g[v++]=p,++S[p];break}if(0<_.length){var E=e,C=e,w=0,R=e,I=e,D=e,B=r.length,M=(I=0,_.length);t:for(;I<M;I++){if(E=_[M-I-1],R=3,3<w){for(D=w;3<D;D--)if(r[E+D-1]!==r[o+D-1])continue t;R=w}for(;258>R&&o+R<B&&r[E+R]===r[o+R];)++R;if(R>w&&(C=E,w=R),258===R)break}f=new T(w,o-C),d?d.length<f.length?(p=r[o-1],g[v++]=p,++S[p],a(f,0)):a(d,-1):f.length<b?d=f:a(f,0)}else d?a(d,-1):(p=r[o],g[v++]=p,++S[p])}_.push(o)}return g[v++]=256,S[256]++,n.L=S,n.K=A,s?g.subarray(0,v):g}function R(t,e){function i(t){var e=b[t][E[t]];e===v?(i(t+1),i(t+1)):--T[e],++E[t]}var n,r,a,o,h,u=t.length,l=new d(572),c=new(s?Uint8Array:Array)(u);if(!s)for(o=0;o<u;o++)c[o]=0;for(o=0;o<u;++o)0<t[o]&&l.push(o,t[o]);if(n=Array(l.length/2),r=new(s?Uint32Array:Array)(l.length/2),1===n.length)return c[l.pop().index]=1,c;for(o=0,h=l.length/2;o<h;++o)n[o]=l.pop(),r[o]=n[o].value;var _,f,p,m,g,v=r.length,y=new(s?Uint16Array:Array)(e),S=new(s?Uint8Array:Array)(e),T=new(s?Uint8Array:Array)(v),A=Array(e),b=Array(e),E=Array(e),C=(1<<e)-v,x=1<<e-1;for(y[e-1]=v,f=0;f<e;++f)C<x?S[f]=0:(S[f]=1,C-=x),C<<=1,y[e-2-f]=(y[e-1-f]/2|0)+v;for(y[0]=S[0],A[0]=Array(y[0]),b[0]=Array(y[0]),f=1;f<e;++f)y[f]>2*y[f-1]+S[f]&&(y[f]=2*y[f-1]+S[f]),A[f]=Array(y[f]),b[f]=Array(y[f]);for(_=0;_<v;++_)T[_]=e;for(p=0;p<y[e-1];++p)A[e-1][p]=r[p],b[e-1][p]=p;for(_=0;_<e;++_)E[_]=0;for(1===S[e-1]&&(--T[0],++E[e-1]),f=e-2;0<=f;--f){for(m=_=0,g=E[f+1],p=0;p<y[f];p++)(m=A[f+1][g]+A[f+1][g+1])>r[_]?(A[f][p]=m,b[f][p]=v,g+=2):(A[f][p]=r[_],b[f][p]=_,++_);E[f]=0,1===S[f]&&i(f)}for(a=T,o=0,h=n.length;o<h;++o)c[n[o].index]=a[o];return c}function I(e){var i,n,r,a,o=new(s?Uint16Array:Array)(e.length),h=[],u=[],l=0;for(i=0,n=e.length;i<n;i++)h[e[i]]=1+(0|h[e[i]]);for(i=1,n=16;i<=n;i++)u[i]=l,(l+=0|h[i])>1<<i&&t("overcommitted"),l<<=1;for(65536>l&&t("undercommitted"),i=0,n=e.length;i<n;i++)for(l=u[e[i]],u[e[i]]+=1,r=o[i]=0,a=e[i];r<a;r++)o[i]=o[i]<<1|1&l,l>>>=1;return o}function D(t,e){this.input=t,this.a=new(s?Uint8Array:Array)(32768),this.h=B.j;var i,n={};for(i in!e&&(e={})||"number"!=typeof e.compressionType||(this.h=e.compressionType),e)n[i]=e[i];n.outputBuffer=this.a,this.z=new m(this.input,n)}var B=y;function M(e,i){switch(this.k=[],this.l=32768,this.e=this.g=this.c=this.q=0,this.input=s?new Uint8Array(e):e,this.s=!1,this.m=O,this.B=!1,!i&&(i={})||(i.index&&(this.c=i.index),i.bufferSize&&(this.l=i.bufferSize),i.bufferType&&(this.m=i.bufferType),i.resize&&(this.B=i.resize)),this.m){case P:this.b=32768,this.a=new(s?Uint8Array:Array)(32768+this.l+258);break;case O:this.b=0,this.a=new(s?Uint8Array:Array)(this.l),this.f=this.J,this.t=this.H,this.o=this.I;break;default:t(Error("invalid inflate mode"))}}D.prototype.n=function(){var e,i,n,r,o,h,u,l=0;switch(u=this.a,e=lt){case lt:i=Math.LOG2E*Math.log(32768)-8;break;default:t(Error("invalid compression method"))}switch(n=i<<4|e,u[l++]=n,e){case lt:switch(this.h){case B.NONE:o=0;break;case B.r:o=1;break;case B.j:o=2;break;default:t(Error("unsupported compression type"))}break;default:t(Error("invalid compression method"))}return r=o<<6|0,u[l++]=r|31-(256*n+r)%31,h=a(this.input),this.z.b=l,l=(u=this.z.n()).length,s&&((u=new Uint8Array(u.buffer)).length<=l+4&&(this.a=new Uint8Array(u.length+4),this.a.set(u),u=this.a),u=u.subarray(0,l+4)),u[l++]=h>>24&255,u[l++]=h>>16&255,u[l++]=h>>8&255,u[l++]=255&h,u},r("Zlib.Deflate",D),r("Zlib.Deflate.compress",(function(t,e){return new D(t,e).n()})),r("Zlib.Deflate.CompressionType",B),r("Zlib.Deflate.CompressionType.NONE",B.NONE),r("Zlib.Deflate.CompressionType.FIXED",B.r),r("Zlib.Deflate.CompressionType.DYNAMIC",B.j);var P=0,O=1,L={D:P,C:O};M.prototype.p=function(){for(;!this.s;){var n=tt(this,3);switch(1&n&&(this.s=i),n>>>=1){case 0:var r=this.input,a=this.c,o=this.a,h=this.b,u=e,l=e,c=e,_=o.length,f=e;switch(this.e=this.g=0,(u=r[a++])===e&&t(Error("invalid uncompressed block header: LEN (first byte)")),l=u,(u=r[a++])===e&&t(Error("invalid uncompressed block header: LEN (second byte)")),l|=u<<8,(u=r[a++])===e&&t(Error("invalid uncompressed block header: NLEN (first byte)")),c=u,(u=r[a++])===e&&t(Error("invalid uncompressed block header: NLEN (second byte)")),l===~(c|=u<<8)&&t(Error("invalid uncompressed block header: length verify")),a+l>r.length&&t(Error("input buffer is broken")),this.m){case P:for(;h+l>o.length;){if(l-=f=_-h,s)o.set(r.subarray(a,a+f),h),h+=f,a+=f;else for(;f--;)o[h++]=r[a++];this.b=h,o=this.f(),h=this.b}break;case O:for(;h+l>o.length;)o=this.f({v:2});break;default:t(Error("invalid inflate mode"))}if(s)o.set(r.subarray(a,a+l),h),h+=l,a+=l;else for(;l--;)o[h++]=r[a++];this.c=a,this.b=h,this.a=o;break;case 1:this.o(Z,$);break;case 2:it(this);break;default:t(Error("unknown BTYPE: "+n))}}return this.t()};var N,F,k=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],G=s?new Uint16Array(k):k,V=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,258,258],U=s?new Uint16Array(V):V,z=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0],H=s?new Uint8Array(z):z,W=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],X=s?new Uint16Array(W):W,j=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],Y=s?new Uint8Array(j):j,q=new(s?Uint8Array:Array)(288);for(N=0,F=q.length;N<F;++N)q[N]=143>=N?8:255>=N?9:279>=N?7:8;var K,Q,Z=p(q),J=new(s?Uint8Array:Array)(30);for(K=0,Q=J.length;K<Q;++K)J[K]=5;var $=p(J);function tt(i,n){for(var r,s=i.g,a=i.e,o=i.input,h=i.c;a<n;)(r=o[h++])===e&&t(Error("input buffer is broken")),s|=r<<a,a+=8;return r=s&(1<<n)-1,i.g=s>>>n,i.e=a-n,i.c=h,r}function et(i,n){for(var r,s,a,o=i.g,h=i.e,u=i.input,l=i.c,c=n[0],_=n[1];h<_;)(r=u[l++])===e&&t(Error("input buffer is broken")),o|=r<<h,h+=8;return a=(s=c[o&(1<<_)-1])>>>16,i.g=o>>a,i.e=h-a,i.c=l,65535&s}function it(t){function e(t,e,i){var n,r,s,a;for(a=0;a<t;)switch(n=et(this,e),n){case 16:for(s=3+tt(this,2);s--;)i[a++]=r;break;case 17:for(s=3+tt(this,3);s--;)i[a++]=0;r=0;break;case 18:for(s=11+tt(this,7);s--;)i[a++]=0;r=0;break;default:r=i[a++]=n}return i}var i,n,r,a,o=tt(t,5)+257,h=tt(t,5)+1,u=tt(t,4)+4,l=new(s?Uint8Array:Array)(G.length);for(a=0;a<u;++a)l[G[a]]=tt(t,3);i=p(l),n=new(s?Uint8Array:Array)(o),r=new(s?Uint8Array:Array)(h),t.o(p(e.call(t,o,i,n)),p(e.call(t,h,i,r)))}function nt(e,i){var n,r;switch(this.input=e,this.c=0,!i&&(i={})||(i.index&&(this.c=i.index),i.verify&&(this.M=i.verify)),n=e[this.c++],r=e[this.c++],15&n){case lt:this.method=lt;break;default:t(Error("unsupported compression method"))}0!=((n<<8)+r)%31&&t(Error("invalid fcheck flag:"+((n<<8)+r)%31)),32&r&&t(Error("fdict flag is not supported")),this.A=new M(e,{index:this.c,bufferSize:i.bufferSize,bufferType:i.bufferType,resize:i.resize})}M.prototype.o=function(t,e){var i=this.a,n=this.b;this.u=t;for(var r,s,a,o,h=i.length-258;256!==(r=et(this,t));)if(256>r)n>=h&&(this.b=n,i=this.f(),n=this.b),i[n++]=r;else for(o=U[s=r-257],0<H[s]&&(o+=tt(this,H[s])),r=et(this,e),a=X[r],0<Y[r]&&(a+=tt(this,Y[r])),n>=h&&(this.b=n,i=this.f(),n=this.b);o--;)i[n]=i[n++-a];for(;8<=this.e;)this.e-=8,this.c--;this.b=n},M.prototype.I=function(t,e){var i=this.a,n=this.b;this.u=t;for(var r,s,a,o,h=i.length;256!==(r=et(this,t));)if(256>r)n>=h&&(h=(i=this.f()).length),i[n++]=r;else for(o=U[s=r-257],0<H[s]&&(o+=tt(this,H[s])),r=et(this,e),a=X[r],0<Y[r]&&(a+=tt(this,Y[r])),n+o>h&&(h=(i=this.f()).length);o--;)i[n]=i[n++-a];for(;8<=this.e;)this.e-=8,this.c--;this.b=n},M.prototype.f=function(){var t,e,i=new(s?Uint8Array:Array)(this.b-32768),n=this.b-32768,r=this.a;if(s)i.set(r.subarray(32768,i.length));else for(t=0,e=i.length;t<e;++t)i[t]=r[t+32768];if(this.k.push(i),this.q+=i.length,s)r.set(r.subarray(n,n+32768));else for(t=0;32768>t;++t)r[t]=r[n+t];return this.b=32768,r},M.prototype.J=function(t){var e,i,n,r=this.input.length/this.c+1|0,a=this.input,o=this.a;return t&&("number"==typeof t.v&&(r=t.v),"number"==typeof t.F&&(r+=t.F)),i=2>r?(n=(a.length-this.c)/this.u[2]/2*258|0)<o.length?o.length+n:o.length<<1:o.length*r,s?(e=new Uint8Array(i)).set(o):e=o,this.a=e},M.prototype.t=function(){var t,e,i,n,r,a=0,o=this.a,h=this.k,u=new(s?Uint8Array:Array)(this.q+(this.b-32768));if(0===h.length)return s?this.a.subarray(32768,this.b):this.a.slice(32768,this.b);for(e=0,i=h.length;e<i;++e)for(n=0,r=(t=h[e]).length;n<r;++n)u[a++]=t[n];for(e=32768,i=this.b;e<i;++e)u[a++]=o[e];return this.k=[],this.buffer=u},M.prototype.H=function(){var t,e=this.b;return s?this.B?(t=new Uint8Array(e)).set(this.a.subarray(0,e)):t=this.a.subarray(0,e):(this.a.length>e&&(this.a.length=e),t=this.a),this.buffer=t},nt.prototype.p=function(){var e,i=this.input;return e=this.A.p(),this.c=this.A.c,this.M&&(i[this.c++]<<24|i[this.c++]<<16|i[this.c++]<<8|i[this.c++])>>>0!==a(e)&&t(Error("invalid adler-32 checksum")),e},r("Zlib.Inflate",nt),r("Zlib.Inflate.BufferType",L),L.ADAPTIVE=L.C,L.BLOCK=L.D,r("Zlib.Inflate.prototype.decompress",nt.prototype.p);var rt,st,at=new(s?Uint8Array:Array)(288);for(rt=0,st=at.length;rt<st;++rt)at[rt]=143>=rt?8:255>=rt?9:279>=rt?7:8;p(at);var ot,ht,ut=new(s?Uint8Array:Array)(30);for(ot=0,ht=ut.length;ot<ht;++ot)ut[ot]=5;p(ut);var lt=8}).call(VB);var UB,zB,HB,WB,XB,jB=VB.Zlib;function YB(t){switch(t){case 1:return Uint8Array;case 2:return Uint16Array;case 4:return Uint32Array;default:return Uint8Array}}jB.Deflate=jB.Deflate,jB.Deflate.compress=jB.Deflate.compress,jB.Inflate=jB.Inflate,jB.Inflate.BufferType=jB.Inflate.BufferType,jB.Inflate.prototype.decompress=jB.Inflate.prototype.decompress;var qB=new gn,KB=new gn,QB=new Uint8Array,ZB=t("aa",eo("cc.Mesh")((zB=function(t){function e(){var e;return(e=t.call(this)||this).morphRendering=null,e._struct=HB&&HB(),e._hash=WB&&WB(),e._data=QB,e._initialized=!1,e._allowDataAccess=XB&&XB(),e._isMeshDataUploaded=!1,e._renderingSubMeshes=null,e._boneSpaceBounds=new Map,e._jointBufferIndices=null,e}s(e,t);var i=e.prototype;return i.onLoaded=function(){this.initialize()},i.initialize=function(){if(!this._initialized){this._initialized=!0;var t={struct:this.struct,data:this.data};if(t.struct.compressed&&(t=rM(t)),this.struct.encoded&&(t=nM(t)),!this.struct.quantized||Ff.gfxDevice.getFormatFeatures(ec.RGB16F)&cc.VERTEX_ATTRIBUTE||(t=function(t){var e=JSON.parse(JSON.stringify(t.struct)),i=new RB;function n(t,e,i,n,r,s,a){for(var o=0;o<i;o++)for(var h=0;h<n;h++)e(a*o+r*h,t(s*o+r*h))}function r(t,e,i,n,r,s){for(var a=0;a<i;a++)for(var o=0;o<n;o++)e(s*a+4*o,un(t(r*a+2*o)))}i.setNextAlignment(0);for(var s=0;s<e.vertexBundles.length;++s){for(var a=e.vertexBundles[s],o=a.view,h=a.attributes,u=t.struct.vertexBundles[s].attributes,l=[],c=[],_=[],d=0;d<h.length;++d){var p=h[d],m=eM(new DataView(t.data.buffer,o.offset+JB(u,d)),p.format),g=!0;switch(p.format){case ec.R16F:p.format=ec.R32F;break;case ec.RG16F:p.format=ec.RG32F;break;case ec.RGB16F:p.format=ec.RGB32F;break;case ec.RGBA16F:p.format=ec.RGBA32F;break;default:g=!1}l.push(j_[p.format].size),c.push(g),_.push(m)}for(var v=l.reduce((function(t,e){return t+e}),0),y=new Uint8Array(v*o.count),S=0;S<h.length;++S){var T=h[S],A=_[S],b=iM(new DataView(y.buffer,JB(h,S)),T.format),E=c[S],C=j_[T.format];E?r(A,b,o.count,C.count,o.stride,v):n(A,b,o.count,C.count,C.size/C.count,o.stride,v)}i.setNextAlignment(v);var x={offset:i.getLength(),length:y.byteLength,count:o.count,stride:v};a.view=x,i.addBuffer(y)}for(var w,R=f(e.primitives);!(w=R()).done;){var I=w.value;if(void 0!==I.indexView){var D=I.indexView,B=new Uint8Array(t.data.buffer,D.offset,D.length);i.setNextAlignment(D.stride);var M={offset:i.getLength(),length:B.byteLength,count:D.count,stride:D.stride};I.indexView=M,i.addBuffer(B)}}var P=new Uint8Array(i.getCombined());return e.quantized=!1,{struct:e,data:P}}(t)),this._struct=t.struct,this._data=t.data,this._struct.dynamic){for(var e=Ff.gfxDevice,i=[],n=[],r=0;r<this._struct.vertexBundles.length;r++){var s=this._struct.vertexBundles[r],a=e.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,s.view.length,s.view.stride));i.push(a)}for(var o=0;o<this._struct.primitives.length;o++){var h=this._struct.primitives[o],u=h.indexView,l=null;u&&(l=e.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,u.length,u.stride)));for(var c=[],_=0;_<h.vertexBundelIndices.length;_++){var d=h.vertexBundelIndices[_];c.push(i[d])}for(var p=[],m=0;m<h.vertexBundelIndices.length;m++)for(var g,v=h.vertexBundelIndices[m],y=f(this._struct.vertexBundles[v].attributes);!(g=y()).done;){var S=g.value,T=new T_;T.copy(S),p.push(T)}var A=new FD(c,p,h.primitiveMode,l);A.drawInfo=new a_,A.mesh=this,A.subMeshIdx=o,n.push(A)}this._renderingSubMeshes=n}else{for(var b=this._data.buffer,E=Ff.gfxDevice,C=this._createVertexBuffers(E,b),x=[],w=[],R=0;R<this._struct.primitives.length;R++){var I=this._struct.primitives[R];if(0!==I.vertexBundelIndices.length){var D=null,B=void 0;if(I.indexView){var M=I.indexView,P=M.stride,O=M.length;if(4===P&&!E.hasFeature(tc.ELEMENT_INDEX_UINT)){var L=this._struct.vertexBundles[I.vertexBundelIndices[0]].view.count;if(L>=65536){tt(10001,L,65536);continue}P>>=1,O>>=1}D=E.createBuffer(new r_(rc.INDEX,oc.DEVICE,O,P)),x.push(D),B=new(YB(M.stride))(b,M.offset,M.count),M.stride!==P&&(B=YB(P).from(B)),D.update(B)}var N=I.vertexBundelIndices.map((function(t){return C[t]})),F=[];if(I.vertexBundelIndices.length>0)for(var k=I.vertexBundelIndices[0],G=this._struct.vertexBundles[k].attributes,V=0;V<G.length;++V){var U=G[V];F[V]=new T_(U.name,U.format,U.isNormalized,U.stream,U.isInstanced,U.location)}var z=new FD(N,F,I.primitiveMode,D);z.mesh=this,z.subMeshIdx=R,w.push(z)}}this._renderingSubMeshes=w,this._struct.morph&&(this.morphRendering=function(t,e){return new IB(t,e)}(this,E)),this._isMeshDataUploaded=!0,this._allowDataAccess||this.releaseData()}}},i.updateSubMesh=function(t,e){if(this._struct.dynamic)if(t>=this._struct.primitives.length)tt(14201);else{var i=[];if(e.positions.length>0&&i.push(e.positions),e.normals&&e.normals.length>0&&i.push(e.normals),e.uvs&&e.uvs.length>0&&i.push(e.uvs),e.tangents&&e.tangents.length>0&&i.push(e.tangents),e.colors&&e.colors.length>0&&i.push(e.colors),e.customAttributes)for(var n=0;n<e.customAttributes.length;n++)i.push(e.customAttributes[n].values);for(var r=this._struct.dynamic,s=r.info,a=this._struct.primitives[t],o=this._renderingSubMeshes[t],h=o.drawInfo,u=0;u<i.length;u++){var l=i[u],c=this._struct.vertexBundles[a.vertexBundelIndices[u]],_=c.view.stride,d=l.byteLength/_,p=l.byteLength,m=new Uint8Array(this._data.buffer,c.view.offset,p),g=new Uint8Array(l.buffer,l.byteOffset,p),v=o.vertexBuffers[u];s.maxSubMeshVertices,p>0&&(m.set(g),v.update(g,p)),c.view.count=d,h.vertexCount=d}if(a.indexView){var y=a.indexView,S=y.stride,T=2===S?e.indices16.length:e.indices32.length,A=T*S,b=new Uint8Array(this._data.buffer,y.offset,A),E=2===S?new Uint8Array(e.indices16.buffer,e.indices16.byteOffset,A):new Uint8Array(e.indices32.buffer,e.indices32.byteOffset,A),C=o.indexBuffer;s.maxSubMeshIndices,A>0&&(b.set(E),C.update(E,A)),y.count=T,h.indexCount=T}if(e.minPos&&e.maxPos){var x=new gn(e.minPos.x,e.minPos.y,e.minPos.z),w=new gn(e.maxPos.x,e.maxPos.y,e.maxPos.z);r.bounds[t]||(r.bounds[t]=new Ra),Ra.fromPoints(r.bounds[t],x,w);for(var R,I=new gn,D=new gn,B=f(r.bounds);!(R=B()).done;){var M=R.value;M&&(M.getBoundary(I,D),gn.min(x,I,x),gn.max(w,D,w))}this._struct.minPosition=new gn(x.x,x.y,x.z),this._struct.maxPosition=new gn(w.x,w.y,w.z)}o.invalidateGeometricInfo()}else tt(14200)},i.destroy=function(){return this.destroyRenderingMesh(),t.prototype.destroy.call(this)},i.destroyRenderingMesh=function(){if(this._renderingSubMeshes){for(var t=0;t<this._renderingSubMeshes.length;t++)this._renderingSubMeshes[t].destroy();this._renderingSubMeshes=null,this._initialized=!1,this._isMeshDataUploaded=!1}},i.assign=function(t,e){this.reset({struct:t,data:e})},i.reset=function(t){this.destroyRenderingMesh(),this._struct=t.struct,this._data=t.data,this._hash=0},i.getBoneSpaceBounds=function(t){if(this._boneSpaceBounds.has(t.hash))return this._boneSpaceBounds.get(t.hash);var e=[];this._boneSpaceBounds.set(t.hash,e);for(var i=[],n=t.bindposes,r=0;r<n.length;r++)e.push(new Ra(1/0,1/0,1/0,-1/0,-1/0,-1/0)),i.push(!1);for(var s=this._struct.primitives,a=0;a<s.length;a++){var o=this.readAttribute(a,Uc.ATTR_JOINTS),h=this.readAttribute(a,Uc.ATTR_WEIGHTS),u=this.readAttribute(a,Uc.ATTR_POSITION);if(o&&h&&u)for(var l=Math.min(o.length/4,h.length/4,u.length/3),c=0;c<l;c++){gn.set(qB,u[3*c+0],u[3*c+1],u[3*c+2]);for(var _=0;_<4;++_){var f=4*c+_,d=o[f];if(!(0===h[f]||d>=n.length)){gn.transformMat4(KB,qB,n[d]),i[d]=!0;var p=e[d];gn.min(p.center,p.center,KB),gn.max(p.halfExtents,p.halfExtents,KB)}}}}for(var m=0;m<n.length;m++){var g=e[m];i[m]?Ra.fromPoints(g,g.center,g.halfExtents):e[m]=null}return e},i.merge=function(t,e,i){if(i&&!this.validateMergingMesh(t))return!1;var n=new gn,r=e&&new Bn,s=e&&new Ra;if(r&&e.getRotation(r),!this._initialized){var a=JSON.parse(JSON.stringify(t._struct)),o=t._data.slice();if(e){a.maxPosition&&a.minPosition&&(gn.add(s.center,a.maxPosition,a.minPosition),gn.multiplyScalar(s.center,s.center,.5),gn.subtract(s.halfExtents,a.maxPosition,a.minPosition),gn.multiplyScalar(s.halfExtents,s.halfExtents,.5),Ra.transform(s,s,e),gn.add(a.maxPosition,s.center,s.halfExtents),gn.subtract(a.minPosition,s.center,s.halfExtents));for(var h=0;h<a.vertexBundles.length;h++)for(var u=a.vertexBundles[h],l=0;l<u.attributes.length;l++)if(u.attributes[l].name===Uc.ATTR_POSITION||u.attributes[l].name===Uc.ATTR_NORMAL){var c=u.attributes[l].format,_=new DataView(o.buffer,u.view.offset+JB(u.attributes,l)),d=eM(_,c),p=iM(_,c);if(!d||!p)continue;for(var m=u.view.count,g=u.view.stride,v=tM(c),y=0;y<m;y++){var S=y*g,T=S+v,A=T+v;switch(n.set(d(S),d(T),d(A)),u.attributes[l].name){case Uc.ATTR_POSITION:n.transformMat4(e);break;case Uc.ATTR_NORMAL:gn.transformQuat(n,n,r)}p(S,n.x),p(T,n.y),p(A,n.z)}}}return this.reset({struct:a,data:o}),this.initialize(),!0}for(var b,E,C,x,w,R=new RB,I=0,D=0,B=0,M=0,P=0,O=0,L=0,N=0,F=!1,k=new Array(this._struct.vertexBundles.length),G=0;G<this._struct.vertexBundles.length;++G){var V=this._struct.vertexBundles[G],U=t._struct.vertexBundles[G];B=V.view.offset,M=U.view.offset,D=V.view.stride,I=V.view.count+U.view.count,b=new ArrayBuffer(I*D),E=new Uint8Array(b),B+=(C=this._data.subarray(B,B+V.view.length)).length,M+=(x=t._data.subarray(M,M+U.view.length)).length,E.set(C),P=0;for(var z,H=f(V.attributes);!(z=H()).done;){var W=z.value;L=0,F=!1;for(var X,j=f(U.attributes);!(X=j()).done;){var Y=X.value;if(W.name===Y.name&&W.format===Y.format){F=!0;break}L+=j_[Y.format].size}if(F){N=j_[W.format].size,O=V.view.length+P;for(var q=0;q<U.view.count;++q){if(w=x.subarray(L,L+N),E.set(w,O),(W.name===Uc.ATTR_POSITION||W.name===Uc.ATTR_NORMAL)&&e){var K=new Float32Array(E.buffer,O,3);switch(n.set(K[0],K[1],K[2]),W.name){case Uc.ATTR_POSITION:n.transformMat4(e);break;case Uc.ATTR_NORMAL:gn.transformQuat(n,n,r)}K[0]=n.x,K[1]=n.y,K[2]=n.z}O+=V.view.stride,L+=U.view.stride}}P+=j_[W.format].size}k[G]={attributes:V.attributes,view:{offset:R.getLength(),length:b.byteLength,count:I,stride:D}},R.addBuffer(b)}for(var Q,Z,J,$=0,tt=2,et=new Array(this._struct.primitives.length),it=0;it<this._struct.primitives.length;++it){var nt=this._struct.primitives[it],rt=t._struct.primitives[it];et[it]={primitiveMode:nt.primitiveMode,vertexBundelIndices:nt.vertexBundelIndices};for(var st,at=0,ot=f(nt.vertexBundelIndices);!(st=ot()).done;){var ht=st.value;at=Math.max(at,this._struct.vertexBundles[ht].view.count)}if(nt.indexView&&rt.indexView){$=nt.indexView.count,$+=rt.indexView.count,B=nt.indexView.offset,M=rt.indexView.offset,tt=$<256?1:$<65536?2:4;var ut=new ArrayBuffer($*tt);if(Q=2===tt?new Uint16Array(ut):1===tt?new Uint8Array(ut):new Uint32Array(ut),Z=2===nt.indexView.stride?new Uint16Array(this._data.buffer,B,nt.indexView.count):1===nt.indexView.stride?new Uint8Array(this._data.buffer,B,nt.indexView.count):new Uint32Array(this._data.buffer,B,nt.indexView.count),tt===nt.indexView.stride)Q.set(Z);else for(var lt=0;lt<nt.indexView.count;++lt)Q[lt]=Z[lt];B+=nt.indexView.length,J=2===rt.indexView.stride?new Uint16Array(t._data.buffer,M,rt.indexView.count):1===rt.indexView.stride?new Uint8Array(t._data.buffer,M,rt.indexView.count):new Uint32Array(t._data.buffer,M,rt.indexView.count);for(var ct=0;ct<rt.indexView.count;++ct)Q[nt.indexView.count+ct]=at+J[ct];M+=rt.indexView.length,et[it].indexView={offset:R.getLength(),length:ut.byteLength,count:$,stride:tt},R.setNextAlignment(tt),R.addBuffer(ut)}}var _t={vertexBundles:k,primitives:et,minPosition:this._struct.minPosition,maxPosition:this._struct.maxPosition};return _t.minPosition&&t._struct.minPosition&&_t.maxPosition&&t._struct.maxPosition&&(e?(gn.add(s.center,t._struct.maxPosition,t._struct.minPosition),gn.multiplyScalar(s.center,s.center,.5),gn.subtract(s.halfExtents,t._struct.maxPosition,t._struct.minPosition),gn.multiplyScalar(s.halfExtents,s.halfExtents,.5),Ra.transform(s,s,e),gn.add(n,s.center,s.halfExtents),gn.max(_t.maxPosition,_t.maxPosition,n),gn.subtract(n,s.center,s.halfExtents),gn.min(_t.minPosition,_t.minPosition,n)):(gn.min(_t.minPosition,_t.minPosition,t._struct.minPosition),gn.max(_t.maxPosition,_t.maxPosition,t._struct.maxPosition))),this.reset({struct:_t,data:new Uint8Array(R.getCombined())}),this.initialize(),!0},i.validateMergingMesh=function(t){if(this._struct.dynamic||t._struct.dynamic)return!1;if(this._struct.vertexBundles.length!==t._struct.vertexBundles.length)return!1;for(var e=0;e<this._struct.vertexBundles.length;++e){var i=this._struct.vertexBundles[e],n=t._struct.vertexBundles[e];if(i.attributes.length!==n.attributes.length)return!1;for(var r=0;r<i.attributes.length;++r)if(i.attributes[r].format!==n.attributes[r].format)return!1}if(this._struct.primitives.length!==t._struct.primitives.length)return!1;for(var s=0;s<this._struct.primitives.length;++s){var a=this._struct.primitives[s],o=t._struct.primitives[s];if(a.vertexBundelIndices.length!==o.vertexBundelIndices.length)return!1;for(var h=0;h<a.vertexBundelIndices.length;++h)if(a.vertexBundelIndices[h]!==o.vertexBundelIndices[h])return!1;if(a.primitiveMode!==o.primitiveMode)return!1;if(a.indexView){if(void 0===o.indexView)return!1}else if(o.indexView)return!1}return!0},i.readAttribute=function(t,e){var i=this,n=null;return this._accessAttribute(t,e,(function(t,e){var r=t.view.count,s=t.attributes[e].format,a=ef(j_[s]);if(0!==r){var o=new DataView(i._data.buffer,t.view.offset+JB(t.attributes,e)),h=j_[s],u=eM(o,s);if(a&&u){for(var l=h.count,c=new a(r*l),_=t.view.stride,f=0;f<r;++f)for(var d=0;d<l;++d)c[l*f+d]=u(_*f+c.BYTES_PER_ELEMENT*d);n=c}}})),n},i.copyAttribute=function(t,e,i,n,r){var s=this,a=!1;return this._accessAttribute(t,e,(function(t,e){var o=t.view.count;if(0!==o){var h=t.attributes[e].format,u=new DataView(s._data.buffer,t.view.offset+JB(t.attributes,e)),l=new DataView(i,r),c=j_[h],_=eM(u,h),f=iM(l,h);if(_&&f){for(var d=c.count,p=t.view.stride,m=tM(h),g=n,v=m,y=0;y<o;++y)for(var S=0;S<d;++S)f(g*y+v*S,_(p*y+m*S));a=!0}}else a=!0})),a},i.readIndices=function(t){if(t>=this._struct.primitives.length)return null;var e=this._struct.primitives[t];if(!e.indexView)return null;var i=e.indexView.stride;return new(1===i?Uint8Array:2===i?Uint16Array:Uint32Array)(this._data.buffer,e.indexView.offset,e.indexView.count)},i.copyIndices=function(t,e){if(t>=this._struct.primitives.length)return!1;var i=this._struct.primitives[t];if(!i.indexView)return!1;for(var n=i.indexView.count,r=1===i.indexView.stride?ec.R8UI:2===i.indexView.stride?ec.R16UI:ec.R32UI,s=eM(new DataView(this._data.buffer),r),a=0;a<n;++a)e[a]=s(i.indexView.offset+j_[r].size*a);return!0},i.readAttributeFormat=function(t,e){var i=null;return this._accessAttribute(t,e,(function(t,e){var n=t.attributes[e].format;i=j_[n]})),i},i._accessAttribute=function(t,e,i){if(!(t>=this._struct.primitives.length))for(var n,r=f(this._struct.primitives[t].vertexBundelIndices);!(n=r()).done;){var s=n.value,a=this._struct.vertexBundles[s],o=a.attributes.findIndex((function(t){return t.name===e}));if(!(o<0)){i(a,o);break}}},i._createVertexBuffers=function(t,e){return this._struct.vertexBundles.map((function(i){var n=t.createBuffer(new r_(rc.VERTEX,oc.DEVICE,i.view.length,i.view.stride)),r=new Uint8Array(e,i.view.offset,i.view.length);return n.update(r),n}))},i.initDefault=function(e){t.prototype.initDefault.call(this,e),this.reset({struct:{vertexBundles:[],primitives:[]},data:QB})},i.releaseData=function(){this._data=QB},n(e,[{key:"_nativeAsset",get:function(){return this._data.buffer},set:function(t){this._data=new Uint8Array(t)}},{key:"subMeshCount",get:function(){var t=this.renderingSubMeshes;return t?t.length:0}},{key:"minPosition",get:function(){return this.struct.minPosition}},{key:"maxPosition",get:function(){return this.struct.maxPosition}},{key:"struct",get:function(){return this._struct}},{key:"data",get:function(){return this._data}},{key:"hash",get:function(){return this._hash||(this._hash=zl(this._data,666)),this._hash}},{key:"jointBufferIndices",get:function(){return this._jointBufferIndices?this._jointBufferIndices:this._jointBufferIndices=this._struct.primitives.map((function(t){return t.jointMapIndex||0}))}},{key:"renderingSubMeshes",get:function(){return this.initialize(),this._renderingSubMeshes}},{key:"allowDataAccess",get:function(){return this._allowDataAccess},set:function(t){this._allowDataAccess=t,this._isMeshDataUploaded&&!this._allowDataAccess&&this.releaseData()}}]),e}(vd),HB=ja(zB.prototype,"_struct",[lo],(function(){return{vertexBundles:[],primitives:[]}})),WB=ja(zB.prototype,"_hash",[lo],(function(){return 0})),XB=ja(zB.prototype,"_allowDataAccess",[lo],(function(){return!0})),UB=zB))||UB);function JB(t,e){for(var i=0,n=0;n<e;++n){var r=t[n];i+=j_[r.format].size}return i}S.Mesh=ZB;var $B=Sa.isLittleEndian;function tM(t){var e=j_[t];return e.size/e.count}function eM(t,e){var i=j_[e],n=i.size/i.count;switch(i.type){case ic.UNORM:switch(n){case 1:return function(e){return t.getUint8(e)};case 2:return function(e){return t.getUint16(e,$B)};case 4:return function(e){return t.getUint32(e,$B)}}break;case ic.SNORM:case ic.INT:switch(n){case 1:return function(e){return t.getInt8(e)};case 2:return function(e){return t.getInt16(e,$B)};case 4:return function(e){return t.getInt32(e,$B)}}break;case ic.UINT:switch(n){case 1:return function(e){return t.getUint8(e)};case 2:return function(e){return t.getUint16(e,$B)};case 4:return function(e){return t.getUint32(e,$B)}}break;case ic.FLOAT:switch(n){case 2:return function(e){return t.getUint16(e,$B)};case 4:return function(e){return t.getFloat32(e,$B)}}}return null}function iM(t,e){var i=j_[e],n=i.size/i.count;switch(i.type){case ic.UNORM:switch(n){case 1:return function(e,i){return t.setUint8(e,i)};case 2:return function(e,i){return t.setUint16(e,i,$B)};case 4:return function(e,i){return t.setUint32(e,i,$B)}}break;case ic.SNORM:case ic.INT:switch(n){case 1:return function(e,i){return t.setInt8(e,i)};case 2:return function(e,i){return t.setInt16(e,i,$B)};case 4:return function(e,i){return t.setInt32(e,i,$B)}}break;case ic.UINT:switch(n){case 1:return function(e,i){return t.setUint8(e,i)};case 2:return function(e,i){return t.setUint16(e,i,$B)};case 4:return function(e,i){return t.setUint32(e,i,$B)}}break;case ic.FLOAT:switch(n){case 2:return function(e,i){return t.setUint16(e,i,$B)};case 4:return function(e,i){return t.setFloat32(e,i,$B)}}}return null}function nM(t){if(!t.struct.encoded)return t;var e=function(t){t<0&&it(14204,t)},i=JSON.parse(JSON.stringify(t.struct)),n=new RB;n.setNextAlignment(0);for(var r,s=f(i.vertexBundles);!(r=s()).done;){var a=r.value,o=a.view,h=o.count*o.stride,u=new Uint8Array(h),l=new Uint8Array(t.data.buffer,o.offset,o.length);e(GB.decodeVertexBuffer(u,o.count,o.stride,l)),n.setNextAlignment(o.stride);var c={offset:n.getLength(),length:u.byteLength,count:o.count,stride:o.stride};a.view=c,n.addBuffer(u)}for(var _,d=f(i.primitives);!(_=d()).done;){var p=_.value;if(void 0!==p.indexView){var m=p.indexView,g=m.count*m.stride,v=new Uint8Array(g),y=new Uint8Array(t.data.buffer,m.offset,m.length);e(GB.decodeIndexBuffer(v,m.count,m.stride,y)),n.setNextAlignment(m.stride);var S={offset:n.getLength(),length:v.byteLength,count:m.count,stride:m.stride};p.indexView=S,n.addBuffer(v)}}return{struct:i,data:new Uint8Array(n.getCombined())}}function rM(t){var e=new jB.Inflate(t.data).decompress();return t.data=e,t.struct.compressed=!1,t}var sM=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_NORMAL,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RG32F),new T_(Uc.ATTR_TANGENT,ec.RGBA32F),new T_(Uc.ATTR_COLOR,ec.RGBA32F)],aM=new gn;function oM(t,e,i){i=i||{};var n,r=[],s=0,a=[],o=0,h=t.positions.slice();if(h.length>0){if(n=null,t.attributes)for(var u,l=f(t.attributes);!(u=l()).done;){var c=u.value;if(c.name===Uc.ATTR_POSITION){n=c;break}}n||(n=sM[0]),r.push(n);var _=j_[n.format];o=Math.max(o,Math.floor(h.length/_.count)),a.push({offset:s,data:h,attribute:n}),s+=_.size}if(t.normals&&t.normals.length>0){if(n=null,t.attributes)for(var d,p=f(t.attributes);!(d=p()).done;){var m=d.value;if(m.name===Uc.ATTR_NORMAL){n=m;break}}n||(n=sM[1]);var g=j_[n.format];r.push(n),o=Math.max(o,Math.floor(t.normals.length/g.count)),a.push({offset:s,data:t.normals,attribute:n}),s+=g.size}if(t.uvs&&t.uvs.length>0){if(n=null,t.attributes)for(var v,y=f(t.attributes);!(v=y()).done;){var S=v.value;if(S.name===Uc.ATTR_TEX_COORD){n=S;break}}n||(n=sM[2]);var T=j_[n.format];r.push(n),o=Math.max(o,Math.floor(t.uvs.length/T.count)),a.push({offset:s,data:t.uvs,attribute:n}),s+=T.size}if(t.tangents&&t.tangents.length>0){if(n=null,t.attributes)for(var A,b=f(t.attributes);!(A=b()).done;){var E=A.value;if(E.name===Uc.ATTR_TANGENT){n=E;break}}n||(n=sM[3]);var C=j_[n.format];r.push(n),o=Math.max(o,Math.floor(t.tangents.length/C.count)),a.push({offset:s,data:t.tangents,attribute:n}),s+=C.size}if(t.colors&&t.colors.length>0){if(n=null,t.attributes)for(var x,w=f(t.attributes);!(x=w()).done;){var R=x.value;if(R.name===Uc.ATTR_COLOR){n=R;break}}n||(n=sM[4]);var I=j_[n.format];r.push(n),o=Math.max(o,Math.floor(t.colors.length/I.count)),a.push({offset:s,data:t.colors,attribute:n}),s+=I.size}if(t.customAttributes)for(var D=0;D<t.customAttributes.length;D++){var B=t.customAttributes[D],M=j_[B.attr.format];r.push(B.attr),o=Math.max(o,Math.floor(B.values.length/M.count)),a.push({offset:s,data:B.values,attribute:B.attr}),s+=M.size}for(var P=new RB,O=new ArrayBuffer(o*s),L=new DataView(O),N=0,F=a;N<F.length;N++){var k=F[N];OD(L,k.data,k.attribute.format,k.offset,s)}P.setNextAlignment(0);var G={attributes:r,view:{offset:P.getLength(),length:O.byteLength,count:o,stride:s}};P.addBuffer(O);var V=null,U=0;if(t.indices){var z=t.indices;U=z.length,V=new ArrayBuffer(2*U),OD(new DataView(V),z,ec.R16UI)}var H={primitiveMode:t.primitiveMode||wc.TRIANGLE_LIST,vertexBundelIndices:[0]};V&&(P.setNextAlignment(2),H.indexView={offset:P.getLength(),length:V.byteLength,count:U,stride:2},P.addBuffer(V));var W=t.minPos;if(!W&&i.calculateBounds){W=gn.set(new gn,1/0,1/0,1/0);for(var X=0;X<o;++X)gn.set(aM,h[3*X+0],h[3*X+1],h[3*X+2]),gn.min(W,W,aM)}var j=t.maxPos;if(!j&&i.calculateBounds){j=gn.set(new gn,-1/0,-1/0,-1/0);for(var Y=0;Y<o;++Y)gn.set(aM,h[3*Y+0],h[3*Y+1],h[3*Y+2]),gn.max(j,j,aM)}var q={vertexBundles:[G],primitives:[H]};return W&&(q.minPosition=new gn(W.x,W.y,W.z)),j&&(q.maxPosition=new gn(j.x,j.y,j.z)),e||(e=new ZB),e.reset({struct:q,data:new Uint8Array(P.getCombined())}),e}function hM(t,e){if(e>0){var i=t%e;if(0!==i)return e-i}return 0}var uM,lM,cM=function(){function t(){}return t.createMesh=function(t,e,i){return oM(t,e,i)},t.createDynamicMesh=function(t,e,i,n){return function(t,e,i,n){n=n||{maxSubMeshes:1,maxSubMeshVertices:1024,maxSubMeshIndices:1024};var r=[],s=0;if(e.positions.length>0&&r.push(new T_(Uc.ATTR_POSITION,ec.RGB32F,!1,s++,!1,0)),e.normals&&e.normals.length>0&&r.push(new T_(Uc.ATTR_NORMAL,ec.RGB32F,!1,s++,!1,0)),e.uvs&&e.uvs.length>0&&r.push(new T_(Uc.ATTR_TEX_COORD,ec.RG32F,!1,s++,!1,0)),e.tangents&&e.tangents.length>0&&r.push(new T_(Uc.ATTR_TANGENT,ec.RGBA32F,!1,s++,!1,0)),e.colors&&e.colors.length>0&&r.push(new T_(Uc.ATTR_COLOR,ec.RGBA32F,!1,s++,!1,0)),e.customAttributes)for(var a=0;a<e.customAttributes.length;a++){var o=e.customAttributes[a],h=new T_;h.copy(o.attr),h.stream=s++,r.push(h)}for(var u=[],l=[],c=0,_=0;_<n.maxSubMeshes;_++){for(var d,p={vertexBundelIndices:[],primitiveMode:e.primitiveMode||wc.TRIANGLE_LIST},m=f(r);!(d=m()).done;){var g=d.value,v=j_[g.format],y=n.maxSubMeshVertices*v.size,S={view:{offset:c,length:y,count:0,stride:v.size},attributes:[g]},T=u.length;p.vertexBundelIndices.push(T),u.push(S),c+=y}var A=0;if(e.indices16&&e.indices16.length>0?A=2:e.indices32&&e.indices32.length>0&&(A=4),A>0){c+=hM(c,A);var b=n.maxSubMeshIndices*A,E={offset:c,length:b,count:0,stride:A};p.indexView=E,c+=b}l.push(p)}var C={info:{maxSubMeshes:n.maxSubMeshes,maxSubMeshVertices:n.maxSubMeshVertices,maxSubMeshIndices:n.maxSubMeshIndices},bounds:[]};C.bounds.length=n.maxSubMeshes;var x={struct:{vertexBundles:u,primitives:l,dynamic:C},data:new Uint8Array(c)};return i||(i=new ZB),i.reset(x),i.initialize(),i.updateSubMesh(t,e),i}(t,e,i,n)},t.decodeMesh=function(t){return nM(t)},t.inflateMesh=function(t){return rM(t)},t}(),_M=Object.freeze({__proto__:null,find:TI,toPPM:function(t,e,i){return"P3 "+e+" "+i+" 255\n"+t.filter((function(t,e){return e%4<3})).toString()+"\n"},readMesh:function(t,e){void 0===e&&(e=0);for(var i,n={positions:[]},r=new DataView(t.data.buffer,t.data.byteOffset,t.data.byteLength),s=t.struct,a=s.primitives[e],o=f(a.vertexBundelIndices);!(i=o()).done;)for(var h,u=i.value,l=s.vertexBundles[u],c=l.view.offset,_=l.view,d=_.length,p=_.stride,m=f(l.attributes);!(h=m()).done;){var g=h.value,v=xB[g.name];v&&(n[v]=(n[v]||[]).concat(LD(r,g.format,c,d,p))),c+=j_[g.format].size}var y=a.indexView;return n.indices=LD(r,ec["R"+8*y.stride+"UI"],y.offset,y.length),n},createMesh:oM,MeshUtils:cM,readBuffer:LD,writeBuffer:OD,mapBuffer:ND});t("a8",_M);var fM,dM=vn(),pM=Wn();!function(t){t[t.RECT=0]="RECT",t[t.POLYGON=1]="POLYGON"}(fM||(fM={}));var mM,gM,vM,yM=[{u:0,v:0},{u:0,v:0},{u:0,v:0},{u:0,v:0}],SM=t("b",eo("cc.SpriteFrame")(((lM=function(t){function e(){var e;return(e=t.call(this)||this).vertices=null,e.uv=[],e.unbiasUV=[],e.uvSliced=[],e._rect=$n(),e._trimmedBorder=_n(),e._offset=Yn(),e._originalSize=Zn(),e._rotated=!1,e._capInsets=[0,0,0,0],e._atlasUuid="",e._texture=void 0,e._isFlipUVY=!1,e._isFlipUVX=!1,e._original=null,e._packable=!0,e._pixelsToUnit=100,e._pivot=Yn(.5,.5),e._meshType=fM.RECT,e._extrude=0,e._customOutLine=[],e._mesh=null,e._minPos=vn(),e._maxPos=vn(),e}s(e,t),e.createWithImage=function(t){var i=t instanceof Vd?t:new Vd(t),n=new lm;n.image=i;var r=new e;return r.texture=n,r};var i=e.prototype;return i.textureLoaded=function(){return!!this.texture},i.isRotated=function(){return this._rotated},i.setRotated=function(t){this.rotated=t},i.getRect=function(t){return t?(t.set(this._rect),t):this._rect.clone()},i.setRect=function(t){this.rect=t},i.getOriginalSize=function(t){return t?(t.set(this._originalSize),t):this._originalSize.clone()},i.setOriginalSize=function(t){this.originalSize=t},i.getOffset=function(t){return t?(t.set(this._offset),t):this._offset.clone()},i.setOffset=function(t){this.offset=t},i.getGFXTexture=function(){return this._texture.getGFXTexture()},i.getGFXSampler=function(){return this._texture.getGFXSampler()},i.getHash=function(){return this._texture.getHash()},i.getSamplerInfo=function(){return this._texture.getSamplerInfo()},i.reset=function(t,e){void 0===e&&(e=!1);var i=!1;e&&(this._originalSize.set(0,0),this._rect.set(0,0,0,0),this._offset.set(0,0),this._capInsets=[0,0,0,0],this._rotated=!1,i=!0),t&&(t.texture&&(this._rect.x=this._rect.y=0,this._rect.width=t.texture.width,this._rect.height=t.texture.height,this._refreshTexture(t.texture),this.checkRect(this._texture)),t.originalSize&&this._originalSize.set(t.originalSize),t.rect&&this._rect.set(t.rect),t.offset&&this._offset.set(t.offset),void 0!==t.borderTop&&(this._capInsets[1]=t.borderTop),void 0!==t.borderBottom&&(this._capInsets[3]=t.borderBottom),void 0!==t.borderLeft&&(this._capInsets[0]=t.borderLeft),void 0!==t.borderRight&&(this._capInsets[2]=t.borderRight),void 0!==t.isRotate&&(this._rotated=!!t.isRotate),void 0!==t.isFlipUv&&(this._isFlipUVY=!!t.isFlipUv),i=!0),i&&this.texture&&this._calculateUV(),this._calcTrimmedBorder()},i.checkRect=function(t){var e=this._rect,i=e.x,n=e.y;return this._rotated?(i+=e.height,n+=e.width):(i+=e.width,n+=e.height),i>t.width?(it(3300,this.name+"/"+t.name,i,t.width),!1):!(n>t.height&&(it(3301,this.name+"/"+t.name,n,t.height),1))},i._calcTrimmedBorder=function(){var t=this._originalSize.width,e=this._originalSize.height,i=.5*(t-this._rect.width),n=.5*(e-this._rect.height);this._trimmedBorder.x=this._offset.x+i,this._trimmedBorder.y=this._offset.x-i,this._trimmedBorder.z=this._offset.y+n,this._trimmedBorder.w=this._offset.y-n},i.ensureMeshData=function(){this._mesh||(this._initVertices(),this._createMesh())},i.destroy=function(){return this._packable&&wB&&wB.deleteAtlasSpriteFrame(this),t.prototype.destroy.call(this)},i._calculateSlicedUV=function(){var t=this._rect,i=this.texture,n=i.width,r=i.height,s=this._capInsets[0],a=this._capInsets[2],o=t.width-s-a,h=this._capInsets[1],u=this._capInsets[3],l=t.height-h-u,c=this.uvSliced;if(c.length=0,this._rotated){yM[0].u=t.x/n,yM[1].u=(t.x+u)/n,yM[2].u=(t.x+u+l)/n,yM[3].u=(t.x+t.height)/n,yM[3].v=t.y/r,yM[2].v=(t.y+s)/r,yM[1].v=(t.y+s+o)/r,yM[0].v=(t.y+t.width)/r;for(var _=0;_<4;++_)for(var f=yM[_],d=0;d<4;++d){var p=yM[3-d];c.push({u:f.u,v:p.v})}}else{yM[0].u=t.x/n,yM[1].u=(t.x+s)/n,yM[2].u=(t.x+s+o)/n,yM[3].u=(t.x+t.width)/n,yM[3].v=t.y/r,yM[2].v=(t.y+h)/r,yM[1].v=(t.y+h+l)/r,yM[0].v=(t.y+t.height)/r;for(var m=0;m<4;++m)for(var g=yM[m],v=0;v<4;++v){var y=yM[v];c.push({u:y.u,v:g.v})}}this.emit(e.EVENT_UV_UPDATED,this)},i._calculateUV=function(){var t=this._rect,e=this.uv,i=this.unbiasUV,n=this.texture,r=n.width,s=n.height;if(this._rotated){var a=0===r?0:t.x/r,o=0===r?1:(t.x+t.height)/r,h=0===s?0:t.y/s,u=0===s?1:(t.y+t.width)/s;this._isFlipUVX&&this._isFlipUVY?(e[0]=o,e[1]=u,e[2]=o,e[3]=h,e[4]=a,e[5]=u,e[6]=a,e[7]=h):this._isFlipUVX?(e[0]=o,e[1]=h,e[2]=o,e[3]=u,e[4]=a,e[5]=h,e[6]=a,e[7]=u):this._isFlipUVY?(e[0]=a,e[1]=u,e[2]=a,e[3]=h,e[4]=o,e[5]=u,e[6]=o,e[7]=h):(e[0]=a,e[1]=h,e[2]=a,e[3]=u,e[4]=o,e[5]=h,e[6]=o,e[7]=u);var l=0===r?0:t.x/r,c=0===r?1:(t.x+t.height)/r,_=0===s?0:t.y/s,f=0===s?1:(t.y+t.width)/s;this._isFlipUVX&&this._isFlipUVY?(i[0]=c,i[1]=f,i[2]=c,i[3]=_,i[4]=l,i[5]=f,i[6]=l,i[7]=_):this._isFlipUVX?(i[0]=c,i[1]=_,i[2]=c,i[3]=f,i[4]=l,i[5]=_,i[6]=l,i[7]=f):this._isFlipUVY?(i[0]=l,i[1]=f,i[2]=l,i[3]=_,i[4]=c,i[5]=f,i[6]=c,i[7]=_):(i[0]=l,i[1]=_,i[2]=l,i[3]=f,i[4]=c,i[5]=_,i[6]=c,i[7]=f)}else{var d=0===r?0:t.x/r,p=0===r?1:(t.x+t.width)/r,m=0===s?1:(t.y+t.height)/s,g=0===s?0:t.y/s;this._isFlipUVX&&this._isFlipUVY?(e[0]=p,e[1]=g,e[2]=d,e[3]=g,e[4]=p,e[5]=m,e[6]=d,e[7]=m):this._isFlipUVX?(e[0]=p,e[1]=m,e[2]=d,e[3]=m,e[4]=p,e[5]=g,e[6]=d,e[7]=g):this._isFlipUVY?(e[0]=d,e[1]=g,e[2]=p,e[3]=g,e[4]=d,e[5]=m,e[6]=p,e[7]=m):(e[0]=d,e[1]=m,e[2]=p,e[3]=m,e[4]=d,e[5]=g,e[6]=p,e[7]=g);var v=0===r?0:t.x/r,y=0===r?1:(t.x+t.width)/r,S=0===s?1:(t.y+t.height)/s,T=0===s?0:t.y/s;this._isFlipUVX&&this._isFlipUVY?(i[0]=y,i[1]=T,i[2]=v,i[3]=T,i[4]=y,i[5]=S,i[6]=v,i[7]=S):this._isFlipUVX?(i[0]=y,i[1]=S,i[2]=v,i[3]=S,i[4]=y,i[5]=T,i[6]=v,i[7]=T):this._isFlipUVY?(i[0]=v,i[1]=T,i[2]=y,i[3]=T,i[4]=v,i[5]=S,i[6]=y,i[7]=S):(i[0]=v,i[1]=S,i[2]=y,i[3]=S,i[4]=v,i[5]=T,i[6]=y,i[7]=T)}this._calculateSlicedUV()},i._setDynamicAtlasFrame=function(t){t&&(this._original={_texture:this._texture,_x:this._rect.x,_y:this._rect.y},this._texture=t.texture,this._rect.x=t.x,this._rect.y=t.y,this._calculateUV())},i._resetDynamicAtlasFrame=function(){this._original&&(this._rect.x=this._original._x,this._rect.y=this._original._y,this._texture=this._original._texture,this._original=null,this._calculateUV())},i._checkPackable=function(){var t=wB;if(t){var e=this._texture;if(e instanceof lm&&!e.isCompressed){var i=this.width,n=this.height;if(!e.image||i>t.maxFrameSize||n>t.maxFrameSize)this._packable=!1;else{var r=A.HTMLCanvasElement;e.image&&e.image instanceof r&&(this._packable=!0)}}else this._packable=!1}},i._serialize=function(){return null},i._deserialize=function(t){var e=t,i=e.rect;i&&(this._rect=new Jn(i.x,i.y,i.width,i.height));var n=e.offset;e.offset&&(this._offset=Yn(n.x,n.y));var r=e.originalSize;e.originalSize&&(this._originalSize=Zn(r.width,r.height)),this._rotated=!!e.rotated,this._name=e.name,this._packable=!!e.packable,this._pixelsToUnit=e.pixelsToUnit;var s=e.pivot;s&&(this._pivot=Yn(s.x,s.y)),this._meshType=e.meshType;var a=e.capInsets;a&&(this._capInsets[0]=a[0],this._capInsets[1]=a[1],this._capInsets[2]=a[2],this._capInsets[3]=a[3]);var o=e.vertices;if(o){this.vertices||(this.vertices={rawPosition:[],positions:[],indexes:o.indexes,uv:o.uv,nuv:o.nuv,minPos:vn(o.minPos.x,o.minPos.y,o.minPos.z),maxPos:vn(o.maxPos.x,o.maxPos.y,o.maxPos.z)}),this.vertices.rawPosition.length=0;for(var h=o.rawPosition,u=0;u<h.length;u+=3)this.vertices.rawPosition.push(vn(h[u],h[u+1],h[u+2]));this._updateMeshVertices()}},i.clone=function(){var t,i,n,r,s,a=new e,o=this.vertices;return a.vertices=o?{rawPosition:o.rawPosition.slice(0),positions:o.positions.slice(0),indexes:o.indexes.slice(0),uv:o.uv.slice(0),nuv:o.nuv.slice(0),minPos:o.minPos.clone(),maxPos:o.maxPos.clone()}:null,(t=a.uv).splice.apply(t,[0,a.uv.length].concat(this.uv)),(i=a.unbiasUV).splice.apply(i,[0,a.unbiasUV.length].concat(this.unbiasUV)),(n=a.uvSliced).splice.apply(n,[0,a.uvSliced.length].concat(this.uvSliced)),a._rect.set(this._rect),a._trimmedBorder.set(this._trimmedBorder),a._offset.set(this._offset),a._originalSize.set(this._originalSize),a._rotated=this._rotated,(r=a._capInsets).splice.apply(r,[0,a._capInsets.length].concat(this._capInsets)),a._atlasUuid=this._atlasUuid,a._texture=this._texture,a._isFlipUVX=this._isFlipUVX,a._isFlipUVY=this._isFlipUVY,this._original?a._original={_texture:this._original._texture,_x:this._original._x,_y:this._original._y}:a._original=null,a._packable=this._packable,a._pixelsToUnit=this._pixelsToUnit,a._pivot.set(this._pivot),a._meshType=this._meshType,a._extrude=this._extrude,(s=a._customOutLine).splice.apply(s,[0,a._customOutLine.length].concat(this._customOutLine)),a._minPos=this._minPos,a._maxPos=this._maxPos,this._mesh&&a._createMesh(),a},i._refreshTexture=function(t){this._texture=t;var e=this._texture,i={},n=!1;0!==this._rect.width&&0!==this._rect.height&&this.checkRect(e)||(i.rect=$n(0,0,e.width,e.height),n=!0),(0===this._originalSize.width||0===this._originalSize.height||n)&&(i.originalSize=Zn(e.width,e.height),n=!0),n&&this.reset(i),this._checkPackable(),this._mesh&&this._updateMesh()},i.onLoaded=function(){this._calcTrimmedBorder()},i.initDefault=function(e){t.prototype.initDefault.call(this,e);var i=new lm;i.initDefault(),this._refreshTexture(i),this._calculateUV()},i.validate=function(){return this._texture&&this._rect&&0!==this._rect.width&&0!==this._rect.height},i._initVertices=function(){if(this.vertices?(this.vertices.rawPosition.length=0,this.vertices.positions.length=0,this.vertices.indexes.length=0,this.vertices.uv.length=0,this.vertices.nuv.length=0,this.vertices.minPos.set(0,0,0),this.vertices.maxPos.set(0,0,0)):this.vertices={rawPosition:[],positions:[],indexes:[],uv:[],nuv:[],minPos:vn(),maxPos:vn()},this._meshType===fM.POLYGON);else{var t=this.texture,e=t.width,i=t.height,n=this.rect,r=n.width,s=n.height,a=n.x,o=i-n.y-s,h=r/2,u=s/2,l=0===e?0:a/e,c=0===e?1:(a+r)/e,_=0===i?1:(o+s)/i,f=0===i?0:o/i;dM.set(-h,-u,0),this.vertices.rawPosition.push(dM.clone()),this.vertices.uv.push(a),this.vertices.uv.push(o+s),this.vertices.nuv.push(l),this.vertices.nuv.push(f),this.vertices.minPos.set(dM),dM.set(h,-u,0),this.vertices.rawPosition.push(dM.clone()),this.vertices.uv.push(a+r),this.vertices.uv.push(o+s),this.vertices.nuv.push(c),this.vertices.nuv.push(f),dM.set(-h,u,0),this.vertices.rawPosition.push(dM.clone()),this.vertices.uv.push(a),this.vertices.uv.push(o),this.vertices.nuv.push(l),this.vertices.nuv.push(_),dM.set(h,u,0),this.vertices.rawPosition.push(dM.clone()),this.vertices.uv.push(a+r),this.vertices.uv.push(o),this.vertices.nuv.push(c),this.vertices.nuv.push(_),this.vertices.maxPos.set(dM),this.vertices.indexes.push(0),this.vertices.indexes.push(1),this.vertices.indexes.push(2),this.vertices.indexes.push(2),this.vertices.indexes.push(1),this.vertices.indexes.push(3)}this._updateMeshVertices()},i._updateMeshVertices=function(){pM.identity();var t=1/this._pixelsToUnit,e=vn(-(this._pivot.x-.5)*this.rect.width*t,-(this._pivot.y-.5)*this.rect.height*t,0);pM.transform(e),e.set(t,t,1),pM.scale(e);for(var i=this.vertices,n=0;n<i.rawPosition.length;n++){var r=i.rawPosition[n];gn.transformMat4(e,r,pM),gn.toArray(i.positions,e,3*n)}gn.transformMat4(this._minPos,i.minPos,pM),gn.transformMat4(this._maxPos,i.maxPos,pM)},i._createMesh=function(){this._mesh=oM({primitiveMode:wc.TRIANGLE_LIST,positions:this.vertices.positions,uvs:this.vertices.nuv,indices:this.vertices.indexes,minPos:this._minPos,maxPos:this._maxPos,attributes:[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RG32F)]})},i._updateMesh=function(){this._mesh&&this._mesh.destroy(),this._initVertices(),this._createMesh()},n(e,[{key:"insetTop",get:function(){return this._capInsets[1]},set:function(t){this._capInsets[1]!==t&&(this._capInsets[1]=t,this._texture&&this._calculateSlicedUV())}},{key:"insetBottom",get:function(){return this._capInsets[3]},set:function(t){this._capInsets[3]!==t&&(this._capInsets[3]=t,this._texture&&this._calculateSlicedUV())}},{key:"insetLeft",get:function(){return this._capInsets[0]},set:function(t){this._capInsets[0]!==t&&(this._capInsets[0]=t,this._texture&&this._calculateSlicedUV())}},{key:"insetRight",get:function(){return this._capInsets[2]},set:function(t){this._capInsets[2]!==t&&(this._capInsets[2]=t,this._texture&&this._calculateSlicedUV())}},{key:"rect",get:function(){return this._rect},set:function(t){this._rect.equals(t)||(this._rect.set(t),this._texture&&this._calculateUV(),this._calcTrimmedBorder())}},{key:"originalSize",get:function(){return this._originalSize},set:function(t){this._originalSize.equals(t)||(this._originalSize.set(t),this._texture&&this._calculateUV(),this._calcTrimmedBorder())}},{key:"offset",get:function(){return this._offset},set:function(t){this._offset.set(t),this._calcTrimmedBorder()}},{key:"rotated",get:function(){return this._rotated},set:function(t){this._rotated!==t&&(this._rotated=t,this._texture&&this._calculateUV())}},{key:"texture",get:function(){return this._texture},set:function(t){t?t!==this._texture&&this.reset({texture:t},!0):tt(3122,this.name)}},{key:"atlasUuid",get:function(){return this._atlasUuid},set:function(t){this._atlasUuid=t}},{key:"width",get:function(){return this._texture.width}},{key:"height",get:function(){return this._texture.height}},{key:"_textureSource",set:function(t){globalThis.Build?this._texture=t:t&&(this._refreshTexture(t),this._calculateUV())}},{key:"flipUVX",get:function(){return this._isFlipUVX},set:function(t){this._isFlipUVX=t,this._calculateUV()}},{key:"flipUVY",get:function(){return this._isFlipUVY},set:function(t){this._isFlipUVY=t,this._calculateUV()}},{key:"packable",get:function(){return this._packable},set:function(t){this._packable=t}},{key:"original",get:function(){return this._original}},{key:"pixelsToUnit",get:function(){return this._pixelsToUnit}},{key:"pivot",get:function(){return this._pivot}},{key:"mesh",get:function(){return this._mesh}},{key:"trimmedBorder",get:function(){return this._trimmedBorder}}]),e}(vd)).EVENT_UV_UPDATED="uv_updated",lM.MeshType=fM,uM=lM))||uM);S.SpriteFrame=SM;var TM,AM=t("a",eo("cc.SpriteAtlas")((gM=function(t){function e(){var e;return(e=t.call(this)||this).spriteFrames=vM&&vM(),e}s(e,t);var i=e.prototype;return i.getTexture=function(){var t=Object.keys(this.spriteFrames);if(t.length>0){var e=this.spriteFrames[t[0]];return e&&e.texture}return null},i.getSpriteFrame=function(t){var e=this.spriteFrames[t];return e?(e.name||(e.name=t),e):null},i.getSpriteFrames=function(){for(var t=[],e=this.spriteFrames,i=0,n=Object.keys(e);i<n.length;i++){var r=n[i];t.push(e[r])}return t},i._serialize=function(){return null},i._deserialize=function(t,e){var i=t;this._name=i.name;var n=i.spriteFrames;this.spriteFrames=Lt();for(var r=0;r<n.length;r+=2)e.result.push(this.spriteFrames,n[r],n[r+1],ue(SM))},e}(vd),vM=ja(gM.prototype,"spriteFrames",[lo],(function(){return Lt()})),mM=gM))||mM);S.SpriteAtlas=AM;var bM,EM,CM,xM=t("F",eo("cc.Font")(TM=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(vd))||TM);S.Font=xM;var wM=t("T",eo("cc.TTFFont")((EM=function(t){function e(){var e;return(e=t.call(this)||this)._fontFamily=CM&&CM(),e}return s(e,t),e.prototype.initDefault=function(e){this._fontFamily="Arial",t.prototype.initDefault.call(this,e)},n(e,[{key:"_nativeAsset",get:function(){return this._fontFamily},set:function(t){this._fontFamily=t||"Arial"}},{key:"_nativeDep",get:function(){return{uuid:this._uuid,__nativeName__:this._native,ext:ia(this._native),__isNative__:!0}}}]),e}(xM),CM=ja(EM.prototype,"_fontFamily",[lo],(function(){return null})),m(EM.prototype,"_nativeAsset",[jo,Oo],Object.getOwnPropertyDescriptor(EM.prototype,"_nativeAsset"),EM.prototype),m(EM.prototype,"_nativeDep",[jo],Object.getOwnPropertyDescriptor(EM.prototype,"_nativeDep"),EM.prototype),bM=EM))||bM);S.TTFFont=wM;var RM=t("D",.26),IM=t("E",(RM+1)/2-RM);var DM=new le(2);DM.get=function(){return this._get()||{key:"",value:0,prev:null,next:null}};var BM=new(t("K",function(){function t(t){this.count=0,this.limit=0,this.datas={},this.limit=t}var e=t.prototype;return e.moveToHead=function(t){t.next=this.head,t.prev=null,this.head&&(this.head.prev=t),this.head=t,this.tail||(this.tail=t),this.count++,this.datas[t.key]=t},e.put=function(t,e){var i=DM.get();if(i.key=t,i.value=e,this.count>=this.limit){var n=this.tail;delete this.datas[n.key],this.count--,this.tail=n.prev,this.tail.next=null,n.prev=null,n.next=null,DM.put(n)}this.moveToHead(i)},e.remove=function(t){t.prev?t.prev.next=t.next:this.head=t.next,t.next?t.next.prev=t.prev:this.tail=t.prev,delete this.datas[t.key],this.count--},e.get=function(t){var e=this.datas[t];return e?(this.remove(e),this.moveToHead(e),e.value):null},e.clear=function(){this.count=0,this.datas={},this.head=null,this.tail=null},e.has=function(t){return!!this.datas[t]},e.delete=function(t){var e=this.datas[t];this.remove(e)},t}()))(100),MM=/([a-zA-Z0-9ÄÖÜäöüßéèçàùêâîôûа-яА-ЯЁё]+|\S)/,PM=/^[!,.:;'}\]%\?>、‘“》?。,!]/,OM=/([a-zA-Z0-9ÄÖÜäöüßéèçàùêâîôûаíìÍÌïÁÀáàÉÈÒÓòóŐőÙÚŰúűñÑæÆœŒÃÂãÔõěščřžýáíéóúůťďňĚŠČŘŽÁÍÉÓÚŤżźśóńłęćąŻŹŚÓŃŁĘĆĄ-яА-ЯЁёáàảạãăắằẳẵặâấầẩẫậéèẻẽẹêếềểễệiíìỉĩịóòỏõọôốồổỗộơớờởỡợúùủũụưứừửữựýỳỷỹỵđÁÀẢẠÃĂẮẰẲẴẶÂẤẦẨẪẬÉÈẺẼẸÊẾỀỂỄỆIÍÌỈĨỊÓÒỎÕỌÔỐỒỔỖỘƠỚỜỞỠỢÚÙỦŨỤƯỨỪỬỮỰÝỲỶỸỴĐ]+|\S)$/,LM=/[a-zA-Z0-9ÄÖÜäöüßéèçàùêâîôûаíìÍÌïÁÀáàÉÈÒÓòóŐőÙÚŰúűñÑæÆœŒÃÂãÔõěščřžýáíéóúůťďňĚŠČŘŽÁÍÉÓÚŤżźśóńłęćąŻŹŚÓŃŁĘĆĄ-яА-ЯЁёáàảạãăắằẳẵặâấầẩẫậéèẻẽẹêếềểễệiíìỉĩịóòỏõọôốồổỗộơớờởỡợúùủũụưứừửữựýỳỷỹỵđÁÀẢẠÃĂẮẰẲẴẶÂẤẦẨẪẬÉÈẺẼẸÊẾỀỂỄỆIÍÌỈĨỊÓÒỎÕỌÔỐỒỔỖỘƠỚỜỞỠỢÚÙỦŨỤƯỨỪỬỮỰÝỲỶỸỴĐ]+$/,NM=/^[a-zA-Z0-9ÄÖÜäöüßéèçàùêâîôûаíìÍÌïÁÀáàÉÈÒÓòóŐőÙÚŰúűñÑæÆœŒÃÂãÔõěščřžýáíéóúůťďňĚŠČŘŽÁÍÉÓÚŤżźśóńłęćąŻŹŚÓŃŁĘĆĄ-яА-ЯЁёáàảạãăắằẳẵặâấầẩẫậéèẻẽẹêếềểễệiíìỉĩịóòỏõọôốồổỗộơớờởỡợúùủũụưứừửữựýỳỷỹỵđÁÀẢẠÃĂẮẰẲẴẶÂẤẦẨẪẬÉÈẺẼẸÊẾỀỂỄỆIÍÌỈĨỊÓÒỎÕỌÔỐỒỔỖỘƠỚỜỞỠỢÚÙỦŨỤƯỨỪỬỮỰÝỲỶỸỴĐ]/;function FM(t){return/^[\u4E00-\u9FFF\u3400-\u4DFF]+$/.test(t)||/[\u3000-\u303F]|[\u3040-\u309F]|[\u30A0-\u30FF]|[\uFF00-\uFFEF]|[\u4E00-\u9FAF]|[\u2605-\u2606]|[\u2190-\u2195]|\u203B/g.test(t)||/^[\u1100-\u11FF]|[\u3130-\u318F]|[\uA960-\uA97F]|[\uAC00-\uD7AF]|[\uD7B0-\uD7FF]+$/.test(t)}function kM(t){var e=t.charCodeAt(0);return e>=9&&e<=13||32===e||133===e||160===e||5760===e||e>=8192&&e<=8202||8232===e||8233===e||8239===e||8287===e||12288===e}function GM(t,e,i){var n=(i||t.font)+"🎮"+e,r=BM.get(n);if(null!==r)return r;var s=t.measureText(e),a=s&&s.width||0;return BM.put(n,a),a}function VM(t){for(var e=t.length,i=0,n=0,r=0;r<e;r++)8205!==(n=t.charCodeAt(r))&&(n>=55296&&n<=56319&&(n=t.charCodeAt(r+1))>=56320&&n<=57343?((r+2>=e||8205!==t.charCodeAt(r+2))&&i++,r++):i++);return i}function UM(t,e){for(var i=t.length,n=0,r=0,s=0,a=0,o=0;o<i;o++)if(8205!==(a=t.charCodeAt(o)))if(a>=55296&&a<=56319&&(n++,(a=t.charCodeAt(o+1))>=56320&&a<=57343)){if(n++,o+2>=i||8205!==t.charCodeAt(o+2)){if(e===r)return t.slice(s,s+n);s+=n,r++,n=0}o++}else{if(e===r)return t.charAt(o);s=o+1,r++,n=0}else n++;return""}function zM(t,e){var i=UM(t,e);if(1===i.length)return""+i.charCodeAt(0);for(var n="",r=0;r<i.length;r++)n+=""+i.charCodeAt(r);return""+n}function HM(t,e){if(e>=t.length)return t.length;for(var i=e,n=t[i];i>=0&&(""===n&&(n=t[--i]),n>="\udc00"&&n<="\udfff"&&i-1>=0&&(n=t[--i]),n>="\ud800"&&n<="\udbff")&&i-1>=0&&""===t[i-1];)n=t[--i];return i}function WM(t,e){for(var i=e,n=e,r=t[n];n<t.length;)if(""===r&&(i++,(r=t[++n])>="\ud800"&&r<="\udbff"&&(i++,r=t[++n])),r>="\ud800"&&r<="\udbff")i++,r=t[++n];else{if(!(r>="\udc00"&&r<="\udfff"))break;if(r=t[++n],!(n<t.length&&""===t[n]))break;i++,r=t[n]}return i}function XM(t,e,i){var n=HM(t,e);n<e&&(n=WM(t,e)+1);var r=i;if(void 0!==i){r=WM(t,i=Math.max(0,i-1));var s=HM(t,i);s<n||s===n&&e>n?r=n:r+=1}return t.substring(n,r)}function jM(t){return NM.exec(t)}function YM(t){return LM.exec(t)}function qM(t,e,i,n){var r=[];if(0===t.length||i<0)return r.push(""),r;for(var s=t;e>i&&s.length>1;){for(var a=s.length*(i/e)|0,o=XM(s,a),h=e-n(o),u=o,l=0,c=0;h>i&&c++<100;)a*=i/h,h=e-n(o=XM(s,a|=0));for(c=0;o&&h<=i&&c++<100;){var _=MM.exec(o);u=o,h=e-n(o=XM(s,a+=l=_?_[0].length:1))}0==(a-=l)?(a=1,u=XM(s,1)):1===a&&s[0]>="\ud800"&&s[0]<="\udbff"&&(a=2,u=XM(s,2));var f=XM(s,0,a),d=void 0;PM.test(u||o)&&(0==(a-=(d=OM.exec(f))?d[0].length:0)&&(a=1),u=XM(s,a),f=XM(s,0,a)),NM.test(u)&&(d=LM.exec(f))&&f!==d[0]&&(u=XM(s,a-=d[0].length),f=XM(s,0,a)),(0===r.length||(f=f.trim()).length>0)&&r.push(f),e=n(s=u||o)}return(0===r.length||(s=s.trim()).length>0)&&r.push(s),r}var KM,QM=A.document,ZM=null,JM=-1,$M="BES bswy:->@123丁ぁᄁ",tP=Object.create(null),eP=[],iP=3e3;function nP(){for(var t=!0,e=Date.now(),i=eP.length-1;i>=0;i--){var n=eP[i],r=n.fontFamilyName;if(e-n.startTime>iP)tt(4933,r),n.onComplete(null,r),eP.splice(i,1);else{var s=n.refWidth,a="40px "+r;ZM.font=a,s!==GM(ZM,$M,a)?(eP.splice(i,1),n.onComplete(null,r)):t=!1}}t&&(clearInterval(JM),JM=-1)}function rP(t,e,i){var n=function(t){var e=t.lastIndexOf(".ttf");if(-1===e)return t;var i,n=t.lastIndexOf("/");return-1!==(i=-1===n?t.substring(0,e)+"_LABEL":t.substring(n+1,e)+"_LABEL").indexOf(" ")&&(i='"'+i+'"'),i}(t);if(tP[n])i(null,n);else{if(!ZM){var r=QM.createElement("canvas");r.width=100,r.height=100,ZM=r.getContext("2d")}var s="40px "+n,a=QM.createElement("style");a.type="text/css";var o="";Number.isNaN(n)?o+="@font-face { font-family:"+n+"; src:":o+='@font-face { font-family:"'+n+'"; src:',o+='url("'+t+'");',a.textContent=o+"}",QM.body.appendChild(a);var h=QM.createElement("div"),u=h.style;if(u.fontFamily=n,h.innerHTML=".",u.position="absolute",u.left="-100px",u.top="-100px",QM.body.appendChild(h),function(){if(void 0===KM)if("FontFace"in A){var t=/Gecko.*Firefox\/(\d+)/.exec(A.navigator.userAgent),e=/OS X.*Version\/10\..*Safari/.exec(A.navigator.userAgent)&&/Apple/.exec(A.navigator.vendor);KM=t?parseInt(t[1],10)>42:!e}else KM=!1;return KM}())!function(t,e,i){var n=new Promise((function(i,n){!function r(){Date.now()-t>=iP?n():QM.fonts.load("40px "+e).then((function(t){t.length>=1?i():setTimeout(r,100)}),(function(){n()}))}()})),r=null,s=new Promise((function(t,e){r=setTimeout(e,iP)}));Promise.race([s,n]).then((function(){r&&(clearTimeout(r),r=null),i(null,e)}),(function(){tt(4933,e),i(null,e)}))}(Date.now(),n,i);else{var l={fontFamilyName:n,refWidth:GM(ZM,$M,s),onComplete:i,startTime:Date.now()};eP.push(l),-1===JM&&(JM=setInterval(nP,100))}tP[n]=a}}function sP(t,e,i,n){var r=new wM;r._nativeUrl=t,r._nativeAsset=e,n(null,r)}zS.register({".font":rP,".eot":rP,".ttf":rP,".woff":rP,".svg":rP,".ttc":rP}),tT.register({".font":sP,".eot":sP,".ttf":sP,".woff":sP,".svg":sP,".ttc":sP});var aP,oP,hP,uP,lP,cP,_P,fP,dP,pP=/^(click)(\s)*=|(param)(\s)*=/,mP=/(\s)*src(\s)*=|(\s)*height(\s)*=|(\s)*width(\s)*=|(\s)*align(\s)*=|(\s)*offset(\s)*=|(\s)*click(\s)*=|(\s)*param(\s)*=/,gP=t("z",function(){function t(){this._specialSymbolArray=[],this._stack=[],this._resultObjectArray=[],this._specialSymbolArray.push([/</g,"<"]),this._specialSymbolArray.push([/>/g,">"]),this._specialSymbolArray.push([/&/g,"&"]),this._specialSymbolArray.push([/"/g,'"']),this._specialSymbolArray.push([/'/g,"'"])}var e=t.prototype;return e.parse=function(t){this._resultObjectArray.length=0,this._stack.length=0;for(var e=0,i=t.length;e<i;){var n=t.indexOf(">",e),r=-1;if(n>=0&&(r=t.lastIndexOf("<",n))<e-1&&(r=t.indexOf("<",n+1),n=t.indexOf(">",r+1)),r<0)this._stack.pop(),this._processResult(t.substring(e)),e=i;else{var s=t.substring(e,r),a=t.substring(r+1,n);""===a&&(s=t.substring(e,n+1)),this._processResult(s),-1===n?n=r:"/"===t.charAt(r+1)?this._stack.pop():this._addToStack(a),e=n+1}}return this._resultObjectArray},e._attributeToObject=function(t){t=t.trim();var e={},i=/^(color|size)(\s)*=/.exec(t),n="",r=0,s="";if(i){if(n=i[0],""===(t=t.substring(n.length).trim()))return e;switch(r=t.indexOf(" "),n[0]){case"c":e.color=r>-1?t.substring(0,r).trim():t;break;case"s":e.size=parseInt(t)}return r>-1&&(s=t.substring(r+1).trim(),e.event=this._processEventHandler(s)),e}if((i=/^(br(\s)*\/)/.exec(t))&&i[0].length>0&&(n=i[0].trim()).startsWith("br")&&"/"===n[n.length-1])return e.isNewLine=!0,this._resultObjectArray.push({text:"",style:{isNewLine:!0}}),e;var a="",o=-1;if((i=/^(img(\s)*src(\s)*=[^>]+\/)/.exec(t))&&i[0].length>0&&(n=i[0].trim()).startsWith("img")&&"/"===n[n.length-1]){var h;i=mP.exec(t);for(var u=!1;i;){var l=(n=(t=t.substring(t.indexOf(i[0]))).substr(0,i[0].length)).length;if(n=(n=n.replace(/[^a-zA-Z]/g,"").trim()).toLowerCase(),a=t.substring(l).trim(),o="src"===n?this.getRightQuotationIndex(a):-1,h=(r=a.indexOf(" ",o+1>=a.length?-1:o+1))>-1?a.substr(0,r):a,t=a.substring(r).trim(),h.endsWith("/")&&(h=h.slice(0,-1)),"src"===n){switch(h.charCodeAt(0)){case 34:case 39:u=!0,h=h.slice(1,-1)}e.isImage=!0,e.src=h}else if("height"===n)e.imageHeight=parseInt(h);else if("width"===n)e.imageWidth=parseInt(h);else if("align"===n){switch(h.charCodeAt(0)){case 34:case 39:h=h.slice(1,-1)}e.imageAlign=h.toLowerCase()}else"offset"===n?e.imageOffset=h:"click"===n&&(e.event=this._processEventHandler(n+"="+h));e.event&&"param"===n&&(e.event[n]=h.replace(/^"|"$/g,"")),i=mP.exec(t)}return u&&e.isImage&&this._resultObjectArray.push({text:"",style:e}),{}}if(i=/^(outline(\s)*[^>]*)/.exec(t)){var c={color:"#ffffff",width:1};if(t=i[0].substring("outline".length).trim()){var _,f=/(\s)*color(\s)*=|(\s)*width(\s)*=|(\s)*click(\s)*=|(\s)*param(\s)*=/;for(i=f.exec(t);i;)n=(t=t.substring(t.indexOf(i[0]))).substr(0,i[0].length),_=(r=(a=t.substring(n.length).trim()).indexOf(" "))>-1?a.substr(0,r):a,n=(n=n.replace(/[^a-zA-Z]/g,"").trim()).toLowerCase(),t=a.substring(r).trim(),"click"===n?e.event=this._processEventHandler(n+"="+_):"color"===n?c.color=_:"width"===n&&(c.width=parseInt(_)),e.event&&"param"===n&&(e.event[n]=_.replace(/^"|"$/g,"")),i=f.exec(t)}e.outline=c}if((i=/^(on|u|b|i)(\s)*/.exec(t))&&i[0].length>0){switch(n=i[0],t=t.substring(n.length).trim(),n[0]){case"u":e.underline=!0;break;case"i":e.italic=!0;break;case"b":e.bold=!0}if(""===t)return e;e.event=this._processEventHandler(t)}return e},e.getRightQuotationIndex=function(t){var e=-1,i=-1,n=t.indexOf("'"),r=t.indexOf('"'),s=r>-1&&(r<n||-1===n);return n>-1&&(n<r||-1===r)?(e=n,i=t.indexOf("'",e+1>=t.length?-1:e+1)):s&&(e=r,i=t.indexOf('"',e+1>=t.length?-1:e+1)),i},e._processEventHandler=function(t){for(var e={},i=0,n=!1,r=pP.exec(t);r;){var s=r[0],a="";if(n=!1,'"'===(t=t.substring(s.length).trim()).charAt(0))(i=t.indexOf('"',1))>-1&&(a=t.substring(1,i).trim(),n=!0),i++;else if("'"===t.charAt(0))(i=t.indexOf("'",1))>-1&&(a=t.substring(1,i).trim(),n=!0),i++;else{var o=/(\S)+/.exec(t);i=(a=o?o[0]:"").length}n&&(e[s=s.substring(0,s.length-1).trim()]=a),t=t.substring(i).trim(),r=pP.exec(t)}return e},e._addToStack=function(t){var e=this._attributeToObject(t);if(0===this._stack.length)this._stack.push(e);else{if(e.isNewLine||e.isImage)return;var i=this._stack[this._stack.length-1];for(var n in i)e[n]||(e[n]=i[n]);this._stack.push(e)}},e._processResult=function(t){0!==t.length&&(t=this._escapeSpecialSymbol(t),this._stack.length>0?this._resultObjectArray.push({text:t,style:this._stack[this._stack.length-1]}):this._resultObjectArray.push({text:t}))},e._escapeSpecialSymbol=function(t){for(var e,i=f(this._specialSymbolArray);!(e=i()).done;){var n=e.value,r=n[0],s=n[1];t=t.replace(r,s)}return t},t}()),vP=function(){this.u=0,this.v=0,this.w=0,this.h=0,this.offsetX=0,this.offsetY=0,this.valid=!1,this.xAdvance=0},yP=function(){function t(t){this.letterDefinitions={},this.texture=t}var e=t.prototype;return e.addLetterDefinitions=function(t,e){this.letterDefinitions[t]=e},e.cloneLetterDefinition=function(){for(var t={},e=0,i=Object.keys(this.letterDefinitions);e<i.length;e++){var n=i[e],r=new vP;jt(r,this.letterDefinitions[n]),t[n]=r}return t},e.getTexture=function(){return this.texture},e.getLetter=function(t){return this.letterDefinitions[t]},e.getLetterDefinitionForChar=function(t){var e=zM(t,0),i=null;return Object.prototype.hasOwnProperty.call(this.letterDefinitions,e)&&(i=this.letterDefinitions[e]),i},e.clear=function(){this.letterDefinitions={}},t}(),SP=t("B",(aP=eo("cc.BitmapFont"),oP=Lo(SM),aP((uP=function(t){function e(){var e;return(e=t.call(this)||this).fntDataStr=lP&&lP(),e.spriteFrame=cP&&cP(),e.fontSize=_P&&_P(),e.fntConfig=fP&&fP(),e}return s(e,t),e.prototype.onLoaded=function(){var t=this.spriteFrame;!this.fontDefDictionary&&t&&(this.fontDefDictionary=new yP(t.texture));var e=this.fntConfig;if(e){var i=e.fontDefDictionary;for(var n in i){var r=i[n],s=new vP,a=r.rect;s.offsetX=r.xOffset,s.offsetY=r.yOffset,s.w=a.width,s.h=a.height,s.u=a.x,s.v=a.y,s.valid=!0,s.xAdvance=r.xAdvance,this.fontDefDictionary.addLetterDefinitions(n,s)}}else tt(16376)},e}(xM),lP=ja(uP.prototype,"fntDataStr",[lo],(function(){return""})),cP=ja(uP.prototype,"spriteFrame",[oP],(function(){return null})),_P=ja(uP.prototype,"fontSize",[lo],(function(){return-1})),fP=ja(uP.prototype,"fntConfig",[lo],(function(){return null})),hP=uP))||hP));S.BitmapFont=SP;var TP,AP=t("L",eo("cc.LabelAtlas")(dP=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(SP))||dP);S.LabelAtlas=AP;var bP,EP=function(){function t(){this.pool=[]}t.getInstance=function(){return TP||(TP=new t),TP};var e=t.prototype;return e.get=function(){var t=this.pool.pop();if(!t){var e=A.document.createElement("canvas"),i=e.getContext("2d");t={canvas:e,context:i}}return t},e.put=function(t){this.pool.length>=Pe.MAX_LABEL_CANVAS_POOL_SIZE||this.pool.push(t)},t}(),CP=En.WHITE.clone(),xP="rgba(255, 255, 255, "+(1/255).toFixed(3)+")",wP=function(){function t(t,e){this.image=null,this.data=null,this.canvas=null,this.context=null,this.width=0,this.height=0,this.offsetY=0,this.char=t,this.labelInfo=e,this.hash=""+zM(t,0)+e.hash}var e=t.prototype;return e.updateRenderData=function(){this._updateProperties(),this._updateTexture()},e.destroy=function(){this.image=null,EP.getInstance().put(this.data)},e._updateProperties=function(){if(this.data=EP.getInstance().get(),this.canvas=this.data.canvas,this.context=this.data.context,this.context){var t=this.labelInfo.fontScale;this.context.font=this.labelInfo.fontDesc;var e=GM(this.context,this.char,this.labelInfo.fontDesc),i=2*this.labelInfo.margin+2;this.width=parseFloat(e.toFixed(2))*t+i,this.height=(1+RM)*this.labelInfo.fontSize*t+i,this.offsetY=-this.labelInfo.fontSize*RM*t/2}this.canvas.width!==this.width&&(this.canvas.width=this.width),this.canvas.height!==this.height&&(this.canvas.height=this.height),this.image||(this.image=new Vd),this.image.reset(this.canvas)},e._updateTexture=function(){if(this.context&&this.canvas){var t=this.context,e=this.labelInfo,i=this.canvas.width,n=this.canvas.height,r=e.fontScale;t.textAlign="center",t.textBaseline="alphabetic",t.clearRect(0,0,i,n),t.fillStyle=xP,t.fillRect(0,0,i,n),t.font=e.fontDesc.replace(/(\d+)(\.\d+)?(px|em|rem|pt)/g,(function(t,e,i,n){return(+e*r+(+i||0)*r).toString()+n}));var s=e.fontSize*r,a=i/2,o=n/2+s*IM+0*s,h=e.color;if(t.lineJoin="round",t.fillStyle="rgba("+h.r+", "+h.g+", "+h.b+", 1)",e.isOutlined){var u=e.out||CP;t.strokeStyle="rgba("+u.r+", "+u.g+", "+u.b+", "+u.a/255+")",t.lineWidth=2*e.margin*r,t.strokeText(this.char,a,o)}t.fillText(this.char,a,o)}},t}(),RP=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.initWithSize=function(t,e,i){void 0===i&&(i=yd.RGBA8888),this.reset({width:t,height:e,format:i})},i.drawTextureAt=function(t,e,i){var n=this.getGFXTexture();if(t&&n){var r=this._getGFXDevice();if(r){var s=new Jc;s.texOffset.x=e,s.texOffset.y=i,s.texExtent.width=t.width,s.texExtent.height=t.height,r.copyTexImagesToTexture([t.data],n,[s])}else tt(16363)}},e}(lm),IP=function(){function t(t,e){this._x=0,this._y=0,this._nextY=0,this._width=0,this._height=0,this._halfBleed=0,this._dirty=!1;var i=new RP;i.initWithSize(t,e),this.fontDefDictionary=new yP(i),this._halfBleed=1,this._width=t,this._height=e,ID.on(wD.EVENT_BEFORE_SCENE_LAUNCH,this.beforeSceneLoad,this)}var e=t.prototype;return e.insertLetterTexture=function(t){var e=t.image,i=ID.root.device;if(!e||!this.fontDefDictionary||!i)return null;var n=e.width,r=e.height;if(this._x+n+0>this._width&&(this._x=0,this._y=this._nextY),this._y+r>this._nextY&&(this._nextY=this._y+r+0),this._nextY>this._height)return tt(12100),null;if(!this.fontDefDictionary.texture)return null;this.fontDefDictionary.texture.drawTextureAt(e,this._x,this._y),this._dirty=!0;var s=new vP;return s.u=this._x+this._halfBleed,s.v=this._y+this._halfBleed,s.valid=!0,s.w=t.width-2,s.h=t.height-2,s.xAdvance=s.w,s.offsetY=t.offsetY,this._x+=n+0,this.fontDefDictionary.addLetterDefinitions(t.hash,s),s},e.update=function(){this._dirty&&(this._dirty=!1)},e.reset=function(){this._x=0,this._y=0,this._nextY=0,this.fontDefDictionary.clear()},e.destroy=function(){this.reset();var t=this.fontDefDictionary;t&&t.texture&&(t.texture.destroy(),t.texture=null)},e.getTexture=function(){return this.fontDefDictionary.getTexture()},e.beforeSceneLoad=function(){this.clearAllCache()},e.clearAllCache=function(){this.destroy();var t=new RP;t.initWithSize(this._width,this._height),this.fontDefDictionary.texture=t},e.getLetter=function(t){return this.fontDefDictionary.letterDefinitions[t]},e.getLetterDefinitionForChar=function(t,e){var i=zM(t,0)+e.hash,n=this.fontDefDictionary.letterDefinitions[i];if(!n){var r=new wP(t,e);r.updateRenderData(),n=this.insertLetterTexture(r),r.destroy()}return n},n(t,[{key:"width",get:function(){return this._width}},{key:"height",get:function(){return this._height}}]),t}(),DP={fontAtlas:null,fontSize:0,lineHeight:0,hAlign:0,vAlign:0,hash:"",fontFamily:"",fontDesc:"Arial",color:En.WHITE.clone(),isOutlined:!1,out:En.WHITE.clone(),margin:0,fontScale:1},BP=[new T_(Uc.ATTR_POSITION,ec.RGB32F)],MP=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_COLOR,ec.RGBA32F)],PP=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RG32F),new T_(Uc.ATTR_COLOR,ec.RGBA32F)],OP=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RG32F),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0)],LP=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RG32F),new T_(Uc.ATTR_COLOR,ec.RGBA32F),new T_(Uc.ATTR_COLOR2,ec.RGBA32F)],NP=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RG32F),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0),new T_(Uc.ATTR_COLOR2,ec.RGBA8,!0)];function FP(t){for(var e=0,i=0;i<t.length;i++){var n=t[i];e+=j_[n.format].count}return e}function kP(t){for(var e=0,i=0;i<t.length;i++){var n=t[i];e+=j_[n.format].size}return e}S.internal.vfmtPosUvColor=PP,S.internal.vfmtPosUvTwoColor=LP,S.internal.vfmtPosUvColor4B=OP,S.internal.vfmtPosUvTwoColor4B=NP,t("w",Object.freeze({__proto__:null,vfmt:BP,vfmtPosColor:MP,vfmtPosUvColor:PP,vfmtPosUvColor4B:OP,vfmtPosUvTwoColor:LP,vfmtPosUvTwoColor4B:NP,getComponentPerVertex:FP,getAttributeStride:kP})),function(t){t[t.byteOffset=0]="byteOffset",t[t.vertexOffset=1]="vertexOffset",t[t.indexOffset=2]="indexOffset",t[t.dirty=3]="dirty",t[t.count=4]="count"}(bP||(bP={}));var GP,VP,UP,zP,HP=t("M",function(){var t=e.prototype;function e(){this._byteOffset=0,this._vertexOffset=0,this._indexOffset=0,this._dirty=!1,this._floatsPerVertex=0,this._vData=null,this._iData=null,this._vertexFormatBytes=0,this._initVDataCount=0,this._initIDataCount=0,this._attributes=null,this._iaPool=[],this._iaInfo=null,this._nextFreeIAHandle=0,this.initSharedBuffer(),this.syncSharedBufferToNative()}return t.initSharedBuffer=function(){},t.syncSharedBufferToNative=function(){},t.initialize=function(t,e,i,n){this._initVDataCount=i,this._initIDataCount=n,this._attributes=e,this.floatsPerVertex=kP(e)>>2,this._initVDataCount,this._floatsPerVertex,at(9005),this.vData&&this.iData||(this.vData=new Float32Array(this._initVDataCount),this.iData=new Uint16Array(this._initIDataCount)),this._iaPool.push(this.createNewIA(t))},t.reset=function(){this._nextFreeIAHandle=0,this.dirty=!1},t.destroy=function(){this.reset(),this._attributes=null,this._iaInfo=null,this.vData=null,this.iData=null;for(var t=0;t<this._iaPool.length;++t){var e=this._iaPool[t];e.vertexBuffers[0]&&e.vertexBuffers[0].destroy(),e.indexBuffer&&e.indexBuffer.destroy(),e.ia.destroy()}this._iaPool.length=0},t.setDirty=function(){this.dirty=!0},t.request=function(){return tt(9002),!1},t.requireFreeIA=function(t){return this._iaPool.length<=this._nextFreeIAHandle&&this._iaPool.push(this.createNewIA(t)),this._iaPool[this._nextFreeIAHandle++].ia},t.recycleIA=function(t){for(var e=this._iaPool,i=0;i<this._nextFreeIAHandle;++i)if(t===e[i].ia){var n=e[i];return e[i]=e[--this._nextFreeIAHandle],void(e[this._nextFreeIAHandle]=n)}},t.checkCapacity=function(t,e){var i=(this.vertexOffset+t)*this._floatsPerVertex,n=this.indexOffset+e;return!(i>this._initVDataCount||n>this._initIDataCount)},t.uploadBuffers=function(){if(0!==this.byteOffset&&this._dirty){var t=Sa.__isWebIOS14OrIPadOS14Env,e=t?this._nextFreeIAHandle:1;if(t&&e/this._iaPool.length<.5){for(var i=e/.5,n=this._iaPool.length-1;n>=i;n--){var r=this._iaPool[n];r.vertexBuffers[0]&&r.vertexBuffers[0].destroy(),r.indexBuffer&&r.indexBuffer.destroy(),r.ia.destroy()}this._iaPool.length=i}for(var s=this.byteOffset,a=this.indexOffset,o=0;o<e;++o){var h=this._iaPool[o],u=new Float32Array(this.vData.buffer,0,s>>2),l=new Uint16Array(this.iData.buffer,0,a),c=h.vertexBuffers[0];s>c.size&&c.resize(s),c.update(u),2*a>h.indexBuffer.size&&h.indexBuffer.resize(2*a),h.indexBuffer.update(l)}this.dirty=!1}},t.createNewIA=function(t){var e,i,n;if(Sa.__isWebIOS14OrIPadOS14Env||!this._iaPool[0]){var r=this._vertexFormatBytes=this._floatsPerVertex*Float32Array.BYTES_PER_ELEMENT,s=Uint16Array.BYTES_PER_ELEMENT,a=t.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,r,r));n=t.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,s,s)),i=[a],this._iaInfo=new b_(this._attributes,i,n),e=t.createInputAssembler(this._iaInfo)}else e=t.createInputAssembler(this._iaInfo),i=this._iaInfo.vertexBuffers,n=this._iaInfo.indexBuffer;return{ia:e,vertexBuffers:i,indexBuffer:n}},n(e,[{key:"attributes",get:function(){return this._attributes}},{key:"vertexFormatBytes",get:function(){return this._vertexFormatBytes}},{key:"byteOffset",get:function(){return this._byteOffset},set:function(t){this._byteOffset=t}},{key:"vertexOffset",get:function(){return this._vertexOffset},set:function(t){this._vertexOffset=t}},{key:"indexOffset",get:function(){return this._indexOffset},set:function(t){this._indexOffset=t}},{key:"dirty",get:function(){return this._dirty},set:function(t){this._dirty=t}},{key:"floatsPerVertex",get:function(){return this._floatsPerVertex},set:function(t){this._floatsPerVertex=t}},{key:"vData",get:function(){return this._vData},set:function(t){this._vData=t}},{key:"iData",get:function(){return this._iData},set:function(t){this._iData=t}},{key:"nativeObj",get:function(){return this._nativeObj}},{key:"sharedBuffer",get:function(){return this._sharedBuffer}}]),e}()),WP=function(){function t(t,e){this._buffers=[],this._device=t,this._attributes=e,this._floatsPerVertex=kP(e)>>2,this._vertexFormatBytes=this._floatsPerVertex*Float32Array.BYTES_PER_ELEMENT}var e=t.prototype;return e.initialize=function(){},e.reset=function(){},e.request=function(){},e.appendBuffers=function(){},e.uploadBuffers=function(){},e.destroy=function(){this._attributes.length=0},n(t,[{key:"attributes",get:function(){return this._attributes}},{key:"vertexFormatBytes",get:function(){return this._vertexFormatBytes}},{key:"floatsPerVertex",get:function(){return this._floatsPerVertex}}]),t}(),XP=new ws((function(){return{offset:0,length:0}}),32),jP=function(){function t(t,e,i,n,r,s){this.vertexAccessor=t,this.bufferId=e,this.meshBuffer=i,this.vertexOffset=n,this.vb=r,this.indexCount=s,this._ib=new Uint16Array(s),t.getMeshBuffer(e)}return t.prototype.setIndexBuffer=function(){},n(t,[{key:"ib",get:function(){return this._ib}}]),t}(),YP=function(t){function e(i,n,r,s){var a;return(a=t.call(this,i,n)||this)._freeLists=[],a._vCount=0,a._iCount=0,a._id=0,a._vCount=r||Math.floor(1024*Pe.BATCHER2D_MEM_INCREMENT/a._vertexFormatBytes),a._iCount=s||a._vCount*e.IB_SCALE,a._id=e.generateID(),a._allocateBuffer(),a}s(e,t);var i=e.prototype;return i.destroy=function(){for(var e=0;e<this._buffers.length;++e){this._buffers[e].destroy();for(var i=this._freeLists[e],n=0;n<i.length;++n)XP.free(i[n])}this._buffers.length=0,this._freeLists.length=0,t.prototype.destroy.call(this)},i.reset=function(){for(var t=0;t<this._buffers.length;++t){var e=this._buffers[t];e.indexOffset=0,e.reset()}},i.getVertexBuffer=function(t){return this._buffers[t].vData},i.getIndexBuffer=function(t){return this._buffers[t].iData},i.getMeshBuffer=function(t){return this._buffers[t]},i.uploadBuffers=function(){for(var t=0;t<this._buffers.length;++t){var e=this._freeLists[t][0],i=this._buffers[t];(!e||e.length<i.vData.byteLength)&&i.uploadBuffers()}},i.appendIndices=function(t,e){var i=this._buffers[t];if(e.length){var n=i.indexOffset+e.length;if(i.iData.length<n){var r=Math.floor(1.25*n),s=new Uint16Array(r);s.set(i.iData),i.iData=s}i.iData.set(e,i.indexOffset),i.indexOffset+=e.length}},i.allocateChunk=function(t,e){var i=t*this.vertexFormatBytes;if(t>this._vCount||e>this._iCount)return it(9004,i),null;for(var n,r=null,s=0,a=-1,o=null,h=0;h<this._buffers.length;++h){r=this._buffers[h],n=this._freeLists[h];for(var u=0;u<n.length;++u)if(n[u].length>=i){o=n[u],s=h,a=u;break}if(o)break}if(o||(s=this._allocateBuffer(),(r=this._buffers[s])&&(a=0,o=this._freeLists[s][a])),o){var l=o.offset/this.vertexFormatBytes,c=new Float32Array(r.vData.buffer,o.offset,i>>2).fill(0);return this._allocateChunkFromEntry(s,a,o,i),new jP(this,s,r,l,c,e)}return null},i.recycleChunk=function(t){var e=this._freeLists[t.bufferId],i=this._buffers[t.bufferId],n=t.vertexOffset*this.vertexFormatBytes,r=t.vb.byteLength;if(0!==r){for(var s=!1,a=0,o=null,h=e[a];h&&h.offset<n;)o=h,h=e[++a];if(o&&0==n-(o.offset+o.length)&&(o.length+=r,n=o.offset,r=o.length,h&&h.offset-(n+r)==0&&(o.length+=h.length,e.splice(a,1),XP.free(h),h=null),s=!0),!s&&h){if(0==h.offset-(n+r))h.offset=n,h.length+=r;else{var u=XP.alloc();u.offset=n,u.length=r,e.splice(a,0,u)}s=!0}if(s)n+r===i.byteOffset&&(i.byteOffset=n);else{var l=XP.alloc();l.offset=n,l.length=r,e.push(l)}}},i._allocateChunkFromEntry=function(t,e,i,n){var r=i.length-n,s=i.offset+n,a=this._buffers[t];a.byteOffset<s&&(a.byteOffset=s),st(r>=0,9004,t,i.offset,i.length),0===r?(this._freeLists[t].splice(e,1),XP.free(i)):(i.offset+=n,i.length=r)},i._allocateBuffer=function(){st(this._buffers.length===this._freeLists.length,9003);var t=new HP,e=this._vCount*this._floatsPerVertex;t.initialize(this._device,this._attributes,e,this._iCount),this._buffers.push(t);var i=XP.alloc();i.offset=0,i.length=t.vData.byteLength;var n=[i];return this._freeLists.push(n),ID.root.batcher2D.syncMeshBuffersToNative(this.id,this._buffers),this._buffers.length-1},e.generateID=function(){return e.ID_COUNT++},n(e,[{key:"id",get:function(){return this._id}}]),e}(WP);YP.IB_SCALE=4,YP.ID_COUNT=0,function(t){t[t.DrawInfoType=0]="DrawInfoType",t[t.VertDirty=1]="VertDirty",t[t.IsMeshBuffer=2]="IsMeshBuffer",t[t.Stride=3]="Stride",t[t.Count=4]="Count"}(GP||(GP={})),function(t){t[t.BufferID=0]="BufferID",t[t.AccessorID=1]="AccessorID",t[t.Count=2]="Count"}(VP||(VP={})),function(t){t[t.VertexOffset=0]="VertexOffset",t[t.IndexOffset=1]="IndexOffset",t[t.VBCount=2]="VBCount",t[t.IBCount=3]="IBCount",t[t.DataHash=4]="DataHash",t[t.Count=5]="Count"}(UP||(UP={})),function(t){t[t.COMP=0]="COMP",t[t.MODEL=1]="MODEL",t[t.MIDDLEWARE=2]="MIDDLEWARE",t[t.SUB_NODE=3]="SUB_NODE"}(zP||(zP={}));var qP,KP,QP=function(){function t(t){this._accId=-1,this._bufferId=-1,this._vertexOffset=0,this._indexOffset=0,this._vb=null,this._ib=null,this._vData=null,this._iData=null,this._vertDirty=!1,this._vbCount=0,this._ibCount=0,this._dataHash=0,this._isMeshBuffer=!1,this._material=null,this._texture=null,this._sampler=null,this._stride=0,this._useLocal=!1,this._model=null,this._drawInfoType=zP.COMP,this._subNode=null,this.init(t);var e=this._nativeObj.getAttrSharedBufferForJS(),i=0;this._uint8SharedBuffer=new Uint8Array(e,i,GP.Count),i+=GP.Count*Uint8Array.BYTES_PER_ELEMENT,this._uint16SharedBuffer=new Uint16Array(e,i,VP.Count),i+=VP.Count*Uint16Array.BYTES_PER_ELEMENT,this._uint32SharedBuffer=new Uint32Array(e,i,UP.Count)}var e=t.prototype;return e.init=function(){},e.clear=function(){this._bufferId=0,this._vertexOffset=0,this._indexOffset=0,this._vertDirty=!1},e.setAccId=function(t){this._accId=t},e.setBufferId=function(t){this._bufferId=t},e.setAccAndBuffer=function(t,e){this._bufferId=e,this._accId=t},e.setVertexOffset=function(t){this._vertexOffset=t},e.setIndexOffset=function(t){this._indexOffset=t},e.setVB=function(){},e.setIB=function(){},e.setVData=function(){},e.setIData=function(){},e.setVBCount=function(t){this._vbCount=t},e.setIBCount=function(){},e.setVertDirty=function(t){this._vertDirty=t},e.setDataHash=function(t){this._dataHash=t},e.setIsMeshBuffer=function(t){this._isMeshBuffer=t},e.setMaterial=function(t){this._material=t},e.setTexture=function(t){this._texture=t},e.setSampler=function(t){this._sampler=t},e.setModel=function(){},e.setDrawInfoType=function(t){this._drawInfoType=t},e.setSubNode=function(t){this._subNode=t},e.setStride=function(t){this._stride=t},e.initRender2dBuffer=function(){},e.fillRender2dBuffer=function(){},n(t,[{key:"nativeObj",get:function(){return this._nativeObj}},{key:"render2dBuffer",get:function(){return this._render2dBuffer}}]),t}();!function(t){t[t.DISABLED=0]="DISABLED",t[t.CLEAR=1]="CLEAR",t[t.ENTER_LEVEL=2]="ENTER_LEVEL",t[t.ENABLED=3]="ENABLED",t[t.EXIT_LEVEL=4]="EXIT_LEVEL",t[t.CLEAR_INVERTED=5]="CLEAR_INVERTED",t[t.ENTER_LEVEL_INVERTED=6]="ENTER_LEVEL_INVERTED"}(qP||(qP={})),function(t){t[t.stencilTest=0]="stencilTest",t[t.func=1]="func",t[t.stencilMask=2]="stencilMask",t[t.writeMask=3]="writeMask",t[t.failOp=4]="failOp",t[t.zFailOp=5]="zFailOp",t[t.passOp=6]="passOp",t[t.ref=7]="ref",t[t.count=8]="count"}(KP||(KP={}));var ZP,JP,$P,tO,eO,iO=t("S",function(){function t(){this._maskStack=[],this._stencilPattern={stencilTest:!0,func:mc.ALWAYS,stencilMask:65535,writeMask:65535,failOp:gc.KEEP,zFailOp:gc.KEEP,passOp:gc.KEEP,ref:1},this._stage=qP.DISABLED,this.stencilStateMap=new Map,this.stencilStateMapWithDepth=new Map}var e=t.prototype;return e.pushMask=function(t){this._maskStack.push(t)},e.clear=function(t){return t.stencilStage!==qP.ENTER_LEVEL?qP.CLEAR_INVERTED:qP.CLEAR},e.enableMask=function(){this.stage=qP.ENABLED},e.exitMask=function(){0!==this._maskStack.length&&(this._maskStack.pop(),0===this._maskStack.length?this.stage=qP.DISABLED:this.stage=qP.ENABLED)},e.getWriteMask=function(){return 1<<this._maskStack.length-1},e.getExitWriteMask=function(){return 1<<this._maskStack.length},e.getStencilRef=function(){for(var t=0,e=0;e<this._maskStack.length;++e)t+=1<<e;return t},e.getMaskStackSize=function(){return this._maskStack.length},e.reset=function(){this._maskStack.length=0,this.stage=qP.DISABLED},e.destroy=function(){this.stencilStateMap.forEach((function(t){t.destroy()})),this.stencilStateMap.clear()},e.getStencilStage=function(t,e){var i=0,n=!1,r=!1,s=mc.LESS,a=this.stencilStateMap;if(e&&e.passes[0]){var o=e.passes[0].depthStencilState,h=0,u=0;o.depthTest&&(h=1),o.depthWrite&&(u=1),i=h|u<<1|o.depthFunc<<2|t<<6|this._maskStack.length<<9,n=o.depthTest,r=o.depthWrite,s=o.depthFunc,a=this.stencilStateMapWithDepth}else i=t<<16|this._maskStack.length;if(a&&a.has(i))return a.get(i);this.setStateFromStage(t);var l=new gf(n,r,s,this._stencilPattern.stencilTest,this._stencilPattern.func,this._stencilPattern.stencilMask,this._stencilPattern.writeMask,this._stencilPattern.failOp,this._stencilPattern.zFailOp,this._stencilPattern.passOp,this._stencilPattern.ref,this._stencilPattern.stencilTest,this._stencilPattern.func,this._stencilPattern.stencilMask,this._stencilPattern.writeMask,this._stencilPattern.failOp,this._stencilPattern.zFailOp,this._stencilPattern.passOp,this._stencilPattern.ref);return a.set(i,l),l},e.getStencilHash=function(t){return t<<8|this._maskStack.length},e.setStateFromStage=function(t){var e=this._stencilPattern;t===qP.DISABLED?(e.stencilTest=!1,e.func=mc.ALWAYS,e.failOp=gc.KEEP,e.stencilMask=e.writeMask=65535,e.ref=1):(e.stencilTest=!0,t===qP.ENABLED?(e.func=mc.EQUAL,e.failOp=gc.KEEP,e.stencilMask=e.ref=this.getStencilRef(),e.writeMask=this.getWriteMask()):t===qP.CLEAR?(e.func=mc.NEVER,e.failOp=gc.ZERO,e.writeMask=e.stencilMask=e.ref=this.getWriteMask()):t===qP.CLEAR_INVERTED||t===qP.ENTER_LEVEL?(e.func=mc.NEVER,e.failOp=gc.REPLACE,e.writeMask=e.stencilMask=e.ref=this.getWriteMask()):t===qP.ENTER_LEVEL_INVERTED&&(e.func=mc.NEVER,e.failOp=gc.ZERO,e.writeMask=e.stencilMask=e.ref=this.getWriteMask()))},n(t,[{key:"stage",get:function(){return this._stage},set:function(t){this._stage=t}},{key:"pattern",get:function(){return this._stencilPattern}}]),t}());iO.sharedManager=null,iO.sharedManager=new iO,function(t){t[t.STATIC=0]="STATIC",t[t.DYNAMIC=1]="DYNAMIC",t[t.CROSSED=2]="CROSSED"}(ZP||(ZP={})),function(t){t[t.localOpacity=0]="localOpacity",t[t.count=1]="count"}(JP||(JP={})),function(t){t[t.colorR=0]="colorR",t[t.colorG=1]="colorG",t[t.colorB=2]="colorB",t[t.colorA=3]="colorA",t[t.maskMode=4]="maskMode",t[t.count=5]="count"}($P||($P={})),function(t){t[t.colorDirty=0]="colorDirty",t[t.enabled=1]="enabled",t[t.useLocal=2]="useLocal",t[t.count=3]="count"}(tO||(tO={})),function(t){t[t.NONE=0]="NONE",t[t.MASK=1]="MASK",t[t.MASK_INVERTED=2]="MASK_INVERTED",t[t.MASK_NODE=3]="MASK_NODE",t[t.MASK_NODE_INVERTED=4]="MASK_NODE_INVERTED"}(eO||(eO={}));var nO,rO,sO,aO,oO,hO,uO,lO,cO,_O,fO,dO=function(){function t(){this._renderEntityType=ZP.STATIC,this._dynamicDrawInfoArr=[],this._node=null,this._renderTransform=null,this._stencilStage=qP.DISABLED,this._useLocal=!1,this._maskMode=eO.NONE,this._color=En.WHITE.clone(),this._localOpacity=255,this._colorDirty=!0,this._enabled=!1}var e=t.prototype;return e.addDynamicRenderDrawInfo=function(){},e.removeDynamicRenderDrawInfo=function(){},e.clearDynamicRenderDrawInfos=function(){},e.clearStaticRenderDrawInfos=function(){},e.setDynamicRenderDrawInfo=function(){},e.setMaskMode=function(t){this._maskMode=t},e.getStaticRenderDrawInfo=function(){return null},e.setNode=function(t){this._node=t},e.setRenderTransform=function(t){this._renderTransform=t},e.setStencilStage=function(t){this._stencilStage=t},e.setUseLocal=function(t){this._useLocal=t},e.initSharedBuffer=function(){},n(t,[{key:"nativeObj",get:function(){return this._nativeObj}},{key:"renderDrawInfoArr",get:function(){return this._dynamicDrawInfoArr}},{key:"renderEntityType",get:function(){return this._renderEntityType}},{key:"color",get:function(){return this._color},set:function(t){this._color=t}},{key:"localOpacity",get:function(){return this._localOpacity},set:function(t){this._localOpacity=t}},{key:"colorDirty",get:function(){return this._colorDirty},set:function(t){this._colorDirty=t}},{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t}}]),t}(),pO=kP(PP)>>2,mO=t("t",function(){function t(t){void 0===t&&(t=PP),this.chunk=null,this._renderDrawInfo=null,this._material=null,this._dataHash=0,this._isMeshBuffer=!1,this._vc=0,this._ic=0,this._floatStride=0,this._vertexFormat=PP,this._drawInfoType=zP.COMP,this._multiOwner=!1,this._batcher=null,this._floatStride=t===PP?pO:kP(t)>>2,this._vertexFormat=t}var e=t.prototype;return e.isValid=function(){return this._ic>0&&this.chunk.vertexAccessor},e.initRenderDrawInfo=function(t,e){void 0===e&&(e=zP.COMP)},e.removeRenderDrawInfo=function(){},e.setRenderDrawInfoAttributes=function(){},n(t,[{key:"vertexCount",get:function(){return this._vc}},{key:"indexCount",get:function(){return this._ic}},{key:"stride",get:function(){return this._floatStride<<2}},{key:"floatStride",get:function(){return this._floatStride}},{key:"vertexFormat",get:function(){return this._vertexFormat}},{key:"drawInfoType",get:function(){return this._drawInfoType},set:function(t){this._drawInfoType=t,this._renderDrawInfo&&this._renderDrawInfo.setDrawInfoType(t)}},{key:"renderDrawInfo",get:function(){return this._renderDrawInfo}},{key:"material",get:function(){return this._material},set:function(t){this._material=t,this._renderDrawInfo&&this._renderDrawInfo.setMaterial(t)}},{key:"dataHash",get:function(){return this._dataHash},set:function(t){this._dataHash=t,this._renderDrawInfo&&this._renderDrawInfo.setDataHash(t)}},{key:"multiOwner",get:function(){return this._multiOwner},set:function(t){this._multiOwner=t}},{key:"batcher",get:function(){return this._batcher||(this._batcher=ID.root.batcher2D),this._batcher}}]),t}()),gO=t("u",function(t){function e(e,i){var n;return void 0===e&&(e=PP),void 0===i&&(i=null),(n=t.call(this,e)||this)._vertDirty=!0,n._textureHash=0,n.indices=null,n.layer=0,n.nodeDirty=!0,n.passDirty=!0,n.textureDirty=!0,n.hashDirty=!0,n._data=[],n._frame=null,n._accessor=null,n.vertexRow=1,n.vertexCol=1,i||(i=n.batcher.switchBufferAccessor(n._vertexFormat)),n._accessor=i,n}s(e,t),e.add=function(t,i){void 0===t&&(t=PP),void 0===i&&(i=null);var n=new e(t,i);return i||(i=ID.root.batcher2D.switchBufferAccessor(n._vertexFormat)),n._accessor=i,n},e.remove=function(t){t.clear(),t._accessor=null};var i=e.prototype;return i.resize=function(t,e){t===this._vc&&e===this._ic&&this.chunk||(this._vc=t,this._ic=e,this.chunk&&(this._accessor.recycleChunk(this.chunk),this.chunk=null),this.chunk=this._accessor.allocateChunk(t,e),this.updateHash())},i.setRenderDrawInfoAttributes=function(){},i.fillDrawInfoAttributes=function(){},i.syncRender2dBuffer=function(){},i.resizeAndCopy=function(t,e){if(t!==this._vc||e!==this._ic||!this.chunk){this._vc=t,this._ic=e;var i=this.chunk;this.chunk=this._accessor.allocateChunk(t,e),i&&(this.chunk.vb.set(i.vb),this._accessor.recycleChunk(i)),this.updateHash()}},i.getMeshBuffer=function(){return this.chunk&&this._accessor?this._accessor.getMeshBuffer(this.chunk.bufferId):null},i.updateNode=function(t){this.layer=t.node.layer,this.nodeDirty=!1,this.hashDirty=!0},i.updatePass=function(t){this.material=t.getRenderMaterial(0),this.passDirty=!1,this.hashDirty=!0},i.updateTexture=function(t){this.frame=t,this.textureHash=t.getHash(),this.textureDirty=!1,this.hashDirty=!0},i.updateHash=function(){var t=""+(this.chunk?this.chunk.bufferId:-1)+this.layer+" "+this.textureHash;this.dataHash=zl(t,666),this.hashDirty=!1},i.updateRenderData=function(t,e){if(this.passDirty&&(this.material=t.getRenderMaterial(0),this.passDirty=!1,this.hashDirty=!0,this._renderDrawInfo&&this._renderDrawInfo.setMaterial(this.material)),this.nodeDirty){var i=t.node.scene?t._getRenderScene():null;this.layer=t.node.layer,null!==i&&(this.nodeDirty=!1),this.hashDirty=!0}this.textureDirty&&(this.frame=e,this.textureHash=e.getHash(),this.textureDirty=!1,this.hashDirty=!0,this._renderDrawInfo&&(this._renderDrawInfo.setTexture(this.frame?this.frame.getGFXTexture():null),this._renderDrawInfo.setSampler(this.frame?this.frame.getGFXSampler():null))),this.hashDirty&&(this.updateHash(),this._renderDrawInfo&&this._renderDrawInfo.setDataHash(this.dataHash))},i.clear=function(){this.resize(0,0),this._data.length=0,this.indices=null,this.vertDirty=!0,this.material=null,this.nodeDirty=!0,this.passDirty=!0,this.textureDirty=!0,this.hashDirty=!0,this.layer=0,this.frame=null,this.textureHash=0,this.dataHash=0},e.createStaticVBAccessor=function(t,e,i){var n=ID.root.device;return new YP(n,t,e,i)},n(e,[{key:"dataLength",get:function(){return this._data.length},set:function(t){var e=this._data;if(e.length!==t){for(var i=e.length;i<t;i++)e.push({x:0,y:0,z:0,u:0,v:0,color:En.WHITE.clone()});e.length=t}this.syncRender2dBuffer()}},{key:"data",get:function(){return this._data}},{key:"vertDirty",get:function(){return this._vertDirty},set:function(t){this._vertDirty=t,this._renderDrawInfo&&t&&this._renderDrawInfo.setVertDirty(t)}},{key:"textureHash",get:function(){return this._textureHash},set:function(t){this._textureHash=t}},{key:"frame",get:function(){return this._frame},set:function(t){this._frame=t,this._renderDrawInfo&&(this._frame?(this._renderDrawInfo.setTexture(this._frame.getGFXTexture()),this._renderDrawInfo.setSampler(this._frame.getGFXSampler())):(this._renderDrawInfo.setTexture(null),this._renderDrawInfo.setSampler(null)))}},{key:"accessor",get:function(){return this._accessor}}]),e}(mO)),vO=t("v",function(t){function e(e){var i;return void 0===e&&(e=PP),(i=t.call(this,e)||this)._isMeshBuffer=!0,i.vertexStart=0,i.vertexRange=0,i.indexStart=0,i.indexRange=0,i.lastFilledIndex=0,i.lastFilledVertex=0,i.frame=null,i._byteLength=0,i._vertexBuffers=[],i._indexBuffer=null,i._iaPool=null,i._iaInfo=null,i.vData=new Float32Array(256*i.stride),i.iData=new Uint16Array(1536),i}s(e,t),e.add=function(t){void 0===t&&(t=PP);var i=new e;return i._floatStride=t===PP?pO:kP(t)>>2,i._vertexFormat=t,i},e.remove=function(t){t.clear()};var i=e.prototype;return i.request=function(t,e){var i=this._byteLength+t*this.stride;return!!this.reserve(t,e)&&(this._vc+=t,this._ic+=e,this._byteLength=i,this.vertexRange=this._vc,this.indexRange=this._ic,!0)},i.reserve=function(t,e){var i=this._byteLength+t*this.stride,n=this.indexCount+e;if(t+this.vertexCount>65535)return!1;var r=this.vData.byteLength,s=this.iData.length,a=this.vData.length,o=this.iData.length;if(i>r||n>s){for(;r<i||s<n;)r=4*(a*=2),s=o*=2;this._reallocBuffer(a,o)}return!0},i.resize=function(t,e){var i=t*this.stride;t>=0&&e>=0&&i<=this.vData.byteLength&&this.iData.length,this._vc=t,this._ic=e,this._byteLength=i,this.updateRange(0,t,0,e)},i.updateRange=function(t,e,i,n){e>=0&&n>=0&&e<=this._vc&&this._ic,this.vertexStart=t,this.indexStart=i,this.vertexRange=e,this.indexRange=n},i.requestIA=function(t){this._initIAInfo(t);var e=this._iaPool.add();return e.firstIndex=this.indexStart,e.indexCount=this.indexRange,e},i.uploadBuffers=function(){if(0!==this._byteLength&&this._vertexBuffers[0]&&this._indexBuffer){var t=this._ic,e=new Float32Array(this.vData.buffer,0,this._byteLength>>2),i=new Uint16Array(this.iData.buffer,0,t),n=this._vertexBuffers[0];this._byteLength>n.size&&n.resize(this._byteLength),n.update(e);var r=t<<1;r>this._indexBuffer.size&&this._indexBuffer.resize(r),this._indexBuffer.update(i)}},i.freeIAPool=function(){this._iaPool&&this._iaPool.reset()},i.reset=function(){this._vc=0,this._ic=0,this._byteLength=0,this.vertexStart=0,this.vertexRange=0,this.indexStart=0,this.indexRange=0,this.lastFilledIndex=0,this.lastFilledVertex=0,this.material=null,this.freeIAPool()},i.clear=function(){this.reset(),this._iaPool&&this._iaPool.destroy(),this._vertexBuffers[0]&&(this._vertexBuffers[0].destroy(),this._vertexBuffers=[]),this._iaInfo=null,this.vData=new Float32Array(256*this.stride),this.iData=new Uint16Array(1536)},i._initIAInfo=function(t){var e=this;if(!this._iaInfo){var i=this.stride,n=this._vertexBuffers;n.length||n.push(t.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,i,i)));var r=Uint16Array.BYTES_PER_ELEMENT;this._indexBuffer||(this._indexBuffer=t.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,r,r))),this._iaInfo=new b_(this._vertexFormat,n,this._indexBuffer),this._iaPool=new Rs((function(){return t.createInputAssembler(e._iaInfo)}),1,(function(t){t.destroy()}))}},i._reallocBuffer=function(t,e){var i=this.vData;this.vData=new Float32Array(t),i&&this.vData.set(i,0);var n=this.iData;this.iData=new Uint16Array(e),n&&this.iData.set(n,0)},i.setRenderDrawInfoAttributes=function(){},i.particleInitRenderDrawInfo=function(){},n(e,[{key:"formatByte",get:function(){return this.stride},set:function(){}},{key:"floatStride",get:function(){return this._floatStride}},{key:"vDataOffset",get:function(){return this._byteLength>>>2}}]),e}(mO)),yO=new jn,SO=new jn,TO=new gn,AO=new Vn,bO=new Vn,EO=new Vn,CO=new Vn(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0),xO=new Jn,wO=t("e",eo("cc.UITransform")(nO=no(110)(nO=ro(((oO=function(t){function e(){var e;return(e=t.call(this)||this)._priority=0,e._contentSize=sO&&sO(),e._anchorPoint=aO&&aO(),e}s(e,t);var i=e.prototype;return i.__preload=function(){this.node._uiProps.uiTransformComp=this},i.onLoad=function(){this.node.parent&&e.insertChangeMap(this.node.parent)},i.onEnable=function(){this.node.on(vm.PARENT_CHANGED,this._parentChanged,this),this._markRenderDataDirty()},i.onDisable=function(){this.node.off(vm.PARENT_CHANGED,this._parentChanged,this)},i.onDestroy=function(){this.node._uiProps.uiTransformComp=null},i.setContentSize=function(t,e){var i,n,r=this._contentSize;if(void 0===e){if(Ni((t=t).width,r.width,Oi)&&Ni(t.height,r.height,Oi))return;i=t.width,n=t.height}else{if(Ni(t=t,r.width,Oi)&&Ni(e,r.height,Oi))return;i=t,n=e}r.width=i,r.height=n,this.node.emit(vm.SIZE_CHANGED),this._markRenderDataDirty()},i.setAnchorPoint=function(t,e){var i=this._anchorPoint;if(void 0===e){if((t=t).x===i.x&&t.y===i.y)return;i.x=t.x,i.y=t.y}else{if(t===i.x&&e===i.y)return;i.x=t,i.y=e}this.node.emit(vm.ANCHOR_CHANGED,this._anchorPoint),this._markRenderDataDirty()},i.isHit=function(t){for(var e=this._contentSize.width,i=this._contentSize.height,n=yO,r=SO,s=this._getRenderScene().cameras,a=0;a<s.length;a++){var o=s[a];if(o.visibility&this.node.layer){o.node.getWorldRT(AO);var h=AO.m12,u=AO.m13,l=Ta.center;if(AO.m12=l.x-(AO.m00*h+AO.m04*u),AO.m13=l.y-(AO.m01*h+AO.m05*u),Vn.invert(AO,AO),jn.transformMat4(n,t,AO),this.node.getWorldMatrix(EO),Vn.invert(AO,EO),!Vn.strictEquals(AO,CO)){jn.transformMat4(r,n,AO),r.x+=this._anchorPoint.x*e,r.y+=this._anchorPoint.y*i;var c=!1;if(r.x>=0&&r.y>=0&&r.x<=e&&r.y<=i&&(c=this._maskTest(n)),c)return!0}}}return!1},i.hitTest=function(t,e){void 0===e&&(e=0);for(var i=this._contentSize.width,n=this._contentSize.height,r=TO,s=yO,a=SO,o=this._getRenderScene().cameras,h=0;h<o.length;h++){var u=o[h];if(u.visibility&this.node.layer&&(!u.window||u.window.swapchain)&&u.systemWindowId===e&&(gn.set(r,t.x,t.y,0),u.screenToWorld(r,r),jn.set(s,r.x,r.y),this.node.getWorldMatrix(EO),Vn.invert(AO,EO),!Vn.strictEquals(AO,CO))){jn.transformMat4(a,s,AO),a.x+=this._anchorPoint.x*i,a.y+=this._anchorPoint.y*n;var l=!1;if(a.x>=0&&a.y>=0&&a.x<=i&&a.y<=n&&(l=this._maskTest(s)),l)return!0}}return!1},i._maskTest=function(t){var e,i,n=null===(e=this.node)||void 0===e||null===(i=e.eventProcessor)||void 0===i?void 0:i.maskList;if(n)for(var r=this.node,s=n.length,a=0,o=0;r&&o<s;++a,r=r.parent){var h=n[o];if(a===h.index){if(r!==h.comp.node){n.length=o;break}var u=h.comp;if(u&&u._enabled&&!u.isHit(t))return!1;o++}else if(a>h.index){n.length=o;break}}return!0},i.convertToNodeSpaceAR=function(t,e){return this.node.getWorldMatrix(EO),Vn.invert(AO,EO),e||(e=new gn),gn.transformMat4(e,t,AO)},i.convertToWorldSpaceAR=function(t,e){return this.node.getWorldMatrix(EO),e||(e=new gn),gn.transformMat4(e,t,EO)},i.getBoundingBox=function(){var t=new Jn;return this._selfBoundingBox(t),Vn.fromSRT(bO,this.node.rotation,this.node.position,this.node.scale),t.transformMat4(bO),t},i.getBoundingBoxToWorld=function(){for(var t=new Jn,i=this.node.children,n=0;n<i.length;++n){var r=i[n];if(r&&r.active){var s=r.getComponent(e);s&&s.contentSize.width&&s.contentSize.height&&(s._selfBoundingBox(xO),xO.transformMat4(r.worldMatrix),0===t.width?t.set(xO):Jn.union(t,t,xO))}}return this._contentSize.width&&this._contentSize.height&&(this._selfBoundingBox(xO),xO.transformMat4(this.node.worldMatrix),0===t.width?t.set(xO):Jn.union(t,t,xO)),t},i.getBoundingBoxTo=function(t){var i=new Jn,n=this.node.children;Vn.invert(AO,t);for(var r=0;r<n.length;++r){var s=n[r];if(s&&s.active){var a=s.getComponent(e);a&&a.contentSize.width&&a.contentSize.height&&(a._selfBoundingBox(xO),Vn.multiply(bO,s.worldMatrix,AO),xO.transformMat4(bO),0===i.width?i.set(xO):Jn.union(i,i,xO))}}return this._contentSize.width&&this._contentSize.height&&(this._selfBoundingBox(xO),Vn.multiply(bO,this.node.worldMatrix,AO),xO.transformMat4(bO),0===i.width?i.set(xO):Jn.union(i,i,xO)),i},i.getComputeAABB=function(t){var e=this._contentSize.width,i=this._contentSize.height;xO.set(-this._anchorPoint.x*e,-this._anchorPoint.y*i,e,i),xO.transformMat4(this.node.worldMatrix);var n=xO.x+.5*xO.width,r=xO.y+.5*xO.height,s=this.node.worldPosition.z,a=xO.width/2,o=xO.height/2;return null!=t?(Ra.set(t,n,r,s,a,o,.001),t):new Ra(n,r,s,a,o,.001)},i._selfBoundingBox=function(t){var e=this._contentSize.width,i=this._contentSize.height;return t.set(-this._anchorPoint.x*e,-this._anchorPoint.y*i,e,i),t},i._parentChanged=function(){this.node.getComponent("cc.RenderRoot2D")||this.node.parent&&e.insertChangeMap(this.node.parent)},i._markRenderDataDirty=function(){var t=this.node._uiProps.uiComp;t&&t.markForUpdateRenderData()},e.insertChangeMap=function(t){var i=t.uuid;e.priorityChangeNodeMap.has(i)||e.priorityChangeNodeMap.set(i,t)},e._sortChildrenSibling=function(t){var e=t.children;e&&e.sort((function(t,e){var i=t._uiProps.uiTransformComp,n=e._uiProps.uiTransformComp,r=(i?i._priority:0)-(n?n._priority:0);return 0===r?t.getSiblingIndex()-e.getSiblingIndex():r}))},e._sortSiblings=function(){e.priorityChangeNodeMap.forEach((function(t){e._sortChildrenSibling(t),t._updateSiblingIndex(),t.emit("childrenSiblingOrderChanged")})),e.priorityChangeNodeMap.clear()},e._cleanChangeMap=function(){e.priorityChangeNodeMap.clear()},n(e,[{key:"contentSize",get:function(){return this._contentSize},set:function(t){this._contentSize.equals(t)||(this._contentSize.set(t),this.node.emit(vm.SIZE_CHANGED),this._markRenderDataDirty())}},{key:"width",get:function(){return this._contentSize.width},set:function(t){this._contentSize.width!==t&&(this._contentSize.width=t,this.node.emit(vm.SIZE_CHANGED),this._markRenderDataDirty())}},{key:"height",get:function(){return this._contentSize.height},set:function(t){this.contentSize.height!==t&&(this._contentSize.height=t,this.node.emit(vm.SIZE_CHANGED),this._markRenderDataDirty())}},{key:"anchorPoint",get:function(){return this._anchorPoint},set:function(t){this._anchorPoint.equals(t)||(this._anchorPoint.set(t),this.node.emit(vm.ANCHOR_CHANGED,this._anchorPoint),this._markRenderDataDirty())}},{key:"anchorX",get:function(){return this._anchorPoint.x},set:function(t){this._anchorPoint.x!==t&&(this._anchorPoint.x=t,this.node.emit(vm.ANCHOR_CHANGED,this._anchorPoint),this._markRenderDataDirty())}},{key:"anchorY",get:function(){return this._anchorPoint.y},set:function(t){this._anchorPoint.y!==t&&(this._anchorPoint.y=t,this.node.emit(vm.ANCHOR_CHANGED,this._anchorPoint),this._markRenderDataDirty())}},{key:"priority",get:function(){return this._priority},set:function(t){this._priority!==t&&(this.node.getComponent("cc.RenderRoot2D")?tt(6706):(this._priority=t,this.node.parent&&e.insertChangeMap(this.node.parent)))}},{key:"visibility",get:function(){var t=ID.root.batcher2D.getFirstRenderCamera(this.node);return t?t.visibility:0}},{key:"cameraPriority",get:function(){var t=ID.root.batcher2D.getFirstRenderCamera(this.node);return t?t.priority:0}}]),e}(mp)).EventType=vm,oO.priorityChangeNodeMap=new Map,sO=ja((rO=oO).prototype,"_contentSize",[lo],(function(){return new Qn(100,100)})),aO=ja(rO.prototype,"_anchorPoint",[lo],(function(){return new jn(.5,.5)})),nO=rO))||nO)||nO)||nO);ID.on(wD.EVENT_AFTER_UPDATE,wO._sortSiblings),ID.on(wD.EVENT_BEFORE_SCENE_LAUNCH,wO._cleanChangeMap);var RO,IO,DO,BO,MO,PO,OO,LO,NO,FO,kO,GO,VO,UO={parent:null,owner:null,subModelIdx:0},zO=ro,HO=Lo,WO=t("dN",(hO=eo("cc.Renderer"),uO=HO(zT),lO=HO([zT]),hO(cO=zO((m((_O=function(t){function e(){var e;return(e=t.call(this)||this)._materials=fO&&fO(),e._materialInstances=[],e}s(e,t);var i=e.prototype;return i.getMaterial=function(t){return this.getSharedMaterial(t)},i.setMaterial=function(t,e){this.setSharedMaterial(t,e)},i.getSharedMaterial=function(t){return t<0||t>=this._materials.length?null:this._materials[t]},i.setSharedMaterial=function(t,e){t&&t instanceof ZT&&it(12012),this._materials[e]=t;var i=this._materialInstances[e];i&&(i.destroy(),this._materialInstances[e]=null),this._onMaterialModified(e,this._materials[e])},i.getMaterialInstance=function(t){if(!this._materials[t])return null;if(!this._materialInstances[t]){UO.parent=this._materials[t],UO.owner=this,UO.subModelIdx=t;var e=new ZT(UO);UO.parent=null,UO.owner=null,UO.subModelIdx=0,this.setMaterialInstance(e,t)}return this._materialInstances[t]},i.setMaterialInstance=function(t,e){if("number"==typeof t){tt(12007);var i=t;t=e,e=i}var n=this._materialInstances[e];t&&t.parent?t!==n&&(this._materialInstances[e]=t,this._onMaterialModified(e,t)):(t!==this._materials[e]||n)&&this.setSharedMaterial(t,e)},i.getRenderMaterial=function(t){return this._materialInstances[t]||this._materials[t]},i._onMaterialModified=function(){},i._onRebuildPSO=function(){},i._clearMaterials=function(){},n(e,[{key:"sharedMaterial",get:function(){return this.getSharedMaterial(0)}},{key:"sharedMaterials",get:function(){return this._materials},set:function(t){for(var e=0;e<t.length;e++)t[e]!==this._materials[e]&&this.setSharedMaterial(t[e],e);if(t.length<this._materials.length){for(var i=t.length;i<this._materials.length;i++)this.setSharedMaterial(null,i);this._materials.splice(t.length)}}},{key:"material",get:function(){return this.getMaterialInstance(0)},set:function(t){(1!==this._materials.length||this._materialInstances[0]||this._materials[0]!==t)&&this.setMaterialInstance(t,0)}},{key:"materials",get:function(){for(var t=0;t<this._materials.length;t++)this._materialInstances[t]=this.getMaterialInstance(t);return this._materialInstances},set:function(t){for(var e=t.length,i=this._materials.length,n=e;n<i;n++)this.setMaterialInstance(null,n);this._materials.length=e,this._materialInstances.length=e;for(var r=0;r<e;r++)this._materialInstances[r]!=t[r]&&this.setMaterialInstance(t[r],r)}}]),e}(mp)).prototype,"sharedMaterials",[uO],Object.getOwnPropertyDescriptor(_O.prototype,"sharedMaterials"),_O.prototype),fO=ja(_O.prototype,"_materials",[lO],(function(){return[]})),cO=_O))||cO)||cO));we(vc),we(yc),we(Sc),t("I",VO),function(t){t[t.ADD_COLOR=0]="ADD_COLOR",t[t.ADD_COLOR_AND_TEXTURE=1]="ADD_COLOR_AND_TEXTURE",t[t.GRAYSCALE=2]="GRAYSCALE",t[t.USE_ALPHA_SEPARATED=3]="USE_ALPHA_SEPARATED",t[t.USE_ALPHA_SEPARATED_AND_GRAY=4]="USE_ALPHA_SEPARATED_AND_GRAY"}(VO||t("I",VO={}));var XO=t("d",(RO=eo("cc.UIRenderer"),IO=io(wO),DO=Lo(zT),BO=Lo(zT),RO(MO=IO(((GO=function(t){function e(){var e;return(e=t.call(this)||this)._renderData=null,e._materials=OO&&OO(),e._customMaterial=LO&&LO(),e._srcBlendFactor=NO&&NO(),e._dstBlendFactor=FO&&FO(),e._color=kO&&kO(),e._stencilStage=qP.DISABLED,e._assembler=null,e._postAssembler=null,e._renderDataFlag=!0,e._renderFlag=!0,e._instanceMaterialType=-1,e._srcBlendFactorCache=vc.SRC_ALPHA,e._dstBlendFactorCache=vc.ONE_MINUS_SRC_ALPHA,e._dirtyVersion=-1,e._internalId=-1,e._flagChangedVersion=-1,e._useVertexOpacity=!1,e._lastParent=null,e._renderEntity=e.createRenderEntity(),e}s(e,t);var i=e.prototype;return i.setRenderData=function(t){this._renderData=t},i.onLoad=function(){this._renderEntity.setNode(this.node)},i.__preload=function(){this.node._uiProps.uiComp=this,this._flushAssembler&&this._flushAssembler()},i.onEnable=function(){this.node.on(vm.ANCHOR_CHANGED,this._nodeStateChange,this),this.node.on(vm.SIZE_CHANGED,this._nodeStateChange,this),this.node.on(vm.PARENT_CHANGED,this._colorDirty,this),this.updateMaterial(),this._colorDirty(),gD.addRenderer(this),this.markForUpdateRenderData()},i.onRestore=function(){this.updateMaterial(),this.markForUpdateRenderData()},i.onDisable=function(){this.node.off(vm.ANCHOR_CHANGED,this._nodeStateChange,this),this.node.off(vm.SIZE_CHANGED,this._nodeStateChange,this),this.node.off(vm.PARENT_CHANGED,this._colorDirty,this),gD.removeRenderer(this),this._renderFlag=!1,this._renderEntity.enabled=!1},i.onDestroy=function(){if(this._renderEntity.setNode(null),this.node._uiProps.uiComp===this&&(this.node._uiProps.uiComp=null),this.destroyRenderData(),this._materialInstances)for(var t=0;t<this._materialInstances.length;t++){var e=this._materialInstances[t];e&&e.destroy()}},i.markForUpdateRenderData=function(t){if(void 0===t&&(t=!0),t){var e=this._renderData;e&&(e.vertDirty=!0),gD.markDirtyRenderer(this)}},i.requestRenderData=function(t){void 0===t&&(t=zP.COMP);var e=gO.add();return e.initRenderDrawInfo(this,t),this._renderData=e,e},i.destroyRenderData=function(){this._renderData&&(this._renderData.removeRenderDrawInfo(this),gO.remove(this._renderData),this._renderData=null)},i.updateRenderer=function(){this._assembler&&this._assembler.updateRenderData(this),this._renderFlag=this._canRender(),this._renderEntity.enabled=this._renderFlag},i.fillBuffers=function(t){this._renderFlag&&this._render(t)},i.postUpdateAssembler=function(t){this._postAssembler&&this._renderFlag&&this._postRender(t)},i._render=function(){},i._postRender=function(){},i._canRender=function(){return null!==this.getSharedMaterial(0)&&this._enabled&&this._color.a>0},i._postCanRender=function(){},i.updateMaterial=function(){if(this._customMaterial)this.getSharedMaterial(0)!==this._customMaterial&&this.setSharedMaterial(this._customMaterial,0);else{var t=this._updateBuiltinMaterial();this.setSharedMaterial(t,0),this.stencilStage!==qP.ENTER_LEVEL&&this.stencilStage!==qP.ENTER_LEVEL_INVERTED||this.getMaterialInstance(0).recompileShaders({USE_ALPHA_TEST:!0}),this._updateBlendFunc()}},i._updateColor=function(){if(this.node._uiProps.colorDirty=!0,this.setEntityColorDirty(!0),this.setEntityColor(this._color),this.setEntityOpacity(this.node._uiProps.localOpacity),this._assembler){this._assembler.updateColor(this);var t=this._renderFlag;if(this._renderFlag=this._canRender(),this.setEntityEnabled(this._renderFlag),t!==this._renderFlag){var e=this.renderData;e&&(e.vertDirty=!0)}}},e.setEntityColorDirtyRecursively=function(t,i){var n=t._uiProps.uiComp;n&&n.color&&(n._renderEntity.colorDirty=i);for(var r=0;r<t.children.length;r++)e.setEntityColorDirtyRecursively(t.children[r],i)},i.setEntityColorDirty=function(){},i.setEntityColor=function(){},i.setEntityOpacity=function(){},i.setEntityEnabled=function(){},i._updateBlendFunc=function(){var t=this.getRenderMaterial(0).passes[0].blendState.targets[0];if(this._dstBlendFactorCache=t.blendDst,this._srcBlendFactorCache=t.blendSrc,this._dstBlendFactorCache!==this._dstBlendFactor||this._srcBlendFactorCache!==this._srcBlendFactor){(t=this.getMaterialInstance(0).passes[0].blendState.targets[0]).blend=!0,t.blendDstAlpha=vc.ONE_MINUS_SRC_ALPHA,t.blendDst=this._dstBlendFactor,t.blendSrc=this._srcBlendFactor;var e=this.getMaterialInstance(0).passes[0];e.blendState.setTarget(0,t),e._updatePassHash(),this._dstBlendFactorCache=this._dstBlendFactor,this._srcBlendFactorCache=this._srcBlendFactor}},i._nodeStateChange=function(){this._renderData&&this.markForUpdateRenderData();for(var t=0;t<this.node.children.length;++t){var i=this.node.children[t].getComponent(e);i&&i.markForUpdateRenderData()}},i._colorDirty=function(){this.node._uiProps.colorDirty=!0,this.setEntityColorDirty(!0)},i._onMaterialModified=function(e,i){this._renderData&&(this.markForUpdateRenderData(),this._renderData.passDirty=!0),t.prototype._onMaterialModified.call(this,e,i)},i._updateBuiltinMaterial=function(){var t;switch(this._instanceMaterialType){case VO.ADD_COLOR:t=bT.get("ui-base-material");break;case VO.GRAYSCALE:t=bT.get("ui-sprite-gray-material");break;case VO.USE_ALPHA_SEPARATED:t=bT.get("ui-sprite-alpha-sep-material");break;case VO.USE_ALPHA_SEPARATED_AND_GRAY:t=bT.get("ui-sprite-gray-alpha-sep-material");break;default:t=bT.get("ui-sprite-material")}return t},i.setNodeDirty=function(){this._renderData&&(this._renderData.nodeDirty=!0)},i.setTextureDirty=function(){this._renderData&&(this._renderData.textureDirty=!0)},i.createRenderEntity=function(){return new dO(ZP.STATIC)},n(e,[{key:"sharedMaterials",get:function(){return this._materials},set:function(t){for(var e=0;e<t.length;e++)t[e]!==this._materials[e]&&this.setSharedMaterial(t[e],e);if(t.length<this._materials.length){for(var i=t.length;i<this._materials.length;i++)this.setSharedMaterial(null,i);this._materials.splice(t.length)}}},{key:"customMaterial",get:function(){return this._customMaterial},set:function(t){this._customMaterial=t,this.updateMaterial()}},{key:"color",get:function(){return this._color},set:function(t){this._color.equals(t)||(this._color.set(t),this._updateColor())}},{key:"renderData",get:function(){return this._renderData}},{key:"useVertexOpacity",get:function(){return this._useVertexOpacity}},{key:"stencilStage",get:function(){return this._stencilStage},set:function(t){this._stencilStage=t,this._renderEntity.setStencilStage(t)}},{key:"srcBlendFactor",get:function(){return this._srcBlendFactor},set:function(t){this._srcBlendFactor=t}},{key:"batcher",get:function(){return ID.root.batcher2D}},{key:"renderEntity",get:function(){return this._renderEntity}}]),e}(WO)).BlendState=vc,GO.Assembler=null,GO.PostAssembler=null,m((PO=GO).prototype,"sharedMaterials",[jo],Object.getOwnPropertyDescriptor(PO.prototype,"sharedMaterials"),PO.prototype),m(PO.prototype,"customMaterial",[DO],Object.getOwnPropertyDescriptor(PO.prototype,"customMaterial"),PO.prototype),OO=ja(PO.prototype,"_materials",[jo],(function(){return[]})),LO=ja(PO.prototype,"_customMaterial",[BO],(function(){return null})),NO=ja(PO.prototype,"_srcBlendFactor",[lo],(function(){return vc.SRC_ALPHA})),FO=ja(PO.prototype,"_dstBlendFactor",[lo],(function(){return vc.ONE_MINUS_SRC_ALPHA})),kO=ja(PO.prototype,"_color",[lo],(function(){return En.WHITE.clone()})),MO=PO))||MO)||MO));S.internal.UIRenderer=XO;var jO,YO,qO,KO,QO,ZO,JO,$O,tL,eL,iL,nL,rL,sL,aL,oL,hL,uL,lL,cL,_L,fL,dL,pL,mL,gL,vL,yL,SL,TL,AL,bL,EL,CL,xL,wL,RL,IL,DL=function(){function t(){this.isBold=!1,this.isItalic=!1,this.isUnderline=!1,this.underlineHeight=1,this.isOutlined=!1,this.outlineColor=En.WHITE.clone(),this.outlineWidth=1,this.hasShadow=!1,this.shadowColor=En.BLACK.clone(),this.shadowBlur=2,this.shadowOffsetX=0,this.shadowOffsetY=0,this.color=En.WHITE.clone(),this.fontSize=40,this.actualFontSize=0,this.isSystemFontUsed=!1,this.originFontSize=0,this.bmfontScale=1,this.fontFamily="Arial",this.fontDesc="",this.fntConfig=null,this.spriteFrame=null,this.fontScale=1}return t.prototype.reset=function(){this.isBold=!1,this.isItalic=!1,this.isUnderline=!1,this.underlineHeight=1,this.isOutlined=!1,this.outlineColor.set(),this.outlineWidth=1,this.hasShadow=!1,this.shadowColor.set(),this.shadowBlur=2,this.shadowOffsetX=0,this.shadowOffsetY=0},t}(),BL=function(){function t(){this.horizontalAlign=0,this.verticalAlign=0,this.wrapping=!0,this.overFlow=0,this.lineHeight=10,this.maxLineWidth=0,this.spacingX=0,this.textWidthTemp=0,this.textHeightTemp=0,this.textDimensions=new Qn,this.horizontalKerning=[],this.numberOfLines=1,this.linesOffsetX=[],this.letterOffsetY=0,this.tailoredTopY=0,this.tailoredBottomY=0,this.textDesiredHeight=0,this.linesWidth=[]}return t.prototype.reset=function(){this.horizontalAlign=0,this.verticalAlign=0,this.wrapping=!0,this.overFlow=0,this.lineHeight=10,this.maxLineWidth=0,this.spacingX=0,this.textWidthTemp=0,this.textHeightTemp=0,this.textDimensions.set(),this.horizontalKerning.length=0,this.numberOfLines=1,this.linesOffsetX.length=0,this.letterOffsetY=0,this.tailoredTopY=0,this.tailoredBottomY=0,this.textDesiredHeight=0,this.linesWidth.length=0},t}(),ML=function(){function t(){this.parsedString=[],this.nodeContentSize=Qn.ZERO.clone(),this.canvasSize=new Qn,this.canvasPadding=new Jn,this.contentSizeExtend=Qn.ZERO.clone(),this.startPosition=jn.ZERO.clone()}return t.prototype.reset=function(){this.parsedString.length=0,this.nodeContentSize.set(0,0),this.canvasSize.set(),this.canvasPadding.set(),this.contentSizeExtend.set(),this.startPosition.set()},t}(),PL=function(){function t(){this.quadCount=0,this.vertexBuffer=[],this.texture=null,this.uiTransAnchorX=.5,this.uiTransAnchorY=.5}return t.prototype.reset=function(){this.quadCount=0,this.vertexBuffer.length=0,this.texture=null,this.uiTransAnchorX=.5,this.uiTransAnchorY=.5},t}();En.WHITE.clone(),t("H",xL),function(t){t[t.LEFT=0]="LEFT",t[t.CENTER=1]="CENTER",t[t.RIGHT=2]="RIGHT"}(xL||t("H",xL={})),we(xL),t("V",wL),function(t){t[t.TOP=0]="TOP",t[t.CENTER=1]="CENTER",t[t.BOTTOM=2]="BOTTOM"}(wL||t("V",wL={})),we(wL),t("O",RL),function(t){t[t.NONE=0]="NONE",t[t.CLAMP=1]="CLAMP",t[t.SHRINK=2]="SHRINK",t[t.RESIZE_HEIGHT=3]="RESIZE_HEIGHT"}(RL||t("O",RL={})),we(RL),t("q",IL),function(t){t[t.NONE=0]="NONE",t[t.BITMAP=1]="BITMAP",t[t.CHAR=2]="CHAR"}(IL||t("q",IL={})),we(IL);var OL=t("r",(jO=eo("cc.Label"),YO=no(110),qO=Lo(xL),KO=Lo(wL),QO=Lo(RL),ZO=Lo(xM),JO=Lo(IL),jO($O=YO(((CL=function(t){function e(){var e;return(e=t.call(this)||this)._string=eL&&eL(),e._horizontalAlign=iL&&iL(),e._verticalAlign=nL&&nL(),e._actualFontSize=rL&&rL(),e._fontSize=sL&&sL(),e._fontFamily=aL&&aL(),e._lineHeight=oL&&oL(),e._overflow=hL&&hL(),e._enableWrapText=uL&&uL(),e._font=lL&&lL(),e._isSystemFontUsed=cL&&cL(),e._spacingX=_L&&_L(),e._isItalic=fL&&fL(),e._isBold=dL&&dL(),e._isUnderline=pL&&pL(),e._underlineHeight=mL&&mL(),e._cacheMode=gL&&gL(),e._enableOutline=vL&&vL(),e._outlineColor=yL&&yL(),e._outlineWidth=SL&&SL(),e._enableShadow=TL&&TL(),e._shadowColor=AL&&AL(),e._shadowOffset=bL&&bL(),e._shadowBlur=EL&&EL(),e._N$file=null,e._texture=null,e._ttfSpriteFrame=null,e._userDefinedFont=null,e._assemblerData=null,e._fontAtlas=null,e._letterTexture=null,e._contentWidth=0,e._textStyle=null,e._textLayout=null,e._textRenderData=null,e._textLayoutData=null,e._ttfSpriteFrame=null,e._textStyle=new DL,e._textLayout=new BL,e._textLayoutData=new ML,e._textRenderData=new PL,e}s(e,t);var i=e.prototype;return i.onEnable=function(){t.prototype.onEnable.call(this),this._font||this._isSystemFontUsed||(this.useSystemFont=!0),this._isSystemFontUsed&&!this._fontFamily&&(this.fontFamily="Arial"),this._applyFontTexture()},i.destroyTtfSpriteFrame=function(){if(this._ttfSpriteFrame){this._ttfSpriteFrame._resetDynamicAtlasFrame();var t=this._ttfSpriteFrame.texture;if(this._ttfSpriteFrame.destroy(),t){var e=t;e.image&&e.image.destroy(),t.destroy()}this._ttfSpriteFrame=null}},i._onPreDestroy=function(){t.prototype._onPreDestroy.call(this),this._isOnLoadCalled||this.destroyTtfSpriteFrame()},i.onDestroy=function(){this._assembler&&this._assembler.resetAssemblerData&&this._assembler.resetAssemblerData(this._assemblerData),this._assemblerData=null,this.destroyTtfSpriteFrame(),this._letterTexture=null,t.prototype.onDestroy.call(this)},i.updateRenderData=function(t){void 0===t&&(t=!1),t&&(this._flushAssembler(),this.renderData&&(this.renderData.vertDirty=!0),this._applyFontTexture()),this._assembler&&this._assembler.updateRenderData(this)},i._render=function(t){t.commitComp(this,this.renderData,this._texture,this._assembler,null)},i._updateColor=function(){t.prototype._updateColor.call(this),this.markForUpdateRenderData()},i.setEntityColor=function(){},i._canRender=function(){if(!t.prototype._canRender.call(this)||!this._string)return!1;var e=this._font;if(e&&e instanceof SP){var i=e.spriteFrame;if(!i||!i.texture)return!1}return!0},i._flushAssembler=function(){var t=e.Assembler.getAssembler(this);this._assembler!==t&&(this.destroyRenderData(),this._assembler=t,this.textStyle.reset(),this.textLayout.reset(),this.textLayoutData.reset(),this.textRenderData.reset()),this.renderData||this._assembler&&this._assembler.createData&&(this._renderData=this._assembler.createData(this),this.renderData.material=this.material,this._updateColor())},i._applyFontTexture=function(){this.markForUpdateRenderData();var t=this._font;if(t instanceof SP){var e=t.spriteFrame;e&&e.texture&&(this._texture=e,this.renderData&&(this.renderData.textureDirty=!0),this.changeMaterialForDefine(),this._assembler&&this._assembler.updateRenderData(this))}else{if(this.cacheMode===IL.CHAR)this._letterTexture=this._assembler.getAssemblerData(),this._texture=this._letterTexture;else if(!this._ttfSpriteFrame){this._ttfSpriteFrame=new SM,this._assemblerData=this._assembler.getAssemblerData();var i=new Vd(this._assemblerData.canvas),n=new lm;n.image=i,this._ttfSpriteFrame.texture=n}this.cacheMode!==IL.CHAR&&(this._texture=this._ttfSpriteFrame),this.changeMaterialForDefine()}},i.changeMaterialForDefine=function(){if(this._texture){var t=!1;if(this.cacheMode!==IL.CHAR){var e=this._texture.texture;if(e instanceof Xd){var i=e.getPixelFormat();t=i===yd.RGBA_ETC1||i===yd.RGB_A_PVRTC_4BPPV1||i===yd.RGB_A_PVRTC_2BPPV1}}this._instanceMaterialType=t?VO.USE_ALPHA_SEPARATED:VO.ADD_COLOR_AND_TEXTURE,this.updateMaterial()}},i._updateBlendFunc=function(){t.prototype._updateBlendFunc.call(this)},n(e,[{key:"string",get:function(){return this._string},set:function(t){t=null==t?"":t.toString(),this._string!==t&&(this._string=t,this.markForUpdateRenderData())}},{key:"horizontalAlign",get:function(){return this._horizontalAlign},set:function(t){this._horizontalAlign!==t&&(this._horizontalAlign=t,this.markForUpdateRenderData())}},{key:"verticalAlign",get:function(){return this._verticalAlign},set:function(t){this._verticalAlign!==t&&(this._verticalAlign=t,this.markForUpdateRenderData())}},{key:"actualFontSize",get:function(){return this._actualFontSize},set:function(t){this._actualFontSize=t}},{key:"fontSize",get:function(){return this._fontSize},set:function(t){this._fontSize!==t&&(this._fontSize=t,this.markForUpdateRenderData())}},{key:"lineHeight",get:function(){return this._lineHeight},set:function(t){this._lineHeight!==t&&(this._lineHeight=t,this.markForUpdateRenderData())}},{key:"spacingX",get:function(){return this._spacingX},set:function(t){this._spacingX!==t&&(this._spacingX=t,this.markForUpdateRenderData())}},{key:"overflow",get:function(){return this._overflow},set:function(t){this._overflow!==t&&(this._overflow=t,this.markForUpdateRenderData())}},{key:"enableWrapText",get:function(){return this._enableWrapText},set:function(t){this._enableWrapText!==t&&(this._enableWrapText=t,this.markForUpdateRenderData())}},{key:"useSystemFont",get:function(){return this._isSystemFontUsed},set:function(t){this._isSystemFontUsed!==t&&(this.destroyRenderData(),this._isSystemFontUsed=!!t,t&&(this.font=null),this._flushAssembler(),this.markForUpdateRenderData())}},{key:"fontFamily",get:function(){return this._fontFamily},set:function(t){this._fontFamily!==t&&(this._fontFamily=t,this.markForUpdateRenderData())}},{key:"font",get:function(){return this._font},set:function(t){this._font!==t&&(this._isSystemFontUsed=!t,this._font=t,this.destroyRenderData(),this._fontAtlas=null,this.updateRenderData(!0))}},{key:"cacheMode",get:function(){return this._cacheMode},set:function(t){this._cacheMode!==t&&(this._cacheMode!==IL.BITMAP||this._font instanceof SP||!this._ttfSpriteFrame||this._ttfSpriteFrame._resetDynamicAtlasFrame(),this._cacheMode===IL.CHAR&&(this._ttfSpriteFrame=null),this._cacheMode=t,this.updateRenderData(!0))}},{key:"isBold",get:function(){return this._isBold},set:function(t){this._isBold!==t&&(this._isBold=t,this.markForUpdateRenderData())}},{key:"isItalic",get:function(){return this._isItalic},set:function(t){this._isItalic!==t&&(this._isItalic=t,this.markForUpdateRenderData())}},{key:"isUnderline",get:function(){return this._isUnderline},set:function(t){this._isUnderline!==t&&(this._isUnderline=t,this.markForUpdateRenderData())}},{key:"underlineHeight",get:function(){return this._underlineHeight},set:function(t){this._underlineHeight!==t&&(this._underlineHeight=t,this.markForUpdateRenderData())}},{key:"enableOutline",get:function(){return this._enableOutline},set:function(t){this._enableOutline!==t&&(this._enableOutline=t,this.markForUpdateRenderData())}},{key:"outlineColor",get:function(){return this._outlineColor},set:function(t){this._outlineColor!==t&&(this._outlineColor.set(t),this.markForUpdateRenderData())}},{key:"outlineWidth",get:function(){return this._outlineWidth},set:function(t){this._outlineWidth!==t&&(this._outlineWidth=t,this.markForUpdateRenderData())}},{key:"enableShadow",get:function(){return this._enableShadow},set:function(t){this._enableShadow!==t&&(this._enableShadow=t,this.markForUpdateRenderData())}},{key:"shadowColor",get:function(){return this._shadowColor},set:function(t){this._shadowColor!==t&&(this._shadowColor.set(t),this.markForUpdateRenderData())}},{key:"shadowOffset",get:function(){return this._shadowOffset},set:function(t){this._shadowOffset!==t&&(this._shadowOffset.set(t),this.markForUpdateRenderData())}},{key:"shadowBlur",get:function(){return this._shadowBlur},set:function(t){this._shadowBlur!==t&&(this._shadowBlur=t,this.markForUpdateRenderData())}},{key:"spriteFrame",get:function(){return this._texture}},{key:"ttfSpriteFrame",get:function(){return this._ttfSpriteFrame}},{key:"assemblerData",get:function(){return this._assemblerData}},{key:"fontAtlas",get:function(){return this._fontAtlas},set:function(t){this._fontAtlas=t}},{key:"_bmFontOriginalSize",get:function(){return this._font instanceof SP?this._font.fontSize:-1}},{key:"textStyle",get:function(){return this._textStyle}},{key:"textLayout",get:function(){return this._textLayout}},{key:"textRenderData",get:function(){return this._textRenderData}},{key:"textLayoutData",get:function(){return this._textLayoutData}},{key:"contentWidth",get:function(){return this._contentWidth},set:function(t){this._contentWidth=t}}]),e}(XO)).HorizontalAlign=xL,CL.VerticalAlign=wL,CL.Overflow=RL,CL.CacheMode=IL,CL._canvasPool=EP.getInstance(),m((tL=CL).prototype,"horizontalAlign",[qO],Object.getOwnPropertyDescriptor(tL.prototype,"horizontalAlign"),tL.prototype),m(tL.prototype,"verticalAlign",[KO],Object.getOwnPropertyDescriptor(tL.prototype,"verticalAlign"),tL.prototype),m(tL.prototype,"overflow",[QO],Object.getOwnPropertyDescriptor(tL.prototype,"overflow"),tL.prototype),m(tL.prototype,"font",[ZO],Object.getOwnPropertyDescriptor(tL.prototype,"font"),tL.prototype),m(tL.prototype,"cacheMode",[JO],Object.getOwnPropertyDescriptor(tL.prototype,"cacheMode"),tL.prototype),eL=ja(tL.prototype,"_string",[lo],(function(){return"label"})),iL=ja(tL.prototype,"_horizontalAlign",[lo],(function(){return xL.CENTER})),nL=ja(tL.prototype,"_verticalAlign",[lo],(function(){return wL.CENTER})),rL=ja(tL.prototype,"_actualFontSize",[lo],(function(){return 0})),sL=ja(tL.prototype,"_fontSize",[lo],(function(){return 40})),aL=ja(tL.prototype,"_fontFamily",[lo],(function(){return"Arial"})),oL=ja(tL.prototype,"_lineHeight",[lo],(function(){return 40})),hL=ja(tL.prototype,"_overflow",[lo],(function(){return RL.NONE})),uL=ja(tL.prototype,"_enableWrapText",[lo],(function(){return!0})),lL=ja(tL.prototype,"_font",[lo],(function(){return null})),cL=ja(tL.prototype,"_isSystemFontUsed",[lo],(function(){return!0})),_L=ja(tL.prototype,"_spacingX",[lo],(function(){return 0})),fL=ja(tL.prototype,"_isItalic",[lo],(function(){return!1})),dL=ja(tL.prototype,"_isBold",[lo],(function(){return!1})),pL=ja(tL.prototype,"_isUnderline",[lo],(function(){return!1})),mL=ja(tL.prototype,"_underlineHeight",[lo],(function(){return 2})),gL=ja(tL.prototype,"_cacheMode",[lo],(function(){return IL.NONE})),vL=ja(tL.prototype,"_enableOutline",[lo],(function(){return!1})),yL=ja(tL.prototype,"_outlineColor",[lo],(function(){return new En(0,0,0,255)})),SL=ja(tL.prototype,"_outlineWidth",[lo],(function(){return 2})),TL=ja(tL.prototype,"_enableShadow",[lo],(function(){return!1})),AL=ja(tL.prototype,"_shadowColor",[lo],(function(){return new En(0,0,0,255)})),bL=ja(tL.prototype,"_shadowOffset",[lo],(function(){return new jn(2,2)})),EL=ja(tL.prototype,"_shadowBlur",[lo],(function(){return 2})),$O=tL))||$O)||$O));S.Label=OL;var LL,NL,FL=0,kL={};function GL(t){return--t,t|=t>>16,t|=t>>8,t|=t>>4,t|=t>>2,t|=t>>1,++t}function VL(t,e){return Math.ceil(t/e)*e}!function(t){t[t.OPAQUE=0]="OPAQUE",t[t.TRANSPARENT=1]="TRANSPARENT",t[t.OVERLAY=2]="OVERLAY"}(LL||(LL={})),function(t){t[t.DEFAULT=1]="DEFAULT",t[t.FORWARD=2]="FORWARD",t[t.SHADOWCAST=4]="SHADOWCAST"}(NL||(NL={}));var UL,zL,HL,WL,XL,jL,YL,qL,KL,QL=function(){function t(t){this._format=ec.UNKNOWN,this._formatSize=0,this._chunks=[],this._chunkCount=0,this._handles=[],this._region0=new Jc,this._region1=new Jc,this._region2=new Jc,this._roundUpFn=null,this._bufferViewCtor=Uint8Array,this._channels=4,this._alignment=1,this._device=t}var e=t.prototype;return e.initialize=function(t){var e=j_[t.format];this._format=t.format,this._formatSize=e.size,this._channels=e.count,this._bufferViewCtor=ef(e),this._roundUpFn=t.roundUpFn||null,this._alignment=t.alignment||1,t.inOrderFree&&(this.alloc=this._McDonaldAlloc)},e.destroy=function(){for(var t=0;t<this._chunkCount;++t)this._chunks[t].texture.destroy();this._chunks.length=0,this._handles.length=0},e.alloc=function(t,e){t=VL(t,this._alignment);var i=-1,n=-1;if(void 0!==e&&(i=e,n=this._findAvailableSpace(t,i)),n<0)for(var r=0;r<this._chunkCount&&(i=r,!((n=this._findAvailableSpace(t,i))>=0));++r);if(n>=0){var s=this._chunks[i];s.start+=t;var a={chunkIdx:i,start:n,end:n+t,texture:s.texture};return this._handles.push(a),a}var o=Math.sqrt(t/this._formatSize),h=this._roundUpFn&&this._roundUpFn(o,this._formatSize)||Math.max(1024,GL(o)),u=this._chunks[this.createChunk(h)];u.start+=t;var l={chunkIdx:this._chunkCount-1,start:0,end:t,texture:u.texture};return this._handles.push(l),l},e.free=function(t){for(var e=0;e<this._handles.length;++e)if(this._handles[e]===t)return this._chunks[t.chunkIdx].end=t.end,void this._handles.splice(e,1)},e.createChunk=function(t){var e=t*t*this._formatSize;X("TextureBufferPool: Allocate chunk "+this._chunkCount+", size: "+e+", format: "+this._format);var i={texture:this._device.createTexture(new u_(hc.TEX2D,uc.SAMPLED|uc.TRANSFER_DST,this._format,t,t)),size:e,start:0,end:e};return this._chunks[this._chunkCount]=i,this._chunkCount++},e.update=function(t,e){var i=[],n=[],r=t.start/this._formatSize,s=e.byteLength/this._formatSize,a=r%t.texture.width,o=Math.floor(r/t.texture.width),h=Math.min(t.texture.width-a,s),u=0;a>0&&(this._region0.texOffset.x=a,this._region0.texOffset.y=o,this._region0.texExtent.width=h,this._region0.texExtent.height=1,i.push(new this._bufferViewCtor(e,u*this._formatSize,h*this._channels)),n.push(this._region0),a=0,o+=1,s-=h,u+=h),s>0&&(this._region1.texOffset.x=a,this._region1.texOffset.y=o,s>t.texture.width?(this._region1.texExtent.width=t.texture.width,this._region1.texExtent.height=Math.floor(s/t.texture.width),h=this._region1.texExtent.width*this._region1.texExtent.height):(h=s,this._region1.texExtent.width=h,this._region1.texExtent.height=1),i.push(new this._bufferViewCtor(e,u*this._formatSize,h*this._channels)),n.push(this._region1),a=0,o+=this._region1.texExtent.height,s-=h,u+=h),s>0&&(this._region2.texOffset.x=a,this._region2.texOffset.y=o,this._region2.texExtent.width=s,this._region2.texExtent.height=1,i.push(new this._bufferViewCtor(e,u*this._formatSize,s*this._channels)),n.push(this._region2)),this._device.copyBuffersToTexture(i,t.texture,n)},e._findAvailableSpace=function(t,e){var i=this._chunks[e],n=!1,r=i.start;if(r+t<=i.size)n=!0;else{r=0;for(var s=this._handles.filter((function(t){return t.chunkIdx===e})).sort((function(t,e){return t.start-e.start})),a=0;a<s.length;a++){var o=s[a];if(r+t<=o.start){n=!0;break}r=o.end}!n&&r+t<=i.size&&(n=!0)}return n?r:-1},e._McDonaldAlloc=function(t){t=VL(t,this._alignment);for(var e=0;e<this._chunkCount;++e){var i=this._chunks[e],n=!1,r=i.start;if(r+t<=i.end?n=!0:r>i.end?r+t<=i.size?n=!0:t<=i.end&&(i.start=r=0,n=!0):r===i.end&&(i.start=r=0,i.end=i.size,t<=i.end&&(n=!0)),n){i.start+=t;var s={chunkIdx:e,start:r,end:r+t,texture:i.texture};return this._handles.push(s),s}}var a=Math.sqrt(t/this._formatSize),o=this._roundUpFn&&this._roundUpFn(a,this._formatSize)||Math.max(1024,GL(a)),h=this._chunks[this.createChunk(o)];h.start+=t;var u={chunkIdx:this._chunkCount,start:0,end:t,texture:h.texture};return this._handles.push(u),u},t}(),ZL=function(){function t(t,e,i){this._arrayBuffers=[],this._chunkSize=i*(1<<e)}return t.prototype.allocateNewChunk=function(){return new ArrayBuffer(this._chunkSize)},t}();!function(t){t[t.UINT32=0]="UINT32",t[t.FLOAT32=1]="FLOAT32",t[t.NEVER=2]="NEVER"}(KL||(KL={}));var JL,$L,tN=function(){function t(t,e,i,n,r){void 0===r&&(r=8),this._arrayBuffers=[],this._freeLists=[],this._uint32BufferViews=[],this._float32BufferViews=[],this._hasUint32=!1,this._hasFloat32=!1,this._elementCount=n.COUNT,this._entryBits=r,this._dataType=e,this._dataMembers=i,this._stride=4*this._elementCount,this._entriesPerChunk=1<<r,this._entryMask=this._entriesPerChunk-1,this._poolFlag=1<<30,this._chunkMask=~(this._entryMask|this._poolFlag),this._nativePool=new ZL(t,r,this._stride);var s=KL.NEVER,a=!1,o=!1;for(var h in e){if(a=this._hasFloat32,(o=this._hasUint32)&&a)break;s=e[h],a||s!==KL.FLOAT32?o||s!==KL.UINT32||(this._hasUint32=!0):this._hasFloat32=!0}}var e=t.prototype;return e.alloc=function(){for(var t=0;t<this._freeLists.length;t++){var e=this._freeLists[t];if(e.length){var i=e[e.length-1];return e.length--,(t<<this._entryBits)+i+this._poolFlag}}for(var n=this._nativePool.allocateNewChunk(),r=[],s=[],a=[],o=this._hasFloat32,h=this._hasUint32,u=0;u<this._entriesPerChunk;u++)o&&r.push(new Float32Array(n,this._stride*u,this._elementCount)),h&&s.push(new Uint32Array(n,this._stride*u,this._elementCount)),u&&a.push(u);return h&&this._uint32BufferViews.push(s),o&&this._float32BufferViews.push(r),this._freeLists.push(a),this._arrayBuffers.push(n),(t<<this._entryBits)+this._poolFlag},e.getBuffer=function(t){var e=(this._chunkMask&t)>>this._entryBits,i=this._entryMask&t;return(this._hasFloat32?this._float32BufferViews:this._uint32BufferViews)[e][i]},e.getTypedArray=function(t,e){var i=(this._chunkMask&t)>>this._entryBits,n=this._entryMask&t,r=e,s=(this._dataType[e]===KL.UINT32?this._uint32BufferViews:this._float32BufferViews)[i][n],a=this._dataMembers[e];return s.subarray(r,r+a)},e.free=function(t){var e=(this._chunkMask&t)>>this._entryBits,i=this._entryMask&t;(this._hasUint32?this._uint32BufferViews:this._float32BufferViews)[e][i].fill(0),this._freeLists[e].push(i)},t}();!function(t){t[t.NODE=0]="NODE",t[t.PASS=1]="PASS",t[t.AABB=2]="AABB",t[t.RENDER2D=3]="RENDER2D"}(JL||(JL={})),function(t){t[t.POSITION=0]="POSITION",t[t.UV=3]="UV",t[t.COLOR=5]="COLOR",t[t.COUNT=9]="COUNT"}($L||($L={}));var eN,iN=((UL={})[$L.POSITION]=KL.FLOAT32,UL[$L.UV]=KL.FLOAT32,UL[$L.COLOR]=KL.UINT32,UL[$L.COUNT]=KL.NEVER,UL),nN=((zL={})[$L.POSITION]=$L.UV-$L.POSITION,zL[$L.UV]=$L.COLOR-$L.UV,zL[$L.COLOR]=$L.COUNT-$L.COLOR,zL[$L.COUNT]=1,zL),rN=new tN(JL.RENDER2D,iN,nN,$L);!function(t){t[t.DIRTY_FLAG=0]="DIRTY_FLAG",t[t.LAYER=1]="LAYER",t[t.WORLD_SCALE=2]="WORLD_SCALE",t[t.WORLD_POSITION=5]="WORLD_POSITION",t[t.WORLD_ROTATION=8]="WORLD_ROTATION",t[t.WORLD_MATRIX=12]="WORLD_MATRIX",t[t.LOCAL_SCALE=28]="LOCAL_SCALE",t[t.LOCAL_POSITION=31]="LOCAL_POSITION",t[t.LOCAL_ROTATION=34]="LOCAL_ROTATION",t[t.COUNT=38]="COUNT"}(eN||(eN={}));var sN,aN=((HL={})[eN.DIRTY_FLAG]=KL.UINT32,HL[eN.LAYER]=KL.UINT32,HL[eN.WORLD_SCALE]=KL.FLOAT32,HL[eN.WORLD_POSITION]=KL.FLOAT32,HL[eN.WORLD_ROTATION]=KL.FLOAT32,HL[eN.WORLD_MATRIX]=KL.FLOAT32,HL[eN.LOCAL_SCALE]=KL.FLOAT32,HL[eN.LOCAL_POSITION]=KL.FLOAT32,HL[eN.LOCAL_ROTATION]=KL.FLOAT32,HL[eN.COUNT]=KL.NEVER,HL),oN=((WL={})[eN.DIRTY_FLAG]=eN.LAYER-eN.DIRTY_FLAG,WL[eN.LAYER]=eN.WORLD_SCALE-eN.LAYER,WL[eN.WORLD_SCALE]=eN.WORLD_POSITION-eN.WORLD_SCALE,WL[eN.WORLD_POSITION]=eN.WORLD_ROTATION-eN.WORLD_POSITION,WL[eN.WORLD_ROTATION]=eN.WORLD_MATRIX-eN.WORLD_ROTATION,WL[eN.WORLD_MATRIX]=eN.LOCAL_SCALE-eN.WORLD_MATRIX,WL[eN.LOCAL_SCALE]=eN.LOCAL_POSITION-eN.LOCAL_SCALE,WL[eN.LOCAL_POSITION]=eN.LOCAL_ROTATION-eN.LOCAL_POSITION,WL[eN.LOCAL_ROTATION]=eN.COUNT-eN.LOCAL_ROTATION,WL[eN.COUNT]=1,WL),hN=new tN(JL.NODE,aN,oN,eN);!function(t){t[t.PRIORITY=0]="PRIORITY",t[t.STAGE=1]="STAGE",t[t.PHASE=2]="PHASE",t[t.PRIMITIVE=3]="PRIMITIVE",t[t.BATCHING_SCHEME=4]="BATCHING_SCHEME",t[t.DYNAMIC_STATE=5]="DYNAMIC_STATE",t[t.HASH=6]="HASH",t[t.COUNT=7]="COUNT"}(sN||(sN={}));var uN,lN=((XL={})[sN.PRIORITY]=KL.UINT32,XL[sN.STAGE]=KL.UINT32,XL[sN.PHASE]=KL.UINT32,XL[sN.PRIMITIVE]=KL.UINT32,XL[sN.BATCHING_SCHEME]=KL.UINT32,XL[sN.DYNAMIC_STATE]=KL.UINT32,XL[sN.HASH]=KL.UINT32,XL[sN.COUNT]=KL.NEVER,XL),cN=((jL={})[sN.PRIORITY]=sN.STAGE-sN.PRIORITY,jL[sN.STAGE]=sN.PHASE-sN.STAGE,jL[sN.PHASE]=sN.PRIMITIVE-sN.PHASE,jL[sN.PRIMITIVE]=sN.BATCHING_SCHEME-sN.PRIMITIVE,jL[sN.BATCHING_SCHEME]=sN.DYNAMIC_STATE-sN.BATCHING_SCHEME,jL[sN.DYNAMIC_STATE]=sN.HASH-sN.DYNAMIC_STATE,jL[sN.HASH]=sN.COUNT-sN.HASH,jL[sN.COUNT]=1,jL),_N=new tN(JL.PASS,lN,cN,sN);!function(t){t[t.CENTER=0]="CENTER",t[t.HALFEXTENTS=3]="HALFEXTENTS",t[t.COUNT=6]="COUNT"}(uN||(uN={}));var fN=((YL={})[uN.CENTER]=KL.FLOAT32,YL[uN.HALFEXTENTS]=KL.FLOAT32,YL[uN.COUNT]=KL.NEVER,YL),dN=((qL={})[uN.CENTER]=uN.HALFEXTENTS-uN.CENTER,qL[uN.HALFEXTENTS]=uN.COUNT-uN.HALFEXTENTS,qL[uN.COUNT]=1,qL),pN=new tN(JL.AABB,fN,dN,uN);lt($R.prototype,"RenderScene.prototype",[{name:"raycastUI2DNode"},{name:"raycastUINode"}]),lt($R.prototype,"RenderScene.prototype",[{name:"raycastAll",suggest:"using intersect.rayModel in geometry"},{name:"raycastAllModels",suggest:"using intersect.rayModel in geometry"},{name:"raycastSingleModel",suggest:"using intersect.rayModel in geometry"},{name:"raycastAllCanvas",suggest:"using intersect.rayAABB in geometry"},{name:"rayResultCanvas"},{name:"rayResultModels"},{name:"rayResultAll"},{name:"rayResultSingleModel"}]),lt(RR.prototype,"Model.prototype",[{name:"isInstancingEnabled"},{name:"instancedAttributes"}]);var mN={};lt(mN,"CameraVisFlags",[{name:"GENERAL"}]),ut(mN,"CameraVisFlags",[{name:"PROFILER",newName:"PROFILER",target:dm.BitMask,targetName:"PROFILER"},{name:"GIZMOS",newName:"GIZMOS",target:dm.BitMask,targetName:"GIZMOS"},{name:"EDITOR",newName:"EDITOR",target:dm.BitMask,targetName:"EDITOR"},{name:"UI",newName:"UI",target:dm.BitMask,targetName:"UI_3D"},{name:"UI2D",newName:"UI2D",target:dm.BitMask,targetName:"UI_2D"}]),S.CameraVisFlags=mN;var gN={};lt(gN,"VisibilityFlags",[{name:"GENERAL"}]),ut(gN,"VisibilityFlags",[{name:"ALWALS",newName:"ALWALS",target:dm.Enum,targetName:"ALWALS"},{name:"PROFILER",newName:"PROFILER",target:dm.Enum,targetName:"PROFILER"},{name:"GIZMOS",newName:"GIZMOS",target:dm.Enum,targetName:"GIZMOS"},{name:"EDITOR",newName:"EDITOR",target:dm.Enum,targetName:"EDITOR"},{name:"UI",newName:"UI",target:dm.Enum,targetName:"UI_3D"},{name:"UI2D",newName:"UI2D",target:dm.Enum,targetName:"UI_2D"}]),S.VisibilityFlags=gN,ut(IT.prototype,"Pass.prototype",[{name:"getBindingTypeFromHandle",newName:"getDescriptorTypeFromHandle"}]),lt(sR.prototype,"Camera.prototype",[{name:"getSplitFrustum"},{name:"setMatView"},{name:"setMatViewInv"},{name:"setMatProjInv"},{name:"setMatViewProjInv"},{name:"setMatProj"},{name:"setMatViewProj"},{name:"getMatViewInv"}]),lt(KT.prototype,"Shadows.prototype",[{name:"aspect"},{name:"selfShadow"},{name:"linear"},{name:"packing"},{name:"autoAdapt"},{name:"fixedArea"},{name:"pcf"},{name:"bias"},{name:"normalBias"},{name:"near"},{name:"far"},{name:"shadowDistance"},{name:"invisibleOcclusionRange"},{name:"orthoSize"},{name:"saturation"}]),lt(jR.prototype,"SpotLight.prototype",[{name:"aspect"}]),ut(oR.prototype,"SubModel.prototype",[{name:"subMeshData",newName:"subMesh"}]),lt(oR.prototype,"SubModel.prototype",[{name:"getSubModel",suggest:"Use `subModels[i]` instead"},{name:"subModelNum",suggest:"Use `subModels.length` instead"}]);var vN,yN,SN,TN=function(t){if(void 0===kL[t]){var e=1<<FL;kL[t]=e,FL+=1}},AN=Object.freeze({__proto__:null,addStage:TN,scene:JR,createIA:function(t,e){if(!e.positions)return it(16306),null;for(var i=[],n=e.positions.length/3,r=0;r<n;++r)i.push(e.positions[3*r],e.positions[3*r+1],e.positions[3*r+2]),e.normals&&i.push(e.normals[3*r],e.normals[3*r+1],e.normals[3*r+2]),e.uvs&&i.push(e.uvs[2*r],e.uvs[2*r+1]),e.colors&&i.push(e.colors[3*r],e.colors[3*r+1],e.colors[3*r+2]);var s=[];s.push(new T_(Uc.ATTR_POSITION,ec.RGB32F)),e.normals&&s.push(new T_(Uc.ATTR_NORMAL,ec.RGB32F)),e.uvs&&s.push(new T_(Uc.ATTR_TEX_COORD,ec.RG32F)),e.colors&&s.push(new T_(Uc.ATTR_COLOR,ec.RGB32F));var a=t.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,4*i.length,4*i.length/n));a.update(new Float32Array(i));var o=null;return e.indices&&(o=t.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,2*e.indices.length,2))).update(new Uint16Array(e.indices)),t.createInputAssembler(new b_(s,[a],o))},programLib:Zy,getDeviceShaderVersion:Hy,RenderWindow:rI,get RenderQueue(){return LL},get PassStage(){return NL},genHandle:py,getTypeFromHandle:my,getBindingFromHandle:gy,getCountFromHandle:vy,getOffsetFromHandle:yy,customizeType:Sy,type2reader:Ty,type2writer:Ay,type2validator:by,getDefaultFromType:Cy,getStringFromType:xy,overrideMacros:wy,get BatchingSchemes(){return TT},Pass:IT,nearestPOT:GL,TextureBufferPool:QL,MaterialInstance:ZT,PassInstance:QT,get PoolType(){return JL},NULL_HANDLE:0,get Render2dView(){return $L},Render2dPool:rN,get NodeView(){return eN},NodePool:hN,get PassView(){return sN},PassPool:_N,get AABBView(){return uN},AABBPool:pN,RenderScene:$R,CameraVisFlags:mN,VisibilityFlags:gN});t("aH",AN),function(t){t[t.BUTT=0]="BUTT",t[t.ROUND=1]="ROUND",t[t.SQUARE=2]="SQUARE"}(vN||(vN={})),we(vN),function(t){t[t.BEVEL=0]="BEVEL",t[t.ROUND=1]="ROUND",t[t.MITER=2]="MITER"}(yN||(yN={})),we(yN),function(t){t[t.PT_CORNER=1]="PT_CORNER",t[t.PT_LEFT=2]="PT_LEFT",t[t.PT_BEVEL=4]="PT_BEVEL",t[t.PT_INNERBEVEL=8]="PT_INNERBEVEL"}(SN||(SN={})),we(SN);var bN=Math.PI,EN=Math.min,CN=Math.max,xN=Math.cos,wN=Math.sin,RN=Math.abs,IN=Math.sign,DN=.5522847493;function BN(t,e,i,n,r){t.moveTo(e-n,i),t.bezierCurveTo(e-n,i+r*DN,e-n*DN,i+r,e,i+r),t.bezierCurveTo(e+n*DN,i+r,e+n,i+r*DN,e+n,i),t.bezierCurveTo(e+n,i-r*DN,e+n*DN,i-r,e,i-r),t.bezierCurveTo(e-n*DN,i-r,e-n,i-r*DN,e-n,i),t.close()}function MN(t,e,i,n,r,s,a,o,h,u,l){var c,_,f,d,p,m,g,v,y,S,T,A,b,E,C,x;u>10||(p=.5*(s+o),m=.5*(a+h),g=.5*((c=.5*(e+n))+(f=.5*(n+s))),v=.5*((_=.5*(i+r))+(d=.5*(r+a))),((C=RN((n-o)*(E=h-i)-(r-h)*(b=o-e)))+(x=RN((s-o)*E-(a-h)*b)))*(C+x)<t.tessTol*(b*b+E*E)?t.addPoint(o,h,0===l?l|SN.PT_BEVEL:l):(MN(t,e,i,c,_,g,v,T=.5*(g+(y=.5*(f+p))),A=.5*(v+(S=.5*(d+m))),u+1,0),MN(t,T,A,y,S,p,m,o,h,u+1,l)))}var PN,ON,LN,NN,FN,kN,GN,VN,UN,zN,HN,WN,XN,jN,YN,qN,KN,QN,ZN,JN,$N,tF,eF,iF,nF,rF,sF,aF,oF,hF,uF,lF,cF,_F,fF,dF,pF,mF=function(t){function e(e,i){var n;return(n=t.call(this,e,i)||this).dx=0,n.dy=0,n.dmx=0,n.dmy=0,n.flags=0,n.len=0,n}return s(e,t),e.prototype.reset=function(){this.dx=0,this.dy=0,this.dmx=0,this.dmy=0,this.flags=0,this.len=0},e}(jn),gF=function(){function t(){this.closed=!1,this.bevel=0,this.complex=!0,this.points=[]}return t.prototype.reset=function(){this.closed=!1,this.bevel=0,this.complex=!0,this.points.length=0},t}(),vF=function(){function t(t){this.dataOffset=0,this.updatePathOffset=!1,this.pathLength=0,this.pathOffset=0,this.paths=[],this.tessTol=.25,this.distTol=.01,this.fillColor=En.WHITE.clone(),this.lineCap=vN.BUTT,this.strokeColor=En.BLACK.clone(),this.lineJoin=yN.MITER,this.lineWidth=0,this.pointsOffset=0,this._commandX=0,this._commandY=0,this._points=[],this._renderDataList=[],this._curPath=null,this._comp=t}var e=t.prototype;return e.moveTo=function(t,e){this.updatePathOffset&&(this.pathOffset=this.pathLength,this.updatePathOffset=!1),this._addPath(),this.addPoint(t,e,SN.PT_CORNER),this._commandX=t,this._commandY=e},e.lineTo=function(t,e){this.addPoint(t,e,SN.PT_CORNER),this._commandX=t,this._commandY=e},e.bezierCurveTo=function(t,e,i,n,r,s){var a=this._curPath,o=a.points[a.points.length-1];o&&(o.x!==t||o.y!==e||i!==r||n!==s?(MN(this,o.x,o.y,t,e,i,n,r,s,0,SN.PT_CORNER),this._commandX=r,this._commandY=s):this.lineTo(r,s))},e.quadraticCurveTo=function(t,e,i,n){var r=this._commandX,s=this._commandY;this.bezierCurveTo(r+2/3*(t-r),s+2/3*(e-s),i+2/3*(t-i),n+2/3*(e-n),i,n)},e.arc=function(t,e,i,n,r,s){!function(t,e,i,n,r,s,a){var o,h,u=0,l=0,c=0,_=0,f=0,d=0,p=0,m=0,g=0,v=0,y=0,S=0,T=0,A=0;if(l=s-r,a=a||!1)if(RN(l)>=2*bN)l=2*bN;else for(;l<0;)l+=2*bN;else if(RN(l)>=2*bN)l=2*-bN;else for(;l>0;)l-=2*bN;for(h=0|CN(1,EN(RN(l)/(.5*bN)+.5,5)),c=RN(4/3*(1-xN(o=l/h/2))/wN(o)),a||(c=-c),A=0;A<=h;A++)d=e+(_=xN(u=r+l*(A/h)))*n,p=i+(f=wN(u))*n,m=-f*n*c,g=_*n*c,0===A?t.moveTo(d,p):t.bezierCurveTo(v+S,y+T,d-m,p-g,d,p),v=d,y=p,S=m,T=g}(this,t,e,i,n,r,s)},e.ellipse=function(t,e,i,n){BN(this,t,e,i,n),this._curPath.complex=!1},e.circle=function(t,e,i){BN(this,t,e,i,i),this._curPath.complex=!1},e.rect=function(t,e,i,n){this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+n),this.lineTo(t,e+n),this.close(),this._curPath.complex=!1},e.roundRect=function(t,e,i,n,r){!function(t,e,i,n,r,s){if(s<.1)t.rect(e,i,n,r);else{var a=EN(s,.5*RN(n))*IN(n),o=EN(s,.5*RN(r))*IN(r);t.moveTo(e,i+o),t.lineTo(e,i+r-o),t.bezierCurveTo(e,i+r-o*(1-DN),e+a*(1-DN),i+r,e+a,i+r),t.lineTo(e+n-a,i+r),t.bezierCurveTo(e+n-a*(1-DN),i+r,e+n,i+r-o*(1-DN),e+n,i+r-o),t.lineTo(e+n,i+o),t.bezierCurveTo(e+n,i+o*(1-DN),e+n-a*(1-DN),i,e+n-a,i),t.lineTo(e+a,i),t.bezierCurveTo(e+a*(1-DN),i,e,i+o*(1-DN),e,i+o),t.close()}}(this,t,e,i,n,r),this._curPath.complex=!1},e.clear=function(){this.pathLength=0,this.pathOffset=0,this.pointsOffset=0,this.dataOffset=0,this._curPath=null,this.paths.length=0,this._points.length=0;for(var t=this._renderDataList,e=0,i=t.length;e<i;e++){var n=t[e];n&&(vO.remove(n),n.removeRenderDrawInfo(this._comp))}this._renderDataList.length=0},e.close=function(){this._curPath.closed=!0},e.requestRenderData=function(){var t=vO.add();return this._renderDataList.push(t),t},e.getRenderDataList=function(){return 0===this._renderDataList.length&&this.requestRenderData(),this._renderDataList},e.addPoint=function(t,e,i){var n=this._curPath;if(n){var r=this._points,s=n.points,a=r[this.pointsOffset++];a?(a.x=t,a.y=e):(a=new mF(t,e),r.push(a)),a.flags=i,s.push(a)}},e._addPath=function(){var t=this.pathLength,e=this.paths[t];return e?e.reset():(e=new gF,this.paths.push(e)),this.pathLength++,this._curPath=e,e},t}(),yF=MP.concat([new T_("a_dist",ec.R32F)]),SF=FP(yF),TF=kP(yF),AF=t("G",(PN=eo("cc.Graphics"),ON=no(110),LN=Lo(yN),NN=Lo(vN),PN(FN=ON(((XN=function(t){function e(){var e;return(e=t.call(this)||this).impl=null,e.model=null,e._lineWidth=GN&&GN(),e._strokeColor=VN&&VN(),e._lineJoin=UN&&UN(),e._lineCap=zN&&zN(),e._fillColor=HN&&HN(),e._miterLimit=WN&&WN(),e._isDrawing=!1,e._isNeedUploadData=!0,e._graphicsUseSubMeshes=[],e._instanceMaterialType=VO.ADD_COLOR,e.impl=new vF(c(e)),e}s(e,t);var i=e.prototype;return i.onRestore=function(){this.impl||this._flushAssembler()},i.onLoad=function(){t.prototype.onLoad.call(this),this.model=ID.root.createModel(RR),this.model.node=this.model.transform=this.node,this._flushAssembler()},i.onEnable=function(){t.prototype.onEnable.call(this),this._updateMtlForGraphics()},i.onDestroy=function(){this._sceneGetter=null,this.model&&(ID.root.destroyModel(this.model),this.model=null);var e=this._graphicsUseSubMeshes.length;if(e>0){for(var i=0;i<e;++i)this._graphicsUseSubMeshes[i].destroy();this._graphicsUseSubMeshes.length=0}this.impl&&(this._isDrawing=!1,this.impl.clear(),this.impl=null),t.prototype.onDestroy.call(this)},i.moveTo=function(t,e){this.impl&&this.impl.moveTo(t,e)},i.lineTo=function(t,e){this.impl&&this.impl.lineTo(t,e)},i.bezierCurveTo=function(t,e,i,n,r,s){this.impl&&this.impl.bezierCurveTo(t,e,i,n,r,s)},i.quadraticCurveTo=function(t,e,i,n){this.impl&&this.impl.quadraticCurveTo(t,e,i,n)},i.arc=function(t,e,i,n,r,s){this.impl&&this.impl.arc(t,e,i,n,r,s)},i.ellipse=function(t,e,i,n){this.impl&&this.impl.ellipse(t,e,i,n)},i.circle=function(t,e,i){this.impl&&this.impl.circle(t,e,i)},i.rect=function(t,e,i,n){this.impl&&this.impl.rect(t,e,i,n)},i.roundRect=function(t,e,i,n,r){this.impl&&this.impl.roundRect(t,e,i,n,r)},i.fillRect=function(t,e,i,n){this.rect(t,e,i,n),this.fill()},i.clear=function(){if(this.impl){if(this.impl.clear(),this._isDrawing=!1,this.model)for(var t=0;t<this.model.subModels.length;t++)this.model.subModels[t].inputAssembler.indexCount=0;this.markForUpdateRenderData()}},i.close=function(){this.impl&&this.impl.close()},i.stroke=function(){this._assembler||this._flushAssembler(),this._isDrawing=!0,this._isNeedUploadData=!0,this._assembler.stroke(this)},i.fill=function(){this._assembler||this._flushAssembler(),this._isDrawing=!0,this._isNeedUploadData=!0,this._assembler.fill(this)},i._updateMtlForGraphics=function(){var t;this._customMaterial?t=this.getMaterialInstance(0):(t=bT.get("ui-graphics-material"),this.setSharedMaterial(t,0),(t=this.getMaterialInstance(0)).recompileShaders({USE_LOCAL:!0}))},i.activeSubModel=function(t){if(this.model){if(this.model.subModels.length<=t){var e=Ff.gfxDevice,i=e.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,65535*TF,TF)),n=e.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,131070*Uint16Array.BYTES_PER_ELEMENT,Uint16Array.BYTES_PER_ELEMENT)),r=new FD([i],yF,wc.TRIANGLE_LIST,n);r.subMeshIdx=0,this.model.initSubModel(t,r,this.getMaterialInstance(0)),this._graphicsUseSubMeshes.push(r)}}else tt(4500,this.node.name)},i._uploadData=function(){var t=this.impl;if(t){var e=t&&t.getRenderDataList();if(!(e.length<=0)&&this.model){for(var i=this.model.subModels,n=0;n<e.length;n++){var r=e[n],s=i[n].inputAssembler;if(r.lastFilledVertex!==r.vertexStart){var a=new Float32Array(r.vData.buffer,0,r.vertexStart*SF);s.vertexBuffers[0].update(a),s.vertexCount=r.vertexStart;var o=new Uint16Array(r.iData.buffer,0,r.indexStart);s.indexBuffer.update(o),s.indexCount=r.indexStart,r.lastFilledVertex=r.vertexStart,r.lastFilledIndex=r.indexStart}}this._isNeedUploadData=!1}}},i._render=function(t){if(this._isNeedUploadData){if(this.impl){var e=this.impl.getRenderDataList(),i=this.model.subModels.length;if(e.length>i)for(var n=i;n<e.length;n++)this.activeSubModel(n)}this._uploadData()}t.commitModel(this,this.model,this.getMaterialInstance(0))},i._flushAssembler=function(){var t=e.Assembler.getAssembler(this);this._assembler!==t&&(this._assembler=t)},i._canRender=function(){return!!t.prototype._canRender.call(this)&&!!this.model&&this._isDrawing},i.updateRenderer=function(){t.prototype.updateRenderer.call(this)},i.createRenderEntity=function(){return new dO(ZP.DYNAMIC)},n(e,[{key:"lineWidth",get:function(){return this._lineWidth},set:function(t){this._lineWidth=t,this.impl&&(this.impl.lineWidth=t)}},{key:"lineJoin",get:function(){return this._lineJoin},set:function(t){this._lineJoin=t,this.impl&&(this.impl.lineJoin=t)}},{key:"lineCap",get:function(){return this._lineCap},set:function(t){this._lineCap=t,this.impl&&(this.impl.lineCap=t)}},{key:"strokeColor",get:function(){return this._strokeColor},set:function(t){this.impl&&(this._strokeColor.set(t),this.impl.strokeColor=this._strokeColor)}},{key:"fillColor",get:function(){return this._fillColor},set:function(t){this.impl&&(this._fillColor.set(t),this.impl.fillColor=this._fillColor)}},{key:"miterLimit",get:function(){return this._miterLimit},set:function(t){this._miterLimit=t}},{key:"color",get:function(){return this._color},set:function(t){this._color!==t&&this._color.set(t)}},{key:"graphicsNativeProxy",get:function(){return this._graphicsNativeProxy}}]),e}(XO)).LineJoin=yN,XN.LineCap=vN,m((kN=XN).prototype,"lineJoin",[LN],Object.getOwnPropertyDescriptor(kN.prototype,"lineJoin"),kN.prototype),m(kN.prototype,"lineCap",[NN],Object.getOwnPropertyDescriptor(kN.prototype,"lineCap"),kN.prototype),m(kN.prototype,"color",[jo],Object.getOwnPropertyDescriptor(kN.prototype,"color"),kN.prototype),GN=ja(kN.prototype,"_lineWidth",[lo],(function(){return 1})),VN=ja(kN.prototype,"_strokeColor",[lo],(function(){return En.BLACK.clone()})),UN=ja(kN.prototype,"_lineJoin",[lo],(function(){return yN.MITER})),zN=ja(kN.prototype,"_lineCap",[lo],(function(){return vN.BUTT})),HN=ja(kN.prototype,"_fillColor",[lo],(function(){return En.WHITE.clone()})),WN=ja(kN.prototype,"_miterLimit",[lo],(function(){return 10})),FN=kN))||FN)||FN));S.Graphics=AF,function(t){t[t.SIMPLE=0]="SIMPLE",t[t.SLICED=1]="SLICED",t[t.TILED=2]="TILED",t[t.FILLED=3]="FILLED"}(_F||(_F={})),we(_F),function(t){t[t.HORIZONTAL=0]="HORIZONTAL",t[t.VERTICAL=1]="VERTICAL",t[t.RADIAL=2]="RADIAL"}(fF||(fF={})),we(fF),function(t){t[t.CUSTOM=0]="CUSTOM",t[t.TRIMMED=1]="TRIMMED",t[t.RAW=2]="RAW"}(dF||(dF={})),we(dF),function(t){t.SPRITE_FRAME_CHANGED="spriteframe-changed"}(pF||(pF={}));var bF,EF,CF,xF,wF,RF,IF,DF,BF,MF,PF=t("j",(jN=eo("cc.Sprite"),YN=no(110),qN=Lo(AM),KN=Lo(SM),QN=Lo(_F),ZN=Lo(fF),JN=Lo(dF),jN($N=YN(((cF=function(t){function e(){var e;return(e=t.call(this)||this)._spriteFrame=eF&&eF(),e._type=iF&&iF(),e._fillType=nF&&nF(),e._sizeMode=rF&&rF(),e._fillCenter=sF&&sF(),e._fillStart=aF&&aF(),e._fillRange=oF&&oF(),e._isTrimmedMode=hF&&hF(),e._useGrayscale=uF&&uF(),e._atlas=lF&&lF(),e}s(e,t);var i=e.prototype;return i.__preload=function(){this.changeMaterialForDefine(),t.prototype.__preload.call(this)},i.onEnable=function(){t.prototype.onEnable.call(this),this._activateMaterial();var e=this._spriteFrame;e&&(this._updateUVs(),this._type===_F.SLICED&&e.on(SM.EVENT_UV_UPDATED,this._updateUVs,this))},i.onDisable=function(){t.prototype.onDisable.call(this),this._spriteFrame&&this._type===_F.SLICED&&this._spriteFrame.off(SM.EVENT_UV_UPDATED,this._updateUVs,this)},i.onDestroy=function(){t.prototype.onDestroy.call(this)},i.changeSpriteFrameFromAtlas=function(t){if(this._atlas){var e=this._atlas.getSpriteFrame(t);this.spriteFrame=e}else tt(16377)},i.changeMaterialForDefine=function(){var t,e=this._instanceMaterialType;this._spriteFrame&&(t=this._spriteFrame.texture);var i=!1;if(t instanceof Xd){var n=t.getPixelFormat();i=n===yd.RGBA_ETC1||n===yd.RGB_A_PVRTC_4BPPV1||n===yd.RGB_A_PVRTC_2BPPV1}i&&this.grayscale?this._instanceMaterialType=VO.USE_ALPHA_SEPARATED_AND_GRAY:i?this._instanceMaterialType=VO.USE_ALPHA_SEPARATED:this.grayscale?this._instanceMaterialType=VO.GRAYSCALE:this._instanceMaterialType=VO.ADD_COLOR_AND_TEXTURE,e!==this._instanceMaterialType&&this.updateMaterial()},i._updateBuiltinMaterial=function(){var e=t.prototype._updateBuiltinMaterial.call(this);if(this.spriteFrame&&this.spriteFrame.texture instanceof dR){var i=new zT;i.copy(e,{defines:{SAMPLE_FROM_RT:!0}}),e=i}return e},i._render=function(t){t.commitComp(this,this.renderData,this._spriteFrame,this._assembler,null)},i._canRender=function(){if(!t.prototype._canRender.call(this))return!1;var e=this._spriteFrame;return!(!e||!e.texture)},i._flushAssembler=function(){var t=e.Assembler.getAssembler(this);this._assembler!==t&&(this.destroyRenderData(),this._assembler=t),this._renderData||this._assembler&&this._assembler.createData&&(this._renderData=this._assembler.createData(this),this._renderData.material=this.getRenderMaterial(0),this.markForUpdateRenderData(),this.spriteFrame&&this._assembler.updateUVs(this),this._updateColor()),this._spriteFrame&&(this._type===_F.SLICED?this._spriteFrame.on(SM.EVENT_UV_UPDATED,this._updateUVs,this):this._spriteFrame.off(SM.EVENT_UV_UPDATED,this._updateUVs,this))},i._applySpriteSize=function(){if(this._spriteFrame)if(dF.RAW===this._sizeMode){var t=this._spriteFrame.originalSize;this.node._uiProps.uiTransformComp.setContentSize(t)}else if(dF.TRIMMED===this._sizeMode){var e=this._spriteFrame.rect;this.node._uiProps.uiTransformComp.setContentSize(e.width,e.height)}},i._resized=function(){},i._activateMaterial=function(){var t=this._spriteFrame,e=this.getRenderMaterial(0);t&&e&&this.markForUpdateRenderData(),this.renderData&&(this.renderData.material=e)},i._updateUVs=function(){this._assembler&&this._assembler.updateUVs(this)},i._applySpriteFrame=function(t){var e=this._spriteFrame;t&&this._type===_F.SLICED&&t.off(SM.EVENT_UV_UPDATED,this._updateUVs,this);var i=!1;e&&(t&&t.texture===e.texture||(i=!0),i&&(this.renderData&&(this.renderData.textureDirty=!0),(!!t&&t.texture instanceof dR)!=e.texture instanceof dR&&(this._instanceMaterialType=-1),this.changeMaterialForDefine()),this._applySpriteSize(),this._type===_F.SLICED&&e.on(SM.EVENT_UV_UPDATED,this._updateUVs,this))},n(e,[{key:"spriteAtlas",get:function(){return this._atlas},set:function(t){this._atlas!==t&&(this._atlas=t)}},{key:"spriteFrame",get:function(){return this._spriteFrame},set:function(t){if(this._spriteFrame!==t){var e=this._spriteFrame;this._spriteFrame=t,this.markForUpdateRenderData(),this._applySpriteFrame(e)}}},{key:"type",get:function(){return this._type},set:function(t){this._type!==t&&(this._type=t,this._flushAssembler())}},{key:"fillType",get:function(){return this._fillType},set:function(t){this._fillType!==t&&(t===fF.RADIAL||this._fillType===fF.RADIAL?this.destroyRenderData():this.renderData&&this.markForUpdateRenderData(!0)),this._fillType=t,this._flushAssembler()}},{key:"fillCenter",get:function(){return this._fillCenter},set:function(t){this._fillCenter.x=t.x,this._fillCenter.y=t.y,this._type===_F.FILLED&&this.renderData&&this.markForUpdateRenderData()}},{key:"fillStart",get:function(){return this._fillStart},set:function(t){this._fillStart=Fi(t,0,1),this._type===_F.FILLED&&this.renderData&&(this.markForUpdateRenderData(),this._updateUVs())}},{key:"fillRange",get:function(){return this._fillRange},set:function(t){this._fillRange=Fi(t,-1,1),this._type===_F.FILLED&&this.renderData&&(this.markForUpdateRenderData(),this._updateUVs())}},{key:"trim",get:function(){return this._isTrimmedMode},set:function(t){this._isTrimmedMode!==t&&(this._isTrimmedMode=t,this._type===_F.SIMPLE&&this.renderData&&this.markForUpdateRenderData(!0))}},{key:"grayscale",get:function(){return this._useGrayscale},set:function(t){this._useGrayscale!==t&&(this._useGrayscale=t,this.changeMaterialForDefine(),this.updateMaterial())}},{key:"sizeMode",get:function(){return this._sizeMode},set:function(t){this._sizeMode!==t&&(this._sizeMode=t,t!==dF.CUSTOM&&this._applySpriteSize())}}]),e}(XO)).FillType=fF,cF.Type=_F,cF.SizeMode=dF,cF.EventType=pF,m((tF=cF).prototype,"spriteAtlas",[qN],Object.getOwnPropertyDescriptor(tF.prototype,"spriteAtlas"),tF.prototype),m(tF.prototype,"spriteFrame",[KN],Object.getOwnPropertyDescriptor(tF.prototype,"spriteFrame"),tF.prototype),m(tF.prototype,"type",[QN],Object.getOwnPropertyDescriptor(tF.prototype,"type"),tF.prototype),m(tF.prototype,"fillType",[ZN],Object.getOwnPropertyDescriptor(tF.prototype,"fillType"),tF.prototype),m(tF.prototype,"sizeMode",[JN],Object.getOwnPropertyDescriptor(tF.prototype,"sizeMode"),tF.prototype),eF=ja(tF.prototype,"_spriteFrame",[lo],(function(){return null})),iF=ja(tF.prototype,"_type",[lo],(function(){return _F.SIMPLE})),nF=ja(tF.prototype,"_fillType",[lo],(function(){return fF.HORIZONTAL})),rF=ja(tF.prototype,"_sizeMode",[lo],(function(){return dF.TRIMMED})),sF=ja(tF.prototype,"_fillCenter",[lo],(function(){return new jn(0,0)})),aF=ja(tF.prototype,"_fillStart",[lo],(function(){return 0})),oF=ja(tF.prototype,"_fillRange",[lo],(function(){return 0})),hF=ja(tF.prototype,"_isTrimmedMode",[lo],(function(){return!0})),uF=ja(tF.prototype,"_useGrayscale",[lo],(function(){return!1})),lF=ja(tF.prototype,"_atlas",[lo],(function(){return null})),$N=tF))||$N)||$N));S.Sprite=PF;var OF,LF=new Vn,NF=new jn,FF=new Vn,kF=[];!function(t){t[t.GRAPHICS_RECT=0]="GRAPHICS_RECT",t[t.GRAPHICS_ELLIPSE=1]="GRAPHICS_ELLIPSE",t[t.GRAPHICS_STENCIL=2]="GRAPHICS_STENCIL",t[t.SPRITE_STENCIL=3]="SPRITE_STENCIL"}(OF||(OF={})),we(OF);var GF,VF,UF,zF,HF,WF,XF=t("h",(bF=eo("cc.Mask"),EF=no(110),CF=Lo(OF),bF(xF=EF(((MF=function(t){function e(){var e;return(e=t.call(this)||this)._type=RF&&RF(),e._inverted=IF&&IF(),e._segments=DF&&DF(),e._alphaThreshold=BF&&BF(),e._sprite=null,e._graphics=null,e._stencilStage=qP.DISABLED,e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._changeRenderType()},i.onEnable=function(){this._changeRenderType(),this._updateGraphics(),this._enableRender(),this.node.on(vm.ANCHOR_CHANGED,this._nodeStateChange,this),this.node.on(vm.SIZE_CHANGED,this._nodeStateChange,this)},i.onRestore=function(){this._changeRenderType(),this._updateGraphics()},i.onDisable=function(){this._disableRender(),this.node.off(vm.ANCHOR_CHANGED,this._nodeStateChange,this),this.node.off(vm.SIZE_CHANGED,this._nodeStateChange,this)},i.onDestroy=function(){this._removeMaskNode()},i.isHit=function(t){var e=this.node._uiProps.uiTransformComp,i=e.contentSize,n=i.width,r=i.height,s=NF;this.node.getWorldMatrix(LF),Vn.invert(FF,LF),jn.transformMat4(s,t,FF);var a=e.anchorPoint;s.x+=a.x*n,s.y+=a.y*r;var o=!1;if(this.type===OF.GRAPHICS_RECT||this.type===OF.GRAPHICS_STENCIL||this.type===OF.SPRITE_STENCIL)o=s.x>=0&&s.y>=0&&s.x<=n&&s.y<=r;else if(this.type===OF.GRAPHICS_ELLIPSE){var h=n/2,u=r/2,l=s.x-.5*n,c=s.y-.5*r;o=l*l/(h*h)+c*c/(u*u)<1}return this._inverted&&(o=!o),o},i._nodeStateChange=function(){this._updateGraphics()},i._changeRenderType=function(){this._type!==OF.SPRITE_STENCIL?this._createGraphics():this._createSprite()},i._createSprite=function(){if(!this._sprite){var t=this._sprite=this.node.getComponent(PF);if(!t){var e=this.node;t=this._sprite=e.addComponent(PF)}}this._sprite.stencilStage=this.inverted?qP.ENTER_LEVEL_INVERTED:qP.ENTER_LEVEL,this._sprite.updateMaterial()},i._createGraphics=function(){if(!this._graphics){var t=this._graphics=this.node.getComponent(AF);if(!t){var e=this.node;t=this._graphics=e.addComponent(AF)}t.lineWidth=1;var i=En.WHITE.clone();i.a=0,t.fillColor=i}this._graphics.stencilStage=this.inverted?qP.ENTER_LEVEL_INVERTED:qP.ENTER_LEVEL},i._updateGraphics=function(){if(this._graphics&&(this._type===OF.GRAPHICS_RECT||this._type===OF.GRAPHICS_ELLIPSE)){var t=this.node._uiProps.uiTransformComp,e=this._graphics;e.clear();var i=t.contentSize,n=i.width,r=i.height,s=t.anchorPoint,a=-n*s.x,o=-r*s.y;if(this._type===OF.GRAPHICS_RECT)e.rect(a,o,n,r);else if(this._type===OF.GRAPHICS_ELLIPSE){for(var h=function(t,e,i){kF.length=0;for(var n=2*Math.PI/i,r=0;r<i;++r)kF.push(new gn(e.x*Math.cos(n*r)+t.x,e.y*Math.sin(n*r)+t.y,0));return kF}(new gn(a+n/2,o+r/2,0),new gn(n/2,r/2,0),this._segments),u=0;u<h.length;++u){var l=h[u];0===u?e.moveTo(l.x,l.y):e.lineTo(l.x,l.y)}e.close()}e.fill()}},i._enableRender=function(){this.subComp&&(this.subComp.enabled=!0)},i._disableRender=function(){this.subComp&&(this.subComp.stencilStage=qP.DISABLED,this.subComp.updateMaterial(),this.node.activeInHierarchy&&(this.subComp.enabled=!1))},i._removeMaskNode=function(){this._sprite&&(this._sprite=null),this._graphics&&(this._graphics=null)},i.markForUpdateRenderData=function(t){void 0===t&&(t=!0),tt(9007),this.subComp&&this.subComp.markForUpdateRenderData(t)},i.requestRenderData=function(){tt(9007)},i.destroyRenderData=function(){tt(9007)},i.updateRenderer=function(){tt(9007),this.subComp&&this.subComp.updateRenderer()},i.fillBuffers=function(){tt(9007)},i.postUpdateAssembler=function(){tt(9007)},i.setNodeDirty=function(){tt(9007),this.subComp&&this.subComp.setNodeDirty()},i.setTextureDirty=function(){tt(9007),this.subComp&&this.subComp.setTextureDirty()},i.getMaterial=function(t){return tt(9007),this.subComp?this.subComp.getSharedMaterial(t):null},i.setMaterial=function(t,e){tt(9007),this.subComp&&this.subComp.setMaterial(t,e)},i.getMaterialInstance=function(t){return tt(9007),this.subComp?this.subComp.getMaterialInstance(t):null},i.setMaterialInstance=function(t,e){tt(9007),this.subComp&&this.subComp.setMaterialInstance(t,e)},i.getRenderMaterial=function(t){return tt(9007),this.subComp?this.subComp.getRenderMaterial(t):null},n(e,[{key:"type",get:function(){return this._type},set:function(t){this._type!==t&&(this._type=t,this._type!==OF.SPRITE_STENCIL?(this._sprite&&(this.node.removeComponent(PF),this._sprite._destroyImmediate(),this._sprite=null),this._changeRenderType(),this._updateGraphics()):(this._graphics&&(this._graphics.clear(),this.node.removeComponent(AF),this._graphics._destroyImmediate(),this._graphics=null),this._changeRenderType()))}},{key:"inverted",get:function(){return this._inverted},set:function(t){this._inverted=t,this.subComp.stencilStage=this.inverted?qP.ENTER_LEVEL_INVERTED:qP.ENTER_LEVEL}},{key:"segments",get:function(){return this._segments},set:function(t){this._segments!==t&&(this._segments=Fi(t,3,1e4),this._updateGraphics())}},{key:"spriteFrame",get:function(){return this._sprite?this._sprite.spriteFrame:null},set:function(t){this._sprite?this._sprite.spriteFrame=t:it(16307)}},{key:"alphaThreshold",get:function(){return this._alphaThreshold},set:function(t){this._alphaThreshold!==t&&(this._alphaThreshold=t,this.type===OF.SPRITE_STENCIL&&this._sprite&&this._sprite.getMaterialInstance(0).setProperty("alphaThreshold",this._alphaThreshold))}},{key:"subComp",get:function(){return this._graphics||this._sprite}},{key:"customMaterial",get:function(){return tt(9007),this.subComp?this.subComp.customMaterial:null},set:function(t){tt(9007),this.subComp&&(this.subComp.customMaterial=t)}},{key:"color",get:function(){return tt(9007),this.subComp?this.subComp.color:null},set:function(t){tt(9007),this.subComp&&t&&(this.subComp.color=t)}},{key:"sharedMaterial",get:function(){return tt(9007),this.subComp?this.subComp.sharedMaterial:null}},{key:"sharedMaterials",get:function(){return tt(9007),this.subComp?this.subComp.sharedMaterials:null},set:function(t){tt(9007),this.subComp&&t&&(this.subComp.sharedMaterials=t)}},{key:"material",get:function(){return tt(9007),this.subComp?this.subComp.material:null},set:function(t){tt(9007),this.subComp&&(this.subComp.material=t)}},{key:"materials",get:function(){return tt(9007),this.subComp?this.subComp.materials:[null]},set:function(t){tt(9007),this.subComp&&(this.subComp.materials=t)}}]),e}(mp)).Type=OF,m((wF=MF).prototype,"type",[CF],Object.getOwnPropertyDescriptor(wF.prototype,"type"),wF.prototype),RF=ja(wF.prototype,"_type",[lo],(function(){return OF.GRAPHICS_RECT})),IF=ja(wF.prototype,"_inverted",[lo],(function(){return!1})),DF=ja(wF.prototype,"_segments",[lo],(function(){return 64})),BF=ja(wF.prototype,"_alphaThreshold",[lo],(function(){return.1})),xF=wF))||xF)||xF));gI._maskComp=XF,S.Mask=XF,Tt({RenderComponent:{newName:"UIRenderer",since:"1.2.0",removed:!0},UITransformComponent:{newName:"UITransform",since:"1.2.0",removed:!1},CanvasComponent:{newName:"Canvas",since:"1.2.0",removed:!1}}),Tt({UIRenderable:{newName:"UIRenderer",since:"3.0.0",removed:!0}}),Tt({Renderable2D:{newName:"UIRenderer",since:"3.6.0",removed:!1}});var jF,YF,qF,KF,QF,ZF,JF,$F,tk,ek,ik,nk,rk,sk,ak,ok,hk,uk,lk,ck,_k,fk,dk,pk,mk,gk,vk,yk,Sk,Tk,Ak,bk,Ek,Ck,xk,wk,Rk=eo("cc.PostProcess")(GF=ro(((WF=function(t){function e(){var e;return(e=t.call(this)||this).global=UF&&UF(),e._shadingScale=zF&&zF(),e.enableShadingScaleInEditor=HF&&HF(),e.settings=new Map,e}s(e,t);var i=e.prototype;return i.addSetting=function(t){this.settings.set(t.constructor,t)},i.removeSetting=function(t){this.settings.delete(t.constructor)},i.getSetting=function(t){return this.settings.get(t)},i.onEnable=function(){e.all.push(this)},i.onDisable=function(){var t=e.all.indexOf(this);-1!==t&&e.all.splice(t,1)},n(e,[{key:"shadingScale",get:function(){return this._shadingScale},set:function(t){this._shadingScale=t}}]),e}(mp)).all=[],UF=ja((VF=WF).prototype,"global",[so,lo],(function(){return!0})),zF=ja(VF.prototype,"_shadingScale",[lo],(function(){return 1})),m(VF.prototype,"shadingScale",[so],Object.getOwnPropertyDescriptor(VF.prototype,"shadingScale"),VF.prototype),HF=ja(VF.prototype,"enableShadingScaleInEditor",[so,lo],(function(){return!1})),GF=VF))||GF)||GF,Ik=new gn,Dk=Ee(zw),Bk=Ee(Uw),Mk=Ee(Hw),Pk=Ee(Xw),Ok=Ee(Ww),Lk=Ee({SKYBOX:nR|Fc.DEPTH_STENCIL,SOLID_COLOR:Fc.ALL,DEPTH_ONLY:Fc.DEPTH_STENCIL,DONT_CLEAR:Fc.NONE}),Nk=t("dL",(jF=eo("cc.Camera"),YF=Lo(dm.BitMask),qF=Lo(Lk),KF=Lo(Dk),QF=Lo(Bk),ZF=Lo(Mk),JF=Lo(Pk),$F=Lo(Ok),tk=Lo(dR),ek=Lo(Rk),jF(((xk=function(t){function e(){var e;return(e=t.call(this)||this)._projection=rk&&rk(),e._priority=sk&&sk(),e._fov=ak&&ak(),e._fovAxis=ok&&ok(),e._orthoHeight=hk&&hk(),e._near=uk&&uk(),e._far=lk&&lk(),e._color=ck&&ck(),e._depth=_k&&_k(),e._stencil=fk&&fk(),e._clearFlags=dk&&dk(),e._rect=pk&&pk(),e._aperture=mk&&mk(),e._shutter=gk&&gk(),e._iso=vk&&vk(),e._screenScale=yk&&yk(),e._visibility=Sk&&Sk(),e._targetTexture=Tk&&Tk(),e._postProcess=Ak&&Ak(),e._usePostProcess=bk&&bk(),e._camera=null,e._inEditorMode=!1,e._flows=void 0,e._cameraType=Ek&&Ek(),e._trackingType=Ck&&Ck(),e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._createCamera()},i.onEnable=function(){this.node.hasChangedFlags|=mm.POSITION,this._camera&&this._attachToScene()},i.onDisable=function(){this._camera&&this._detachFromScene()},i.onDestroy=function(){this._camera&&(this._camera.destroy(),this._camera=null),this._targetTexture&&this._targetTexture.off("resize")},i.screenPointToRay=function(t,e,i){return i||(i=gr.create()),this._camera&&this._camera.screenPointToRay(i,t,e),i},i.worldToScreen=function(t,e){return e||(e=new gn),this._camera&&this._camera.worldToScreen(e,t),e},i.screenToWorld=function(t,e){return e||(e=this.node.getWorldPosition()),this._camera&&this._camera.screenToWorld(e,t),e},i.convertToUINode=function(t,e,i){if(i||(i=new gn),!this._camera)return i;this.worldToScreen(t,Ik);var n=e.getComponent("cc.UITransform"),r=S.view.getVisibleSize(),s=Ik.x-.5*this._camera.width,a=Ik.y-.5*this._camera.height;return Ik.x=s/S.view.getScaleX()+.5*r.width,Ik.y=a/S.view.getScaleY()+.5*r.height,n&&n.convertToNodeSpaceAR(Ik,i),i},i._createCamera=function(){this._camera||(this._camera=S.director.root.createCamera(),this._camera.initialize({name:this.node.name,node:this.node,projection:this._projection,window:this._inEditorMode?S.director.root&&S.director.root.mainWindow:S.director.root&&S.director.root.tempWindow,priority:this._priority,cameraType:this.cameraType,trackingType:this.trackingType}),this._camera.setViewportInOrientedSpace(this._rect),this._camera.fovAxis=this._fovAxis,this._camera.fov=Vi(this._fov),this._camera.orthoHeight=this._orthoHeight,this._camera.nearClip=this._near,this._camera.farClip=this._far,this._camera.clearColor=this._color,this._camera.clearDepth=this._depth,this._camera.clearStencil=this._stencil,this._camera.clearFlag=this._clearFlags,this._camera.visibility=this._visibility,this._camera.aperture=this._aperture,this._camera.shutter=this._shutter,this._camera.iso=this._iso,this._camera.postProcess=this._postProcess,this._camera.usePostProcess=this._usePostProcess),this._updateTargetTexture()},i._attachToScene=function(){this.node.scene&&this._camera&&(this._camera&&this._camera.scene&&this._camera.scene.removeCamera(this._camera),this._getRenderScene().addCamera(this._camera))},i._detachFromScene=function(){this._camera&&this._camera.scene&&this._camera.scene.removeCamera(this._camera)},i._checkTargetTextureEvent=function(t){var e=this;t&&t.off("resize"),this._targetTexture&&this._targetTexture.on("resize",(function(t){e._camera&&e._camera.setFixedSize(t.width,t.height)}),this)},i._updateTargetTexture=function(){if(this._camera&&this._targetTexture){var t=this._targetTexture.window;this._camera.changeTargetWindow(t),this._camera.setFixedSize(t.width,t.height)}},n(e,[{key:"camera",get:function(){return this._camera}},{key:"priority",get:function(){return this._priority},set:function(t){this._priority=t,this._camera&&(this._camera.priority=t)}},{key:"visibility",get:function(){return this._visibility},set:function(t){this._visibility=t,this._camera&&(this._camera.visibility=t)}},{key:"clearFlags",get:function(){return this._clearFlags},set:function(t){this._clearFlags=t,this._camera&&(this._camera.clearFlag=t)}},{key:"clearColor",get:function(){return this._color},set:function(t){this._color.set(t),this._camera&&(this._camera.clearColor=this._color)}},{key:"clearDepth",get:function(){return this._depth},set:function(t){this._depth=t,this._camera&&(this._camera.clearDepth=t)}},{key:"clearStencil",get:function(){return this._stencil},set:function(t){this._stencil=t,this._camera&&(this._camera.clearStencil=t)}},{key:"projection",get:function(){return this._projection},set:function(t){this._projection=t,this._camera&&(this._camera.projectionType=t)}},{key:"fovAxis",get:function(){return this._fovAxis},set:function(t){t!==this._fovAxis&&(this._fovAxis=t,this._camera&&(this._camera.fovAxis=t,t===Uw.VERTICAL?this.fov=this._fov*this._camera.aspect:this.fov=this._fov/this._camera.aspect))}},{key:"fov",get:function(){return this._fov},set:function(t){this._fov=t,this._camera&&(this._camera.fov=Vi(t))}},{key:"orthoHeight",get:function(){return this._orthoHeight},set:function(t){this._orthoHeight=t,this._camera&&(this._camera.orthoHeight=t)}},{key:"near",get:function(){return this._near},set:function(t){this._near=t,this._camera&&(this._camera.nearClip=t)}},{key:"far",get:function(){return this._far},set:function(t){this._far=t,this._camera&&(this._camera.farClip=t)}},{key:"aperture",get:function(){return this._aperture},set:function(t){this._aperture=t,this._camera&&(this._camera.aperture=t)}},{key:"shutter",get:function(){return this._shutter},set:function(t){this._shutter=t,this._camera&&(this._camera.shutter=t)}},{key:"iso",get:function(){return this._iso},set:function(t){this._iso=t,this._camera&&(this._camera.iso=t)}},{key:"rect",get:function(){return this._rect},set:function(t){this._rect=t,this._camera&&this._camera.setViewportInOrientedSpace(t)}},{key:"targetTexture",get:function(){return this._targetTexture},set:function(t){if(this._targetTexture!==t){var i=this._targetTexture;this._targetTexture=t,this._checkTargetTextureEvent(i),this._updateTargetTexture(),!t&&this._camera&&(this._camera.changeTargetWindow(null),this._camera.isWindowSize=!0),this.node.emit(e.TARGET_TEXTURE_CHANGE,this)}}},{key:"usePostProcess",get:function(){return this._usePostProcess},set:function(t){this._usePostProcess=t,this._camera&&(this._camera.usePostProcess=t)}},{key:"postProcess",get:function(){return this._postProcess},set:function(t){this._postProcess=t,this._camera&&(this._camera.postProcess=t)}},{key:"screenScale",get:function(){return this._screenScale},set:function(t){this._screenScale=t,this._camera&&(this._camera.screenScale=t)}},{key:"inEditorMode",get:function(){return this._inEditorMode},set:function(t){this._inEditorMode=t,this._camera&&this._camera.changeTargetWindow(t?S.director.root&&S.director.root.mainWindow:S.director.root&&S.director.root.tempWindow)}},{key:"cameraType",get:function(){return this._cameraType},set:function(t){this._cameraType!==t&&(this._cameraType=t,this.camera&&(this.camera.cameraType=t))}},{key:"trackingType",get:function(){return this._trackingType},set:function(t){this._trackingType!==t&&(this._trackingType=t,this.camera&&(this.camera.trackingType=t))}}]),e}(mp)).ProjectionType=Dk,xk.FOVAxis=Bk,xk.ClearFlag=Lk,xk.Aperture=Mk,xk.Shutter=Pk,xk.ISO=Ok,xk.TARGET_TEXTURE_CHANGE="tex-change",rk=ja((nk=xk).prototype,"_projection",[lo],(function(){return Dk.PERSPECTIVE})),sk=ja(nk.prototype,"_priority",[lo],(function(){return 0})),ak=ja(nk.prototype,"_fov",[lo],(function(){return 45})),ok=ja(nk.prototype,"_fovAxis",[lo],(function(){return Bk.VERTICAL})),hk=ja(nk.prototype,"_orthoHeight",[lo],(function(){return 10})),uk=ja(nk.prototype,"_near",[lo],(function(){return 1})),lk=ja(nk.prototype,"_far",[lo],(function(){return 1e3})),ck=ja(nk.prototype,"_color",[lo],(function(){return new En("#333333")})),_k=ja(nk.prototype,"_depth",[lo],(function(){return 1})),fk=ja(nk.prototype,"_stencil",[lo],(function(){return 0})),dk=ja(nk.prototype,"_clearFlags",[lo],(function(){return Lk.SOLID_COLOR})),pk=ja(nk.prototype,"_rect",[lo],(function(){return new Jn(0,0,1,1)})),mk=ja(nk.prototype,"_aperture",[lo],(function(){return Mk.F16_0})),gk=ja(nk.prototype,"_shutter",[lo],(function(){return Pk.D125})),vk=ja(nk.prototype,"_iso",[lo],(function(){return Ok.ISO100})),yk=ja(nk.prototype,"_screenScale",[lo],(function(){return 1})),Sk=ja(nk.prototype,"_visibility",[lo],(function(){return sy})),Tk=ja(nk.prototype,"_targetTexture",[lo],(function(){return null})),Ak=ja(nk.prototype,"_postProcess",[lo],(function(){return null})),bk=ja(nk.prototype,"_usePostProcess",[lo],(function(){return!1})),Ek=ja(nk.prototype,"_cameraType",[lo],(function(){return jw.DEFAULT})),Ck=ja(nk.prototype,"_trackingType",[lo],(function(){return Yw.NO_TRACKING})),m(nk.prototype,"visibility",[YF],Object.getOwnPropertyDescriptor(nk.prototype,"visibility"),nk.prototype),m(nk.prototype,"clearFlags",[qF],Object.getOwnPropertyDescriptor(nk.prototype,"clearFlags"),nk.prototype),m(nk.prototype,"projection",[KF],Object.getOwnPropertyDescriptor(nk.prototype,"projection"),nk.prototype),m(nk.prototype,"fovAxis",[QF],Object.getOwnPropertyDescriptor(nk.prototype,"fovAxis"),nk.prototype),m(nk.prototype,"aperture",[ZF],Object.getOwnPropertyDescriptor(nk.prototype,"aperture"),nk.prototype),m(nk.prototype,"shutter",[JF],Object.getOwnPropertyDescriptor(nk.prototype,"shutter"),nk.prototype),m(nk.prototype,"iso",[$F],Object.getOwnPropertyDescriptor(nk.prototype,"iso"),nk.prototype),m(nk.prototype,"targetTexture",[tk],Object.getOwnPropertyDescriptor(nk.prototype,"targetTexture"),nk.prototype),m(nk.prototype,"usePostProcess",[so],Object.getOwnPropertyDescriptor(nk.prototype,"usePostProcess"),nk.prototype),m(nk.prototype,"postProcess",[ek],Object.getOwnPropertyDescriptor(nk.prototype,"postProcess"),nk.prototype),ik=nk))||ik));S.Camera=Nk;var Fk,kk,Gk,Vk,Uk,zk,Hk,Wk,Xk,jk=t("R",eo("cc.RenderRoot2D")(wk=no(100)(wk=io(wO)(wk=ro(wk=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.onEnable=function(){S.director.root.batcher2D.addScreen(this)},i.onDisable=function(){S.director.root.batcher2D.removeScreen(this)},i.onDestroy=function(){S.director.root.batcher2D.removeScreen(this)},e}(mp))||wk)||wk)||wk)||wk),Yk=new gn,qk=Ee({OVERLAY:0,INTERSPERSE:1}),Kk=t("C",(Fk=eo("cc.Canvas"),kk=no(100),Gk=Lo(Nk),Vk=Lo(Nk),Fk(Uk=kk(Uk=ro((m((zk=function(t){function e(){var e;return(e=t.call(this)||this)._cameraComponent=Hk&&Hk(),e._alignCanvasWithScreen=Wk&&Wk(),e._pos=new gn,e._renderMode=qk.OVERLAY,e._thisOnCameraResized=e._onResizeCamera.bind(c(e)),e}s(e,t);var i=e.prototype;return i.__preload=function(){var t=this.getComponent("cc.Widget");t&&t.updateAlignment(),this._cameraComponent&&(this._cameraComponent._createCamera(),this._cameraComponent.node.on(Nk.TARGET_TEXTURE_CHANGE,this._thisOnCameraResized)),this._onResizeCamera(),yB.on("canvas-resize",this._thisOnCameraResized,this)},i.onEnable=function(){t.prototype.onEnable.call(this),this._cameraComponent&&this._cameraComponent.node.on(Nk.TARGET_TEXTURE_CHANGE,this._thisOnCameraResized)},i.onDisable=function(){t.prototype.onDisable.call(this),this._cameraComponent&&this._cameraComponent.node.off(Nk.TARGET_TEXTURE_CHANGE,this._thisOnCameraResized)},i.onDestroy=function(){t.prototype.onDestroy.call(this),yB.off("canvas-resize",this._thisOnCameraResized,this)},i._onResizeCamera=function(){if(this._cameraComponent&&this._alignCanvasWithScreen){if(this._cameraComponent.targetTexture)this._cameraComponent.orthoHeight=Ta.height/2;else{var t=ya.windowSize;this._cameraComponent.orthoHeight=t.height/yB.getScaleY()/2}this.node.getWorldPosition(Yk),this._cameraComponent.node.setWorldPosition(Yk.x,Yk.y,1e3)}},i._getViewPriority=function(){if(this._cameraComponent){var t,e=null===(t=this.cameraComponent)||void 0===t?void 0:t.priority;return this._renderMode===qk.OVERLAY?e|1<<30:e&~(1<<30)}return 0},n(e,[{key:"renderMode",get:function(){return this._renderMode},set:function(t){this._renderMode=t,this._cameraComponent&&(this._cameraComponent.priority=this._getViewPriority())}},{key:"cameraComponent",get:function(){return this._cameraComponent},set:function(t){this._cameraComponent!==t&&(this._cameraComponent=t,this._onResizeCamera())}},{key:"alignCanvasWithScreen",get:function(){return this._alignCanvasWithScreen},set:function(t){this._alignCanvasWithScreen=t,this._onResizeCamera()}}]),e}(jk)).prototype,"cameraComponent",[Gk],Object.getOwnPropertyDescriptor(zk.prototype,"cameraComponent"),zk.prototype),Hk=ja(zk.prototype,"_cameraComponent",[Vk],(function(){return null})),Wk=ja(zk.prototype,"_alignCanvasWithScreen",[lo],(function(){return!0})),Uk=zk))||Uk)||Uk)||Uk));function Qk(t,e,i){var n=t.o,r=t.d,s=1/r.x,a=1/r.y,o=1/r.z,h=(e.x-n.x)*s,u=(i.x-n.x)*s,l=(e.y-n.y)*a,c=(i.y-n.y)*a,_=(e.z-n.z)*o,f=(i.z-n.z)*o,d=Math.max(Math.max(Math.min(h,u),Math.min(l,c)),Math.min(_,f)),p=Math.min(Math.min(Math.max(h,u),Math.max(l,c)),Math.max(_,f));return p<0||d>p?0:d>0?d:p}S.Canvas=Kk,lt(t("U",eo("cc.UIComponent")(Xk=io(wO)(Xk=no(110)(Xk=ro(Xk=function(t){function e(){var e;return(e=t.call(this)||this)._lastParent=null,e.stencilStage=qP.DISABLED,e}s(e,t);var i=e.prototype;return i.__preload=function(){this.node._uiProps.uiComp=this},i.onEnable=function(){},i.onDisable=function(){},i.onDestroy=function(){this.node._uiProps.uiComp===this&&(this.node._uiProps.uiComp=null)},i.postUpdateAssembler=function(){},i.markForUpdateRenderData=function(){},i.setNodeDirty=function(){},i.setTextureDirty=function(){},e}(mp))||Xk)||Xk)||Xk)||Xk).prototype,"UIComponent",[{name:"_visibility"},{name:"setVisibility"}]),ut(Kk.prototype,"Canvas.prototype",[{name:"camera",newName:"cameraComponent.camera",customGetter:function(){var t;return null===(t=this._cameraComponent)||void 0===t?void 0:t.camera}},{name:"clearFlag",newName:"cameraComponent.clearFlags",customGetter:function(){return this._cameraComponent?this._cameraComponent.clearFlags:0},customSetter:function(t){this._cameraComponent&&(this._cameraComponent.clearFlags=t)}},{name:"color",newName:"cameraComponent.clearColor",customGetter:function(){return this._cameraComponent?this._cameraComponent.clearColor:En.BLACK},customSetter:function(t){this._cameraComponent&&(this._cameraComponent.clearColor=t)}},{name:"priority",newName:"cameraComponent.priority",customGetter:function(){return this._cameraComponent?this._cameraComponent.priority:0},customSetter:function(t){this._cameraComponent&&(this._cameraComponent.priority=t)}},{name:"targetTexture",newName:"cameraComponent.targetTexture",customGetter:function(){return this._cameraComponent?this._cameraComponent.targetTexture:null},customSetter:function(t){this._cameraComponent&&(this._cameraComponent.targetTexture=t)}},{name:"visibility",newName:"cameraComponent.visibility",customGetter:function(){return this._cameraComponent?this._cameraComponent.visibility:0}}]),ct(wO.prototype,"UITransform.prototype",[{name:"priority",suggest:"Please use setSiblingIndex to change index of the current node in its parent's children array."}]),S.UITransformComponent=wO,ne(wO,"cc.UITransformComponent"),ne(XO,"cc.RenderComponent"),S.CanvasComponent=Kk,ne(Kk,"cc.CanvasComponent"),S.internal.Renderable2D=XO,ne(XO,"cc.Renderable2D");var Zk,Jk,$k,tG,eG,iG,nG,rG=(Zk=Es.create(),Jk={distance:1/0,doubleSided:!1,mode:dl.ANY},$k=0,tG=function(t,e,i,n,r,s){t===dl.CLOSEST?($k>e||0===$k)&&($k=e,s&&(0===s.length?s.push({distance:e,vertexIndex0:i/3,vertexIndex1:n/3,vertexIndex2:r/3}):(s[0].distance=e,s[0].vertexIndex0=i/3,s[0].vertexIndex1=n/3,s[0].vertexIndex2=r/3))):($k=e,s&&s.push({distance:e,vertexIndex0:i/3,vertexIndex1:n/3,vertexIndex2:r/3}))},function(t,e,i){if($k=0,0===e.geometricInfo.positions.length)return $k;var n=void 0===i?Jk:i;if(Qk(t,e.geometricInfo.boundingBox.min,e.geometricInfo.boundingBox.max)){var r=e.primitiveMode,s=e.geometricInfo;!function(t,e,i,n,r){if(i===wc.TRIANGLE_LIST)for(var s=e.length,a=0;a<s;a+=3){var o=3*e[a],h=3*e[a+1],u=3*e[a+2];gn.set(Zk.a,t[o],t[o+1],t[o+2]),gn.set(Zk.b,t[h],t[h+1],t[h+2]),gn.set(Zk.c,t[u],t[u+1],t[u+2]);var l=vs.rayTriangle(n,Zk,r.doubleSided);if(!(0===l||l>r.distance)&&(tG(r.mode,l,o,h,u,r.result),r.mode===dl.ANY))return l}else if(i===wc.TRIANGLE_STRIP)for(var c=e.length-2,_=0,f=0;f<c;f+=1){var d=3*e[f-_],p=3*e[f+_+1],m=3*e[f+2];gn.set(Zk.a,t[d],t[d+1],t[d+2]),gn.set(Zk.b,t[p],t[p+1],t[p+2]),gn.set(Zk.c,t[m],t[m+1],t[m+2]),_=~_;var g=vs.rayTriangle(n,Zk,r.doubleSided);if(!(0===g||g>r.distance)&&(tG(r.mode,g,d,p,m,r.result),r.mode===dl.ANY))return g}else if(i===wc.TRIANGLE_FAN){var v=e.length-1,y=3*e[0];gn.set(Zk.a,t[y],t[y+1],t[y+2]);for(var S=1;S<v;S+=1){var T=3*e[S],A=3*e[S+1];gn.set(Zk.b,t[T],t[T+1],t[T+2]),gn.set(Zk.c,t[A],t[A+1],t[A+2]);var b=vs.rayTriangle(n,Zk,r.doubleSided);if(!(0===b||b>r.distance)&&(tG(r.mode,b,y,T,A,r.result),r.mode===dl.ANY))return b}}}(s.positions,s.indices,r,t,n)}return $k}),sG=function(){var t=0,e={distance:1/0,doubleSided:!1,mode:dl.ANY};return function(i,n,r){t=0;var s=void 0===r?e:r,a=n.renderingSubMeshes.length,o=n.struct.minPosition,h=n.struct.maxPosition;if(o&&h&&!Qk(i,o,h))return t;for(var u=0;u<a;u++){var l=n.renderingSubMeshes[u],c=rG(i,l,s);if(c)if(s.mode===dl.CLOSEST)(0===t||t>c)&&(t=c,s.subIndices&&(s.subIndices[0]=u));else if(t=c,s.subIndices&&s.subIndices.push(u),s.mode===dl.ANY)return c}return t&&s.mode===dl.CLOSEST&&(s.result&&(s.result[0].distance=t,s.result.length=1),s.subIndices&&(s.subIndices.length=1)),t}}(),aG=function(){var t=0,e={distance:1/0,doubleSided:!1,mode:dl.ANY},i=new gr,n=new Vn;return function(r,s,a){t=0;var o=void 0===a?e:a,h=s.worldBounds;if(h&&!vs.rayAABB(r,h))return t;gr.copy(i,r),s.node&&(Vn.invert(n,s.node.getWorldMatrix(n)),gn.transformMat4(i.o,r.o,n),gn.transformMat4Normal(i.d,r.d,n));for(var u=s.subModels,l=0;l<u.length;l++){var c=u[l].subMesh,_=rG(i,c,o);if(_)if(o.mode===dl.CLOSEST)(0===t||t>_)&&(t=_,o.subIndices&&(o.subIndices[0]=l));else if(t=_,o.subIndices&&o.subIndices.push(l),o.mode===dl.ANY)return _}return t&&o.mode===dl.CLOSEST&&(o.result&&(o.result[0].distance=t,o.result.length=1),o.subIndices&&(o.subIndices.length=1)),t}}();vs.rayModel=aG,vs.raySubMesh=rG,vs.rayMesh=sG,ET("specular-pass");var oG,hG,uG,lG,cG,_G,fG,dG,pG,mG,gG,vG,yG,SG,TG,AG,bG,EG=t("dM",eo("cc.ModelRenderer")((iG=function(t){function e(){var e;return(e=t.call(this)||this)._visFlags=nG&&nG(),e._models=[],e._priority=0,e}s(e,t);var i=e.prototype;return i._collectModels=function(){return this._models},i.onEnable=function(){this._updatePriority()},i._attachToScene=function(){},i._detachFromScene=function(){},i._onVisibilityChange=function(){},i._updatePriority=function(){if(this._models.length>0)for(var t=0;t<this._models.length;t++)this._models[t].priority=this._priority},n(e,[{key:"visibility",get:function(){return this._visFlags},set:function(t){this._visFlags=t,this._onVisibilityChange(t)}},{key:"priority",get:function(){return this._priority},set:function(t){t!==this._priority&&(this._priority=t,this._updatePriority())}}]),e}(WO),nG=ja(iG.prototype,"_visFlags",[lo],(function(){return dm.Enum.NONE})),eG=iG))||eG),CG=lo,xG=Lo;t("dP",(oG=eo("cc.PrefabLink"),hG=xG(mD),oG((lG=function(t){function e(){var e;return(e=t.call(this)||this).prefab=cG&&cG(),e}return s(e,t),e}(mp),cG=ja(lG.prototype,"prefab",[hG,CG],(function(){return null})),uG=lG))||uG)),ut(Nk,"Camera",[{name:"CameraClearFlag",newName:"ClearFlag"}]),ut(Nk.prototype,"Camera.prototype",[{name:"color",newName:"clearColor"},{name:"depth",newName:"clearDepth"},{name:"stencil",newName:"clearStencil"}]),ct(WO.prototype,"Renderer.prototype",[{name:"getMaterial",suggest:"please use renderer.getSharedMaterial instead."}]),S.CameraComponent=Nk,ne(Nk,"cc.CameraComponent"),S.RenderableComponent=EG,ne(EG,"cc.RenderableComponent"),function(t){t[t.SIMPLE=0]="SIMPLE",t[t.SLICED=1]="SLICED",t[t.TILED=2]="TILED"}(bG||(bG={})),t("f",(_G=eo("cc.SpriteRenderer"),fG=no(100),dG=Lo(SM),_G(pG=fG((m((mG=function(t){function e(){var e;return(e=t.call(this)||this)._spriteFrame=gG&&gG(),e._mode=vG&&vG(),e._color=yG&&yG(),e._flipX=SG&&SG(),e._flipY=TG&&TG(),e._size=AG&&AG(),e._model=null,e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._spriteFrame&&(this._spriteFrame.mesh||this._spriteFrame.ensureMeshData(),this._spriteFrame.mesh.initialize()),this._updateModels()},i.onRestore=function(){this._updateModels(),this.enabledInHierarchy&&this._attachToScene()},i.onEnable=function(){t.prototype.onEnable.call(this),this._model||this._updateModels(),this._attachToScene()},i.onDisable=function(){this._model&&this._detachFromScene()},i.onDestroy=function(){this._model&&(S.director.root.destroyModel(this._model),this._model=null,this._models.length=0)},i._updateModels=function(){if(this._spriteFrame){var t=this._model;if(t?(t.destroy(),t.initialize(),t.node=t.transform=this.node):this._createModel(),this._model){var e=this._spriteFrame.mesh;this._model.createBoundingShape(e.struct.minPosition,e.struct.maxPosition),this._updateModelParams(),this._onUpdateLocalDescriptorSet()}}},i._createModel=function(){var t=this._model=S.director.root.createModel(RR);t.visFlags=this.visibility,t.node=t.transform=this.node,this._models.length=0,this._models.push(this._model)},i._updateModelParams=function(){if(this._spriteFrame&&this._model){this._spriteFrame.ensureMeshData();var t=this._spriteFrame.mesh;this.node.hasChangedFlags|=mm.POSITION,this._model.transform.hasChangedFlags|=mm.POSITION;var e=t?t.renderingSubMeshes:null;if(e)for(var i=e.length,n=0;n<i;++n){var r=this.getRenderMaterial(n);r&&!r.isValid&&(r=null);var s=e[n];s&&this._model.initSubModel(n,s,r||this._getBuiltinMaterial())}this._model.enabled=!0}},i._getBuiltinMaterial=function(){return bT.get("missing-material")},i._onMaterialModified=function(e,i){t.prototype._onMaterialModified.call(this,e,i),this._spriteFrame&&this._model&&this._model.inited&&this._onRebuildPSO(e,i||this._getBuiltinMaterial())},i._onRebuildPSO=function(t,e){this._model&&this._model.inited&&(this._model.setSubModelMaterial(t,e),this._onUpdateLocalDescriptorSet())},i._onUpdateLocalDescriptorSet=function(){if(this._spriteFrame&&this._model&&this._model.inited)for(var t=this._spriteFrame.getGFXTexture(),e=this._spriteFrame.getGFXSampler(),i=this._model.subModels,n=Bg.SAMPLER_SPRITE,r=0;r<i.length;r++){var s=i[r].descriptorSet;s.bindTexture(n,t),s.bindSampler(n,e),s.update()}},i._attachToScene=function(){if(this.node.scene&&this._model){var t=this._getRenderScene();null!==this._model.scene&&this._detachFromScene(),t.addModel(this._model)}},i._detachFromScene=function(){this._model&&this._model.scene&&this._model.scene.removeModel(this._model)},n(e,[{key:"spriteFrame",get:function(){return this._spriteFrame},set:function(t){this._spriteFrame!==t&&(this._spriteFrame,this._spriteFrame=t,this._spriteFrame&&(this._spriteFrame.ensureMeshData(),this._spriteFrame.mesh.initialize()),this._updateModels(),this.enabledInHierarchy&&this._attachToScene())}},{key:"model",get:function(){return this._model}}]),e}(EG)).prototype,"spriteFrame",[dG],Object.getOwnPropertyDescriptor(mG.prototype,"spriteFrame"),mG.prototype),gG=ja(mG.prototype,"_spriteFrame",[lo],(function(){return null})),vG=ja(mG.prototype,"_mode",[lo],(function(){return bG.SIMPLE})),yG=ja(mG.prototype,"_color",[lo],(function(){return En.WHITE.clone()})),SG=ja(mG.prototype,"_flipX",[lo],(function(){return!1})),TG=ja(mG.prototype,"_flipY",[lo],(function(){return!1})),AG=ja(mG.prototype,"_size",[lo],(function(){return new jn})),pG=mG))||pG)||pG));var wG,RG,IG,DG,BG,MG,PG,OG,LG,NG,FG,kG,GG,VG,UG,zG,HG,WG,XG,jG,YG,qG,KG,QG,ZG,JG=new gP,$G="RICHTEXT_CHILD",tV="RICHTEXT_Image_CHILD",eV=new jn,iV=new jn,nV=new le((function(t){if(!S.isValid(t.node))return!1;var e=t.node.getComponent(OL);return e&&(e.outlineWidth=0),!0}),20),rV=new le((function(t){return S.isValid(t.node)}),10);function sV(t){return{node:new hg(t),comp:null,lineCount:0,styleIndex:0,imageOffset:"",clickParam:"",clickHandler:"",type:t}}function aV(t,e){var i;t===$G?i=nV._get():t===tV&&(i=rV._get());var n=(i=i||sV(t)).node;return n||(n=new hg(t)),n.hideFlags|=Ms.Flags.DontSave|Ms.Flags.HideInHierarchy,n.active=!0,t===tV?(i.comp=n.getComponent(PF)||n.addComponent(PF),i.comp.spriteFrame=e,i.comp.type=PF.Type.SLICED,i.comp.sizeMode=PF.SizeMode.CUSTOM):(i.comp=n.getComponent(OL)||n.addComponent(OL),i.comp.string=e,i.comp.horizontalAlign=xL.LEFT,i.comp.verticalAlign=wL.TOP,i.comp.underlineHeight=2),n.setPosition(0,0,0),n._uiProps.uiTransformComp.setAnchorPoint(.5,.5),i.node=n,i.lineCount=0,i.styleIndex=0,i.imageOffset="",i.clickParam="",i.clickHandler="",i}var oV,hV=t("i",(wG=eo("cc.RichText"),RG=no(110),IG=Lo(xL),DG=Lo(wL),BG=Lo(En),MG=Lo(xM),PG=Lo(IL),OG=Lo(AM),wG(LG=RG(((ZG=function(t){function e(){var e;return(e=t.call(this)||this)._lineHeight=FG&&FG(),e._string=kG&&kG(),e._horizontalAlign=GG&&GG(),e._verticalAlign=VG&&VG(),e._fontSize=UG&&UG(),e._fontColor=zG&&zG(),e._maxWidth=HG&&HG(),e._fontFamily=WG&&WG(),e._font=XG&&XG(),e._isSystemFontUsed=jG&&jG(),e._userDefinedFont=YG&&YG(),e._cacheMode=qG&&qG(),e._imageAtlas=KG&&KG(),e._handleTouchEvent=QG&&QG(),e._textArray=[],e._segments=[],e._labelSegmentsCache=[],e._linesWidth=[],e._lineCount=1,e._labelWidth=0,e._labelHeight=0,e._layoutDirty=!0,e._lineOffsetX=0,e._labelChildrenNum=0,e._updateRichTextStatus=e._updateRichText,e}s(e,t);var i=e.prototype;return i.onLoad=function(){this.node.on(vm.LAYER_CHANGED,this._applyLayer,this),this.node.on(vm.ANCHOR_CHANGED,this._updateRichTextPosition,this)},i.onEnable=function(){this.handleTouchEvent&&this._addEventListeners(),this._updateRichText(),this._activateChildren(!0)},i.onDisable=function(){this.handleTouchEvent&&this._removeEventListeners(),this._activateChildren(!1)},i.onRestore=function(){},i.onDestroy=function(){for(var t,e=f(this._segments);!(t=e()).done;){var i=t.value;i.node.removeFromParent(),i.type===$G?nV.put(i):i.type===tV&&rV.put(i)}this.node.off(vm.ANCHOR_CHANGED,this._updateRichTextPosition,this),this.node.off(vm.LAYER_CHANGED,this._applyLayer,this)},i._addEventListeners=function(){this.node.on(vm.TOUCH_END,this._onTouchEnded,this)},i._removeEventListeners=function(){this.node.off(vm.TOUCH_END,this._onTouchEnded,this)},i._updateLabelSegmentTextAttributes=function(){var t=this;this._segments.forEach((function(e){t._applyTextAttribute(e)}))},i._createFontLabel=function(t){return aV($G,t)},i._createImage=function(t){return aV(tV,t)},i._onTTFLoaded=function(){this._font,this._layoutDirty=!0,this._updateRichText()},i.splitLongStringApproximatelyIn2048=function(t,e){var i=[];if(t.length*this.fontSize<=1638.4)return i.push(t),i;if(this._calculateSize(eV,e,t),eV.x<2048)i.push(t);else for(var n=t.split("\n"),r=0;r<n.length;r++)if(this._calculateSize(eV,e,n[r]),eV.x<2048)i.push(n[r]);else{var s=this.splitLongStringOver2048(n[r],e);i.push.apply(i,s)}return i},i.splitLongStringOver2048=function(t,e){var i=[],n=t,r=0,s=n.length/2,a=n.substring(r,s),o=n.substring(s),h=this._calculateSize(eV,e,a),u=this._calculateSize(iV,e,o),l=this._maxWidth;0===this._maxWidth&&(l=2047.9);for(var c=1*l;h.x>c;){if((s/=2)<1){s*=2;break}a=a.substring(r,s),o=n.substring(s),this._calculateSize(h,e,a)}for(var _=1e3,f=1;_&&r<t.length;){for(;_&&h.x<c;){var d=jM(o);d&&d.length>0&&(f=d[0].length),s+=f,a=n.substring(r,s),o=n.substring(s),this._calculateSize(h,e,a),_--}for(;_&&a.length>=2&&h.x>c;)s-=f,a=n.substring(r,s),this._calculateSize(h,e,a),f=1,_--;if(a.length>=2){var p=YM(a);p&&p.length>0&&a!==p[0]&&(s-=p[0].length,a=n.substring(r,s))}if(i.push(a),r=s,s+=a.length,a=n.substring(r,s),o=n.substring(s),this._calculateSize(u,e,o),this._calculateSize(h,e,a),_--,u.x<2048&&h.x<c){i.push(a),r=t.length,s=t.length,a=o,""!==o&&i.push(a);break}}return i},i._measureText=function(t,e){var i=this,n=function(e){return i._calculateSize(eV,t,e).x};return e?n(e):n},i._calculateSize=function(t,e,i){var n;0===this._labelSegmentsCache.length?(n=this._createFontLabel(i),this._labelSegmentsCache.push(n)):(n=this._labelSegmentsCache[0]).node.getComponent(OL).string=i,n.styleIndex=e,this._applyTextAttribute(n);var r=n.node._uiProps.uiTransformComp.contentSize;return jn.set(t,r.x,r.y),t},i._onTouchEnded=function(t){for(var e,i=this,n=this.node.getComponents(mp),r=function(){var r=e.value,s=r.clickHandler,a=r.clickParam;s&&i._containsTouchLocation(r,t.touch.getUILocation())&&(n.forEach((function(e){var i=e[s];e.enabledInHierarchy&&i&&i.call(e,t,a)})),t.propagationStopped=!0)},s=f(this._segments);!(e=s()).done;)r()},i._containsTouchLocation=function(t,e){var i=t.node.getComponent(wO);return!!i&&i.getBoundingBoxToWorld().contains(e)},i._resetState=function(){for(var t=this.node.children,e=t.length-1;e>=0;e--){var i=t[e];if(i.name===$G||i.name===tV){i.parent=null;var n=sV(i.name);n.node=i,i.name===$G?(n.comp=i.getComponent(OL),nV.put(n)):(n.comp=i.getComponent(PF),rV.put(n)),this._labelChildrenNum--}}this._segments.length=0,this._labelSegmentsCache.length=0,this._linesWidth.length=0,this._lineOffsetX=0,this._lineCount=1,this._labelWidth=0,this._labelHeight=0,this._layoutDirty=!0},i._activateChildren=function(t){for(var e=this.node.children.length-1;e>=0;e--){var i=this.node.children[e];i.name!==$G&&i.name!==tV||(i.active=t)}},i._addLabelSegment=function(t,e){var i;if(0===this._labelSegmentsCache.length)i=this._createFontLabel(t);else{var n=(i=this._labelSegmentsCache.pop()).node.getComponent(OL);n&&(n.string=t)}var r=i.comp;return r.verticalAlign!==this._verticalAlign&&(r.verticalAlign=this._verticalAlign),i.styleIndex=e,i.lineCount=this._lineCount,i.node._uiProps.uiTransformComp.setAnchorPoint(0,0),i.node.layer=this.node.layer,this.node.insertChild(i.node,this._labelChildrenNum++),this._applyTextAttribute(i),this._segments.push(i),i},i._updateRichTextWithMaxWidth=function(t,e,i){var n=e;if(this._lineOffsetX>0&&n+this._lineOffsetX>this._maxWidth)for(var r=0;this._lineOffsetX<=this._maxWidth;){var s=this._getFirstWordLen(t,r,t.length),a=t.substr(r,s),o=this._measureText(i,a);if(!(this._lineOffsetX+o<=this._maxWidth)){if(r>0){var h=t.substr(0,r);this._addLabelSegment(h,i),t=t.substr(r,t.length),n=this._measureText(i,t)}this._updateLineInfo();break}this._lineOffsetX+=o,r+=s}if(n>this._maxWidth)for(var u=qM(t,n,this._maxWidth,this._measureText(i)),l=0;l<u.length;++l){var c=u[l],_=this._addLabelSegment(c,i).node._uiProps.uiTransformComp.contentSize;this._lineOffsetX+=_.width,u.length>1&&l<u.length-1&&this._updateLineInfo()}else this._lineOffsetX+=n,this._addLabelSegment(t,i)},i._isLastComponentCR=function(t){return t.length-1===t.lastIndexOf("\n")},i._updateLineInfo=function(){this._linesWidth.push(this._lineOffsetX),this._lineOffsetX=0,this._lineCount++},i._needsUpdateTextLayout=function(t){if(this._layoutDirty||!this._textArray||!t)return!0;if(this._textArray.length!==t.length)return!0;for(var e=0;e<this._textArray.length;e++){var i=this._textArray[e],n=t[e];if(i.text!==n.text)return!0;var r=i.style,s=n.style;if(r){if(s){if(!!s.outline!=!!r.outline)return!0;if(r.size!==s.size||r.italic!==s.italic||r.isImage!==s.isImage)return!0;if(r.src!==s.src||r.imageAlign!==s.imageAlign||r.imageHeight!==s.imageHeight||r.imageWidth!==s.imageWidth||r.imageOffset!==s.imageOffset)return!0}else if(r.size||r.italic||r.isImage||r.outline)return!0}else if(s&&(s.size||s.italic||s.isImage||s.outline))return!0}return!1},i._addRichTextImageElement=function(t){if(t.style){var e=t.style,i=e.src,n=this._imageAtlas&&i&&this._imageAtlas.getSpriteFrame(i);if(n){var r=this._createImage(n);switch(r.comp,e.imageAlign){case"top":r.node._uiProps.uiTransformComp.setAnchorPoint(0,1);break;case"center":r.node._uiProps.uiTransformComp.setAnchorPoint(0,.5);break;default:r.node._uiProps.uiTransformComp.setAnchorPoint(0,0)}e.imageOffset&&(r.imageOffset=e.imageOffset),r.node.layer=this.node.layer,this.node.insertChild(r.node,this._labelChildrenNum++),this._segments.push(r);var s=n.rect.clone(),a=1,o=s.width,h=s.height,u=e.imageWidth||0,l=e.imageHeight||0;l>0?(o*=a=l/h,h*=a):(o*=a=this._lineHeight/h,h*=a),u>0&&(o=u),this._maxWidth>0?(this._lineOffsetX+o>this._maxWidth&&this._updateLineInfo(),this._lineOffsetX+=o):(this._lineOffsetX+=o,this._lineOffsetX>this._labelWidth&&(this._labelWidth=this._lineOffsetX)),r.node._uiProps.uiTransformComp.setContentSize(o,h),r.lineCount=this._lineCount,r.clickHandler="",r.clickParam="";var c=e.event;c&&(r.clickHandler=c.click,r.clickParam=c.param)}else tt(4400)}},i._updateTextDefaultColor=function(){for(var t=0;t<this._segments.length;++t){var e,i,n=this._segments[t],r=n.node.getComponent(OL);r&&(null!==(e=this._textArray[n.styleIndex])&&void 0!==e&&null!==(i=e.style)&&void 0!==i&&i.color||(r.color=this._fontColor))}},i._updateRichText=function(){if(this.enabledInHierarchy){var t=JG.parse(this._string);if(!this._needsUpdateTextLayout(t))return this._textArray=t.slice(),void this._updateLabelSegmentTextAttributes();this._textArray=t.slice(),this._resetState();for(var e,i=!1,n=0;n<this._textArray.length;++n){var r=this._textArray[n],s=r.text;if(void 0!==s){if(""===s){if(r.style&&r.style.isNewLine){this._updateLineInfo();continue}if(r.style&&r.style.isImage&&this._imageAtlas){this._addRichTextImageElement(r);continue}}for(var a=(s=this.splitLongStringApproximatelyIn2048(s,n).join("\n")).split("\n"),o=0;o<a.length;++o){var h=a[o];if(""!==h)if(i=!1,this._maxWidth>0){var u=this._measureText(n,h);this._updateRichTextWithMaxWidth(h,u,n),a.length>1&&o<a.length-1&&this._updateLineInfo()}else e=this._addLabelSegment(h,n),this._lineOffsetX+=e.node._uiProps.uiTransformComp.width,this._lineOffsetX>this._labelWidth&&(this._labelWidth=this._lineOffsetX),a.length>1&&o<a.length-1&&this._updateLineInfo();else{if(this._isLastComponentCR(s)&&o===a.length-1)continue;this._updateLineInfo(),i=!0}}}}i||this._linesWidth.push(this._lineOffsetX),this._maxWidth>0&&(this._labelWidth=this._maxWidth),this._labelHeight=(this._lineCount+RM)*this._lineHeight,this.node._uiProps.uiTransformComp.setContentSize(this._labelWidth,this._labelHeight),this._updateRichTextPosition(),this._layoutDirty=!1}},i._getFirstWordLen=function(t,e,i){var n=UM(t,e);if(FM(n)||kM(n))return 1;for(var r=1,s=e+1;s<i&&!kM(n=UM(t,s))&&!FM(n);++s)r++;return r},i._updateRichTextPosition=function(){for(var t=0,e=1,i=this._lineCount,n=this.node._uiProps.uiTransformComp,r=n.anchorX,s=n.anchorY,a=0;a<this._segments.length;++a){var o=this._segments[a],h=o.lineCount;h>e&&(t=0,e=h);var u=this._labelWidth*(.5*this._horizontalAlign-r);switch(this._horizontalAlign){case xL.LEFT:break;case xL.CENTER:u-=this._linesWidth[h-1]/2;break;case xL.RIGHT:u-=this._linesWidth[h-1]}var l=o.node.position;if(o.node.setPosition(t+u,this._lineHeight*(i-h)-this._labelHeight*s,l.z),h===e&&(t+=o.node._uiProps.uiTransformComp.width),o.node.getComponent(PF)){var c=o.node.position.clone(),_=this._lineHeight,f=this._lineHeight*(1+RM);switch(o.node._uiProps.uiTransformComp.anchorY){case 1:c.y+=_+(f-_)/2;break;case.5:c.y+=f/2;break;default:c.y+=(f-_)/2}if(o.imageOffset){var d=o.imageOffset.split(",");if(1===d.length&&d[0]){var p=parseFloat(d[0]);Number.isInteger(p)&&(c.y+=p)}else if(2===d.length){var m=parseFloat(d[0]),g=parseFloat(d[1]);Number.isInteger(m)&&(c.x+=m),Number.isInteger(g)&&(c.y+=g)}}o.node.position=c}var v=o.node.getComponent(OL);if(v&&v.enableOutline){var y=o.node.position.clone();y.y-=v.outlineWidth,o.node.position=y}}},i._convertLiteralColorValue=function(t){var e=t.toUpperCase();return En[e]?En[e]:(new En).fromHEX(t)},i._applyTextAttribute=function(t){var e=t.node.getComponent(OL);if(e){this._resetLabelState(e);var i,n=t.styleIndex;if(this._textArray[n]&&(i=this._textArray[n].style),i){if(i.color?e.color=this._convertLiteralColorValue(i.color):e.color=this._fontColor,e.isBold=!!i.bold,e.isItalic=!!i.italic,e.isUnderline=!!i.underline,i.outline){var r=t.node.getComponent(OL);r||(r=t.node.addComponent(OL)),r.enableOutline=!0,r.outlineColor=this._convertLiteralColorValue(i.outline.color),r.outlineWidth=i.outline.width}e.fontSize=i.size||this._fontSize,t.clickHandler="",t.clickParam="";var s=i.event;s&&(t.clickHandler=s.click||"",t.clickParam=s.param||"")}e.cacheMode=this._cacheMode,this._font instanceof xM&&!this._isSystemFontUsed?e.font=this._font:e.fontFamily=this._fontFamily,e.useSystemFont=this._isSystemFontUsed,e.lineHeight=this._lineHeight,e.updateRenderData(!0)}},i._applyLayer=function(){for(var t,e=f(this._segments);!(t=e()).done;)t.value.node.layer=this.node.layer},i._resetLabelState=function(t){t.fontSize=this._fontSize,t.color=this._fontColor,t.isBold=!1,t.isItalic=!1,t.isUnderline=!1},n(e,[{key:"string",get:function(){return this._string},set:function(t){this._string!==t&&(this._string=t,this._updateRichTextStatus())}},{key:"horizontalAlign",get:function(){return this._horizontalAlign},set:function(t){this.horizontalAlign!==t&&(this._horizontalAlign=t,this._layoutDirty=!0,this._updateRichTextStatus())}},{key:"verticalAlign",get:function(){return this._verticalAlign},set:function(t){this._verticalAlign!==t&&(this._verticalAlign=t,this._layoutDirty=!0,this._updateRichTextStatus())}},{key:"fontSize",get:function(){return this._fontSize},set:function(t){this._fontSize!==t&&(this._fontSize=t,this._layoutDirty=!0,this._updateRichTextStatus())}},{key:"fontColor",get:function(){return this._fontColor},set:function(t){this._fontColor!==t&&(this._fontColor=t,this._updateTextDefaultColor())}},{key:"fontFamily",get:function(){return this._fontFamily},set:function(t){this._fontFamily!==t&&(this._fontFamily=t,this._layoutDirty=!0,this._updateRichTextStatus())}},{key:"font",get:function(){return this._font},set:function(t){this._font!==t&&(this._font=t,this._layoutDirty=!0,this._font?(this.useSystemFont=!1,this._onTTFLoaded()):this.useSystemFont=!0,this._updateRichTextStatus())}},{key:"useSystemFont",get:function(){return this._isSystemFontUsed},set:function(t){this._isSystemFontUsed!==t&&(this._isSystemFontUsed=t,this._layoutDirty=!0,this._updateRichTextStatus())}},{key:"cacheMode",get:function(){return this._cacheMode},set:function(t){this._cacheMode!==t&&(this._cacheMode=t,this._updateRichTextStatus())}},{key:"maxWidth",get:function(){return this._maxWidth},set:function(t){this._maxWidth!==t&&(this._maxWidth=t,this._layoutDirty=!0,this._updateRichTextStatus())}},{key:"lineHeight",get:function(){return this._lineHeight},set:function(t){this._lineHeight!==t&&(this._lineHeight=t,this._layoutDirty=!0,this._updateRichTextStatus())}},{key:"imageAtlas",get:function(){return this._imageAtlas},set:function(t){this._imageAtlas!==t&&(this._imageAtlas=t,this._layoutDirty=!0,this._updateRichTextStatus())}},{key:"handleTouchEvent",get:function(){return this._handleTouchEvent},set:function(t){this._handleTouchEvent!==t&&(this._handleTouchEvent=t,this.enabledInHierarchy&&(this.handleTouchEvent?this._addEventListeners():this._removeEventListeners()))}}]),e}(mp)).HorizontalAlign=xL,ZG.VerticalAlign=wL,m((NG=ZG).prototype,"horizontalAlign",[IG],Object.getOwnPropertyDescriptor(NG.prototype,"horizontalAlign"),NG.prototype),m(NG.prototype,"verticalAlign",[DG],Object.getOwnPropertyDescriptor(NG.prototype,"verticalAlign"),NG.prototype),m(NG.prototype,"fontColor",[BG],Object.getOwnPropertyDescriptor(NG.prototype,"fontColor"),NG.prototype),m(NG.prototype,"font",[MG],Object.getOwnPropertyDescriptor(NG.prototype,"font"),NG.prototype),m(NG.prototype,"cacheMode",[PG],Object.getOwnPropertyDescriptor(NG.prototype,"cacheMode"),NG.prototype),m(NG.prototype,"imageAtlas",[OG],Object.getOwnPropertyDescriptor(NG.prototype,"imageAtlas"),NG.prototype),FG=ja(NG.prototype,"_lineHeight",[lo],(function(){return 40})),kG=ja(NG.prototype,"_string",[lo],(function(){return"<color=#00ff00>Rich</color><color=#0fffff>Text</color>"})),GG=ja(NG.prototype,"_horizontalAlign",[lo],(function(){return xL.LEFT})),VG=ja(NG.prototype,"_verticalAlign",[lo],(function(){return wL.TOP})),UG=ja(NG.prototype,"_fontSize",[lo],(function(){return 40})),zG=ja(NG.prototype,"_fontColor",[lo],(function(){return En.WHITE.clone()})),HG=ja(NG.prototype,"_maxWidth",[lo],(function(){return 0})),WG=ja(NG.prototype,"_fontFamily",[lo],(function(){return"Arial"})),XG=ja(NG.prototype,"_font",[lo],(function(){return null})),jG=ja(NG.prototype,"_isSystemFontUsed",[lo],(function(){return!0})),YG=ja(NG.prototype,"_userDefinedFont",[lo],(function(){return null})),qG=ja(NG.prototype,"_cacheMode",[lo],(function(){return IL.NONE})),KG=ja(NG.prototype,"_imageAtlas",[lo],(function(){return null})),QG=ja(NG.prototype,"_handleTouchEvent",[lo],(function(){return!0})),LG=NG))||LG)||LG));S.RichText=hV;var uV,lV=t("k",eo("cc.UIMeshRenderer")(oV=no(110)(oV=function(t){function e(){var e;return(e=t.call(this)||this)._modelComponent=null,e._dirtyVersion=-1,e._internalId=-1,e.stencilStage=qP.DISABLED,e._renderData=null,e._renderEntity=new dO(ZP.DYNAMIC),e}s(e,t);var i=e.prototype;return i.__preload=function(){this.node._uiProps.uiComp=this},i.onEnable=function(){gD.addRenderer(this),this.markForUpdateRenderData()},i.onDisable=function(){gD.removeRenderer(this),this.renderEntity.enabled=this._canRender()},i.onLoad=function(){this.node._uiProps.uiTransformComp||this.node.addComponent("cc.UITransform"),this._modelComponent=this.getComponent("cc.ModelRenderer"),this._modelComponent?this.renderEntity.setNode(this.node):tt(16378,this.node?this.node.name:"")},i.onDestroy=function(){this.renderEntity.setNode(null),this.node._uiProps.uiComp===this&&(this.node._uiProps.uiComp=null),this._modelComponent=this.getComponent("cc.ModelRenderer"),this._modelComponent&&(this._modelComponent._sceneGetter=null)},i._render=function(t){if(this._modelComponent){var e=this._modelComponent._collectModels();this._modelComponent._detachFromScene();for(var i=0;i<e.length;i++)e[i].enabled&&t.commitModel(this,e[i],this._modelComponent.material);return!0}return!1},i.fillBuffers=function(t){this.enabled&&this._render(t)},i.updateRenderer=function(){},i._uploadRenderData=function(){},i.postUpdateAssembler=function(){},i.update=function(){this._fitUIRenderQueue()},i._fitUIRenderQueue=function(){if(this._modelComponent)for(var t=this._modelComponent.sharedMaterials.length,e=0;e<t;e++){var i=this._modelComponent.getMaterialInstance(e);if(null!=i)for(var n=i.passes,r=n.length,s=0;s<r;s++)n[s].setPriority(xg.MAX-11),i.recompileShaders({CC_FORCE_FORWARD_SHADING:!0},s)}},i.markForUpdateRenderData=function(){gD.markDirtyRenderer(this)},i.setNodeDirty=function(){},i.setTextureDirty=function(){},i._canRender=function(){return this.enabled&&null!==this._modelComponent},n(e,[{key:"modelComponent",get:function(){return this._modelComponent}},{key:"renderEntity",get:function(){return this._renderEntity}},{key:"renderData",get:function(){return this._renderData}}]),e}(mp))||oV)||oV);S.UIMeshRenderer=lV;var cV=t("m",eo("cc.LabelOutline")(uV=no(110)(uV=io(OL)(uV=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.onEnable=function(){this.node.getComponent(OL).enableOutline=!0},i.onDisable=function(){this.node.getComponent(OL).enableOutline=!1},n(e,[{key:"color",get:function(){return this.node.getComponent(OL).outlineColor},set:function(t){this.node.getComponent(OL).outlineColor=t}},{key:"width",get:function(){return this.node.getComponent(OL).outlineWidth},set:function(t){this.node.getComponent(OL).outlineWidth=t}}]),e}(mp))||uV)||uV)||uV);S.LabelOutline=cV;var _V,fV,dV,pV,mV,gV,vV=dm.Enum.NONE|dm.Enum.UI_3D,yV=function(){function t(){this.model=null,this.texture=null,this.sampler=null,this.useLocalData=null,this.isStatic=!1,this.textureHash=0,this.samplerHash=0,this._passes=[],this._shaders=[],this._visFlags=vV,this._inputAssembler=null,this._descriptorSet=null}var e=t.prototype;return e.destroy=function(){this._passes=[]},e.clear=function(){this._inputAssembler=null,this._descriptorSet=null,this.texture=null,this.sampler=null,this.textureHash=0,this.samplerHash=0,this.model=null,this.isStatic=!1,this.useLocalData=null,this.visFlags=vV},e.fillPasses=function(t,e,i,n){if(t){var r=t.passes;if(!r)return;this._shaders.length=r.length;for(var s=0;s<r.length;s++){this._passes[s]||(this._passes[s]=new IT(S.director.root));var a=r[s],o=this._passes[s];a.update(),e||(e=a.depthStencilState,i=0),o._initPassFromTarget(a,e,i),this._shaders[s]=o.getShaderVariant(n)}}},n(t,[{key:"inputAssembler",get:function(){return this._inputAssembler},set:function(t){this._inputAssembler=t}},{key:"descriptorSet",get:function(){return this._descriptorSet},set:function(t){this._descriptorSet=t}},{key:"visFlags",get:function(){return this._visFlags},set:function(t){this._visFlags=t}},{key:"passes",get:function(){return this._passes}},{key:"shaders",get:function(){return this._shaders}}]),t}(),SV=t("n",eo("cc.UIStaticBatch")(_V=no(110)((m((fV=function(t){function e(){var e;return(e=t.call(this)||this)._init=!1,e._bufferAccessor=null,e._dirty=!0,e._uiDrawBatchList=[],e}s(e,t);var i=e.prototype;return i.postUpdateAssembler=function(){},i.markAsDirty=function(){},i._requireDrawBatch=function(){var t=new yV;return t.isStatic=!0,this._uiDrawBatchList.push(t),t},i._clearData=function(){if(this._bufferAccessor){this._bufferAccessor.reset();for(var t=this._getBatcher(),e=0;e<this._uiDrawBatchList.length;e++)this._uiDrawBatchList[e].destroy(t)}this._uiDrawBatchList.length=0,this._init=!1},i._getBatcher=function(){return ID.root&&ID.root.batcher2D?ID.root.batcher2D:(tt(9301),null)},n(e,[{key:"color",get:function(){return this._color},set:function(t){this._color!==t&&this._color.set(t)}},{key:"drawBatchList",get:function(){return this._uiDrawBatchList}}]),e}(XO)).prototype,"color",[jo],Object.getOwnPropertyDescriptor(fV.prototype,"color"),fV.prototype),_V=fV))||_V)||_V),TV=t("o",eo("cc.LabelShadow")(dV=no(110)(dV=io(OL)(dV=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.onEnable=function(){this.node.getComponent(OL).enableShadow=!0},i.onDisable=function(){this.node.getComponent(OL).enableShadow=!1},n(e,[{key:"color",get:function(){return this.node.getComponent(OL).shadowColor},set:function(t){this.node.getComponent(OL).shadowColor=t}},{key:"offset",get:function(){return this.node.getComponent(OL).shadowOffset},set:function(t){this.node.getComponent(OL).shadowOffset=t}},{key:"blur",get:function(){return this.node.getComponent(OL).shadowBlur},set:function(t){this.node.getComponent(OL).shadowBlur=t}}]),e}(mp))||dV)||dV)||dV),AV=t("p",eo("cc.UIOpacity")(pV=no(110)(pV=ro((mV=function(t){function e(){var e;return(e=t.call(this)||this)._parentOpacity=1,e._opacity=gV&&gV(),e}s(e,t);var i=e.prototype;return i.setEntityLocalOpacityDirtyRecursively=function(){},e.setEntityLocalOpacityDirtyRecursively=function(t,i,n,r){if(t.isValid){var s=t.getComponent(e);if(s&&r)s._parentOpacity=n;else{var a=t._uiProps.uiComp;if(a||(a=t.getComponent(XO)),a&&a.color)return a.renderEntity.colorDirty=i,s?(s._parentOpacity=n,a.renderEntity.localOpacity=n*s.opacity/255):a.renderEntity.localOpacity=n,void(a.node._uiProps.localOpacity=a.renderEntity.localOpacity);s&&(s._parentOpacity=n,n=n*s.opacity/255);for(var o=t.children,h=0,u=o.length;h<u;++h)e.setEntityLocalOpacityDirtyRecursively(o[h],i||n<1,n,r)}}},i._getParentOpacity=function(t){if(null==t||!t.isValid)return 1;var i=t._uiProps.uiComp,n=t.getComponent(e);return i&&i.color?1:n?n._parentOpacity*(n._opacity/255):this._getParentOpacity(t.getParent())},i._parentChanged=function(){var t=this.node.getParent(),i=1;t&&(this._parentOpacity=this._getParentOpacity(t),i=this._parentOpacity),e.setEntityLocalOpacityDirtyRecursively(this.node,!0,i,!1)},i._setEntityLocalOpacityRecursively=function(){},i.onEnable=function(){this.node.on(vm.PARENT_CHANGED,this._parentChanged,this),this.node._uiProps.localOpacity=this._parentOpacity*this._opacity/255,this._setEntityLocalOpacityRecursively(this.node._uiProps.localOpacity)},i.onDisable=function(){this.node.off(vm.PARENT_CHANGED,this._parentChanged,this),this.node._uiProps.localOpacity=1,this._setEntityLocalOpacityRecursively(this.node._uiProps.localOpacity)},n(e,[{key:"opacity",get:function(){return this._opacity},set:function(t){this._opacity!==t&&(t=Fi(t,0,255),this._opacity=t,this.node._uiProps.localOpacity=t/255,this.setEntityLocalOpacityDirtyRecursively(!0))}}]),e}(mp),gV=ja(mV.prototype,"_opacity",[lo],(function(){return 255})),pV=mV))||pV)||pV)||pV);S.MaskComponent=XF,ne(XF,"cc.MaskComponent"),S.LabelComponent=OL,ne(OL,"cc.LabelComponent"),S.LabelOutlineComponent=cV,ne(cV,"cc.LabelOutlineComponent"),S.RichTextComponent=hV,ne(hV,"cc.RichTextComponent"),S.SpriteComponent=PF,ne(PF,"cc.SpriteComponent"),S.UIModelComponent=lV,ne(lV,"cc.UIModelComponent"),S.GraphicsComponent=AF,ne(AF,"cc.GraphicsComponent"),ne(SV,"cc.UIStaticBatchComponent"),ne(AV,"cc.UIOpacityComponent"),ut(XF.prototype,"Mask",[{name:"graphics",newName:"subComp",target:XF.prototype,targetName:"Mask"}]),ut(OF,"MaskType",[{name:"RECT",newName:"GRAPHICS_RECT",target:OF,targetName:"MaskType"},{name:"ELLIPSE",newName:"GRAPHICS_ELLIPSE",target:OF,targetName:"MaskType"},{name:"IMAGE_STENCIL",newName:"SPRITE_STENCIL",target:OF,targetName:"MaskType"}]),ct(cV.prototype,"LabelOutline",[{name:"width",suggest:"Please use Label.outlineWidth instead."},{name:"color",suggest:"Please use Label.outlineColor instead."}]),ct(TV.prototype,"LabelShadow",[{name:"color",suggest:"Please use Label.shadowColor instead."},{name:"offset",suggest:"Please use Label.shadowOffset instead."},{name:"blur",suggest:"Please use Label.shadowBlur instead."}]);var bV=function(t,e,i){this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1,this.i=t,this.x=e,this.y=i};function EV(t,e,i,n,r){var s=0,a=null;if(r===function(t,e,i,n){for(var r=0,s=e,a=i-n;s<i;s+=n)r+=(t[a]-t[s])*(t[s+1]+t[a+1]),a=s;return r}(t,e,i,n)>0)for(s=e;s<i;s+=n)a=zV(s,t[s],t[s+1],a);else for(s=i-n;s>=e;s-=n)a=zV(s,t[s],t[s+1],a);return a&&kV(a,a.next)&&(HV(a),a=a.next),a}function CV(t,e){if(void 0===e&&(e=null),!t)return t;e||(e=t);var i=t,n=!1;do{if(n=!1,i.steiner||!kV(i,i.next)&&0!==FV(i.prev,i,i.next))i=i.next;else{if(HV(i),(i=e=i.prev)===i.next)return null;n=!0}}while(n||i!==e);return e}function xV(t,e,i,n,r,s,a){if(void 0===a&&(a=0),t){!a&&s&&function(t,e,i,n){var r=t;do{null===r.z&&(r.z=PV(r.x,r.y,e,i,n)),r.prevZ=r.prev,r.nextZ=r.next,r=r.next}while(r!==t);r.prevZ.nextZ=null,r.prevZ=null,function(t){var e=0,i=null,n=null,r=null,s=null,a=0,o=0,h=0,u=1;do{for(i=t,t=null,s=null,a=0;i;){for(a++,n=i,o=0,e=0;e<u&&(o++,n=n.nextZ);e++);for(h=u;o>0||h>0&&n;)0===o?(r=n,n=n.nextZ,h--):0!==h&&n?i.z<=n.z?(r=i,i=i.nextZ,o--):(r=n,n=n.nextZ,h--):(r=i,i=i.nextZ,o--),s?s.nextZ=r:t=r,r.prevZ=s,s=r;i=n}s.nextZ=null,u*=2}while(a>1)}(r)}(t,n,r,s);for(var o=t,h=null,u=null;t.prev!==t.next;)if(h=t.prev,u=t.next,s?RV(t,n,r,s):wV(t))e.push(h.i/i),e.push(t.i/i),e.push(u.i/i),HV(t),t=u.next,o=u.next;else if((t=u)===o){a?1===a?xV(t=IV(t,e,i),e,i,n,r,s,2):2===a&&DV(t,e,i,n,r,s):xV(CV(t),e,i,n,r,s,1);break}}}function wV(t){var e=t.prev,i=t,n=t.next;if(FV(e,i,n)>=0)return!1;for(var r=t.next.next;r!==t.prev;){if(LV(e.x,e.y,i.x,i.y,n.x,n.y,r.x,r.y)&&FV(r.prev,r,r.next)>=0)return!1;r=r.next}return!0}function RV(t,e,i,n){var r=t.prev,s=t,a=t.next;if(FV(r,s,a)>=0)return!1;for(var o=r.x<s.x?r.x<a.x?r.x:a.x:s.x<a.x?s.x:a.x,h=r.y<s.y?r.y<a.y?r.y:a.y:s.y<a.y?s.y:a.y,u=r.x>s.x?r.x>a.x?r.x:a.x:s.x>a.x?s.x:a.x,l=r.y>s.y?r.y>a.y?r.y:a.y:s.y>a.y?s.y:a.y,c=PV(o,h,e,i,n),_=PV(u,l,e,i,n),f=t.nextZ;f&&f.z<=_;){if(f!==t.prev&&f!==t.next&&LV(r.x,r.y,s.x,s.y,a.x,a.y,f.x,f.y)&&FV(f.prev,f,f.next)>=0)return!1;f=f.nextZ}for(f=t.prevZ;f&&f.z>=c;){if(f!==t.prev&&f!==t.next&&LV(r.x,r.y,s.x,s.y,a.x,a.y,f.x,f.y)&&FV(f.prev,f,f.next)>=0)return!1;f=f.prevZ}return!0}function IV(t,e,i){var n=t;do{var r=n.prev,s=n.next.next;!kV(r,s)&&GV(r,n,n.next,s)&&VV(r,s)&&VV(s,r)&&(e.push(r.i/i),e.push(n.i/i),e.push(s.i/i),HV(n),HV(n.next),n=t=s),n=n.next}while(n!==t);return n}function DV(t,e,i,n,r,s){var a=t;do{for(var o=a.next.next;o!==a.prev;){if(a.i!==o.i&&NV(a,o)){var h=UV(a,o);return a=CV(a,a.next),h=CV(h,h.next),xV(a,e,i,n,r,s),void xV(h,e,i,n,r,s)}o=o.next}a=a.next}while(a!==t)}function BV(t,e){return t.x-e.x}function MV(t,e){if(e=function(t,e){var i=e,n=t.x,r=t.y,s=-1/0,a=null;do{if(r<=i.y&&r>=i.next.y){var o=i.x+(r-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(o<=n&&o>s){if(s=o,o===n){if(r===i.y)return i;if(r===i.next.y)return i.next}a=i.x<i.next.x?i:i.next}}i=i.next}while(i!==e);if(!a)return null;if(n===s)return a.prev;var h,u=a,l=a.x,c=a.y,_=1/0;for(i=a.next;i!==u;)n>=i.x&&i.x>=l&&LV(r<c?n:s,r,l,c,r<c?s:n,r,i.x,i.y)&&((h=Math.abs(r-i.y)/(n-i.x))<_||h===_&&i.x>a.x)&&VV(i,t)&&(a=i,_=h),i=i.next;return a}(t,e)){var i=UV(e,t);CV(i,i.next)}}function PV(t,e,i,n,r){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-i)/r)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)/r)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function OV(t){var e=t,i=t;do{e.x<i.x&&(i=e),e=e.next}while(e!==t);return i}function LV(t,e,i,n,r,s,a,o){return(r-a)*(e-o)-(t-a)*(s-o)>=0&&(t-a)*(n-o)-(i-a)*(e-o)>=0&&(i-a)*(s-o)-(r-a)*(n-o)>=0}function NV(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var i=t;do{if(i.i!==t.i&&i.next.i!==t.i&&i.i!==e.i&&i.next.i!==e.i&&GV(i,i.next,t,e))return!0;i=i.next}while(i!==t);return!1}(t,e)&&VV(t,e)&&VV(e,t)&&function(t,e){var i=t,n=!1,r=(t.x+e.x)/2,s=(t.y+e.y)/2;do{i.y>s!=i.next.y>s&&r<(i.next.x-i.x)*(s-i.y)/(i.next.y-i.y)+i.x&&(n=!n),i=i.next}while(i!==t);return n}(t,e)}function FV(t,e,i){return(e.y-t.y)*(i.x-e.x)-(e.x-t.x)*(i.y-e.y)}function kV(t,e){return t.x===e.x&&t.y===e.y}function GV(t,e,i,n){return!!(kV(t,e)&&kV(i,n)||kV(t,n)&&kV(i,e))||FV(t,e,i)>0!=FV(t,e,n)>0&&FV(i,n,t)>0!=FV(i,n,e)>0}function VV(t,e){return FV(t.prev,t,t.next)<0?FV(t,e,t.next)>=0&&FV(t,t.prev,e)>=0:FV(t,e,t.prev)<0||FV(t,t.next,e)<0}function UV(t,e){var i=new bV(t.i,t.x,t.y),n=new bV(e.i,e.x,e.y),r=t.next,s=e.prev;return t.next=e,e.prev=t,i.next=r,r.prev=i,n.next=i,i.prev=n,s.next=n,n.prev=s,n}function zV(t,e,i,n){var r=new bV(t,e,i);return n?(r.next=n.next,r.prev=n,n.next.prev=r,n.next=r):(r.prev=r,r.next=r),r}function HV(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function WV(t,e,i){i=i||3;var n=e?e.length:0,r=n?e[0]*i:t.length,s=EV(t,0,r,i,!0),a=[];if(!s)return a;var o=0,h=0,u=0,l=0,c=0,_=0,f=0;if(n&&(s=function(t,e,i,n){var r,s=[],a=0,o=null;for(a=0,r=e.length;a<r;a++)(o=EV(t,e[a]*n,a<r-1?e[a+1]*n:t.length,n,!1))&&(o===o.next&&(o.steiner=!0),s.push(OV(o)));if(s.sort(BV),!i)return i;for(a=0;a<s.length;a++)MV(s[a],i),i=CV(i,i.next);return i}(t,e,s,i)),t.length>80*i){o=u=t[0],h=l=t[1];for(var d=i;d<r;d+=i)(c=t[d])<o&&(o=c),(_=t[d+1])<h&&(h=_),c>u&&(u=c),_>l&&(l=_);f=Math.max(u-o,l-h)}return xV(s,a,i,o,h,f),a}for(var XV=Math.PI,jV=Math.min,YV=Math.max,qV=Math.ceil,KV=Math.acos,QV=Math.cos,ZV=Math.sin,JV=Math.atan2,$V=null,tU=null,eU=new En,iU=[],nU=0;nU<4;nU++)iU.push(new gn);function rU(t,e,i){return t<e?e:t>i?i:t}var sU={useModel:!0,updateRenderData:function(){},fillBuffers:function(){},renderIA:function(){},getRenderData:function(t,e){if(!tU)return null;var i=tU.getRenderDataList(),n=i[tU.dataOffset];if(!n)return null;var r=n,s=r?r.vertexStart+e:0;return(s>65535||3*s>131070)&&(++tU.dataOffset,tU.dataOffset<i.length?n=i[tU.dataOffset]:(n=tU.requestRenderData(),i[tU.dataOffset]=n),r=n),r&&r.vertexCount<s&&r.request(e,3*e),n},stroke:function(t){En.copy(eU,t.strokeColor),t.impl&&(this._flattenPaths(t.impl),this._expandStroke(t),t.impl.updatePathOffset=!0,this.end(t))},fill:function(t){En.copy(eU,t.fillColor),this._expandFill(t),t.impl&&(t.impl.updatePathOffset=!0),this.end(t)},end:function(t){t.markForUpdateRenderData()},_expandStroke:function(t){var e=.5*t.lineWidth,i=t.lineCap,n=t.lineJoin,r=t.miterLimit;if(tU=t.impl){var s=function(t,e,i){var n=2*KV(t/(t+i));return YV(2,qV(e/n))}(e,XV,tU.tessTol);this._calculateJoins(tU,e,n,r);for(var a=tU.paths,o=0,h=tU.pathOffset,u=tU.pathLength;h<u;h++){var l=a[h],c=l.points.length;n===yN.ROUND?o+=2*(c+l.bevel*(s+2)+1):o+=2*(c+5*l.bevel+1),l.closed||(i===vN.ROUND?o+=2*(2*s+2):o+=12)}var _=$V=this.getRenderData(t,o);if(_){for(var f=_.vData,d=_.iData,p=tU.pathOffset,m=tU.pathLength;p<m;p++){var g=a[p],v=g.points,y=v.length,S=_.vertexStart,T=void 0,A=void 0,b=0,E=0,C=g.closed;if(C?(T=v[y-1],A=v[0],b=0,E=y):(T=v[0],A=v[1],b=1,E=y-1),A=A||T,!C){var x=new mF(A.x,A.y);x.subtract(T),x.normalize();var w=x.x,R=x.y;i===vN.BUTT?this._buttCapStart(T,w,R,e,0):i===vN.SQUARE?this._buttCapStart(T,w,R,e,e):i===vN.ROUND&&this._roundCapStart(T,w,R,e,s)}for(var I=b;I<E;++I)n===yN.ROUND?this._roundJoin(T,A,e,e,s):0!=(A.flags&(SN.PT_BEVEL|SN.PT_INNERBEVEL))?this._bevelJoin(T,A,e,e):(this._vSet(A.x+A.dmx*e,A.y+A.dmy*e,1),this._vSet(A.x-A.dmx*e,A.y-A.dmy*e,-1)),T=A,A=v[I+1];if(C){var D=8*S;this._vSet(f[D],f[D+1],1),this._vSet(f[D+8],f[D+8+1],-1)}else{var B=new mF(A.x,A.y);B.subtract(T),B.normalize();var M=B.x,P=B.y;i===vN.BUTT?this._buttCapEnd(A,M,P,e,0):i===vN.SQUARE?this._buttCapEnd(A,M,P,e,e):i===vN.ROUND&&this._roundCapEnd(A,M,P,e,s)}for(var O=_.indexStart,L=S+2,N=_.vertexStart;L<N;L++)d[O++]=L-2,d[O++]=L-1,d[O++]=L;_.indexStart=O}$V=null,tU=null}}},_expandFill:function(t){if(tU=t.impl){for(var e=tU.paths,i=0,n=tU.pathOffset,r=tU.pathLength;n<r;n++)i+=e[n].points.length;var s=$V=this.getRenderData(t,i);if(s){for(var a=s,o=a.vData,h=a.iData,u=tU.pathOffset,l=tU.pathLength;u<l;u++){var c=e[u],_=c.points,f=_.length;if(0!==f){for(var d=s.vertexStart,p=0;p<f;++p)this._vSet(_[p].x,_[p].y);var m=s.indexStart;if(c.complex){for(var g=[],v=d,y=s.vertexStart;v<y;v++){var S=8*v;g.push(o[S++]),g.push(o[S++]),g.push(o[S++])}var T=WV(g,null,3);if(!T||0===T.length)continue;for(var A=0,b=T.length;A<b;A++)h[m++]=T[A]+d}else for(var E=d,C=d+2,x=a.vertexStart;C<x;C++)h[m++]=E,h[m++]=C-1,h[m++]=C;a.indexStart=m}}$V=null,tU=null}}},_calculateJoins:function(t,e,i,n){var r=0;e>0&&(r=1/e);for(var s=t.paths,a=t.pathOffset,o=t.pathLength;a<o;a++){var h=s[a],u=h.points,l=u.length,c=u[l-1],_=u[0];h.bevel=0;for(var f=0;f<l;f++){var d,p,m=c.dy,g=-c.dx,v=_.dy,y=-_.dx;if(_.dmx=.5*(m+v),_.dmy=.5*(g+y),(d=_.dmx*_.dmx+_.dmy*_.dmy)>1e-6){var S=1/d;S>600&&(S=600),_.dmx*=S,_.dmy*=S}_.dx*c.dy-c.dx*_.dy>0&&(_.flags|=SN.PT_LEFT),d*(p=YV(11,jV(c.len,_.len)*r))*p<1&&(_.flags|=SN.PT_INNERBEVEL),_.flags&SN.PT_CORNER&&(d*n*n<1||i===yN.BEVEL||i===yN.ROUND)&&(_.flags|=SN.PT_BEVEL),0!=(_.flags&(SN.PT_BEVEL|SN.PT_INNERBEVEL))&&h.bevel++,c=_,_=u[f+1]}}},_flattenPaths:function(t){for(var e=t.paths,i=t.pathOffset,n=t.pathLength;i<n;i++){var r=e[i],s=r.points,a=s[s.length-1],o=s[0];s.length>2&&a.equals(o)&&(r.closed=!0,s.pop(),a=s[s.length-1]);for(var h=0,u=s.length;h<u;h++){var l=new mF(o.x,o.y);l.subtract(a),a.len=l.length(),(l.x||l.y)&&l.normalize(),a.dx=l.x,a.dy=l.y,a=o,o=s[h+1]}}},_chooseBevel:function(t,e,i,n){var r=i.x,s=i.y,a=0,o=0,h=0,u=0;return 0!==t?(a=r+e.dy*n,o=s-e.dx*n,h=r+i.dy*n,u=s-i.dx*n):(a=h=r+i.dmx*n,o=u=s+i.dmy*n),[a,o,h,u]},_buttCapStart:function(t,e,i,n,r){var s=t.x-e*r,a=t.y-i*r,o=i,h=-e;this._vSet(s+o*n,a+h*n,1),this._vSet(s-o*n,a-h*n,-1)},_buttCapEnd:function(t,e,i,n,r){var s=t.x+e*r,a=t.y+i*r,o=i,h=-e;this._vSet(s+o*n,a+h*n,1),this._vSet(s-o*n,a-h*n,-1)},_roundCapStart:function(t,e,i,n,r){for(var s=t.x,a=t.y,o=i,h=-e,u=0;u<r;u++){var l=u/(r-1)*XV,c=QV(l)*n,_=ZV(l)*n;this._vSet(s-o*c-e*_,a-h*c-i*_,1),this._vSet(s,a,0)}this._vSet(s+o*n,a+h*n,1),this._vSet(s-o*n,a-h*n,-1)},_roundCapEnd:function(t,e,i,n,r){var s=t.x,a=t.y,o=i,h=-e;this._vSet(s+o*n,a+h*n,1),this._vSet(s-o*n,a-h*n,-1);for(var u=0;u<r;u++){var l=u/(r-1)*XV,c=QV(l)*n,_=ZV(l)*n;this._vSet(s,a,0),this._vSet(s-o*c+e*_,a-h*c+i*_,1)}},_roundJoin:function(t,e,i,n,r){var s=t.dy,a=-t.dx,o=e.dy,h=-e.dx,u=e.x,l=e.y;if(0!=(e.flags&SN.PT_LEFT)){var c=this._chooseBevel(e.flags&SN.PT_INNERBEVEL,t,e,i),_=c[0],f=c[1],d=c[2],p=c[3],m=JV(-a,-s),g=JV(-h,-o);g>m&&(g-=2*XV),this._vSet(_,f,1),this._vSet(u-s*n,e.y-a*n,-1);for(var v=rU(qV((m-g)/XV)*r,2,r),y=0;y<v;y++){var S=m+y/(v-1)*(g-m),T=u+QV(S)*n,A=l+ZV(S)*n;this._vSet(u,l,0),this._vSet(T,A,-1)}this._vSet(d,p,1),this._vSet(u-o*n,l-h*n,-1)}else{var b=this._chooseBevel(e.flags&SN.PT_INNERBEVEL,t,e,-n),E=b[0],C=b[1],x=b[2],w=b[3],R=JV(a,s),I=JV(h,o);I<R&&(I+=2*XV),this._vSet(u+s*n,l+a*n,1),this._vSet(E,C,-1);for(var D=rU(qV((I-R)/XV)*r,2,r),B=0;B<D;B++){var M=R+B/(D-1)*(I-R),P=u+QV(M)*i,O=l+ZV(M)*i;this._vSet(P,O,1),this._vSet(u,l,0)}this._vSet(u+o*n,l+h*n,1),this._vSet(x,w,-1)}},_bevelJoin:function(t,e,i,n){var r=0,s=0,a=0,o=0,h=0,u=0,l=0,c=0,_=t.dy,f=-t.dx,d=e.dy,p=-e.dx;if(e.flags&SN.PT_LEFT){var m=this._chooseBevel(e.flags&SN.PT_INNERBEVEL,t,e,i);h=m[0],u=m[1],l=m[2],c=m[3],this._vSet(h,u,1),this._vSet(e.x-_*n,e.y-f*n,-1),this._vSet(l,c,1),this._vSet(e.x-d*n,e.y-p*n,-1)}else{var g=this._chooseBevel(e.flags&SN.PT_INNERBEVEL,t,e,-n);r=g[0],s=g[1],a=g[2],o=g[3],this._vSet(e.x+_*i,e.y+f*i,1),this._vSet(r,s,-1),this._vSet(e.x+d*i,e.y+p*i,1),this._vSet(a,o,-1)}},_vSet:function(t,e,i){if(void 0===i&&(i=0),$V){var n=$V,r=8*n.vertexStart,s=n.vData;s[r++]=t,s[r++]=e,s[r++]=0,En.toArray(s,eU,r),r+=4,s[r++]=i,n.vertexStart++}}},aU=t("g",{getAssembler:function(){return sU}});AF.Assembler=aU;var oU=["left","center","right"],hU=2048,uU=(1/255).toFixed(3),lU=function(){this.char="",this.valid=!0,this.x=0,this.y=0,this.line=0,this.hash=""},cU=function(){function t(){this._context=null,this._canvas=null,this._canvasData=null,this._lettersInfo=[],this._tmpRect=new Jn,this._maxFontSize=100,this._fontScale=1,this._canvasData=EP.getInstance().get(),this._canvas=this._canvasData.canvas,this._context=this._canvasData.context}var e=t.prototype;return e.destroy=function(){EP.getInstance().put(this._canvasData),this._lettersInfo.length=0},e.processingString=function(t,e,i,n,r,s){if(t)e.fntConfig?this._fontScale=1:this._fontScale=this._getStyleFontScale(e.originFontSize,e.fontScale),DP.fontScale=this._fontScale,this._setupBMFontOverflowMetrics(i,n),this._updateFontScale(e),this._computeHorizontalKerningForText(e,i,r),this._alignText(e,i,n,r);else{var a=0;for(this._fontScale=this._getStyleFontScale(e.fontSize,e.fontScale),this._updatePaddingRect(e,n),this._calculateLabelFont(e,i,n,r);(n.canvasSize.width>hU||n.canvasSize.height>hU)&&a<=3;){if(++a>3)this._fontScale=1;else{var o=Math.max(n.canvasSize.width,n.canvasSize.height),h=hU/o;this._fontScale*=h,this._fontScale=Math.max(1,this._fontScale)}this._updatePaddingRect(e,n),this._calculateLabelFont(e,i,n,r)}}s&&(s=n.parsedString)},e.generateRenderInfo=function(t,e,i,n,r,s,a){t?(this._computeAlignmentOffset(e,i,n),this.generateVertexData(t,e,i,n,r,s,a)):(this._updateLabelDimensions(e,i,n),this._updateTexture(e,i,n,r),this.generateVertexData(t,e,i,n,r,s,a))},e.setCanvasUsed=function(t,e){this._canvas=t,this._context=e},e._getStyleFontScale=function(t,e){var i=e;return i*t>this._maxFontSize&&t<this._maxFontSize&&(i=this._maxFontSize/t),i<1&&(i=1),i},e._calculateLabelFont=function(t,e,i,n){if(this._context){t.actualFontSize=t.fontSize*this._fontScale;var r=n.split("\n"),s=i.parsedString=r,a=this._getFontDesc(t.actualFontSize,t.fontFamily,t.isBold,t.isItalic);switch(this._context.font=t.fontDesc=a,e.overFlow){case RL.NONE:for(var o=0,h=0;h<r.length;++h){var u=GM(this._context,r[h],a);o=o>u?o:u}var l=o,c=(s.length+RM)*this._getLineHeight(e.lineHeight,t.actualFontSize,t.fontSize);i.canvasSize.width=l+i.canvasPadding.width*this._fontScale,i.canvasSize.height=c+i.canvasPadding.height*this._fontScale,i.nodeContentSize.width=(l+i.contentSizeExtend.width*this._fontScale)/this._fontScale,i.nodeContentSize.height=(c+i.contentSizeExtend.height*this._fontScale)/this._fontScale;break;case RL.SHRINK:this._calculateShrinkFont(r,t,e,i),this._calculateWrapText(r,t,e,i),i.canvasSize.width=i.nodeContentSize.width*this._fontScale,i.canvasSize.height=i.nodeContentSize.height*this._fontScale;break;case RL.CLAMP:this._calculateWrapText(r,t,e,i),i.canvasSize.width=i.nodeContentSize.width*this._fontScale,i.canvasSize.height=i.nodeContentSize.height*this._fontScale;break;case RL.RESIZE_HEIGHT:this._calculateWrapText(r,t,e,i);var _=(i.parsedString.length+RM)*this._getLineHeight(e.lineHeight,t.actualFontSize,t.fontSize);i.canvasSize.width=i.nodeContentSize.width*this._fontScale,i.canvasSize.height=_+i.canvasPadding.height*this._fontScale,i.nodeContentSize.height=(_+i.contentSizeExtend.height*this._fontScale)/this._fontScale}}},e._getFontDesc=function(t,e,i,n){var r=t.toString()+"px ";return r+=e,i&&(r="bold "+r),n&&(r="italic "+r),r},e._getLineHeight=function(t,e,i){return 0===t?e:t*e/i},e._calculateShrinkFont=function(t,e,i,n){if(this._context){var r=this._getFontDesc(e.actualFontSize,e.fontFamily,e.isBold,e.isItalic);this._context.font=r;var s=this._calculateParagraphLength(t,this._context,r),a=0,o=0,h=0,u=e.actualFontSize;if(i.wrapping){var l=n.nodeContentSize.width*this._fontScale,c=n.nodeContentSize.height*this._fontScale;if(l<0||c<0)return;o=c+1;for(var _=0,f=0|e.actualFontSize+1,d=0;_<f;){if((d=_+f+1>>1)<=0){Q(4003);break}u=d,r=this._getFontDesc(u,e.fontFamily,e.isBold,e.isItalic),this._context.font=r;var p=this._getLineHeight(i.lineHeight,u,e.fontSize);for(o=0,a=0;a<t.length;++a){var m=GM(this._context,t[a],r);o+=qM(t[a],m,l,this._measureText(this._context,r)).length*p}o>c?f=d-1:_=d}0===_?Q(4003):(u=_,r=this._getFontDesc(u,e.fontFamily,e.isBold,e.isItalic),this._context.font=r)}else{for(o=t.length*this._getLineHeight(i.lineHeight,u,e.fontSize),a=0;a<t.length;++a)h<s[a]&&(h=s[a]);var g=(n.canvasSize.width-n.canvasPadding.width)*this._fontScale/h,v=n.canvasSize.height*this._fontScale/o;u=e.actualFontSize*Math.min(1,g,v)|0,r=this._getFontDesc(u,e.fontFamily,e.isBold,e.isItalic),this._context.font=r}e.actualFontSize=u,e.fontDesc=r}},e._calculateWrapText=function(t,e,i,n){if(i.wrapping&&this._context){var r=[],s=n.nodeContentSize.width*this._fontScale,a=this._getFontDesc(e.actualFontSize,e.fontFamily,e.isBold,e.isItalic);this._context.font=a;for(var o=0;o<t.length;++o){var h=GM(this._context,t[o],a),u=qM(t[o],h,s,this._measureText(this._context,a));r=r.concat(u)}n.parsedString=r,e.fontDesc=a}},e._measureText=function(t,e){return function(i){return GM(t,i,e)}},e._calculateParagraphLength=function(t,e,i){for(var n,r=[],s=f(t);!(n=s()).done;){var a=GM(e,n.value,i);r.push(a)}return r},e._updatePaddingRect=function(t,e){var i=0,n=0,r=0,s=0,a=0;if(e.contentSizeExtend.width=e.contentSizeExtend.height=0,t.isOutlined&&(i=n=r=s=a=t.outlineWidth,e.contentSizeExtend.width=e.contentSizeExtend.height=2*a),t.hasShadow){var o=t.shadowBlur+a,h=t.shadowOffsetX,u=t.shadowOffsetY;r=Math.max(r,-h+o),s=Math.max(s,h+o),i=Math.max(i,u+o),n=Math.max(n,-u+o)}if(t.isItalic){var l=t.fontSize*Math.tan(.20943951);s+=l,e.contentSizeExtend.width+=l}e.canvasPadding.x=r,e.canvasPadding.y=i,e.canvasPadding.width=r+s,e.canvasPadding.height=i+n},e._updateLabelDimensions=function(t,e,i){i.canvasSize.width=Math.min(i.canvasSize.width,hU),i.canvasSize.height=Math.min(i.canvasSize.height,hU),this._canvas.width=i.canvasSize.width,this._canvas.height=i.canvasSize.height,this._context.font=t.fontDesc,this._context.textAlign=oU[e.horizontalAlign],this._context.textBaseline="alphabetic"},e._calculateFillTextStartPosition=function(t,e,i){var n=0;e.horizontalAlign===xL.RIGHT?n=i.canvasSize.width-i.canvasPadding.width:e.horizontalAlign===xL.CENTER&&(n=(i.canvasSize.width-i.canvasPadding.width)/2);var r=this._getLineHeight(e.lineHeight,t.actualFontSize,t.fontSize)*(i.parsedString.length-1),s=t.actualFontSize*(1-RM/2);if(e.verticalAlign!==wL.TOP){var a=r+i.canvasPadding.height+t.actualFontSize-i.canvasSize.height;e.verticalAlign===wL.BOTTOM?s-=a+=RM/2*t.actualFontSize:s-=a/2}s+=0*t.actualFontSize,i.startPosition.set(n+i.canvasPadding.x,s+i.canvasPadding.y)},e._updateTexture=function(t,e,i,n){if(this._context&&this._canvas){this._context.clearRect(0,0,this._canvas.width,this._canvas.height),this._context.font=t.fontDesc,this._calculateFillTextStartPosition(t,e,i);var r=this._getLineHeight(e.lineHeight,t.actualFontSize,t.fontSize);this._context.lineJoin="round",t.isOutlined?(this._context.fillStyle="rgba("+t.outlineColor.r+", "+t.outlineColor.g+", "+t.outlineColor.b+", "+uU+")",this._context.fillRect(0,0,this._canvas.width,this._canvas.height)):(this._context.fillStyle="rgba("+t.color.r+", "+t.color.g+", "+t.color.b+", "+uU+")",this._context.fillRect(0,0,this._canvas.width,this._canvas.height)),this._context.fillStyle="rgb("+t.color.r+", "+t.color.g+", "+t.color.b+")";var s=new jn(i.startPosition.x,i.startPosition.y),a=s.x,o=0;this._drawTextEffect(s,r,t,e,i);for(var h=0;h<i.parsedString.length;++h)o=s.y+h*r,t.hasShadow&&(this._setupShadow(t),this._context.fillText(i.parsedString[h],a,o)),t.isOutlined&&(this._setupOutline(t),this._context.strokeText(i.parsedString[h],a,o)),t.hasShadow&&!t.isOutlined||this._context.fillText(i.parsedString[h],a,o);t.hasShadow&&(this._context.shadowColor="transparent"),this._uploadTexture(n)}},e._uploadTexture=function(t){var e;t.texture&&this._canvas&&(e=t.texture instanceof SM?t.texture.texture:t.texture,0!==this._canvas.width&&0!==this._canvas.height&&(e.getGFXTexture(),e.getGFXSampler(),e.reset({width:this._canvas.width,height:this._canvas.height,mipmapLevel:1}),e.uploadData(this._canvas),e.setWrapMode(Sd.CLAMP_TO_EDGE,Sd.CLAMP_TO_EDGE),t.texture instanceof SM&&(t.texture.rect=new Jn(0,0,this._canvas.width,this._canvas.height),t.texture._calculateUV()),S.director.root&&S.director.root.batcher2D&&S.director.root.batcher2D._releaseDescriptorSetCache(e.getHash())))},e._drawTextEffect=function(t,e,i,n,r){if(i.hasShadow||i.isOutlined||i.isUnderline){for(var s=r.parsedString.length>1&&i.hasShadow,a=this._measureText(this._context,i.fontDesc),o=0,h=0,u=0;u<r.parsedString.length;++u)if(o=t.x,h=t.y+u*e,s&&(i.hasShadow&&(this._setupShadow(i),this._context.fillText(r.parsedString[u],o,h)),i.isOutlined&&(this._setupOutline(i),this._context.strokeText(r.parsedString[u],o,h)),i.hasShadow&&!i.isOutlined||this._context.fillText(r.parsedString[u],o,h)),i.isUnderline){var l=a(r.parsedString[u]),c=new jn;n.horizontalAlign===xL.RIGHT?c.x=t.x-l:n.horizontalAlign===xL.CENTER?c.x=t.x-l/2:c.x=t.x,c.y=h+i.actualFontSize/8,this._context.fillRect(c.x,c.y,l,i.underlineHeight*this._fontScale)}s&&(this._context.shadowColor="transparent")}},e._setupOutline=function(t){this._context.shadowBlur=0,this._context.shadowOffsetX=0,this._context.shadowOffsetY=0,this._context.strokeStyle="rgba("+t.outlineColor.r+", "+t.outlineColor.g+", "+t.outlineColor.b+", "+t.outlineColor.a/255+")",this._context.lineWidth=2*t.outlineWidth*this._fontScale},e._setupShadow=function(t){var e=this._fontScale;this._context.shadowColor="rgba("+t.shadowColor.r+", "+t.shadowColor.g+", "+t.shadowColor.b+", "+t.shadowColor.a/255+")",this._context.shadowBlur=t.shadowBlur*e,this._context.shadowOffsetX=t.shadowOffsetX*e,this._context.shadowOffsetY=-t.shadowOffsetY*e},e.generateVertexData=function(t,e,i,n,r,s,a){t?this._updateQuads(e,i,n,r,s,a):(this.updateQuatCount(r),a(e,n,r))},e.updateQuatCount=function(t){var e=t.vertexBuffer,i=t.quadCount;if(e.length!==i){for(var n=e.length;n<i;n++)e.push({x:0,y:0,z:0,u:0,v:0,color:En.WHITE.clone()});e.length=i}},e._setupBMFontOverflowMetrics=function(t,e){var i=e.nodeContentSize.width,n=e.nodeContentSize.height;t.overFlow===RL.RESIZE_HEIGHT&&(n=0),t.overFlow===RL.NONE&&(i=0,n=0),t.textWidthTemp=i,t.textHeightTemp=n,t.textDimensions.width=i,t.textDimensions.height=n,t.maxLineWidth=i},e._updateFontScale=function(t){t.bmfontScale=t.actualFontSize/(t.originFontSize*this._fontScale)},e._computeHorizontalKerningForText=function(t,e,i){var n=i,r=n.length;if(t.fntConfig){var s=t.fntConfig.kerningDict,a=e.horizontalKerning;if(s&&0!==s.length)for(var o=-1,h=0;h<r;++h){var u=n.charCodeAt(h),l=s[o<<16|65535&u]||0;a[h]=h<r-1?l:0,o=u}}},e._alignText=function(t,e,i,n){this._multilineTextWrap(t,e,i,n,this._getFirstWordLen),e.overFlow===RL.SHRINK&&(t.fontSize>0&&this._isVerticalClamp(t,e,i,n,this)&&this._shrinkLabelToContentSize(t,e,i,n,this._isVerticalClamp),t.fontSize>0&&this._isHorizontalNeedShrink(e,i)&&this._shrinkLabelToContentSize(t,e,i,n,this._isHorizontalClamp)),this._parsedString(i,n)},e._parsedString=function(t,e){for(var i=[],n="",r=0,s=0,a=VM(e);r<a;++r){var o=this._lettersInfo[r];o.valid&&(s===o.line?n+=o.char:(i=i.concat(n),s=o.line,n=""))}i=i.concat(n),t.parsedString=i},e._multilineTextWrap=function(t,e,i,n,r){e.linesWidth.length=0;for(var s=n,a=s.length,o=0,h=0,u=0,l=0,c=0,_=0,f=0,d=null,p=0;p<a;){var m=UM(s,p);if("\n"!==m){for(var g=r(t,e,s,p,a),v=_,y=f,S=c,T=h,A=!1,b=new jn,E=0;E<g;++E){var C=p+E;if("\r"!==(m=UM(s,C)))if(d=DP.fontAtlas.getLetterDefinitionForChar(m,DP)){var x=T+d.offsetX*t.bmfontScale-DP.margin;if(e.wrapping&&e.maxLineWidth>0&&h>0&&x+d.w*t.bmfontScale>e.maxLineWidth&&!kM(m)){e.linesWidth.push(c),c=0,o++,h=0,u-=e.lineHeight*this._getFontScale(t,e)+0,A=!0;break}b.x=x,b.y=u-d.offsetY*t.bmfontScale,this._recordLetterInfo(b,m,C,o),C+1<e.horizontalKerning.length&&C<a-1&&(T+=e.horizontalKerning[C+1]*t.bmfontScale),T+=d.xAdvance*t.bmfontScale+e.spacingX,S=b.x+d.w*t.bmfontScale,v<b.y&&(v=b.y),y>b.y-d.h*t.bmfontScale&&(y=b.y-d.h*t.bmfontScale)}else this._recordPlaceholderInfo(C,m),null!=t.fntConfig?Q(16354,t.fntConfig.atlasName,m):Q(16355,t.fontFamily,m);else this._recordPlaceholderInfo(C,m)}A||(h=T,_<v&&(_=v),f>y&&(f=y),l<(c=S)&&(l=c),p+=g)}else e.linesWidth.push(c),c=0,o++,h=0,u-=e.lineHeight*this._getFontScale(t,e)+0,this._recordPlaceholderInfo(p,m),p++}return e.linesWidth.push(c),e.numberOfLines=o+1,e.textDesiredHeight=e.numberOfLines*e.lineHeight*this._getFontScale(t,e),e.numberOfLines>1&&(e.textDesiredHeight+=0*(e.numberOfLines-1)),i.nodeContentSize.width=e.textWidthTemp,i.nodeContentSize.height=e.textHeightTemp,e.textWidthTemp<=0&&(i.nodeContentSize.width=parseFloat(l.toFixed(2))+2*DP.margin),e.textHeightTemp<=0&&(i.nodeContentSize.height=parseFloat(e.textDesiredHeight.toFixed(2))+2*DP.margin),e.tailoredTopY=i.nodeContentSize.height,e.tailoredBottomY=0,_>0&&(e.tailoredTopY=i.nodeContentSize.height+_),f<-e.textDesiredHeight&&(e.tailoredBottomY=e.textDesiredHeight+f),!0},e._recordPlaceholderInfo=function(t,e){if(t>=this._lettersInfo.length){var i=new lU;this._lettersInfo.push(i)}this._lettersInfo[t].char=e,this._lettersInfo[t].hash=""+zM(e,0)+DP.hash,this._lettersInfo[t].valid=!1},e._recordLetterInfo=function(t,e,i,n){if(i>=this._lettersInfo.length){var r=new lU;this._lettersInfo.push(r)}var s=""+zM(e,0)+DP.hash;this._lettersInfo[i].line=n,this._lettersInfo[i].char=e,this._lettersInfo[i].hash=s,this._lettersInfo[i].valid=DP.fontAtlas.getLetter(s).valid,this._lettersInfo[i].x=t.x,this._lettersInfo[i].y=t.y},e._getFirstWordLen=function(t,e,i,n,r){var s=UM(i,n);if(FM(s)||"\n"===s||kM(s))return 1;var a=1,o=DP.fontAtlas.getLetterDefinitionForChar(s,DP);if(!o)return a;for(var h=o.xAdvance*t.bmfontScale+e.spacingX,u=n+1;u<r&&(s=UM(i,u),o=DP.fontAtlas.getLetterDefinitionForChar(s,DP));++u){if(h+o.offsetX*t.bmfontScale+o.w*t.bmfontScale>e.maxLineWidth&&!kM(s)&&e.maxLineWidth>0)return a;if(h+=o.xAdvance*t.bmfontScale+e.spacingX,"\n"===s||kM(s)||FM(s))break;a++}return a},e._computeAlignmentOffset=function(t,e,i){switch(e.linesOffsetX.length=0,e.letterOffsetY=0,e.horizontalAlign){case xL.LEFT:for(var n=0;n<e.numberOfLines;++n)e.linesOffsetX.push(0);break;case xL.CENTER:for(var r=0,s=e.linesWidth.length;r<s;r++)e.linesOffsetX.push((i.nodeContentSize.width-e.linesWidth[r])/2);break;case xL.RIGHT:for(var a=0,o=e.linesWidth.length;a<o;a++)e.linesOffsetX.push(i.nodeContentSize.width-e.linesWidth[a])}if(e.letterOffsetY=i.nodeContentSize.height,e.verticalAlign!==wL.TOP){var h=i.nodeContentSize.height-e.textDesiredHeight+e.lineHeight*this._getFontScale(t,e)-t.originFontSize*this._fontScale*t.bmfontScale;e.verticalAlign===wL.BOTTOM?e.letterOffsetY-=h:e.letterOffsetY-=h/2}},e._getFontScale=function(t,e){return e.overFlow===RL.SHRINK?t.bmfontScale:1},e._isVerticalClamp=function(t,e,i){return e.textDesiredHeight>i.nodeContentSize.height},e._isHorizontalClamp=function(t,e,i,n,r){for(var s=!1,a=0,o=VM(n);a<o;++a){var h=r._lettersInfo[a];if(h.valid){var u=DP.fontAtlas.getLetterDefinitionForChar(h.char,DP);if(!u)continue;var l=h.x+u.w*t.bmfontScale,c=h.line;if(e.textWidthTemp>0)if(e.wrapping){if(e.linesWidth[c]>i.nodeContentSize.width&&(l>i.nodeContentSize.width||l<0)){s=!0;break}}else if(l>i.nodeContentSize.width){s=!0;break}}}return s},e._isHorizontalNeedShrink=function(t,e){for(var i=0,n=t.linesWidth.length;i<n;++i)if(t.linesWidth[i]>e.nodeContentSize.width)return!0;return!1},e._shrinkLabelToContentSize=function(t,e,i,n,r){for(var s=0,a=0|t.actualFontSize,o=0;s<a;){var h=o=s+a+1>>1;if(h<=0)break;t.bmfontScale=h/(t.originFontSize*this._fontScale),this._multilineTextWrap(t,e,i,n,this._getFirstWordLen),this._computeAlignmentOffset(t,e,i),r(t,e,i,n,this)?a=o-1:s=o}s>=0&&this._scaleFontSizeDown(t,e,i,n,s)},e._scaleFontSizeDown=function(t,e,i,n,r){var s=!0;r||(r=.1,s=!1),t.actualFontSize=r,s&&(this._updateFontScale(t),this._multilineTextWrap(t,e,i,n,this._getFirstWordLen))},e._updateQuads=function(t,e,i,n,r,s){for(var a=t.spriteFrame?t.spriteFrame.texture:DP.fontAtlas.getTexture(),o=n.uiTransAnchorX*i.nodeContentSize.width,h=n.uiTransAnchorY*i.nodeContentSize.height,u=0,l=VM(r);u<l;++u){var c=this._lettersInfo[u];if(c.valid){var _=DP.fontAtlas.getLetter(c.hash);if(_){this._tmpRect.height=_.h,this._tmpRect.width=_.w,this._tmpRect.x=_.u,this._tmpRect.y=_.v;var f=c.y+e.letterOffsetY;if(e.textHeightTemp>0){if(f>e.tailoredTopY){var d=f-e.tailoredTopY;this._tmpRect.y+=d,this._tmpRect.height-=d,f-=d}f-this._tmpRect.height*t.bmfontScale<e.tailoredBottomY&&e.overFlow===RL.CLAMP&&(this._tmpRect.height=f<e.tailoredBottomY?0:(f-e.tailoredBottomY)/t.bmfontScale)}var p=c.line,m=c.x+_.w/2*t.bmfontScale+e.linesOffsetX[p];if(e.textWidthTemp>0&&this._isHorizontalClamped(e,i,m,p)&&e.overFlow===RL.CLAMP&&(this._tmpRect.width=0),this._tmpRect.height>0&&this._tmpRect.width>0){var g=this._determineRect(t),v=c.x+e.linesOffsetX[c.line],y=n.quadCount;n.quadCount+=4,this.updateQuatCount(n),s(t,i,n,y,a,this._tmpRect,g,v-o,f-h)}}else tt(16353)}}return!0},e._isHorizontalClamped=function(t,e,i,n){var r=t.linesWidth[n],s=i>e.nodeContentSize.width||i<0;return t.wrapping?r>e.nodeContentSize.width&&s:s},e._determineRect=function(t){var e=t.spriteFrame;if(!e)return!1;var i=e.isRotated(),n=e.getOriginalSize(),r=e.getRect(),s=e.getOffset(),a=s.x+(n.width-r.width)/2,o=s.y-(n.height-r.height)/2;if(i){var h=this._tmpRect.x;this._tmpRect.x=r.x+r.height-this._tmpRect.y-this._tmpRect.height-o,this._tmpRect.y=h+r.y-a,this._tmpRect.y<0&&(this._tmpRect.height+=o)}else this._tmpRect.x+=r.x-a,this._tmpRect.y+=r.y+o;return i},t}();cU.instance=void 0,cU.instance=new cU;var _U=new IP(64,64),fU=new yP(null),dU=null,pU=null,mU=null,gU=null,vU=null,yU={updateProcessingData:function(t,e,i,n,r,s){t.fontSize=r.fontSize,t.actualFontSize=r.fontSize,t.originFontSize=mU?mU.fontSize:r.fontSize,e.horizontalAlign=r.horizontalAlign,e.verticalAlign=r.verticalAlign,e.spacingX=r.spacingX;var a=r.overflow;e.overFlow=a,e.lineHeight=r.lineHeight,i.nodeContentSize.width=s.width,i.nodeContentSize.height=s.height,a===RL.NONE?(e.wrapping=!1,i.nodeContentSize.width+=2*DP.margin,i.nodeContentSize.height+=2*DP.margin):a===RL.RESIZE_HEIGHT?(e.wrapping=!0,i.nodeContentSize.height+=2*DP.margin):e.wrapping=r.enableWrapText,n.uiTransAnchorX=s.anchorX,n.uiTransAnchorY=s.anchorY,DP.lineHeight=r.lineHeight,DP.fontSize=r.fontSize,t.spriteFrame=gU,t.fntConfig=mU,t.fontFamily=DP.fontFamily,t.color.set(r.color)},updateRenderData:function(t){if(t.renderData&&dU!==t){if(t.renderData.vertDirty){pU=(dU=t).node._uiProps.uiTransformComp;var e=t.renderData,i=cU.instance,n=t.textStyle,r=t.textLayout,s=t.textLayoutData,a=t.textRenderData;n.fontScale=yB.getScaleX(),this._updateFontFamily(t),this.updateProcessingData(n,r,s,a,t,pU),this._updateLabelInfo(t),n.fontDesc=DP.fontDesc,i.processingString(!0,n,r,s,t.string),a.quadCount=0,i.generateRenderInfo(!0,n,r,s,a,t.string,this.generateVertexData),e.dataLength!==a.quadCount&&(this.resetRenderData(t),e.dataLength=a.quadCount,e.resize(e.dataLength,e.dataLength/2*3));for(var o=e.data,h=0,u=a.quadCount;h<u;h++)o[h]=a.vertexBuffer[h];var l=e.indexCount;this.createQuadIndices(l),e.chunk.setIndexBuffer(vU),dU.actualFontSize=n.actualFontSize,pU.setContentSize(s.nodeContentSize),this.updateUVs(t),e.vertDirty=!1,dU=null,this._resetProperties()}t.spriteFrame&&t.renderData.updateRenderData(t,t.spriteFrame)}},updateUVs:function(t){for(var e=t.renderData,i=e.chunk.vb,n=e.vertexCount,r=e.data,s=3,a=0;a<n;a++){var o=r[a];i[s]=o.u,i[s+1]=o.v,s+=9}},updateColor:function(){},resetRenderData:function(t){var e=t.renderData;e.dataLength=0,e.resize(0,0)},generateVertexData:function(t,e,i,n,r,s,a,o,h){var u=n,l=t.bmfontScale,c=i.vertexBuffer,_=r.width,f=r.height,d=s.width,p=s.height,m=0,g=0,v=0,y=0;a?(m=s.x/_,y=(s.x+p)/_,g=(s.y+d)/f,v=s.y/f,c[u].u=m,c[u].v=v,c[u+1].u=m,c[u+1].v=g,c[u+2].u=y,c[u+2].v=v,c[u+3].u=y,c[u+3].v=g):(m=s.x/_,y=(s.x+d)/_,g=(s.y+p)/f,v=s.y/f,c[u].u=m,c[u].v=g,c[u+1].u=y,c[u+1].v=g,c[u+2].u=m,c[u+2].v=v,c[u+3].u=y,c[u+3].v=v),c[u].x=o,c[u].y=h-p*l,c[u+1].x=o+d*l,c[u+1].y=h-p*l,c[u+2].x=o,c[u+2].y=h,c[u+3].x=o+d*l,c[u+3].y=h},_updateFontFamily:function(t){var e=t.font;gU=e.spriteFrame,mU=e.fntConfig,DP.fontAtlas=e.fontDefDictionary,DP.fontAtlas||(t.cacheMode===IL.CHAR?DP.fontAtlas=_U:DP.fontAtlas=fU),wB.packToDynamicAtlas(t,gU)},_updateLabelInfo:function(){DP.hash="",DP.margin=0},_resetProperties:function(){mU=null,gU=null,DP.hash="",DP.margin=0},createQuadIndices:function(t){if(t%6==0){var e=t/6;vU=new Uint16Array(t);for(var i=0,n=0;n<e;n++)vU[i++]=0+4*n,vU[i++]=1+4*n,vU[i++]=2+4*n,vU[i++]=1+4*n,vU[i++]=3+4*n,vU[i++]=2+4*n}else it(16308)}},SU=new En(255,255,255,255),TU={createData:function(t){var e=t.requestRenderData();return e.resize(0,0),e},fillBuffers:function(t){var e=t.node;SU.set(t.color),SU.a=255*e._uiProps.opacity,Gf(e,0,t.renderData,SU)},appendQuad:function(t,e,i,n,r,s,a){var o=t.renderData;if(o){var h=o.dataLength;o.dataLength+=4,o.resize(o.dataLength,o.dataLength/2*3);var u=o.data,l=e.width,c=e.height,_=i.width,f=i.height,d=0,p=0,m=0,g=0;n?(d=i.x/l,g=(i.x+f)/l,p=(i.y+_)/c,m=i.y/c,u[h].u=d,u[h].v=m,u[h+1].u=d,u[h+1].v=p,u[h+2].u=g,u[h+2].v=m,u[h+3].u=g,u[h+3].v=p):(d=i.x/l,g=(i.x+_)/l,p=(i.y+f)/c,m=i.y/c,u[h].u=d,u[h].v=p,u[h+1].u=g,u[h+1].v=p,u[h+2].u=d,u[h+2].v=m,u[h+3].u=g,u[h+3].v=m),u[h].x=r,u[h].y=s-f*a,u[h+1].x=r+_*a,u[h+1].y=s-f*a,u[h+2].x=r,u[h+2].y=s,u[h+3].x=r+_*a,u[h+3].y=s}}};Xt(TU,yU);var AU=null,bU=jt(yU,{getAssemblerData:function(){return AU||(AU=new IP(1024,1024)),AU.getTexture()},_updateFontFamily:function(t){DP.fontAtlas=AU,DP.fontFamily=this._getFontFamily(t),t.enableOutline&&t.outlineWidth>0?(DP.isOutlined=!0,DP.margin=t.outlineWidth,DP.out=t.outlineColor.clone(),DP.out.a=t.outlineColor.a*t.color.a/255):(DP.isOutlined=!1,DP.margin=0)},_getFontFamily:function(t){var e="Arial";return t.useSystemFont?e=t.fontFamily||"Arial":t.font&&(e=t.font._nativeAsset||"Arial"),e},_updateLabelInfo:function(t){DP.fontDesc=this._getFontDesc(),DP.color=t.color,DP.hash=function(t){var e=t.color.toHEX(),i="";return t.isOutlined&&t.margin>0&&(i=i+t.margin+t.out.toHEX()),""+t.fontSize+t.fontFamily+e+i}(DP)},_getFontDesc:function(){return DP.fontSize.toString()+"px "+DP.fontFamily}}),EU=new En(255,255,255,255),CU={createData:function(t){var e=t.requestRenderData();return e.resize(0,0),e},fillBuffers:function(t){if(t.renderData){var e=t.node;EU.a=255*e._uiProps.opacity,Gf(e,0,t.renderData,EU)}},updateColor:function(){}};Xt(CU,bU);var xU=OL.Overflow,wU={updateProcessingData:function(t,e,i,n,r,s){t.isSystemFontUsed=r.useSystemFont,t.fontSize=r.fontSize,i.nodeContentSize.width=i.canvasSize.width=s.width,i.nodeContentSize.height=i.canvasSize.height=s.height,e.lineHeight=r.lineHeight,e.overFlow=r.overflow,r.overflow===xU.NONE?e.wrapping=!1:r.overflow===xU.RESIZE_HEIGHT?e.wrapping=!0:e.wrapping=r.enableWrapText,t.isBold=r.isBold,t.isItalic=r.isItalic,t.isUnderline=r.isUnderline,t.underlineHeight=r.underlineHeight,r.enableOutline&&r.outlineWidth>0?(t.isOutlined=!0,t.outlineColor.set(r.outlineColor),t.outlineWidth=r.outlineWidth):t.isOutlined=!1,r.enableShadow&&(r.shadowBlur>0||!Ni(r.shadowOffset.x,0)||!Ni(r.shadowOffset.y,0))?(t.hasShadow=!0,t.shadowColor.set(r.shadowColor),t.shadowBlur=r.shadowBlur,t.shadowOffsetX=r.shadowOffset.x,t.shadowOffsetY=r.shadowOffset.y):t.hasShadow=!1,t.color.set(r.color),n.texture=r.spriteFrame,n.uiTransAnchorX=s.anchorX,n.uiTransAnchorY=s.anchorY,e.horizontalAlign=r.horizontalAlign,e.verticalAlign=r.verticalAlign},getAssemblerData:function(){var t=OL._canvasPool.get();return t.canvas.width=t.canvas.height=1,t},resetAssemblerData:function(t){t&&OL._canvasPool.put(t)},updateRenderData:function(t){if(t.renderData){if(t.renderData.vertDirty){var e=t.node._uiProps.uiTransformComp,i=cU.instance,n=t.textStyle,r=t.textLayout,s=t.textLayoutData,a=t.textRenderData;n.fontScale=yB.getScaleX(),this.updateProcessingData(n,r,s,a,t,e),i.setCanvasUsed(t.assemblerData.canvas,t.assemblerData.context),n.fontFamily=this._updateFontFamily(t),this._resetDynamicAtlas(t),i.processingString(!1,n,r,s,t.string),i.generateRenderInfo(!1,n,r,s,a,t.string,this.generateVertexData);var o=t.renderData;o.textureDirty=!0,this._calDynamicAtlas(t,s),t.actualFontSize=n.actualFontSize,e.setContentSize(s.nodeContentSize);var h=o.data;h[0]=a.vertexBuffer[0],h[1]=a.vertexBuffer[1],h[2]=a.vertexBuffer[2],h[3]=a.vertexBuffer[3],this.updateUVs(t),t.renderData.vertDirty=!1,t.contentWidth=s.nodeContentSize.width}t.spriteFrame&&t.renderData.updateRenderData(t,t.spriteFrame)}},generateVertexData:function(t,e,i){var n=i.vertexBuffer,r=e.nodeContentSize.width,s=e.nodeContentSize.height,a=i.uiTransAnchorX*r,o=i.uiTransAnchorY*s;n[0].x=-a,n[0].y=-o,n[1].x=r-a,n[1].y=-o,n[2].x=-a,n[2].y=s-o,n[3].x=r-a,n[3].y=s-o},updateVertexData:function(){},updateUVs:function(){},_updateFontFamily:function(t){return t.useSystemFont?t.fontFamily||"Arial":t.font&&t.font._nativeAsset||"Arial"},_calDynamicAtlas:function(t,e){if(!(t.cacheMode!==OL.CacheMode.BITMAP||e.canvasSize.width<=0||e.canvasSize.height<=0)){var i=t.ttfSpriteFrame;wB.packToDynamicAtlas(t,i)}},_resetDynamicAtlas:function(t){if(t.cacheMode===OL.CacheMode.BITMAP){var e=t.ttfSpriteFrame;wB.deleteAtlasSpriteFrame(e),e._resetDynamicAtlasFrame()}}},RU=En.WHITE.clone(),IU=Uint16Array.from([0,1,2,1,3,2]),DU={createData:function(t){var e=t.requestRenderData();e.dataLength=4,e.resize(4,6),t.textRenderData.quadCount=4;var i=e.chunk.vb;i[3]=i[21]=i[22]=i[31]=0,i[4]=i[12]=i[13]=i[30]=1;for(var n=5,r=0;r<4;r++)En.toArray(i,RU,n),n+=9;return e.chunk.setIndexBuffer(IU),e},fillBuffers:function(t){for(var e=t.renderData,i=e.chunk,n=e.data,r=t.node,s=i.vb,a=r.worldMatrix,o=e.floatStride,h=0,u=n.length,l=0;l<u;l++){var c=n[l],_=c.x,f=c.y,d=a.m03*_+a.m07*f+a.m15;d=d?1/d:1,s[0+(h=l*o)]=(a.m00*_+a.m04*f+a.m12)*d,s[h+1]=(a.m01*_+a.m05*f+a.m13)*d,s[h+2]=(a.m02*_+a.m06*f+a.m14)*d}var p=i.vertexOffset,m=i.meshBuffer,g=i.meshBuffer.iData,v=m.indexOffset;g[v++]=p,g[v++]=p+1,g[v++]=p+2,g[v++]=p+2,g[v++]=p+1,g[v++]=p+3,m.indexOffset+=6},updateVertexData:function(t){var e=t.renderData;if(e){var i=t.node._uiProps.uiTransformComp,n=i.width,r=i.height,s=i.anchorX*n,a=i.anchorY*r,o=e.data;o[0].x=-s,o[0].y=-a,o[1].x=n-s,o[1].y=-a,o[2].x=-s,o[2].y=r-a,o[3].x=n-s,o[3].y=r-a}},updateUVs:function(t){var e=t.renderData;if(e&&t.ttfSpriteFrame){var i=e.chunk.vb,n=t.ttfSpriteFrame.uv;i[3]=n[0],i[4]=n[1],i[12]=n[2],i[13]=n[3],i[21]=n[4],i[22]=n[5],i[30]=n[6],i[31]=n[7]}},updateColor:function(){}};Xt(DU,wU);var BU=t("l",{getAssembler:function(t){var e=DU;return t.font instanceof SP?e=TU:t.cacheMode===OL.CacheMode.CHAR&&(e=CU),e}});OL.Assembler=BU;var MU=PF.FillType,PU=new Vn,OU=Uint16Array.from([0,1,2,1,3,2]),LU={updateRenderData:function(t){var e=t.spriteFrame;wB.packToDynamicAtlas(t,e);var i=t.renderData;if(i&&e){if(!i.vertDirty)return;var n=t.fillStart,r=t.fillRange;r<0&&(n+=r,r=-r),r=(r=(r=n+r)>1?1:r)<0?0:r;var s=(n=(n=n>1?1:n)<0?0:n)+(r=(r-=n)<0?0:r);s=s>1?1:s,this.updateUVs(t,n,s),this.updateVertexData(t,n,s),i.updateRenderData(t,e)}},updateUVs:function(t,e,i){var n=t.spriteFrame,r=t.renderData.chunk.vb,s=n.width,a=n.height,o=n.rect,h=0,u=0,l=0,c=0,_=0,f=0,d=0,p=0,m=0,g=0;switch(n.isRotated()?(h=o.x/s,u=(o.y+o.width)/a,l=_=h,d=m=(o.x+o.height)/s,f=g=u,c=p=o.y/a):(h=o.x/s,u=(o.y+o.height)/a,l=d=h,_=m=(o.x+o.width)/s,c=f=u,p=g=o.y/a),t.fillType){case MU.HORIZONTAL:r[3]=l+(_-l)*e,r[4]=c+(f-c)*e,r[12]=l+(_-l)*i,r[13]=c+(f-c)*i,r[21]=d+(m-d)*e,r[22]=p+(g-p)*e,r[30]=d+(m-d)*i,r[31]=p+(g-p)*i;break;case MU.VERTICAL:r[3]=l+(d-l)*e,r[4]=c+(p-c)*e,r[12]=_+(m-_)*e,r[13]=f+(g-f)*e,r[21]=l+(d-l)*i,r[22]=c+(p-c)*i,r[30]=_+(m-_)*i,r[31]=f+(g-f)*i;break;default:it(2626)}},updateVertexData:function(t,e,i){var n=t.renderData.data,r=t.node._uiProps.uiTransformComp,s=r.width,a=r.height,o=r.anchorX*s,h=r.anchorY*a,u=-o,l=-h,c=s-o,_=a-h,f=0;switch(t.fillType){case MU.HORIZONTAL:f=u+(c-u)*i,u+=(c-u)*e,c=f;break;case MU.VERTICAL:f=l+(_-l)*i,l+=(_-l)*e,_=f;break;default:it(2626)}n[0].x=u,n[0].y=l,n[1].x=c,n[1].y=l,n[2].x=u,n[2].y=_,n[3].x=c,n[3].y=_},createData:function(t){var e=t.requestRenderData();e.dataLength=4,e.resize(4,6),e.chunk.setIndexBuffer(OU);for(var i,n=f(e.data);!(i=n()).done;)i.value.z=0;return e},updateWorldVertexData:function(t,e){t.node.getWorldMatrix(PU);for(var i=t.renderData.floatStride,n=t.renderData.data,r=e.vb,s=0,a=0;a<4;a++){var o=n[a],h=o.x,u=o.y,l=PU.m03*h+PU.m07*u+PU.m15;l=l?1/l:1,r[s=a*i]=(PU.m00*h+PU.m04*u+PU.m12)*l,r[s+1]=(PU.m01*h+PU.m05*u+PU.m13)*l,r[s+2]=(PU.m02*h+PU.m06*u+PU.m14)*l}},fillBuffers:function(t){var e=t.renderData,i=e.chunk;(t._flagChangedVersion!==t.node.flagChangedVersion||e.vertDirty)&&(this.updateWorldVertexData(t,i),e.vertDirty=!1,t._flagChangedVersion=t.node.flagChangedVersion),i.bufferId;var n=i.vertexOffset,r=i.meshBuffer,s=i.meshBuffer.iData,a=r.indexOffset;s[a++]=n,s[a++]=n+1,s[a++]=n+2,s[a++]=n+2,s[a++]=n+1,s[a++]=n+3,r.indexOffset+=6},updateColor:function(t){for(var e=t.renderData,i=e.chunk.vb,n=e.floatStride,r=5,s=t.color,a=s.r/255,o=s.g/255,h=s.b/255,u=t.node._uiProps.opacity,l=0;l<4;l++)i[r]=a,i[r+1]=o,i[r+2]=h,i[r+3]=u,r+=n}},NU=2*Math.PI,FU=1e-6,kU=new Vn,GU=[new jn,new jn,new jn,new jn],VU=new Array(4),UU=new Array(8),zU=[new jn,new jn,new jn,new jn],HU=[new jn,new jn,new jn,new jn],WU=new jn,XU=[new jn,new jn,new jn,new jn],jU=null;function YU(t,e,i,n,r,s,a){var o=Math.sin(s);o=Math.abs(o)>FU?o:0;var h=Math.cos(s),u=0,l=0;if(0!==(h=Math.abs(h)>FU?h:0)){if(u=o/h,(t-r.x)*h>0){var c=r.y+u*(t-r.x);a[0].x=t,a[0].y=c}if((e-r.x)*h>0){var _=r.y+u*(e-r.x);a[2].x=e,a[2].y=_}}if(0!==o){if(l=h/o,(n-r.y)*o>0){var f=r.x+l*(n-r.y);a[3].x=f,a[3].y=n}if((i-r.y)*o>0){var d=r.x+l*(i-r.y);a[1].x=d,a[1].y=i}}}function qU(t,e){var i=e.x-t.x,n=e.y-t.y;if(0===i&&0===n)return 0;if(0===i)return n>0?.5*Math.PI:1.5*Math.PI;var r=Math.atan(n/i);return i<0&&(r+=Math.PI),r}function KU(t,e,i,n,r){var s=VU,a=s[0],o=s[1],h=s[2],u=s[3];t[e].x=i.x,t[e].y=i.y,t[e+1].x=n.x,t[e+1].y=n.y,t[e+2].x=r.x,t[e+2].y=r.y,QU((i.x-a)/(h-a),(i.y-o)/(u-o),t,e),QU((n.x-a)/(h-a),(n.y-o)/(u-o),t,e+1),QU((r.x-a)/(h-a),(r.y-o)/(u-o),t,e+2)}function QU(t,e,i,n){var r=UU,s=r[0]+(r[2]-r[0])*t,a=r[4]+(r[6]-r[4])*t,o=r[1]+(r[3]-r[1])*t,h=r[5]+(r[7]-r[5])*t,u=i[n];u.u=s+(a-s)*e,u.v=o+(h-o)*e}for(var ZU={useModel:!1,createData:function(t){return t.requestRenderData()},updateRenderData:function(t){var e=t.spriteFrame;wB.packToDynamicAtlas(t,e),this.updateUVs(t);var i=t.renderData;if(i&&e){if(!i.vertDirty)return;var n=i.data,r=t.fillStart,s=t.fillRange;for(s<0&&(r+=s,s=-s);r>=1;)r-=1;for(;r<0;)r+=1;var a=(r*=NU)+(s*=NU);!function(t){var e=t.node._uiProps.uiTransformComp,i=e.width,n=e.height,r=e.anchorX*i,s=e.anchorY*n,a=-r,o=-s,h=i-r,u=n-s,l=VU;l[0]=a,l[1]=o,l[2]=h,l[3]=u;var c=t.fillCenter,_=WU.x=Math.min(Math.max(0,c.x),1)*(h-a)+a,f=WU.y=Math.min(Math.max(0,c.y),1)*(u-o)+o;GU[0].x=GU[3].x=a,GU[1].x=GU[2].x=h,GU[0].y=GU[1].y=o,GU[2].y=GU[3].y=u;for(var d=0,p=XU;d<p.length;d++){var m=p[d];jn.set(m,0,0)}_!==l[0]&&jn.set(XU[0],3,0),_!==l[2]&&jn.set(XU[2],1,2),f!==l[1]&&jn.set(XU[1],0,1),f!==l[3]&&jn.set(XU[3],2,3)}(t),function(t){var e=t.width,i=t.height,n=t.getRect(),r=0,s=0,a=0,o=0,h=UU;t.isRotated()?(r=n.x/e,s=(n.x+n.height)/e,a=n.y/i,o=(n.y+n.width)/i,h[0]=h[2]=r,h[4]=h[6]=s,h[3]=h[7]=o,h[1]=h[5]=a):(r=n.x/e,s=(n.x+n.width)/e,a=n.y/i,o=(n.y+n.height)/i,h[0]=h[4]=r,h[2]=h[6]=s,h[1]=h[3]=o,h[5]=h[7]=a)}(e),YU(VU[0],VU[2],VU[1],VU[3],WU,r,zU),YU(VU[0],VU[2],VU[1],VU[3],WU,r+s,HU);for(var o=0,h=0;h<4;++h){var u=XU[h];if(u)if(s>=NU)i.dataLength=o+3,KU(n,o,WU,GU[u.x],GU[u.y]),o+=3;else{var l=qU(WU,GU[u.x]),c=qU(WU,GU[u.y]);c<l&&(c+=NU),l-=NU,c-=NU;for(var _=0;_<3;++_)l>=a||(l>=r?(i.dataLength=o+3,KU(n,o,WU,GU[u.x],c>=a?HU[h]:GU[u.y]),o+=3):c>r&&(c<=a?(i.dataLength=o+3,KU(n,o,WU,zU[h],GU[u.y]),o+=3):(i.dataLength=o+3,KU(n,o,WU,zU[h],HU[h]),o+=3))),l+=NU,c+=NU}}0===o&&(i.dataLength=0),i.resize(o,o),i.updateRenderData(t,e)}},createQuadIndices:function(t){jU=null,jU=new Uint16Array(t);for(var e=0,i=0;i<t;i++)jU[e++]=i},fillBuffers:function(t){var e=t.node,i=t.renderData,n=i.chunk;(t._flagChangedVersion!==e.flagChangedVersion||i.vertDirty)&&(this.updateWorldVertexAndUVData(t,n),i.vertDirty=!1,t._flagChangedVersion=e.flagChangedVersion),this.updateColorLate(t),n.bufferId;for(var r=n.vertexOffset,s=n.meshBuffer,a=n.meshBuffer.iData,o=s.indexOffset,h=0;h<i.indexCount;h++)a[o+h]=r+h;s.indexOffset+=i.indexCount,s.setDirty()},updateWorldUVData:function(t){for(var e=t.renderData,i=e.floatStride,n=e.data,r=e.chunk.vb,s=0;s<n.length;s++){var a=s*i;r[a+3]=n[s].u,r[a+4]=n[s].v}},updateWorldVertexAndUVData:function(t,e){t.node.getWorldMatrix(kU);for(var i=t.renderData,n=i.floatStride,r=t.renderData.data,s=e.vb,a=i.vertexCount,o=0,h=0;h<a;h++){var u=r[h],l=u.x,c=u.y,_=kU.m03*l+kU.m07*c+kU.m15;_=_?1/_:1,s[o+0]=(kU.m00*l+kU.m04*c+kU.m12)*_,s[o+1]=(kU.m01*l+kU.m05*c+kU.m13)*_,s[o+2]=(kU.m02*l+kU.m06*c+kU.m14)*_,s[o+3]=u.u,s[o+4]=u.v,o+=n}},updateUVs:function(t){t.renderData.vertDirty=!0,t.markForUpdateRenderData()},updateColorLate:function(t){for(var e=t.renderData,i=e.chunk.vb,n=e.floatStride,r=e.vertexCount,s=5,a=t.color,o=a.r/255,h=a.g/255,u=a.b/255,l=t.node._uiProps.opacity,c=0;c<r;c++)i[s]=o,i[s+1]=h,i[s+2]=u,i[s+3]=l,s+=n},updateColor:function(){}},JU=Uint16Array.from([0,1,2,1,3,2]),$U={createData:function(t){var e=t.requestRenderData();return e.dataLength=4,e.resize(4,6),e.chunk.setIndexBuffer(JU),e},updateRenderData:function(t){var e=t.spriteFrame;wB.packToDynamicAtlas(t,e),this.updateUVs(t);var i=t.renderData;i&&e&&(i.vertDirty&&this.updateVertexData(t),i.updateRenderData(t,e))},updateWorldVerts:function(t,e){for(var i=t.renderData,n=e.vb,r=i.data,s=t.node.worldMatrix,a=s.m00,o=s.m01,h=s.m02,u=s.m03,l=s.m04,c=s.m05,_=s.m06,f=s.m07,d=s.m12,p=s.m13,m=s.m14,g=s.m15,v=i.floatStride,y=0,S=r.length,T=0;T<S;++T){var A=r[T],b=A.x,E=A.y,C=u*b+f*E+g;C=C?1/C:1,n[0+(y=T*v)]=(a*b+l*E+d)*C,n[y+1]=(o*b+c*E+p)*C,n[y+2]=(h*b+_*E+m)*C}},fillBuffers:function(t){if(null!==t){var e=t.renderData,i=e.chunk;(t._flagChangedVersion!==t.node.flagChangedVersion||e.vertDirty)&&(this.updateWorldVerts(t,i),e.vertDirty=!1,t._flagChangedVersion=t.node.flagChangedVersion);var n=i.vertexOffset,r=i.meshBuffer,s=i.meshBuffer.iData,a=r.indexOffset,o=n;s[a++]=o,s[a++]=o+1,s[a++]=o+2,s[a++]=o+1,s[a++]=o+3,s[a++]=o+2,r.indexOffset+=6}},updateVertexData:function(t){var e=t.renderData;if(e){var i=t.node._uiProps.uiTransformComp,n=e.data,r=i.width,s=i.height,a=i.anchorX*r,o=i.anchorY*s,h=0,u=0,l=0,c=0;if(t.trim)h=-a,u=-o,l=r-a,c=s-o;else{var _=t.spriteFrame,f=_.originalSize,d=r/f.width,p=s/f.height,m=_.trimmedBorder;h=m.x*d-a,u=m.z*p-o,l=r+m.y*d-a,c=s+m.w*p-o}n[0].x=h,n[0].y=u,n[1].x=l,n[1].y=u,n[2].x=h,n[2].y=c,n[3].x=l,n[3].y=c,e.vertDirty=!0}},updateUVs:function(t){if(t.spriteFrame){var e=t.renderData.chunk.vb,i=t.spriteFrame.uv;e[3]=i[0],e[4]=i[1],e[12]=i[2],e[13]=i[3],e[21]=i[4],e[22]=i[5],e[30]=i[6],e[31]=i[7]}},updateColor:function(t){for(var e=t.renderData,i=e.chunk.vb,n=5,r=t.color,s=r.r/255,a=r.g/255,o=r.b/255,h=r.a/255,u=0;u<4;u++,n+=e.floatStride)i[n]=s,i[n+1]=a,i[n+2]=o,i[n+3]=h}},tz=[],ez=0;ez<4;ez++)tz.push({x:0,y:0,z:0,u:0,v:0,color:new En});var iz,nz,rz,sz,az,oz,hz,uz={createData:function(t){var e=t.requestRenderData();return e.dataLength=16,e.resize(16,54),this.QUAD_INDICES=new Uint16Array(54),this.createQuadIndices(4,4),e.chunk.setIndexBuffer(this.QUAD_INDICES),e},createQuadIndices:function(t,e){for(var i=0,n=0;n<t-1;n++)for(var r=0;r<e-1;r++){var s=n*e+r;this.QUAD_INDICES[i++]=s,this.QUAD_INDICES[i++]=s+1,this.QUAD_INDICES[i++]=s+e,this.QUAD_INDICES[i++]=s+1,this.QUAD_INDICES[i++]=s+1+e,this.QUAD_INDICES[i++]=s+e}},updateRenderData:function(t){var e=t.spriteFrame;wB.packToDynamicAtlas(t,e),this.updateUVs(t);var i=t.renderData;i&&e&&(i.vertDirty&&this.updateVertexData(t),i.updateRenderData(t,e))},updateVertexData:function(t){var e=t.renderData,i=e.data,n=t.node._uiProps.uiTransformComp,r=n.width,s=n.height,a=n.anchorX*r,o=n.anchorY*s,h=t.spriteFrame,u=h.insetLeft,l=h.insetRight,c=h.insetTop,_=h.insetBottom,f=r-u-l,d=s-c-_,p=r/(u+l),m=s/(c+_);p=Number.isNaN(p)||p>1?1:p,m=Number.isNaN(m)||m>1?1:m,f=f<0?0:f,d=d<0?0:d,tz[0].x=-a,tz[0].y=-o,tz[1].x=u*p-a,tz[1].y=_*m-o,tz[2].x=tz[1].x+f,tz[2].y=tz[1].y+d,tz[3].x=r-a,tz[3].y=s-o;for(var g=0;g<4;g++)for(var v=0;v<4;v++){var y=4*g+v;y<e.dataLength&&g<tz.length&&v<tz.length&&(i[y].x=tz[v].x,i[y].y=tz[g].y)}},fillBuffers:function(t){var e=t.renderData,i=e.chunk;(t._flagChangedVersion!==t.node.flagChangedVersion||e.vertDirty)&&(this.updateWorldVertexData(t,i),e.vertDirty=!1,t._flagChangedVersion=t.node.flagChangedVersion),i.bufferId;for(var n=i.vertexOffset,r=i.meshBuffer,s=i.meshBuffer.iData,a=r.indexOffset,o=0;o<3;++o)for(var h=0;h<3;++h){var u=n+4*o+h;s[a++]=u,s[a++]=u+1,s[a++]=u+4,s[a++]=u+1,s[a++]=u+5,s[a++]=u+4}r.indexOffset=a},updateWorldVertexData:function(t,e){for(var i=t.renderData,n=i.floatStride,r=i.data,s=e.vb,a=t.node.worldMatrix,o=a.m00,h=a.m01,u=a.m02,l=a.m03,c=a.m04,_=a.m05,f=a.m06,d=a.m07,p=a.m12,m=a.m13,g=a.m14,v=a.m15,y=0,S=0;S<4;++S)for(var T=r[4*S],A=0;A<4;++A){var b=r[A].x,E=T.y,C=l*b+d*E+v;C=C?1/C:1,s[0+(y=(4*S+A)*n)]=(o*b+c*E+p)*C,s[y+1]=(h*b+_*E+m)*C,s[y+2]=(u*b+f*E+g)*C}},updateUVs:function(t){if(t.spriteFrame)for(var e=t.renderData,i=e.chunk.vb,n=e.floatStride,r=t.spriteFrame.uvSliced,s=3,a=0;a<16;a++)i[s]=r[a].u,i[s+1]=r[a].v,s+=n},updateColor:function(t){for(var e=t.renderData,i=e.chunk.vb,n=e.floatStride,r=5,s=t.color,a=s.r/255,o=s.g/255,h=s.b/255,u=t.node._uiProps.opacity,l=0;l<16;l++)i[r]=a,i[r+1]=o,i[r+2]=h,i[r+3]=u,r+=n}},lz=new Vn,cz=0,_z=[],fz=null;function dz(t){return t&&(t.insetTop>0||t.insetBottom>0||t.insetLeft>0||t.insetRight>0)?2:0}var pz={createData:function(t){return t.requestRenderData()},updateRenderData:function(t){var e=t.renderData,i=t.spriteFrame;if(i&&e&&e.vertDirty){var n=t.node._uiProps.uiTransformComp,r=Math.abs(n.width),s=Math.abs(n.height),a=i.getRect(),o=i.insetLeft,h=i.insetRight,u=a.width-o-h,l=i.insetTop,c=i.insetBottom,_=a.height-l-c,f=r-o-h,d=s-l-c;f=f>0?f:0,d=d>0?d:0;var p=0===u?f:f/u,m=0===_?d:d/_,g=dz(i),v=Math.ceil(m+g),y=Math.ceil(p+g);e.dataLength=4*v*y,this.updateVerts(t,f,d,v,y),e.vertexCount!==v*y*4&&(t.renderEntity.colorDirty=!0),e.resize(v*y*4,v*y*6),e.updateRenderData(t,i)}},createQuadIndices:function(t){if(t%6==0){var e=t/6;fz=new Uint16Array(t);for(var i=0,n=0;n<e;n++)fz[i++]=0+4*n,fz[i++]=1+4*n,fz[i++]=2+4*n,fz[i++]=1+4*n,fz[i++]=3+4*n,fz[i++]=2+4*n}else it(16308)},updateUVs:function(t){t.renderData.vertDirty=!0,t.markForUpdateRenderData()},fillBuffers:function(t){var e=t.node,i=t.renderData,n=i.chunk;if(null!==n){(t._flagChangedVersion!==e.flagChangedVersion||i.vertDirty)&&(this.updateWorldVertexAndUVData(t,n),i.vertDirty=!1,t._flagChangedVersion=e.flagChangedVersion),this.updateColorLate(t),n.bufferId;for(var r=n.vertexOffset,s=n.meshBuffer,a=n.meshBuffer.iData,o=s.indexOffset,h=0;h<i.indexCount;h+=6)a[o++]=r,a[o++]=r+1,a[o++]=r+2,a[o++]=r+1,a[o++]=r+3,a[o++]=r+2,r+=4,s.indexOffset+=6;s.setDirty()}},updateWorldUVData:function(t){for(var e=t.renderData,i=e.floatStride,n=e.data,r=e.chunk.vb,s=0;s<n.length;s++){var a=s*i;r[a+3]=n[s].u,r[a+4]=n[s].v}},updateWorldVertexAndUVData:function(t,e){t.node.getWorldMatrix(lz);for(var i=t.renderData,n=i.floatStride,r=i.data,s=e.vb,a=r.length,o=0;o<a;o++){var h=r[o].x,u=r[o].y,l=r[o].z,c=lz.m03*h+lz.m07*u+lz.m11*l+lz.m15;c=c?1/c:1;var _=o*n;s[_]=(lz.m00*h+lz.m04*u+lz.m08*l+lz.m12)*c,s[_+1]=(lz.m01*h+lz.m05*u+lz.m09*l+lz.m13)*c,s[_+2]=(lz.m02*h+lz.m06*u+lz.m10*l+lz.m14)*c}this.updateWorldUVData(t)},updateVerts:function(t,e,i,n,r){var s,a,o=t.node._uiProps.uiTransformComp,h=t.renderData.data,u=t.spriteFrame,l=u.rect,c=Math.abs(o.width),_=Math.abs(o.height),f=o.anchorX*c,d=o.anchorY*_,p=u.insetLeft,m=u.insetRight,g=l.width-p-m,v=u.insetTop,y=u.insetBottom,S=l.height-v-y,T=o.width/(p+m)>1?1:o.width/(p+m),A=o.height/(v+y)>1?1:o.height/(v+y);s=g>0?Math.floor(1e3*e)/1e3%g==0?g:e%g:e,a=S>0?Math.floor(1e3*i)/1e3%S==0?S:i%S:i,_z.length=0,cz=Math.max(n+1,r+1);for(var b=0;b<cz;b++)_z.push({x:0,y:0,z:0,u:0,v:0,color:new En});var E=dz(u);if(0===E)for(var C=0;C<cz;C++)_z[C].x=C>=r?c-f:C*g-f,_z[C].y=C>=n?_-d:C*S-d;else for(var x=0;x<cz;x++)0===x?_z[x].x=-f:1===x?_z[x].x=p*T-f:x>1&&x<r-1?_z[x].x=g>0?p*T-f+g*(x-1):p+e-f:x===r-1?_z[x].x=p*T-f+s+g*(x-2):x>=r&&(_z[x].x=Math.min(p+e+m,c)-f),0===x?_z[x].y=-d:1===x?_z[x].y=y*A-d:x>1&&x<n-1?_z[x].y=S>0?y*A-d+S*(x-1):y+i-d:x===n-1?_z[x].y=y*A-d+a+S*(x-2):x>=n&&(_z[x].y=Math.min(y+i+v,_)-d);for(var w=0,R=0,I=0,D=0,B=0;B<n;++B){I=_z[B].y,D=_z[B+1].y;for(var M=0;M<r;++M){w=_z[M].x,R=_z[M+1].x;var P=4*(B*r+M);h[P].x=w,h[P].y=I,h[P+1].x=R,h[P+1].y=I,h[P+2].x=w,h[P+2].y=D,h[P+3].x=R,h[P+3].y=D}}var O=u.rotated;u.uv;var L=u.uvSliced;iz=L[0],nz=L[1],rz=L[2],sz=L[3],az=L[4],oz=L[8],hz=L[12];for(var N=0,F=0,k=0===g?e:e/g,G=0===S?i:i/S,V=[],U=[],z=0;z<n;++z){F=i>S?i>=(E>0?z:z+1)*S?1:G%1:G;for(var H=0;H<r;++H){N=e>g?e>=(E>0?H:H+1)*g?1:k%1:k,O?(0===E?(V[0]=az.u,V[1]=az.u,V[2]=az.u+(oz.u-az.u)*F,U[0]=nz.v,U[1]=nz.v+(rz.v-nz.v)*N,U[2]=nz.v):(0===z?(V[0]=iz.u,V[1]=iz.u,V[2]=az.u):z<n-1?(V[0]=az.u,V[1]=az.u,V[2]=az.u+(oz.u-az.u)*F):z===n-1&&(V[0]=oz.u,V[1]=oz.u,V[2]=hz.u),0===H?(U[0]=iz.v,U[1]=nz.v,U[2]=iz.v):H<r-1?(U[0]=nz.v,U[1]=nz.v+(rz.v-nz.v)*N,U[2]=nz.v):H===r-1&&(U[0]=rz.v,U[1]=sz.v,U[2]=rz.v)),V[3]=V[2],U[3]=U[1]):(0===E?(V[0]=nz.u,V[1]=nz.u+(rz.u-nz.u)*N,V[2]=nz.u,U[0]=az.v,U[1]=az.v,U[2]=az.v+(oz.v-az.v)*F):(0===H?(V[0]=iz.u,V[1]=nz.u,V[2]=iz.u):H<r-1?(V[0]=nz.u,V[1]=nz.u+(rz.u-nz.u)*N,V[2]=nz.u):H===r-1&&(V[0]=rz.u,V[1]=sz.u,V[2]=rz.u),0===z?(U[0]=iz.v,U[1]=iz.v,U[2]=az.v):z<n-1?(U[0]=az.v,U[1]=az.v,U[2]=az.v+(oz.v-az.v)*F):z===n-1&&(U[0]=oz.v,U[1]=oz.v,U[2]=hz.v)),V[3]=V[1],U[3]=U[2]);var W=4*(z*r+H);h[W].u=V[0],h[W].v=U[0],h[W+1].u=V[1],h[W+1].v=U[1],h[W+2].u=V[2],h[W+2].v=U[2],h[W+3].u=V[3],h[W+3].v=U[3]}}},updateColorLate:function(t){for(var e=t.renderData,i=e.chunk.vb,n=e.floatStride,r=e.vertexCount,s=5,a=t.color,o=a.r/255,h=a.g/255,u=a.b/255,l=t.node._uiProps.opacity,c=0;c<r;c++)i[s]=o,i[s+1]=h,i[s+2]=u,i[s+3]=l,s+=n},updateColor:function(){}},mz=PF.Type,gz=PF.FillType,vz=t("s",{getAssembler:function(t){var e=$U,i=t;switch(i.type){case mz.SLICED:e=uz;break;case mz.TILED:e=pz;break;case mz.FILLED:e=i.fillType===gz.RADIAL?ZU:LU}return e}});PF.Assembler=vz;var yz=[Fw.EventType.MOUSE_DOWN,Fw.EventType.MOUSE_MOVE,Fw.EventType.MOUSE_UP,Fw.EventType.MOUSE_WHEEL,Fw.EventType.MOUSE_LEAVE,Fw.EventType.MOUSE_ENTER],Sz=[Fw.EventType.TOUCH_START,Fw.EventType.TOUCH_MOVE,Fw.EventType.TOUCH_END,Fw.EventType.TOUCH_CANCEL];new(function(){function t(){this.priority=xw.UI,this._isListDirty=!1,this._inDispatchCount=0,this._pointerEventProcessorList=[],this._processorListToAdd=[],this._processorListToRemove=[],kw._registerEventDispatcher(this),gI.callbacksInvoker.on(lI.ADD_POINTER_EVENT_PROCESSOR,this.addPointerEventProcessor,this),gI.callbacksInvoker.on(lI.REMOVE_POINTER_EVENT_PROCESSOR,this.removePointerEventProcessor,this),gI.callbacksInvoker.on(lI.MARK_LIST_DIRTY,this._markListDirty,this)}var e=t.prototype;return e.onThrowException=function(){this._inDispatchCount=0},e.dispatchEvent=function(t){var e=t.type;return Sz.includes(e)?this.dispatchEventTouch(t):!yz.includes(e)||this.dispatchEventMouse(t)},e.addPointerEventProcessor=function(t){0===this._inDispatchCount?this._pointerEventProcessorList.includes(t)||(this._pointerEventProcessorList.push(t),this._isListDirty=!0):this._processorListToAdd.includes(t)||this._processorListToAdd.push(t),de(this._processorListToRemove,t)},e.removePointerEventProcessor=function(t){0===this._inDispatchCount?(de(this._pointerEventProcessorList,t),this._isListDirty=!0):this._processorListToRemove.includes(t)||this._processorListToRemove.push(t),de(this._processorListToAdd,t)},e.dispatchEventMouse=function(t){this._inDispatchCount++,this._sortPointerEventProcessorList();for(var e=this._pointerEventProcessorList,i=e.length,n=!0,r=0;r<i;++r){var s=e[r];if(s.isEnabled&&s.shouldHandleEventMouse&&s._handleEventMouse(t)){if(n=!1,!t.preventSwallow)break;t.preventSwallow=!1}}return--this._inDispatchCount<=0&&this._updatePointerEventProcessorList(),n},e.dispatchEventTouch=function(t){this._inDispatchCount++,this._sortPointerEventProcessorList();for(var e=this._pointerEventProcessorList,i=e.length,n=t.touch,r=!0,s=0;s<i;++s){var a=e[s];if(a.isEnabled&&a.shouldHandleEventTouch)if(t.type===kx.TOUCH_START){if(a._handleEventTouch(t)){if(a.isEnabled)a.claimedTouchIdList.push(n.getID());else{var o=new Wx([t.touch],!0,kx.TOUCH_CANCEL);o.touch=t.touch,a.dispatchEvent(o),a.claimedTouchIdList.length=0}if(r=!1,!t.preventSwallow)break;t.preventSwallow=!1}}else if(a.claimedTouchIdList.length>0){var h=a.claimedTouchIdList.indexOf(n.getID());if(-1!==h){if(a._handleEventTouch(t),t.type!==kx.TOUCH_END&&t.type!==kx.TOUCH_CANCEL||(_e(a.claimedTouchIdList,h),t.preventSwallow||this._removeClaimedTouch(s+1,n.getID())),r=!1,!t.preventSwallow)break;t.preventSwallow=!1}}}return--this._inDispatchCount<=0&&this._updatePointerEventProcessorList(),r},e._removeClaimedTouch=function(t,e){for(var i=this._pointerEventProcessorList,n=i.length,r=t;r<n;++r){var s=i[r],a=s.claimedTouchIdList.indexOf(e);-1!==a&&_e(s.claimedTouchIdList,a)}},e._updatePointerEventProcessorList=function(){for(var t=this._processorListToAdd,e=t.length,i=0;i<e;++i)this.addPointerEventProcessor(t[i]);t.length=0;for(var n=this._processorListToRemove,r=n.length,s=0;s<r;++s)this.removePointerEventProcessor(n[s]);n.length=0},e._sortPointerEventProcessorList=function(){if(this._isListDirty){for(var t=this._pointerEventProcessorList,e=t.length,i=0;i<e;++i){var n=t[i],r=n.node;if(r._uiProps){var s=r._uiProps.uiTransformComp;n.cachedCameraPriority=s.cameraPriority}}t.sort(this._sortByPriority),this._isListDirty=!1}},e._sortByPriority=function(t,e){var i=t.node,n=e.node;if(!(e&&n&&n.activeInHierarchy&&n._uiProps.uiTransformComp))return-1;if(!(t&&i&&i.activeInHierarchy&&i._uiProps.uiTransformComp))return 1;if(t.cachedCameraPriority!==e.cachedCameraPriority)return e.cachedCameraPriority-t.cachedCameraPriority;for(var r=i,s=n,a=!1;(null===(o=r.parent)||void 0===o?void 0:o.uuid)!==(null===(h=s.parent)||void 0===h?void 0:h.uuid);){var o,h,u,l,c,_;r=null===(null===(u=r)||void 0===u||null===(l=u.parent)||void 0===l?void 0:l.parent)?(a=!0)&&n:r&&r.parent,s=null===(null===(c=s)||void 0===c||null===(_=c.parent)||void 0===_?void 0:_.parent)?(a=!0)&&i:s&&s.parent}if(r.uuid===s.uuid){if(r.uuid===n.uuid)return-1;if(r.uuid===i.uuid)return 1}var f=r?r.getSiblingIndex():0,d=s?s.getSiblingIndex():0;return a?f-d:d-f},e._markListDirty=function(){this._isListDirty=!0},t}());var Tz=new L_(null),Az=new Vn,bz=t("x",function(){function t(t){var e=this;this._screens=[],this._staticVBBuffer=null,this._bufferAccessors=new Map,this._currBID=-1,this._indexStart=0,this._emptyMaterial=new zT,this._currRenderData=null,this._currMaterial=this._emptyMaterial,this._currTexture=null,this._currSampler=null,this._currStaticRoot=null,this._currComponent=null,this._currTransform=null,this._currTextureHash=0,this._currSamplerHash=0,this._currLayer=0,this._currDepthStencilStateStage=null,this._currIsStatic=!1,this._currHash=0,this._currIsMiddleware=!1,this._middlewareEnableBatch=!1,this._middlewareBuffer=null,this._middlewareIndexStart=0,this._middlewareIndexCount=0,this._pOpacity=1,this._opacityDirty=0,this._descriptorSetCache=new Cz,this._meshDataArray=[],this._maskClearModel=null,this._maskClearMtl=null,this._maskModelMesh=null,this._root=t,this.device=t.device,this._batches=new Is(64),this._drawBatchPool=new ws((function(){return new yV}),128,(function(t){return t.destroy(e)}))}var e=t.prototype;return e.initialize=function(){return!0},e.destroy=function(){for(var t=0;t<this._batches.length;t++)this._batches.array[t]&&this._batches.array[t].destroy(this);this._batches.destroy();for(var e,i=f(this._bufferAccessors.values());!(e=i()).done;)e.value.destroy();this._bufferAccessors.clear(),this._drawBatchPool&&this._drawBatchPool.destroy(),this._descriptorSetCache.destroy(),iO.sharedManager.destroy(),this._maskClearModel&&this._maskModelMesh&&(S.director.root.destroyModel(this._maskClearModel),this._maskModelMesh.destroy()),this._maskClearMtl&&this._maskClearMtl.destroy()},e.syncRootNodesToNative=function(){},e.addScreen=function(t){this._screens.push(t),this._screens.sort(this._screenSort)},e.removeScreen=function(t){var e=this._screens.indexOf(t);-1!==e&&this._screens.splice(e,1)},e.sortScreens=function(){this._screens.sort(this._screenSort)},e.getFirstRenderCamera=function(t){if(t.scene&&t.scene.renderScene)for(var e=t.scene.renderScene.cameras,i=0;i<e.length;i++){var n=e[i];if(n.visibility&t.layer)return n}return null},e.update=function(){for(var t=this._screens,e=0,i=0;i<t.length;++i){var n=t[i],r=n._getRenderScene();if(n.enabledInHierarchy&&r){this._opacityDirty=0,this._pOpacity=1,this.walk(n.node),this.autoMergeBatches(this._currComponent),this.resetRenderStates();var s=0;if(this._batches.length>e)for(;e<this._batches.length;++e){var a=this._batches.array[e];if(a.model)for(var o=a.model.subModels,h=0;h<o.length;h++)o[h].priority=s++;else a.descriptorSet=this._descriptorSetCache.getDescriptorSet(a);r.addBatch(a)}}}},e.uploadBuffers=function(){if(this._batches.length>0){for(var t=this._meshDataArray.length,e=0;e<t;e++)this._meshDataArray[e].uploadBuffers();for(var i,n=f(this._bufferAccessors.values());!(i=n()).done;){var r=i.value;r.uploadBuffers(),r.reset()}this._descriptorSetCache.update()}},e.reset=function(){for(var t=0;t<this._batches.length;++t){var e=this._batches.array[t];e.isStatic||(e.clear(),this._drawBatchPool.free(e))}for(var i,n=f(this._bufferAccessors.values());!(i=n()).done;)i.value.reset();for(var r=this._meshDataArray.length,s=0;s<r;s++)this._meshDataArray[s].freeIAPool();this._meshDataArray.length=0,this._staticVBBuffer=null,this._currBID=-1,this._indexStart=0,this._currHash=0,this._currLayer=0,this._currRenderData=null,this._currMaterial=this._emptyMaterial,this._currTexture=null,this._currSampler=null,this._currComponent=null,this._currTransform=null,this._batches.clear(),iO.sharedManager.reset()},e.switchBufferAccessor=function(t){void 0===t&&(t=PP);var e=t===PP?36:kP(t);if(!this._staticVBBuffer||this._staticVBBuffer.vertexFormatBytes!==e){var i=this._bufferAccessors.get(e);i||(i=new YP(this.device,t),this._bufferAccessors.set(e,i)),this._staticVBBuffer=i,this._currBID=-1}return this._staticVBBuffer},e.registerBufferAccessor=function(t,e){this._bufferAccessors.set(t,e)},e.updateBuffer=function(t,e){var i=this.switchBufferAccessor(t);this._currBID!==e&&(this._currBID=e,this._indexStart=i.getMeshBuffer(e).indexOffset)},e.commitComp=function(t,e,i,n,r){var s,a=0,o=-1;if(e&&e.chunk){if(!e.isValid())return;a=e.dataHash,s=e.material,o=e.chunk.bufferId}t.stencilStage===qP.ENTER_LEVEL||t.stencilStage===qP.ENTER_LEVEL_INVERTED?this._insertMaskBatch(t):t.stencilStage=iO.sharedManager.stage;var h=t.stencilStage;this._currHash===a&&0!==a&&this._currMaterial===s&&this._currDepthStencilStateStage===h||(this.autoMergeBatches(this._currComponent),e&&!e._isMeshBuffer&&this.updateBuffer(e.vertexFormat,o),this._currRenderData=e,this._currHash=e?e.dataHash:0,this._currComponent=t,this._currTransform=r,this._currMaterial=t.getRenderMaterial(0),this._currDepthStencilStateStage=h,this._currLayer=t.node.layer,i?(this._currTexture=i.getGFXTexture(),this._currSampler=i.getGFXSampler(),this._currTextureHash=i.getHash(),this._currSamplerHash=this._currSampler.hash):(this._currTexture=null,this._currSampler=null,this._currTextureHash=0,this._currSamplerHash=0)),n.fillBuffers(t,this)},e.commitIA=function(t,e,i,n,r){this._currMaterial!==this._emptyMaterial&&(this.autoMergeBatches(this._currComponent),this.resetRenderStates());var s=null,a=0;t&&(t.stencilStage=iO.sharedManager.stage,s=null!==t.customMaterial?iO.sharedManager.getStencilStage(t.stencilStage,n):iO.sharedManager.getStencilStage(t.stencilStage),a=iO.sharedManager.getStencilHash(t.stencilStage));var o=this._currStaticRoot?this._currStaticRoot._requireDrawBatch():this._drawBatchPool.alloc();o.visFlags=t.node.layer,o.inputAssembler=e,o.useLocalData=r||null,i&&(o.texture=i.getGFXTexture(),o.sampler=i.getGFXSampler(),o.textureHash=i.getHash(),o.samplerHash=o.sampler.hash),o.fillPasses(n||null,s,a,null),this._batches.push(o)},e.commitMiddleware=function(t,e,i,n,r,s,a){var o=r.getGFXTexture();a&&this._middlewareEnableBatch&&this._middlewareBuffer===e&&this._currTexture===o&&this._currMaterial.hash===s.hash&&this._middlewareIndexStart+this._middlewareIndexCount===i&&this._currLayer===t.node.layer?this._middlewareIndexCount+=n:(this.autoMergeBatches(this._currComponent),this.resetRenderStates(),this._currComponent=t,this._currTexture=o,this._currSampler=r.getGFXSampler(),this._currTextureHash=r.getHash(),this._currLayer=t.node.layer,this._currSamplerHash=this._currSampler.hash,this._currHash=0,this._currTransform=a?null:t.node,this._middlewareEnableBatch=a,this._middlewareBuffer=e,this._currMaterial=s,this._middlewareIndexStart=i,this._middlewareIndexCount=n),this._currIsMiddleware=!0},e.commitModel=function(t,e,i){this._currMaterial!==this._emptyMaterial&&(this.autoMergeBatches(this._currComponent),this.resetRenderStates());var n=null,r=0;i&&(t.stencilStage===qP.ENTER_LEVEL||t.stencilStage===qP.ENTER_LEVEL_INVERTED?this._insertMaskBatch(t):t.stencilStage=iO.sharedManager.stage,n=iO.sharedManager.getStencilStage(t.stencilStage,i),r=iO.sharedManager.getStencilHash(t.stencilStage));var s=S.director.getTotalFrames();e&&(e.updateTransform(s),e.updateUBOs(s));for(var a=0;a<e.subModels.length;a++){var o=this._drawBatchPool.alloc(),h=e.subModels[a];o.visFlags=t.node.layer,o.model=e,o.texture=null,o.sampler=null,o.useLocalData=null,n||(n=null),o.fillPasses(i,n,r,h.patches),o.inputAssembler=h.inputAssembler,o.model.visFlags=o.visFlags,o.descriptorSet=h.descriptorSet,this._batches.push(o)}},e.setupStaticBatch=function(t,e){this.finishMergeBatches(),this._staticVBBuffer=e,this.currStaticRoot=t},e.endStaticBatch=function(){this.finishMergeBatches(),this.currStaticRoot=null,this._staticVBBuffer=null,this.switchBufferAccessor()},e.commitStaticBatch=function(t){this._batches.concat(t.drawBatchList),this.finishMergeBatches()},e.autoMergeBatches=function(t){if(this._currIsMiddleware)this.mergeBatchesForMiddleware(t);else{var e=this._currMaterial;if(e){var i,n=this._currRenderData,r=this._staticVBBuffer;if(n&&n._isMeshBuffer)i=n.requestIA(this.device),-1===this._meshDataArray.indexOf(n)&&this._meshDataArray.push(n);else if(r){var s=this._currBID,a=r.getMeshBuffer(s);if(!a)return;var o=a.indexOffset-this._indexStart;if(o<=0)return;this._indexStart,a.indexOffset,a.setDirty(),(i=a.requireFreeIA(this.device)).firstIndex=this._indexStart,i.indexCount=o,this._indexStart=a.indexOffset}if(this._currBID=-1,i&&this._currTexture){var h=null,u=0;t&&(h=null!==t.customMaterial?iO.sharedManager.getStencilStage(t.stencilStage,e):iO.sharedManager.getStencilStage(t.stencilStage),u=iO.sharedManager.getStencilHash(t.stencilStage));var l=this._currStaticRoot?this._currStaticRoot._requireDrawBatch():this._drawBatchPool.alloc();l.visFlags=this._currLayer,l.texture=this._currTexture,l.sampler=this._currSampler,l.inputAssembler=i,l.useLocalData=this._currTransform,l.textureHash=this._currTextureHash,l.samplerHash=this._currSamplerHash,l.fillPasses(e,h,u,null),this._batches.push(l)}}}},e.mergeBatchesForMiddleware=function(t){var e,i;t.stencilStage=iO.sharedManager.stage,i=null!==t.customMaterial?iO.sharedManager.getStencilStage(t.stencilStage,this._currMaterial):iO.sharedManager.getStencilStage(t.stencilStage),e=iO.sharedManager.getStencilHash(t.stencilStage);var n=this._currStaticRoot?this._currStaticRoot._requireDrawBatch():this._drawBatchPool.alloc();n.visFlags=t.node.layer;var r=this._middlewareBuffer.requireFreeIA(this.device);r.firstIndex=this._middlewareIndexStart,r.indexCount=this._middlewareIndexCount,n.inputAssembler=r,n.useLocalData=this._currTransform,n.texture=this._currTexture,n.sampler=this._currSampler,n.textureHash=this._currTextureHash,n.samplerHash=this._currSamplerHash,n.fillPasses(this._currMaterial||null,i,e,null),this._batches.push(n),this._currIsMiddleware=!1,this._middlewareBuffer=null},e.forceMergeBatches=function(t,e,i){this._currMaterial=t,e?(this._currTexture=e.getGFXTexture(),this._currSampler=e.getGFXSampler(),this._currTextureHash=e.getHash(),this._currSamplerHash=this._currSampler.hash):(this._currTexture=this._currSampler=null,this._currTextureHash=this._currSamplerHash=0),this._currLayer=i.node.layer,this.autoMergeBatches(i)},e.resetRenderStates=function(){this._currMaterial=this._emptyMaterial,this._currRenderData=null,this._currTexture=null,this._currComponent=null,this._currTransform=null,this._currTextureHash=0,this._currSamplerHash=0,this._currLayer=0},e.finishMergeBatches=function(){this.autoMergeBatches(),this.resetRenderStates()},e.flushMaterial=function(t){this._currMaterial=t},e.walk=function(t,e){if(void 0===e&&(e=0),t.activeInHierarchy){var i=t.children,n=t._uiProps,r=n.uiComp,s=this._pOpacity,a=s,o=r&&r.color?r.color.a/255:1;if(this._pOpacity=a*=o*n.localOpacity,n.setOpacity(a),!Ni(a,0,Oi)){if(n.colorDirty&&this._opacityDirty++,r&&r.enabledInHierarchy&&r.fillBuffers(this),this._opacityDirty&&r&&!r.useVertexOpacity&&r.renderData&&r.renderData.vertexCount>0){!function(t,e){for(var i,n,r,s=t.vertexFormat,a=t.chunk.vb,o=0,h=0;h<s.length;++h){if(i=s[h],(n=j_[i.format]).hasAlpha)if(r=t.floatStride,n.size/n.count==1)for(var u=~~Fi(Math.round(255*e),0,255),l=o;l<a.length;l+=r)a[l]=(4294967040&a[l]|u)>>>0;else if(n.size/n.count==4)for(var c=o+3;c<a.length;c+=r)a[c]=e;o+=n.size>>2}}(r.renderData,a);var h=r.renderData.getMeshBuffer();h&&h.setDirty()}if(i.length>0&&!t._static)for(var u=0;u<i.length;++u){var l=i[u];this.walk(l,e)}n.colorDirty&&(this._opacityDirty--,n.colorDirty=!1)}this._pOpacity=s,r&&r.enabledInHierarchy&&(r.postUpdateAssembler(this),(r.stencilStage===qP.ENTER_LEVEL||r.stencilStage===qP.ENTER_LEVEL_INVERTED)&&iO.sharedManager.getMaskStackSize()>0&&(this.autoMergeBatches(this._currComponent),this.resetRenderStates(),iO.sharedManager.exitMask())),e+=1}},e._screenSort=function(t,e){return t.node.getSiblingIndex()-e.node.getSiblingIndex()},e._releaseDescriptorSetCache=function(t){this._descriptorSetCache.releaseDescriptorSetCache(t)},e._createClearModel=function(){if(!this._maskClearModel){this._maskClearMtl=bT.get("default-clear-stencil"),this._maskClearModel=S.director.root.createModel(RR);var t=kP(BP),e=Ff.gfxDevice,i=e.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,4*t,t)),n=new Float32Array([-1,-1,0,1,-1,0,-1,1,0,1,1,0]);i.update(n);var r=e.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,6*Uint16Array.BYTES_PER_ELEMENT,Uint16Array.BYTES_PER_ELEMENT)),s=new Uint16Array([0,1,2,2,1,3]);r.update(s),this._maskModelMesh=new FD([i],BP,wc.TRIANGLE_LIST,r),this._maskModelMesh.subMeshIdx=0,this._maskClearModel.initSubModel(0,this._maskModelMesh,this._maskClearMtl)}},e._insertMaskBatch=function(t){this.autoMergeBatches(this._currComponent),this.resetRenderStates(),this._createClearModel(),this._maskClearModel.node=this._maskClearModel.transform=t.node;var e=iO.sharedManager;e.pushMask(1);var i=e.clear(t),n=null,r=0,s=this._maskClearMtl;s&&(n=e.getStencilStage(i,s),r=e.getStencilHash(i));var a=this._maskClearModel,o=S.director.getTotalFrames();a&&(a.updateTransform(o),a.updateUBOs(o));for(var h=0;h<a.subModels.length;h++){var u=this._drawBatchPool.alloc(),l=a.subModels[h];u.visFlags=t.node.layer,u.model=a,u.texture=null,u.sampler=null,u.useLocalData=null,n||(n=null),u.fillPasses(s,n,r,l.patches),u.inputAssembler=l.inputAssembler,u.model.visFlags=u.visFlags,u.descriptorSet=l.descriptorSet,this._batches.push(u)}e.enableMask()},e.syncMeshBuffersToNative=function(){},n(t,[{key:"nativeObj",get:function(){return this._nativeObj}},{key:"currBufferAccessor",get:function(){return this._staticVBBuffer||(this._staticVBBuffer=this.switchBufferAccessor()),this._staticVBBuffer}},{key:"batches",get:function(){return this._batches}},{key:"currStaticRoot",set:function(t){this._currStaticRoot=t}},{key:"currIsStatic",set:function(t){this._currIsStatic=t}}]),t}()),Ez=function(){function t(){this._descriptorSet=null,this._transform=null,this._textureHash=0,this._samplerHash=0,this._localBuffer=null,this._transformUpdate=!0;var t=Ff.gfxDevice;this._localData=new Float32Array(ev.COUNT),this._localBuffer=t.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,ev.SIZE,ev.SIZE))}var e=t.prototype;return e.initialize=function(t){var e=Ff.gfxDevice;this._transform=t.useLocalData,this._textureHash=t.textureHash,this._samplerHash=t.samplerHash,Tz.layout=t.passes[0].localSetLayout,this._descriptorSet=e.createDescriptorSet(Tz),this._descriptorSet.bindBuffer(ev.BINDING,this._localBuffer);var i=Bg.SAMPLER_SPRITE;this._descriptorSet.bindTexture(i,t.texture),this._descriptorSet.bindSampler(i,t.sampler),this._descriptorSet.update(),this._transformUpdate=!0},e.updateTransform=function(t){t!==this._transform&&(this._transform=t,this._transformUpdate=!0,this.uploadLocalData())},e.equals=function(t,e,i){return this._transform===t&&this._textureHash===e&&this._samplerHash===i},e.reset=function(){this._transform=null,this._textureHash=0,this._samplerHash=0},e.destroy=function(){this._localBuffer&&(this._localBuffer.destroy(),this._localBuffer=null),this._descriptorSet&&(this._descriptorSet.destroy(),this._descriptorSet=null),this._localData=null},e.isValid=function(){return this._transform&&this._transform.isValid},e.uploadLocalData=function(){var t=this._transform;if((t.hasChangedFlags||t.isTransformDirty())&&(t.updateWorldTransform(),this._transformUpdate=!0),this._transformUpdate){var e=t.worldMatrix;Vn.toArray(this._localData,e,ev.MAT_WORLD_OFFSET),Vn.invert(Az,e),Vn.transpose(Az,Az);var i=Vn.determinant(Az),n=1/Math.sqrt(i);Vn.multiplyScalar(Az,Az,n),Vn.toArray(this._localData,Az,ev.MAT_WORLD_IT_OFFSET),this._localBuffer.update(this._localData),this._transformUpdate=!1}},n(t,[{key:"descriptorSet",get:function(){return this._descriptorSet}}]),t}(),Cz=function(){function t(){this._descriptorSetCache=new Map,this._dsCacheHashByTexture=new Map,this._localDescriptorSetCache=[],this._localCachePool=new ws((function(){return new Ez}),16,(function(t){return t.destroy()}))}var e=t.prototype;return e.getDescriptorSet=function(t){if(S.director.root,t.useLocalData){for(var e=this._localDescriptorSetCache,i=0,n=e.length;i<n;i++){var r=e[i];if(r.equals(t.useLocalData,t.textureHash,t.samplerHash))return r.descriptorSet}var s=this._localCachePool.alloc();return s.initialize(t),this._localDescriptorSetCache.push(s),s.descriptorSet}var a=t.textureHash^t.samplerHash;if(this._descriptorSetCache.has(a))return this._descriptorSetCache.get(a);Tz.layout=t.passes[0].localSetLayout;var o=Ff.gfxDevice.createDescriptorSet(Tz),h=Bg.SAMPLER_SPRITE;return o.bindTexture(h,t.texture),o.bindSampler(h,t.sampler),o.update(),this._descriptorSetCache.set(a,o),this._dsCacheHashByTexture.set(t.textureHash,a),o},e.update=function(){var t=this._localDescriptorSetCache,e=t.length;if(0!==e){for(var i=[],n=0;n<e;n++){var r=t[n];if(r.isValid())r.uploadLocalData();else{r.reset();var s=t.indexOf(r);i.push(s)}}for(var a=i.length-1;a>=0;a--){var o=i[a],h=t[o];t.splice(o,1),this._localCachePool.free(h)}}},e.reset=function(){for(var t=this._localDescriptorSetCache,e=t.length,i=0;i<e;i++){var n=t[i];this._localCachePool.free(n)}this._localDescriptorSetCache.length=0},e.releaseDescriptorSetCache=function(t){var e=this._dsCacheHashByTexture.get(t);e&&this._descriptorSetCache.has(e)&&(this._descriptorSetCache.get(e).destroy(),this._descriptorSetCache.delete(e),this._dsCacheHashByTexture.delete(t))},e.destroy=function(){for(var t,e=f(this._descriptorSetCache.values());!(t=e()).done;)t.value.destroy();this._descriptorSetCache.clear(),this._dsCacheHashByTexture.clear(),this._localDescriptorSetCache.length=0,this._localCachePool.destroy()},t}();S.internal.Batcher2D=bz,t("y",function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(yV)),ct(HP.prototype,"MeshBuffer",["byteStart","vertexStart","indicesStart","request"].map((function(t){return{name:t,suggest:"please use meshBuffer.accessor."+t+" instead"}}))),ut(HP.prototype,"MeshBuffer",[{name:"indicesOffset",newName:"indexOffset"}]),lt(HP.prototype,"MeshBuffer",[{name:"vertexBuffers"},{name:"indexBuffer"}]),ut(bz.prototype,"Batcher2D",[{name:"currBufferBatch",newName:"currBufferAccessor"},{name:"acquireBufferBatch",newName:"switchBufferAccessor"}]),lt(vO.prototype,"MeshRenderData",[{name:"formatByte"},{name:"byteStart"},{name:"byteCount"}]),ut(vO.prototype,"MeshRenderData",[{name:"indicesStart",newName:"indexStart"}]),t("Q",function(t){function e(e){var i;return i=t.call(this,e)||this,tt(9006),i}return s(e,t),e}(vO)),S.UI={MeshBuffer:HP,spriteAssembler:vz,graphicsAssembler:aU,labelAssembler:BU,RenderData:gO,MeshRenderData:vO},EB.on(bB.EVENT_POST_SUBSYSTEM_INIT,(function(){Mz.init()}));var xz,wz,Rz,Iz,Dz,Bz,Mz=t("a6",function(){function t(){}return t.getSortingPriority=function(t,e){return void 0===t&&(t=0),void 0===e&&(e=0),(t+32768<<16|e+32768)>>>0},t.getLayerIndex=function(t){void 0===t&&(t=0);var e=0;return this.indexMap.has(t)?e=this.indexMap.get(t):it(2105),e},t.getLayerIndexByName=function(t){var e=this.getLayerByName(t);return this.getLayerIndex(e)},t.getLayerName=function(t){void 0===t&&(t=0);var e="";return this.nameMap.has(t)?e=this.nameMap.get(t):it(2105),e},t.getLayerByName=function(t){for(var e=this.nameMap.size,i=this.nameMap.keys(),n=0,r=0;r<e;r++)if(n=i.next().value,this.nameMap.get(n)===t)return n;return it(2106),0},t.isLayerValid=function(t){return!!this.indexMap.has(t)||(it(2105),!1)},t.getBuiltinLayers=function(){return[{id:0,name:"default",value:0}]},t.init=function(){var e=Me.querySettings(De.Category.ENGINE,"sortingLayers");e&&0!==e.length||(e=this.getBuiltinLayers()),t.resetState();for(var i=0;i<e.length;i++){var n=e[i];t.setLayer(n.id,n.name,n.value),t.Enum[n.name]=n.id}Ee.update(t.Enum),Ee.sortList(t.Enum,(function(e,i){return t.getLayerIndex(e.value)-t.getLayerIndex(i.value)}))},t.setLayer=function(t,e,i){this.nameMap.set(t,e),this.indexMap.set(t,i)},t.resetState=function(){for(var e=Object.keys(t.Enum),i=0;i<e.length;i++)delete t.Enum[t.Enum[e[i]]],delete t.Enum[e[i]];t.indexMap.clear(),t.nameMap.clear()},t}());Mz.nameMap=new Map,Mz.indexMap=new Map,Mz.Enum=Ee({default:0}),t("a7",(xz=eo("cc.Sorting"),wz=Lo(Mz.Enum),xz(Rz=ro((m((Iz=function(t){function e(){var e;return(e=t.call(this)||this)._sortingLayer=Dz&&Dz(),e._sortingOrder=Bz&&Bz(),e._modelRenderer=null,e}s(e,t);var i=e.prototype;return i.__preload=function(){this._modelRenderer=this.getComponent("cc.ModelRenderer"),this._modelRenderer||tt(16301,this.node.name),this._updateSortingPriority()},i._updateSortingPriority=function(){var t=Mz.getLayerIndex(this._sortingLayer),e=Mz.getSortingPriority(t,this._sortingOrder);this._modelRenderer&&this._modelRenderer.isValid&&(this._modelRenderer.priority=e)},n(e,[{key:"sortingLayer",get:function(){return this._sortingLayer},set:function(t){t!==this._sortingLayer&&Mz.isLayerValid(t)&&(this._sortingLayer=t,this._updateSortingPriority())}},{key:"sortingOrder",get:function(){return this._sortingOrder},set:function(t){t!==this._sortingOrder&&(this._sortingOrder=Fi(t,-32768,32767),this._updateSortingPriority())}}]),e}(mp)).prototype,"sortingLayer",[wz],Object.getOwnPropertyDescriptor(Iz.prototype,"sortingLayer"),Iz.prototype),Dz=ja(Iz.prototype,"_sortingLayer",[lo],(function(){return Mz.Enum.default})),Bz=ja(Iz.prototype,"_sortingOrder",[lo],(function(){return 0})),Rz=Iz))||Rz)||Rz));var Pz,Oz,Lz,Nz,Fz,kz,Gz,Vz,Uz,zz,Hz,Wz,Xz,jz,Yz,qz,Kz,Qz,Zz,Jz,$z,tH,eH,iH,nH,rH,sH,aH,oH,hH,uH,lH,cH,_H,fH,dH,pH,mH,gH,vH,yH,SH,TH=function(t){function e(){var e;return(e=t.call(this)||this)._morphRenderingInstance=null,e._usedMaterials=new Set,e}s(e,t);var i=e.prototype;return i.getMacroPatches=function(e){var i=t.prototype.getMacroPatches.call(this,e);if(this._morphRenderingInstance){var n=this._morphRenderingInstance.requiredPatches(e);if(n)return n.concat(null!=i?i:[])}return i},i.initSubModel=function(e,i,n){return t.prototype.initSubModel.call(this,e,i,this._launderMaterial(n))},i.destroy=function(){t.prototype.destroy.call(this),this._morphRenderingInstance=null},i.setSubModelMaterial=function(e,i){return t.prototype.setSubModelMaterial.call(this,e,this._launderMaterial(i))},i.setMorphRendering=function(t){this._morphRenderingInstance=t},i._updateLocalDescriptors=function(e,i){t.prototype._updateLocalDescriptors.call(this,e,i),this._morphRenderingInstance&&this._morphRenderingInstance.adaptPipelineState(e,i)},i._launderMaterial=function(t){return t},e}(RR),AH=eo,bH=no,EH=Lo,CH=co,xH=lo,wH=ET("specular-pass");function RH(t){var e=t.passes,i=S.rendering;cy()&&(wH=i.getPhaseID(i.getPassID("specular-pass"),"default"));for(var n=0;n<e.length;n++)if((!i||!i.enableEffectImport)&&e[n].phase===wH||cy()&&e[n].phaseID===wH)return n;return-1}var IH,DH,BH,MH,PH,OH,LH,NH,FH=Ee({OFF:0,ON:1}),kH=Ee({OFF:0,ON:1}),GH=(Pz=AH("cc.ModelBakeSettings"),Oz=CH("_recieveShadow"),Lz=EH(ii),Nz=EH(ri),Fz=EH(ri),kz=EH(Ee(pR)),Gz=EH(ri),Pz(((Jz=function(t){function e(){var e;return(e=t.call(this)||this).texture=zz&&zz(),e.uvParam=Hz&&Hz(),e._bakeable=Wz&&Wz(),e._castShadow=Xz&&Xz(),e._receiveShadow=jz&&jz(),e._lightmapSize=Yz&&Yz(),e._useLightProbe=qz&&qz(),e._bakeToLightProbe=Kz&&Kz(),e._reflectionProbeType=Qz&&Qz(),e._bakeToReflectionProbe=Zz&&Zz(),e.probeCubemap=null,e.probeBlendCubemap=null,e.probePlanarmap=null,e}return s(e,t),n(e,[{key:"bakeable",get:function(){return this._bakeable},set:function(t){this._bakeable=t}},{key:"castShadow",get:function(){return this._castShadow},set:function(t){this._castShadow=t}},{key:"receiveShadow",get:function(){return this._receiveShadow},set:function(t){this._receiveShadow=t}},{key:"lightmapSize",get:function(){return this._lightmapSize},set:function(t){this._lightmapSize=t}},{key:"useLightProbe",get:function(){return this._useLightProbe},set:function(t){this._useLightProbe=t,this.emit(e.USE_LIGHT_PROBE_CHANGED)}},{key:"bakeToLightProbe",get:function(){return this._bakeToLightProbe},set:function(t){this._bakeToLightProbe=t}},{key:"reflectionProbe",get:function(){return this._reflectionProbeType},set:function(t){this._reflectionProbeType=t,this.emit(e.REFLECTION_PROBE_CHANGED)}},{key:"bakeToReflectionProbe",get:function(){return this._bakeToReflectionProbe},set:function(t){this._bakeToReflectionProbe=t,this.emit(e.BAKE_TO_REFLECTION_PROBE_CHANGED)}}]),e}(Hs)).USE_LIGHT_PROBE_CHANGED="use_light_probe_changed",Jz.REFLECTION_PROBE_CHANGED="reflection_probe_changed",Jz.BAKE_TO_REFLECTION_PROBE_CHANGED="bake_to_reflection_probe_changed",zz=ja((Uz=Jz).prototype,"texture",[xH],(function(){return null})),Hz=ja(Uz.prototype,"uvParam",[xH],(function(){return new cn})),Wz=ja(Uz.prototype,"_bakeable",[xH],(function(){return!1})),Xz=ja(Uz.prototype,"_castShadow",[xH],(function(){return!1})),jz=ja(Uz.prototype,"_receiveShadow",[Oz],(function(){return!1})),Yz=ja(Uz.prototype,"_lightmapSize",[xH],(function(){return 64})),qz=ja(Uz.prototype,"_useLightProbe",[xH],(function(){return!1})),Kz=ja(Uz.prototype,"_bakeToLightProbe",[xH],(function(){return!0})),Qz=ja(Uz.prototype,"_reflectionProbeType",[xH],(function(){return pR.NONE})),Zz=ja(Uz.prototype,"_bakeToReflectionProbe",[xH],(function(){return!0})),m(Uz.prototype,"lightmapSize",[Lz],Object.getOwnPropertyDescriptor(Uz.prototype,"lightmapSize"),Uz.prototype),m(Uz.prototype,"useLightProbe",[Nz],Object.getOwnPropertyDescriptor(Uz.prototype,"useLightProbe"),Uz.prototype),m(Uz.prototype,"bakeToLightProbe",[Fz],Object.getOwnPropertyDescriptor(Uz.prototype,"bakeToLightProbe"),Uz.prototype),m(Uz.prototype,"reflectionProbe",[kz],Object.getOwnPropertyDescriptor(Uz.prototype,"reflectionProbe"),Uz.prototype),m(Uz.prototype,"bakeToReflectionProbe",[Gz],Object.getOwnPropertyDescriptor(Uz.prototype,"bakeToReflectionProbe"),Uz.prototype),Vz=Uz))||Vz),VH=t("ac",($z=AH("cc.MeshRenderer"),tH=bH(100),eH=EH(ni),iH=EH(ni),nH=EH(FH),rH=EH(kH),sH=EH(ZB),aH=EH(ri),$z(oH=tH(((SH=function(t){s(i,t);var e=i.prototype;function i(){var e;return(e=t.call(this)||this).bakeSettings=uH&&uH(),e._mesh=lH&&lH(),e._shadowCastingMode=cH&&cH(),e._shadowReceivingMode=_H&&_H(),e._shadowBias=fH&&fH(),e._shadowNormalBias=dH&&dH(),e._reflectionProbeId=pH&&pH(),e._reflectionProbeBlendId=mH&&mH(),e._reflectionProbeBlendWeight=gH&&gH(),e._enabledGlobalStandardSkinObject=vH&&vH(),e._reflectionProbeDataMap=null,e._subMeshShapesWeights=[],e._modelType=RR,e._model=null,e._morphInstance=null,e._enableMorph=yH&&yH(),Me.querySettings(De.Category.RENDERING,"highQualityMode")&&(e._shadowCastingMode=FH.ON,e.bakeSettings.castShadow=!0,e.bakeSettings.receiveShadow=!0),e}return e.onUpdateReceiveDirLight=function(t,e){void 0===e&&(e=!1),this._model&&(e?this._model.receiveDirLight=!1:this.node&&(t&this.node.layer)===this.node.layer||t&this._model.visFlags?this._model.receiveDirLight=!0:this._model.receiveDirLight=!1)},e.clearGlobalStandardSkinObjectFlag=function(){this._enabledGlobalStandardSkinObject=!1},e.onLoad=function(){this._mesh&&this._mesh.initialize(),this._validateShapeWeights()||this._initSubMeshShapesWeights(),this._watchMorphInMesh(),this._updateModels(),this._updateCastShadow(),this._updateReceiveShadow(),this._updateShadowBias(),this._updateShadowNormalBias(),this._updateUseLightProbe(),this._updateBakeToReflectionProbe(),this._updateUseReflectionProbe(),this._updateReceiveDirLight(),this._updateStandardSkin()},e.onRestore=function(){this._updateModels(),this.enabledInHierarchy&&this._attachToScene(),this._updateCastShadow(),this._updateReceiveShadow(),this._updateShadowBias(),this._updateShadowNormalBias(),this._updateUseLightProbe(),this._updateBakeToReflectionProbe(),this._updateUseReflectionProbe(),this._updateReceiveDirLight(),this._updateStandardSkin()},e.onEnable=function(){t.prototype.onEnable.call(this),this.node.on(vm.MOBILITY_CHANGED,this.onMobilityChanged,this),this.node.on(vm.LIGHT_PROBE_BAKING_CHANGED,this.onLightProbeBakingChanged,this),this.bakeSettings.on(GH.USE_LIGHT_PROBE_CHANGED,this.onUseLightProbeChanged,this),this.bakeSettings.on(GH.REFLECTION_PROBE_CHANGED,this.onReflectionProbeChanged,this),this.bakeSettings.on(GH.BAKE_TO_REFLECTION_PROBE_CHANGED,this.onBakeToReflectionProbeChanged,this),this._model||this._updateModels(),this._model.onGlobalPipelineStateChanged(),this._updateCastShadow(),this._updateReceiveShadow(),this._updateShadowBias(),this._updateShadowNormalBias(),this._updateBakeToReflectionProbe(),this._updateUseReflectionProbe(),this._onUpdateLocalShadowBiasAndProbeId(),this._updateUseLightProbe(),this._updateReceiveDirLight(),this._onUpdateReflectionProbeDataMap(),this._onUpdateLocalReflectionProbeData(),this._updateStandardSkin(),this._attachToScene()},e.onDisable=function(){this._model&&this._detachFromScene(),this.node.off(vm.MOBILITY_CHANGED,this.onMobilityChanged,this),this.node.off(vm.LIGHT_PROBE_BAKING_CHANGED,this.onLightProbeBakingChanged,this),this.bakeSettings.off(GH.USE_LIGHT_PROBE_CHANGED,this.onUseLightProbeChanged,this),this.bakeSettings.off(GH.REFLECTION_PROBE_CHANGED,this.onReflectionProbeChanged,this),this.bakeSettings.off(GH.BAKE_TO_REFLECTION_PROBE_CHANGED,this.onBakeToReflectionProbeChanged,this)},e.onDestroy=function(){this._model&&(S.director.root.destroyModel(this._model),this._model=null,this._models.length=0),this._morphInstance&&this._morphInstance.destroy()},e.onGeometryChanged=function(){if(this._model&&this._mesh){var t=this._mesh.struct;this._model.createBoundingShape(t.minPosition,t.maxPosition),this._model.updateWorldBound(),this._model.onGeometryChanged()}},e.getWeight=function(t,e){this._subMeshShapesWeights.length;var i=this._subMeshShapesWeights[t];return i.length,i[e]},e.setWeights=function(t,e){var i=this._subMeshShapesWeights;e>=i.length||i[e].length===t.length&&(i[e]=t.slice(0),this._uploadSubMeshShapesWeights(e))},e.setWeight=function(t,e,i){var n=this._subMeshShapesWeights;if(!(e>=n.length)){var r=n[e];i>=r.length||(r[i]=t,this._uploadSubMeshShapesWeights(e))}},e.setInstancedAttribute=function(t,e){if(this.model)for(var i=this.model.subModels,n=0;n<i.length;n++)for(var r=i[n].instancedAttributeBlock,s=r.attributes,a=r.views,o=0;o<s.length;o++)if(s[o].name===t){a[o].set(e);break}},e._updateLightmap=function(t,e,i,n,r){this.bakeSettings.texture=t,this.bakeSettings.uvParam.x=e,this.bakeSettings.uvParam.y=i,this.bakeSettings.uvParam.z=n,this.bakeSettings.uvParam.w=r,this._onUpdateLightingmap(),this._updateReceiveDirLight()},e.updateProbeCubemap=function(t){this.bakeSettings.probeCubemap&&this.bakeSettings.probeCubemap===t||(this.bakeSettings.probeCubemap=t,null!==this.model&&this.model.updateReflectionProbeCubemap(this.bakeSettings.probeCubemap))},e.updateProbeBlendCubemap=function(t){this.bakeSettings.probeBlendCubemap&&this.bakeSettings.probeBlendCubemap===t||(this.bakeSettings.probeBlendCubemap=t,null!==this.model&&this.model.updateReflectionProbeBlendCubemap(this.bakeSettings.probeBlendCubemap))},e.updateProbePlanarMap=function(t){this.bakeSettings.probePlanarmap!==t&&(this.bakeSettings.probePlanarmap=t,null!==this.model&&this.model.updateReflectionProbePlanarMap(this.bakeSettings.probePlanarmap))},e.updateReflectionProbeDataMap=function(t){this._reflectionProbeDataMap=t,null!==this.model&&this.model.updateReflectionProbeDataMap(t)},e.updateReflectionProbeId=function(t){this._reflectionProbeId=t,this.model&&(this.model.reflectionProbeId=t),this._onUpdateLocalShadowBiasAndProbeId()},e.updateReflectionProbeBlendId=function(t){this._reflectionProbeBlendId=t,this.model&&(this.model.reflectionProbeBlendId=t),this._onUpdateLocalShadowBiasAndProbeId()},e.updateReflectionProbeBlendWeight=function(t){this._reflectionProbeBlendWeight=t,this.model&&(this.model.reflectionProbeBlendWeight=t),this._onUpdateLocalReflectionProbeData()},e._updateReflectionProbeTexture=function(){if(this.model){var t=this.bakeSettings,e=t.reflectionProbe,i=t.probeBlendCubemap,n=t.probePlanarmap,r=t.probeCubemap;e===pR.BAKED_CUBEMAP?(this.model.updateReflectionProbeCubemap(r),this.model.updateReflectionProbePlanarMap(null),this.model.updateReflectionProbeBlendCubemap(null)):e===pR.BLEND_PROBES||e===pR.BLEND_PROBES_AND_SKYBOX?(this.model.updateReflectionProbeCubemap(r),this.model.updateReflectionProbeBlendCubemap(i),this.model.updateReflectionProbePlanarMap(null)):e===pR.PLANAR_REFLECTION?(this.model.updateReflectionProbePlanarMap(n),this.model.updateReflectionProbeCubemap(null),this.model.updateReflectionProbeBlendCubemap(null)):(this.model.updateReflectionProbeCubemap(null),this.model.updateReflectionProbePlanarMap(null),this.model.updateReflectionProbeBlendCubemap(null))}},e._updateModels=function(){if(this.enabledInHierarchy){var t=this._model;if(t?(t.destroy(),t.initialize(),t.node=t.transform=this.node):this._createModel(),this._model){if(this._mesh){var e=this._mesh.struct;this._model.createBoundingShape(e.minPosition,e.maxPosition),this._model.updateWorldBound()}this._model.initLightingmap(this.bakeSettings.texture,this.bakeSettings.uvParam),this._updateUseLightProbe(),this._updateUseReflectionProbeType(),this._updateModelParams(),this._onUpdateLightingmap(),this._onUpdateLocalShadowBiasAndProbeId(),this._updateUseReflectionProbe(),this._updateReceiveDirLight(),this._onUpdateReflectionProbeDataMap(),this._onUpdateLocalReflectionProbeData()}}},e._updateReceiveDirLight=function(){if(this._model){var t=this.node.scene;if(t&&t.renderScene){var e=t.renderScene.mainLight;if(e){var i=e.visibility;if(e.node)if(e.node.mobility===Nm.Static){var n=!1;this.bakeSettings.texture&&!this.node.scene.globals.disableLightmap&&(n=!0),this.node.scene.globals.lightProbeInfo.data&&this.node.scene.globals.lightProbeInfo.data.hasCoefficients()&&this._model.useLightProbe&&(n=!0),this.onUpdateReceiveDirLight(i,n)}else this.onUpdateReceiveDirLight(i)}}}},e._createModel=function(){var t=this._morphInstance&&this._modelType===RR?TH:this._modelType,e=this._model=S.director.root.createModel(t);e.visFlags=this.visibility,e.node=e.transform=this.node,this._models.length=0,this._models.push(this._model),this._morphInstance&&e instanceof TH&&e.setMorphRendering(this._morphInstance)},e._attachToScene=function(){if(this.node.scene&&this._model){var t=this._getRenderScene();null!==this._model.scene&&this._detachFromScene(),t.addModel(this._model)}},e._detachFromScene=function(){this._model&&this._model.scene&&this._model.scene.removeModel(this._model)},e._updateModelParams=function(){if(this._mesh&&this._model){this.node.hasChangedFlags|=mm.POSITION,this._model.transform.hasChangedFlags|=mm.POSITION,this._model.isDynamicBatching=this._isBatchingEnabled();var t=this._mesh?this._mesh.renderingSubMeshes.length:0,e=this._mesh.renderingSubMeshes;if(e)for(var i=0;i<t;++i){var n=this.getRenderMaterial(i);n&&!n.isValid&&(n=null);var r=e[i];r&&this._model.initSubModel(i,r,n||this._getBuiltinMaterial())}this._model.enabled=!0}},e._onUpdateLightingmap=function(){null!==this.model&&this.model.updateLightingmap(this.bakeSettings.texture,this.bakeSettings.uvParam),this.setInstancedAttribute("a_lightingMapUVParam",[this.bakeSettings.uvParam.x,this.bakeSettings.uvParam.y,this.bakeSettings.uvParam.z,this.bakeSettings.uvParam.w])},e._onUpdateLocalShadowBiasAndProbeId=function(){null!==this.model&&(this.model.updateLocalShadowBias(),this.model.updateReflectionProbeId()),this.setInstancedAttribute("a_localShadowBiasAndProbeId",[this._shadowBias,this._shadowNormalBias,this._reflectionProbeId,this._reflectionProbeBlendId])},e._onUpdateLocalReflectionProbeData=function(){this.bakeSettings.reflectionProbe!==pR.BAKED_CUBEMAP&&this.bakeSettings.reflectionProbe!==pR.BLEND_PROBES&&this.bakeSettings.reflectionProbe!==pR.BLEND_PROBES_AND_SKYBOX||(null!==this.model&&this.model.updateReflectionProbeId(),this.setInstancedAttribute("a_reflectionProbeData",[this._reflectionProbeBlendWeight,0,0,0]))},e._onUpdateReflectionProbeDataMap=function(){null!==this.model&&this.model.updateReflectionProbeDataMap(this._reflectionProbeDataMap)},e._onMaterialModified=function(t,e){this._model&&this._model.inited&&(this._onRebuildPSO(t,e||this._getBuiltinMaterial()),this._updateStandardSkin())},e._onRebuildPSO=function(t,e){this._model&&this._model.inited&&(this._model.isDynamicBatching=this._isBatchingEnabled(),this._model.setSubModelMaterial(t,e),this._onUpdateLightingmap(),this._onUpdateLocalShadowBiasAndProbeId(),this._updateReflectionProbeTexture(),this._onUpdateReflectionProbeDataMap(),this._onUpdateLocalReflectionProbeData())},e._onMeshChanged=function(){},e._clearMaterials=function(){if(this._model)for(var t=this._model.subModels,e=0;e<t.length;++e)this._onMaterialModified(e,null)},e._getBuiltinMaterial=function(){return bT.get("missing-material")},e._onVisibilityChange=function(t){this._model&&(this._model.visFlags=t)},e._updateShadowBias=function(){this._model&&(this._model.shadowBias=this._shadowBias)},e._updateShadowNormalBias=function(){this._model&&(this._model.shadowNormalBias=this._shadowNormalBias)},e._updateCastShadow=function(){this._model&&(this._shadowCastingMode===FH.OFF?this._model.castShadow=!1:(this._shadowCastingMode,FH.ON,this._shadowCastingMode,this._model.castShadow=!0))},e._updateReceiveShadow=function(){this._model&&(this._shadowReceivingMode===kH.OFF?this._model.receiveShadow=!1:this._model.receiveShadow=!0)},e.onMobilityChanged=function(){this._updateUseLightProbe(),this._updateReceiveDirLight()},e.onLightProbeBakingChanged=function(){this._updateReceiveDirLight()},e.onUseLightProbeChanged=function(){this._updateUseLightProbe()},e.onReflectionProbeChanged=function(){this._updateUseReflectionProbe(),this._onUpdateLocalShadowBiasAndProbeId(),this.bakeSettings.reflectionProbe===pR.BAKED_CUBEMAP||this.bakeSettings.reflectionProbe===pR.BLEND_PROBES||this.bakeSettings.reflectionProbe===pR.BLEND_PROBES_AND_SKYBOX?(S.internal.reflectionProbeManager.selectReflectionProbe(this._model),S.internal.reflectionProbeManager.getUsedReflectionProbe(this._model,!1)||tt(16302)):this.bakeSettings.reflectionProbe===pR.PLANAR_REFLECTION&&(S.internal.reflectionProbeManager.selectPlanarReflectionProbe(this._model),S.internal.reflectionProbeManager.getUsedReflectionProbe(this._model,!0)||tt(16302))},e.onBakeToReflectionProbeChanged=function(){this._updateBakeToReflectionProbe()},e._updateUseLightProbe=function(){if(this._model){var t=this.node;this._mesh&&t&&t.mobility===Nm.Movable&&this.bakeSettings.useLightProbe?this._model.useLightProbe=!0:this._model.useLightProbe=!1}},e._isBatchingEnabled=function(){for(var t=0;t<this._materials.length;++t){var e=this._materials[t];if(e)for(var i=0;i<e.passes.length;++i)if(e.passes[i].batchingScheme)return!0}return!1},e._updateUseReflectionProbe=function(){this._model&&(this._model.reflectionProbeType=this.bakeSettings.reflectionProbe,this._updateReflectionProbeTexture())},e._updateUseReflectionProbeType=function(){this._model&&(this._model.reflectionProbeType=this.bakeSettings.reflectionProbe)},e._updateBakeToReflectionProbe=function(){this._model&&(this._model.bakeToReflectionProbe=this.bakeSettings.bakeToReflectionProbe)},e._watchMorphInMesh=function(){if(this._morphInstance&&(this._morphInstance.destroy(),this._morphInstance=null),this._enableMorph&&this._mesh&&this._mesh.struct.morph&&this._mesh.morphRendering){this._morphInstance=this._mesh.morphRendering.createInstance();for(var t=this._mesh.struct.primitives.length,e=0;e<t;++e)this._uploadSubMeshShapesWeights(e);this._model&&this._model instanceof TH&&this._model.setMorphRendering(this._morphInstance)}},e._initSubMeshShapesWeights=function(){var t=this._mesh;if(this._subMeshShapesWeights.length=0,t){var e=t.struct.morph;if(e){var i=e.weights;this._subMeshShapesWeights=e.subMeshMorphs.map((function(t){return t?t.weights?t.weights.slice(0):i?(i.length,t.targets.length,i.slice(0)):new Array(t.targets.length).fill(0):[]}))}}},e._validateShapeWeights=function(){var t=this._mesh,e=this._subMeshShapesWeights;if(!t||!t.struct.morph)return 0===e.length;var i=t.struct.morph;return i.subMeshMorphs.length===e.length&&e.every((function(t,e){var n,r,s=t.length;return(null!==(n=null===(r=i.subMeshMorphs[e])||void 0===r?void 0:r.targets.length)&&void 0!==n?n:0)===s}))},e._uploadSubMeshShapesWeights=function(t){var e;null===(e=this._morphInstance)||void 0===e||e.setWeights(t,this._subMeshShapesWeights[t])},e._updateStandardSkin=function(){var t=S.director.root.pipeline.pipelineSceneData;if(this._enabledGlobalStandardSkinObject&&(t.standardSkinMeshRenderer=this,t.standardSkinModel=this.model),!t.skinMaterialModel&&this._model)for(var e=this._model.subModels,i=0;i<e.length;i++)if(!(RH(e[i])<0))return void(t.skinMaterialModel=this._model)},n(i,[{key:"shadowBias",get:function(){return this._shadowBias},set:function(t){this._shadowBias=t,this._updateShadowBias(),this._onUpdateLocalShadowBiasAndProbeId()}},{key:"shadowNormalBias",get:function(){return this._shadowNormalBias},set:function(t){this._shadowNormalBias=t,this._updateShadowNormalBias(),this._onUpdateLocalShadowBiasAndProbeId()}},{key:"shadowCastingMode",get:function(){return this._shadowCastingMode},set:function(t){this._shadowCastingMode=t,this._updateCastShadow()}},{key:"shadowCastingModeForInspector",get:function(){return this.shadowCastingMode===FH.ON},set:function(t){this.shadowCastingMode=!0===t?FH.ON:FH.OFF}},{key:"receiveShadow",get:function(){return this._shadowReceivingMode},set:function(t){this._shadowReceivingMode=t,this._updateReceiveShadow()}},{key:"receiveShadowForInspector",get:function(){return this._shadowReceivingMode===kH.ON},set:function(t){this._shadowReceivingMode=!0===t?kH.ON:kH.OFF,this._updateReceiveShadow()}},{key:"mesh",get:function(){return this._mesh},set:function(t){var e=this._mesh,i=this._mesh=t;null==i||i.initialize(),this._initSubMeshShapesWeights(),this._watchMorphInMesh(),this._onMeshChanged(e),this._updateModels(),this.enabledInHierarchy&&this._attachToScene(),this._updateCastShadow(),this._updateReceiveShadow(),this._updateUseLightProbe(),this._updateUseReflectionProbe(),this._updateReceiveDirLight()}},{key:"model",get:function(){return this._model}},{key:"enableMorph",get:function(){return this._enableMorph},set:function(t){this._enableMorph=t}},{key:"isGlobalStandardSkinObject",get:function(){return this._enabledGlobalStandardSkinObject},set:function(t){S.director.root.pipeline.pipelineSceneData.standardSkinMeshRenderer=t?this:null,this._enabledGlobalStandardSkinObject=t}}]),i}(EG)).ShadowCastingMode=FH,SH.ShadowReceivingMode=kH,uH=ja((hH=SH).prototype,"bakeSettings",[xH],(function(){return new GH})),lH=ja(hH.prototype,"_mesh",[xH],(function(){return null})),cH=ja(hH.prototype,"_shadowCastingMode",[xH],(function(){return FH.OFF})),_H=ja(hH.prototype,"_shadowReceivingMode",[xH],(function(){return kH.ON})),fH=ja(hH.prototype,"_shadowBias",[xH],(function(){return 0})),dH=ja(hH.prototype,"_shadowNormalBias",[xH],(function(){return 0})),pH=ja(hH.prototype,"_reflectionProbeId",[xH],(function(){return-1})),mH=ja(hH.prototype,"_reflectionProbeBlendId",[xH],(function(){return-1})),gH=ja(hH.prototype,"_reflectionProbeBlendWeight",[xH],(function(){return 0})),vH=ja(hH.prototype,"_enabledGlobalStandardSkinObject",[xH],(function(){return!1})),m(hH.prototype,"shadowBias",[eH],Object.getOwnPropertyDescriptor(hH.prototype,"shadowBias"),hH.prototype),m(hH.prototype,"shadowNormalBias",[iH],Object.getOwnPropertyDescriptor(hH.prototype,"shadowNormalBias"),hH.prototype),m(hH.prototype,"shadowCastingMode",[nH],Object.getOwnPropertyDescriptor(hH.prototype,"shadowCastingMode"),hH.prototype),m(hH.prototype,"receiveShadow",[rH],Object.getOwnPropertyDescriptor(hH.prototype,"receiveShadow"),hH.prototype),m(hH.prototype,"mesh",[sH],Object.getOwnPropertyDescriptor(hH.prototype,"mesh"),hH.prototype),m(hH.prototype,"isGlobalStandardSkinObject",[aH],Object.getOwnPropertyDescriptor(hH.prototype,"isGlobalStandardSkinObject"),hH.prototype),yH=ja(hH.prototype,"_enableMorph",[xH],(function(){return!0})),oH=hH))||oH)||oH));function UH(t,e){var i=t.sharedMaterials.length;if(i!==e.sharedMaterials.length)return!1;for(var n=0;n<i;n++)if(t.getRenderMaterial(n)!==e.getRenderMaterial(n))return!1;return!0}t("a9",function(){function t(){}return t.batchStaticModel=function(t,e){var i=t.getComponentsInChildren(VH);if(i.length<2)return console.error("the number of static models to batch is less than 2,it needn't batch."),!1;for(var n=1;n<i.length;n++){if(!i[0].mesh.validateMergingMesh(i[n].mesh))return console.error("the meshes of "+i[0].node.name+" and "+i[n].node.name+" can't be merged"),!1;if(!UH(i[0],i[n]))return console.error("the materials of "+i[0].node.name+" and "+i[n].node.name+" can't be merged"),!1}var r=new ZB,s=new Vn,a=new Vn;t.getWorldMatrix(a),Vn.invert(a,a);for(var o=0;o<i.length;o++){var h=i[o];h.node.getWorldMatrix(s),Vn.multiply(s,a,s),r.merge(i[o].mesh,s),h.enabled=!1}var u=e.addComponent(VH);return u.mesh=r,u.sharedMaterials=i[0].sharedMaterials,!0},t.unbatchStaticModel=function(t,e){for(var i=t.getComponentsInChildren(VH),n=0;n<i.length;n++)i[n].enabled=!0;var r=e.getComponent(VH);return r&&(r.mesh&&r.mesh.destroyRenderingMesh(),r.destroy()),!0},t}()),ut(ZB.prototype,"Mesh.prototype",[{name:"renderingMesh",newName:"renderingSubMeshes"}]),lt(ZB.prototype,"Mesh.prototype",[{name:"hasFlatBuffers"},{name:"destroyFlatBuffers"}]);var zH,HH,WH,XH,jH,YH,qH,KH,QH,ZH,JH,$H,tW,eW,iW,nW,rW=t("ab",(IH=eo("cc.Skeleton"),DH=Lo([si]),BH=Lo([Vn]),IH((PH=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._joints=OH&&OH(),e._bindposes=LH&&LH(),e._hash=NH&&NH(),e._invBindposes=null,e}s(e,t);var i=e.prototype;return i.destroy=function(){var e,i;return null===(e=S.director.root)||void 0===e||null===(i=e.dataPoolManager)||void 0===i||i.releaseSkeleton(this),t.prototype.destroy.call(this)},i.validate=function(){return this.joints.length>0&&this.bindposes.length>0},n(e,[{key:"joints",get:function(){return this._joints},set:function(t){this._joints=t}},{key:"bindposes",get:function(){return this._bindposes},set:function(t){this._bindposes=t}},{key:"inverseBindposes",get:function(){if(!this._invBindposes){this._invBindposes=[];for(var t=0;t<this._bindposes.length;t++){var e=new Vn;Vn.invert(e,this._bindposes[t]),this._invBindposes.push(e)}}return this._invBindposes}},{key:"hash",get:function(){if(!this._hash){for(var t="",e=0;e<this._bindposes.length;e++){var i=this._bindposes[e];t+=i.m00.toPrecision(2)+" "+i.m01.toPrecision(2)+" "+i.m02.toPrecision(2)+" "+i.m03.toPrecision(2)+" "+i.m04.toPrecision(2)+" "+i.m05.toPrecision(2)+" "+i.m06.toPrecision(2)+" "+i.m07.toPrecision(2)+" "+i.m08.toPrecision(2)+" "+i.m09.toPrecision(2)+" "+i.m10.toPrecision(2)+" "+i.m11.toPrecision(2)+" "+i.m12.toPrecision(2)+" "+i.m13.toPrecision(2)+" "+i.m14.toPrecision(2)+" "+i.m15.toPrecision(2)+"\n"}this._hash=zl(t,666)}return this._hash}}]),e}(vd),OH=ja(PH.prototype,"_joints",[DH],(function(){return[]})),LH=ja(PH.prototype,"_bindposes",[BH],(function(){return[]})),NH=ja(PH.prototype,"_hash",[lo],(function(){return 0})),MH=PH))||MH));S.Skeleton=rW,lt(VH.prototype,"MeshRenderer.prototype",[{name:"enableDynamicBatching"},{name:"recieveShadows"}]),S.ModelComponent=VH,ne(VH,"cc.ModelComponent");var sW,aW,oW,hW,uW,lW,cW,_W,fW,dW,pW,mW,gW,vW,yW,SW,TW,AW,bW,EW,CW,xW,wW,RW,IW,DW,BW,MW,PW,OW,LW,NW,FW,kW,GW,VW,UW,zW,HW,WW,XW,jW,YW,qW,KW,QW,ZW,JW,$W,tX,eX,iX,nX,rX,sX,aX,oX,hX,uX,lX,cX,_X,fX,dX,pX,mX,gX,vX,yX,SX,TX,AX,bX,EX,CX,xX,wX,RX,IX,DX,BX,MX,PX,OX,LX,NX,FX,kX,GX,VX,UX,zX,HX,WX,XX,jX,YX,qX,KX,QX,ZX,JX,$X,tj,ej,ij,nj,rj,sj,aj,oj,hj,uj,lj,cj,_j,fj,dj,pj=new gn,mj=Ee({LUMINOUS_FLUX:0,LUMINANCE:1}),gj=eo("cc.StaticLightSettings")((HH=function(){function t(){this._baked=WH&&WH(),this._editorOnly=XH&&XH(),this._castShadow=jH&&jH()}return n(t,[{key:"editorOnly",get:function(){return this._editorOnly},set:function(t){this._editorOnly=t}},{key:"baked",get:function(){return this._baked},set:function(t){this._baked=t}},{key:"castShadow",get:function(){return this._castShadow},set:function(t){this._castShadow=t}}]),t}(),WH=ja(HH.prototype,"_baked",[lo],(function(){return!1})),XH=ja(HH.prototype,"_editorOnly",[lo],(function(){return!1})),jH=ja(HH.prototype,"_castShadow",[lo],(function(){return!1})),zH=HH))||zH,vj=t("ae",(YH=eo("cc.Light"),qH=Lo(gj),KH=Lo(dm.BitMask),YH(((nW=function(t){function e(){var e;return(e=t.call(this)||this)._color=JH&&JH(),e._useColorTemperature=$H&&$H(),e._colorTemperature=tW&&tW(),e._staticSettings=eW&&eW(),e._visibility=iW&&iW(),e._type=CR.UNKNOWN,e._lightType=void 0,e._light=null,e._lightType=LR,e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._createLight()},i.onEnable=function(){this._attachToScene()},i.onDisable=function(){this._detachFromScene()},i.onDestroy=function(){this._destroyLight()},i._createLight=function(){this._light||(this._light=S.director.root.createLight(this._lightType)),this.color=this._color,this.useColorTemperature=this._useColorTemperature,this.colorTemperature=this._colorTemperature,this._light.node=this.node,this._light.baked=this.baked,this._light.visibility=this.visibility},i._destroyLight=function(){this._light&&(S.director.root.recycleLight(this._light),this._light=null)},i._attachToScene=function(){if(this._detachFromScene(),this._light&&!this._light.scene&&this.node.scene){var t=this._getRenderScene();switch(this._type){case CR.DIRECTIONAL:t.addDirectionalLight(this._light),t.setMainLight(this._light);break;case CR.SPHERE:t.addSphereLight(this._light);break;case CR.SPOT:t.addSpotLight(this._light);break;case CR.POINT:t.addPointLight(this._light);break;case CR.RANGED_DIRECTIONAL:t.addRangedDirLight(this._light)}}},i._detachFromScene=function(){if(this._light&&this._light.scene){var t=this._light.scene;switch(this._type){case CR.DIRECTIONAL:t.removeDirectionalLight(this._light),t.unsetMainLight(this._light);break;case CR.SPHERE:t.removeSphereLight(this._light);break;case CR.SPOT:t.removeSpotLight(this._light);break;case CR.POINT:t.removePointLight(this._light);break;case CR.RANGED_DIRECTIONAL:t.removeRangedDirLight(this._light)}}},i._onUpdateReceiveDirLight=function(){},n(e,[{key:"color",get:function(){return this._color},set:function(t){this._color=t.clone(),this._light&&(pj.x=t.r/255,pj.y=t.g/255,pj.z=t.b/255,this._light.color=pj)}},{key:"useColorTemperature",get:function(){return this._useColorTemperature},set:function(t){this._useColorTemperature=t,this._light&&(this._light.useColorTemperature=t)}},{key:"colorTemperature",get:function(){return this._colorTemperature},set:function(t){this._colorTemperature=t,this._light&&(this._light.colorTemperature=t)}},{key:"staticSettings",get:function(){return this._staticSettings},set:function(t){this._staticSettings=t}},{key:"type",get:function(){return this._type}},{key:"baked",get:function(){return this.staticSettings.baked},set:function(t){this.staticSettings.baked=t,null!==this._light&&(this._light.baked=t)}},{key:"visibility",get:function(){return this._visibility},set:function(t){this._visibility=t,this._light&&(this._light.visibility=t),this._onUpdateReceiveDirLight()}}]),e}(mp)).Type=CR,nW.PhotometricTerm=mj,JH=ja((ZH=nW).prototype,"_color",[lo],(function(){return En.WHITE.clone()})),$H=ja(ZH.prototype,"_useColorTemperature",[lo],(function(){return!1})),tW=ja(ZH.prototype,"_colorTemperature",[lo],(function(){return 6550})),eW=ja(ZH.prototype,"_staticSettings",[lo],(function(){return new gj})),iW=ja(ZH.prototype,"_visibility",[lo],(function(){return sy})),m(ZH.prototype,"staticSettings",[qH],Object.getOwnPropertyDescriptor(ZH.prototype,"staticSettings"),ZH.prototype),m(ZH.prototype,"visibility",[KH],Object.getOwnPropertyDescriptor(ZH.prototype,"visibility"),ZH.prototype),QH=ZH))||QH)),yj=so,Sj=lo,Tj=co,Aj=Lo,bj=t("ad",(sW=eo("cc.DirectionalLight"),aW=Tj("_illuminance"),oW=Aj(ii),hW=yj({group:{name:"DynamicShadowSettings",displayOrder:1}}),uW=Aj(ri),lW=yj({group:{name:"DynamicShadowSettings",displayOrder:5}}),cW=Aj(XT),_W=yj({group:{name:"DynamicShadowSettings",displayOrder:6}}),fW=Aj(ni),dW=yj({group:{name:"DynamicShadowSettings",displayOrder:7}}),pW=Aj(ni),mW=yj({group:{name:"DynamicShadowSettings",displayOrder:8}}),gW=Aj(ni),vW=yj({group:{name:"DynamicShadowSettings",displayOrder:9}}),yW=Aj(ni),SW=yj({group:{name:"DynamicShadowSettings",displayOrder:22}}),TW=Aj(ni),AW=yj({group:{name:"DynamicShadowSettings",displayOrder:10}}),bW=Aj(jT),EW=yj({group:{name:"DynamicShadowSettings",displayOrder:11}}),CW=Aj(ri),xW=yj({group:{name:"DynamicShadowSettings",displayOrder:12}}),wW=Aj(ni),RW=yj({group:{name:"DynamicShadowSettings",displayOrder:13}}),IW=Aj(YT),DW=yj({group:{name:"DynamicShadowSettings",displayOrder:14}}),BW=Aj(ri),MW=yj({group:{name:"DynamicShadowSettings",displayOrder:15}}),PW=Aj(ni),OW=yj({group:{name:"DynamicShadowSettings",displayOrder:16}}),LW=Aj(ni),NW=yj({group:{name:"DynamicShadowSettings",displayOrder:17}}),FW=Aj(ni),kW=yj({group:{name:"DynamicShadowSettings",displayOrder:19}}),GW=Aj(ri),VW=yj({group:{name:"DynamicShadowSettings",displayOrder:20}}),UW=Aj(ri),zW=yj({group:{name:"DynamicShadowSettings",displayOrder:21}}),HW=Aj(ni),sW((XW=function(t){function e(){var e;return(e=t.call(this)||this)._illuminanceHDR=jW&&jW(),e._illuminanceLDR=YW&&YW(),e._shadowEnabled=qW&&qW(),e._shadowPcf=KW&&KW(),e._shadowBias=QW&&QW(),e._shadowNormalBias=ZW&&ZW(),e._shadowSaturation=JW&&JW(),e._shadowDistance=$W&&$W(),e._shadowInvisibleOcclusionRange=tX&&tX(),e._csmLevel=eX&&eX(),e._csmLayerLambda=iX&&iX(),e._csmOptimizationMode=nX&&nX(),e._csmAdvancedOptions=rX&&rX(),e._csmLayersTransition=sX&&sX(),e._csmTransitionRange=aX&&aX(),e._shadowFixedArea=oX&&oX(),e._shadowNear=hX&&hX(),e._shadowFar=uX&&uX(),e._shadowOrthoSize=lX&&lX(),e._lightType=kR,Me.querySettings(De.Category.RENDERING,"highQualityMode")&&(e._shadowPcf=XT.SOFT_2X,e._shadowDistance=50,e.enableCSM=!0,e.staticSettings.castShadow=!0),e}s(e,t);var i=e.prototype;return i._createLight=function(){if(t.prototype._createLight.call(this),this._type=CR.DIRECTIONAL,this._light){var e=this._light;e.illuminanceHDR=this._illuminanceHDR,e.illuminanceLDR=this._illuminanceLDR,e.shadowEnabled=this._shadowEnabled,e.shadowPcf=this._shadowPcf,e.shadowBias=this._shadowBias,e.shadowNormalBias=this._shadowNormalBias,e.shadowSaturation=this._shadowSaturation,e.shadowDistance=this._shadowDistance,e.shadowInvisibleOcclusionRange=this._shadowInvisibleOcclusionRange,e.shadowFixedArea=this._shadowFixedArea,e.shadowNear=this._shadowNear,e.shadowFar=this._shadowFar,e.shadowOrthoSize=this._shadowOrthoSize,e.csmLevel=this._csmLevel,e.csmLayerLambda=this._csmLayerLambda,e.csmOptimizationMode=this._csmOptimizationMode,e.csmLayersTransition=this._csmLayersTransition,e.csmTransitionRange=this._csmTransitionRange}},i._onUpdateReceiveDirLight=function(){if(this._light){t.prototype._onUpdateReceiveDirLight.call(this);var e=this.node.scene;if(e&&e.renderScene&&e.renderScene.mainLight===this._light)for(var i=e.renderScene.models,n=0;n<i.length;n++){var r=i[n];if(r.node){var s=r.node.getComponent(VH);s&&s.onUpdateReceiveDirLight(this._visibility)}}}},n(e,[{key:"illuminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._illuminanceHDR:this._illuminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?(this._illuminanceHDR=t,this._light&&(this._light.illuminanceHDR=this._illuminanceHDR)):(this._illuminanceLDR=t,this._light&&(this._light.illuminanceLDR=this._illuminanceLDR))}},{key:"shadowEnabled",get:function(){return this._shadowEnabled},set:function(t){this._shadowEnabled=t,this._light&&(this._light.shadowEnabled=this._shadowEnabled)}},{key:"shadowPcf",get:function(){return this._shadowPcf},set:function(t){this._shadowPcf=t,this._light&&(this._light.shadowPcf=this._shadowPcf)}},{key:"shadowBias",get:function(){return this._shadowBias},set:function(t){this._shadowBias=t,this._light&&(this._light.shadowBias=this._shadowBias)}},{key:"shadowNormalBias",get:function(){return this._shadowNormalBias},set:function(t){this._shadowNormalBias=t,this._light&&(this._light.shadowNormalBias=this._shadowNormalBias)}},{key:"shadowSaturation",get:function(){return this._shadowSaturation},set:function(t){this._shadowSaturation=Fi(t,0,1),this._light&&(this._light.shadowSaturation=this._shadowSaturation)}},{key:"shadowDistance",get:function(){return this._shadowDistance},set:function(t){this._shadowDistance=Math.min(t,KT.MAX_FAR),this._shadowDistance/.1<10&&tt(15003,this._shadowDistance),this._light&&(this._light.shadowDistance=this._shadowDistance,this._light.csmNeedUpdate=!0)}},{key:"shadowInvisibleOcclusionRange",get:function(){return this._shadowInvisibleOcclusionRange},set:function(t){this._shadowInvisibleOcclusionRange=Math.min(t,KT.MAX_FAR),this._light&&(this._light.shadowInvisibleOcclusionRange=this._shadowInvisibleOcclusionRange)}},{key:"csmLevel",get:function(){return this._csmLevel},set:function(t){this._csmLevel=t,this._light&&(this._light.csmLevel=this._csmLevel,this._light.csmNeedUpdate=!0)}},{key:"enableCSM",get:function(){return this._csmLevel>jT.LEVEL_1},set:function(t){this._csmLevel=t?jT.LEVEL_4:jT.LEVEL_1,this._light&&(this._light.csmLevel=this._csmLevel,this._light.csmNeedUpdate=!0)}},{key:"csmLayerLambda",get:function(){return this._csmLayerLambda},set:function(t){this._csmLayerLambda=t,this._light&&(this._light.csmLayerLambda=this._csmLayerLambda,this._light.csmNeedUpdate=!0)}},{key:"csmOptimizationMode",get:function(){return this._csmOptimizationMode},set:function(t){this._csmOptimizationMode=t,this._light&&(this._light.csmOptimizationMode=this._csmOptimizationMode)}},{key:"shadowFixedArea",get:function(){return this._shadowFixedArea},set:function(t){this._shadowFixedArea=t,this._light&&(this._light.shadowFixedArea=this._shadowFixedArea)}},{key:"shadowNear",get:function(){return this._shadowNear},set:function(t){this._shadowNear=t,this._light&&(this._light.shadowNear=this._shadowNear)}},{key:"shadowFar",get:function(){return this._shadowFar},set:function(t){this._shadowFar=Math.min(t,KT.MAX_FAR),this._light&&(this._light.shadowFar=this._shadowFar)}},{key:"shadowOrthoSize",get:function(){return this._shadowOrthoSize},set:function(t){this._shadowOrthoSize=t,this._light&&(this._light.shadowOrthoSize=this._shadowOrthoSize)}},{key:"csmAdvancedOptions",get:function(){return this._csmAdvancedOptions},set:function(t){this._csmAdvancedOptions=t}},{key:"csmLayersTransition",get:function(){return this._csmLayersTransition},set:function(t){this._csmLayersTransition=t,this._light&&(this._light.csmLayersTransition=t)}},{key:"csmTransitionRange",get:function(){return this._csmTransitionRange},set:function(t){this._csmTransitionRange=t,this._light&&(this._light.csmTransitionRange=t)}}]),e}(vj),jW=ja(XW.prototype,"_illuminanceHDR",[yj,aW],(function(){return 65e3})),YW=ja(XW.prototype,"_illuminanceLDR",[Sj],(function(){return 65e3*sR.standardExposureValue})),qW=ja(XW.prototype,"_shadowEnabled",[Sj],(function(){return!1})),KW=ja(XW.prototype,"_shadowPcf",[Sj],(function(){return XT.HARD})),QW=ja(XW.prototype,"_shadowBias",[Sj],(function(){return 1e-5})),ZW=ja(XW.prototype,"_shadowNormalBias",[Sj],(function(){return 0})),JW=ja(XW.prototype,"_shadowSaturation",[Sj],(function(){return 1})),$W=ja(XW.prototype,"_shadowDistance",[Sj],(function(){return 50})),tX=ja(XW.prototype,"_shadowInvisibleOcclusionRange",[Sj],(function(){return 200})),eX=ja(XW.prototype,"_csmLevel",[Sj],(function(){return jT.LEVEL_4})),iX=ja(XW.prototype,"_csmLayerLambda",[Sj],(function(){return.75})),nX=ja(XW.prototype,"_csmOptimizationMode",[Sj],(function(){return YT.RemoveDuplicates})),rX=ja(XW.prototype,"_csmAdvancedOptions",[Sj],(function(){return!1})),sX=ja(XW.prototype,"_csmLayersTransition",[Sj],(function(){return!1})),aX=ja(XW.prototype,"_csmTransitionRange",[Sj],(function(){return.05})),oX=ja(XW.prototype,"_shadowFixedArea",[Sj],(function(){return!1})),hX=ja(XW.prototype,"_shadowNear",[Sj],(function(){return.1})),uX=ja(XW.prototype,"_shadowFar",[Sj],(function(){return 10})),lX=ja(XW.prototype,"_shadowOrthoSize",[Sj],(function(){return 5})),m(XW.prototype,"illuminance",[oW],Object.getOwnPropertyDescriptor(XW.prototype,"illuminance"),XW.prototype),m(XW.prototype,"shadowEnabled",[hW,uW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowEnabled"),XW.prototype),m(XW.prototype,"shadowPcf",[lW,cW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowPcf"),XW.prototype),m(XW.prototype,"shadowBias",[_W,fW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowBias"),XW.prototype),m(XW.prototype,"shadowNormalBias",[dW,pW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowNormalBias"),XW.prototype),m(XW.prototype,"shadowSaturation",[mW,gW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowSaturation"),XW.prototype),m(XW.prototype,"shadowDistance",[vW,yW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowDistance"),XW.prototype),m(XW.prototype,"shadowInvisibleOcclusionRange",[SW,TW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowInvisibleOcclusionRange"),XW.prototype),m(XW.prototype,"csmLevel",[AW,bW],Object.getOwnPropertyDescriptor(XW.prototype,"csmLevel"),XW.prototype),m(XW.prototype,"enableCSM",[EW,CW],Object.getOwnPropertyDescriptor(XW.prototype,"enableCSM"),XW.prototype),m(XW.prototype,"csmLayerLambda",[xW,wW],Object.getOwnPropertyDescriptor(XW.prototype,"csmLayerLambda"),XW.prototype),m(XW.prototype,"csmOptimizationMode",[RW,IW],Object.getOwnPropertyDescriptor(XW.prototype,"csmOptimizationMode"),XW.prototype),m(XW.prototype,"shadowFixedArea",[DW,BW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowFixedArea"),XW.prototype),m(XW.prototype,"shadowNear",[MW,PW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowNear"),XW.prototype),m(XW.prototype,"shadowFar",[OW,LW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowFar"),XW.prototype),m(XW.prototype,"shadowOrthoSize",[NW,FW],Object.getOwnPropertyDescriptor(XW.prototype,"shadowOrthoSize"),XW.prototype),m(XW.prototype,"csmAdvancedOptions",[kW,GW],Object.getOwnPropertyDescriptor(XW.prototype,"csmAdvancedOptions"),XW.prototype),m(XW.prototype,"csmLayersTransition",[VW,UW],Object.getOwnPropertyDescriptor(XW.prototype,"csmLayersTransition"),XW.prototype),m(XW.prototype,"csmTransitionRange",[zW,HW],Object.getOwnPropertyDescriptor(XW.prototype,"csmTransitionRange"),XW.prototype),WW=XW))||WW)),Ej=t("af",(cX=eo("cc.SphereLight"),_X=co("_luminance"),fX=Lo(ii),dX=Lo(ii),pX=Lo(mj),mX=Lo(ni),gX=Lo(ni),cX((yX=function(t){function e(){var e;return(e=t.call(this)||this)._size=SX&&SX(),e._luminanceHDR=TX&&TX(),e._luminanceLDR=AX&&AX(),e._term=bX&&bX(),e._range=EX&&EX(),e._lightType=GR,e}return s(e,t),e.prototype._createLight=function(){t.prototype._createLight.call(this),this._type=CR.SPHERE,this.size=this._size,this.range=this._range,this._light&&(this._light.luminanceHDR=this._luminanceHDR,this._light.luminanceLDR=this._luminanceLDR)},n(e,[{key:"luminousFlux",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR*OR(this._size):this._luminanceLDR},set:function(t){var e=0;S.director.root.pipeline.pipelineSceneData.isHDR?(this._luminanceHDR=t/OR(this._size),e=this._luminanceHDR):(this._luminanceLDR=t,e=this._luminanceLDR),this._light&&(this._light.luminance=e)}},{key:"luminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR:this._luminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?(this._luminanceHDR=t,this._light&&(this._light.luminanceHDR=this._luminanceHDR)):(this._luminanceLDR=t,this._light&&(this._light.luminanceLDR=this._luminanceLDR))}},{key:"term",get:function(){return this._term},set:function(t){this._term=t}},{key:"size",get:function(){return this._size},set:function(t){this._size=t,this._light&&(this._light.size=t)}},{key:"range",get:function(){return this._range},set:function(t){this._range=t,this._light&&(this._light.range=t)}}]),e}(vj),SX=ja(yX.prototype,"_size",[lo],(function(){return.15})),TX=ja(yX.prototype,"_luminanceHDR",[lo,_X],(function(){return 1700/OR(.15)})),AX=ja(yX.prototype,"_luminanceLDR",[lo],(function(){return 1700/OR(.15)*sR.standardExposureValue*sR.standardLightMeterScale})),bX=ja(yX.prototype,"_term",[lo],(function(){return mj.LUMINOUS_FLUX})),EX=ja(yX.prototype,"_range",[lo],(function(){return 1})),m(yX.prototype,"luminousFlux",[fX],Object.getOwnPropertyDescriptor(yX.prototype,"luminousFlux"),yX.prototype),m(yX.prototype,"luminance",[dX],Object.getOwnPropertyDescriptor(yX.prototype,"luminance"),yX.prototype),m(yX.prototype,"term",[pX],Object.getOwnPropertyDescriptor(yX.prototype,"term"),yX.prototype),m(yX.prototype,"size",[mX],Object.getOwnPropertyDescriptor(yX.prototype,"size"),yX.prototype),m(yX.prototype,"range",[gX],Object.getOwnPropertyDescriptor(yX.prototype,"range"),yX.prototype),vX=yX))||vX)),Cj=Lo,xj=lo,wj=co,Rj=so,Ij=t("ag",(CX=eo("cc.SpotLight"),xX=wj("_luminance"),wX=Cj(mj),RX=Cj(ni),IX=Rj({group:{name:"DynamicShadowSettings",displayOrder:1}}),DX=Cj(ri),BX=Rj({group:{name:"DynamicShadowSettings",displayOrder:2}}),MX=Cj(XT),PX=Rj({group:{name:"DynamicShadowSettings",displayOrder:3}}),OX=Cj(ni),LX=Rj({group:{name:"DynamicShadowSettings",displayOrder:4}}),NX=Cj(ni),CX((kX=function(t){function e(){var e;return(e=t.call(this)||this)._size=GX&&GX(),e._luminanceHDR=VX&&VX(),e._luminanceLDR=UX&&UX(),e._term=zX&&zX(),e._range=HX&&HX(),e._spotAngle=WX&&WX(),e._angleAttenuationStrength=XX&&XX(),e._shadowEnabled=jX&&jX(),e._shadowPcf=YX&&YX(),e._shadowBias=qX&&qX(),e._shadowNormalBias=KX&&KX(),e._lightType=jR,e}return s(e,t),e.prototype._createLight=function(){if(t.prototype._createLight.call(this),this._type=CR.SPOT,this.size=this._size,this.range=this._range,this.spotAngle=this._spotAngle,this.angleAttenuationStrength=this._angleAttenuationStrength,this._light){var e=this._light;e.luminanceHDR=this._luminanceHDR,e.luminanceLDR=this._luminanceLDR,e.shadowEnabled=this._shadowEnabled,e.shadowPcf=this._shadowPcf,e.shadowBias=this._shadowBias,e.shadowNormalBias=this._shadowNormalBias}},n(e,[{key:"luminousFlux",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR*OR(this._size):this._luminanceLDR},set:function(t){var e=0;S.director.root.pipeline.pipelineSceneData.isHDR?(this._luminanceHDR=t/OR(this._size),e=this._luminanceHDR):(this._luminanceLDR=t,e=this._luminanceLDR),this._light&&(this._light.luminance=e)}},{key:"luminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR:this._luminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?(this._luminanceHDR=t,this._light&&(this._light.luminanceHDR=this._luminanceHDR)):(this._luminanceLDR=t,this._light&&(this._light.luminanceLDR=this._luminanceLDR))}},{key:"term",get:function(){return this._term},set:function(t){this._term=t}},{key:"size",get:function(){return this._size},set:function(t){this._size=t,this._light&&(this._light.size=t)}},{key:"range",get:function(){return this._range},set:function(t){this._range=t,this._light&&(this._light.range=t)}},{key:"spotAngle",get:function(){return this._spotAngle},set:function(t){this._spotAngle=t,this._light&&(this._light.spotAngle=Vi(t))}},{key:"angleAttenuationStrength",get:function(){return this._angleAttenuationStrength},set:function(t){this._angleAttenuationStrength=t,this._light&&(this._light.angleAttenuationStrength=t)}},{key:"shadowEnabled",get:function(){return this._shadowEnabled},set:function(t){this._shadowEnabled=t,this._light&&(this._light.shadowEnabled=t)}},{key:"shadowPcf",get:function(){return this._shadowPcf},set:function(t){this._shadowPcf=t,this._light&&(this._light.shadowPcf=t)}},{key:"shadowBias",get:function(){return this._shadowBias},set:function(t){this._shadowBias=t,this._light&&(this._light.shadowBias=t)}},{key:"shadowNormalBias",get:function(){return this._shadowNormalBias},set:function(t){this._shadowNormalBias=t,this._light&&(this._light.shadowNormalBias=t)}}]),e}(vj),GX=ja(kX.prototype,"_size",[xj],(function(){return.15})),VX=ja(kX.prototype,"_luminanceHDR",[xj,xX],(function(){return 1700/OR(.15)})),UX=ja(kX.prototype,"_luminanceLDR",[xj],(function(){return 1700/OR(.15)*sR.standardExposureValue*sR.standardLightMeterScale})),zX=ja(kX.prototype,"_term",[xj],(function(){return mj.LUMINOUS_FLUX})),HX=ja(kX.prototype,"_range",[xj],(function(){return 1})),WX=ja(kX.prototype,"_spotAngle",[xj],(function(){return 60})),XX=ja(kX.prototype,"_angleAttenuationStrength",[xj],(function(){return 0})),jX=ja(kX.prototype,"_shadowEnabled",[xj],(function(){return!1})),YX=ja(kX.prototype,"_shadowPcf",[xj],(function(){return XT.HARD})),qX=ja(kX.prototype,"_shadowBias",[xj],(function(){return 1e-5})),KX=ja(kX.prototype,"_shadowNormalBias",[xj],(function(){return 0})),m(kX.prototype,"term",[wX],Object.getOwnPropertyDescriptor(kX.prototype,"term"),kX.prototype),m(kX.prototype,"size",[RX],Object.getOwnPropertyDescriptor(kX.prototype,"size"),kX.prototype),m(kX.prototype,"shadowEnabled",[IX,DX],Object.getOwnPropertyDescriptor(kX.prototype,"shadowEnabled"),kX.prototype),m(kX.prototype,"shadowPcf",[BX,MX],Object.getOwnPropertyDescriptor(kX.prototype,"shadowPcf"),kX.prototype),m(kX.prototype,"shadowBias",[PX,OX],Object.getOwnPropertyDescriptor(kX.prototype,"shadowBias"),kX.prototype),m(kX.prototype,"shadowNormalBias",[LX,NX],Object.getOwnPropertyDescriptor(kX.prototype,"shadowNormalBias"),kX.prototype),FX=kX))||FX));t("ah",(QX=eo("cc.PointLight"),ZX=co("_luminance"),JX=Lo(ii),$X=Lo(ii),tj=Lo(mj),ej=Lo(ni),QX((nj=function(t){function e(){var e;return(e=t.call(this)||this)._luminanceHDR=rj&&rj(),e._luminanceLDR=sj&&sj(),e._term=aj&&aj(),e._range=oj&&oj(),e._lightType=YR,e}return s(e,t),e.prototype._createLight=function(){t.prototype._createLight.call(this),this._type=CR.POINT,this.range=this._range,this._light&&(this._light.luminanceHDR=this._luminanceHDR,this._light.luminanceLDR=this._luminanceLDR)},n(e,[{key:"luminousFlux",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR*OR(1):this._luminanceLDR},set:function(t){var e=0;S.director.root.pipeline.pipelineSceneData.isHDR?(this._luminanceHDR=t/OR(1),e=this._luminanceHDR):(this._luminanceLDR=t,e=this._luminanceLDR),this._light&&(this._light.luminance=e)}},{key:"luminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._luminanceHDR:this._luminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?(this._luminanceHDR=t,this._light&&(this._light.luminanceHDR=this._luminanceHDR)):(this._luminanceLDR=t,this._light&&(this._light.luminanceLDR=this._luminanceLDR))}},{key:"term",get:function(){return this._term},set:function(t){this._term=t}},{key:"range",get:function(){return this._range},set:function(t){this._range=t,this._light&&(this._light.range=t)}}]),e}(vj),rj=ja(nj.prototype,"_luminanceHDR",[lo,ZX],(function(){return 1700/OR(.15)})),sj=ja(nj.prototype,"_luminanceLDR",[lo],(function(){return 1700/OR(.15)*sR.standardExposureValue*sR.standardLightMeterScale})),aj=ja(nj.prototype,"_term",[lo],(function(){return mj.LUMINOUS_FLUX})),oj=ja(nj.prototype,"_range",[lo],(function(){return 1})),m(nj.prototype,"luminousFlux",[JX],Object.getOwnPropertyDescriptor(nj.prototype,"luminousFlux"),nj.prototype),m(nj.prototype,"luminance",[$X],Object.getOwnPropertyDescriptor(nj.prototype,"luminance"),nj.prototype),m(nj.prototype,"term",[tj],Object.getOwnPropertyDescriptor(nj.prototype,"term"),nj.prototype),m(nj.prototype,"range",[ej],Object.getOwnPropertyDescriptor(nj.prototype,"range"),nj.prototype),ij=nj))||ij)),t("ai",(hj=eo("cc.RangedDirectionalLight"),uj=co("_illuminance"),lj=Lo(ii),hj((_j=function(t){function e(){var e;return(e=t.call(this)||this)._illuminanceHDR=fj&&fj(),e._illuminanceLDR=dj&&dj(),e._lightType=KR,e}return s(e,t),e.prototype._createLight=function(){t.prototype._createLight.call(this),this._type=CR.RANGED_DIRECTIONAL,this._light&&(this._light.illuminanceHDR=this._illuminanceHDR,this._light.illuminanceLDR=this._illuminanceLDR)},n(e,[{key:"illuminance",get:function(){return S.director.root.pipeline.pipelineSceneData.isHDR?this._illuminanceHDR:this._illuminanceLDR},set:function(t){S.director.root.pipeline.pipelineSceneData.isHDR?(this._illuminanceHDR=t,this._light&&(this._light.illuminanceHDR=this._illuminanceHDR)):(this._illuminanceLDR=t,this._light&&(this._light.illuminanceLDR=this._illuminanceLDR))}}]),e}(vj),fj=ja(_j.prototype,"_illuminanceHDR",[so,uj],(function(){return 65e3})),dj=ja(_j.prototype,"_illuminanceLDR",[lo],(function(){return 65e3*sR.standardExposureValue})),m(_j.prototype,"illuminance",[lj],Object.getOwnPropertyDescriptor(_j.prototype,"illuminance"),_j.prototype),cj=_j))||cj)),S.LightComponent=vj,ne(vj,"cc.LightComponent"),S.DirectionalLightComponent=bj,ne(bj,"cc.DirectionalLightComponent"),S.SphereLightComponent=Ej,ne(Ej,"cc.SphereLightComponent"),S.SpotLightComponent=Ij,ne(Ij,"cc.SpotLightComponent"),ut(Ij.prototype,"SpotLight.prototype",[{name:"luminousPower",newName:"luminousFlux",customGetter:function(){return this.luminousFlux},customSetter:function(t){this.luminousFlux=t}}]),ut(Ej.prototype,"SphereLight.prototype",[{name:"luminousPower",newName:"luminousFlux",customGetter:function(){return this.luminousFlux},customSetter:function(t){this.luminousFlux=t}}]),ut(vj.PhotometricTerm,"Light.PhotometricTerm",[{name:"LUMINOUS_POWER",newName:"LUMINOUS_FLUX"}]);var Dj=Symbol("BakeNodeCurves"),Bj=t("fZ",function(){function t(){}return t.getOrExtract=function(e){var i=t.pool.get(e);if(!i||i.samples!==e.sample){i&&S.director.root.dataPoolManager.releaseAnimationClip(e);var n=Math.ceil(e.sample*e.duration)+1,r=e.sample;i=e[Dj](0,r,n),t.pool.set(e,i)}return i},t.destroy=function(e){t.pool.delete(e)},t}());Bj.pool=new Map;var Mj=new Vn;function Pj(t,e,i){for(Vn.identity(i);t!==e;)Vn.fromRTS(Mj,t.rotation,t.position,t.scale),Vn.multiply(i,Mj,i),t=t.parent;return i}var Oj=new c_(dc.POINT,dc.POINT,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP),Lj=function(t,e,i){t[e+0]=i.m00,t[e+1]=i.m01,t[e+2]=i.m02,t[e+3]=i.m12,t[e+4]=i.m04,t[e+5]=i.m05,t[e+6]=i.m06,t[e+7]=i.m13,t[e+8]=i.m08,t[e+9]=i.m09,t[e+10]=i.m10,t[e+11]=i.m14};function Nj(t,e){var i=4/Math.sqrt(e);return 12*Math.ceil(Math.max(480*i,t)/12)}new Bn,new Bn,new gn,new Bn,new gn;var Fj=new gn,kj=new gn,Gj=new gn,Vj=new gn,Uj=new Vn,zj=new Vn,Hj=new Ra,Wj=Number.MAX_SAFE_INTEGER,Xj=function(){function t(t){this._device=void 0,this._pool=void 0,this._textureBuffers=new Map,this._formatSize=void 0,this._pixelsPerJoint=void 0,this._customPool=void 0,this._chunkIdxMap=new Map,this._device=t;var e=function(t){return t.getFormatFeatures(ec.RGBA32F)&cc.SAMPLED_TEXTURE?ec.RGBA32F:ec.RGBA8}(this._device);this._formatSize=j_[e].size,this._pixelsPerJoint=48/this._formatSize,this._pool=new QL(t),this._pool.initialize({format:e,roundUpFn:Nj}),this._customPool=new QL(t),this._customPool.initialize({format:e,roundUpFn:Nj})}var e=t.prototype;return e.clear=function(){this._pool.destroy(),this._textureBuffers.clear()},e.registerCustomTextureLayouts=function(t){for(var e=0;e<t.length;e++){var i=t[e],n=i.textureLength;this._device.getFormatFeatures(ec.RGBA32F)&cc.SAMPLED_TEXTURE||(n*=2);for(var r=this._customPool.createChunk(n),s=0;s<i.contents.length;s++){var a=i.contents[s],o=a.skeleton;this._chunkIdxMap.set(o,r);for(var h=0;h<a.clips.length;h++){var u=a.clips[h];this._chunkIdxMap.set(o^u,r)}}}},e.getDefaultPoseTexture=function(t,e,i){var n=0^t.hash,r=this._textureBuffers.get(n)||null;if(r&&r.bounds.has(e.hash))return r.refCount++,r;var s=t.joints,a=t.bindposes,o=null,h=!1,u=s.length;if(r)r.refCount++;else{var l=12*u,c=this._chunkIdxMap.get(n),_=void 0!==c?this._customPool.alloc(l*Float32Array.BYTES_PER_ELEMENT,c):this._pool.alloc(l*Float32Array.BYTES_PER_ELEMENT);if(!_)return r;r={pixelOffset:_.start/this._formatSize,refCount:1,bounds:new Map,skeletonHash:t.hash,clipHash:0,readyToBeDeleted:!1,handle:_},o=new Float32Array(l),h=!0}gn.set(Gj,Wj,Wj,Wj),gn.set(Vj,-Wj,-Wj,-Wj);for(var f=e.getBoneSpaceBounds(t),d=0,p=0;d<u;d++,p+=12){var m=i.getChildByPath(s[d]),g=m?Pj(m,i,Uj):t.inverseBindposes[d],v=f[d];v&&(Ra.transform(Hj,v,g),Hj.getBoundary(Fj,kj),gn.min(Gj,Gj,Fj),gn.max(Vj,Vj,kj)),h&&(m&&Vn.multiply(g,g,a[d]),Lj(o,p,m?g:Vn.IDENTITY))}var y=[new Ra];return r.bounds.set(e.hash,y),Ra.fromPoints(y[0],Gj,Vj),h&&(this._pool.update(r.handle,o.buffer),this._textureBuffers.set(n,r)),r},e.getSequencePoseTexture=function(t,e,i,n){var r=t.hash^e.hash,s=this._textureBuffers.get(r)||null;if(s&&s.bounds.has(i.hash))return s.refCount++,s;var a=t.joints,o=t.bindposes,h=Bj.getOrExtract(e).frames,u=null,l=!1,c=a.length;if(s)s.refCount++;else{var _=12*c*h,f=this._chunkIdxMap.get(r),d=void 0!==f?this._customPool.alloc(_*Float32Array.BYTES_PER_ELEMENT,f):this._pool.alloc(_*Float32Array.BYTES_PER_ELEMENT);if(!d)return null;var p=this._createAnimInfos(t,e,n);s={pixelOffset:d.start/this._formatSize,refCount:1,bounds:new Map,skeletonHash:t.hash,clipHash:e.hash,readyToBeDeleted:!1,handle:d,animInfos:p},u=new Float32Array(_),l=!0}var m=i.getBoneSpaceBounds(t),g=[];s.bounds.set(i.hash,g);for(var v=0;v<h;v++)g.push(new Ra(Wj,Wj,Wj,-Wj,-Wj,-Wj));for(var y=0,S=0;y<h;y++){for(var T=g[y],A=0;A<c;A++,S+=12){var b=s.animInfos[A],E=b.curveData,C=b.downstream,x=b.bindposeIdx,w=b.bindposeCorrection,R=void 0,I=!0;E&&C?R=Vn.multiply(Uj,E[y],C):E?R=E[y]:C?R=C:(R=t.inverseBindposes[x],I=!1);var D=m[A];if(D){var B=w?Vn.multiply(zj,R,w):R;Ra.transform(Hj,D,B),Hj.getBoundary(Fj,kj),gn.min(T.center,T.center,Fj),gn.max(T.halfExtents,T.halfExtents,kj)}l&&(I&&Vn.multiply(Uj,R,o[x]),Lj(u,S,I?Uj:Vn.IDENTITY))}Ra.fromPoints(T,T.center,T.halfExtents)}return l&&(this._pool.update(s.handle,u.buffer),this._textureBuffers.set(r,s)),s},e.releaseHandle=function(t){if(t.refCount>0&&t.refCount--,!t.refCount&&t.readyToBeDeleted){var e=t.skeletonHash^t.clipHash;(void 0!==this._chunkIdxMap.get(e)?this._customPool:this._pool).free(t.handle),this._textureBuffers.get(e)===t&&this._textureBuffers.delete(e)}},e.releaseSkeleton=function(t){for(var e=this._textureBuffers.values(),i=e.next();!i.done;){var n=i.value;n.skeletonHash===t.hash&&(n.readyToBeDeleted=!0,n.refCount?this._textureBuffers.delete(n.skeletonHash^n.clipHash):this.releaseHandle(n)),i=e.next()}},e.releaseAnimationClip=function(t){for(var e=this._textureBuffers.values(),i=e.next();!i.done;){var n=i.value;n.clipHash===t.hash&&(n.readyToBeDeleted=!0,n.refCount?this._textureBuffers.delete(n.skeletonHash^n.clipHash):this.releaseHandle(n)),i=e.next()}},e._createAnimInfos=function(t,e,i){for(var n=[],r=t.joints,s=t.bindposes,a=r.length,o=Bj.getOrExtract(e),h=0;h<a;h++){for(var u=r[h],l=o.joints[u],c=i.getChildByPath(u),_=void 0,f=void 0;!l;){var d=u.lastIndexOf("/");if(u=u.substring(0,d),l=o.joints[u],c?(_||(_=new Vn),Vn.fromRTS(Uj,c.rotation,c.position,c.scale),Vn.multiply(_,Uj,_),c=c.parent):f=u,d<0)break}var p=h,m=void 0;if(void 0!==f&&l){p=h-1;for(var g=0;g<a;g++)if(r[g]===f){p=g,m=new Vn,Vn.multiply(m,s[g],t.inverseBindposes[h]);break}}n.push({curveData:l&&l.transforms,downstream:_,bindposeIdx:p,bindposeCorrection:m})}return n},n(t,[{key:"pixelsPerJoint",get:function(){return this._pixelsPerJoint}}]),t}(),jj=function(){function t(t){this._pool=new Map,this._device=void 0,this._device=t}var e=t.prototype;return e.getData=function(t){void 0===t&&(t="-1");var e=this._pool.get(t);if(e)return e;var i=this._device.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,uv.SIZE,uv.SIZE)),n=new Float32Array([0,0,0,0]);i.update(n);var r={buffer:i,data:n,dirty:!1,dirtyForJSB:new Uint8Array([0]),currentClip:null};return this._pool.set(t,r),r},e.destroy=function(t){var e=this._pool.get(t);e&&(e.buffer.destroy(),this._pool.delete(t))},e.switchClip=function(t,e){return t.currentClip=e,t.data[0]=0,t.buffer.update(t.data),t.dirty=!1,t},e.clear=function(){for(var t,e=f(this._pool.values());!(t=e()).done;)t.value.buffer.destroy();this._pool.clear()},t}(),Yj=[],qj=new Map;function Kj(t,e){for(var i=0,n=Vn.IDENTITY;t;){if(t.stamp===e||t.stamp+1===e&&!t.node.hasChangedFlags){n=t.world,t.stamp=e;break}t.stamp=e,Yj[i++]=t,t=t.parent}for(;i>0;){t=Yj[--i],Yj[i]=null;var r=t.node;Vn.fromRTS(t.local,r.rotation,r.position,r.scale),n=Vn.multiply(t.world,n,t.local)}return n}function Qj(t,e){for(var i,n=null,r=0;t!==e;){var s=t.uuid;if(qj.has(s)){n=qj.get(s);break}n={node:t,local:new Vn,world:new Vn,stamp:-1,parent:null},qj.set(s,n),Yj[r++]=n,t=t.parent,n=null}for(;r>0;)i=Yj[--r],Yj[r]=null,i.parent=n,n=i;return n}function Zj(t){for(var e=qj.get(t.uuid)||null;e;)qj.delete(e.node.uuid),e=e.parent}var Jj=[{name:"CC_USE_SKINNING",value:!0},{name:"CC_USE_REAL_TIME_JOINT_TEXTURE",value:!1}],$j=[{name:"CC_USE_SKINNING",value:!0},{name:"CC_USE_REAL_TIME_JOINT_TEXTURE",value:!0}];function tY(t,e,i,n){for(var r=0;r<i.length;r++){for(var s=i[r],a=-1,o=0;o<s.length;o++)if(s[o]===n){a=o;break}a>=0&&(e.push(r),t.push(a))}}var eY=new gn,iY=new gn,nY=new gn,rY=new gn,sY=new Vn,aY=new Ra,oY=function(){this._format=yd.RGBA32F,this._textures=[],this._buffers=[]};oY.WIDTH=256,oY.HEIGHT=3;var hY,uY,lY,cY,_Y,fY,dY,pY,mY,gY,vY,yY,SY,TY,AY,bY,EY,CY,xY,wY,RY,IY,DY,BY,MY,PY,OY,LY,NY,FY,kY,GY,VY=function(t){function e(){var e;return(e=t.call(this)||this)._buffers=[],e._dataArray=[],e._joints=[],e._bufferIndices=null,e._realTimeJointTexture=new oY,e._realTimeTextureMode=!1,e.type=vR.SKINNING,e}s(e,t);var i=e.prototype;return i.destroy=function(){if(this.bindSkeleton(),this._buffers.length){for(var e=0;e<this._buffers.length;e++)this._buffers[e].destroy();this._buffers.length=0}this._dataArray.length=0,this._realTimeJointTexture._textures.forEach((function(t){t.destroy()})),this._realTimeJointTexture._textures.length=0,this._realTimeJointTexture._buffers.length=0,t.prototype.destroy.call(this)},i.uploadAnimation=function(){},i.bindSkeleton=function(t,e,i){void 0===t&&(t=null),void 0===e&&(e=null),void 0===i&&(i=null);for(var n=0;n<this._joints.length;n++)Zj(this._joints[n].target);if(this._bufferIndices=null,this._joints.length=0,t&&e&&i){this._realTimeTextureMode=!1,cv.JOINT_UNIFORM_CAPACITY<t.joints.length&&(this._realTimeTextureMode=!0),this.transform=e;var r=i.getBoneSpaceBounds(t),s=i.struct.jointMaps;this._ensureEnoughBuffers(s&&s.length||1),this._bufferIndices=i.jointBufferIndices,this._initRealTimeJointTexture();for(var a=0;a<t.joints.length;a++){var o=r[a],h=e.getChildByPath(t.joints[a]);if(o&&h){var u=Qj(h,e),l=t.bindposes[a],c=[],_=[];s?tY(c,_,s,a):(c.push(a),_.push(0)),this._joints.push({indices:c,buffers:_,bound:o,target:h,bindpose:l,transform:u})}}}},i.updateTransform=function(t){var e=this.transform;(e.hasChangedFlags||e.isTransformDirty())&&(e.updateWorldTransform(),this._localDataUpdated=!0),gn.set(eY,1/0,1/0,1/0),gn.set(iY,-1/0,-1/0,-1/0);for(var i=0;i<this._joints.length;i++){var n=this._joints[i],r=n.bound,s=Kj(n.transform,t);Ra.transform(aY,r,s),aY.getBoundary(nY,rY),gn.min(eY,eY,nY),gn.max(iY,iY,rY)}var a=this._worldBounds;this._modelBounds&&a&&(Ra.fromPoints(this._modelBounds,eY,iY),this._modelBounds.transform(e._mat,e._pos,e._rot,e._scale,this._worldBounds))},i.updateUBOs=function(e){t.prototype.updateUBOs.call(this,e);for(var i=0;i<this._joints.length;i++){var n=this._joints[i],r=n.indices,s=n.buffers,a=n.transform,o=n.bindpose;Vn.multiply(sY,a.world,o);for(var h=0;h<s.length;h++)Lj(this._dataArray[s[h]],12*r[h],sY)}if(this._realTimeTextureMode)this._updateRealTimeJointTextureBuffer();else for(var u=0;u<this._buffers.length;u++)this._buffers[u].update(this._dataArray[u]);return!0},i.initSubModel=function(e,i,n){var r=i.vertexBuffers,s=i.iaInfo;s.vertexBuffers=i.jointMappedBuffers,t.prototype.initSubModel.call(this,e,i,n),s.vertexBuffers=r},i.getMacroPatches=function(e){var i=t.prototype.getMacroPatches.call(this,e),n=Jj;return this._realTimeTextureMode&&(n=$j),i?n.concat(i):n},i._updateLocalDescriptors=function(e,i){t.prototype._updateLocalDescriptors.call(this,e,i);var n=this._bufferIndices[e];if(this._realTimeTextureMode)this._bindRealTimeJointTexture(n,i);else{var r=this._buffers[n];r&&i.bindBuffer(cv.BINDING,r)}},i._updateInstancedAttributes=function(e,i){i.passes[0].batchingScheme!==TT.NONE&&tt(3936,this.node.getPathInHierarchy()),t.prototype._updateInstancedAttributes.call(this,e,i)},i._ensureEnoughBuffers=function(t){if(this._buffers.length){for(var e=0;e<this._buffers.length;e++)this._buffers[e].destroy();this._buffers.length=0}if(this._dataArray.length&&(this._dataArray.length=0),this._realTimeTextureMode)for(var i=0;i<t;i++){var n=oY.WIDTH;this._dataArray[i]=new Float32Array(12*n)}else for(var r=0;r<t;r++){this._buffers[r]=this._device.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,cv.SIZE,cv.SIZE));var s=cv.JOINT_UNIFORM_CAPACITY;this._dataArray[r]=new Float32Array(12*s)}},i._initRealTimeJointTexture=function(){if(this._realTimeJointTexture._textures.length&&(this._realTimeJointTexture._textures.forEach((function(t){t.destroy()})),this._realTimeJointTexture._textures.length=0),this._realTimeJointTexture._buffers.length=0,this._realTimeTextureMode){var t=ID.root.device,e=oY.WIDTH,i=oY.HEIGHT;0==(t.getFormatFeatures(ec.RGBA32F)&cc.SAMPLED_TEXTURE)&&(this._realTimeJointTexture._format=yd.RGBA8888,e=4*oY.WIDTH);for(var n=this._realTimeJointTexture._textures,r=this._realTimeJointTexture._buffers,s=this._realTimeJointTexture._format,a=0;a<this._dataArray.length;a++){r[a]=new Float32Array(4*oY.HEIGHT*oY.WIDTH);var o=r[a],h=s===yd.RGBA32F?o:new Uint8Array(o.buffer),u=new Vd({width:e,height:i,_data:h,_compressed:!1,format:s}),l=new lm;l.setFilters(lm.Filter.NEAREST,lm.Filter.NEAREST),l.setMipFilter(lm.Filter.NONE),l.setWrapMode(lm.WrapMode.CLAMP_TO_EDGE,lm.WrapMode.CLAMP_TO_EDGE,lm.WrapMode.CLAMP_TO_EDGE),l.image=u,n[a]=l}}},i._bindRealTimeJointTexture=function(t,e){if(this._realTimeTextureMode){var i=this._realTimeJointTexture._textures[t];if(i){var n=i.getGFXTexture(),r=i.getGFXSampler();e.bindTexture(yv,n),e.bindSampler(yv,r)}}},i._updateRealTimeJointTextureBuffer=function(){if(this._realTimeTextureMode)for(var t=this._realTimeJointTexture._textures,e=this._realTimeJointTexture._buffers,i=0;i<t.length;i++){for(var n=e[i],r=this._dataArray[i],s=r.length/12,a=0,o=0,h=0;h<s;h++)o=4*h,n[o++]=r[a++],n[o++]=r[a++],n[o++]=r[a++],n[o++]=r[a++],o=4*(h+oY.WIDTH),n[o++]=r[a++],n[o++]=r[a++],n[o++]=r[a++],n[o++]=r[a++],o=4*(h+2*oY.WIDTH),n[o++]=r[a++],n[o++]=r[a++],n[o++]=r[a++],n[o++]=r[a++];var u=this._realTimeJointTexture._format===yd.RGBA32F?n:new Uint8Array(n.buffer);t[i].uploadData(u)}},e}(TH),UY=[{name:"CC_USE_SKINNING",value:!0},{name:"CC_USE_BAKED_ANIMATION",value:!0}],zY=function(t){function e(){var e;(e=t.call(this)||this).uploadedAnim=void 0,e._jointsMedium=void 0,e._skeleton=null,e._mesh=null,e._dataPoolManager=void 0,e._instAnimInfoIdx=-1,e.type=vR.BAKED_SKINNING,e._dataPoolManager=S.director.root.dataPoolManager;var i=new Float32Array(4),n=e._dataPoolManager.jointAnimationInfo.getData();return e._jointsMedium={buffer:null,jointTextureInfo:i,animInfo:n,texture:null,boundsInfo:null},e}s(e,t);var i=e.prototype;return i.destroy=function(){this.uploadedAnim=void 0,this._jointsMedium.boundsInfo=null,this._jointsMedium.buffer&&(this._jointsMedium.buffer.destroy(),this._jointsMedium.buffer=null),this._applyJointTexture(),t.prototype.destroy.call(this)},i.bindSkeleton=function(t,e,i){if(void 0===t&&(t=null),void 0===e&&(e=null),void 0===i&&(i=null),this._skeleton=t,this._mesh=i,t&&e&&i){this.transform=e;var n=this._dataPoolManager;this._jointsMedium.animInfo=n.jointAnimationInfo.getData(e.uuid),this._jointsMedium.buffer||(this._jointsMedium.buffer=this._device.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.DEVICE,hv.SIZE,hv.SIZE)))}},i.updateTransform=function(e){if(t.prototype.updateTransform.call(this,e),this.uploadedAnim){var i=this._jointsMedium,n=i.animInfo,r=i.boundsInfo[n.data[0]],s=this._worldBounds;if(s&&r){var a=this.transform;r.transform(a._mat,a._pos,a._rot,a._scale,s)}}},i.updateUBOs=function(e){t.prototype.updateUBOs.call(this,e);for(var i=this._jointsMedium.animInfo,n=!1,r=this._instAnimInfoIdx,s=0;s<this._subModels.length;s++){var a=this._subModels[s];r>=0?a.instancedAttributeBlock.views[r][0]=i.data[0]:n=!0}return n&&i.dirty&&(i.buffer.update(i.data),i.dirty=!1),!0},i.getMacroPatches=function(e){var i=t.prototype.getMacroPatches.call(this,e);return i?i.concat(UY):UY},i.uploadAnimation=function(t){if(this._skeleton&&this._mesh&&this.uploadedAnim!==t){this.uploadedAnim=t;var e=this._dataPoolManager,i=null;t?(i=e.jointTexturePool.getSequencePoseTexture(this._skeleton,t,this._mesh,this.transform),this._jointsMedium.boundsInfo=i&&i.bounds.get(this._mesh.hash),this._modelBounds=null):(i=e.jointTexturePool.getDefaultPoseTexture(this._skeleton,this._mesh,this.transform),this._jointsMedium.boundsInfo=null,this._modelBounds=i&&i.bounds.get(this._mesh.hash)[0]),this._applyJointTexture(i)}},i._applyJointTexture=function(t){void 0===t&&(t=null);var e=this._jointsMedium.texture;if(e&&e!==t&&this._dataPoolManager.jointTexturePool.releaseHandle(e),this._jointsMedium.texture=t,t){var i=this._jointsMedium,n=i.buffer,r=i.jointTextureInfo;r[0]=t.handle.texture.width,r[1]=this._skeleton.joints.length,r[2]=t.pixelOffset+.1,r[3]=1/r[0],this.updateInstancedJointTextureInfo(),n&&n.update(r);for(var s=t.handle.texture,a=0;a<this._subModels.length;++a)this._subModels[a].descriptorSet.bindTexture(mv,s)}},i._updateLocalDescriptors=function(e,i){t.prototype._updateLocalDescriptors.call(this,e,i);var n=this._jointsMedium,r=n.buffer,s=n.texture,a=n.animInfo;if(i.bindBuffer(hv.BINDING,r),i.bindBuffer(uv.BINDING,a.buffer),s){var o=this._device.getSampler(Oj);i.bindTexture(mv,s.handle.texture),i.bindSampler(mv,o)}},i._updateInstancedAttributes=function(e,i){t.prototype._updateInstancedAttributes.call(this,e,i),this._instAnimInfoIdx=i.getInstancedAttributeIndex(lv),this.updateInstancedJointTextureInfo()},i.updateInstancedJointTextureInfo=function(){for(var t=this._jointsMedium,e=t.jointTextureInfo,i=t.animInfo,n=this._instAnimInfoIdx,r=0;r<this._subModels.length;r++){var s=this._subModels[r].instancedAttributeBlock.views;if(n>=0&&s.length>0){var a=s[n];a[0]=i.data[0],a[1]=e[1],a[2]=e[2]}}},e}(TH),HY=t("aj",(hY=eo("cc.SkinnedMeshRenderer"),uY=no(100),lY=Lo(rW),cY=Lo(hg),_Y=Lo(rW),fY=Lo(hg),hY(dY=uY((pY=function(t){function e(){var e;return(e=t.call(this)||this)._skeleton=mY&&mY(),e._skinningRoot=gY&&gY(),e._clip=null,e.associatedAnimation=null,e._modelType=zY,e}s(e,t);var i=e.prototype;return i.onLoad=function(){t.prototype.onLoad.call(this),this._tryBindAnimation()},i.onDestroy=function(){this.associatedAnimation&&(this.associatedAnimation.notifySkinnedMeshRemoved(this),this.associatedAnimation),t.prototype.onDestroy.call(this)},i.uploadAnimation=function(t){this._clip=t,this.model&&this.model.uploadAnimation&&this.model.uploadAnimation(t)},i.setUseBakedAnimation=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=!1);var i=t?zY:VY;(e||this._modelType!==i)&&(this._modelType=i,this._model&&(S.director.root.destroyModel(this._model),this._model=null,this._models.length=0,this._updateModels(),this._updateCastShadow(),this._updateReceiveShadow(),this._updateUseLightProbe(),this.enabledInHierarchy&&this._attachToScene()))},i.setSharedMaterial=function(e,i){t.prototype.setSharedMaterial.call(this,e,i),this._modelType===VY&&this.getMaterialInstance(i)},i._updateModelParams=function(){this._update(),t.prototype._updateModelParams.call(this)},i._tryBindAnimation=function(){var t=this._skinningRoot;if(t){for(var e=!1,i=this.node;i;i=i.parent)if(i===t){e=!0;break}if(e){var n=t.getComponent("cc.SkeletalAnimation");n&&n.enabledInHierarchy?n.notifySkinnedMeshAdded(this):this.setUseBakedAnimation(!1)}}},i._update=function(){this.model&&(this.model.bindSkeleton(this._skeleton,this._skinningRoot,this._mesh),this.model.uploadAnimation&&this.model.uploadAnimation(this._clip))},n(e,[{key:"skeleton",get:function(){return this._skeleton},set:function(t){t!==this._skeleton&&(this._skeleton=t,this._update())}},{key:"skinningRoot",get:function(){return this._skinningRoot},set:function(t){t!==this._skinningRoot&&(this._skinningRoot=t,this._tryBindAnimation(),this._update())}},{key:"model",get:function(){return this._model}}]),e}(VH),mY=ja(pY.prototype,"_skeleton",[lY],(function(){return null})),gY=ja(pY.prototype,"_skinningRoot",[cY],(function(){return null})),m(pY.prototype,"skeleton",[_Y],Object.getOwnPropertyDescriptor(pY.prototype,"skeleton"),pY.prototype),m(pY.prototype,"skinningRoot",[fY],Object.getOwnPropertyDescriptor(pY.prototype,"skinningRoot"),pY.prototype),dY=pY))||dY)||dY)),WY=new T_(Uc.ATTR_BATCH_ID,ec.R32F),XY=new T_(Uc.ATTR_BATCH_UV,ec.RG32F),jY=j_[WY.format].size+j_[XY.format].size,YY=t("al",(vY=eo("cc.SkinnedMeshUnit"),yY=Lo(ZB),SY=Lo(rW),TY=Lo(zT),AY=Lo(HY),vY((EY=function(){function t(){this.mesh=CY&&CY(),this.skeleton=xY&&xY(),this.material=wY&&wY(),this._localTransform=RY&&RY(),this._offset=IY&&IY(),this._size=DY&&DY()}return n(t,[{key:"offset",get:function(){return this._offset},set:function(t){jn.copy(this._offset,t)}},{key:"size",get:function(){return this._size},set:function(t){jn.copy(this._size,t)}},{key:"copyFrom",get:function(){return null},set:function(t){t&&(this.mesh=t.mesh,this.skeleton=t.skeleton,this.material=t.getSharedMaterial(0),t.skinningRoot&&Pj(t.node,t.skinningRoot,this._localTransform))}}]),t}(),CY=ja(EY.prototype,"mesh",[yY],(function(){return null})),xY=ja(EY.prototype,"skeleton",[SY],(function(){return null})),wY=ja(EY.prototype,"material",[TY],(function(){return null})),RY=ja(EY.prototype,"_localTransform",[lo],(function(){return new Vn})),IY=ja(EY.prototype,"_offset",[lo],(function(){return new jn(0,0)})),DY=ja(EY.prototype,"_size",[lo],(function(){return new jn(1,1)})),m(EY.prototype,"copyFrom",[AY],Object.getOwnPropertyDescriptor(EY.prototype,"copyFrom"),EY.prototype),bY=EY))||bY)),qY=new Vn;new Vn;var KY,QY,ZY,JY,$Y,tq,eq,iq,nq,rq,sq,aq,oq,hq,uq,lq,cq,_q=new gn,fq=t("ak",(BY=eo("cc.SkinnedMeshBatchRenderer"),MY=no(100),PY=Lo([si]),OY=Lo([YY]),BY(LY=MY((NY=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).atlasSize=FY&&FY(),e.batchableTextureNames=kY&&kY(),e.units=GY&&GY(),e._textures={},e._batchMaterial=null,e}s(e,t);var i=e.prototype;return i.onLoad=function(){t.prototype.onLoad.call(this),this.cook()},i.onDestroy=function(){for(var e in this._textures)this._textures[e].destroy();this._textures={},this._mesh&&(this._mesh.destroy(),this._mesh=null),t.prototype.onDestroy.call(this)},i._onMaterialModified=function(e){this.cookMaterials(),t.prototype._onMaterialModified.call(this,e,this.getMaterialInstance(e))},i.cook=function(){this.cookMaterials(),this.cookSkeletons(),this.cookMeshes()},i.cookMaterials=function(){var t=this;this._batchMaterial||(this._batchMaterial=this.getSharedMaterial(0));var e=this.getMaterialInstance(0);if(e&&this._batchMaterial&&this._batchMaterial.effectAsset){e.copy(this._batchMaterial),this.resizeAtlases();for(var i=e.effectAsset.techniques[e.technique],n=function(n){var r=i.passes[n];if(!r.properties)return 1;var s=function(i){if(r.properties[i].type>=nc.SAMPLER1D){var s=null;t.batchableTextureNames.find((function(t){return t===i}))?((s=t._textures[i])||(s=t.createTexture(i)),t.cookTextures(s,i,n)):t.units.some((function(t){return s=t.material&&t.material.getProperty(i,n)})),s&&e.setProperty(i,s,n)}else{for(var a=[],o=0;o<t.units.length;o++){var h=t.units[o];h.material&&a.push(h.material.getProperty(i.slice(0,-3),n))}e.setProperty(i,a,n)}};for(var a in r.properties)s(a)},r=0;r<i.passes.length;r++)n(r)}else z("incomplete batch material!")},i.cookSkeletons=function(){if(this._skinningRoot){for(var t=[],e=[],i=0;i<this.units.length;i++){var n=this.units[i];if(n&&n.skeleton){var r=n.skeleton;Vn.invert(qY,n._localTransform);for(var s=function(){var i=r.joints[a];if(t.findIndex((function(t){return t===i}))>=0)return 1;t.push(i),e.push(Vn.multiply(new Vn,r.bindposes[a]||Vn.IDENTITY,qY))},a=0;a<r.joints.length;a++)s()}}var o=Array.from(Array(t.length).keys()).sort((function(e,i){return t[e]>t[i]?1:t[e]<t[i]?-1:0})),h=new rW;h.joints=t.map((function(t,e,i){return i[o[e]]})),h.bindposes=e.map((function(t,e,i){return i[o[e]]})),this._skeleton&&this._skeleton.destroy(),this.skeleton=h}else z("no skinning root specified!")},i.cookMeshes=function(){for(var t=this,e=!1,i=0;i<this.units.length;i++)if(this.units[i].mesh){e=!0;break}if(e&&this._skinningRoot){this._mesh?this._mesh.destroyRenderingMesh():this._mesh=new ZB;for(var n=0,r=ec.UNKNOWN,s=0,a=ec.UNKNOWN,o=0,h=ec.UNKNOWN,u=0,l=ec.UNKNOWN,c=0,_=ec.UNKNOWN,f=new Array(this.units.length),d=this.units.length,p=0;p<d;p++){var m=this.units[p];m&&m.skeleton&&(f[p]=m.skeleton.joints.map((function(e){return t._skeleton.joints.findIndex((function(t){return e===t}))})))}for(var g=function(){var e=t.units[v];if(!e||!e.mesh||!e.mesh.data)return 1;var i=t._createUnitMesh(v,e.mesh),d=new DataView(i.data.buffer);Vn.invert(qY,e._localTransform),Vn.transpose(qY,qY);for(var p=e.offset,m=e.size,g=function(){var t=i.struct.vertexBundles[y];n=t.view.offset,r=ec.UNKNOWN;for(var g=0;g<t.attributes.length;g++){var S=t.attributes[g];if(S.name===Uc.ATTR_POSITION){r=S.format;break}n+=j_[S.format].size}if(r){for(var T=LD(d,r,n,t.view.length,t.view.stride),A=0;A<T.length;A+=3)gn.fromArray(_q,T,A),gn.transformMat4(_q,_q,e._localTransform),gn.toArray(T,_q,A);OD(d,T,r,n,t.view.stride)}s=t.view.offset,a=ec.UNKNOWN;for(var b=0;b<t.attributes.length;b++){var E=t.attributes[b];if(E.name===Uc.ATTR_NORMAL){a=E.format;break}s+=j_[E.format].size}if(a){for(var C=LD(d,a,s,t.view.length,t.view.stride),x=0;x<C.length;x+=3)gn.fromArray(_q,C,x),gn.transformMat4Normal(_q,_q,qY),gn.toArray(C,_q,x);OD(d,C,a,s,t.view.stride)}o=t.view.offset,h=ec.UNKNOWN;for(var w=0;w<t.attributes.length;w++){var R=t.attributes[w];if(R.name===Uc.ATTR_TANGENT){h=R.format;break}o+=j_[R.format].size}if(h){for(var I=LD(d,h,o,t.view.length,t.view.stride),D=0;D<I.length;D+=3)gn.fromArray(_q,I,D),gn.transformMat4Normal(_q,_q,qY),gn.toArray(I,_q,D);OD(d,I,h,o,t.view.stride)}u=t.view.offset,l=ec.UNKNOWN;for(var B=0;B<t.attributes.length;B++){var M=t.attributes[B];if(M.name===Uc.ATTR_BATCH_UV){l=M.format;break}u+=j_[M.format].size}l&&ND(d,(function(t,e){var i,n=0===e?"x":"y";return(t=(i=t)-Math.floor(i))*m[n]+p[n]}),l,u,t.view.length,t.view.stride,d);var P=f[v];if(!P)return 1;c=t.view.offset,_=ec.UNKNOWN;for(var O=0;O<t.attributes.length;O++){var L=t.attributes[O];if(L.name===Uc.ATTR_JOINTS){_=L.format;break}c+=j_[L.format].size}_&&ND(d,(function(t){return P[t]}),_,c,t.view.length,t.view.stride,d)},y=0;y<i.struct.vertexBundles.length;y++)g();t._mesh.merge(i)},v=0;v<d;v++)g();this._onMeshChanged(this._mesh),this._updateModels()}},i.cookTextures=function(t,e,i){for(var n=[],r=[],s=[],a=[],o=0;o<this.units.length;o++){var h=this.units[o];if(h.material){var u=h.material.getProperty(e,i);if(u&&u.image&&u.image.data){var l=new Jc;l.texOffset.x=h.offset.x*this.atlasSize,l.texOffset.y=h.offset.y*this.atlasSize,l.texExtent.width=h.size.x*this.atlasSize,l.texExtent.height=h.size.y*this.atlasSize;var c=u.image.data;ArrayBuffer.isView(c)?(s.push(c),a.push(l)):(n.push(c),r.push(l))}}}var _=t.getGFXTexture(),f=S.director.root.device;s.length>0&&f.copyBuffersToTexture(s,_,a),n.length>0&&f.copyTexImagesToTexture(n,_,r)},i.createTexture=function(t){var e=new lm;return e.setFilters(Td.LINEAR,Td.LINEAR),e.setMipFilter(Td.NEAREST),e.reset({width:this.atlasSize,height:this.atlasSize,format:yd.RGBA8888}),this._textures[t]=e,e},i.resizeAtlases=function(){for(var t in this._textures)this._textures[t].reset({width:this.atlasSize,height:this.atlasSize,format:yd.RGBA8888})},i._createUnitMesh=function(t,e){for(var i=JSON.parse(JSON.stringify(e.struct)),n={},r=0;r<e.struct.primitives.length;r++){for(var s=e.struct.primitives[r],a=0,o=ec.UNKNOWN,h=0;h<s.vertexBundelIndices.length;h++){var u=e.struct.vertexBundles[s.vertexBundelIndices[h]];a=u.view.offset,o=ec.UNKNOWN;for(var l=0;l<u.attributes.length;l++){var c=u.attributes[l];if(c.name===Uc.ATTR_TEX_COORD){o=c.format;break}a+=j_[c.format].size}if(o)break}if(void 0===n[h]){n[h]=[o,a];var _=i.vertexBundles[h];_.attributes.push(WY),_.attributes.push(XY),_.view.offset=0,_.view.length+=_.view.count*jY,_.view.stride+=jY}}for(var f=0,d=0;d<i.vertexBundles.length;d++)f+=i.vertexBundles[d].view.length;for(var p=0;p<i.primitives.length;p++){var m=i.primitives[p];m.indexView&&(m.indexView.offset=f,f+=m.indexView.length)}var g=new Uint8Array(f),v=e.data,y=new DataView(g.buffer),T=new DataView(v.buffer),A=S.sys.isLittleEndian;for(var b in n)for(var E=i.vertexBundles[b],C=e.struct.vertexBundles[b],x=n[b],w=LD(T,x[0],x[1],C.view.length,C.view.stride),R=C.view,I=E.view,D=R.stride,B=I.stride,M=R.offset,P=I.offset,O=0;O<I.count;O++){var L=v.subarray(M,M+D);g.set(L,P),y.setFloat32(P+D,t),y.setFloat32(P+D+4,w[2*O],A),y.setFloat32(P+D+8,w[2*O+1],A),P+=B,M+=D}for(var N=0;N<i.primitives.length;N++){var F=e.struct.primitives[N],k=i.primitives[N];if(F.indexView&&k.indexView)for(var G=F.indexView.stride,V=k.indexView.stride,U=F.indexView.offset,z=k.indexView.offset,H=0;H<k.indexView.count;H++){var W=v.subarray(U,U+G);g.set(W,z),z+=V,U+=G}}var X=new ZB;return X.reset({struct:i,data:g}),X},n(e,[{key:"mesh",get:function(){return t.prototype.mesh},set:function(t){this.mesh=t}},{key:"skeleton",get:function(){return t.prototype.skeleton},set:function(t){this.skeleton=t}}]),e}(HY),FY=ja(NY.prototype,"atlasSize",[lo],(function(){return 1024})),kY=ja(NY.prototype,"batchableTextureNames",[PY,lo],(function(){return[]})),GY=ja(NY.prototype,"units",[OY,lo],(function(){return[]})),m(NY.prototype,"mesh",[jo],Object.getOwnPropertyDescriptor(NY.prototype,"mesh"),NY.prototype),m(NY.prototype,"skeleton",[jo],Object.getOwnPropertyDescriptor(NY.prototype,"skeleton"),NY.prototype),LY=NY))||LY)||LY));S.SkinningModelComponent=HY,ne(HY,"cc.SkinningModelComponent"),S.SkinningModelUnit=YY,ne(YY,"cc.SkinningModelUnit"),S.BatchedSkinningModelComponent=fq,ne(fq,"cc.BatchedSkinningModelComponent");var dq=[.25,.125,.01],pq=t("am",(KY=eo("cc.LOD"),QY=Lo([VH]),ZY=Lo(ni),JY=Lo([VH]),$Y=Lo([ii]),KY((eq=function(){function t(){this._screenUsagePercentage=iq&&iq(),this._renderers=nq&&nq(),this._LODData=new QR,this._modelAddedCallback=void 0,this._LODData.screenUsagePercentage=this._screenUsagePercentage,this._modelAddedCallback=null}var e=t.prototype;return e.insertRenderer=function(t,e){(t<0||t>this._renderers.length)&&(t=this._renderers.length),this._renderers.splice(t,0,e);var i=!1;return e.model&&(i=!0,this._LODData.addModel(e.model)),this._modelAddedCallback&&i&&this._modelAddedCallback(),e},e.deleteRenderer=function(t){var e,i=this._renderers.splice(t,1),n=i.length>0?null===(e=i[0])||void 0===e?void 0:e.model:null;return n&&this._LODData.eraseModel(n),i[0]},e.getRenderer=function(t){return this._renderers[t]||null},e.setRenderer=function(t,e){t<0||t>=this.rendererCount?H("setRenderer to LOD error, index out of range"):(this.deleteRenderer(t),this.insertRenderer(t,e))},n(t,[{key:"screenUsagePercentage",get:function(){return this._screenUsagePercentage},set:function(t){this._screenUsagePercentage=t,this._LODData.screenUsagePercentage=t}},{key:"renderers",get:function(){return this._renderers},set:function(t){if(t!==this._renderers){var e=!1;this._renderers.length=0,this._LODData.clearModels();for(var i=0;i<t.length;i++){var n;this._renderers[i]=t[i];var r=null===(n=t[i])||void 0===n?void 0:n.model;r&&(e=!0,this._LODData.addModel(r))}this._modelAddedCallback&&e&&this._modelAddedCallback()}}},{key:"triangleCount",get:function(){var t=[];return this._renderers.forEach((function(e){var i=0;if(e&&e.mesh){var n=e.mesh.struct.primitives;null==n||n.forEach((function(t){t&&t.indexView&&(i+=t.indexView.count)}))}t.push(i/3)})),t}},{key:"rendererCount",get:function(){return this._renderers.length}},{key:"lodData",get:function(){return this._LODData}},{key:"modelAddedCallback",set:function(t){this._modelAddedCallback=t}}]),t}(),iq=ja(eq.prototype,"_screenUsagePercentage",[lo],(function(){return 1})),nq=ja(eq.prototype,"_renderers",[QY,lo],(function(){return[]})),m(eq.prototype,"screenUsagePercentage",[ZY],Object.getOwnPropertyDescriptor(eq.prototype,"screenUsagePercentage"),eq.prototype),m(eq.prototype,"renderers",[JY],Object.getOwnPropertyDescriptor(eq.prototype,"renderers"),eq.prototype),m(eq.prototype,"triangleCount",[$Y],Object.getOwnPropertyDescriptor(eq.prototype,"triangleCount"),eq.prototype),tq=eq))||tq)),mq=(t("an",(rq=eo("cc.LODGroup"),sq=Lo(ni),aq=Lo([pq]),rq((hq=function(t){function e(){var e;return(e=t.call(this)||this)._localBoundaryCenter=uq&&uq(),e._objectSize=lq&&lq(),e._LODs=cq&&cq(),e._lodGroup=new ZR,e._eventRegistered=!1,e._forceUsedLevels=[],e}s(e,t);var i=e.prototype;return i.onLodModelAddedCallback=function(){0===this.objectSize&&this.recalculateBounds()},i.insertLOD=function(t,e,i){if((t<0||t>this.lodCount)&&(t=this.lodCount),i||(i=new pq),i.modelAddedCallback=this.onLodModelAddedCallback.bind(this),!e){var n=this.getLOD(t-1),r=this.getLOD(t);if(n&&r)e=(n.screenUsagePercentage+r.screenUsagePercentage)/2;else if(n&&!r)(e=n.screenUsagePercentage/2)>.01&&(e=.01);else if(r&&!n){e=r.screenUsagePercentage;var s=this.getLOD(t+1);r.screenUsagePercentage=(e+(s?s.screenUsagePercentage:0))/2}else e=dq[0]}return i.screenUsagePercentage=e,this._LODs.splice(t,0,i),this._lodGroup.insertLOD(t,i.lodData),this._updateDataToScene(),this.node&&this._emitChangeNode(this.node),i},i.eraseLOD=function(t){if(t<0||t>=this.lodCount)return z("eraseLOD error, index out of range"),null;var e=this._LODs[t];return e?(this._LODs.splice(t,1),this._lodGroup.eraseLOD(t),this._updateDataToScene(),this._emitChangeNode(this.node),e):(z("eraseLOD error, LOD not exist at specified index."),null)},i.getLOD=function(t){return t<0||t>=this.lodCount?(z("getLOD error, index out of range"),null):this._LODs[t]},i.setLOD=function(t,e){t<0||t>=this.lodCount?z("setLOD error, index out of range"):(this._LODs[t]=e,e.modelAddedCallback=this.onLodModelAddedCallback.bind(this),this.lodGroup.updateLOD(t,e.lodData),this._updateDataToScene())},i.recalculateBounds=function(){for(var t=new gn,e=new gn,i=null,n=new gn,r=0;r<this.lodCount;++r){var s=this.getLOD(r);if(s)for(var a=0;a<s.rendererCount;++a){var o,h,u=s.getRenderer(a);if(u){null===(o=u.model)||void 0===o||o.updateWorldBound();var l=null===(h=u.model)||void 0===h?void 0:h.worldBounds;l&&(l.getBoundary(t,e),i?(gn.min(i,i,t),gn.max(n,n,e)):(i=t.clone(),n=e.clone()))}}}if(i){var c=i,_=new gn(.5*(n.x+c.x),.5*(n.y+c.y),.5*(n.z+c.z)),f=new gn(.5*(n.x-c.x),.5*(n.y-c.y),.5*(n.z-c.z)),d=function(t,e,i){var n,r,s=new Array(new gn(t.x-e.x,t.y-e.y,t.z-e.z),new gn(t.x-e.x,t.y+e.y,t.z-e.z),new gn(t.x+e.x,t.y+e.y,t.z-e.z),new gn(t.x+e.x,t.y-e.y,t.z-e.z),new gn(t.x-e.x,t.y-e.y,t.z+e.z),new gn(t.x-e.x,t.y+e.y,t.z+e.z),new gn(t.x+e.x,t.y+e.y,t.z+e.z),new gn(t.x+e.x,t.y-e.y,t.z+e.z));r=(n=s[0].transformMat4(i)).clone();for(var a=1;a<8;++a){var o=s[a].transformMat4(i);n=gn.min(n,n,o),r=gn.max(r,r,o)}return[n,r]}(_,f,this.node.worldMatrix.clone().invert()),p=d[0],m=d[1];_.set(.5*(m.x+p.x),.5*(m.y+p.y),.5*(m.z+p.z)),f.set(.5*(m.x-p.x),.5*(m.y-p.y),.5*(m.z-p.z)),this.localBoundaryCenter=_,this.objectSize=2*Math.max(f.x,f.y,f.z)}else this.localBoundaryCenter=new gn(0,0,0),this.objectSize=0;this._emitChangeNode(this.node)},i.resetObjectSize=function(){if(1!==this.objectSize){0===this.objectSize&&(this.objectSize=1);var t=1/this.objectSize;this.objectSize=1;for(var e=0;e<this.lodCount;++e){var i=this.getLOD(e);i&&(i.screenUsagePercentage*=t)}this._emitChangeNode(this.node)}},i.forceLOD=function(t){this._forceUsedLevels=t<0?[]:[t],this.lodGroup.lockLODLevels(this._forceUsedLevels)},i.forceLODs=function(){},i.onLoad=function(){this._lodGroup.node=this.node,this._lodGroup.objectSize=this._objectSize,this._lodGroup.localBoundaryCenter=this._localBoundaryCenter,this._eventRegistered||(this.node.on(vm.COMPONENT_REMOVED,this._onRemove,this),this._eventRegistered=!0),this._constructLOD()},i._onRemove=function(t){t===this&&this.onDisable()},i._constructLOD=function(){if(this.lodCount<1)for(var t=dq.length,e=0;e<t;e++)this.insertLOD(e,dq[e])},i.onRestore=function(){this._constructLOD(),this.enabledInHierarchy&&this._attachToScene()},i.onEnable=function(){var t=this;this._attachToScene(),0===this.objectSize&&this.recalculateBounds(),this.lodGroup.lockLODLevels(this._forceUsedLevels),this.lodCount>0&&this._lodGroup.lodCount<1&&this._LODs.forEach((function(e,i){e.lodData.screenUsagePercentage=e.screenUsagePercentage;var n=e.renderers;if(null!==n&&n.length>0)for(var r=0;r<n.length;r++){var s=e.lodData,a=n[r];s&&a&&a.model&&s.addModel(a.model)}t._lodGroup.insertLOD(i,e.lodData)}))},i.onDisable=function(){this._detachFromScene(),this.lodGroup.lockLODLevels([])},i._attachToScene=function(){if(this.node&&this.node.scene){var t=this._getRenderScene();this._lodGroup.scene&&this._detachFromScene(),t.addLODGroup(this._lodGroup)}},i._detachFromScene=function(){this._lodGroup.scene&&this._lodGroup.scene.removeLODGroup(this._lodGroup)},i._emitChangeNode=function(){},i._updateDataToScene=function(){this._detachFromScene(),this._attachToScene()},n(e,[{key:"localBoundaryCenter",get:function(){return this._localBoundaryCenter.clone()},set:function(t){this._localBoundaryCenter.set(t),this._lodGroup.localBoundaryCenter=t}},{key:"lodCount",get:function(){return this._LODs.length}},{key:"objectSize",get:function(){return this._objectSize},set:function(t){this._objectSize=t,this._lodGroup.objectSize=t}},{key:"LODs",get:function(){return this._LODs},set:function(t){var e=this;t!==this._LODs?(this._LODs.length=0,this.lodGroup.clearLODs(),t.forEach((function(t,i){e.lodGroup.insertLOD(i,t.lodData),e._LODs[i]=t,t.modelAddedCallback=e.onLodModelAddedCallback.bind(e)})),this._updateDataToScene()):this._updateDataToScene()}},{key:"lodGroup",get:function(){return this._lodGroup}}]),e}(mp),uq=ja(hq.prototype,"_localBoundaryCenter",[lo],(function(){return new gn(0,0,0)})),lq=ja(hq.prototype,"_objectSize",[lo],(function(){return 0})),cq=ja(hq.prototype,"_LODs",[lo],(function(){return[]})),m(hq.prototype,"objectSize",[sq],Object.getOwnPropertyDescriptor(hq.prototype,"objectSize"),hq.prototype),m(hq.prototype,"LODs",[aq],Object.getOwnPropertyDescriptor(hq.prototype,"LODs"),hq.prototype),oq=hq))||oq)),dm.makeMaskExclude([dm.BitMask.UI_2D,dm.BitMask.UI_3D,dm.BitMask.GIZMOS,dm.BitMask.EDITOR,dm.BitMask.SCENE_GIZMO,dm.BitMask.PROFILER,dm.Enum.IGNORE_RAYCAST])),gq=t("ap",function(){function t(){this._probes=[],this._useCubeModels=new Map,this._usePlanarModels=new Map,this._updateForRuntime=!0,this._dataTexture=null,this._registeredEvent=!1}var e=t.prototype;return e.registerEvent=function(){this._registeredEvent||(S.director.on(S.Director.EVENT_BEFORE_UPDATE,this.onUpdateProbes,this),this._registeredEvent=!0)},e.onUpdateProbes=function(){if(0!==this._probes.length){var t=S.director.getScene();if(t&&t.renderScene)for(var e=t.renderScene.models,i=0;i<e.length;i++){var n=e[i];n.node&&n.node.layer&mq&&(n.reflectionProbeType===pR.BAKED_CUBEMAP||this._isUsedBlending(n)?this.selectReflectionProbe(n):n.reflectionProbeType===pR.PLANAR_REFLECTION&&this.selectPlanarReflectionProbe(n))}}},e.filterModelsForPlanarReflection=function(){if(0!==this._probes.length){var t=S.director.getScene();if(t&&t.renderScene)for(var e=t.renderScene.models,i=0;i<e.length;i++){var n=e[i];n.node&&n.node.layer&mq&&n.reflectionProbeType===pR.PLANAR_REFLECTION&&this.selectPlanarReflectionProbe(n)}}},e.clearPlanarReflectionMap=function(t){for(var e,i=f(this._usePlanarModels.entries());!(e=i()).done;){var n=e.value;n[1]===t&&this._updatePlanarMapOfModel(n[0],null,null)}},e.register=function(t){-1===this._probes.indexOf(t)&&(this._probes.push(t),this.updateProbeData())},e.unregister=function(t){for(var e=0;e<this._probes.length;e++)if(this._probes[e]===t){var i=this._probes.splice(e,1);i[0]&&this._removeDependentModels(i[0]);break}this.updateProbeData()},e.exists=function(t){if(0===this._probes.length)return!1;for(var e=0;e<this._probes.length;e++)if(this._probes[e].getProbeId()===t)return!0;return!1},e.getNewReflectionProbeId=function(){for(var t=0;;){if(!this.exists(t))return t;t++}},e.getProbes=function(){return this._probes},e.getProbeById=function(t){for(var e=0;e<this._probes.length;e++)if(this._probes[e].getProbeId()===t)return this._probes[e];return null},e.clearAll=function(){this._probes=[]},e.getProbeByCamera=function(t){for(var e=0;e<this._probes.length;e++)if(this._probes[e].camera===t)return this._probes[e];return null},e.updateBakedCubemap=function(t){var e=this._getModelsByProbe(t);if(t.cubemap){for(var i=0;i<e.length;i++){var n=e[i];this._updateCubemapOfModel(n,t)}if(t.needRefresh=!1,0===e.length)for(var r,s=f(this._useCubeModels.entries());!(r=s()).done;){var a=r.value;a[0].reflectionProbeBlendId===t.getProbeId()&&this._updateBlendCubemap(a[0],t)}}},e.updatePlanarMap=function(t,e){if(t.node&&t.node.scene){for(var i=this._getModelsByProbe(t),n=0;n<i.length;n++)this._updatePlanarMapOfModel(i[n],e,t);if(t.previewPlane){var r=t.previewPlane.getComponent(VH);r&&r.updateProbePlanarMap(e)}}},e.selectPlanarReflectionProbe=function(t){if(t.node&&t.worldBounds&&t.reflectionProbeType===pR.PLANAR_REFLECTION){for(var e=0;e<this._probes.length;e++){var i=this._probes[e];i.probeType===cR.PLANAR&&t.node.layer&mq&&(t.updateWorldBound(),vs.aabbWithAABB(t.worldBounds,i.boundingBox)?this._usePlanarModels.set(t,i):this._usePlanarModels.has(t)&&this._usePlanarModels.get(t)===i&&(this._usePlanarModels.delete(t),this._updatePlanarMapOfModel(t,null,null)))}for(var n=0;n<this._probes.length;n++)this._probes[n].probeType===cR.PLANAR&&(this._probes[n].realtimePlanarTexture?this.updatePlanarMap(this._probes[n],this._probes[n].realtimePlanarTexture.getGFXTexture()):this.updatePlanarMap(this._probes[n],null))}},e.selectReflectionProbe=function(t){if(t.node&&t.worldBounds&&t.node.layer&mq){t.updateWorldBound();var e=this._getNearestProbe(t);e?this._useCubeModels.has(t)?(this._useCubeModels.get(t)!==e&&this._useCubeModels.set(t,e),e.needRefresh=!0):(this._useCubeModels.set(t,e),e.needRefresh=!0):(this._updateCubemapOfModel(t,null),this._useCubeModels.delete(t))}for(var i=0;i<this._probes.length;i++)(this._probes[i].needRefresh&&this._probes[i].probeType===cR.CUBE||this._isUsedBlending(t))&&this.updateBakedCubemap(this._probes[i])},e.updatePreviewSphere=function(t){if(t&&t.previewSphere){var e=t.previewSphere.getComponent(VH);e&&(e.updateProbeCubemap(t.cubemap),e.updateReflectionProbeId(t.getProbeId()))}},e.updatePreviewPlane=function(t){t&&t.previewPlane&&t.previewPlane.getComponent(VH)&&t.realtimePlanarTexture&&this.updatePlanarMap(t,t.realtimePlanarTexture.getGFXTexture())},e.updateProbeData=function(){if(0!==this._probes.length){var t=this.getMaxProbeId(),e=t+1;this._dataTexture&&this._dataTexture.destroy();for(var i=new Float32Array(12*e),n=0,r=0;r<=t;r++){var s=this.getProbeById(r);if(s){if(s.probeType===cR.CUBE){i[n]=s.node.worldPosition.x,i[n+1]=s.node.worldPosition.y,i[n+2]=s.node.worldPosition.z,i[n+3]=0,i[n+4]=s.size.x,i[n+5]=s.size.y,i[n+6]=s.size.z,i[n+7]=0;var a=s.isRGBE()?1e3:0;i[n+8]=s.cubemap?s.cubemap.mipmapLevel+a:1+a}else i[n]=s.node.up.x,i[n+1]=s.node.up.y,i[n+2]=s.node.up.z,i[n+3]=1,i[n+4]=1,i[n+5]=1,i[n+6]=0,i[n+7]=0,i[n+8]=1;n+=12}else n+=12}var o=new Uint8Array(i.buffer),h=new Vd({_data:o,_compressed:!1,width:12,height:e,format:yd.RGBA8888});this._dataTexture=new lm,this._dataTexture.setFilters(lm.Filter.NONE,lm.Filter.NONE),this._dataTexture.setMipFilter(lm.Filter.NONE),this._dataTexture.setWrapMode(lm.WrapMode.CLAMP_TO_EDGE,lm.WrapMode.CLAMP_TO_EDGE,lm.WrapMode.CLAMP_TO_EDGE),this._dataTexture.image=h,this._dataTexture.uploadData(o);for(var u=0;u<this._probes.length;u++)for(var l=this._probes[u],c=this._getModelsByProbe(l),_=0;_<c.length;_++){var f=c[_].node.getComponent(VH);f&&f.updateReflectionProbeDataMap(this._dataTexture)}}},e.getMaxProbeId=function(){return 0===this._probes.length?-1:1===this._probes.length?this._probes[0].getProbeId():(this._probes.sort((function(t,e){return t.getProbeId()-e.getProbeId()})),this._probes[this._probes.length-1].getProbeId())},e.getUsedReflectionProbe=function(t,e){if(e){if(this._usePlanarModels.has(t))return this._usePlanarModels.get(t)}else if(this._useCubeModels.has(t))return this._useCubeModels.get(t);return null},e.setReflectionProbe=function(t,e,i){void 0===i&&(i=null),e&&(this._useCubeModels.set(t,e),this._updateCubemapOfModel(t,e),i&&this._updateBlendProbeInfo(t,e,i))},e.updateProbeOfModels=function(){if(0!==this._probes.length){var t=S.director.getScene();if(t&&t.renderScene)for(var e=t.renderScene.models,i=0;i<e.length;i++){var n=e[i];n.node&&n.node.layer&mq&&(n.reflectionProbeType===pR.BAKED_CUBEMAP||n.reflectionProbeType===pR.PLANAR_REFLECTION||this._isUsedBlending(n))&&n.updateReflectionProbeId()}}},e._getNearestProbe=function(t){if(!t.node||!t.worldBounds||0===this._probes.length)return null;for(var e,i=null,n=1/0,r=f(this._probes);!(e=r()).done;){var s=e.value;if(s.probeType===cR.CUBE&&s.validate()&&vs.aabbWithAABB(t.worldBounds,s.boundingBox)){var a=gn.distance(t.node.worldPosition,s.node.worldPosition);a<n&&(n=a,i=s)}}return i},e._getBlendProbe=function(t){if(!t||!t.node||!t.worldBounds||this._probes.length<2)return null;for(var e=[],i=0;i<this._probes.length;i++)this._probes[i].probeType===cR.CUBE&&this._probes[i].validate()&&vs.aabbWithAABB(t.worldBounds,this._probes[i].boundingBox)&&e.push(this._probes[i]);return e.sort((function(e,i){return gn.distance(t.node.worldPosition,e.node.worldPosition)-gn.distance(t.node.worldPosition,i.node.worldPosition)})),e.length>1?e[1]:null},e._getModelsByProbe=function(t){var e=[],i=this._useCubeModels;t.probeType===cR.PLANAR&&(i=this._usePlanarModels);for(var n,r=f(i.entries());!(n=r()).done;){var s=n.value;s[1]===t&&e.push(s[0])}return e},e._removeDependentModels=function(t){for(var e,i=f(this._useCubeModels.keys());!(e=i()).done;){var n=e.value,r=this._useCubeModels.get(n);void 0!==r&&r===t&&(this._useCubeModels.delete(n),this.selectReflectionProbe(n))}for(var s,a=f(this._usePlanarModels.keys());!(s=a()).done;){var o=s.value,h=this._usePlanarModels.get(o);void 0!==h&&h===t&&(this._usePlanarModels.delete(o),this.selectPlanarReflectionProbe(o))}},e._updateCubemapOfModel=function(t,e){var i=t.node;if(i){var n=i.getComponent(VH);if(n&&(n.updateProbeCubemap(e?e.cubemap:null),n.updateReflectionProbeId(e&&e.cubemap?e.getProbeId():-1),e&&(n.updateReflectionProbeDataMap(this._dataTexture),this._isUsedBlending(t)))){var r=this._getBlendProbe(t);this._updateBlendProbeInfo(t,e,r)}}},e._updatePlanarMapOfModel=function(t,e,i){var n=t.node.getComponent(VH);n&&(n.updateProbePlanarMap(e),i?(n.updateReflectionProbeId(i.getProbeId()),n.updateReflectionProbeDataMap(this._dataTexture)):n.updateReflectionProbeId(-1))},e._isUsedBlending=function(t){return t.reflectionProbeType===pR.BLEND_PROBES||t.reflectionProbeType===pR.BLEND_PROBES_AND_SKYBOX},e._updateBlendProbeInfo=function(t,e,i){var n=t.node;if(n){var r=n.getComponent(VH);r&&(i?(r.updateReflectionProbeBlendId(i.getProbeId()),r.updateProbeBlendCubemap(i.cubemap),r.updateReflectionProbeBlendWeight(this._calculateBlendWeight(t,e,i))):(r.updateReflectionProbeBlendId(-1),t.reflectionProbeType===pR.BLEND_PROBES_AND_SKYBOX&&r.updateReflectionProbeBlendWeight(this._calculateBlendWeight(t,e,i))))}},e._updateBlendCubemap=function(t,e){var i=t.node;if(i&&this._isUsedBlending(t)){var n=i.getComponent(VH);n&&n.updateProbeBlendCubemap(e.cubemap)}},e._calculateBlendWeight=function(t,e,i){if(i){var n=gn.distance(t.node.worldPosition,e.node.worldPosition),r=gn.distance(t.node.worldPosition,i.node.worldPosition);return 1-r/(n+r)}return t.reflectionProbeType===pR.BLEND_PROBES?0:t.reflectionProbeType===pR.BLEND_PROBES_AND_SKYBOX?this._calculateBlendOfSkybox(t.worldBounds,e.boundingBox):0},e._calculateBlendOfSkybox=function(t,e){if(!t)return 1;var i=new gn,n=new gn,r=new gn,s=new gn;if(gn.subtract(i,t.center,t.halfExtents),gn.add(n,t.center,t.halfExtents),gn.subtract(r,e.center,e.halfExtents),gn.add(s,e.center,e.halfExtents),i.x<=s.x&&n.x>=r.x&&i.y<=s.y&&n.y>=r.y&&i.z<=s.z&&n.z>=r.z){var a=new gn;gn.multiplyScalar(a,t.halfExtents,2);var o=i.x+a.x<=s.x&&n.x+a.x>=r.x,h=i.x-a.x<=s.x&&n.x-a.x>=r.x,u=i.y+a.y<=s.y&&n.y+a.y>=r.y,l=i.y-a.y<=s.y&&n.y-a.y>=r.y,c=i.z+a.z<=s.z&&n.z+a.z>=r.z,_=i.z-a.z<=s.z&&n.z-a.z>=r.z,f=[];if(!o){var d=n.x-s.x;f.push(d/a.x)}if(!h){var p=Math.abs(i.x-r.x);f.push(p/a.x)}if(!u){var m=n.y-s.y;f.push(m/a.y)}if(!l){var g=Math.abs(i.y-r.y);f.push(g/a.y)}if(!c){var v=n.z-s.z;f.push(v/a.z)}if(!_){var y=Math.abs(i.z-r.z);f.push(y/a.z)}return f.length>0?(f.sort((function(t,e){return e-t})),f[0]):0}return 1},n(t,[{key:"updateForRuntime",get:function(){return this._updateForRuntime},set:function(t){this._updateForRuntime=t}}]),t}());function vq(t){return void 0===(t=t||{}).includeNormal&&(t.includeNormal=!0),void 0===t.includeUV&&(t.includeUV=!0),t}gq.probeManager=void 0,gq.probeManager=new gq,S.internal.reflectionProbeManager=gq.probeManager;var yq=new gn,Sq=new gn,Tq=new gn,Aq=new gn,bq=new gn,Eq=new gn,Cq=new gn,xq=new gn,wq=new gn,Rq=new gn,Iq=new gn,Dq=new gn,Bq=new gn(0,0,0),Mq=new gn(0,0,0);function Pq(t,e,i,n){void 0===t&&(t=.5),void 0===e&&(e=.5),void 0===i&&(i=2),void 0===n&&(n={});var r=.5*i,s=n.radialSegments||32,a=n.heightSegments||1,o=void 0===n.capped||n.capped,h=n.arc||2*Math.PI,u=0;o&&(t>0&&u++,e>0&&u++);var l=(s+1)*(a+1);o&&(l+=(s+1)*u+s*u);var c=s*a*6;o&&(c+=s*u*3);var _=new Array(c),f=new Array(3*l),d=new Array(3*l),p=new Array(2*l),m=Math.max(t,e),g=new gn(-m,-r,-m),v=new gn(m,r,m),y=Math.sqrt(m*m+r*r),S=0,T=0;return function(){for(var n=[],o=t-e,u=o*o/i*Math.sign(o),l=0;l<=a;l++){for(var c=[],m=l/a,g=m*o+e,v=0;v<=s;++v){var y=v/s,A=y*h,b=Math.sin(A),E=Math.cos(A);f[3*S]=g*b,f[3*S+1]=m*i-r,f[3*S+2]=g*E,gn.normalize(Bq,gn.set(Mq,b,-u,E)),d[3*S]=Bq.x,d[3*S+1]=Bq.y,d[3*S+2]=Bq.z,p[2*S]=2*(1-y)%1,p[2*S+1]=m,c.push(S),++S}n.push(c)}for(var C=0;C<a;++C)for(var x=0;x<s;++x){var w=n[C][x],R=n[C+1][x],I=n[C+1][x+1],D=n[C][x+1];_[T]=w,++T,_[T]=D,++T,_[T]=R,++T,_[T]=D,++T,_[T]=I,++T,_[T]=R,++T}}(),o&&(e>0&&A(!1),t>0&&A(!0)),{positions:f,normals:d,uvs:p,indices:_,minPos:g,maxPos:v,boundingRadius:y};function A(i){for(var n=i?t:e,a=i?1:-1,o=S,u=1;u<=s;++u)f[3*S]=0,f[3*S+1]=r*a,f[3*S+2]=0,d[3*S]=0,d[3*S+1]=a,d[3*S+2]=0,p[2*S]=.5,p[2*S+1]=.5,++S;for(var l=S,c=0;c<=s;++c){var m=c/s*h,g=Math.cos(m),v=Math.sin(m);f[3*S]=n*v,f[3*S+1]=r*a,f[3*S+2]=n*g,d[3*S]=0,d[3*S+1]=a,d[3*S+2]=0,p[2*S]=.5-.5*v*a,p[2*S+1]=.5+.5*g,++S}for(var y=0;y<s;++y){var A=o+y,b=l+y;i?(_[T]=b+1,++T,_[T]=A,++T,_[T]=b,++T):(_[T]=A,++T,_[T]=b+1,++T,_[T]=b,++T)}}}var Oq=new gn(0,0,0),Lq=new gn(0,0,0),Nq=new gn(0,0,0),Fq=new gn(0,0,0),kq=new gn(0,0,0),Gq=new gn(0,0,0),Vq=new gn(0,0,0),Uq=new gn(0,0,0),zq=new gn(0,0,0),Hq=Object.freeze({__proto__:null,box:function(t){var e=(t=t||{}).widthSegments||1,i=t.heightSegments||1,n=t.lengthSegments||1,r=(t.width||1)/2,s=(t.height||1)/2,a=(t.length||1)/2,o=[gn.set(bq,-r,-s,a),gn.set(Eq,r,-s,a),gn.set(Cq,r,s,a),gn.set(xq,-r,s,a),gn.set(wq,r,-s,-a),gn.set(Rq,-r,-s,-a),gn.set(Iq,-r,s,-a),gn.set(Dq,r,s,-a)],h=[[2,3,1],[4,5,7],[7,6,2],[1,0,4],[1,4,2],[5,0,6]],u=[[0,0,1],[0,0,-1],[0,1,0],[0,-1,0],[1,0,0],[-1,0,0]],l=[[-1,0,0,1],[-1,0,0,1],[-1,0,0,1],[-1,0,0,1],[0,0,-1,1],[0,0,1,1]],c=[],_=[],f=[],d=[],p=[],m=new gn(-r,-s,-a),g=new gn(r,s,a),v=Math.sqrt(r*r+s*s+a*a);function y(t,e,i){var n,r,s,a,m=c.length/3,g=h[t],v=u[t],y=l[t];for(a=0;a<=i;a++)for(s=0;s<=e;s++)if(n=s/e,r=a/i,gn.lerp(yq,o[g[0]],o[g[1]],n),gn.lerp(Sq,o[g[0]],o[g[2]],r),gn.subtract(Tq,Sq,o[g[0]]),gn.add(Aq,yq,Tq),c.push(Aq.x,Aq.y,Aq.z),_.push(v[0],v[1],v[2]),f.push(n,r),d.push(y[0],y[1],y[2],y[3]),s<e&&a<i){var S=e+1,T=s+a*S,A=s+(a+1)*S,b=s+1+(a+1)*S,E=s+1+a*S;p.push(m+T,m+E,m+A),p.push(m+A,m+E,m+b)}}return y(0,e,i),y(4,n,i),y(1,e,i),y(5,n,i),y(3,e,n),y(2,e,n),{positions:c,normals:_,uvs:f,tangents:d,indices:p,minPos:m,maxPos:g,boundingRadius:v}},cone:function(t,e,i){return void 0===t&&(t=.5),void 0===e&&(e=1),void 0===i&&(i={}),Pq(0,t,e,i)},cylinder:Pq,plane:function(t){var e=function(t){return(t=vq(t)).width=t.width||10,t.length=t.length||10,t.widthSegments=t.widthSegments||10,t.lengthSegments=t.lengthSegments||10,t}(t),i=e.width,n=e.length,r=e.widthSegments,s=e.lengthSegments,a=.5*i,o=.5*n,h=[],u=[],l=[],c=new gn(-a,0,-o),_=new gn(a,0,o),f=Math.sqrt(i*i+n*n);gn.set(kq,-a,0,o),gn.set(Gq,a,0,o),gn.set(Vq,-a,0,-o);for(var d=0;d<=s;d++)for(var p=0;p<=r;p++){var m=p/r,g=d/s;if(gn.lerp(Oq,kq,Gq,m),gn.lerp(Lq,kq,Vq,g),gn.subtract(Nq,Lq,kq),gn.add(Fq,Oq,Nq),h.push(Fq.x,Fq.y,Fq.z),e.includeUV&&u.push(m,g),p<r&&d<s){var v=r+1,y=p+d*v,S=p+(d+1)*v,T=p+1+(d+1)*v,A=p+1+d*v;l.push(y,A,S),l.push(A,T,S)}}var b={positions:h,indices:l,minPos:c,maxPos:_,boundingRadius:f};if(e.includeNormal){var E=(s+1)*(r+1),C=new Array(3*E);b.normals=C;for(var x=0;x<E;++x)C[3*x+0]=0,C[3*x+1]=1,C[3*x+2]=0}return e.includeUV&&(b.uvs=u),b},quad:function(t){var e=vq(t),i={positions:[-.5,-.5,0,-.5,.5,0,.5,.5,0,.5,-.5,0],indices:[0,3,1,3,2,1],minPos:{x:-.5,y:-.5,z:0},maxPos:{x:.5,y:.5,z:0},boundingRadius:Math.sqrt(.5)};return!1!==e.includeNormal&&(i.normals=[0,0,1,0,0,1,0,0,1,0,0,1]),!1!==e.includeUV&&(i.uvs=[0,0,0,1,1,1,1,0]),i},sphere:function(t,e){void 0===t&&(t=.5),void 0===e&&(e={});for(var i=void 0!==e.segments?e.segments:32,n=[],r=[],s=[],a=[],o=new gn(-t,-t,-t),h=new gn(t,t,t),u=t,l=0;l<=i;++l)for(var c=l*Math.PI/i,_=Math.sin(c),f=-Math.cos(c),d=0;d<=i;++d){var p=2*d*Math.PI/i-Math.PI/2,m=Math.sin(p)*_,g=f,v=Math.cos(p)*_,y=d/i,S=l/i;if(n.push(m*t,g*t,v*t),r.push(m,g,v),s.push(y,S),l<i&&d<i){var T=i+1,A=T*l+d,b=T*(l+1)+d,E=T*(l+1)+d+1,C=T*l+d+1;a.push(A,C,b),a.push(C,E,b)}}return{positions:n,indices:a,normals:r,uvs:s,minPos:o,maxPos:h,boundingRadius:u}},torus:function(t,e,i){void 0===t&&(t=.4),void 0===e&&(e=.1),void 0===i&&(i={});for(var n=i.radialSegments||32,r=i.tubularSegments||32,s=i.arc||2*Math.PI,a=[],o=[],h=[],u=[],l=new gn(-t-e,-e,-t-e),c=new gn(t+e,e,t+e),_=t+e,f=0;f<=n;f++)for(var d=0;d<=r;d++){var p=d/r,m=f/n,g=p*s,v=m*Math.PI*2,y=(t+e*Math.cos(v))*Math.sin(g),S=e*Math.sin(v),T=(t+e*Math.cos(v))*Math.cos(g),A=Math.sin(g)*Math.cos(v),b=Math.sin(v),E=Math.cos(g)*Math.cos(v);if(a.push(y,S,T),o.push(A,b,E),h.push(p,m),d<r&&f<n){var C=r+1,x=C*f+d,w=C*(f+1)+d,R=C*(f+1)+d+1,I=C*f+d+1;u.push(x,I,w),u.push(I,R,w)}}return{positions:a,normals:o,uvs:h,indices:u,minPos:l,maxPos:c,boundingRadius:_}},capsule:function(t,e,i,n){void 0===t&&(t=.5),void 0===e&&(e=.5),void 0===i&&(i=2),void 0===n&&(n={});var r=i-t-e,s=n.sides||32,a=n.heightSegments||32,o=e/i,h=r/i,u=t/i,l=Math.floor(a*o),c=Math.floor(a*u),_=Math.floor(a*h),f=r+e-i/2,d=e-i/2,p=e-i/2,m=n.arc||2*Math.PI,g=[],v=[],y=[],S=[],T=Math.max(t,e),A=new gn(-T,-i/2,-T),b=new gn(T,i/2,T),E=i/2,C=0,x=[];return function(){for(var t=0;t<=l;++t)for(var i=t*Math.PI/l/2,n=Math.sin(i),r=-Math.cos(i),o=0;o<=s;++o){var h=2*o*Math.PI/s-Math.PI/2,u=Math.sin(h)*n,c=r,_=Math.cos(h)*n,f=o/s,d=t/a;if(g.push(u*e,c*e+p,_*e),v.push(u,c,_),y.push(f,d),t<l&&o<s){var m=s+1,T=m*t+o,A=m*(t+1)+o,b=m*(t+1)+o+1,E=m*t+o+1;S.push(T,E,A),S.push(E,b,A)}++C}}(),function(){for(var i=(t-e)/r,n=0;n<=_;n++){for(var a=[],u=n/_,l=u*(t-e)+e,c=0;c<=s;++c){var f=c/s,p=u*h+o,T=f*m-m/4,A=Math.sin(T),b=Math.cos(T);g.push(l*A),g.push(u*r+d),g.push(l*b),gn.normalize(Uq,gn.set(zq,A,-i,b)),v.push(Uq.x),v.push(Uq.y),v.push(Uq.z),y.push(f,p),a.push(C),++C}x.push(a)}for(var E=0;E<_;++E)for(var w=0;w<s;++w){var R=x[E][w],I=x[E+1][w],D=x[E+1][w+1],B=x[E][w+1];S.push(R),S.push(B),S.push(I),S.push(B),S.push(D),S.push(I)}}(),function(){for(var e=0;e<=c;++e)for(var i=e*Math.PI/c/2+Math.PI/2,n=Math.sin(i),r=-Math.cos(i),o=0;o<=s;++o){var h=2*o*Math.PI/s-Math.PI/2,l=Math.sin(h)*n,d=r,p=Math.cos(h)*n,m=o/s,T=e/a+(1-u);if(g.push(l*t,d*t+f,p*t),v.push(l,d,p),y.push(m,T),e<c&&o<s){var A=s+1,b=A*e+o+x[_][s]+1,E=A*(e+1)+o+x[_][s]+1,C=A*(e+1)+o+1+x[_][s]+1,w=A*e+o+1+x[_][s]+1;S.push(b,w,E),S.push(w,C,E)}}}(),{positions:g,normals:v,uvs:y,indices:S,minPos:A,maxPos:b,boundingRadius:E}},circle:function(t){var e=function(t){return(t=vq(t)).segments=64,t}(t).segments,i=new Array(3*(e+1));i[0]=0,i[1]=0,i[2]=0;var n=new Array(1+2*e);n[0]=0;for(var r=2*Math.PI/e,s=0;s<e;++s){var a=r*s,o=Math.cos(a),h=Math.sin(a),u=3*(s+1);i[u+0]=o,i[u+1]=h,i[u+2]=0;var l=2*s;n[1+l]=s+1,n[1+(l+1)]=s+2}return e>0&&(n[n.length-1]=1),{positions:i,indices:n,minPos:{x:1,y:1,z:0},maxPos:{x:-1,y:-1,z:0},boundingRadius:1,primitiveMode:wc.TRIANGLE_FAN}},translate:function(t,e){for(var i=e.x||0,n=e.y||0,r=e.z||0,s=Math.floor(t.positions.length/3),a=0;a<s;++a){var o=3*a,h=3*a+1,u=3*a+2;t.positions[o]+=i,t.positions[h]+=n,t.positions[u]+=r}return t.minPos&&(t.minPos.x+=i,t.minPos.y+=n,t.minPos.z+=r),t.maxPos&&(t.maxPos.x+=i,t.maxPos.y+=n,t.maxPos.z+=r),t},scale:function(t,e){for(var i,n,r,s=null!==(i=e.x)&&void 0!==i?i:1,a=null!==(n=e.y)&&void 0!==n?n:1,o=null!==(r=e.z)&&void 0!==r?r:1,h=Math.floor(t.positions.length/3),u=0;u<h;++u){var l=3*u,c=3*u+1,_=3*u+2;t.positions[l]*=s,t.positions[c]*=a,t.positions[_]*=o}var f=t.minPos,d=t.maxPos;if(f&&(f.x*=s,f.y*=a,f.z*=o),d&&(d.x*=s,d.y*=a,d.z*=o),f&&d){if(s<0){var p=f.x;f.x=d.x,d.x=p}if(a<0){var m=f.y;f.y=d.y,d.y=m}if(o<0){var g=f.z;f.z=d.z,d.z=g}}return void 0!==t.boundingRadius&&(t.boundingRadius*=Math.max(Math.max(Math.abs(s),Math.abs(a)),Math.abs(o))),t},wireframed:function(t){var e=t.indices;if(!e)return t;if(t.primitiveMode&&t.primitiveMode!==wc.TRIANGLE_LIST)return t;for(var i=[[0,1],[1,2],[2,0]],n=[],r={},s=0;s<e.length;s+=3)for(var a=0;a<3;++a){var o=e[s+i[a][0]],h=e[s+i[a][1]],u=o>h?h<<16|o:o<<16|h;void 0===r[u]&&(r[u]=0,n.push(o,h))}return t.indices=n,t.primitiveMode=wc.LINE_LIST,t},wireframe:function(t){for(var e=[[0,1],[1,2],[2,0]],i=[],n={},r=0;r<t.length;r+=3)for(var s=0;s<3;++s){var a=t[r+e[s][0]],o=t[r+e[s][1]],h=a>o?o<<16|a:a<<16|o;void 0===n[h]&&(n[h]=0,i.push(a,o))}return i},invWinding:function(t){for(var e=[],i=0;i<t.length;i+=3)e.push(t[i],t[i+2],t[i+1]);return e},toWavefrontOBJ:function(t,e){if(void 0===e&&(e=1),!t.indices||!t.uvs||!t.normals||void 0!==t.primitiveMode&&t.primitiveMode!==wc.TRIANGLE_LIST)return"";for(var i=t.positions,n=t.uvs,r=t.normals,s=t.indices,a=function(t){return s[t]+1+"/"+(s[t]+1)+"/"+(s[t]+1)},o="",h=0;h<i.length;h+=3)o+="v "+i[h]*e+" "+i[h+1]*e+" "+i[h+2]*e+"\n";for(var u=0;u<n.length;u+=2)o+="vt "+n[u]+" "+n[u+1]+"\n";for(var l=0;l<r.length;l+=3)o+="vn "+r[l]+" "+r[l+1]+" "+r[l+2]+"\n";for(var c=0;c<s.length;c+=3)o+="f "+a(c)+" "+a(c+1)+" "+a(c+2)+"\n";return o},normals:function(t,e,i){void 0===i&&(i=1);for(var n=new Array(2*t.length),r=0;r<t.length/3;++r){var s=3*r,a=6*r;n[a+0]=t[s+0],n[a+1]=t[s+1],n[a+2]=t[s+2],n[a+3]=t[s+0]+e[s+0]*i,n[a+4]=t[s+1]+e[s+1]*i,n[a+5]=t[s+2]+e[s+2]*i}return n},applyDefaultGeometryOptions:vq});t("fV",Hq);var Wq=new gn;function Xq(t){return t.x=Math.abs(t.x),t.y=Math.abs(t.y),t.z=Math.abs(t.z),t}var jq,Yq,qq,Kq,Qq,Zq,Jq,$q,tK,eK,iK,nK,rK,sK,aK,oK,hK,uK,lK,cK,_K,fK,dK,pK,mK=Object.freeze({__proto__:null,setWrap:function(t,e){t.__cc_wrapper__=e},getWrap:function(t){return t.__cc_wrapper__},maxComponent:function(t){return Math.max(t.x,Math.max(t.y,t.z))},VEC3_0:Wq,TriggerEventObject:{type:"onTriggerEnter",selfCollider:null,otherCollider:null,impl:null},CharacterTriggerEventObject:{type:"onControllerTriggerEnter",collider:null,characterController:null,impl:null},CollisionEventObject:{type:"onCollisionEnter",selfCollider:null,otherCollider:null,contacts:[],impl:null},shrinkPositions:function(t){var e=[],i={};if(t.length>=3){e[0]=t[0],e[1]=t[1],e[2]=t[2];for(var n=t.length,r=3;r<n;r+=3){var s=t[r],a=t[r+1],o=t[r+2],h=String(s)+String(a)+String(o),u=zl(h,666);i[u]!==h&&(i[u]=h,e.push(s),e.push(a),e.push(o))}}return e},absolute:Xq,cylinder:Pq});!function(t){t[t.Low_256x256=256]="Low_256x256",t[t.Medium_512x512=512]="Medium_512x512",t[t.High_768x768=768]="High_768x768"}(pK||(pK={})),t("ao",(jq=eo("cc.ReflectionProbe"),Yq=Lo(gn),qq=Lo(Ee(cR)),Kq=Lo(Ee(pK)),Qq=Lo(Ee(lR)),Zq=Lo(En),Jq=Lo(dm.BitMask),$q=Lo(Nk),tK=Lo(ri),eK=Lo(ug),jq(((dK=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._lastSize=new gn,e._resolution=rK&&rK(),e._clearFlag=sK&&sK(),e._backgroundColor=aK&&aK(),e._visibility=oK&&oK(),e._probeType=hK&&hK(),e._cubemap=uK&&uK(),e._size=lK&&lK(),e._sourceCamera=cK&&cK(),e._probeId=_K&&_K(),e._fastBake=fK&&fK(),e._probe=null,e._previewSphere=null,e._previewPlane=null,e._sourceCameraPos=new gn(0,0,0),e._position=new gn(0,0,0),e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._createProbe()},i.onEnable=function(){if(this._probe){var t=gq.probeManager.getProbeById(this._probeId);null!==t&&t!==this._probe&&(this._probeId=gq.probeManager.getNewReflectionProbeId(),this._probe.updateProbeId(this._probeId)),gq.probeManager.register(this._probe),gq.probeManager.onUpdateProbes(),this._probe.enable()}},i.onDisable=function(){this._probe&&(gq.probeManager.unregister(this._probe),this._probe.disable())},i.start=function(){this._sourceCamera&&this.probeType===cR.PLANAR&&(this.probe.renderPlanarReflection(this.sourceCamera.camera),gq.probeManager.filterModelsForPlanarReflection()),gq.probeManager.updateProbeData(),this._position=this.node.getWorldPosition().clone()},i.onDestroy=function(){this.probe&&this.probe.destroy()},i.update=function(){if(this.probe){this.probeType===cR.PLANAR&&this.sourceCamera&&(this.sourceCamera.node.hasChangedFlags&mm.TRS||!this._sourceCameraPos.equals(this.sourceCamera.node.getWorldPosition()))&&(this._sourceCameraPos=this.sourceCamera.node.getWorldPosition(),this.probe.renderPlanarReflection(this.sourceCamera.camera)),this.node.hasChangedFlags&mm.POSITION&&(this.probe.updateBoundingBox(),gq.probeManager.onUpdateProbes(),gq.probeManager.updateProbeData());var t=this.node.getWorldPosition();this._position.equals(t)||(this._position=t,this.probe.updateBoundingBox(),gq.probeManager.updateProbeData(),gq.probeManager.updateProbeOfModels())}},i.clearBakedCubemap=function(){this.cubemap=null,gq.probeManager.updateBakedCubemap(this.probe),gq.probeManager.updatePreviewSphere(this.probe)},i._createProbe=function(){if((-1===this._probeId||gq.probeManager.exists(this._probeId))&&(this._probeId=gq.probeManager.getNewReflectionProbeId()),this._probe=new gR(this._probeId),this._probe){var t=new hg("ReflectionProbeCamera");t.hideFlags|=Ms.Flags.DontSave|Ms.Flags.HideInHierarchy,this.node.scene.addChild(t),this._probe.initialize(this.node,t),this.enabled&&gq.probeManager.register(this._probe),this._probe.resolution=this._resolution,this._probe.clearFlag=this._clearFlag,this._probe.backgroundColor=this._backgroundColor,this._probe.visibility=this._visibility,this._probe.probeType=this._probeType,this._probe.size=this._size,this._probe.cubemap=this._cubemap}},n(e,[{key:"size",get:function(){return this._size},set:function(t){this._size.set(t),Xq(this._size),this.probe.size=this._size,this.probe&&(this.probe.updateBoundingBox(),gq.probeManager.onUpdateProbes(),gq.probeManager.updateProbeData(),gq.probeManager.updateProbeOfModels())}},{key:"probeType",get:function(){return this._probeType},set:function(t){if(this.probe.probeType=t,t!==this._probeType){var i=this._size.clone(),n=gn.equals(this._lastSize,gn.ZERO);this._probeType=t,this._probeType===cR.CUBE?(n&&this._size.set(e.DEFAULT_CUBE_SIZE),this.probe.switchProbeType(t,null),gq.probeManager.clearPlanarReflectionMap(this.probe)):(n&&this._size.set(e.DEFAULT_PLANER_SIZE),this._sourceCamera?this.probe.switchProbeType(t,this._sourceCamera.camera):z("the reflection camera is invalid, please set the reflection camera")),n||this._size.set(this._lastSize),this._lastSize.set(i),this.size=this._size}}},{key:"resolution",get:function(){return this._resolution},set:function(t){this._resolution=t,this.probe.resolution=t}},{key:"clearFlag",get:function(){return this._clearFlag},set:function(t){this._clearFlag=t,this.probe.clearFlag=this._clearFlag}},{key:"backgroundColor",get:function(){return this._backgroundColor},set:function(t){this._backgroundColor=t,this.probe.backgroundColor=this._backgroundColor}},{key:"visibility",get:function(){return this._visibility},set:function(t){this._visibility=t,this.probe.visibility=this._visibility}},{key:"sourceCamera",get:function(){return this._sourceCamera},set:function(t){this._sourceCamera=t,t&&(this.visibility=t.visibility,this.clearFlag=t.clearFlags,this.backgroundColor=t.clearColor,this.probeType===cR.PLANAR&&this.probe.switchProbeType(this.probeType,t.camera))}},{key:"fastBake",get:function(){return this._fastBake},set:function(t){this._fastBake=t}},{key:"cubemap",get:function(){return this._cubemap},set:function(t){this._cubemap=t,this.probe.cubemap=t,gq.probeManager.onUpdateProbes()}},{key:"probe",get:function(){return this._probe}},{key:"previewSphere",get:function(){return this._previewSphere},set:function(t){this._previewSphere=t,this.probe&&(this.probe.previewSphere=t,this._previewSphere&&gq.probeManager.updatePreviewSphere(this.probe))}},{key:"previewPlane",get:function(){return this._previewPlane},set:function(t){this._previewPlane=t,this.probe&&(this.probe.previewPlane=t,this._previewPlane&&gq.probeManager.updatePreviewPlane(this.probe))}}]),e}(mp)).DEFAULT_CUBE_SIZE=new gn(1,1,1),dK.DEFAULT_PLANER_SIZE=new gn(5,.5,5),rK=ja((nK=dK).prototype,"_resolution",[lo],(function(){return 256})),sK=ja(nK.prototype,"_clearFlag",[lo],(function(){return lR.SKYBOX})),aK=ja(nK.prototype,"_backgroundColor",[lo],(function(){return new En(0,0,0,255)})),oK=ja(nK.prototype,"_visibility",[lo],(function(){return sy})),hK=ja(nK.prototype,"_probeType",[lo],(function(){return cR.CUBE})),uK=ja(nK.prototype,"_cubemap",[lo],(function(){return null})),lK=ja(nK.prototype,"_size",[lo],(function(){return new gn(1,1,1)})),cK=ja(nK.prototype,"_sourceCamera",[lo],(function(){return null})),_K=ja(nK.prototype,"_probeId",[lo],(function(){return-1})),fK=ja(nK.prototype,"_fastBake",[lo],(function(){return!1})),m(nK.prototype,"size",[Yq],Object.getOwnPropertyDescriptor(nK.prototype,"size"),nK.prototype),m(nK.prototype,"probeType",[qq],Object.getOwnPropertyDescriptor(nK.prototype,"probeType"),nK.prototype),m(nK.prototype,"resolution",[Kq],Object.getOwnPropertyDescriptor(nK.prototype,"resolution"),nK.prototype),m(nK.prototype,"clearFlag",[Qq],Object.getOwnPropertyDescriptor(nK.prototype,"clearFlag"),nK.prototype),m(nK.prototype,"backgroundColor",[Zq],Object.getOwnPropertyDescriptor(nK.prototype,"backgroundColor"),nK.prototype),m(nK.prototype,"visibility",[Jq],Object.getOwnPropertyDescriptor(nK.prototype,"visibility"),nK.prototype),m(nK.prototype,"sourceCamera",[$q],Object.getOwnPropertyDescriptor(nK.prototype,"sourceCamera"),nK.prototype),m(nK.prototype,"fastBake",[tK],Object.getOwnPropertyDescriptor(nK.prototype,"fastBake"),nK.prototype),m(nK.prototype,"cubemap",[eK],Object.getOwnPropertyDescriptor(nK.prototype,"cubemap"),nK.prototype),iK=nK))||iK)),S.utils=_M;var gK,vK,yK,SK,TK,AK=Symbol("CreateEval");eo("cc.animation.EmbeddedPlayer")((gK=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).begin=vK&&vK(),e.end=yK&&yK(),e.reconciledSpeed=SK&&SK(),e.playable=TK&&TK(),e}return s(e,t),e}(Yo),vK=ja(gK.prototype,"begin",[lo],(function(){return 0})),yK=ja(gK.prototype,"end",[lo],(function(){return 0})),SK=ja(gK.prototype,"reconciledSpeed",[lo],(function(){return!1})),TK=ja(gK.prototype,"playable",[lo],(function(){return null})),gK));var bK,EK=function(){},CK=function(){function t(t){this._randomAccess=t}return t.prototype.setTime=function(){},n(t,[{key:"randomAccess",get:function(){return this._randomAccess}}]),t}(),xK=function(){function t(){this._isPlaying=!1,this._isPaused=!1,this._stepOnce=!1}var e=t.prototype;return e.play=function(){this._isPlaying?this._isPaused?(this._isPaused=!1,this.onResume()):this.onError(at(3912)):(this._isPlaying=!0,this.onPlay())},e.stop=function(){this._isPlaying&&(this._isPlaying=!1,this.onStop(),this._isPaused=!1)},e.pause=function(){this._isPlaying&&!this._isPaused&&(this._isPaused=!0,this.onPause())},e.resume=function(){this._isPlaying&&this._isPaused&&(this._isPaused=!1,this.onResume())},e.step=function(){this.pause(),this._stepOnce=!0,this._isPlaying||this.play()},e.update=function(){},e.onPlay=function(){},e.onPause=function(){},e.onResume=function(){},e.onStop=function(){},e.onError=function(){},n(t,[{key:"isPlaying",get:function(){return this._isPlaying}},{key:"isPaused",get:function(){return this._isPaused}},{key:"isMotionless",get:function(){return!this.isPlaying||this.isPaused}}]),t}();!function(t){t[t.Default=hl.Default]="Default",t[t.Normal=hl.Normal]="Normal",t[t.Reverse=hl.Reverse]="Reverse",t[t.Loop=hl.Loop]="Loop",t[t.LoopReverse=hl.Loop|hl.Reverse]="LoopReverse",t[t.PingPong=hl.PingPong]="PingPong",t[t.PingPongReverse=hl.PingPong|hl.Reverse]="PingPongReverse"}(bK||(bK={})),we(bK);var wK,RK=function(){function t(t){this.ratio=0,this.time=0,this.direction=1,this.stopped=!0,this.iterations=0,this.frameIndex=void 0,t&&this.set(t)}return t.prototype.set=function(t){this.ratio=t.ratio,this.time=t.time,this.direction=t.direction,this.stopped=t.stopped,this.iterations=t.iterations,this.frameIndex=t.frameIndex},t}(),IK=function(){function t(t){this.weight=0,this._pose=void 0,this._blendStateWriters=[],this._pose=t}var e=t.prototype;return e.destroy=function(){for(var t=0;t<this._blendStateWriters.length;++t)this._pose.destroyWriter(this._blendStateWriters[t]);this._blendStateWriters.length=0},e.createPoseWriter=function(t,e,i){var n=this._pose.createWriter(t,e,this,i);return this._blendStateWriters.push(n),n},t}();function DK(){return S.director.getAnimationManager()}!function(t){t.PLAY="play",t.STOP="stop",t.PAUSE="pause",t.RESUME="resume",t.LASTFRAME="lastframe",t.FINISHED="finished"}(wK||(wK={})),we(wK);var BK,MK,PK,OK=t("at",function(t){function e(e,i){var n;return void 0===i&&(i=""),(n=t.call(this)||this).duration=1,n.time=0,n.frameRate=0,n._targetNode=null,n._curveLoaded=!1,n._clip=void 0,n._speed=1,n._useSimpleProcess=!1,n._target=null,n._wrapMode=bK.Normal,n._repeatCount=1,n._delay=0,n._delayTime=0,n._currentFramePlayed=!1,n._name=void 0,n._lastIterations=NaN,n._lastWrapInfo=null,n._wrappedInfo=new RK,n._allowLastFrame=!1,n._blendStateWriterHost={weight:0},n._playbackDuration=0,n._invDuration=1,n._poseOutput=null,n._weight=1,n._clipEval=void 0,n._clipEventEval=void 0,n._clipEmbeddedPlayerEval=void 0,n._doNotCreateEval=!1,n._clip=e,n._name=i||e&&e.name,n._playbackRange={min:0,max:e.duration},n._playbackDuration=e.duration,e.duration||X("Clip "+e.name+" has zero duration."),n}s(e,t);var i=e.prototype;return i.initialize=function(t,e,i){if(!this._curveLoaded){this._curveLoaded=!0,this._poseOutput&&(this._poseOutput.destroy(),this._poseOutput=null),this._clipEval&&(this._clipEval=void 0),this._clipEventEval&&(this._clipEventEval=void 0),this._clipEmbeddedPlayerEval&&(this._clipEmbeddedPlayerEval.destroy(),this._clipEmbeddedPlayerEval=void 0),this._targetNode=t;var n=this._clip;if(this.duration=n.duration,this._invDuration=1/this.duration,this._speed=n.speed,this.wrapMode=n.wrapMode,this.frameRate=n.sample,this._playbackRange.min=0,this._playbackRange.max=n.duration,this._playbackDuration=n.duration,(this.wrapMode&hl.Loop)===hl.Loop?this.repeatCount=1/0:this.repeatCount=1,!this._doNotCreateEval){var r,s,a,o=null!==(r=null!=e?e:null===(s=DK())||void 0===s?void 0:s.blendState)&&void 0!==r?r:null;o&&(this._poseOutput=new IK(o)),this._clipEval=n.createEvaluator({target:t,pose:null!==(a=this._poseOutput)&&void 0!==a?a:void 0,mask:i})}n.containsAnyEvent()&&(this._clipEventEval=n.createEventEvaluator(this._targetNode)),n.containsAnyEmbeddedPlayer()&&(this._clipEmbeddedPlayerEval=n.createEmbeddedPlayerEvaluator(this._targetNode),this._clipEmbeddedPlayerEval.notifyHostSpeedChanged(this._speed))}},i.destroy=function(){this.isMotionless||DK().removeAnimation(this),this._poseOutput&&(this._poseOutput.destroy(),this._poseOutput=null),this._clipEval=void 0},i.emit=function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];DK().pushDelayEvent(this._emit,this,e)},i.on=function(t,e,i){return this._target&&this._target.isValid?this._target.on(t,e,i):null},i.once=function(t,e,i){return this._target&&this._target.isValid?this._target.once(t,e,i):null},i.off=function(t,e,i){this._target&&this._target.isValid&&this._target.off(t,e,i)},i.allowLastFrameEvent=function(t){this._allowLastFrame=t},i._setEventTarget=function(t){this._target=t},i.setTime=function(t){this._currentFramePlayed=!1,this.time=t||0;var e,i=this.getWrappedInfo(t,this._wrappedInfo);null===(e=this._clipEventEval)||void 0===e||e.ignore(i.ratio,i.direction)},i.update=function(t){this._delayTime>0&&(this._delayTime-=t,this._delayTime>0)||(this._currentFramePlayed?this.time+=t*this._speed:this._currentFramePlayed=!0,this._process())},i.sample=function(){var t=this.getWrappedInfo(this.time,this._wrappedInfo);return this._sampleCurves(t.time),this._sampleEvents(t),this._sampleEmbeddedPlayers(t),t},i.onPlay=function(){var t;this.setTime(this._getPlaybackStart()),this._delayTime=this._delay,this._onReplayOrResume(),this.emit(wK.PLAY,this),null===(t=this._clipEmbeddedPlayerEval)||void 0===t||t.notifyHostPlay(this.current)},i.onStop=function(){var t;this.isPaused||this._onPauseOrStop(),this.emit(wK.STOP,this),null===(t=this._clipEmbeddedPlayerEval)||void 0===t||t.notifyHostStop()},i.onResume=function(){var t;this._onReplayOrResume(),this.emit(wK.RESUME,this),null===(t=this._clipEmbeddedPlayerEval)||void 0===t||t.notifyHostPlay(this.current)},i.onPause=function(){var t;this._onPauseOrStop(),this.emit(wK.PAUSE,this),null===(t=this._clipEmbeddedPlayerEval)||void 0===t||t.notifyHostPause(this.current)},i._sampleCurves=function(t){var e=this._poseOutput,i=this._clipEval;e&&(e.weight=this.weight),i&&i.evaluate(t)},i._process=function(){this._useSimpleProcess?this.simpleProcess():this.process()},i.process=function(){var t,e=this.sample();this._allowLastFrame&&(t=this._lastWrapInfo?this._lastWrapInfo:this._lastWrapInfo=new RK(e),this.repeatCount>1&&(0|e.iterations)>(0|t.iterations)&&this.emit(wK.LASTFRAME,this),t.set(e)),e.stopped&&(this.stop(),this.emit(wK.FINISHED,this))},i.simpleProcess=function(){var t=this._playbackRange.min,e=this._playbackDuration,i=0,n=0;if(0!==e&&((i=this.time%e)<0&&(i+=e),n=(t+i)*this._invDuration),this._sampleCurves(t+i),this._clipEventEval||this._clipEmbeddedPlayerEval){var r=this.getWrappedInfo(this.time,this._wrappedInfo);this._sampleEvents(r),this._sampleEmbeddedPlayers(r)}this._allowLastFrame&&(Number.isNaN(this._lastIterations)&&(this._lastIterations=n),(this.time>0&&this._lastIterations>n||this.time<0&&this._lastIterations<n)&&this.emit(wK.LASTFRAME,this),this._lastIterations=n)},i._needReverse=function(t){var e=this.wrapMode,i=!1;return(e&hl.PingPong)===hl.PingPong&&(t-(0|t)==0&&t>0&&(t-=1),1&t&&(i=!i)),(e&hl.Reverse)===hl.Reverse&&(i=!i),i},i.getWrappedInfo=function(t,e){e=e||new RK;var i=this._playbackRange.min,n=this._playbackDuration,r=this.repeatCount;if(0===n)return e.time=0,e.ratio=0,e.direction=1,e.stopped=!!Number.isFinite(r),e.iterations=0,e;var s=!1,a=(t-=i)>0?t/n:-t/n;if(a>=r){a=r,s=!0;var o=r-(0|r);0===o&&(o=1),t=o*n*(t>0?1:-1)}if(t>n){var h=t%n;t=0===h?n:h}else t<0&&0!=(t%=n)&&(t+=n);var u=!1,l=this._wrapMode&hl.ShouldWrap;l&&(u=this._needReverse(a));var c=u?-1:1;return this.speed<0&&(c*=-1),l&&u&&(t=n-t),e.time=i+t,e.ratio=e.time/this.duration,e.direction=c,e.stopped=s,e.iterations=a,e},i._getPlaybackStart=function(){return this._playbackRange.min},i._sampleEvents=function(t){var e;null===(e=this._clipEventEval)||void 0===e||e.sample(t.ratio,t.direction,t.iterations)},i._sampleEmbeddedPlayers=function(t){var e;null===(e=this._clipEmbeddedPlayerEval)||void 0===e||e.evaluate(t.time,Math.trunc(t.iterations))},i._emit=function(t,e){this._target&&this._target.isValid&&this._target.emit(t,t,e)},i._onReplayOrResume=function(){DK().addAnimation(this)},i._onPauseOrStop=function(){DK().removeAnimation(this)},n(e,[{key:"clip",get:function(){return this._clip}},{key:"name",get:function(){return this._name}},{key:"length",get:function(){return this.duration}},{key:"wrapMode",get:function(){return this._wrapMode},set:function(t){var e;this._wrapMode=t,this.time=0,t&hl.Loop?this.repeatCount=1/0:this.repeatCount=1,null===(e=this._clipEventEval)||void 0===e||e.setWrapMode(t)}},{key:"repeatCount",get:function(){return this._repeatCount},set:function(t){this._repeatCount=t;var e=this._wrapMode&hl.ShouldWrap,i=(this.wrapMode&hl.Reverse)===hl.Reverse;this._useSimpleProcess=t===1/0&&!e&&!i}},{key:"delay",get:function(){return this._delay},set:function(t){this._delayTime=this._delay=t}},{key:"playbackRange",get:function(){return this._playbackRange},set:function(t){t.max,t.min,this._playbackRange.min=Math.max(t.min,0),this._playbackRange.max=Math.min(t.max,this.duration),this._playbackDuration=this._playbackRange.max-this._playbackRange.min,this.setTime(0)}},{key:"speed",get:function(){return this._speed},set:function(t){var e;this._speed=t,null===(e=this._clipEmbeddedPlayerEval)||void 0===e||e.notifyHostSpeedChanged(t)}},{key:"current",get:function(){return this.getWrappedInfo(this.time).time}},{key:"ratio",get:function(){return 0===this.duration?0:this.current/this.duration}},{key:"weight",get:function(){return this._weight},set:function(t){this._weight=t,this._poseOutput&&(this._poseOutput.weight=t)}},{key:"curveLoaded",get:function(){return this._curveLoaded}}]),e}(xK));S.AnimationState=OK,eo("cc.animation.EmbeddedAnimationClipPlayable")((BK=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).path=MK&&MK(),e.clip=PK&&PK(),e}return s(e,t),e.prototype.instantiate=function(t){var e=this.clip,i=this.path;if(!e)return null;var n=t.getChildByPath(i);if(!n)return it(3938,i,t.getPathInHierarchy(),e.name),null;var r=new OK(e);return r.initialize(n),new FK(r)},e}(EK),MK=ja(BK.prototype,"path",[lo],(function(){return""})),PK=ja(BK.prototype,"clip",[lo],(function(){return null})),BK));var LK,NK,FK=function(t){function e(e){var i;return(i=t.call(this,!0)||this)._animationState=void 0,i._animationState=e,i}s(e,t);var i=e.prototype;return i.destroy=function(){this._animationState.destroy()},i.play=function(){this._animationState.play()},i.pause=function(){this._animationState.pause()},i.stop=function(){this._animationState.stop()},i.setSpeed=function(t){this._animationState.speed=t},i.setTime=function(t){this._animationState.time=t},e}(CK);eo("cc.animation.EmbeddedParticleSystemPlayable")((LK=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).path=NK&&NK(),e}return s(e,t),e.prototype.instantiate=function(t){var e=t.getChildByPath(this.path);if(!e)return z("Hierarchy path "+this.path+" does not exists."),null;var i=oe("cc.ParticleSystem");if(!i)return z("Particle system is required for embedded particle system player."),null;var n=e.getComponent(i);return n?new WK(n):(z(this.path+" does not includes a particle system component."),null)},e}(EK),NK=ja(LK.prototype,"path",[lo],(function(){return""})),LK));var kK,GK,VK,UK,zK,HK,WK=function(t){function e(e){var i;return(i=t.call(this,!1)||this)._particleSystem=void 0,i._particleSystem=e,i}s(e,t);var i=e.prototype;return i.destroy=function(){},i.play=function(){this._particleSystem.play()},i.pause=function(){this._particleSystem.stopEmitting()},i.stop=function(){this._particleSystem.stopEmitting()},i.setSpeed=function(t){this._particleSystem.simulationSpeed=t},e}(CK);function XK(t){return"string"==typeof t||"number"==typeof t}var jK,YK,qK,KK,QK,ZK,JK,$K,tQ,eQ,iQ,nQ,rQ,sQ,aQ,oQ,hQ,uQ=eo("cc.animation.HierarchyPath")((GK=function(){function t(t){this.path=VK&&VK(),this.path=t||""}return t.prototype.get=function(t){return t instanceof hg?t.getChildByPath(this.path)||(tt(3926,t.name,this.path),null):(tt(3925),null)},t}(),VK=ja(GK.prototype,"path",[lo],(function(){return""})),kK=GK))||kK,lQ=eo("cc.animation.ComponentPath")((zK=function(){function t(t){this.component=HK&&HK(),this.component=t||""}return t.prototype.get=function(t){return t instanceof hg?t.getComponent(this.component)||(tt(3928,t.name,this.component),null):(tt(3927),null)},t}(),HK=ja(zK.prototype,"component",[lo],(function(){return""})),UK=zK))||UK,cQ=Symbol("NormalizedFollow"),_Q=Symbol("ConvertAsTrsPath"),fQ=Symbol("TrackBinding"),dQ=eo("cc.animation.TrackPath")((YK=function(){function t(){this._paths=qK&&qK()}var e=t.prototype;return e.toProperty=function(t){return this._paths.push(t),this},e.toElement=function(t){return this._paths.push(t),this},e.toHierarchy=function(t){return this._paths.push(new uQ(t)),this},e.toComponent=function(t){var e=new lQ("string"==typeof t?t:Nt(t));return this._paths.push(e),this},e.toCustomized=function(t){return this._paths.push(t),this},e.append=function(){for(var t,e=arguments.length,i=new Array(e),n=0;n<e;n++)i[n]=arguments[n];var r=(t=this._paths).concat.apply(t,i.map((function(t){return t._paths})));return this._paths=r,this},e.isPropertyAt=function(t){return"string"==typeof this._paths[t]},e.parsePropertyAt=function(t){return this._paths[t]},e.isElementAt=function(t){return"number"==typeof this._paths[t]},e.parseElementAt=function(t){return this._paths[t]},e.isHierarchyAt=function(t){return this._paths[t]instanceof uQ},e.parseHierarchyAt=function(t){return this.isHierarchyAt(t),this._paths[t].path},e.isComponentAt=function(t){return this._paths[t]instanceof lQ},e.parseComponentAt=function(t){return this.isComponentAt(t),this._paths[t].component},e.slice=function(e,i){var n=new t;return n._paths=this._paths.slice(e,i),n},e.trace=function(t,e,i){var n,r;return null!==(n=e)&&void 0!==n||(e=0),null!==(r=i)&&void 0!==r||(i=this._paths.length),this[cQ](t,e,i)},e[_Q]=function(){for(var t,e=this._paths,i=e.length,n=0,r="";n<i;++n){var s=e[n];if(!(s instanceof uQ))break;s.path&&(r?r+="/"+s.path:r=s.path)}if(n===i)return null;if(n!==i-1)return null;switch(e[n]){case"position":case"scale":case"rotation":case"eulerAngles":t=e[n];break;default:return null}return{node:r,property:t}},e[cQ]=function(t,e,i){for(var n=this._paths,r=t,s=e;s<i;++s){var a=n[s];if(XK(a)){if(!(a in r))return tt(3929,a),null;r=r[a]}else r=a.get(r);if(null===r)break}return r},n(t,[{key:"length",get:function(){return this._paths.length}}]),t}(),qK=ja(YK.prototype,"_paths",[lo],(function(){return[]})),jK=YK))||jK,pQ=eo("cc.animation.TrackBinding")(KK=po((($K=function(){function t(){this.path=ZK&&ZK(),this.proxy=JK&&JK()}var e=t.prototype;return e.parseTrsPath=function(){return this.proxy?null:this.path[_Q]()},e.createRuntimeBinding=function(e,i,n){var r=this.path,s=this.proxy,a=r.length,o=a-1;if(0===a||!r.isPropertyAt(o)&&!r.isElementAt(o)||s){if(s){var h=r[cQ](e,0,a);if(null===h)return null;var u=s.forTarget(h);if(!u)return null;var l={setValue:function(t){u.set(t)}},c=u.get;return c&&(l.getValue=function(){return c.call(u)}),l}return it(3921),null}var _=r.isPropertyAt(o)?r.parsePropertyAt(o):r.parseElementAt(o),f=r[cQ](e,0,a-1);if(null===f)return null;if(i&&f instanceof hg&&mQ(_))return i.createPoseWriter(f,_,n);var d=t._animationFunctions.get(f.constructor);d||(d=new Map,t._animationFunctions.set(f.constructor,d));var p=d.get(_);return p||(p={setValue:Function("value","this.target."+_+" = value;"),getValue:Function("return this.target."+_+";")},d.set(_,p)),{target:f,setValue:p.setValue,getValue:p.getValue}},e.isMaskedOff=function(t){var e=this.parseTrsPath();if(!e)return!1;for(var i=t.joints[Symbol.iterator](),n=i.next();!n.done;n=i.next()){var r=n.value;if(r.path===e.node)return!r.enabled}return!1},t}())._animationFunctions=new WeakMap,ZK=ja((QK=$K).prototype,"path",[lo],(function(){return new dQ})),JK=ja(QK.prototype,"proxy",[lo],null),KK=QK))||KK)||KK;function mQ(t){return"position"===t||"rotation"===t||"scale"===t||"eulerAngles"===t}var gQ,vQ,yQ=eo("cc.animation.Track")((eQ=function(){function t(){this._binding=iQ&&iQ()}var e=t.prototype;return e.channels=function(){return[]},e.range=function(){for(var t,e={min:1/0,max:-1/0},i=f(this.channels());!(t=i()).done;){var n=t.value;e.min=Math.min(e.min,n.curve.rangeMin),e.max=Math.max(e.max,n.curve.rangeMax)}return e},n(t,[{key:"path",get:function(){return this._binding.path},set:function(t){this._binding.path=t}},{key:"proxy",get:function(){return this._binding.proxy},set:function(t){this._binding.proxy=t}},{key:fQ,get:function(){return this._binding}}]),t}(),iQ=ja(eQ.prototype,"_binding",[lo],(function(){return new pQ})),tQ=eQ))||tQ,SQ=eo("cc.animation.Channel")((rQ=function(){function t(t){this.name="",this._curve=sQ&&sQ(),this._curve=t}return n(t,[{key:"curve",get:function(){return this._curve}}]),t}(),sQ=ja(rQ.prototype,"_curve",[lo],null),nQ=rQ))||nQ,TQ=eo("cc.animation.SingleChannelTrack")((oQ=function(t){function e(){var e;return(e=t.call(this)||this)._channel=hQ&&hQ(),e._channel=new SQ(e.createCurve()),e}s(e,t);var i=e.prototype;return i.channels=function(){return[this._channel]},i.createCurve=function(){throw new Error("Not impl")},i[AK]=function(){var t=this._channel.curve;return new AQ(t)},n(e,[{key:"channel",get:function(){return this._channel}}]),e}(yQ),hQ=ja(oQ.prototype,"_channel",[lo],null),aQ=oQ))||aQ,AQ=function(){function t(t){this._curve=t}return t.prototype.evaluate=function(t){return this._curve.evaluate(t)},n(t,[{key:"requiresDefault",get:function(){return!1}}]),t}(),bQ=lo;eo("cc.animation.RealArrayTrack")((gQ=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._channels=vQ&&vQ(),e}s(e,t);var i=e.prototype;return i.channels=function(){return this._channels},i[AK]=function(){return new zQ(this._channels.map((function(t){return t.curve})))},n(e,[{key:"elementCount",get:function(){return this._channels.length},set:function(t){var e=this._channels.length;if(t<e)this._channels.splice(t);else if(t>e){var i;(i=this._channels).push.apply(i,Array.from({length:t-e},(function(){return new SQ(new su)})))}}}]),e}(yQ),vQ=ja(gQ.prototype,"_channels",[bQ],(function(){return[]})),gQ));var EQ,CQ,xQ,wQ,RQ,IQ,DQ,BQ,MQ,PQ,OQ,LQ,NQ,FQ,kQ,GQ,VQ,UQ,zQ=function(){function t(t){this._curves=t,this._result=new Array(t.length).fill(0)}return t.prototype.evaluate=function(t){for(var e=this._result,i=e.length,n=0;n<i;++n)e[n]=this._curves[n].evaluate(t);return this._result},n(t,[{key:"requiresDefault",get:function(){return!1}}]),t}(),HQ=eo("cc.animation.UniformProxyFactory")((CQ=function(){function t(t,e){this.passIndex=xQ&&xQ(),this.uniformName=wQ&&wQ(),p(this,"channelIndex",RQ,this),this.passIndex=e||0,this.uniformName=t||""}return t.prototype.forTarget=function(t){if(t instanceof zT){var e=this.passIndex,i=this.uniformName,n=this.channelIndex;if(e<0||e>=t.passes.length)tt(3941,t.name,e);else{var r=t.passes[e],s=r.getHandle(i);if(s){if(IT.getTypeFromHandle(s)<nc.SAMPLER1D){var a=void 0===n?s:r.getHandle(i,n,nc.FLOAT);return a?function(t,e){for(var i,n=f(t.shaderInfo.blocks);!(i=n()).done;)for(var r,s=f(i.value.members);!(r=s()).done;){var a=r.value;if(a.name===e)return a.count>1}return!1}(r,i)?{set:function(t){r.setUniformArray(a,t)}}:{set:function(t){r.setUniform(a,t)}}:void tt(3943,t.name,e,i,n)}var o=IT.getBindingFromHandle(s),h=r.properties[i],u=h&&h.value?""+h.value+xy(h.type):Cy(h.type),l=bT.get(u);return l||(z("Illegal texture default value: "+u+"."),l=bT.get("default-texture")),{set:function(t){t||(t=l);var e=t.getGFXTexture();e&&e.width&&e.height&&(r.bindTexture(o,e),t instanceof Xd&&r.bindSampler(o,Ff.gfxDevice.getSampler(t.getSamplerInfo())))}}}tt(3942,t.name,e,i)}}else tt(3940,t)},t}(),xQ=ja(CQ.prototype,"passIndex",[lo],(function(){return 0})),wQ=ja(CQ.prototype,"uniformName",[lo],(function(){return""})),RQ=m(CQ.prototype,"channelIndex",[Mo],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){}}),EQ=CQ))||EQ,WQ=eo("cc.animation.MorphWeightValueProxy")((DQ=function(){function t(){this.subMeshIndex=BQ&&BQ(),this.shapeIndex=MQ&&MQ()}return t.prototype.forTarget=function(t){var e=this;return{set:function(i){t.setWeight(i,e.subMeshIndex,e.shapeIndex)}}},t}(),BQ=ja(DQ.prototype,"subMeshIndex",[lo],(function(){return 0})),MQ=ja(DQ.prototype,"shapeIndex",[lo],(function(){return 0})),IQ=DQ))||IQ,XQ=eo("cc.animation.MorphWeightsValueProxy")((OQ=function(){function t(){this.subMeshIndex=LQ&&LQ()}return t.prototype.forTarget=function(t){var e=this;return{set:function(i){t.setWeights(i,e.subMeshIndex)}}},t}(),LQ=ja(OQ.prototype,"subMeshIndex",[lo],(function(){return 0})),PQ=OQ))||PQ,jQ=eo("cc.animation.MorphWeightsAllValueProxy")(NQ=function(){function t(){}return t.prototype.forTarget=function(t){return{set:function(e){for(var i,n,r=null!==(i=null===(n=t.mesh)||void 0===n?void 0:n.struct.primitives.length)&&void 0!==i?i:0,s=0;s<r;++s)t.setWeights(e,s)}}},t}())||NQ;function YQ(t,e,i,n){var r,s,a,o,h,u=new e,l=new e,c=new e,_=eo(t)((s=function(){function t(t,i,n){this.dataPoint=a&&a(),this.inTangent=o&&o(),this.outTangent=h&&h(),this.dataPoint=t||new e,this.inTangent=i||new e,this.outTangent=n||new e}var r=t.prototype;return r.lerp=function(t,e,r){var s=this.dataPoint,a=t.dataPoint;l=i(l,this.inTangent,r),c=i(c,t.outTangent,r);var o=e*e*e,h=e*e,_=o-2*h+e,f=-2*o+3*h,d=o-h;return u=i(u,s,2*o-3*h+1),u=n(u,u,l,_),u=n(u,u,a,f),u=n(u,u,c,d)},r.getNoLerp=function(){return this.dataPoint},t}(),a=ja(s.prototype,"dataPoint",[lo],(function(){return new e})),o=ja(s.prototype,"inTangent",[lo],(function(){return new e})),h=ja(s.prototype,"outTangent",[lo],(function(){return new e})),r=s))||r;if(e===Bn){var f=_.prototype.lerp;_.prototype.lerp=function(t,e,i){var n=f.call(this,t,e,i);return Bn.normalize(n,n),n}}return _}var qQ,KQ,QQ,ZQ,JQ,$Q=YQ("cc.CubicSplineVec2Value",jn,jn.multiplyScalar,jn.scaleAndAdd),tZ=YQ("cc.CubicSplineVec3Value",gn,gn.multiplyScalar,gn.scaleAndAdd),eZ=YQ("cc.CubicSplineVec4Value",cn,cn.multiplyScalar,cn.scaleAndAdd),iZ=YQ("cc.CubicSplineQuatValue",Bn,Bn.multiplyScalar,Bn.scaleAndAdd),nZ=eo("cc.CubicSplineNumberValue")((kQ=function(){function t(t,e,i){this.dataPoint=GQ&&GQ(),this.inTangent=VQ&&VQ(),this.outTangent=UQ&&UQ(),this.dataPoint=t,this.inTangent=e,this.outTangent=i}var e=t.prototype;return e.lerp=function(t,e,i){var n=this.dataPoint,r=t.dataPoint,s=e*e*e,a=e*e;return n*(2*s-3*a+1)+this.outTangent*i*(s-2*a+e)+r*(-2*s+3*a)+t.inTangent*i*(s-a)},e.getNoLerp=function(){return this.dataPoint},t}(),GQ=ja(kQ.prototype,"dataPoint",[lo],(function(){return 0})),VQ=ja(kQ.prototype,"inTangent",[lo],(function(){return 0})),UQ=ja(kQ.prototype,"outTangent",[lo],(function(){return 0})),FQ=kQ))||FQ,rZ=eo("cc.animation.RealTrack")(qQ=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.createCurve=function(){return new su},e}(TQ))||qQ;function sZ(t){return 0===t.keyFramesCount?void 0:t}var aZ,oZ,hZ,uZ,lZ,cZ,_Z,fZ,dZ,pZ=["X","Y","Z","W"],mZ=eo("cc.animation.VectorTrack")((QQ=function(t){function e(){var e;(e=t.call(this)||this)._channels=ZQ&&ZQ(),e._nComponents=JQ&&JQ(),e._channels=new Array(4);for(var i=0;i<e._channels.length;++i){var n=new SQ(new su);n.name=pZ[i],e._channels[i]=n}return e}s(e,t);var i=e.prototype;return i.channels=function(){return this._channels},i[AK]=function(){switch(this._nComponents){default:case 2:return new gZ(sZ(this._channels[0].curve),sZ(this._channels[1].curve));case 3:return new vZ(sZ(this._channels[0].curve),sZ(this._channels[1].curve),sZ(this._channels[2].curve));case 4:return new yZ(sZ(this._channels[0].curve),sZ(this._channels[1].curve),sZ(this._channels[2].curve),sZ(this._channels[3].curve))}},n(e,[{key:"componentsCount",get:function(){return this._nComponents},set:function(t){this._nComponents=t}}]),e}(yQ),ZQ=ja(QQ.prototype,"_channels",[lo],null),JQ=ja(QQ.prototype,"_nComponents",[lo],(function(){return 4})),KQ=QQ))||KQ,gZ=function(){function t(t,e){this._result=new jn,this._x=t,this._y=e}return t.prototype.evaluate=function(t,e){return e&&jn.copy(this._result,e),this._x&&(this._result.x=this._x.evaluate(t)),this._y&&(this._result.y=this._y.evaluate(t)),this._result},n(t,[{key:"requiresDefault",get:function(){return!this._x||!this._y}}]),t}(),vZ=function(){function t(t,e,i){this._result=new gn,this._x=t,this._y=e,this._z=i}return t.prototype.evaluate=function(t,e){var i=this._x,n=this._y,r=this._z,s=this._result;return e&&gn.copy(s,e),i&&(s.x=i.evaluate(t)),n&&(s.y=n.evaluate(t)),r&&(s.z=r.evaluate(t)),s},n(t,[{key:"requiresDefault",get:function(){return!this._x||!this._y||!this._z}}]),t}(),yZ=function(){function t(t,e,i,n){this._result=new cn,this._x=t,this._y=e,this._z=i,this._w=n}return t.prototype.evaluate=function(t,e){return e&&cn.copy(this._result,e),this._x&&(this._result.x=this._x.evaluate(t)),this._y&&(this._result.y=this._y.evaluate(t)),this._z&&(this._result.z=this._z.evaluate(t)),this._w&&(this._result.w=this._w.evaluate(t)),this._result},n(t,[{key:"requiresDefault",get:function(){return!(this._x&&this._y&&this._z&&this._w)}}]),t}(),SZ=eo("cc.animation.QuatTrack")(aZ=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.createCurve=function(){return new Wu},i[AK]=function(){return new TZ(this.channels()[0].curve)},e}(TQ))||aZ,TZ=function(){function t(t){this._result=new Bn,this._curve=t}return t.prototype.evaluate=function(t){return this._curve.evaluate(t,this._result),this._result},n(t,[{key:"requiresDefault",get:function(){return!1}}]),t}(),AZ=["Red","Green","Blue","Alpha"],bZ=eo("cc.animation.ColorTrack")((hZ=function(t){function e(){var e;(e=t.call(this)||this)._channels=uZ&&uZ(),e._channels=new Array(4);for(var i=0;i<e._channels.length;++i){var n=new SQ(new su);n.name=AZ[i],e._channels[i]=n}return e}s(e,t);var i=e.prototype;return i.channels=function(){return this._channels},i[AK]=function(){return new EZ(sZ(this._channels[0].curve),sZ(this._channels[1].curve),sZ(this._channels[2].curve),sZ(this._channels[3].curve))},e}(yQ),uZ=ja(hZ.prototype,"_channels",[lo],null),oZ=hZ))||oZ,EZ=function(){function t(t,e,i,n){this._result=new En,this._x=t,this._y=e,this._z=i,this._w=n}return t.prototype.evaluate=function(t,e){return e&&En.copy(this._result,e),this._x&&(this._result.r=this._x.evaluate(t)),this._y&&(this._result.g=this._y.evaluate(t)),this._z&&(this._result.b=this._z.evaluate(t)),this._w&&(this._result.a=this._w.evaluate(t)),this._result},n(t,[{key:"requiresDefault",get:function(){return!(this._x&&this._y&&this._z&&this._w)}}]),t}(),CZ=["Width","Height"],xZ=eo("cc.animation.SizeTrack")((cZ=function(t){function e(){var e;(e=t.call(this)||this)._channels=_Z&&_Z(),e._channels=new Array(2);for(var i=0;i<e._channels.length;++i){var n=new SQ(new su);n.name=CZ[i],e._channels[i]=n}return e}s(e,t);var i=e.prototype;return i.channels=function(){return this._channels},i[AK]=function(){return new wZ(sZ(this._channels[0].curve),sZ(this._channels[1].curve))},e}(yQ),_Z=ja(cZ.prototype,"_channels",[lo],null),lZ=cZ))||lZ,wZ=function(){function t(t,e){this._result=new Qn,this._width=t,this._height=e}return t.prototype.evaluate=function(t,e){return e&&(this._result.x=e.x,this._result.y=e.y),this._width&&(this._result.width=this._width.evaluate(t)),this._height&&(this._result.height=this._height.evaluate(t)),this._result},n(t,[{key:"requiresDefault",get:function(){return!this._width||!this._height}}]),t}(),RZ=eo("cc.animation.ObjectTrack")(fZ=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.createCurve=function(){return new tl},e}(TQ))||fZ,IZ=Symbol("[[Owner]]");function DZ(t){t[IZ]}!function(t){t[t.FLOAT=0]="FLOAT",t[t.BOOLEAN=1]="BOOLEAN",t[t.TRIGGER=2]="TRIGGER",t[t.INTEGER=3]="INTEGER",t[t.VEC3_experimental=4]="VEC3_experimental",t[t.QUAT_experimental=5]="QUAT_experimental"}(dZ||(dZ={}));var BZ,MZ,PZ,OZ,LZ,NZ,FZ,kZ,GZ=Symbol("CreateInstance"),VZ=function(){function t(t){this._refs=[],this.type=t}return t.prototype.bind=function(t,e){for(var i=arguments.length,n=new Array(i>2?i-2:0),r=2;r<i;r++)n[r-2]=arguments[r];return this._refs.push({fn:t,thisArg:e,args:n}),this.getValue()},n(t,[{key:"value",get:function(){return this.getValue()},set:function(t){this.setValue(t);for(var e,i=f(this._refs);!(e=i()).done;){var n=e.value,r=n.fn,s=n.thisArg,a=n.args;r.call.apply(r,[s,t].concat(a))}}}]),t}(),UZ=eo("cc.animation.PlainVariable")((MZ=function(){function t(t){if(this._type=PZ&&PZ(),this._value=OZ&&OZ(),void 0!==t)switch(this._type=t,t){default:break;case dZ.FLOAT:case dZ.INTEGER:this._value=0;break;case dZ.BOOLEAN:this._value=!1}}return t.prototype[GZ]=function(){return new zZ(this._type,this._value)},n(t,[{key:"type",get:function(){return this._type}},{key:"value",get:function(){return this._value},set:function(t){this._value=t}}]),t}(),PZ=ja(MZ.prototype,"_type",[lo],(function(){return dZ.FLOAT})),OZ=ja(MZ.prototype,"_value",[lo],(function(){return 0})),BZ=MZ))||BZ,zZ=function(t){function e(e,i){var n;return(n=t.call(this,e)||this)._value=void 0,n._value=i,n}s(e,t);var i=e.prototype;return i.getValue=function(){return this._value},i.setValue=function(t){this._value=t},e}(VZ);!function(t){t[t.AFTER_CONSUMED=0]="AFTER_CONSUMED",t[t.NEXT_FRAME_OR_AFTER_CONSUMED=1]="NEXT_FRAME_OR_AFTER_CONSUMED"}(kZ||(kZ={})),kZ.AFTER_CONSUMED;var HZ,WZ,XZ,jZ,YZ,qZ,KZ,QZ,ZZ,JZ,$Z,tJ,eJ=eo("cc.animation.TriggerVariable")((NZ=function(){function t(){this._flags=FZ&&FZ()}return t.prototype[GZ]=function(){return new iJ(this.value,this.resetMode)},n(t,[{key:"type",get:function(){return dZ.TRIGGER}},{key:"value",get:function(){return!!((1&this._flags)>>0)},set:function(t){t?this._flags|=1:this._flags&=-2}},{key:"resetMode",get:function(){return(6&this._flags)>>1},set:function(t){this._flags&=-7,this._flags|=t<<1}}]),t}(),FZ=ja(NZ.prototype,"_flags",[lo],(function(){return 0})),LZ=NZ))||LZ,iJ=function(t){function e(e,i){var n;return(n=t.call(this,dZ.TRIGGER)||this).resetMode=kZ.AFTER_CONSUMED,n._value=void 0,n.resetMode=i,n._value=e,n}s(e,t);var i=e.prototype;return i.getValue=function(){return this._value},i.setValue=function(t){this._value=t},e}(VZ),nJ=eo("cc.animation.Vec3Variable")((WZ=function(){function t(){this._value=XZ&&XZ()}return t.prototype[GZ]=function(){return new rJ(this.value)},n(t,[{key:"type",get:function(){return dZ.VEC3_experimental}},{key:"value",get:function(){return this._value},set:function(t){gn.copy(this._value,t)}}]),t}(),XZ=ja(WZ.prototype,"_value",[lo],(function(){return new gn})),HZ=WZ))||HZ,rJ=function(t){function e(e){var i;return(i=t.call(this,dZ.VEC3_experimental)||this)._value=new gn,gn.copy(i._value,e),i}s(e,t);var i=e.prototype;return i.getValue=function(){return this._value},i.setValue=function(t){gn.copy(this._value,t)},e}(VZ),sJ=eo("cc.animation.QuatVariable")((YZ=function(){function t(){this._value=qZ&&qZ()}return t.prototype[GZ]=function(){return new aJ(this._value)},n(t,[{key:"type",get:function(){return dZ.QUAT_experimental}},{key:"value",get:function(){return this._value},set:function(t){Bn.copy(this._value,t)}}]),t}(),qZ=ja(YZ.prototype,"_value",[lo],(function(){return new Bn})),jZ=YZ))||jZ,aJ=function(t){function e(e){var i;return(i=t.call(this,dZ.QUAT_experimental)||this)._value=new Bn,Bn.copy(i._value,e),i}s(e,t);var i=e.prototype;return i.getValue=function(){return this._value},i.setValue=function(t){Bn.copy(this._value,t)},e}(VZ),oJ=function(t){function e(e){var i;return(i=t.call(this,e+" transition is invalid")||this).name="TransitionRejectError",i}return s(e,t),e}(l(Error)),hJ=function(t){function e(e){return t.call(this,"Graph variable "+e+" is not defined")||this}return s(e,t),e}(l(Error)),uJ=function(t){function e(e,i,n){return t.call(this,"Expect graph variable "+e+" to have type '"+i+"' instead of received '"+(null!=n?n:typeof n)+"'")||this}return s(e,t),e}(l(Error)),lJ=Ms.Flags.Destroyed,cJ=Ms.Flags.PersistentMask,_J=[];function fJ(t){var e;if(Ps(t)){if(function(t){return"function"==typeof t._instantiate}(t))return S.game._isCloning=!0,e=t._instantiate(null,!0),S.game._isCloning=!1,e;if(t instanceof S.Asset)throw new TypeError(at(6903))}return S.game._isCloning=!0,e=dJ(t),S.game._isCloning=!1,e}function dJ(t,e){var i;pJ(t,i=t._iN$t?t._iN$t:t.constructor?new(0,t.constructor):Object.create(null),e);for(var n=0,r=_J.length;n<r;++n)_J[n]._iN$t=null;return _J.length=0,i}function pJ(t,e,i){Bt(t,"_iN$t",e,!0),_J.push(t);var n=t.constructor;if(xi(n))!function(t,e,i,n){for(var r=t.__values__,s=0;s<r.length;s++){var a=r[s],o=e[a];if("object"==typeof o&&o){var h=i[a];h instanceof Ie&&h.constructor===o.constructor?h.set(o):i[a]=o._iN$t||mJ(o,n)}else i[a]=o}}(n,t,e,i);else for(var r in t)if(t.hasOwnProperty(r)&&(95!==r.charCodeAt(0)||95!==r.charCodeAt(1)||"__type__"===r||"__prefab"===r)){var s=t[r];if("object"==typeof s&&s){if(s===e)continue;e[r]=s._iN$t||mJ(s,i)}else e[r]=s}Ps(t)&&(e._objFlags&=cJ)}function mJ(t,e){if(t instanceof Ie)return t.clone();if(t instanceof S.Asset)return t;var i;if(ArrayBuffer.isView(t)){var n=t.length;i=new t.constructor(n),t._iN$t=i,_J.push(t);for(var r=0;r<n;++r)i[r]=t[r];return i}if(Array.isArray(t)){var s=t.length;i=new Array(s),t._iN$t=i,_J.push(t);for(var a=0;a<s;++a){var o=t[a];i[a]="object"==typeof o&&o?o._iN$t||mJ(o,e):o}return i}if(t._objFlags&lJ)return null;var h=t.constructor;if(xi(h)){if(e)if(e instanceof mp){if(t instanceof hg||t instanceof mp)return t}else if(e instanceof hg)if(t instanceof hg){if(!t.isChildOf(e))return t}else if(t instanceof mp&&t.node&&!t.node.isChildOf(e))return t;i=new h}else if(h===Object)i={};else{if(h)return t;i=Object.create(null)}return pJ(t,i,e),i}function gJ(t){var e=t[Ds];if("object"==typeof e&&e){var i,n=e;return null===(i=n.clone)||void 0===i?void 0:i.call(n,t)}}fJ._clone=dJ,S.instantiate=fJ;var vJ,yJ,SJ,TJ=Symbol("[[Outgoing transitions]]"),AJ=Symbol("[[Incoming transitions]]"),bJ=eo,EJ=lo,CJ=bJ("cc.animation.State")((QZ=function(t){function e(){var e;return(e=t.call(this)||this).name=ZZ&&ZZ(),e[TJ]=[],e[AJ]=[],e}return s(e,t),e.prototype.copyTo=function(t){t.name=this.name,t[Ds]=gJ(this)},e}(Yo),ZZ=ja(QZ.prototype,"name",[EJ],(function(){return""})),KZ=QZ))||KZ,xJ=bJ("cc.animation.InteractiveState")(($Z=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._components=tJ&&tJ(),e}s(e,t);var i=e.prototype;return i.addComponent=function(t){var e=new t;return this._components.push(e),e},i.removeComponent=function(t){de(this._components,t)},i.instantiateComponents=function(){return this._components.map((function(t){return fJ(t)}))},i.copyTo=function(e){t.prototype.copyTo.call(this,e),e._components=this.instantiateComponents()},n(e,[{key:"components",get:function(){return this._components}}]),e}(CJ),tJ=ja($Z.prototype,"_components",[EJ],(function(){return[]})),JZ=$Z))||JZ;function wJ(t,e,i){for(var n=t.components,r=n.length,s=0;s<r;++s){var a=n[s],o=a[e];"function"==typeof o&&o.apply(a,i)}}var RJ,IJ,DJ,BJ,MJ,PJ,OJ,LJ,NJ,FJ=eo("cc.animation.AnimationGraphEventBinding")((yJ=function(){function t(){this.methodName=SJ&&SJ()}var e=t.prototype;return e.emit=function(t){this.methodName&&wJ(t,this.methodName,[])},e.copyTo=function(t){return t.methodName=this.methodName,this},n(t,[{key:"isBound",get:function(){return!!this.methodName}}]),t}(),SJ=ja(yJ.prototype,"methodName",[lo],(function(){return""})),vJ=yJ))||vJ,kJ=eo("cc.animation.Motion")((IJ=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).motion=DJ&&DJ(),e.speed=BJ&&BJ(),e.speedMultiplier=MJ&&MJ(),e.speedMultiplierEnabled=PJ&&PJ(),e.transitionInEventBinding=OJ&&OJ(),e.transitionOutEventBinding=LJ&&LJ(),e}s(e,t);var i=e.prototype;return i.__callOnAfterDeserializeRecursive=function(){var t;null===(t=this.motion)||void 0===t||t.__callOnAfterDeserializeRecursive()},i.copyTo=function(e){var i,n;return t.prototype.copyTo.call(this,e),e.motion=null!==(i=null===(n=this.motion)||void 0===n?void 0:n.clone())&&void 0!==i?i:null,e.speed=this.speed,e.speedMultiplier=this.speedMultiplier,e.speedMultiplierEnabled=this.speedMultiplierEnabled,this.transitionInEventBinding.copyTo(e.transitionInEventBinding),this.transitionOutEventBinding.copyTo(e.transitionOutEventBinding),this},e}(xJ),DJ=ja(IJ.prototype,"motion",[lo],(function(){return null})),BJ=ja(IJ.prototype,"speed",[lo],(function(){return 1})),MJ=ja(IJ.prototype,"speedMultiplier",[lo],(function(){return""})),PJ=ja(IJ.prototype,"speedMultiplierEnabled",[lo],(function(){return!1})),OJ=ja(IJ.prototype,"transitionInEventBinding",[lo],(function(){return new FJ})),LJ=ja(IJ.prototype,"transitionOutEventBinding",[lo],(function(){return new FJ})),RJ=IJ))||RJ,GJ=Symbol("[[OnAfterDeserialized]]"),VJ=eo("cc.animation.AnimationGraphLike")(NJ=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(vd))||NJ;function UJ(t,e,i){var n=Object.prototype.propertyIsEnumerable;if(!n.call(t,e))return t;if(i in t)return t;var r={};return"symbol"==typeof e?(Object.entries(t).forEach((function(t){var e=t[0],i=t[1];r[e]=i})),Object.getOwnPropertySymbols(t).forEach((function(s){n.call(t,s)&&(r[s===e?i:s]=t[s])}))):(Object.entries(t).forEach((function(t){var n=t[0],s=t[1];r[n===e?i:n]=s})),Object.getOwnPropertySymbols(t).forEach((function(e){n.call(t,e)&&(r[e]=t[e])}))),r}var zJ,HJ,WJ,XJ,jJ,YJ,qJ,KJ,QJ=function(){var t=!1;try{t=[]instanceof function(){function t(){}return t[Symbol.hasInstance]=function(t){return Array.isArray(t)},t}()}catch(e){t=!1}return t?function(t){function e(){throw new Error("This function can not be called as a constructor.")}return Object.defineProperty(e,Symbol.hasInstance,{value:function(e){return e instanceof t}}),e}:function(t){return t}}(),ZJ=eo("cc.animation.PoseGraphNodeShell")((HJ=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._bindings=WJ&&WJ(),e}s(e,t);var i=e.prototype;return i.getBindings=function(){return this._bindings},i.addBinding=function(t,e,i){this._emplaceBinding(new t$(t,e,i))},i.deleteBinding=function(t){var e=this._findBindingIndex(t);e>=0&&this._bindings.splice(e,1)},i.moveArrayElementBindingForward=function(t,e,i){for(var n=this._bindings,r=[],s=0;s<n.length;++s){var a=n[s],o=a.inputPath,h=o[0],u=o[1];h===t&&(void 0===u?-1:u)>=e&&(r.push(a),n.splice(s,1))}for(var l=0,c=r;l<c.length;l++){var _=c[l],f=_.inputPath,d=f[0],p=f[1],m=void 0===p?-1:p;this.addBinding([d,m+(i?-1:1)],_.producer,_.outputIndex)}},i.deleteBindingTo=function(t){for(var e=this._bindings,i=0;i<e.length;++i)e[i].producer===t&&e.splice(i,1)},i.findBinding=function(t){var e=this._findBindingIndex(t);return e>=0?this._bindings[e]:void 0},i._findBindingIndex=function(t){return this._bindings.findIndex((function(e){return JJ(e.inputPath,t)}))},i._emplaceBinding=function(t){var e=this._bindings.findIndex((function(e){return JJ(e.inputPath,t.inputPath)}));e>=0?this._bindings[e]=t:this._bindings.push(t)},e}(Yo),WJ=ja(HJ.prototype,"_bindings",[lo],(function(){return[]})),zJ=HJ))||zJ;function JJ(t,e){var i=t[0],n=t[1],r=e[0],s=e[1];return i===r&&n===s}var $J,t$=eo("cc.animation.PoseGraphNodeInputBinding")((jJ=function(){function t(t,e,i){this._inputPath=YJ&&YJ(),this._producer=qJ&&qJ(),this._outputIndex=KJ&&KJ(),this._inputPath=t,this._producer=e,void 0!==i&&(this._outputIndex=i)}return n(t,[{key:"inputPath",get:function(){return this._inputPath}},{key:"producer",get:function(){return this._producer}},{key:"outputIndex",get:function(){return this._outputIndex}}]),t}(),YJ=ja(jJ.prototype,"_inputPath",[lo],null),qJ=ja(jJ.prototype,"_producer",[lo],null),KJ=ja(jJ.prototype,"_outputIndex",[lo],(function(){return 0})),XJ=jJ))||XJ,e$=function(t){function e(e){return t.call(this,"Can not add the specified "+e.toString()+" since it has already been added into another graph.")||this}return s(e,t),e}(l(Error)),i$=function(t){function e(e){return t.call(this,"Can not perform specified operation on "+e.toString()+" since it has not been added in to graph.")||this}return s(e,t),e}(l(Error));!function(t){t[t.FLOAT=0]="FLOAT",t[t.INTEGER=1]="INTEGER",t[t.BOOLEAN=2]="BOOLEAN",t[t.VEC3=3]="VEC3",t[t.QUAT=4]="QUAT",t[t.POSE=5]="POSE"}($J||($J={}));var n$=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(Yo),r$=new WeakMap;function s$(t){return function(e){if(Kt(e,n$)||(H("This kind of decorator should only be applied to pose graph node classes."),0)){var i=function(t){var e=r$.get(t);if(e)return e;var i={};return r$.set(t,i),i}(e);t(i)}}}var a$=function(t){return s$((function(e){var i;Object.assign(null!==(i=e.appearance)&&void 0!==i?i:e.appearance={},t)}))},o$=["arraySyncGroup"];function h$(t,e,i,n){var r=t.getShell(e);if(!r)throw new i$(e);var s=i[0],a=i[1],o=void 0===a?-1:a,h=e[s];Array.isArray(h)&&(h.splice(o,0,n),r.moveArrayElementBindingForward(s,o+1,!1))}function u$(t,e,i){var n=t.getShell(e);if(!n)throw new i$(e);var r=i[0],s=i[1],a=void 0===s?-1:s,o=e[r];Array.isArray(o)&&(a<0||a>=o.length||(n.deleteBinding(i),o.splice(a,1),n.moveArrayElementBindingForward(r,a+1,!0)))}function l$(t){switch(t){default:case $J.FLOAT:case $J.INTEGER:return 0;case $J.BOOLEAN:return!1;case $J.POSE:return null;case $J.VEC3:return new gn;case $J.QUAT:return new Bn}}var c$,_$=new(function(){function t(){this._classInputMap=new WeakMap}var e=t.prototype;return e.setPropertyNodeInputRecord=function(t,e,i){var n=this._classInputMap.get(t);n||(n={properties:{}},this._classInputMap.set(t,n)),i.arraySyncGroup;var r=function(t,e){if(null==t)return{};var i,n,r={},s=Object.keys(t);for(n=0;n<s.length;n++)i=s[n],e.indexOf(i)>=0||(r[i]=t[i]);return r}(i,o$),s=i.arraySyncGroup;if(s){var a,o;n.arraySyncGroups||(n.arraySyncGroups={});var h=null!==(o=(a=n.arraySyncGroups)[s])&&void 0!==o?o:a[s]={members:[]};h.members.includes(e)||h.members.push(e),r.arraySyncGroup=h}n.properties[e]=Object.freeze(r)},e.getInputKeys=function(t){var e=this,i=[];return function n(r){if(r){n(qt(r));var s=e._classInputMap.get(r);if(s)for(var a=function(){var e=h[o][0];if(i.findIndex((function(t){var i=t[0];return e===i}))>=0)return 1;var n=t[e];if(Array.isArray(n))for(var r=0;r<n.length;++r)i.push([e,r]);else i.push([e])},o=0,h=Object.entries(s.properties);o<h.length;o++)a()}}(t.constructor),i},e.isPoseInput=function(t,e){var i=e[0],n=this._getPropertyNodeInputRecord(t.constructor,i);return!!n&&n.type===$J.POSE},e.getInputMetadata=function(t,e){var i=e[0],n=e[1],r=void 0===n?-1:n,s=this._getPropertyNodeInputRecord(t.constructor,i);if(s){var a=t[i];if(Array.isArray(a)){if(r<0||r>=a.length)return;var o,h,u=null!==(o=null===(h=s.getArrayElementDisplayName)||void 0===h?void 0:h.call(t,r))&&void 0!==o?o:s.displayName;return{type:s.type,displayName:u,deletable:!(s.arraySyncGroup&&s.arraySyncGroupFollower),insertPoint:!0}}return{type:s.type,displayName:s.displayName}}},e.hasInput=function(t,e){var i=e[0],n=e[1],r=void 0===n?-1:n;if(!this._getPropertyNodeInputRecord(t.constructor,i))return!1;var s=t[i];return!Array.isArray(s)||!(r<0||r>=s.length)},e.getInputInsertInfos=function(t){for(var e={},i=t.constructor;i;i=qt(i)){var n=this._classInputMap.get(i);if(n)for(var r in n.properties){var s=n.properties[r],a=t[r];if(Array.isArray(a)){if(s.arraySyncGroup&&s.arraySyncGroupFollower)continue;e[r]={displayName:r}}}}return e},e.deleteInput=function(t,e,i){var n=i[0],r=i[1],s=void 0===r?-1:r,a=this._getPropertyNodeInputRecord(e.constructor,n);if(a){var o=e[n];if(Array.isArray(o)&&!(s<0||s>=o.length)){var h=a.arraySyncGroup;h?this._deleteInputInArraySyncGroup(t,e,h,o.length,s):u$(t,e,i)}}},e.insertInput=function(t,e,i){var n=i,r=this._getPropertyNodeInputRecord(e.constructor,n);if(r){var s=e[n];if(Array.isArray(s)){var a=s.length,o=r.arraySyncGroup;o?this._insertInputInArraySyncGroup(t,e,o,s.length,a):h$(t,e,[n,a],l$(r.type))}}},e._getPropertyNodeInputRecord=function(t,e){if(t){var i=this._classInputMap.get(t);if(i){var n=i.properties[e];if(n)return n}return this._getPropertyNodeInputRecord(qt(t),e)}},e._insertInputInArraySyncGroup=function(t,e,i,n,r){for(var s=0;s<i.members.length;++s){var a=i.members[s],o=this._getPropertyNodeInputRecord(e.constructor,a),h=e[a];Array.isArray(h)&&h.length===n&&h$(t,e,[a,r],l$(o.type))}},e._deleteInputInArraySyncGroup=function(t,e,i,n,r){for(var s=0;s<i.members.length;++s){var a=i.members[s];this._getPropertyNodeInputRecord(e.constructor,a);var o=e[a];Array.isArray(o)&&o.length===n&&u$(t,e,[a,r])}},t}()),f$=new gn,d$=new gn,p$=new Bn;new Bn;var m$,g$,v$=function(){function t(){this._position=new gn,this._rotation=new Bn,this._scale=gn.clone(gn.ONE)}return t.clone=function(e){var i=new t;return t.copy(i,e),i},t.setIdentity=function(t){return gn.copy(t._position,gn.ZERO),Bn.copy(t._rotation,Bn.IDENTITY),gn.copy(t._scale,gn.ONE),t},t.copy=function(t,e){return gn.copy(t._position,e._position),Bn.copy(t._rotation,e._rotation),gn.copy(t._scale,e._scale),t},t.equals=function(t,e,i){return gn.equals(t._position,e._position,i)&&Bn.equals(t._rotation,e._rotation,i)&&gn.equals(t._scale,e._scale,i)},t.strictEquals=function(t,e){return gn.strictEquals(t._position,e._position)&&Bn.strictEquals(t._rotation,e._rotation)&&gn.strictEquals(t._scale,e._scale)},t.lerp=function(e,i,n,r){return 0===r?t.copy(e,i):1===r?t.copy(e,n):(gn.lerp(e._position,i._position,n._position,r),Bn.slerp(e._rotation,i._rotation,n._rotation,r),gn.lerp(e._scale,i._scale,n._scale,r),e)},t.multiply=function(t,e,i){var n=Bn.multiply(p$,e._rotation,i._rotation),r=gn.multiply(f$,i._scale,e._scale),s=gn.multiply(d$,i._position,e._scale);return gn.transformQuat(s,s,e._rotation),gn.add(s,s,e._position),gn.copy(t._position,s),Bn.copy(t._rotation,n),gn.copy(t._scale,r),t},t.invert=function(t,e){var i=t._rotation,n=t._scale,r=t._position;return Bn.invert(i,e._rotation),y$(n,e._scale,Oi),gn.negate(r,e._position),gn.multiply(r,r,n),gn.transformQuat(r,r,i),t},t.fromMatrix=function(t,e){return Vn.toSRT(e,t._rotation,t._position,t._scale),t},t.toMatrix=function(t,e){return Vn.fromSRT(t,e._rotation,e._position,e._scale)},n(t,[{key:"position",get:function(){return this._position},set:function(t){gn.copy(this._position,t)}},{key:"rotation",get:function(){return this._rotation},set:function(t){Bn.copy(this._rotation,t)}},{key:"scale",get:function(){return this._scale},set:function(t){gn.copy(this._scale,t)}}]),t}();function y$(t,e,i){var n=e.x,r=e.y,s=e.z;return gn.set(t,Math.abs(n)<=i?0:1/n,Math.abs(r)<=i?0:1/r,Math.abs(s)<=i?0:1/s)}c$=v$,v$.IDENTITY=Object.freeze(new c$),v$.ZERO=Object.freeze(function(){var t=new c$;return gn.copy(t._position,gn.ZERO),Bn.set(t._rotation,0,0,0,0),gn.copy(t._scale,gn.ZERO),t}()),v$.calculateRelative=(m$=new Bn,g$=new gn,function(t,e,i){var n=Bn.invert(m$,i._rotation),r=y$(g$,i._scale,Oi),s=gn.subtract(d$,e._position,i._position);return gn.transformQuat(s,s,n),gn.multiply(s,s,r),gn.copy(t._position,s),Bn.multiply(t._rotation,n,e._rotation),gn.multiply(t._scale,e._scale,r),t});var S$,T$,A$,b$=(S$=new Bn,function(t,e,i,n){gn.scaleAndAdd(t.position,e.position,i.position,n);var r=Bn.slerp(S$,Bn.IDENTITY,i.rotation,n);return Bn.multiply(t.rotation,r,e.rotation),gn.scaleAndAdd(t.scale,e.scale,i.scale,n),t}),E$=(T$=new Bn,function(t,e,i){var n=Bn.invert(T$,e);return Bn.multiply(t,i,n)}),C$=Object.freeze(function(){var t=new v$;return t.position=gn.ZERO,t.rotation=Bn.IDENTITY,t.scale=gn.ZERO,t}()),x$=function(){function t(t,e){this.transforms=void 0,this.auxiliaryCurves=void 0,this._poseTransformSpace=A$.LOCAL,this.transforms=t,this.auxiliaryCurves=e}return t._create=function(e,i){return new t(e,i)},t}();!function(t){t[t.LOCAL=0]="LOCAL",t[t.COMPONENT=1]="COMPONENT"}(A$||(A$={}));var w$=function(){function t(t){this._involvedTransforms=new Uint16Array(t)}return n(t,[{key:"involvedTransforms",get:function(){return this._involvedTransforms}}]),t}();function R$(t,e,i,n){void 0===n&&(n=void 0),function(t,e,i,n){void 0===n&&(n=void 0);var r=t.length;if(t.length,0!==i)if(1!==i)if(n)for(var s=0;s<n.involvedTransforms.length;++s){var a=n.involvedTransforms[s];B$(t,e,i,a)}else for(var o=0;o<r;++o)B$(t,e,i,o);else n?function(t,e,i){t.length,t.length;for(var n=0;n<i.involvedTransforms.length;++n){var r=i.involvedTransforms[n];t.copyRange(r,e,r,1)}}(t,e,n):t.set(e)}(t.transforms,e.transforms,i,n),function(t,e,i){var n=e.length;t.length;for(var r=0;r<n;++r)t[r]=Gi(t[r],e[r],i)}(t.auxiliaryCurves,e.auxiliaryCurves,i)}var I$,D$,B$=(I$=new v$,D$=new v$,function(t,e,i,n){var r=t.getTransform(n,D$),s=e.getTransform(n,I$);v$.lerp(r,r,s,i),t.setTransform(n,r)});var M$=function(){var t=new v$,e=new v$;return function(i,n,r){var s=n.getTransform(r,t),a=i.getTransform(r,e);!function(t,e,i){gn.subtract(t.position,e.position,i.position),E$(t.rotation,i.rotation,e.rotation),gn.subtract(t.scale,e.scale,i.scale)}(a,a,s),i.setTransform(r,a)}}();function P$(t,e,i,n){void 0===n&&(n=void 0),function(t,e,i,n){void 0===n&&(n=void 0);var r=t.length;if(e.length,n)for(var s=0;s<n.involvedTransforms.length;++s){var a=n.involvedTransforms[s];N$(t,e,i,a)}else for(var o=0;o<r;++o)N$(t,e,i,o)}(t.transforms,e.transforms,i,n),function(t,e,i){t.length,e.length;for(var n=0;n<t.length;++n)t[n]+=e[n]*i}(t.auxiliaryCurves,e.auxiliaryCurves,i)}var O$,L$,N$=function(){var t=new v$,e=new v$;return function(i,n,r,s){var a=n.getTransform(s,t),o=i.getTransform(s,e);b$(o,o,a,r),i.setTransform(s,o)}}();!function(t){t[t.NO=0]="NO",t[t.LOCAL=1]="LOCAL",t[t.COMPONENT=2]="COMPONENT"}(L$||(L$={})),we(L$);var F$,k$,G$,V$,U$,z$,H$=eo("cc.animation.PoseNode")(O$=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._dependencyEvaluation=void 0,e}s(e,t);var i=e.prototype;return i.update=function(t){var e;null===(e=this._dependencyEvaluation)||void 0===e||e.evaluate(),this.doUpdate(t)},i.evaluate=function(t,e){var i=this.doEvaluate(t),n=i._poseTransformSpace;switch(e){default:case L$.NO:break;case L$.LOCAL:n===A$.COMPONENT&&t._poseTransformsSpaceComponentToLocal(i),i._poseTransformSpace,A$.LOCAL;break;case L$.COMPONENT:n===A$.LOCAL&&t._poseTransformsSpaceLocalToComponent(i),i._poseTransformSpace,A$.COMPONENT}return i},e.evaluateDefaultPose=function(t,e){switch(e){default:case L$.NO:case L$.LOCAL:return t.pushDefaultedPose();case L$.COMPONENT:return t.pushDefaultedPoseInComponentSpace()}},i._setDependencyEvaluation=function(t){this._dependencyEvaluation=t},i._forceEvaluateEvaluation=function(){var t;null===(t=this._dependencyEvaluation)||void 0===t||t.evaluate()},e}(n$))||O$,W$=function(t){function e(e){var i;return(i=t.call(this)||this)._outputTypes=[],i._outputTypes=e,i}s(e,t);var i=e.prototype;return i.getOutputType=function(t){return this._outputTypes[t]},i.link=function(){},n(e,[{key:"outputCount",get:function(){return this._outputTypes.length}}]),e}(n$);function X$(t){return function(e,i){var n=e.constructor;t.type!==$J.POSE||Kt(n,H$)?Kt(n,H$)||Kt(n,W$)?j$(t)(e,i):H("@input can be only applied to fields of subclasses of PoseNode or PureValueNode."):H("@input specifying pose input can be only applied to fields of subclasses of PoseNode.")}}function j$(t){return function(e,i){if("string"==typeof i){var n=e.constructor;_$.setPropertyNodeInputRecord(n,i,t),oo(e,i).__internalFlags|=fi.STANDALONE|fi.IMPLICIT_VISIBLE}else H("@input can be only applied to string-named fields.")}}!function(t){function e(e){return t.call(this,[e])||this}s(e,t),e.prototype.selfEvaluate=function(t){t[0]=this.selfEvaluateDefaultOutput()}}(W$);var Y$,q$,K$,Q$,Z$,J$,$$,t0,e0,i0,n0,r0,s0,a0,o0,h0,u0,l0,c0,_0,f0,d0,p0,m0,g0,v0,y0,S0,T0,A0,b0,E0,C0,x0,w0,R0,I0,D0,B0,M0,P0,O0,L0,N0,F0,k0,G0,V0,U0,z0,H0,W0,X0,j0,Y0,q0,K0,Q0,Z0,J0,$0=(F$=eo("cc.animation.PoseGraphOutputNode"),k$=a$({themeColor:"#CD3A58",inline:!0}),G$=j$({type:$J.POSE}),F$(V$=k$((U$=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return p(e=t.call.apply(t,[this].concat(n))||this,"pose",z$,c(e)),e}return s(e,t),e}(n$),z$=m(U$.prototype,"pose",[lo,G$],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return null}}),V$=U$))||V$)||V$),t1=eo("cc.animation.PoseGraph")((q$=function(t){function e(){var e;return(e=t.call(this)||this)._outputNode=K$&&K$(),e._nodes=Q$&&Q$(),e._shells=Z$&&Z$(),e._shellMap=J$&&J$(),e.addNode(e._outputNode),e}s(e,t);var i=e.prototype;return i.__callOnAfterDeserializeRecursive=function(){this._nodes.length,this._shells.length;for(var t=0;t<this._nodes.length;++t){var e,i=this._nodes[t],n=this._shells[t];this._shellMap.set(i,n),null===(e=i.__callOnAfterDeserializeRecursive)||void 0===e||e.call(i)}},i.nodes=function(){return this._nodes.values()},i.addNode=function(t){if(this._shellMap.has(t))throw new e$(t);var e=new ZJ;return this._shells.push(e),this._nodes.push(t),this._shellMap.set(t,e),t},i.removeNode=function(t){if(t!==this._outputNode){var e=this._nodes.indexOf(t);if(!(e<0)){this._shellMap.has(t);for(var i,n=f(this._shells);!(i=n()).done;)i.value.deleteBindingTo(t);_e(this._shells,e),_e(this._nodes,e),this._shellMap.delete(t)}}else H("Can not remove the output node.")},i.getShell=function(t){return this._shellMap.get(t)},n(e,[{key:"outputNode",get:function(){return this._outputNode}}]),e}(Yo),K$=ja(q$.prototype,"_outputNode",[lo],(function(){return new $0})),Q$=ja(q$.prototype,"_nodes",[lo],(function(){return[]})),Z$=ja(q$.prototype,"_shells",[lo],(function(){return[]})),J$=ja(q$.prototype,"_shellMap",[lo],(function(){return new Map})),Y$=q$))||Y$,e1=eo("cc.animation.Transition")((t0=function(t){function e(e,i,n){var r;return(r=t.call(this)||this).from=e0&&e0(),r.to=i0&&i0(),r.conditions=n0&&n0(),r[IZ]=void 0,r.from=e,r.to=i,n&&(r.conditions=n),r}return s(e,t),e.prototype.copyTo=function(t){t.conditions=this.conditions.map((function(t){return t.clone()}))},e}(Yo),e0=ja(t0.prototype,"from",[lo],null),i0=ja(t0.prototype,"to",[lo],null),n0=ja(t0.prototype,"conditions",[lo],(function(){return[]})),$$=t0))||$$,i1=eo("cc.animation.DurationalTransition")((s0=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).destinationStart=a0&&a0(),e.relativeDestinationStart=o0&&o0(),e.startEventBinding=h0&&h0(),e.endEventBinding=u0&&u0(),e[IZ]=void 0,e}return s(e,t),e.prototype.copyTo=function(e){t.prototype.copyTo.call(this,e),e.destinationStart=this.destinationStart,e.relativeDestinationStart=this.relativeDestinationStart,this.startEventBinding.copyTo(e.startEventBinding),this.endEventBinding.copyTo(e.endEventBinding)},e}(e1),a0=ja(s0.prototype,"destinationStart",[lo],(function(){return 0})),o0=ja(s0.prototype,"relativeDestinationStart",[lo],(function(){return!1})),h0=ja(s0.prototype,"startEventBinding",[lo],(function(){return new FJ})),u0=ja(s0.prototype,"endEventBinding",[lo],(function(){return new FJ})),r0=s0))||r0,n1=eo("cc.animation.AnimationTransition")((c0=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).duration=_0&&_0(),e.relativeDuration=f0&&f0(),e.exitConditionEnabled=d0&&d0(),e._exitCondition=p0&&p0(),e}return s(e,t),e.prototype.copyTo=function(e){t.prototype.copyTo.call(this,e),e.duration=this.duration,e.relativeDuration=this.relativeDuration,e.exitConditionEnabled=this.exitConditionEnabled,e.exitCondition=this.exitCondition},n(e,[{key:"exitCondition",get:function(){return this._exitCondition},set:function(t){this._exitCondition=t}}]),e}(i1),_0=ja(c0.prototype,"duration",[lo],(function(){return.3})),f0=ja(c0.prototype,"relativeDuration",[lo],(function(){return!1})),d0=ja(c0.prototype,"exitConditionEnabled",[lo],(function(){return!0})),p0=ja(c0.prototype,"_exitCondition",[lo],(function(){return 1})),l0=c0))||l0;function r1(t){return t instanceof n1}var s1,a1=eo("cc.animation.EmptyState")(m0=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(CJ))||m0,o1=eo("cc.animation.EmptyStateTransition")((v0=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).duration=y0&&y0(),e}return s(e,t),e.prototype.copyTo=function(e){t.prototype.copyTo.call(this,e),e.duration=this.duration},e}(i1),y0=ja(v0.prototype,"duration",[lo],(function(){return.3})),g0=v0))||g0,h1=eo("cc.animation.ProceduralPoseState")((T0=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).graph=A0&&A0(),e.transitionInEventBinding=b0&&b0(),e.transitionOutEventBinding=E0&&E0(),e}s(e,t);var i=e.prototype;return i.__callOnAfterDeserializeRecursive=function(){this.graph.__callOnAfterDeserializeRecursive()},i.copyTo=function(e){return t.prototype.copyTo.call(this,e),this.transitionInEventBinding.copyTo(e.transitionInEventBinding),this.transitionOutEventBinding.copyTo(e.transitionOutEventBinding),this},e}(CJ),A0=ja(T0.prototype,"graph",[lo],(function(){return new t1})),b0=ja(T0.prototype,"transitionInEventBinding",[lo],(function(){return new FJ})),E0=ja(T0.prototype,"transitionOutEventBinding",[lo],(function(){return new FJ})),S0=T0))||S0,u1=QJ(h1),l1=eo("cc.animation.ProceduralPoseTransition")((x0=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).duration=w0&&w0(),e}return s(e,t),e.prototype.copyTo=function(e){t.prototype.copyTo.call(this,e),e.duration=this.duration},e}(i1),w0=ja(x0.prototype,"duration",[lo],(function(){return.3})),C0=x0))||C0,c1=QJ(l1),_1=eo("cc.animation.StateMachine")((I0=function(t){s(i,t);var e=i.prototype;function i(e){var i;return(i=t.call(this)||this)._states=D0&&D0(),i._transitions=B0&&B0(),i._entryState=M0&&M0(),i._exitState=P0&&P0(),i._anyState=O0&&O0(),i._allowEmptyStates=!0,i._allowEmptyStates=null!=e&&e,i._entryState=i._addState(new CJ),i._entryState.name="Entry",i._exitState=i._addState(new CJ),i._exitState.name="Exit",i._anyState=i._addState(new CJ),i._anyState.name="Any",i}return e.__callOnAfterDeserializeRecursive=function(){this[GJ]();for(var t=this._states.length,e=0;e<t;++e){var i=this._states[e];i instanceof f1?i.stateMachine.__callOnAfterDeserializeRecursive():(i instanceof h1||i instanceof kJ)&&i.__callOnAfterDeserializeRecursive()}},e[GJ]=function(){this._states.forEach((function(){})),this._transitions.forEach((function(t){t.from[TJ].push(t),t.to[AJ].push(t)}))},e.states=function(){return this._states},e.transitions=function(){return this._transitions},e.getTransitionsBetween=function(t,e){return DZ(t),DZ(e),t[TJ].filter((function(t){return t.to===e}))},e.getOutgoings=function(t){return DZ(t),t[TJ]},e.getIncomings=function(t){return DZ(t),t[AJ]},e.addMotion=function(){return this._addState(new kJ)},e.addSubStateMachine=function(){return this._addState(new f1(this._allowEmptyStates))},e.addEmpty=function(){if(!this._allowEmptyStates)throw new Error("Empty states are now allowed in this state machine.");return this._addState(new a1)},e.addProceduralPoseState=function(){return this._addState(new h1)},e.remove=function(t){DZ(t),t!==this.entryState&&t!==this.exitState&&t!==this.anyState&&(this.eraseTransitionsIncludes(t),de(this._states,t))},e.connect=function(t,e,i){if(DZ(t),DZ(e),e===this.entryState)throw new oJ("to-entry");if(e===this.anyState)throw new oJ("to-any");if(t===this.exitState)throw new oJ("from-exit");var n=t instanceof kJ||t===this._anyState?new n1(t,e,i):t instanceof a1?new o1(t,e,i):t instanceof h1?new l1(t,e,i):new e1(t,e,i);return this._transitions.push(n),t[TJ].push(n),e[AJ].push(n),n},e.disconnect=function(t,e){DZ(t),DZ(e);for(var i=t[TJ],n=e[AJ],r=this._transitions,s=i.filter((function(t){return t.to===e})),a=s.length,o=function(){var t=s[h];de(i,t),de(r,t),me(n,(function(e){return e===t}))},h=0;h<a;++h)o()},e.removeTransition=function(t){de(this._transitions,t),me(t.from[TJ],(function(e){return e===t})),me(t.to[AJ],(function(e){return e===t}))},e.eraseOutgoings=function(t){var e=this;DZ(t);for(var i=t[TJ],n=function(){var t=i[r],n=t.to;de(e._transitions,t),me(n[AJ],(function(e){return e===t}))},r=0;r<i.length;++r)n();i.length=0},e.eraseIncomings=function(t){var e=this;DZ(t);for(var i=t[AJ],n=function(){var t=i[r],n=t.from;de(e._transitions,t),me(n[TJ],(function(e){return e===t}))},r=0;r<i.length;++r)n();i.length=0},e.eraseTransitionsIncludes=function(t){this.eraseIncomings(t),this.eraseOutgoings(t)},e.adjustTransitionPriority=function(t,e){var i=t.from;if(0!==e){var n=i[TJ],r=n.indexOf(t),s=Fi(r+e,0,n.length-1),a=this._transitions,o=a.indexOf(t);if(s>r)for(var h=r+1;h<=s;++h){var u=n[h],l=a.indexOf(u);a[o]=u,o=l}else if(r>s)for(var c=r-1;c>=s;--c){var _=n[c],f=a.indexOf(_);a[o]=_,o=f}a[o]=t,Wl(n,r,s)}},e.copyTo=function(t){for(var e,i=f(t._states.filter((function(e){switch(e){case t._entryState:case t._exitState:case t._anyState:return!0;default:return!1}})));!(e=i()).done;){var n=e.value;t.remove(n)}for(var r,s=new Map,a=f(this._states);!(r=a()).done;){var o=r.value;switch(o){case this._entryState:s.set(o,t._entryState);break;case this._exitState:s.set(o,t._exitState);break;case this._anyState:s.set(o,t._anyState);break;default:if(o instanceof kJ||o instanceof f1||o instanceof a1||o instanceof h1){if(o instanceof a1&&!t._allowEmptyStates)continue;var h=fJ(o);t._addState(h),s.set(o,h)}}}for(var u,l=f(this._transitions);!(u=l()).done;){var c=u.value;if(t._allowEmptyStates||!(c.from instanceof a1||c.to instanceof a1)){var _=s.get(c.from),d=s.get(c.to),p=t.connect(_,d);p.conditions=c.conditions.map((function(t){return t.clone()})),c.copyTo(p)}}},e.clone=function(){var t=new i(this._allowEmptyStates);return this.copyTo(t),t},e._addState=function(t){return this._states.push(t),t},n(i,[{key:"allowEmptyStates",get:function(){return this._allowEmptyStates}},{key:"entryState",get:function(){return this._entryState}},{key:"exitState",get:function(){return this._exitState}},{key:"anyState",get:function(){return this._anyState}}]),i}(Yo),D0=ja(I0.prototype,"_states",[lo],(function(){return[]})),B0=ja(I0.prototype,"_transitions",[lo],(function(){return[]})),M0=ja(I0.prototype,"_entryState",[lo],null),P0=ja(I0.prototype,"_exitState",[lo],null),O0=ja(I0.prototype,"_anyState",[lo],null),R0=I0))||R0,f1=eo("cc.animation.SubStateMachine")((N0=function(t){function e(e){var i;return(i=t.call(this)||this)._stateMachine=F0&&F0(),i._stateMachine=new _1(e),i}return s(e,t),e.prototype.copyTo=function(e){t.prototype.copyTo.call(this,e),this._stateMachine.copyTo(e._stateMachine)},n(e,[{key:"stateMachine",get:function(){return this._stateMachine}}]),e}(xJ),F0=ja(N0.prototype,"_stateMachine",[lo],null),L0=N0))||L0,d1=eo("cc.animation.PoseGraphStash")((G0=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).graph=V0&&V0(),e}return s(e,t),e}(Yo),V0=ja(G0.prototype,"graph",[lo],(function(){return new t1})),k0=G0))||k0,p1=eo("cc.animation.Layer")((z0=function(){var t=e.prototype;function e(){this[IZ]=void 0,this._stateMachine=H0&&H0(),this.name=W0&&W0(),this.weight=X0&&X0(),this.mask=j0&&j0(),this.additive=Y0&&Y0(),this._stashes=q0&&q0(),this._stateMachine=new _1(!0)}return t.__callOnAfterDeserializeRecursive=function(){for(var t in this.stateMachine._allowEmptyStates=!0,this.stateMachine.__callOnAfterDeserializeRecursive(),this._stashes)this._stashes[t].graph.__callOnAfterDeserializeRecursive()},t.stashes=function(){return Object.entries(this._stashes)},t.getStash=function(t){return this._stashes[t]},t.addStash=function(t){return this._stashes[t]=new d1},t.removeStash=function(t){delete this._stashes[t]},t.renameStash=function(t,e){this._stashes=UJ(this._stashes,t,e)},n(e,[{key:"stateMachine",get:function(){return this._stateMachine}}]),e}(),H0=ja(z0.prototype,"_stateMachine",[lo],null),W0=ja(z0.prototype,"name",[lo],(function(){return""})),X0=ja(z0.prototype,"weight",[lo],(function(){return 1})),j0=ja(z0.prototype,"mask",[lo],(function(){return null})),Y0=ja(z0.prototype,"additive",[lo],(function(){return!1})),q0=ja(z0.prototype,"_stashes",[lo],(function(){return{}})),U0=z0))||U0;!function(t){t[t.override=0]="override",t[t.additive=1]="additive"}(s1||(s1={}));var m1,g1=eo("cc.animation.AnimationGraph")((Q0=function(t){function e(){var e;return(e=t.call(this)||this)._layers=Z0&&Z0(),e._variables=J0&&J0(),e}s(e,t);var i=e.prototype;return i.onLoaded=function(){for(var t=this._layers,e=t.length,i=0;i<e;++i)t[i].__callOnAfterDeserializeRecursive()},i.addLayer=function(){var t=new p1;return this._layers.push(t),t},i.removeLayer=function(t){_e(this._layers,t)},i.moveLayer=function(t,e){Wl(this._layers,t,e)},i.addVariable=function(t,e,i){var n=function(t,e){var i;switch(t){case dZ.FLOAT:case dZ.INTEGER:case dZ.BOOLEAN:i=new UZ(t);break;case dZ.TRIGGER:i=new eJ;break;case dZ.VEC3_experimental:i=new nJ;break;case dZ.QUAT_experimental:i=new sJ;break;default:throw new Error("Unknown variable type "+t)}return void 0!==e&&(i.value=e),i}(e,i);return this._variables[t]=n,n},i.removeVariable=function(t){delete this._variables[t]},i.getVariable=function(t){return this._variables[t]},i.renameVariable=function(t,e){this._variables=UJ(this._variables,t,e)},n(e,[{key:"layers",get:function(){return this._layers}},{key:"variables",get:function(){return Object.entries(this._variables)}}]),e}(VJ),Z0=ja(Q0.prototype,"_layers",[lo],(function(){return[]})),J0=ja(Q0.prototype,"_variables",[lo],(function(){return{}})),K0=Q0))||K0,v1=Symbol("[[createEval]]"),y1=eo("cc.animation.MotionBase")(m1=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.__callOnAfterDeserializeRecursive=function(){},e}(Yo))||m1,S1=t("av",function(){function t(t){var e,i;this.ratios=void 0,this._findRatio=void 0,this.ratios=t;for(var n=!0,r=1,s=t.length;r<s;r++)if(e=t[r]-t[r-1],1===r)i=e;else if(Math.abs(e-i)>1e-6){n=!1;break}this._findRatio=n?E1:Va}return t.prototype.sample=function(t){return this._findRatio(this.ratios,t)},t}());S.RatioSampler=S1;var T1=t("aw",function(){function t(e,i){this.types=void 0,this.type=null,this._values=[],this._lerp=void 0,this._duration=void 0,this._array=void 0,this._duration=i,this._values=e.values;var n=function(e){return"string"==typeof e?e:Array.isArray(e)?e[0]===e[1]&&e[2]===e[3]?t.Linear:t.Bezier(e):t.Linear};if(void 0!==e.easingMethod)this.type=n(e.easingMethod);else if(Array.isArray(e.easingMethods))this.types=e.easingMethods.map(n);else if(void 0!==e.easingMethods){this.types=new Array(this._values.length).fill(null);for(var r=0,s=Object.keys(e.easingMethods);r<s.length;r++){var a=s[r];this.types[a]=n(e.easingMethods[a])}}else this.type=null;var o=e.values[0];(void 0===e.interpolate||e.interpolate)&&(this._lerp=B1(o)),void 0!==e._arrayLength&&(this._array=new Array(e._arrayLength))}t.Bezier=function(t){return t};var e=t.prototype;return e.hasLerp=function(){return!!this._lerp},e.valueAt=function(t){if(void 0===this._array){var e=this._values[t];return e&&e.getNoLerp?e.getNoLerp():e}for(var i=0;i<this._array.length;++i)this._array[i]=this._values[this._array.length*t+i];return this._array},e.valueBetween=function(t,e,i,n,r){if(this._lerp){var s=this.types?this.types[e]:this.type,a=r-i,o=(t-i)/a;if(s&&(o=b1(o,s)),void 0===this._array){var h=this._values[e],u=this._values[n];return this._lerp(h,u,o,a*this._duration)}for(var l=0;l<this._array.length;++l){var c=this._values[this._array.length*e+l],_=this._values[this._array.length*n+l];this._array[l]=this._lerp(c,_,o,a*this._duration)}return this._array}if(void 0===this._array)return this.valueAt(e);for(var f=0;f<this._array.length;++f)this._array[f]=this._values[this._array.length*e+f];return this._array},e.empty=function(){return 0===this._values.length},e.constant=function(){return 1===this._values.length},t}());function A1(t,e,i){var n=e.sample(i);if(n<0)if((n=~n)<=0)n=0;else{if(!(n>=e.ratios.length))return t.valueBetween(i,n-1,e.ratios[n-1],n,e.ratios[n]);n=e.ratios.length-1}return t.valueAt(n)}function b1(t,e){if("string"==typeof e){var i=qh[e];i?t=i(t):it(3906,e)}else Array.isArray(e)&&(t=Vu(e,t));return t}function E1(t,e){var i=t.length-1;if(0===i)return 0;var n=t[0];if(e<n)return 0;var r=t[i];if(e>r)return i;var s=(e=(e-n)/(r-n))/(1/i),a=0|s,o=1e-6;return s-a<o?a:a+1-s<o?a+1:~(a+1)}T1.Linear=null,S.AnimCurve=T1,t("ax",function(){function t(){this.events=[]}return t.prototype.add=function(t,e){this.events.push({func:t||"",params:e||[]})},t}()),S.sampleAnimationCurve=A1;var C1,x1,w1,R1,I1,D1,B1=function(){function t(t,e,i,n){return t.lerp(e,i,n)}return function(e){if(null!==e){if("number"==typeof e)return Gi;if("object"==typeof e&&e.constructor){if(e instanceof Bn)return i=new Bn,function(t,e,n){return Bn.slerp(i,t,e,n)};if(e instanceof Ie)return function(t){var e=new t;return function(i,n,r){return t.lerp(e,i,n,r),e}}(e.constructor);if(e.constructor===Number)return Gi;if("function"==typeof e.lerp)return t}var i}}}(),M1=eo("cc.animation.UntypedTrackChannel")((x1=function(t){function e(){var e;return(e=t.call(this,new su)||this).property=w1&&w1(),e}return s(e,t),e}(SQ),w1=ja(x1.prototype,"property",[lo],(function(){return""})),C1=x1))||C1,P1=eo("cc.animation.UntypedTrack")((I1=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._channels=D1&&D1(),e}s(e,t);var i=e.prototype;return i.channels=function(){return this._channels},i[AK]=function(){throw new Error("UntypedTrack should be handled specially. Please file an issue.")},i.createLegacyEval=function(t){var e=this,i=function(t){var i;return null===(i=e._channels.find((function(e){return e.property===t})))||void 0===i?void 0:i.curve};switch(!0){default:throw new Error(at(3931));case t instanceof jn:return new gZ(i("x"),i("y"));case t instanceof gn:return new vZ(i("x"),i("y"),i("z"));case t instanceof cn:return new yZ(i("x"),i("y"),i("z"),i("w"));case t instanceof En:return new EZ(i("r"),i("g"),i("b"),i("a"));case t instanceof Qn:return new wZ(i("width"),i("height"))}},i.addChannel=function(t){var e=new M1;return e.property=t,this._channels.push(e),e},i.upgrade=function(t){var e=this,i=function(t,i){var n=e.channels().find((function(e){return e.property===t}));n&&(i.name=n.name,i.curve.assignSorted(Array.from(n.curve.times()),Array.from(n.curve.values())))},n=t(this.path,this.proxy);switch(n){default:break;case"vec2":case"vec3":case"vec4":var r=new mZ;r.path=this.path,r.proxy=this.proxy,r.componentsCount="vec2"===n?2:"vec3"===n?3:4;var s=r.channels(),a=s[0],o=s[1],h=s[2],u=s[3];switch(n){case"vec4":i("w",u);case"vec3":i("z",h);default:case"vec2":i("x",a),i("y",o)}return r;case"color":var l=new bZ,c=l.channels(),_=c[0],f=c[1],d=c[2],p=c[3];return i("r",_),i("g",f),i("b",d),i("a",p),i("x",_),i("y",f),i("z",d),i("w",p),l;case"size":}return null},e}(yQ),D1=ja(I1.prototype,"_channels",[lo],(function(){return[]})),R1=I1))||R1,O1=function(){function t(t){this._keys=[],this._curves=[],this._commonTargets=[],this._ratioSamplers=[],this._runtimeCurves=void 0,this._data=null,this._duration=void 0,this._duration=t}var e=t.prototype;return e.getPropertyCurves=function(){return this._runtimeCurves||this._createPropertyCurves(),this._runtimeCurves},e.toTracks=function(){for(var t,e=[],i=this.keys,n=this.curves,r=this.commonTargets,s=function(t,e,i){for(var n,r=new dQ,s=f(e);!(n=s()).done;){var a=n.value;"string"==typeof a?r.toProperty(a):"number"==typeof a?r.toElement(a):a instanceof uQ?r.toHierarchy(a.path):a instanceof lQ?r.toComponent(a.component):r.toCustomized(a)}t.path=r,t.proxy=i},a=r.map((function(t){var i=new P1;return s(i,t.modifiers,t.valueAdapter),e.push(i),i})),o=function(){var n,r=t.value,o=r.data,h=o.values;if(0===h.length)return 0;var u=o.keys<0?[0]:i[o.keys],l=h[0],c=null===(n=o.interpolate)||void 0===n||n;o._arrayLength;var _,f=new N1(o,u.length),d=function(t){s(t,r.modifiers,r.valueAdapter)};if("number"==typeof r.commonTarget){if(!h.every((function(t){return"number"==typeof t})))return tt(3932),0;if(r.valueAdapter||1!==r.modifiers.length||"string"!=typeof r.modifiers[0])return tt(3933),0;var p=r.modifiers[0],m=a[r.commonTarget].addChannel(p).curve;_=m}!function(){if("number"==typeof l){if(!h.every((function(t){return"number"==typeof t})))return void tt(3934);var t;if(_)t=_;else{var i=new rZ;d(i),e.push(i),t=i.channel.curve}var n=c?Ua.LINEAR:Ua.CONSTANT;return t.assignSorted(u,h.map((function(t){return{value:t,interpolationMode:n}}))),void f.convert(t)}if("object"==typeof l)switch(!0){default:break;case L1(h,jn):case L1(h,gn):case L1(h,cn):var r=l instanceof jn?2:l instanceof gn?3:4,s=new mZ;d(s),s.componentsCount=r;var a=s.channels(),o=a[0].curve,p=a[1].curve,m=a[2].curve,g=a[3].curve,v=c?Ua.LINEAR:Ua.CONSTANT,y=function(t){return{value:t,interpolationMode:v}};switch(r){case 4:g.assignSorted(u,h.map((function(t){return y(t.w)}))),f.convert(g);case 3:m.assignSorted(u,h.map((function(t){return y(t.z)}))),f.convert(m);default:o.assignSorted(u,h.map((function(t){return y(t.x)}))),f.convert(o),p.assignSorted(u,h.map((function(t){return y(t.y)}))),f.convert(p)}return void e.push(s);case L1(h,Bn):var S=new SZ;d(S);var T=c?Pu.SLERP:Pu.CONSTANT;return S.channel.curve.assignSorted(u,h.map((function(t){return{value:Bn.clone(t),interpolationMode:T}}))),f.convertQuatCurve(S.channel.curve),void e.push(S);case L1(h,En):var A=new bZ;d(A);var b=A.channels(),E=b[0].curve,C=b[1].curve,x=b[2].curve,w=b[3].curve,R=c?Ua.LINEAR:Ua.CONSTANT,I=function(t){return{value:t,interpolationMode:R}};return E.assignSorted(u,h.map((function(t){return I(t.r)}))),f.convert(E),C.assignSorted(u,h.map((function(t){return I(t.g)}))),f.convert(C),x.assignSorted(u,h.map((function(t){return I(t.b)}))),f.convert(x),w.assignSorted(u,h.map((function(t){return I(t.a)}))),f.convert(w),void e.push(A);case L1(h,Qn):var D=new xZ;d(D);var B=D.channels(),M=B[0].curve,P=B[1].curve,O=c?Ua.LINEAR:Ua.CONSTANT,L=function(t){return{value:t,interpolationMode:O}};return M.assignSorted(u,h.map((function(t){return L(t.width)}))),f.convert(M),P.assignSorted(u,h.map((function(t){return L(t.height)}))),f.convert(P),void e.push(D);case L1(h,nZ):f.nil;var N=new rZ;d(N);var F=c?Ua.CUBIC:Ua.CONSTANT;return N.channel.curve.assignSorted(u,h.map((function(t){return{value:t.dataPoint,leftTangent:t.inTangent,rightTangent:t.outTangent,interpolationMode:F}}))),void e.push(N);case L1(h,$Q):case L1(h,tZ):case L1(h,eZ):f.nil;var k=l instanceof $Q?2:l instanceof tZ?3:4,G=new mZ;d(G),G.componentsCount=k;var V=G.channels(),U=V[0],z=V[1],H=V[2],W=V[3],X=c?Ua.LINEAR:Ua.CONSTANT,j=function(t,e,i){return{value:t,leftTangent:e,rightTangent:i,interpolationMode:X}};switch(k){case 4:W.curve.assignSorted(u,h.map((function(t){return j(t.dataPoint.w,t.inTangent.w,t.outTangent.w)})));case 3:H.curve.assignSorted(u,h.map((function(t){return j(t.dataPoint.z,t.inTangent.z,t.outTangent.z)})));default:U.curve.assignSorted(u,h.map((function(t){return j(t.dataPoint.y,t.inTangent.y,t.outTangent.y)}))),z.curve.assignSorted(u,h.map((function(t){return j(t.dataPoint.x,t.inTangent.x,t.outTangent.x)})))}return void e.push(G);case h.every((function(t){return t instanceof iZ})):tt(3935)}var Y=new RZ;d(Y),Y.channel.curve.assignSorted(u,h),e.push(Y)}()},h=f(n);!(t=h()).done;)o();return e},e._createPropertyCurves=function(){var t=this;this._ratioSamplers=this._keys.map((function(e){return new S1(e.map((function(e){return e/t._duration})))})),this._runtimeCurves=this._curves.map((function(e){return{curve:new T1(e.data,t._duration),modifiers:e.modifiers,valueAdapter:e.valueAdapter,sampler:t._ratioSamplers[e.data.keys],commonTarget:e.commonTarget}}))},n(t,[{key:"keys",get:function(){return this._keys},set:function(t){this._keys=t}},{key:"curves",get:function(){return this._curves},set:function(t){this._curves=t,delete this._runtimeCurves}},{key:"commonTargets",get:function(){return this._commonTargets},set:function(t){this._commonTargets=t}},{key:"data",get:function(){return this._data}}]),t}();function L1(t,e){return t.every((function(t){return t instanceof e}))}var N1=function(){function t(t,e){this._easingMethods=void 0;var i=t.easingMethods;Array.isArray(i)?0===i.length&&0!==e?this._easingMethods=new Array(e).fill(null):this._easingMethods=i:this._easingMethods=void 0===i?new Array(e).fill(t.easingMethod):Array.from({length:e},(function(t,e){var n;return null!==(n=i[e])&&void 0!==n?n:null}))}var e=t.prototype;return e.convert=function(t){var e,i,n,r,s,a,o,h,u,l,c,_,f,d,p,m,g,v,y,S,T,A,b=this._easingMethods;if(b){var E=t.keyFramesCount;if(!(t.keyFramesCount<2)){Array.isArray(b)&&b.length;for(var C=E-1,x=0;x<C;++x){var w=b[x];w&&(Array.isArray(w)?(e=w,i=t.getKeyframeTime(x),n=t.getKeyframeValue(x),r=t.getKeyframeTime(x+1),s=t.getKeyframeValue(x+1),a=void 0,o=void 0,h=void 0,u=void 0,l=void 0,c=void 0,_=void 0,f=void 0,d=void 0,p=void 0,m=void 0,g=void 0,v=void 0,y=void 0,S=void 0,T=void 0,A=void 0,o=e[0],h=e[1],u=e[2],l=e[3],c=n.value,_=3*(r-i),f=3*(s.value-c),m=(1-u)*_,g=(1-l)*f,v=1/3,y=(p=h*f)/(d=o*_),S=Math.sqrt(d*d+p*p)*v,T=g/m,A=Math.sqrt(m*m+g*g)*v,n.interpolationMode=Ua.CUBIC,n.tangentWeightMode=(a=n.tangentWeightMode)===Ha.NONE?Ha.RIGHT:a===Ha.LEFT?Ha.BOTH:a,n.rightTangent=y,n.rightTangentWeight=S,s.tangentWeightMode=function(t){return t===Ha.NONE?Ha.LEFT:t===Ha.RIGHT?Ha.BOTH:t}(s.tangentWeightMode),s.leftTangent=T,s.leftTangentWeight=A):F1(w,t,x))}}}},e.convertQuatCurve=function(t){var e=this._easingMethods;if(e){var i=t.keyFramesCount;if(!(t.keyFramesCount<2)){Array.isArray(e)&&e.length;for(var n=i-1,r=0;r<n;++r){var s=e[r];s&&(Array.isArray(s)?t.getKeyframeValue(r).easingMethod=s.slice():k1(s,t,r))}}}},n(t,[{key:"nil",get:function(){return!this._easingMethods||this._easingMethods.every((function(t){return null==t}))}}]),t}();function F1(t,e,i){e.keyFramesCount;var n=e.getKeyframeValue(i),r=u2[t];r===Yh.CONSTANT?n.interpolationMode=Ua.CONSTANT:(n.interpolationMode=Ua.LINEAR,n.easingMethod=r)}function k1(t,e,i){e.keyFramesCount;var n=e.getKeyframeValue(i),r=u2[t];n.easingMethod=r}var G1,V1,U1,z1,H1,W1,X1,j1,Y1,q1,K1,Q1,Z1,J1,$1,t2,e2,i2,n2,r2,s2,a2,o2,h2,u2={constant:Yh.CONSTANT,linear:Yh.LINEAR,quadIn:Yh.QUAD_IN,quadOut:Yh.QUAD_OUT,quadInOut:Yh.QUAD_IN_OUT,quadOutIn:Yh.QUAD_OUT_IN,cubicIn:Yh.CUBIC_IN,cubicOut:Yh.CUBIC_OUT,cubicInOut:Yh.CUBIC_IN_OUT,cubicOutIn:Yh.CUBIC_OUT_IN,quartIn:Yh.QUART_IN,quartOut:Yh.QUART_OUT,quartInOut:Yh.QUART_IN_OUT,quartOutIn:Yh.QUART_OUT_IN,quintIn:Yh.QUINT_IN,quintOut:Yh.QUINT_OUT,quintInOut:Yh.QUINT_IN_OUT,quintOutIn:Yh.QUINT_OUT_IN,sineIn:Yh.SINE_IN,sineOut:Yh.SINE_OUT,sineInOut:Yh.SINE_IN_OUT,sineOutIn:Yh.SINE_OUT_IN,expoIn:Yh.EXPO_IN,expoOut:Yh.EXPO_OUT,expoInOut:Yh.EXPO_IN_OUT,expoOutIn:Yh.EXPO_OUT_IN,circIn:Yh.CIRC_IN,circOut:Yh.CIRC_OUT,circInOut:Yh.CIRC_IN_OUT,circOutIn:Yh.CIRC_OUT_IN,elasticIn:Yh.ELASTIC_IN,elasticOut:Yh.ELASTIC_OUT,elasticInOut:Yh.ELASTIC_IN_OUT,elasticOutIn:Yh.ELASTIC_OUT_IN,backIn:Yh.BACK_IN,backOut:Yh.BACK_OUT,backInOut:Yh.BACK_IN_OUT,backOutIn:Yh.BACK_OUT_IN,bounceIn:Yh.BOUNCE_IN,bounceOut:Yh.BOUNCE_OUT,bounceInOut:Yh.BOUNCE_IN_OUT,bounceOutIn:Yh.BOUNCE_OUT_IN,smooth:Yh.SMOOTH,fade:Yh.FADE};var l2=eo,c2=lo;function _2(){throw new Error("split() only valid in Editor.")}l2("cc.animation.ExoticAnimation")((G1=function(){function t(){this._nodeAnimations=V1&&V1()}var e=t.prototype;return e.createEvaluator=function(t){return new A2(this._nodeAnimations,t)},e.createEvaluatorForAnimationGraph=function(t){return new C2(this._nodeAnimations,t)},e.addNodeAnimation=function(t){var e=new f2(t);return this._nodeAnimations.push(e),e},e.collectAnimatedJoints=function(){return Array.from(new Set(this._nodeAnimations.map((function(t){return t.path}))))},e.split=function(){return _2()},e.toHashString=function(){return this._nodeAnimations.map((function(t){return t.toHashString()})).join("\n")},t}(),V1=ja(G1.prototype,"_nodeAnimations",[c2],(function(){return[]})),G1));var f2=l2("cc.animation.ExoticNodeAnimation")((z1=function(){function t(t){this._path=H1&&H1(),this._position=W1&&W1(),this._rotation=X1&&X1(),this._scale=j1&&j1(),this._path=t}var e=t.prototype;return e.createPosition=function(t,e){this._position=new y2(t,new g2(e))},e.createRotation=function(t,e){this._rotation=new y2(t,new v2(e))},e.createScale=function(t,e){this._scale=new y2(t,new g2(e))},e.createEvaluator=function(t){return new b2(this._path,this._position,this._rotation,this._scale,t)},e.createEvaluatorForAnimationGraph=function(t){var e=t.bindTransform(this._path);return e?new x2(e,this._position,this._rotation,this._scale):null},e.split=function(){return _2()},e.toHashString=function(){var t,e,i,n,r,s;return this._path+"\n"+(null!==(t=null===(e=this._position)||void 0===e?void 0:e.toHashString())&&void 0!==t?t:"")+(null!==(i=null===(n=this._scale)||void 0===n?void 0:n.toHashString())&&void 0!==i?i:"")+(null!==(r=null===(s=this._rotation)||void 0===s?void 0:s.toHashString())&&void 0!==r?r:"")},n(t,[{key:"path",get:function(){return this._path}}]),t}(),H1=ja(z1.prototype,"_path",[c2],(function(){return""})),W1=ja(z1.prototype,"_position",[c2],(function(){return null})),X1=ja(z1.prototype,"_rotation",[c2],(function(){return null})),j1=ja(z1.prototype,"_scale",[c2],(function(){return null})),U1=z1))||U1;function d2(t){return t.toPrecision(2)}function p2(t){return t.map((function(t){return Number.parseFloat(d2(t))})).join(" ")}var m2=l2("cc.animation.ExoticVectorLikeTrackValues")((q1=function(){function t(t){this._values=K1&&K1(),this._isQuantized=Q1&&Q1(),this._values=t}var e=t.prototype;return e.quantize=function(t){this._isQuantized,this._values=function(t,e){var i=w2[e],n=1<<i.BYTES_PER_ELEMENT,r=Number.POSITIVE_INFINITY,s=Number.NEGATIVE_INFINITY;t.forEach((function(t){r=Math.min(t,r),s=Math.max(t,s)}));var a=s-r,o=i.from(t,(function(t){return(t-r)/a*n}));return new P2(R2(t),o,a,r)}(this._values,t),this._isQuantized=!0},e.toHashString=function(){var t=this._isQuantized,e=this._values;return t+" "+(t?e.toHashString():p2(e))},n(t,[{key:"precision",get:function(){return this._isQuantized?this._values.originalPrecision:R2(this._values)}}]),t}(),K1=ja(q1.prototype,"_values",[c2],null),Q1=ja(q1.prototype,"_isQuantized",[c2],(function(){return!1})),Y1=q1))||Y1,g2=l2("cc.animation.ExoticVec3TrackValues")(Z1=function(t){function e(){return t.apply(this,arguments)||this}s(e,t),e.imitate=function(t,i){var n=new e(t);return i._isQuantized&&n.quantize(i._values.quantizationType),n};var i=e.prototype;return i.get=function(t,e){var i=this._values;this._isQuantized?N2(i,t,e):gn.fromArray(e,i,3*t)},i.lerp=function(t,e,i,n,r,s){var a=this._values;this._isQuantized?(N2(a,t,n),N2(a,e,r)):(gn.fromArray(n,a,3*t),gn.fromArray(r,a,3*e)),gn.lerp(s,n,r,i)},e}(m2))||Z1,v2=l2("cc.animation.ExoticQuatTrackValues")(J1=function(t){function e(){return t.apply(this,arguments)||this}s(e,t),e.imitate=function(t,i){var n=new e(t);return i._isQuantized&&n.quantize(i._values.quantizationType),n};var i=e.prototype;return i.get=function(t,e){var i=this._values;this._isQuantized?F2(i,t,e):Bn.fromArray(e,i,4*t)},i.lerp=function(t,e,i,n,r,s){var a=this._values;this._isQuantized?(F2(a,t,n),F2(a,e,r)):(Bn.fromArray(n,a,4*t),Bn.fromArray(r,a,4*e)),Bn.slerp(s,n,r,i)},e}(m2))||J1,y2=l2("cc.animation.ExoticTrack")((t2=function(){function t(t,e){this.times=e2&&e2(),this.values=i2&&i2(),this.times=t,this.values=e}return t.prototype.toHashString=function(){var t=this.times,e=this.values;return"times: "+p2(t)+"; values: "+e.toHashString()},t}(),e2=ja(t2.prototype,"times",[c2],null),i2=ja(t2.prototype,"values",[c2],null),$1=t2))||$1;function S2(t,e){t.length,t.length;var i=0,n=0,r=Va(t,e);if(r>=0)i=r;else{var s=~r,a=s-1;i=a;var o=t[s],h=t[a];n=(e-h)/(o-h)}return{index:i,ratio:n}}!function(){function t(){this._reset()}var e=t.prototype;e.calculate=function(t,e,i){if(this._reset(),!(e>i)){var n=t.length;if(n){var r=t[0],s=t[n-1],a=0,o=0;if(e<r);else if(e>=s)a=n-1,o=0;else{var h=S2(t,e);a=h.index,o=h.ratio}var u=0,l=0;if(i<r);else if(i>=s)u=n-1,l=0;else{var c=S2(t,i);u=c.index,l=c.ratio}var _=!o,f=!l;a!==u||o!==l?(_||(this.preLerpIndex=a,this.preLerpRatio=o),this.directKeyframesBegin=_?a:a+1,this.directKeyframesEnd=u+1,f||(this.postLerpIndex=u,this.postLerpRatio=l)):_?(this.directKeyframesBegin=a,this.directKeyframesEnd=a+1):(this.preLerpIndex=a,this.preLerpRatio=o)}}},e._reset=function(){this.preLerpIndex=-1,this.preLerpRatio=0,this.directKeyframesBegin=0,this.directKeyframesEnd=0,this.postLerpIndex=-1,this.postLerpRatio=0},n(t,[{key:"keyframesCount",get:function(){var t=this.preLerpIndex,e=this.directKeyframesBegin;return 0+(t<0?0:1)+(this.directKeyframesEnd-e)+(this.postLerpIndex<0?0:1)}}])}();var T2,A2=function(){function t(t,e){this._nodeEvaluations=void 0,this._nodeEvaluations=t.map((function(t){return t.createEvaluator(e)}))}return t.prototype.evaluate=function(t){this._nodeEvaluations.forEach((function(e){e.evaluate(t)}))},t}(),b2=function(){function t(t,e,i,n,r){this._position=null,this._rotation=null,this._scale=null,e&&(this._position=L2(e.times,e.values,gn,t,"position",r)),i&&(this._rotation=L2(i.times,i.values,Bn,t,"rotation",r)),n&&(this._scale=L2(n.times,n.values,gn,t,"scale",r))}return t.prototype.evaluate=function(t){if(this._position){var e=this._position.evaluator.evaluate(t);this._position.runtimeBinding.setValue(e)}if(this._rotation){var i=this._rotation.evaluator.evaluate(t);this._rotation.runtimeBinding.setValue(i)}if(this._scale){var n=this._scale.evaluator.evaluate(t);this._scale.runtimeBinding.setValue(n)}},t}(),E2=function(){function t(t,e,i){this._times=void 0,this._inputSampleResultCache={just:!1,index:-1,nextIndex:-1,ratio:0},this._values=void 0,this._prevValue=void 0,this._nextValue=void 0,this._resultValue=void 0,this._times=t,this._values=e,this._prevValue=new i,this._nextValue=new i,this._resultValue=new i}return t.prototype.evaluate=function(t){var e=this._times,i=this._values,n=this._resultValue;if(0===e.length)return n;var r=function(t,e,i){var n=t.length,r=t[0],s=t[n-1];if(e<r)i.just=!0,i.index=0;else if(e>s)i.just=!0,i.index=n-1;else{var a=Va(t,e);if(a>=0)i.just=!0,i.index=a;else{var o=~a,h=o-1,u=t[h],l=t[o],c=(e-t[h])/(l-u);i.just=!1,i.index=h,i.nextIndex=o,i.ratio=c}}return i}(e,t,this._inputSampleResultCache);return r.just?i.get(r.index,n):i.lerp(r.index,r.nextIndex,r.ratio,this._prevValue,this._nextValue,n),n},t}(),C2=function(){function t(t,e){this._nodeEvaluations=void 0,this._nodeEvaluations=t.map((function(t){return t.createEvaluatorForAnimationGraph(e)})).filter((function(t){return!!t}))}var e=t.prototype;return e.destroy=function(){for(var t=this._nodeEvaluations,e=t.length,i=0;i<e;++i)t[i].destroy()},e.evaluate=function(t,e){for(var i=this._nodeEvaluations,n=i.length,r=0;r<n;++r)i[r].evaluate(t,e)},t}(),x2=function(){function t(t,e,i,n){this._position=null,this._rotation=null,this._scale=null,this._transformHandle=void 0,this._transformHandle=t,e&&(this._position=new E2(e.times,e.values,gn)),i&&(this._rotation=new E2(i.times,i.values,Bn)),n&&(this._scale=new E2(n.times,n.values,gn))}var e=t.prototype;return e.destroy=function(){this._transformHandle.destroy()},e.evaluate=function(t,e){var i=this._transformHandle.index,n=this._position,r=this._rotation,s=this._scale,a=e.transforms;if(n){var o=n.evaluate(t);a.setPosition(i,o)}if(r){var h=r.evaluate(t);a.setRotation(i,h)}if(s){var u=s.evaluate(t);a.setScale(i,u)}},t}(),w2={uint8:Uint8Array,uint16:Uint16Array};function R2(t){switch(t.BYTES_PER_ELEMENT){default:case 4:return T2.FLOAT_32;case 8:return T2.FLOAT_64}}!function(t){t[t.FLOAT_32=0]="FLOAT_32",t[t.FLOAT_64=1]="FLOAT_64"}(T2||(T2={}));var I2,D2,B2,M2,P2=l2("cc.animation.QuantizedFloatArray")((r2=function(){function t(t,e,i,n){void 0===n&&(n=0),this.originalPrecision=s2&&s2(),this.min=a2&&a2(),this.extent=o2&&o2(),this.values=h2&&h2(),this.originalPrecision=t,this.values=e,this.extent=i,this.min=n}return t.prototype.toHashString=function(){var t=this.originalPrecision,e=this.min,i=this.extent,n=this.values;return t+" "+d2(e)+" "+d2(i)+" "+n.join(" ")},n(t,[{key:"quantizationType",get:function(){switch(this.values.BYTES_PER_ELEMENT){default:case 1:return"uint8";case 2:return"uint16"}}}]),t}(),s2=ja(r2.prototype,"originalPrecision",[c2],null),a2=ja(r2.prototype,"min",[c2],null),o2=ja(r2.prototype,"extent",[c2],null),h2=ja(r2.prototype,"values",[c2],null),n2=r2))||n2;function O2(t,e){return t.values[e]/(1<<t.values.BYTES_PER_ELEMENT)*t.extent+t.min}function L2(t,e,i,n,r,s){var a=new pQ;a.path=(new dQ).toHierarchy(n).toProperty(r);var o=s(a);return o?{runtimeBinding:o,evaluator:new E2(t,e,i)}:null}function N2(t,e,i){gn.set(i,O2(t,3*e+0),O2(t,3*e+1),O2(t,3*e+2))}function F2(t,e,i){Bn.set(i,O2(t,4*e+0),O2(t,4*e+1),O2(t,4*e+2),O2(t,4*e+3))}var k2,G2,V2,U2,z2,H2,W2,X2,j2,Y2,q2,K2,Q2,Z2,J2,$2,t3,e3,i3,n3=eo("cc.animation.AuxiliaryCurveEntry")((D2=function(){this.name=B2&&B2(),this.curve=M2&&M2()},B2=ja(D2.prototype,"name",[lo],(function(){return""})),M2=ja(D2.prototype,"curve",[lo],(function(){return new su})),I2=D2))||I2,r3=Symbol("SearchForRootBonePath"),s3=Symbol("ExoticAnimation"),a3=Symbol("[[EmbeddedPlayerCount]]"),o3=Symbol("[[GetEmbeddedPlayers]]"),h3=Symbol("[[AddEmbeddedPlayer]]"),u3=Symbol("[[RemoveEmbeddedPlayer]]"),l3=Symbol("[[ClearEmbeddedPlayers]]"),c3=Symbol("[[Additive Settings]]"),_3=t("as",eo("cc.AnimationClip")(((J2=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).sample=V2&&V2(),e.speed=U2&&U2(),e.wrapMode=z2&&z2(),e.enableTrsBlending=H2&&H2(),e._duration=W2&&W2(),e._hash=X2&&X2(),e.frameRate=0,e._tracks=j2&&j2(),e._exoticAnimation=Y2&&Y2(),e._legacyData=void 0,e._legacyDataDirty=!1,e._events=q2&&q2(),e._embeddedPlayers=K2&&K2(),e._additiveSettings=Q2&&Q2(),e._auxiliaryCurveEntries=Z2&&Z2(),e._runtimeEvents={ratios:[],eventGroups:[]},e}s(e,t),e.createWithSpriteFrames=function(t,i){var n=new e;n.sample=i||n.sample,n.duration=t.length/n.sample;var r=1/n.sample,s=new RZ;return s.path=(new dQ).toComponent("cc.Sprite").toProperty("spriteFrame"),s.channels()[0].curve.assignSorted(t.map((function(t,e){return[r*e,t]}))),n.addTrack(s),n};var i=e.prototype;return i.onLoaded=function(){this.frameRate=this.sample,this.events=this._events},i.range=function(){for(var t={min:1/0,max:-1/0},e=this._tracks,i=e.length,n=0;n<i;++n){var r=e[n].range();t.min=Math.min(t.min,r.min),t.max=Math.max(t.max,r.max)}return t},i.getTrack=function(t){return this._tracks[t]},i.addTrack=function(t){var e=this._tracks.length;return this._tracks.push(t),e},i.removeTrack=function(t){this._tracks.splice(t,1)},i.clearTracks=function(){this._tracks.length=0},i.containsAnyEvent=function(){return 0!==this._events.length},i.createEventEvaluator=function(t){return new b3(t,this._runtimeEvents.ratios,this._runtimeEvents.eventGroups,this.wrapMode)},i.containsAnyEmbeddedPlayer=function(){return 0!==this._embeddedPlayers.length},i.createEmbeddedPlayerEvaluator=function(t){return new p3(this._embeddedPlayers,t)},i.createEvaluator=function(t){var e=this,i=t.target;return this._createEvalWithBinder(i,(function(n){if(!t.mask||!n.isMaskedOff(t.mask)){var r=n.createRuntimeBinding(i,e.enableTrsBlending?t.pose:void 0,!1);return null!=r?r:void 0}}),t.rootMotion)},i.destroy=function(){var e;return null!==(e=S.director.root)&&void 0!==e&&e.dataPoolManager&&S.director.root.dataPoolManager.releaseAnimationClip(this),Bj.destroy(this),t.prototype.destroy.call(this)},i[Dj]=function(t,e,i){for(var n=1/e,r=this._collectAnimatedJoints(),s=r.length,a={},o=0;o<s;++o)a[r[o]]={transforms:Array.from({length:i},(function(){return new Vn}))};var h=r.reduce((function(t,e){return t[e]=new v3,t}),{});for(var u in h){var l=h[u],c=u.lastIndexOf("/");if(c>=0){var _=u.substring(0,c),f=h[_];f&&(l.parent=f)}}for(var d=this._createEvalWithBinder(void 0,(function(t){var e=t.parseTrsPath();if(e){var i=h[e.node];if(i)return A3(i,e.property)}}),void 0),p=0;p<i;++p){var m=t+n*p;d.evaluate(m);for(var g=0;g<s;++g){var v=r[g];Vn.copy(a[v].transforms[p],h[v].globalTransform)}for(var y=0;y<s;++y){var S=r[y];h[S].invalidate()}}return{samples:e,frames:i,joints:a}},i.upgradeUntypedTracks=function(t){for(var e=[],i=[],n=this._tracks,r=n.length,s=0;s<r;++s){var a=n[s];if(a instanceof P1){var o=a.upgrade(t);o&&(e.push(o),i.push(a))}}for(var h=i.length,u=0;u<h;++u)de(n,i[u]);n.push.apply(n,e)},i[r3]=function(){return this._searchForRootBonePath()},i.getPropertyCurves=function(){return this._getLegacyData().getPropertyCurves()},i.updateEventDatas=function(){this.events=this._events},i.hasEvents=function(){return 0!==this.events.length},i.syncLegacyData=function(){this._legacyData&&(this._fromLegacy(this._legacyData),this._legacyData=void 0)},i[o3]=function(){return this._embeddedPlayers},i[h3]=function(t){this._embeddedPlayers.push(t)},i[u3]=function(t){var e=this._embeddedPlayers.indexOf(t);e>=0&&this._embeddedPlayers.splice(e,1)},i[l3]=function(){this._embeddedPlayers.length=0},i.getAuxiliaryCurveNames_experimental=function(){return this._auxiliaryCurveEntries.map((function(t){return t.name}))},i.hasAuxiliaryCurve_experimental=function(t){return!!this._findAuxiliaryCurveEntry(t)},i.addAuxiliaryCurve_experimental=function(t){var e=this._findAuxiliaryCurveEntry(t);return e||((e=new n3).name=t,this._auxiliaryCurveEntries.push(e)),e.curve},i.getAuxiliaryCurve_experimental=function(t){return this._findAuxiliaryCurveEntry(t).curve},i.renameAuxiliaryCurve_experimental=function(t,e){var i=this._findAuxiliaryCurveEntry(t);i&&(i.name=e)},i.removeAuxiliaryCurve_experimental=function(t){me(this._auxiliaryCurveEntries,(function(e){return e.name===t}))},i._trySyncLegacyData=function(){this._legacyDataDirty&&(this._legacyDataDirty=!1,this.syncLegacyData())},i._createEvalWithBinder=function(t,e,i){this._legacyDataDirty&&(this._legacyDataDirty=!1,this.syncLegacyData());var n,r=[];i&&(n=this._createRootMotionEvaluation(t,i,r));for(var s,a=[],o=this._tracks,h=o.length,u=0;u<h;++u){var l=o[u];if(!r.includes(l)&&!Array.from(l.channels()).every((function(t){return 0===t.curve.keyFramesCount}))){var c=e(l[fQ]);if(c){var _=void 0;if(l instanceof P1){if(!c.getValue){it(3930);continue}var f=c.getValue();_=l.createLegacyEval(f)}else _=l[AK]();a.push(new d3(c,_))}}}return this._exoticAnimation&&(s=this._exoticAnimation.createEvaluator(e)),new m3(a,s,n)},i._createRootMotionEvaluation=function(t,e,i){if(t instanceof hg){var n=this._searchForRootBonePath();if(n){var r=t.getChildByPath(n);if(r){for(var s=new g3,a=[],o=this._tracks,h=o.length,u=0;u<h;++u){var l=o[u],c=l[fQ].parseTrsPath();if(c&&c.node===n){i.push(l);var _=A3(s,c.property);if(_){var f=l[AK]();a.push(new d3(_,f))}}}return new S3(r,this._duration,s,a)}tt(3924)}else tt(3923)}else it(3920)},i._searchForRootBonePath=function(){var t=this._tracks.map((function(t){var e=t[fQ].parseTrsPath();if(e){var i=e.node;return{path:i,rank:i.split("/").length}}return{path:"",rank:0}}));t.sort((function(t,e){return t.rank-e.rank}));var e=t.findIndex((function(t){return 0!==t.rank}));if(e<0)return"";for(var i=t.length,n=t[e],r=!0,s=e+1;s<i;++s){var a=t[s];if(a.rank!==n.rank)break;if(a.path!==n.path){r=!1;break}}return r?n.path:""},i._getLegacyData=function(){return this._legacyData||(this._legacyData=this._toLegacy()),this._legacyData},i._toLegacy=function(){var t=new O1(this._duration);return t.keys=[],t.curves=[],t.commonTargets=[],t},i._fromLegacy=function(t){for(var e=t.toTracks(),i=e.length,n=0;n<i;++n)this.addTrack(e[n])},i._collectAnimatedJoints=function(){for(var t=new Set,e=this._tracks,i=e.length,n=0;n<i;++n){var r=e[n][fQ].parseTrsPath();r&&t.add(r.node)}if(this._exoticAnimation)for(var s=this._exoticAnimation.collectAnimatedJoints(),a=s.length,o=0;o<a;++o)t.add(s[o]);return Array.from(t)},i._findAuxiliaryCurveEntry=function(t){return this._auxiliaryCurveEntries.find((function(e){return e.name===t}))},n(e,[{key:"duration",get:function(){return this._duration},set:function(t){this._duration=t}},{key:"tracksCount",get:function(){return this._tracks.length}},{key:"tracks",get:function(){return this._tracks}},{key:"hash",get:function(){var t,e;if(this._hash)return this._hash;var i="Exotic:"+(null!==(t=null===(e=this._exoticAnimation)||void 0===e?void 0:e.toHashString())&&void 0!==t?t:"");return this._hash=zl(i,666)}},{key:"events",get:function(){return this._events},set:function(t){var e=this;this._events=t;for(var i=[],n=[],r=this.events.sort((function(t,e){return t.frame-e.frame})),s=r.length,a=function(){var t=r[o],s=t.frame/e._duration,a=i.findIndex((function(t){return t===s}));a<0&&(a=i.length,i.push(s),n.push({events:[]})),n[a].events.push({functionName:t.func,parameters:t.params})},o=0;o<s;++o)a();this._runtimeEvents={ratios:i,eventGroups:n}}},{key:s3,get:function(){return this._exoticAnimation}},{key:s3,set:function(t){this._exoticAnimation=t}},{key:"isAdditive_experimental",get:function(){return this._additiveSettings.enabled}},{key:c3,get:function(){return this._additiveSettings}},{key:"keys",get:function(){return this._getLegacyData().keys}},{key:"keys",set:function(t){this._legacyDataDirty=!0,this._getLegacyData().keys=t}},{key:"curves",get:function(){return this._legacyDataDirty=!0,this._getLegacyData().curves}},{key:"curves",set:function(t){this._getLegacyData().curves=t}},{key:"commonTargets",get:function(){return this._getLegacyData().commonTargets}},{key:"commonTargets",set:function(t){this._legacyDataDirty=!0,this._getLegacyData().commonTargets=t}},{key:"data",get:function(){return this._getLegacyData().data}},{key:"eventGroups",get:function(){return this._runtimeEvents.eventGroups}},{key:a3,get:function(){return this._embeddedPlayers.length}},{key:"auxiliaryCurveCount_experimental",get:function(){return this._auxiliaryCurveEntries.length}}]),e}(vd)).WrapMode=bK,V2=ja((G2=J2).prototype,"sample",[lo],(function(){return 60})),U2=ja(G2.prototype,"speed",[lo],(function(){return 1})),z2=ja(G2.prototype,"wrapMode",[lo],(function(){return bK.Normal})),H2=ja(G2.prototype,"enableTrsBlending",[lo],(function(){return!1})),W2=ja(G2.prototype,"_duration",[lo],(function(){return 0})),X2=ja(G2.prototype,"_hash",[lo],(function(){return 0})),j2=ja(G2.prototype,"_tracks",[lo],(function(){return[]})),Y2=ja(G2.prototype,"_exoticAnimation",[lo],(function(){return null})),q2=ja(G2.prototype,"_events",[lo],(function(){return[]})),K2=ja(G2.prototype,"_embeddedPlayers",[lo],(function(){return[]})),Q2=ja(G2.prototype,"_additiveSettings",[lo],(function(){return new f3})),Z2=ja(G2.prototype,"_auxiliaryCurveEntries",[lo],(function(){return[]})),k2=G2))||k2),f3=eo("cc.AnimationClipAdditiveSettings")((t3=function(){this.enabled=e3&&e3(),this.refClip=i3&&i3()},e3=ja(t3.prototype,"enabled",[lo],(function(){return!1})),i3=ja(t3.prototype,"refClip",[lo],(function(){return null})),$2=t3))||$2;S.AnimationClip=_3;var d3=function(){function t(t,e){this._binding=void 0,this._trackEval=void 0,this._shouldEvaluateDefault=!0,this._binding=t,this._trackEval=e,this._shouldEvaluateDefault=!!t.getValue&&e.requiresDefault}return t.prototype.evaluate=function(t){var e=this._binding,i=this._trackEval,n=this._shouldEvaluateDefault?e.getValue():void 0,r=i.evaluate(t,n);e.setValue(r)},t}(),p3=function(){function t(t,e){this._embeddedPlayers=t,this._embeddedPlayerEvaluationInfos=t.map((function(t){var i=t.playable;if(!i)return null;var n=i.instantiate(e);return n?{instantiatedPlayer:n,entered:!1,hostPauseTime:0,lastIterations:0}:null}))}var e=t.prototype;return e.destroy=function(){for(var t=this._embeddedPlayerEvaluationInfos,e=t.length,i=0;i<e;++i){var n;null===(n=t[i])||void 0===n||n.instantiatedPlayer.destroy()}this._embeddedPlayerEvaluationInfos.length=0},e.evaluate=function(t,e){for(var i=this._embeddedPlayers,n=this._embeddedPlayerEvaluationInfos,r=i.length,s=0;s<r;++s){var a=n[s];if(a){var o=a.entered,h=a.instantiatedPlayer,u=a.lastIterations,l=i[s],c=l.begin,_=l.end;if(t>=c&&t<=_?o?e!==u&&(h.stop(),h.play(),a.entered=!0):(h.play(),a.entered=!0):o&&(h.stop(),a.entered=!1),a.lastIterations=e,a.entered){var f=t-c;a.instantiatedPlayer.setTime(f)}}}},e.notifyHostSpeedChanged=function(t){for(var e=this._embeddedPlayers,i=this._embeddedPlayerEvaluationInfos,n=e.length,r=0;r<n;++r){var s=i[r];if(s){var a=s.instantiatedPlayer;e[r].reconciledSpeed&&a.setSpeed(t)}}},e.notifyHostPlay=function(t){for(var e=this._embeddedPlayers,i=this._embeddedPlayerEvaluationInfos,n=e.length,r=0;r<n;++r){var s=i[r];if(s){var a=e[r],o=a.begin,h=a.end,u=s.instantiatedPlayer;if(s.entered){var l=s.hostPauseTime;if(u.randomAccess||Ni(l,t,1e-5)){var c=Fi(t,o,h);u.play(),u.setTime(c-o)}else u.stop()}}}},e.notifyHostPause=function(t){for(var e=this._embeddedPlayers,i=this._embeddedPlayerEvaluationInfos,n=e.length,r=0;r<n;++r){var s=i[r];if(s){var a=s.instantiatedPlayer;s.entered&&(a.pause(),s.hostPauseTime=t)}}},e.notifyHostStop=function(){for(var t=this._embeddedPlayers,e=this._embeddedPlayerEvaluationInfos,i=t.length,n=0;n<i;++n){var r=e[n];if(r){var s=r.instantiatedPlayer;r.entered&&(r.entered=!1,s.stop())}}},t}(),m3=function(){function t(t,e,i){this._exoticAnimationEvaluator=void 0,this._trackEvalStatues=[],this._rootMotionEvaluation=void 0,this._trackEvalStatues=t,this._exoticAnimationEvaluator=e,this._rootMotionEvaluation=i}var e=t.prototype;return e.evaluate=function(t){for(var e=this._trackEvalStatues,i=this._exoticAnimationEvaluator,n=e.length,r=0;r<n;++r)e[r].evaluate(t);i&&i.evaluate(t)},e.evaluateRootMotion=function(t,e){var i=this._rootMotionEvaluation;i&&i.evaluate(t,e)},t}(),g3=function(){function t(){this.position=new gn,this.scale=new gn(1,1,1),this.rotation=new Bn,this.eulerAngles=new gn}return t.prototype.getTransform=function(t){Vn.fromRTS(t,this.rotation,this.position,this.scale)},t}(),v3=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).parent=null,e._dirty=!0,e._transform=new Vn,e}return s(e,t),e.prototype.invalidate=function(){this._dirty=!0},n(e,[{key:"globalTransform",get:function(){var t=this._transform;return this._dirty&&(this._dirty=!1,Vn.fromRTS(t,this.rotation,this.position,this.scale),this.parent&&Vn.multiply(t,this.parent.globalTransform,t)),this._transform}}]),e}(g3),y3=new Vn,S3=function(){function t(t,e,i,n){this._initialTransformCache=new Vn,this._clipEndTransformCache=new Vn,this._startTransformCache=new Vn,this._endTransformCache=new Vn,this._motionTransformCache=new Vn,this._translationMotionCache=new gn,this._rotationMotionCache=new Bn,this._scaleMotionCache=new gn,this._rootBone=t,this._duration=e,this._boneTransform=i,this._trackEvalStatuses=n}var e=t.prototype;return e.evaluate=function(t,e){var i=this._calcMotionTransform(t,e,this._motionTransformCache),n=this._translationMotionCache,r=this._rotationMotionCache,s=this._scaleMotionCache,a=this._rootBone;Vn.toRTS(i,r,n,s),gn.add(n,n,a.position),a.setPosition(n),Bn.multiply(r,r,a.rotation),a.setRotation(r),gn.multiply(s,s,a.scale),a.setScale(s)},e._calcMotionTransform=function(t,e,i){var n=this._duration,r=n-t,s=this._evaluateAt(t,this._startTransformCache);if(e<r){var a=this._evaluateAt(t+e,this._endTransformCache);T3(i,s,a)}else{Vn.identity(i);var o=function(t,e){T3(y3,t,e),Vn.multiply(i,i,y3)},h=e-r,u=Math.floor(h/n),l=h-u*n,c=this._evaluateAt(0,this._initialTransformCache),_=this._evaluateAt(n,this._clipEndTransformCache),f=this._evaluateAt(l,this._endTransformCache);o(s,_),T3(y3,c,_);for(var d=0;d<u;++d)Vn.multiply(i,i,y3);o(c,f)}return i},e._evaluateAt=function(t,e){for(var i=this._trackEvalStatuses,n=i.length,r=0;r<n;++r)i[r].evaluate(t);return this._boneTransform.getTransform(e),e},t}();function T3(t,e,i){Vn.invert(t,e),Vn.multiply(t,i,t)}function A3(t,e){switch(e){default:return;case"position":return{setValue:function(e){gn.copy(t.position,e)}};case"rotation":return{setValue:function(e){Bn.copy(t.rotation,e)}};case"scale":return{setValue:function(e){gn.copy(t.scale,e)}};case"eulerAngles":return{setValue:function(e){gn.copy(t.eulerAngles,e)}}}}var b3=function(){function t(t,e,i,n){this._lastFrameIndex=-1,this._lastIterations=0,this._lastDirection=0,this._ignoreIndex=-1,this._sampled=!1,this._targetNode=t,this._ratios=e,this._eventGroups=i,this._wrapMode=n}var e=t.prototype;return e.setWrapMode=function(t){this._wrapMode=t},e.ignore=function(t,e){this._ignoreIndex=-1,this._sampled=!1;var i=C3(t,this._ratios);i<0&&(i=~i-1,e<0&&(i+=1),this._ignoreIndex=i)},e.reset=function(){this._lastFrameIndex=-1,this._lastIterations=0,this._lastDirection=0,this._ignoreIndex=-1,this._sampled=!1},e.sample=function(t,e,i){if(0!==this._eventGroups.length){var n=this._eventGroups.length,r=C3(t,this._ratios);if(r<0&&(r=~r-1,e<0&&(r+=1)),this._ignoreIndex!==r&&(this._ignoreIndex=-1),!this._sampled)return this._sampled=!0,this._doFire(r,!1),this._lastFrameIndex=r,this._lastIterations=i,void(this._lastDirection=e);var s=this._wrapMode,a=E3(i),o=E3(this._lastIterations),h=this._lastFrameIndex,u=this._lastDirection,l=-1!==o&&a!==o;if(h===r&&l&&1===n)this._doFire(0,!1);else if(h!==r||l){e=u;do{if(h!==r){if(-1===e&&0===h&&r>0?((s&hl.PingPong)===hl.PingPong?e*=-1:h=n,o++):1===e&&h===n-1&&r<n-1&&((s&hl.PingPong)===hl.PingPong?e*=-1:h=-1,o++),h===r)break;if(o>a)break}h+=e,this._doFire(h,!0)}while(h!==r&&h>-1&&h<n)}this._lastFrameIndex=r,this._lastIterations=i,this._lastDirection=e}},e._doFire=function(t,e){e?DK().pushDelayEvent(this._checkAndFire,this,[t]):this._checkAndFire(t)},e._checkAndFire=function(t){if(this._targetNode&&this._targetNode.isValid){var e=this._eventGroups;if(!(t<0||t>=e.length||this._ignoreIndex===t))for(var i=e[t],n=i.events.length,r=0;r<n;++r){var s=i.events[r];wJ(this._targetNode,s.functionName,s.parameters)}}},t}();function E3(t){return t-(0|t)==0&&(t-=1),0|t}function C3(t,e){return Va(e,t)}var x3=new gn,w3=new Bn,R3=function(){function t(t){this._transformHandle=t}return t.prototype.destroy=function(){this._transformHandle.destroy()},t}(),I3=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setValue=function(t,e){e.transforms.setPosition(this._transformHandle.index,t)},i.getValue=function(t){return t.transforms.getPosition(this._transformHandle.index,x3)},e}(R3),D3=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setValue=function(t,e){e.transforms.setRotation(this._transformHandle.index,t)},i.getValue=function(t){return t.transforms.getRotation(this._transformHandle.index,w3)},e}(R3),B3=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setValue=function(t,i){var n=Bn.fromEuler(e._EULER_TO_QUAT_CACHE,t.x,t.y,t.z);i.transforms.setRotation(this._transformHandle.index,n)},i.getValue=function(t){var e=t.transforms.getRotation(this._transformHandle.index,w3);return Bn.toEuler(x3,e)},e}(R3);B3._EULER_TO_QUAT_CACHE=new Bn;var M3=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setValue=function(t,e){e.transforms.setScale(this._transformHandle.index,t)},i.getValue=function(t){return t.transforms.getScale(this._transformHandle.index,x3)},e}(R3),P3=function(){function t(t){this._handle=t}var e=t.prototype;return e.destroy=function(){this._handle.destroy()},e.setValue=function(t,e){e.auxiliaryCurves[this._handle.index]=t},e.getValue=function(t){return t.auxiliaryCurves[this._handle.index]},t}(),O3=function(){function t(t){this.binding=t}var e=t.prototype;return e.destroy=function(){},e.setValue=function(t){this.binding.setValue(t)},e.getValue=function(){var t,e,i;return null!==(t=null===(e=(i=this.binding).getValue)||void 0===e?void 0:e.call(i))&&void 0!==t?t:void 0},t}(),L3=function(){function t(t,e){this._binding=void 0,this._trackSampler=void 0,this._binding=t,this._trackSampler=e}var e=t.prototype;return e.destroy=function(){this._binding.destroy()},e.evaluate=function(t,e){var i=this._trackSampler,n=this._binding,r=i.requiresDefault?n.getValue(e):void 0,s=i.evaluate(t,r);n.setValue(s,e)},t}();function N3(t,e,i){var n=function(t,e){var i=e.origin,n=t.path,r=t.proxy,s=n.length,a=s-1;if(0!==s&&(n.isPropertyAt(a)||n.isElementAt(a))&&!r){var o=n.isPropertyAt(a)?n.parsePropertyAt(a):n.parseElementAt(a),h=n[cQ](i,0,s-1);if(null===h)return null;if(h instanceof hg&&mQ(o)){var u=function(){for(var t=[],e=h;e&&e!==i;e=e.parent)t.unshift(e.name);return e===i?t.join("/"):void 0}();if("string"==typeof u){var l=e.bindTransform(u);if(!l)return;return function(t,e){switch(e){case"position":return new I3(t);case"rotation":return new D3(t);case"eulerAngles":return new B3(t);case"scale":return new M3(t)}}(l,o)}}}var c=t.createRuntimeBinding(e.origin,void 0,!1);return c?new O3(c):null}(e[fQ],i);return null!=n?n:void 0}var F3,k3,G3,V3,U3,z3,H3,W3,X3,j3,Y3,q3,K3,Q3,Z3,J3,$3,t5,e5,i5,n5,r5,s5,a5,o5,h5,u5,l5=function(){function t(t,e){this._binding=t,this._curve=e}return t.prototype.evaluate=function(t,e){var i=this._curve,n=this._binding,r=e,s=i.evaluate(t);n.setValue(s,r)},t}(),c5=function(){function t(t,e){this._trackEvaluations=[],this._exoticAnimationEvaluation=void 0,this._auxiliaryCurveEvaluations=[],t._trySyncLegacyData();for(var i,n,r=[],s=[],a=t.tracks,o=t[s3],h=f(a);!(n=h()).done;){var u=n.value;if(!(u instanceof P1||Array.from(u.channels()).every((function(t){return 0===t.curve.keyFramesCount})))){var l=N3(0,u,e);if(l){var c=u[AK](),_=new L3(l,c);r.push(_)}}}o&&(i=o.createEvaluatorForAnimationGraph(e));for(var d=t.getAuxiliaryCurveNames_experimental(),p=d.length,m=0;m<p;++m){var g=d[m],v=t.getAuxiliaryCurve_experimental(g),y=e.bindAuxiliaryCurve(g),S=new P3(y);s.push(new l5(S,v))}this._trackEvaluations=r,this._exoticAnimationEvaluation=i,this._auxiliaryCurveEvaluations=s}var e=t.prototype;return e.destroy=function(){var t;null===(t=this._exoticAnimationEvaluation)||void 0===t||t.destroy();for(var e=this._trackEvaluations,i=e.length,n=0;n<i;++n)e[n].destroy()},e.evaluate=function(t,e){for(var i=this._trackEvaluations,n=this._exoticAnimationEvaluation,r=this._auxiliaryCurveEvaluations,s=e.pushDefaultedPose(),a=i.length,o=0;o<a;++o)i[o].evaluate(t,s);n&&n.evaluate(t,s);for(var h=r.length,u=0;u<h;++u)r[u].evaluate(t,s);return s},t}(),_5=function(){function t(t,e){this._clipEval=void 0,this._refClipEval=void 0,this._clipEval=new c5(t,e);var i=t[c3].refClip;i&&i!==t&&(this._refClipEval=new c5(i,e))}var e=t.prototype;return e.destroy=function(){var t;this._clipEval.destroy(),null===(t=this._refClipEval)||void 0===t||t.destroy()},e.evaluate=function(t,e){var i,n,r,s=this._clipEval.evaluate(t,e);return i=this._refClipEval?this._refClipEval.evaluate(0,e):this._clipEval.evaluate(0,e),r=i,function(t,e){var i=t.length;e.length;for(var n=0;n<i;++n)M$(t,e,n)}((n=s).transforms,r.transforms),function(t,e){t.length,e.length;for(var i=0;i<t.length;++i)t[i]-=e[i]}(n.auxiliaryCurves,r.auxiliaryCurves),e.popPose(),s},t}(),f5=Lo,d5=(F3=eo("cc.animation.ClipMotion"),k3=f5(_3),F3((V3=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).clip=U3&&U3(),e}s(e,t);var i=e.prototype;return i[v1]=function(t,e){return this.clip?new m5(t,this.clip,e):null},i.clone=function(){var t=new e;return t.clip=this.clip,t[Ds]=gJ(this),t},e}(y1),U3=ja(V3.prototype,"clip",[k3,lo],(function(){return null})),G3=V3))||G3),p5=Symbol("EvaluatePort"),m5=function(){function t(t,e,i){var n,r;this._clipEmbeddedPlayerEval=null,this._frameEventEval=null,this._wrapInfo=new RK,this._duration=0,this._ignoreEmbeddedPlayers=void 0,this._originalClip=e,this._ignoreEmbeddedPlayers=i;var s=null!==(n=null===(r=t.clipOverrides)||void 0===r?void 0:r.get(e))&&void 0!==n?n:e;this._setClip(s,t)}var e=t.prototype;return e.createPort=function(){return new g5(this)},e.getClipStatuses=function(t){var e=this,i=!1;return{next:function(){return i?{done:!0,value:void 0}:(i=!0,{done:!1,value:{__DEBUG_ID__:e.__DEBUG__ID__,clip:e._clip,weight:t}})}}},e[p5]=function(t,e){var i,n,r=this._duration,s=this._clip.duration,a=this._clipEval,o=r*t,h=this._clip.wrapMode,u=function(t,e,i,n,r,s){if(0===e)return s.time=0,s.ratio=0,s.direction=1,s.stopped=!!Number.isFinite(n),s.iterations=0,s;var a=!1,o=t>0?t/e:-t/e;if(o>=n){o=n,a=!0;var h=n-(0|n);0===h&&(h=1),t=h*e*(t>0?1:-1)}if(t>e){var u=t%e;t=0===u?e:u}else t<0&&0!=(t%=e)&&(t+=e);var l=!1,c=i&hl.ShouldWrap;c&&(l=function(t,e){var i=!1;return(t&hl.PingPong)===hl.PingPong&&(e-(0|e)==0&&e>0&&(e-=1),1&e&&(i=!i)),(t&hl.Reverse)===hl.Reverse&&(i=!i),i}(i,o));var _=l?-1:1;return r&&(_*=-1),c&&l&&(t=e-t),s.time=t,s.ratio=s.time/e,s.direction=_,s.stopped=a,s.iterations=o,s}(o,r,h,(h&hl.Loop)===hl.Loop?1/0:1,!1,this._wrapInfo),l=u.ratio*s,c=a.evaluate(l,e);return null===(i=this._frameEventEval)||void 0===i||i.sample(u.ratio,u.direction,u.iterations),null===(n=this._clipEmbeddedPlayerEval)||void 0===n||n.evaluate(l,Math.trunc(u.iterations)),c},e.overrideClips=function(t){var e,i=this._originalClip,n=null===(e=t.clipOverrides)||void 0===e?void 0:e.get(i);n&&this._setClip(n,t)},e.reenter=function(){var t;null===(t=this._frameEventEval)||void 0===t||t.reset()},e._setClip=function(t,e){var i;null===(i=this._clipEval)||void 0===i||i.destroy(),this._frameEventEval=null,this._clipEmbeddedPlayerEval&&(this._clipEmbeddedPlayerEval.destroy(),this._clipEmbeddedPlayerEval=null),this._clip=t,this._duration=0===t.speed?0:t.duration/t.speed,this._clipEval=function(t,e){return t.isAdditive_experimental?new _5(t,e):new c5(t,e)}(t,e),this._frameEventEval=t.createEventEvaluator(e.origin),!this._ignoreEmbeddedPlayers&&t.containsAnyEmbeddedPlayer()&&(this._clipEmbeddedPlayerEval=t.createEmbeddedPlayerEvaluator(e.origin))},n(t,[{key:"duration",get:function(){return this._duration}}]),t}(),g5=function(){function t(t){this._eval=void 0,this._eval=t}var e=t.prototype;return e.evaluate=function(t,e){return this._eval[p5](t,e)},e.reenter=function(){this._eval.reenter()},t}(),v5=eo,y5=lo,S5=v5("cc.animation.AnimationBlendItem")((H3=function(){function t(){this.motion=W3&&W3()}var e=t.prototype;return e.clone=function(){var e=new t;return this._copyTo(e),e},e._copyTo=function(t){var e,i;return t.motion=null!==(e=null===(i=this.motion)||void 0===i?void 0:i.clone())&&void 0!==e?e:null,t},t}(),W3=ja(H3.prototype,"motion",[y5],(function(){return null})),z3=H3))||z3,T5=v5("cc.animation.AnimationBlend")((j3=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).name=Y3&&Y3(),e}return s(e,t),e.prototype.copyTo=function(t){t.name=this.name,t[Ds]=gJ(this)},e}(y1),Y3=ja(j3.prototype,"name",[y5],(function(){return""})),X3=j3))||X3,A5=function(){function t(t,e,i,n,r){this._childEvaluators=n.map((function(i){var n,r;return null!==(n=null===(r=i.motion)||void 0===r?void 0:r[v1](t,e))&&void 0!==n?n:null})),this._weights=new Array(this._childEvaluators.length).fill(0),this._inputs=[].concat(r)}var e=t.prototype;return e.createPort=function(){return new b5(this,this._childEvaluators.map((function(t){var e;return null!==(e=null==t?void 0:t.createPort())&&void 0!==e?e:null})))},e.getChildWeight=function(t){return this._weights[t]},e.getChildMotionEval=function(t){return this._childEvaluators[t]},e.getClipStatuses=function(t){var e,i=this._childEvaluators,n=this._weights,r=i.length,s=0;return{next:function(){for(;;){if(e){var a=e.next();if(!a.done)return a}if(s>=r)return{done:!0,value:void 0};var o=i[s];e=null==o?void 0:o.getClipStatuses(t*n[s]),++s}}}},e.__evaluatePort=function(t,e,i){for(var n=this._childEvaluators.length,r=0,s=null,a=0;a<n;++a){var o,h=this._weights[a];if(h){var u=null===(o=t.childPorts[a])||void 0===o?void 0:o.evaluate(e,i);u&&(r+=h,s?(r&&R$(s,u,h/r),i.popPose()):s=u)}}return s||i.pushDefaultedPose()},e.overrideClips=function(t){for(var e=0;e<this._childEvaluators.length;++e){var i;null===(i=this._childEvaluators[e])||void 0===i||i.overrideClips(t)}},e.setInput=function(t,e){this._inputs[e]=t,this.doEval()},e.doEval=function(){this.eval(this._weights,this._inputs)},n(t,[{key:"childCount",get:function(){return this._weights.length}},{key:"duration",get:function(){for(var t=0,e=0;e<this._childEvaluators.length;++e){var i,n;t+=(null!==(i=null===(n=this._childEvaluators[e])||void 0===n?void 0:n.duration)&&void 0!==i?i:0)*this._weights[e]}return t}}]),t}(),b5=function(){function t(t,e){this.childPorts=[],this._host=void 0,this._host=t,this.childPorts=e}var e=t.prototype;return e.evaluate=function(t,e){return this._host.__evaluatePort(this,t,e)},e.reenter=function(){for(var t=this.childPorts,e=t.length,i=0;i<e;++i){var n;null===(n=t[i])||void 0===n||n.reenter()}},t}(),E5=eo,C5=lo,x5=E5("cc.animation.BindableNumber")((K3=function(){function t(t){void 0===t&&(t=0),this.variable=Q3&&Q3(),this.value=Z3&&Z3(),this.value=t}return t.prototype.clone=function(){var e=new t;return e.value=this.value,e.variable=this.variable,e},t}(),Q3=ja(K3.prototype,"variable",[C5],(function(){return""})),Z3=ja(K3.prototype,"value",[C5],(function(){return 0})),q3=K3))||q3,w5=E5("cc.animation.BindableBoolean")(($3=function(){function t(t){void 0===t&&(t=!1),this.variable=t5&&t5(),this.value=e5&&e5(),this.value=t}return t.prototype.clone=function(){var e=new t;return e.value=this.value,e.variable=this.variable,e},t}(),t5=ja($3.prototype,"variable",[C5],(function(){return""})),e5=ja($3.prototype,"value",[C5],(function(){return!1})),J3=$3))||J3;function R5(t,e,i,n,r){var s=e.variable,a=e.value;if(!s)return a;var o=t.getVar(s);if(!I5(o,s))return a;if(o.type!==i)throw new uJ(s,"number");for(var h=arguments.length,u=new Array(h>5?h-5:0),l=5;l<h;l++)u[l-5]=arguments[l];var c=o.bind.apply(o,[n,r].concat(u));return c}function I5(t,e){if(t)return!0;throw new hJ(e)}var D5,B5,M5=eo,P5=lo,O5=M5("cc.animation.AnimationBlend1DItem")((n5=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).threshold=r5&&r5(),e}s(e,t);var i=e.prototype;return i.clone=function(){var t=new e;return this._copyTo(t),t},i._copyTo=function(e){return t.prototype._copyTo.call(this,e),e.threshold=this.threshold,e},e}(S5),r5=ja(n5.prototype,"threshold",[P5],(function(){return 0})),i5=n5))||i5,L5=M5("cc.animation.AnimationBlend1D")(((u5=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._items=o5&&o5(),e.param=h5&&h5(),e}s(e,t);var i=e.prototype;return i.clone=function(){var t=new e;return this.copyTo(t),t._items=this._items.map((function(t){return t.clone()})),t.param=this.param.clone(),t},i[v1]=function(t,e){var i=new N5(t,e,this,this._items,this._items.map((function(t){return t.threshold})),0),n=R5(t,this.param,dZ.FLOAT,i.setInput,i,0);return i.setInput(n,0),i},n(e,[{key:"items",get:function(){return this._items},set:function(t){this._items=Array.from(t).sort((function(t,e){return t.threshold-e.threshold}))}}]),e}(T5)).Item=O5,o5=ja((a5=u5).prototype,"_items",[P5],(function(){return[]})),h5=ja(a5.prototype,"param",[P5],(function(){return new x5})),s5=a5))||s5,N5=function(t){function e(e,i,n,r,s,a){var o;return(o=t.call(this,e,i,n,r,[a])||this)._thresholds=s,o.doEval(),o}return s(e,t),e.prototype.eval=function(t,e){var i=e[0];!function(t,e,i){if(t.fill(0),0===e.length);else if(i<=e[0])t[0]=1;else if(i>=e[e.length-1])t[t.length-1]=1;else{for(var n=0,r=1;r<e.length;++r)if(e[r]>i){n=r;break}var s=e[n-1],a=e[n],o=a-s;t[n-1]=(a-i)/o,t[n]=(i-s)/o}}(t,this._thresholds,i)},e}(A5),F5=(D5=new jn,B5={wA:0,wB:0},function(t,e,i){if(t.length,e.length,0!==e.length)if(1!==e.length)if(jn.strictEquals(i,jn.ZERO)){var n=e.findIndex((function(t){return jn.strictEquals(t,jn.ZERO)}));n>=0?t[n]=1:t.fill(1/e.length)}else{for(var r=-1,s=-1,a=-1,o=Number.NEGATIVE_INFINITY,h=Number.NEGATIVE_INFINITY,u=i.x,l=i.y,c=0;c<e.length;++c){var _=e[c];if(jn.equals(_,jn.ZERO))a=c;else{var f=jn.normalize(D5,_),d=jn.dot(f,i);f.x*l-f.y*u>0?d>=h&&(h=d,r=c):d>=o&&(o=d,s=c)}}var p=0;if(r<0||s<0)p=1;else{var m=(E=e[r],C=e[s],x=i,w=B5,(R=jn.cross(E,C))?(w.wA=jn.cross(x,C)/R,w.wB=jn.cross(x,E)/-R):(w.wA=0,w.wB=0),w),g=m.wA,v=m.wB,y=0,S=0,T=g+v;T>1?(y=g/T,S=v/T):T<0?(y=0,S=0,p=1):(y=g,S=v,p=1-T),t[r]=y,t[s]=S}if(p>0)if(a>=0)t[a]=p;else for(var A=p/t.length,b=0;b<t.length;++b)t[b]+=A}else t[0]=1;var E,C,x,w,R});var k5,G5,V5,U5,z5,H5,W5,X5,j5,Y5,q5=function(t,e,i,n,r){jn.subtract(n,i,t),jn.subtract(r,e,t)},K5=function(){function t(e){for(var i=t._ANGLE_MULTIPLIER,n=e.length,r=this._exampleMagnitudes=new Array(n).fill(0),s=this._exampleDirections=e.map((function(t,e){var i=jn.copy(new jn,t),n=jn.len(i);return r[e]=n,Ni(n,0,1e-5)||jn.multiplyScalar(i,i,1/n),i})),a=this._precomputedVIJs=new Float32Array(3*n*n),o=0;o<n;++o)for(var h=r[o],u=s[o],l=0;l<n;++l)if(o!==l){var c=r[l],_=s[l],f=(h+c)/2,d=3*(n*o+l);a[d+0]=(c-h)/f,a[d+1]=Q5(u,_)*i,a[d+2]=f}this._cacheVIXAngles=new Float32Array(n)}return t.prototype.interpolate=function(e,i){var n=this._exampleDirections,r=this._exampleMagnitudes,s=this._precomputedVIJs,a=this._cacheVIXAngles,o=t._CACHE_INPUT_DIRECTION,h=t._CACHE_VIJ,u=t._CACHE_VIX,l=t._ANGLE_MULTIPLIER,c=n.length;if(e.length,0!==c)if(1!==c){var _=i,f=jn.len(_),d=a;if(jn.equals(_,jn.ZERO))for(var p=0;p<c;++p)d[p]=0;else for(var m=jn.multiplyScalar(o,_,1/f),g=0;g<c;++g){var v=n[g];jn.equals(v,jn.ZERO)?d[g]=0:d[g]=Q5(v,m)*l}for(var y=0,S=0;S<c;++S){for(var T=r[S],A=n[S],b=Number.POSITIVE_INFINITY,E=0;E<c;++E)if(S!==E){var C=n[E],x=3*(c*S+E),w=s[x+0],R=s[x+1],I=s[x+2],D=R,B=d[S];jn.equals(A,jn.ZERO)?D=d[E]:jn.equals(C,jn.ZERO)?D=d[S]:jn.equals(_,jn.ZERO)&&(B=D);var M=jn.set(h,w,D),P=jn.set(u,(f-T)/I,B),O=1-jn.dot(P,M)/jn.lengthSqr(M);if(O<=0){b=0;break}b=Math.min(b,O)}e[S]=b,y+=b}if(y>0)for(var L=0;L<c;++L)e[L]/=y;else for(var N=1/c,F=0;F<c;++F)e[F]=N}else e[0]=1},t}();function Q5(t,e){var i=jn.angle(t,e);return t.x*e.y-t.y*e.x<0?-i:i}K5._CACHE_INPUT_DIRECTION=new jn,K5._CACHE_VIJ=new jn,K5._CACHE_VIX=new jn,K5._ANGLE_MULTIPLIER=1;var Z5,J5=eo,$5=lo;!function(t){t[t.SIMPLE_DIRECTIONAL=0]="SIMPLE_DIRECTIONAL",t[t.FREEFORM_CARTESIAN=1]="FREEFORM_CARTESIAN",t[t.FREEFORM_DIRECTIONAL=2]="FREEFORM_DIRECTIONAL"}(Z5||(Z5={})),we(Z5);var t4,e4,i4,n4,r4,s4,a4=J5("cc.animation.AnimationBlend2DItem")((G5=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).threshold=V5&&V5(),e}s(e,t);var i=e.prototype;return i.clone=function(){var t=new e;return this._copyTo(t),t},i._copyTo=function(e){return t.prototype._copyTo.call(this,e),jn.copy(e.threshold,this.threshold),e},e}(S5),V5=ja(G5.prototype,"threshold",[$5],(function(){return new jn})),k5=G5))||k5,o4=J5("cc.animation.AnimationBlend2D")(((Y5=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._items=H5&&H5(),e.paramX=W5&&W5(),e.paramY=X5&&X5(),e._algorithm=j5&&j5(),e._polarSpaceGBI=void 0,e}s(e,t);var i=e.prototype;return i.__callOnAfterDeserializeRecursive=function(){this._tryReconstructPolarSpaceInterpolator()},i.clone=function(){var t=new e;return this.copyTo(t),t._items=this._items.map((function(t){var e;return null!==(e=null==t?void 0:t.clone())&&void 0!==e?e:null})),t.paramX=this.paramX.clone(),t.paramY=this.paramY.clone(),t.algorithm=this._algorithm,t},i[v1]=function(t,e){var i,n=this.algorithm;switch(n){case Z5.FREEFORM_DIRECTIONAL:this._polarSpaceGBI,i=new u4(t,e,this,this._items,this._polarSpaceGBI,[0,0]);break;default:case Z5.SIMPLE_DIRECTIONAL:case Z5.FREEFORM_CARTESIAN:i=new h4(t,e,this,this._items,this._items.map((function(t){return t.threshold})),n,[0,0])}var r=R5(t,this.paramX,dZ.FLOAT,i.setInput,i,0),s=R5(t,this.paramY,dZ.FLOAT,i.setInput,i,1);return i.setInput(r,0),i.setInput(s,1),i},i._tryReconstructPolarSpaceInterpolator=function(){this._algorithm===Z5.FREEFORM_DIRECTIONAL?this._polarSpaceGBI=new K5(this._items.map((function(t){return t.threshold}))):this._polarSpaceGBI=void 0},n(e,[{key:"algorithm",get:function(){return this._algorithm},set:function(t){t!==this._algorithm&&(this._algorithm=t,this._tryReconstructPolarSpaceInterpolator())}},{key:"items",get:function(){return this._items},set:function(t){this._items=Array.from(t),this._tryReconstructPolarSpaceInterpolator()}}]),e}(T5)).Algorithm=Z5,Y5.Item=a4,H5=ja((z5=Y5).prototype,"_items",[$5],(function(){return[]})),W5=ja(z5.prototype,"paramX",[$5],(function(){return new x5})),X5=ja(z5.prototype,"paramY",[$5],(function(){return new x5})),j5=ja(z5.prototype,"_algorithm",[$5],(function(){return Z5.SIMPLE_DIRECTIONAL})),U5=z5))||U5,h4=function(t){function e(e,i,n,r,s,a,o){var h;return(h=t.call(this,e,i,n,r,o)||this)._thresholds=void 0,h._algorithm=void 0,h._value=new jn,h._thresholds=s,h._algorithm=a,h.doEval(),h}return s(e,t),e.prototype.eval=function(t,e){var i=e[0],n=e[1];switch(jn.set(this._value,i,n),t.fill(0),this._algorithm){case Z5.SIMPLE_DIRECTIONAL:F5(t,this._thresholds,this._value);break;case Z5.FREEFORM_CARTESIAN:!function(t,e,i){!function(t,e,i,n){t.fill(0);for(var r=new jn(0,0),s=new jn(0,0),a=0,o=e.length,h=0;h<o;++h){for(var u=Number.MAX_VALUE,l=!1,c=0;c<o;++c)if(h!==c){n(e[h],e[c],i,r,s);var _=1-jn.dot(r,s)/jn.lengthSqr(s);if(_<0){l=!0;break}u=Math.min(u,_)}l||(t[h]=u,a+=u)}a>0&&t.forEach((function(e,i){return t[i]=e/a}))}(t,e,i,q5)}(t,this._thresholds,this._value)}},e}(A5),u4=function(t){function e(e,i,n,r,s,a){var o;return(o=t.call(this,e,i,n,r,a)||this)._interpolator=void 0,o._value=new jn,o._interpolator=s,o.doEval(),o}return s(e,t),e.prototype.eval=function(t,e){var i=e[0],n=e[1];jn.set(this._value,i,n),t.fill(0),this._interpolator.interpolate(t,this._value)},e}(A5),l4=eo,c4=lo,_4=l4("cc.animation.AnimationBlendDirectItem")((e4=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).weight=i4&&i4(),e}s(e,t);var i=e.prototype;return i.clone=function(){var t=new e;return this._copyTo(t),t},i._copyTo=function(e){return t.prototype._copyTo.call(this,e),e.weight=this.weight,e},e}(S5),i4=ja(e4.prototype,"weight",[c4],(function(){return new x5(0)})),t4=e4))||t4;l4("cc.animation.AnimationBlendDirect")(((s4=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._items=r4&&r4(),e}s(e,t);var i=e.prototype;return i.clone=function(){var t=new e;return this.copyTo(t),t._items=this._items.map((function(t){var e;return null!==(e=null==t?void 0:t.clone())&&void 0!==e?e:null})),t},i[v1]=function(t,e){for(var i=new L4(t,e,this,this._items,new Array(this._items.length).fill(0)),n=0;n<this._items.length;++n){var r=R5(t,this._items[n].weight,dZ.FLOAT,i.setInput,i,n);i.setInput(r,n)}return i},n(e,[{key:"items",get:function(){return this._items},set:function(t){this._items=Array.from(t)}}]),e}(T5)).Item=_4,r4=ja((n4=s4).prototype,"_items",[c4],(function(){return[]})),n4));var f4,d4,p4,m4,g4,v4,y4,S4,T4,A4,b4,E4,C4,x4,w4,R4,I4,D4,B4,M4,P4,O4,L4=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).doEval(),e}return s(e,t),e.prototype.eval=function(t,e){for(var i=t.length,n=0;n<i;++n)t[n]=e[n]},e}(A5),N4=eo("cc.JointMask")((d4=function(){this.path=p4&&p4(),this.enabled=m4&&m4()},p4=ja(d4.prototype,"path",[lo],(function(){return""})),m4=ja(d4.prototype,"enabled",[lo],(function(){return!0})),f4=d4))||f4;g4=eo("cc.animation.AnimationMask"),v4=Lo(N4),g4((y4=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._jointMasks=S4&&S4(),e}s(e,t);var i=e.prototype;return i.addJoint=function(t,e){this.removeJoint(t);var i=new N4;i.path=t,i.enabled=e,this._jointMasks.push(i)},i.removeJoint=function(t){me(this._jointMasks,(function(e){return e.path===t}))},i.clear=function(){this._jointMasks.length=0},i.filterDisabledNodes=function(t){for(var e=this._jointMasks,i=e.length,n=new Set,r=0;r<i;++r){var s=e[r],a=s.path;if(!s.enabled){var o=t.getChildByPath(a);o&&n.add(o)}}return n},i.isExcluded=function(t){var e,i;return!(null===(e=null===(i=this._jointMasks.find((function(e){return e.path===t})))||void 0===i?void 0:i.enabled)||void 0===e||e)},n(e,[{key:"joints",get:function(){return this._jointMasks},set:function(t){this.clear();for(var e,i=f(t);!(e=i()).done;){var n=e.value;this.addJoint(n.path,n.enabled)}}}]),e}(vd),S4=ja(y4.prototype,"_jointMasks",[lo],(function(){return[]})),m(y4.prototype,"joints",[v4],Object.getOwnPropertyDescriptor(y4.prototype,"joints"),y4.prototype),y4));var F4=eo("cc.animation.ClipOverrideEntry")((b4=function(){this.original=E4&&E4(),this.substitution=C4&&C4()},E4=ja(b4.prototype,"original",[lo],(function(){return null})),C4=ja(b4.prototype,"substitution",[lo],(function(){return null})),A4=b4))||A4,k4=(x4=eo("cc.animation.AnimationGraphVariant"),w4=Lo(g1),x4((m((I4=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._graph=D4&&D4(),e._clipOverrides=B4&&B4(),e}return s(e,t),n(e,[{key:"original",get:function(){return this._graph},set:function(t){this._graph=t}},{key:"clipOverrides",get:function(){return this._clipOverrides}}]),e}(VJ)).prototype,"original",[w4],Object.getOwnPropertyDescriptor(I4.prototype,"original"),I4.prototype),D4=ja(I4.prototype,"_graph",[lo],(function(){return null})),B4=ja(I4.prototype,"_clipOverrides",[lo],(function(){return new G4})),R4=I4))||R4),G4=eo("cc.animation.ClipOverrideMap")((T4=Symbol.iterator,P4=function(){function t(){this._entries=O4&&O4()}var e=t.prototype;return e[T4]=function(){return this._entries[Symbol.iterator]()},e.has=function(t){return!!this._entries.find((function(e){return e.original===t}))},e.get=function(t){var e=this._entries.find((function(e){return e.original===t}));return null==e?void 0:e.substitution},e.set=function(t,e){var i=this._entries.find((function(e){return e.original===t}));if(i)i.substitution=e;else{var n=new F4;n.original=t,n.substitution=e,this._entries.push(n)}},e.delete=function(t){me(this._entries,(function(e){return e.original===t}))},e.clear=function(){this._entries.length=0},n(t,[{key:"size",get:function(){return this._entries.length}}]),t}(),O4=ja(P4.prototype,"_entries",[lo],(function(){return[]})),M4=P4))||M4,V4=10,U4=Float64Array.BYTES_PER_ELEMENT*V4,z4=function(){function t(t,e,i){this._data=void 0,this._data=void 0===t?new Float64Array:"number"==typeof t?new Float64Array(V4*t):new Float64Array(t,e,"number"==typeof i?V4*i:void 0)}var e=t.prototype;return e.getTransform=function(t,e){var i=this._data,n=e.position,r=e.rotation,s=e.scale,a=V4*t;return gn.fromArray(n,i,a),Bn.fromArray(r,i,a+3),gn.fromArray(s,i,a+7),e},e.getPosition=function(t,e){var i=this._data,n=V4*t;return gn.fromArray(e,i,n),e},e.getRotation=function(t,e){var i=this._data,n=V4*t;return Bn.fromArray(e,i,n+3),e},e.getScale=function(t,e){var i=this._data,n=V4*t;return gn.fromArray(e,i,n+7),e},e.setTransform=function(t,e){var i=this._data,n=e.position,r=e.rotation,s=e.scale,a=V4*t;gn.toArray(i,n,a),Bn.toArray(i,r,a+3),gn.toArray(i,s,a+7)},e.setPosition=function(t,e){var i=this._data,n=V4*t;gn.toArray(i,e,n)},e.setRotation=function(t,e){var i=this._data,n=V4*t;Bn.toArray(i,e,n+3)},e.setScale=function(t,e){var i=this._data,n=V4*t;gn.toArray(i,e,n+7)},e.copyWithin=function(t,e,i){this._data.copyWithin(t*V4,e*V4,"number"==typeof i?i*V4:void 0)},e.fill=function(t,e,i){var n,r,s=this.length;if(null!==(n=e)&&void 0!==n||(e=0),null!==(r=i)&&void 0!==r||(i=s),!(e>=s)){this.setTransform(e,t);for(var a=e+1;a<i;++a)this.copyWithin(a,e,e+1)}},e.fillZero=function(t,e){this._data.fill(0,"number"==typeof t?t*V4:void 0,"number"==typeof e?e*V4:void 0)},e.set=function(t,e){this._data.set(t._data,"number"==typeof e?e*V4:void 0)},e.slice=function(e,i){var n=this._data.slice("number"==typeof e?e*V4:void 0,"number"==typeof i?i*V4:void 0);return new t(n.buffer,n.byteOffset,n.length/V4)},e.copyRange=function(t,e,i,n){for(var r=V4*n,s=this._data,a=V4*t,o=e._data,h=V4*i,u=0;u<r;++u)s[a+u]=o[h+u]},n(t,[{key:"buffer",get:function(){return this._data.buffer}},{key:"byteLength",get:function(){return this._data.byteLength}},{key:"byteOffset",get:function(){return this._data.byteOffset}},{key:"length",get:function(){return this._data.length/V4}}],[{key:"BYTES_PER_ELEMENT",get:function(){return U4}}]),t}(),H4=Symbol(""),W4=Symbol(""),X4=function(t){this.buffer=void 0,this.useCount=0,this.buffer=new ArrayBuffer(t)},j4=function(){function t(t,e){this._locking=!1,this._pages=[],this._allocatorCount=0,this._manager=t,this._pageSize=e}var e=t.prototype;return e.debugLock=function(){this._locking,this._locking=!0},e.debugUnlock=function(){this._locking,this._locking=!1},e.getPageMemory=function(t){return t>=0&&this._pages.length,this._pages[t].buffer},e.pushPage=function(t){var e=t[H4];this._pages.length,e===this._pages.length&&this._pushNewPage(),this._pages.length;var i=this._pages[e];return++i.useCount,++t[H4],i},e.popPage=function(t){var e=t[H4]-1,i=this._pages[e];i.useCount,--i.useCount,--t[H4],0===i.useCount&&(this._pages.length,this._pages.pop())},e.createAllocator=function(t){var e=new q4(this,t);return++this._allocatorCount,e},e.destroyAllocator=function(t){for(var e=t[H4],i=0;i<e;++i){var n=this._pages[i];n.useCount,--n.useCount}this._allocatorCount,--this._allocatorCount,0===this._allocatorCount&&this._manager[W4](this)},e._pushNewPage=function(){var t=new X4(this._pageSize);this._pages.push(t)},n(t,[{key:"pageSize",get:function(){return this._pageSize}},{key:"debugLocking",get:function(){return this._locking}},{key:"allocatorCount",get:function(){return this._allocatorCount}}]),t}(),Y4=function(t,e){this.buffer=t,this.byteOffset=e},q4=function(){function t(t,e){this[H4]=0,this._slicesPerPage=0,this._slices=[],this._resource=t,this._sliceSize=e;var i=Math.floor(this._resource.pageSize/e);this._slicesPerPage=i}var e=t.prototype;return e.destroy=function(){this._slices.length,this._resource.debugLocking,this._resource.destroyAllocator(this)},e.debugLock=function(){this._resource.debugLock()},e.debugUnlock=function(){this._resource.debugUnlock()},e.push=function(){var t=this._sliceSize,e=this._slices,i=this._slicesPerPage,n=e.length,r=0,s=0;0===t?(0===this[H4]&&this._resource.pushPage(this),this[H4]):(n===i*this[H4]&&(this._resource.pushPage(this),this[H4]),s=(n-(r=n%i))/i,this[H4]);var a=this._resource.getPageMemory(s),o=new Y4(a,t*r);return this._slices.push(o),o},e.pop=function(){var t=this._slices,e=this._slicesPerPage,i=t.length-1;0===this._sliceSize?(this[H4],0===i&&this._resource.popPage(this)):0==i%e&&this._resource.popPage(this),this._slices.pop()},n(t,[{key:"isEmpty",get:function(){return 0===this._slices.length}}]),t}(),K4=function(){function t(t){this._stacks=new Map,this._thresholds=t,t.every((function(t,e,i){return 0===e||t>i[e-1]}))}var e=t.prototype;return e.createAllocator=function(t){var e=t,i=this._selectStackPageSize(e),n=this._stacks.get(i);return n||(n=new j4(this,i),this._stacks.set(i,n)),n.createAllocator(e)},e[W4]=function(t){for(var e,i=f(this._stacks);!(e=i()).done;){var n=e.value,r=n[0];if(n[1]===t){this._stacks.delete(r);break}}},e._selectStackPageSize=function(t){var e=Va(this._thresholds,t),i=t;return e>=0?i=this._thresholds[e]:(e=~e)===this._thresholds.length||(e>=0&&this._thresholds.length,i=this._thresholds[e]),i},n(t,[{key:"isEmpty",get:function(){return 0===this._stacks.size}}]),t}(),Q4=function(){function t(t,e){this._poses=[],this._allocatedCount=0,this._memoryAllocator=void 0,this._transformCount=t,this._auxiliaryCurveCount=e;var i=Z4(t,e,1);this._memoryAllocator=$4.createAllocator(i)}var e=t.prototype;return e.destroy=function(){this._allocatedCount;for(var t=0;t<this._poses.length;++t)this._memoryAllocator.pop();return this._poses.length=0,this._memoryAllocator.destroy()},e.push=function(){0===this._allocatedCount&&this._memoryAllocator.debugLock(),this._allocatedCount===this._poses.length&&(this._allocateNewPose(),this._allocatedCount,this._poses.length);var t=this._poses[this._allocatedCount];return++this._allocatedCount,t},e.pop=function(){this._allocatedCount,--this._allocatedCount,0===this._allocatedCount&&this._memoryAllocator.debugUnlock()},e._allocateNewPose=function(){var t=this._memoryAllocator.push(),e=z4.BYTES_PER_ELEMENT*this._transformCount,i=t.byteOffset,n=new z4(t.buffer,i,this._transformCount),r=new Float64Array(t.buffer,i+e,this._auxiliaryCurveCount),s=x$._create(n,r);this._poses.push(s)},n(t,[{key:"allocatedCount",get:function(){return this._allocatedCount}},{key:"top",get:function(){return this._allocatedCount,this._poses[this._allocatedCount-1]}}]),t}();function Z4(t,e,i){return(z4.BYTES_PER_ELEMENT*t+Float64Array.BYTES_PER_ELEMENT*e)*i}var J4,$4=new K4([Z4(128,10,4)]);!function(t){t[t.WORLD=0]="WORLD",t[t.COMPONENT=1]="COMPONENT",t[t.PARENT=2]="PARENT",t[t.LOCAL=3]="LOCAL"}(J4||(J4={})),we(J4);var t6,e6,i6,n6,r6,s6,a6,o6,h6=Symbol("PoseHeapAllocator"),u6=function(){function t(t,e){this._transformCount=0,this._metaValueCount=0,this._pages=[],this._allocatedCount=0,this._foremostPossibleFreePage=0,this._transformCount=t,this._metaValueCount=e}var e=t.prototype;return e.allocatePose=function(){++this._allocatedCount;for(var t=this._pages,e=t.length,i=this._foremostPossibleFreePage;i<e;++i){var n=t[i],r=n.tryAllocate();if(r)return r[h6].pageIndex=i,0===n.freeCount&&++this._foremostPossibleFreePage,r}var s=this._allocatePoseInNewPage();return this._foremostPossibleFreePage=s[h6].pageIndex,s},e.destroyPose=function(t){var e=this._pages;e.length;var i=t[h6].pageIndex,n=e[i];n.deallocate(t),--this._allocatedCount,i<this._foremostPossibleFreePage&&(n.freeCount,this._foremostPossibleFreePage=i)},e._allocatePoseInNewPage=function(){var t=new f6(this._transformCount,this._metaValueCount,4),e=this._pages.length;this._pages.push(t);var i=t.tryAllocate();return i[h6].pageIndex=e,i},n(t,[{key:"allocatedCount",get:function(){return this._allocatedCount}}]),t}(),l6=function(){function t(){this._id=-1}return n(t,[{key:"pageIndex",get:function(){return this._id>>_6},set:function(t){this._id&=c6,this._id|=t<<_6}},{key:"poseIndex",get:function(){return this._id&c6},set:function(t){this._id&=~c6,this._id|=t}}]),t}(),c6=7,_6=3,f6=function(){function t(t,e,i){this._buffer=void 0,this._idleFlags=15,this._poses=void 0,this._freeCount=0,this._transformCount=t,this._metaValueCount=e,this._capacity=i;var n=(z4.BYTES_PER_ELEMENT*t+Float64Array.BYTES_PER_ELEMENT*e)*i;this._buffer=new ArrayBuffer(n),this._poses=new Array(i).fill(null),this._freeCount=i}var e=t.prototype;return e.tryAllocate=function(){var t,e=this._poses,i=this._idleFlags,n=this._capacity,r=function(t){return 0===t?1/0:Math.log2(t&-t)}(i);if(r>=n)return null;r>=0&&e.length;var s=null!==(t=e[r])&&void 0!==t?t:e[r]=this._createPose(r);return s[h6].poseIndex=r,this._idleFlags&=~(1<<r),this._freeCount,--this._freeCount,s},e.deallocate=function(t){var e=this._poses,i=t[h6].poseIndex;i>=0&&e.length,e[i],this._idleFlags|=1<<i,this._freeCount,this._capacity,++this._freeCount},e._createPose=function(t){var e=z4.BYTES_PER_ELEMENT*this._transformCount,i=(e+Float64Array.BYTES_PER_ELEMENT*this._metaValueCount)*t,n=new z4(this._buffer,i,this._transformCount),r=new Float64Array(this._buffer,i+e,this._metaValueCount),s=x$._create(n,r);return s[h6]=new l6,s},n(t,[{key:"capacity",get:function(){return this._capacity}},{key:"freeCount",get:function(){return this._freeCount}}]),t}();function d6(t,e){if(t.name===e)return t;for(var i=t.children.length,n=0;n<i;++n){var r=d6(t.children[n],e);if(r)return r}return null}var p6,m6=function(){function t(t,e,i,n){var r=this;this._origin=void 0,this._layoutMaintainer=void 0,this._varRegistry=void 0,this._additiveFlagStack=[],this._triggerResetter=function(t){return r._resetTrigger(t)},this._isLayerWideContextPropertiesSet=!1,this._stashView=void 0,this._motionSyncManager=void 0,this._clipOverrides=void 0,this._controller=n,this._origin=t,this._layoutMaintainer=e,this._varRegistry=i,this._additiveFlagStack=[!1]}var e=t.prototype;return e.bindTransform=function(t){var e=this._origin.getChildByPath(t);return e?this._layoutMaintainer.getOrCreateTransformBinding(e):null},e.bindTransformByName=function(t){var e=d6(this._origin,t);return e?this._layoutMaintainer.getOrCreateTransformBinding(e):null},e.getBoneChildren=function(t){var e=d6(this._origin,t);return e?e.children.map((function(t){return t.name})):[]},e.getParentBoneNameByName=function(t){var e,i=d6(this._origin,t);return i?i===this._origin?"":null===(e=i.parent)||void 0===e?void 0:e.name:null},e.bindAuxiliaryCurve=function(t){return this._layoutMaintainer.getOrCreateAuxiliaryCurveBinding(t)},e.getEvaluationTimeAuxiliaryCurveView=function(){return this._layoutMaintainer.auxiliaryCurveRegistry},e.getVar=function(t){return this._varRegistry[t]},e._pushAdditiveFlag=function(t){this._additiveFlagStack.push(t)},e._popAdditiveFlag=function(){this._additiveFlagStack.length,this._additiveFlagStack.pop()},e._integrityCheck=function(){return 1===this._additiveFlagStack.length},e._setLayerWideContextProperties=function(t,e){this._isLayerWideContextPropertiesSet,this._isLayerWideContextPropertiesSet=!0,this._stashView=t,this._motionSyncManager=e},e._unsetLayerWideContextProperties=function(){this._isLayerWideContextPropertiesSet,this._isLayerWideContextPropertiesSet=!1,this._stashView=void 0,this._motionSyncManager=void 0},e._setClipOverrides=function(t){this._clipOverrides=t},e._resetTrigger=function(t){var e=this._varRegistry[t];e&&(e.value=!1)},n(t,[{key:"origin",get:function(){return this._origin}},{key:"controller",get:function(){return this._controller}},{key:"triggerResetter",get:function(){return this._triggerResetter}},{key:"clipOverrides",get:function(){return this._clipOverrides}},{key:"additive",get:function(){var t=this._additiveFlagStack;return t[t.length-1]}},{key:"stashView",get:function(){return this._stashView,this._stashView}},{key:"motionSyncManager",get:function(){return this._motionSyncManager,this._motionSyncManager}}]),t}(),g6=new v$,v6=function(){function t(){this._namedCurves=new Map}var e=t.prototype;return e.names=function(){return this._namedCurves.keys()},e.has=function(t){return this._namedCurves.has(t)},e.get=function(t){var e;return null!==(e=this._namedCurves.get(t))&&void 0!==e?e:0},e.set=function(t,e){this._namedCurves.set(t,e)},t}();!function(t){t[t.TRANSFORM_COUNT=1]="TRANSFORM_COUNT",t[t.TRANSFORM_ORDER=2]="TRANSFORM_ORDER",t[t.AUXILIARY_CURVE_COUNT=4]="AUXILIARY_CURVE_COUNT"}(p6||(p6={}));var y6=(t6=function(){},e6=function(){},i6=function(){},n6=function(){},r6=function(){},s6=function(){},a6=function(){},m((o6=function(){function t(t,e){this._origin=void 0,this._auxiliaryCurveRegistry=void 0,this._auxiliaryCurveRecords=[],this._transformRecords=[],this._parentTable=[],this._bindStarted=!1,this._transformCountBeforeBind=-1,this._auxiliaryCurveCountBeforeBind=-1,this._origin=t,this._auxiliaryCurveRegistry=e}var e=t.prototype;return e.getOrCreateTransformBinding=function(t){for(var e=this._origin,i=!1,n=t;n;n=n.parent)if(n===e){i=!0;break}if(!i)return null;var r=this._getOrCreateTransformBinding(t);if(t!==e)for(var s=t.parent;s!==e;s=s.parent)this._getOrCreateTransformBinding(s);return r},e._getOrCreateTransformBinding=function(t){var e=this._transformRecords,i=e.findIndex((function(e){return e.node===t}));if(i>=0){var n=e[i];return++n.refCount,n.handle}for(var r=0,s=function(t){var i=e.findIndex((function(e){return e.node===t}));if(i>=0)return r=i+1,1},a=t.parent;a&&!s(a);a=a.parent);for(var o=r;o<e.length;++o)++e[o].handle.index;var h=new S6(new P6(this,r),t);return e.splice(r,0,h),h.handle},e.getOrCreateAuxiliaryCurveBinding=function(t){var e=this._auxiliaryCurveRecords,i=e.findIndex((function(e){return e.name===t}));if(i>=0){var n=e[i];return++n.refCount,n.handle}var r=e.length,s=new T6(new O6(this,r),t);return e.push(s),s.handle},e.createEvaluationContext=function(){return this._bindStarted,new M6(this.transformCount,this.auxiliaryCurveCount,this._parentTable.slice(),this._origin)},e.resetPoseStashAllocator=function(t){this._bindStarted,t._reset(this.transformCount,this.auxiliaryCurveCount)},e.createTransformFilter=function(t){for(var e,i=this._origin,n=[],r=f(this._transformRecords);!(e=r()).done;){var s=e.value,a=s.node,o=s.handle,h=u(i,a);if(void 0===h)H(a.getPathInHierarchy()+" is not a child of "+i.getPathInHierarchy());else if(t.isExcluded(h))continue;n.push(o.index)}return n.sort(),new w$(n);function u(t,e){for(var i=[],n=e;n;n=n.parent){if(n===t)return i.join("/");i.unshift(n.name)}}},e.fetchDefaultTransforms=function(t){var e=this._transformRecords.length;t.length;for(var i=0;i<e;++i){var n=this._transformRecords[i].defaultTransform;t.setTransform(i,n)}},e.apply=function(t){var e=t.transforms,i=t.auxiliaryCurves,n=this._transformRecords.length;e.length;for(var r=0;r<n;++r){var s=e.getTransform(r,g6);this._transformRecords[r].node.setRTS(s.rotation,s.position,s.scale)}for(var a=this._auxiliaryCurveRecords.length,o=0;o<a;++o){var h=this._auxiliaryCurveRecords[o].name,u=i[o];this._auxiliaryCurveRegistry.set(h,u)}},e._destroyTransformHandle=function(t){t>=0&&this._transformRecords.length;var e=this._transformRecords[t];e.refCount,--e.refCount},e._destroyAuxiliaryCurveHandle=function(t){t>=0&&this._auxiliaryCurveRecords.length;var e=this._auxiliaryCurveRecords[t];e.refCount,--e.refCount},e.startBind=function(){this._bindStarted=!0,this._transformCountBeforeBind=this._transformRecords.length,this._auxiliaryCurveCountBeforeBind=this._auxiliaryCurveRecords.length},e.endBind=function(){var t=this._transformRecords,e=this._auxiliaryCurveRecords,i=0;if(A6(t),t.length!==this._transformCountBeforeBind){i|=p6.TRANSFORM_COUNT;for(var n=t.length,r=0;r<n;++r)t[r].order=r}else{for(var s=t.length,a=!1,o=0;o<s;++o){var h=t[o];h.order!==o&&(a=!0,h.order=o)}a&&(i|=p6.TRANSFORM_ORDER)}A6(e),e.length!==this._auxiliaryCurveCountBeforeBind&&(i|=p6.AUXILIARY_CURVE_COUNT);var u=this._parentTable,l=this._origin;u.length=t.length;for(var c=function(){var e=t[_].node;if(e===l)return u[_]=-1,1;var i=e.parent;if(i===l){var n=t.findIndex((function(t){return t.node===i}));u[_]=n>=0?n:-1}else{var r=t.findIndex((function(t){return t.node===i}));u[_]=r}},_=0;_<t.length;++_)c();return this._bindStarted=!1,i},n(t,[{key:"transformCount",get:function(){return this._transformRecords.length}},{key:"auxiliaryCurveCount",get:function(){return this._auxiliaryCurveRecords.length}},{key:"auxiliaryCurveRegistry",get:function(t){function e(){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(){return this._auxiliaryCurveRegistry}))}]),t}()).prototype,"getOrCreateTransformBinding",[t6],Object.getOwnPropertyDescriptor(o6.prototype,"getOrCreateTransformBinding"),o6.prototype),m(o6.prototype,"_getOrCreateTransformBinding",[e6],Object.getOwnPropertyDescriptor(o6.prototype,"_getOrCreateTransformBinding"),o6.prototype),m(o6.prototype,"getOrCreateAuxiliaryCurveBinding",[i6],Object.getOwnPropertyDescriptor(o6.prototype,"getOrCreateAuxiliaryCurveBinding"),o6.prototype),m(o6.prototype,"_destroyTransformHandle",[n6],Object.getOwnPropertyDescriptor(o6.prototype,"_destroyTransformHandle"),o6.prototype),m(o6.prototype,"_destroyAuxiliaryCurveHandle",[r6],Object.getOwnPropertyDescriptor(o6.prototype,"_destroyAuxiliaryCurveHandle"),o6.prototype),m(o6.prototype,"startBind",[s6],Object.getOwnPropertyDescriptor(o6.prototype,"startBind"),o6.prototype),m(o6.prototype,"endBind",[a6],Object.getOwnPropertyDescriptor(o6.prototype,"endBind"),o6.prototype),o6),S6=function(t,e){this.order=-1,this.refCount=1,this.handle=void 0,this.node=void 0,this.defaultTransform=void 0,this.handle=t,this.node=e;var i=new v$;i.position=e.position,i.rotation=e.rotation,i.scale=e.scale,this.defaultTransform=i},T6=function(t,e){this.refCount=1,this.handle=void 0,this.name=void 0,this.handle=t,this.name=e};function A6(t){var e=function(t,e){for(var i=t.length,n=0;n<i&&e(t[n]);++n);if(n===i)return i;for(var r=n,s=n+1;s<i;++s){var a=t[s];if(e(a)){var o=a;t[s]=t[r],t[r]=o,++r}}return r}(t,(function(t){return t.refCount,t.refCount>0}));if(t.length,e!==t.length){for(var i=0;i<e;++i)t[i].handle.index=i;t.splice(e,t.length-e)}}var b6,E6,C6,x6,w6,R6=Symbol("[[DefaultTransforms]]"),I6=function(){function t(t){this._layoutMaintainer=t}return t.prototype.createTransformFilter=function(t){return this._layoutMaintainer.createTransformFilter(t)},n(t,[{key:"transformCount",get:function(){return this._layoutMaintainer.transformCount}}]),t}(),D6=new v$,B6=new v$,M6=function(){function t(t,e,i,n){this[R6]=void 0,this._poseAllocator=void 0,this._parentTable=void 0,this._componentNode=void 0,this._cacheComponentToWorldTransform=new v$,this._poseAllocator=new Q4(t,e),this._parentTable=i,this._componentNode=n,this[R6]=new z4(t)}var e=t.prototype;return e.destroy=function(){this._poseAllocator.destroy()},e.pushDefaultedPose=function(){var t=this._poseAllocator.push();return t.transforms.set(this[R6]),t._poseTransformSpace=A$.LOCAL,t.auxiliaryCurves.fill(0),t},e.pushDefaultedPoseInComponentSpace=function(){var t=this.pushDefaultedPose();return this._poseTransformsSpaceLocalToComponent(t),t},e.pushZeroDeltaPose=function(){var t=this._poseAllocator.push();return t.transforms.fill(C$),t._poseTransformSpace=A$.LOCAL,t.auxiliaryCurves.fill(0),t},e.pushDuplicatedPose=function(t){var e=this._poseAllocator.push();return e.transforms.set(t.transforms),e._poseTransformSpace=t._poseTransformSpace,e.auxiliaryCurves.set(t.auxiliaryCurves),e},e.popPose=function(){this._poseAllocator.pop()},e._isStackTopPose_debugging=function(t){return t===this._poseAllocator.top},e._poseTransformsSpaceLocalToComponent=function(t){for(var e=t.transforms,i=e.length,n=0;n<i;++n){var r=this._parentTable[n];if(!(r<0)){var s=e.getTransform(n,D6),a=e.getTransform(r,B6);v$.multiply(s,a,s),e.setTransform(n,s)}}t._poseTransformSpace=A$.COMPONENT},e._poseTransformsSpaceComponentToLocal=function(t){for(var e=t.transforms,i=e.length-1;i>=0;--i){var n=this._parentTable[i];if(!(n<0)){var r=e.getTransform(i,D6),s=e.getTransform(n,B6);v$.calculateRelative(r,r,s),e.setTransform(i,r)}}t._poseTransformSpace=A$.LOCAL},e._convertPoseSpaceTransformToTargetSpace=function(t,e,i,n){var r=i._poseTransformSpace;switch(e){default:break;case J4.WORLD:r===A$.COMPONENT?v$.multiply(t,this._getComponentToWorldTransform(),t):(A$.LOCAL,v$.multiply(t,this._getLocalToWorldTransform(B6,i,n),t));break;case J4.COMPONENT:r===A$.COMPONENT||(A$.LOCAL,v$.multiply(t,this._getLocalToComponentTransform(B6,i,n),t));break;case J4.PARENT:if(r===A$.COMPONENT){var s=this._parentTable[n];if(s>=0){var a=i.transforms.getTransform(s,B6),o=v$.invert(a,a);v$.multiply(t,o,t)}}else A$.LOCAL;break;case J4.LOCAL:r===A$.COMPONENT||A$.LOCAL;var h=i.transforms.getTransform(n,B6),u=v$.invert(h,h);v$.multiply(t,u,t)}return t},e._convertTransformToPoseTransformSpace=function(t,e,i,n){var r=i._poseTransformSpace;switch(e){default:break;case J4.WORLD:if(r===A$.COMPONENT){var s=v$.invert(B6,this._getComponentToWorldTransform());v$.multiply(t,s,t)}else{A$.LOCAL;var a=this._getLocalToWorldTransform(B6,i,n),o=v$.invert(a,a);v$.multiply(t,o,t)}break;case J4.COMPONENT:if(r===A$.COMPONENT);else{A$.LOCAL;var h=this._getLocalToComponentTransform(B6,i,n),u=v$.invert(h,h);v$.multiply(t,u,t)}break;case J4.PARENT:if(r===A$.COMPONENT){var l=this._parentTable[n];if(l>=0){var c=i.transforms.getTransform(l,B6);v$.multiply(t,c,t)}}break;case J4.LOCAL:r===A$.COMPONENT||A$.LOCAL;var _=i.transforms.getTransform(n,B6);v$.multiply(t,_,t)}return t},e._getComponentToWorldTransform=function(){var t=this._cacheComponentToWorldTransform,e=this._componentNode;return t.position=e.worldPosition,t.rotation=e.worldRotation,t.scale=e.worldScale,t},e._getLocalToComponentTransform=function(t,e,i){var n=this._parentTable;v$.setIdentity(t);for(var r=n[i];r>=0;r=n[r]){var s=e.transforms.getTransform(r,D6);v$.multiply(t,s,t)}return t},e._getLocalToWorldTransform=function(t,e,i){return this._getLocalToComponentTransform(t,e,i),v$.multiply(t,this._getComponentToWorldTransform(),t),t},n(t,[{key:"allocatedPoseCount",get:function(){return this._poseAllocator.allocatedCount}},{key:"parentTable",get:function(){return this._parentTable}},{key:"_stackSize_debugging",get:function(){return this._poseAllocator.allocatedCount}}]),t}(),P6=function(){function t(t,e){this.index=-1,this._host=void 0,this._host=t,this.index=e}return t.prototype.destroy=function(){this._host._destroyTransformHandle(this.index)},t}(),O6=function(){function t(t,e){this.index=-1,this._host=void 0,this._host=t,this.index=e}return t.prototype.destroy=function(){this._host._destroyAuxiliaryCurveHandle(this.index)},t}(),L6=function(){function t(){this._context={deltaTime:0,indicativeWeight:0}}var e=t.prototype;return e.generate=function(t,e){return this._context.deltaTime=t,this._context.indicativeWeight=e,this._context},e.forkSubWeight=function(t,e){this._context.deltaTime=t.deltaTime,this._context.indicativeWeight=t.indicativeWeight*e},t}(),N6=function(){function t(){this._allocator=null}var e=t.prototype;return e._reset=function(t,e){this._allocator=new u6(t,e)},e.allocatePose=function(){return this._allocator,this._allocator.allocatePose()},e.destroyPose=function(t){return this._allocator,this._allocator.destroyPose(t)},n(t,[{key:"allocatedPoseCount",get:function(){return this._allocator,this._allocator.allocatedCount}}]),t}(),F6=eo,k6=lo;!function(t){t[t.TRUTHY=0]="TRUTHY",t[t.FALSY=1]="FALSY"}(w6||(w6={})),F6("cc.animation.UnaryCondition")(((x6=function(){function t(){this.operator=E6&&E6(),this.operand=C6&&C6()}var e=t.prototype;return e.clone=function(){var e=new t;return e.operator=this.operator,e.operand=this.operand.clone(),e},e[v1]=function(t){var e=this.operator,i=this.operand,n=new V6(e,!1),r=R5(t,i,dZ.BOOLEAN,n.setOperand,n);return n.reset(r),n},t}()).Operator=w6,E6=ja((b6=x6).prototype,"operator",[k6],(function(){return w6.TRUTHY})),C6=ja(b6.prototype,"operand",[k6],(function(){return new w5})),b6));var G6,V6=function(){function t(t,e){this._operator=t,this._operand=e,this._eval()}var e=t.prototype;return e.reset=function(t){this.setOperand(t)},e.setOperand=function(t){this._operand=t,this._eval()},e.eval=function(){return this._result},e._eval=function(){var t=this._operand;switch(this._operator){default:case w6.TRUTHY:this._result=!!t;break;case w6.FALSY:this._result=!t}},t}();!function(t){t[t.FLOAT=0]="FLOAT",t[t.INTEGER=3]="INTEGER"}(G6||(G6={}));var U6,z6=function(){},H6=function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return function(){}};!function(t){t[t.MOTION=1]="MOTION",t[t.POSE=2]="POSE",t[t.EMPTY=4]="EMPTY",t[t.WEIGHTED=7]="WEIGHTED"}(U6||(U6={}));var W6,X6,j6,Y6,q6,K6,Q6,Z6=lo,J6=eo("cc.animation.TCVariableBinding")(W6=H6(G6.FLOAT,G6.INTEGER)((X6=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).type=j6&&j6(),e.variableName=Y6&&Y6(),e}s(e,t);var i=e.prototype;return i.getValueType=function(){return this.type},i.bind=function(t){var e=t.getVar(this.variableName);if(e)return new $6(e)},e}(z6),j6=ja(X6.prototype,"type",[Z6,_o],(function(){return G6.FLOAT})),Y6=ja(X6.prototype,"variableName",[Z6],(function(){return""})),W6=X6))||W6)||W6,$6=function(){function t(t){this._varInstance=t}return t.prototype.evaluate=function(){return this._varInstance.value},t}(),t8=lo;eo("cc.animation.TCAuxiliaryCurveBinding")(q6=H6(G6.FLOAT)((K6=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).curveName=Q6&&Q6(),e}s(e,t);var i=e.prototype;return i.getValueType=function(){return G6.FLOAT},i.bind=function(t){var e=t.getEvaluationTimeAuxiliaryCurveView();return new r8(e,this.curveName)},e}(z6),Q6=ja(K6.prototype,"curveName",[t8],(function(){return""})),q6=K6))||q6);var e8,i8,n8,r8=function(){function t(t,e){this._view=t,this._curveName=e}return t.prototype.evaluate=function(){return this._view.get(this._curveName)},t}();e8=eo("cc.animation.TCStateWeightBinding"),i8=H6(G6.FLOAT),U6.WEIGHTED,e8(n8=i8(n8=void(n8=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.getValueType=function(){return G6.FLOAT},i.bind=function(){return new h8},e}(z6))||n8)||n8);var s8,a8,o8,h8=function(){function t(){}return t.prototype.evaluate=function(t){return t.sourceStateWeight},t}();s8=eo("cc.animation.TCStateMotionTimeBinding"),a8=H6(G6.FLOAT),U6.POSE,s8(o8=a8(o8=void(o8=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.getValueType=function(){return G6.FLOAT},i.bind=function(){return new m8},e}(z6))||o8)||o8);var u8,l8,c8,_8,f8,d8,p8,m8=function(){function t(){}return t.prototype.evaluate=function(t){return t.sourceStateMotionTimeNormalized},t}(),g8=eo,v8=lo;!function(t){t[t.EQUAL_TO=0]="EQUAL_TO",t[t.NOT_EQUAL_TO=1]="NOT_EQUAL_TO",t[t.LESS_THAN=2]="LESS_THAN",t[t.LESS_THAN_OR_EQUAL_TO=3]="LESS_THAN_OR_EQUAL_TO",t[t.GREATER_THAN=4]="GREATER_THAN",t[t.GREATER_THAN_OR_EQUAL_TO=5]="GREATER_THAN_OR_EQUAL_TO"}(p8||(p8={})),g8("cc.animation.BinaryCondition")(((d8=function(){function t(){this.operator=l8&&l8(),this.lhs=c8&&c8(),this.lhsBinding=_8&&_8(),this.rhs=f8&&f8()}var e=t.prototype;return e.clone=function(){var e=new t;return e.operator=this.operator,e.lhs=this.lhs,e.lhsBinding=fJ(this.lhsBinding),e.rhs=this.rhs,e},e[v1]=function(t){var e,i=null===(e=this.lhsBinding)||void 0===e?void 0:e.bind(t);return new G8(this.operator,this.lhs,this.rhs,i)},t}()).Operator=p8,l8=ja((u8=d8).prototype,"operator",[v8],(function(){return p8.EQUAL_TO})),c8=ja(u8.prototype,"lhs",[v8],(function(){return 0})),_8=ja(u8.prototype,"lhsBinding",[v8],(function(){return new J6})),f8=ja(u8.prototype,"rhs",[v8],(function(){return 0})),u8));var y8,S8,T8,A8,b8,E8,C8,x8,w8,R8,I8,D8,B8,M8,P8,O8,L8,N8,F8,k8,G8=function(){function t(t,e,i,n){this._operator=t,this._lhsBindingEvaluation=n,this._lhsValue=e,this._rhsValue=i}return t.prototype.eval=function(t){var e,i,n=null!==(e=null===(i=this._lhsBindingEvaluation)||void 0===i?void 0:i.evaluate(t))&&void 0!==e?e:this._lhsValue,r=this._rhsValue;switch(this._operator){default:case p8.EQUAL_TO:return n===r;case p8.NOT_EQUAL_TO:return n!==r;case p8.LESS_THAN:return n<r;case p8.LESS_THAN_OR_EQUAL_TO:return n<=r;case p8.GREATER_THAN:return n>r;case p8.GREATER_THAN_OR_EQUAL_TO:return n>=r}},t}(),V8=lo,U8=eo("cc.animation.TriggerCondition")((S8=function(){function t(){this.trigger=T8&&T8()}var e=t.prototype;return e.clone=function(){var e=new t;return e.trigger=this.trigger,e},e[v1]=function(t){var e=new z8(!1),i=t.getVar(this.trigger);return I5(i,this.trigger)&&(function(t,e){if(t!==dZ.TRIGGER)throw new uJ(e,"trigger")}(i.type,this.trigger),e.setTrigger(i.bind(e.setTrigger,e))),e},t}(),T8=ja(S8.prototype,"trigger",[V8],(function(){return""})),y8=S8))||y8,z8=function(){function t(t){this._triggered=!1,this._triggered=t}var e=t.prototype;return e.setTrigger=function(t){this._triggered=t},e.eval=function(){return this._triggered},t}(),H8=eo("cc.animation.StateMachineComponent")(A8=function(){function t(){}var e=t.prototype;return e.onMotionStateEnter=function(){},e.onMotionStateExit=function(){},e.onMotionStateUpdate=function(){},e.onStateMachineEnter=function(){},e.onStateMachineExit=function(){},t}())||A8,W8=eo("cc.animation.MotionSyncInfo")((E8=function(){this.group=C8&&C8()},C8=ja(E8.prototype,"group",[lo],(function(){return""})),b8=E8))||b8,X8=1e-5,j8=(x8=eo("cc.animation.PoseNodePlayMotion"),"i18n:ENGINE.animation_graph.pose_graph_node_sub_categories.pose_nodes/",w8=s$((function(t){t.category="i18n:ENGINE.animation_graph.pose_graph_node_sub_categories.pose_nodes/"})),R8=function(t){return s$((function(e){e.factory=t}))}((k8=function(t){var e=new j8;return e.motion=t,e},{listEntries:function(){return[{arg:{type:"clip-motion"},menu:"i18n:ENGINE.animation_graph.pose_graph_node_sub_menus.play_or_sample_clip_motion"},{arg:{type:"animation-blend-1d"},menu:"i18n:ENGINE.animation_graph.pose_graph_node_sub_menus.play_or_sample_animation_blend_1d"},{arg:{type:"animation-blend-2d"},menu:"i18n:ENGINE.animation_graph.pose_graph_node_sub_menus.play_or_sample_animation_blend_2d"}]},create:function(t){var e=null;switch(t.type){case"clip-motion":e=new d5;break;case"animation-blend-1d":e=new L5;break;case"animation-blend-2d":e=new o4}return k8(e)}})),I8=a$({themeColor:"#227F9B"}),D8=X$({type:$J.FLOAT}),B8=X$({type:$J.FLOAT}),x8(M8=w8(M8=R8(M8=I8((P8=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).motion=O8&&O8(),e.syncInfo=L8&&L8(),p(e,"startTime",N8,c(e)),p(e,"speedMultiplier",F8,c(e)),e._workspace=null,e._runtimeSyncRecord=void 0,e}s(e,t);var i=e.prototype;return i.bind=function(t){var e=this.motion;if(e){var i=e[v1](t,!1);i&&(this._workspace=new Y8(i,i.createPort()),this.syncInfo.group&&(this._runtimeSyncRecord=t.motionSyncManager.register(this.syncInfo)))}},i.settle=function(){},i.reenter=function(){if(this._workspace){var t=this._runtimeSyncRecord,e=this._workspace.motionEval.duration;this._forceEvaluateEvaluation();var i=e<X8?0:ki(this.startTime/e);t?t.notifyRenter(i):this._workspace.normalizedTime=i,this._workspace.lastIndicativeWeight=0}},i.doUpdate=function(t){if(this._workspace){var e=t.deltaTime,i=this._runtimeSyncRecord,n=this._workspace.motionEval.duration,r=0;n>X8&&(r=e*this.speedMultiplier/n),i?i.notifyUpdate(r,t.indicativeWeight):this._workspace.normalizedTime+=r,this._workspace.lastIndicativeWeight=t.indicativeWeight}},i.doEvaluate=function(t){if(this._workspace){var e=this._runtimeSyncRecord?this._runtimeSyncRecord.getSyncedEnterTime():this._workspace.normalizedTime;return this._workspace.motionEvalPort.evaluate(e,t)}return t.pushDefaultedPose()},n(e,[{key:"lastIndicativeWeight",get:function(){var t,e;return null!==(t=null===(e=this._workspace)||void 0===e?void 0:e.lastIndicativeWeight)&&void 0!==t?t:0}},{key:"elapsedMotionTime",get:function(){var t,e;return null!==(t=null===(e=this._workspace)||void 0===e?void 0:e.normalizedTime)&&void 0!==t?t:0}}]),e}(H$),O8=ja(P8.prototype,"motion",[lo],(function(){return new d5})),L8=ja(P8.prototype,"syncInfo",[lo],(function(){return new W8})),N8=m(P8.prototype,"startTime",[lo,D8],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 0}}),F8=m(P8.prototype,"speedMultiplier",[lo,B8],{configurable:!0,enumerable:!0,writable:!0,initializer:function(){return 1}}),M8=P8))||M8)||M8)||M8)||M8),Y8=function(t,e){this.normalizedTime=0,this.lastIndicativeWeight=0,this.motionEval=t,this.motionEvalPort=e};function q8(t){return t instanceof H$||t instanceof W$}var K8=function(){function t(t,e){this._rootPoseNode=t,this._countingPlayMotionNodes=e}var e=t.prototype;return e.bind=function(t){var e;null===(e=this._rootPoseNode)||void 0===e||e.bind(t)},e.settle=function(t){var e;null===(e=this._rootPoseNode)||void 0===e||e.settle(t)},e.reenter=function(){var t;null===(t=this._rootPoseNode)||void 0===t||t.reenter()},e.update=function(t){var e;null===(e=this._rootPoseNode)||void 0===e||e.update(t)},e.evaluate=function(t){var e,i;return null!==(e=null===(i=this._rootPoseNode)||void 0===i?void 0:i.evaluate(t,L$.LOCAL))&&void 0!==e?e:null},e.countMotionTime=function(){var t=this._countingPlayMotionNodes;if(!t)return 0;for(var e=0,i=Number.NEGATIVE_INFINITY,n=0;n<t.length;++n){var r=t[n],s=r.elapsedMotionTime,a=r.lastIndicativeWeight;a>i&&(i=a,e=s)}return e},t}();function Q8(t,e,i){void 0===i&&(i=!1);var n=t.outputNode,r=t.getShell(n).getBindings();if(r.length,0===r.length)return new K8(void 0,i?[]:void 0);var s=r[0];s.outputIndex,s.producer;var a=new Map,o=Z8(t,s.producer,a,e);return new K8(o,i?Array.from(a.values()).filter((function(t){return t instanceof j8})):void 0)}function Z8(t,e,i,n){var r=t.getShell(e),s=i.get(e);if(s)return s;var a=fJ(e);"__callOnAfterDeserializeRecursive"in a&&a.__callOnAfterDeserializeRecursive(),a instanceof W$&&a.link(n);for(var o,h=a,u=[],l=f(r.getBindings());!(o=l()).done;){var c=o.value,_=c.producer,d=c.outputIndex,p=c.inputPath;if(q8(_)){var m=Z8(t,_,i,n);if(m instanceof H$)t7(h,p,m,d);else{var g=r7(h,p,m,d);g&&u.push(g)}}else z("There's a input bound to a node with unrecognized type.")}var v,y=new J8(u);return h instanceof H$?(h._setDependencyEvaluation(y),v=h):v=new $8(h,y),i.set(e,v),v}var J8=function(){function t(t){this._bindingEvaluations=void 0,this._bindingEvaluations=t}return t.prototype.evaluate=function(){for(var t,e=f(this._bindingEvaluations);!(t=e()).done;)t.value.evaluate()},t}(),$8=function(){function t(t,e){this._outputs=void 0,this._node=t,this._dependency=e,this._outputs=new Array(t.outputCount)}var e=t.prototype;return e.getDefaultOutput=function(){return this.getOutput(0)},e.getOutput=function(t){return this._outputs[t]},e.evaluate=function(){var t=this._node;this._dependency.evaluate(),t.selfEvaluate(this._outputs)},n(t,[{key:"node",get:function(){return this._node}},{key:"outputCount",get:function(){return this._outputs.length}}]),t}();function t7(t,e,i,n){var r=e[0],s=e[1],a=void 0===s?-1:s;if(r in t)if(0===n){var o=t[r];if(a<0)return null!==o?void z("Invalid binding: consumer node's input "+r+" should be leaved as evaluation before evaluation."):void(t[r]=i);Array.isArray(o)?a>=o.length?z("Invalid binding: consumer node's input "+r+" have length "+o.length+" but the binding specified "+a):null===o[a]?o[a]=i:z("Invalid binding: consumer node's input "+r+"["+a+"] should be leaved as null before evaluation"):z("Invalid binding: consumer node's input "+r+" should be an array.")}else z("Node "+i.toString()+" does not have specified output "+n+".");else z("Invalid binding: consumer node has no property "+r)}var e7,i7=function(){function t(t,e,i,n){this._consumerNode=t,this._consumerPropertyKey=e,this._producerRecord=i,this._producerOutputIndex=n}return t.prototype.evaluate=function(){this._producerRecord.evaluate(),this._consumerNode[this._consumerPropertyKey]=this._producerRecord.getOutput(this._producerOutputIndex)},t}(),n7=function(){function t(t,e,i,n,r){this._consumerNode=t,this._consumerPropertyKey=e,this._consumerElementIndex=i,this._producerRecord=n,this._producerOutputIndex=r}return t.prototype.evaluate=function(){this._producerRecord.evaluate(),this._consumerNode[this._consumerPropertyKey][this._consumerElementIndex]=this._producerRecord.getOutput(this._producerOutputIndex)},t}();function r7(t,e,i,n){var r=e[0],s=e[1],a=void 0===s?-1:s;if(r in t){var o=t[r];if(a<0)return new i7(t,r,i,n);if(Array.isArray(o)){if(!(a>=o.length))return new n7(t,r,a,i,n);z("Invalid binding: consumer node's input "+r+" have length "+o.length+" but the binding specified "+a)}else z("Invalid binding: consumer node's input "+r+" should be an array.")}else z("Invalid binding: consumer node has no property "+r)}var s7=function(){function t(t,e,i){this.passthroughWeight=1,this._motionStates=[],this._proceduralPoseStates=[],this._topLevelEntry=void 0,this._topLevelExit=void 0,this._currentNode=void 0,this._pendingTransitionPath=[],this._activatedTransitions=[],this._activatedTransitionPool=A7.createPool(4),this._updateContextGenerator=new L6,this._conditionEvaluationContext=new T7,this._additive=!1,this._additive=i.additive,this.name=e,this._controller=i.controller;var n=this._addStateMachine(t,null,i,e),r=n.entry,s=n.exit;this._topLevelEntry=r,this._topLevelExit=s,this._currentNode=r,r.increaseActiveReference(),this._resetTrigger=i.triggerResetter}var e=t.prototype;return e.settle=function(t){for(var e=this._proceduralPoseStates,i=e.length,n=0;n<i;++n)e[n].settle(t)},e.reenter=function(){for(var t,e=f(this._activatedTransitions);!(t=e()).done;){var i=t.value;i.destination.decreaseActiveReference(),this._activatedTransitionPool.free(i)}this._activatedTransitions.length=0,this._topLevelEntry.increaseActiveReference(),this._currentNode.decreaseActiveReference(),this._currentNode=this._topLevelEntry},e.update=function(t){this.exited,this._loopMatchTransitions(),this._resetStateTickFlagsAndWeights(),this._updateActivatedTransitions(t.deltaTime),this._commitStateUpdates(t)},e.evaluate=function(t){return this._sample(t)||this._pushNullishPose(t)},e.getCurrentStateStatus=function(){var t=this._currentNode;return t.kind===o7.animation||t.kind===o7.procedural?t.getStatus():null},e.getCurrentClipStatuses=function(){var t=this._currentNode;return t.kind===o7.animation?t.getClipStatuses(t.absoluteWeight):u7},e.getCurrentTransition=function(t){var e=this._activatedTransitions;if(0===e.length)return!1;var i=e[e.length-1],n=1===e.length?this._currentNode:e[e.length-2].destination,r=i.getAbsoluteDuration(n);return t.duration=r,t.time=i.normalizedElapsedTime*r,!0},e.getNextStateStatus=function(){var t=this._activatedTransitions;if(0===t.length)return null;var e=t[t.length-1].destination;switch(e.kind){default:break;case o7.procedural:case o7.animation:return e.getStatus()}return null},e.getNextClipStatuses=function(){var t,e=this._activatedTransitions;if(0===e.length)return u7;var i=e[e.length-1],n=i.destination;switch(n.kind){default:return u7;case o7.animation:return null!==(t=n.getClipStatuses(i.destination.absoluteWeight))&&void 0!==t?t:u7}},e.overrideClips=function(t){for(var e=this._motionStates,i=e.length,n=0;n<i;++n)e[n].overrideClips(t)},e._addStateMachine=function(t,e,i,n){for(var r,s,a,o=this,h=Array.from(t.states()),u=h.map((function(e){if(e instanceof kJ){var n=new d7(e,i);return o._motionStates.push(n),n}if(e===t.entryState)return r=new v7(e,o7.entry,e.name);if(e===t.exitState)return a=new v7(e,o7.exit,e.name);if(e===t.anyState)return s=new v7(e,o7.any,e.name);if(e instanceof a1)return new y7(e);if(e instanceof u1){var h=new S7(e,i);return o._proceduralPoseStates.push(h),h}return null})),l={components:null,parent:e,entry:r,exit:a,any:s},c=0;c<h.length;++c){var _=u[c];_&&(_.stateMachine=l)}for(var d=h.map((function(t){if(t instanceof f1){var e=o._addStateMachine(t.stateMachine,l,i,n+"/"+t.name);return e.components=new f7(t),e}return null})),p=0;p<h.length;++p){var m=h[p],g=t.getOutgoings(m),v=void 0;if(m instanceof f1){var y=d[p];v=y.exit}else{var S=u[p];v=S}for(var T,A=function(){var t,e=T.value,n=e.to,r=h.findIndex((function(t){return t===e.to}));if(n instanceof f1)t=d[r].entry;else{var s=u[r];t=s instanceof d7?s.entry:s}var a={conditions:e.conditions.map((function(t){return t[v1](i)})),to:t,triggers:void 0,duration:0,normalizedDuration:!1,destinationStart:0,relativeDestinationStart:!1,exitCondition:0,exitConditionEnabled:!1,activated:!1,startEventBinding:void 0,endEventBinding:void 0};(r1(e)||e instanceof o1||e instanceof c1)&&(a.duration=e.duration,a.destinationStart=e.destinationStart,a.relativeDestinationStart=e.relativeDestinationStart,e.startEventBinding.isBound&&(a.startEventBinding=e.startEventBinding),e.endEventBinding.isBound&&(a.endEventBinding=e.endEventBinding),r1(e)&&(a.normalizedDuration=e.relativeDuration,a.exitConditionEnabled=e.exitConditionEnabled,a.exitCondition=e.exitCondition)),a.conditions.forEach((function(t,i){var n,r=e.conditions[i];r instanceof U8&&r.trigger&&(null!==(n=a.triggers)&&void 0!==n?n:a.triggers=[]).push(r.trigger)})),v.addTransition(a)},b=f(g);!(T=b()).done;)A()}return l},e._loopMatchTransitions=function(){var t=this._pendingTransitionPath,e=this._activatedTransitions;t.length;for(var i=0===e.length?this._currentNode:e[e.length-1].destination,n=0;;++n){if(n>=16){tt(14e3,16,"");break}var r=this._matchNextTransition(i);if(!r)break;var s=r.to,a=i;if(i=s,a7(s)){if(s===a)break;this._activateTransition(t,r),t.length=0}else t.push(r)}t.length=0},e._resetStateTickFlagsAndWeights=function(){var t=this._currentNode,e=this._activatedTransitions;t.resetTickFlagsAndWeight();for(var i=0;i<e.length;++i)e[i].destination.resetTickFlagsAndWeight()},e._commitStateUpdates=function(t){var e=this._currentNode,i=this._activatedTransitions;this._updateContextGenerator,this._commitStateUpdate(e,t);for(var n=0;n<i.length;++n){var r=i[n].destination;this._commitStateUpdate(r,t)}},e._commitStateUpdate=function(t,e){var i=this._updateContextGenerator;if(!t.testTickFlag(l7.UPDATED))if(t.setTickFlag(l7.UPDATED),t.kind===o7.animation)t.update(e.deltaTime,this._controller);else if(t.kind===o7.procedural){var n=i.generate(e.deltaTime,e.indicativeWeight*t.absoluteWeight);t.update(n)}},e._sample=function(t){var e,i=this._currentNode,n=this._activatedTransitions,r=1,s=null,a=0;if(i.kind===o7.animation)s=null!==(e=i.evaluate(t))&&void 0!==e?e:this._pushNullishPose(t);else if(i.kind===o7.procedural){var o;s=null!==(o=i.evaluate(t))&&void 0!==o?o:this._pushNullishPose(t)}else r-=i.absoluteWeight,s=null;s&&(a=i.absoluteWeight),i.setTickFlag(l7.EVALUATED);for(var h=0;h<n.length;++h){var u=n[h].destination;if(!u.testTickFlag(l7.EVALUATED)){u.setTickFlag(l7.EVALUATED);var l,c=u.absoluteWeight,_=void 0;u.kind===o7.empty?(r-=c,_=null):_=null!==(l=u.evaluate(t))&&void 0!==l?l:this._pushNullishPose(t),_&&(s&&(a+=c)?(R$(s,_,c/a),t.popPose()):s=_)}}return this.passthroughWeight=r,s},e._pushNullishPose=function(t){return this._additive?t.pushZeroDeltaPose():t.pushDefaultedPose()},e._matchNextTransition=function(t){var e=this._matchTransition(t,t);if(e)return e;if(t.kind===o7.animation||t.kind===o7.procedural){var i=this._matchAnyScoped(t);if(i)return i}return null},e._matchAnyScoped=function(t){for(var e=t.stateMachine;null!==e;e=e.parent){var i=this._matchTransition(e.any,t);if(i)return i}return null},e._matchTransition=function(t,e){t===e||(t.kind,o7.any),this._conditionEvaluationContext.set(e);for(var i=t.outgoingTransitions,n=i.length,r=0;r<n;++r){var s=i[r];if(!s.activated){var a=s.conditions,o=a.length;if(0===o){if(t.kind===o7.entry||t.kind===o7.exit)return s;if(!s.exitConditionEnabled)continue}if(e.kind===o7.animation&&s.exitConditionEnabled){var h=e.duration*s.exitCondition;if(e.time<h)break}for(var u=!0,l=0;l<o;++l)if(!a[l].eval(this._conditionEvaluationContext)){u=!1;break}if(u)return s}}return null},e._activateTransition=function(t,e){var i=e.to;a7(i);var n=this._activatedTransitionPool.alloc();n.reset(t,e),this._activatedTransitions.push(n);for(var r=n.path.length,s=0;s<r;++s){var a=n.path[s];this._resetTriggersOnTransition(a)}for(var o=0;o<n.path.length;++o){var h=n.path[o];this._callEnterMethods(h.to)}this._activatedTransitions.length;var u=1===this._activatedTransitions.length?this._currentNode:this._activatedTransitions[this._activatedTransitions.length-2].destination;u instanceof _7&&u.transitionOutEventBinding&&this._emit(u.transitionOutEventBinding),e.startEventBinding&&this._emit(e.startEventBinding),i instanceof _7&&i.transitionInEventBinding&&this._emit(i.transitionInEventBinding)},e._updateActivatedTransitions=function(t){for(var e=this._activatedTransitions,i=e.length-1,n=1,r=i;i>=0;--i){var s=e[i],a=0===i?this._currentNode:e[i-1].destination;if(s.update(t,a),s.done){this._dropActivatedTransitions(r);break}var o=s.normalizedElapsedTime*n;s.destination.increaseAbsoluteWeight(o),n*=1-s.normalizedElapsedTime,r=i-1}this._currentNode.increaseAbsoluteWeight(n)},e._dropActivatedTransitions=function(t){var e=this._activatedTransitions,i=this._activatedTransitionPool;t>=0&&e.length;var n=t+1,r=e[t],s=r.destination;r.path.length;var a=r.path[r.path.length-1];a.endEventBinding&&this._emit(a.endEventBinding),this._callExitMethods(this._currentNode);for(var o=0;o<=t;++o){var h=e[o];o!==t&&h.destination.decreaseActiveReference();for(var u=o===t?h.path.length-1:h.path.length,l=0;l<u;++l){var c=h.path[l];this._callExitMethods(c.to)}i.free(h)}if(t===e.length-1)e.length=0;else{for(var _=t+1;_<e.length;++_)e[_-n]=e[_];e.length-=n}this._currentNode.decreaseActiveReference(),this._currentNode=s},e._resetTriggersOnTransition=function(t){var e=t.triggers;if(e)for(var i=e.length,n=0;n<i;++n){var r=e[n];this._resetTrigger(r)}},e._resetTrigger=function(t){(0,this._triggerReset)(t)},e._callEnterMethods=function(t){var e,i=this._controller;switch(t.kind){default:break;case o7.animation:t.components.callMotionStateEnterMethods(i,t.getStatus());break;case o7.entry:null===(e=t.stateMachine.components)||void 0===e||e.callStateMachineEnterMethods(i)}},e._callExitMethods=function(t){var e,i=this._controller;switch(t.kind){default:break;case o7.animation:t.components.callMotionStateExitMethods(i,t.getStatus());break;case o7.exit:null===(e=t.stateMachine.components)||void 0===e||e.callStateMachineExitMethods(i)}},e._emit=function(t){t.emit(this._controller.node)},n(t,[{key:"exited",get:function(){return this._currentNode===this._topLevelExit}}]),t}();function a7(t){return t.kind===o7.animation||t.kind===o7.empty||t.kind===o7.procedural}var o7,h7={next:function(){return{done:!0,value:void 0}}},u7=((e7={})[Symbol.iterator]=function(){return h7},e7);!function(t){t[t.entry=0]="entry",t[t.exit=1]="exit",t[t.any=2]="any",t[t.animation=3]="animation",t[t.empty=4]="empty",t[t.procedural=5]="procedural"}(o7||(o7={}));var l7,c7=function(){function t(t){this.name=void 0,this.outgoingTransitions=[],this._activeReferenceCount=0,this._tickFlags=0,this._absoluteWeight=0,this.name=t.name}var e=t.prototype;return e.setPrefix_debug=function(t){this.__DEBUG_ID__=""+t+this.name},e.addTransition=function(t){this.outgoingTransitions.push(t)},e.increaseActiveReference=function(){0===this._activeReferenceCount&&(this._absoluteWeight=0,this._tickFlags=0),++this._activeReferenceCount},e.decreaseActiveReference=function(){--this._activeReferenceCount},e.resetTickFlagsAndWeight=function(){this._checkActivated(),this._absoluteWeight=0,this._tickFlags=0},e.increaseAbsoluteWeight=function(t){this._absoluteWeight+=t},e.testTickFlag=function(t){return!!(this._tickFlags&t)},e.setTickFlag=function(t){this.testTickFlag(t),l7[t],this._tickFlags|=t},e._checkActivated=function(){this._activeReferenceCount},n(t,[{key:"absoluteWeight",get:function(){return this._absoluteWeight}},{key:"activeReferenceCount",get:function(){return this._activeReferenceCount}}]),t}(),_7=function(t){function e(e){var i;return(i=t.call(this,e)||this).transitionInEventBinding=void 0,i.transitionOutEventBinding=void 0,e.transitionInEventBinding.isBound&&(i.transitionInEventBinding=e.transitionInEventBinding),e.transitionOutEventBinding.isBound&&(i.transitionOutEventBinding=e.transitionOutEventBinding),i}return s(e,t),e}(c7);!function(t){t[t.UPDATED=1]="UPDATED",t[t.EVALUATED=2]="EVALUATED"}(l7||(l7={}));var f7=function(){function t(t){this._components=t.instantiateComponents()}var e=t.prototype;return e.callMotionStateEnterMethods=function(t,e){this._callMotionStateCallbackIfNonDefault("onMotionStateEnter",t,e)},e.callMotionStateUpdateMethods=function(t,e){this._callMotionStateCallbackIfNonDefault("onMotionStateUpdate",t,e)},e.callMotionStateExitMethods=function(t,e){this._callMotionStateCallbackIfNonDefault("onMotionStateExit",t,e)},e.callStateMachineEnterMethods=function(t){this._callStateMachineCallbackIfNonDefault("onStateMachineEnter",t)},e.callStateMachineExitMethods=function(t){this._callStateMachineCallbackIfNonDefault("onStateMachineExit",t)},e._callMotionStateCallbackIfNonDefault=function(t,e,i){for(var n=this._components,r=n.length,s=0;s<r;++s){var a=n[s];a[t]!==H8.prototype[t]&&a[t](e,i)}},e._callStateMachineCallbackIfNonDefault=function(t,e){for(var i=this._components,n=i.length,r=0;r<n;++r){var s=i[r];s[t]!==H8.prototype[t]&&s[t](e)}},t}(),d7=function(){function t(t,e){var i,n;this._source=null,this._baseSpeed=1,this._speed=1,this._publicState=void 0,this._privateState=void 0;var r=t.name;if(this._baseSpeed=t.speed,this._setSpeedMultiplier(1),t.speedMultiplierEnabled&&t.speedMultiplier){var s=t.speedMultiplier,a=e.getVar(s);if(I5(a,s)){!function(t,e,i){if(t!==e)throw new uJ(i,"number")}(a.type,dZ.FLOAT,s),a.bind(this._setSpeedMultiplier,this);var o=a.value;this._setSpeedMultiplier(o)}}var h=null!==(i=null===(n=t.motion)||void 0===n?void 0:n[v1](e,!1))&&void 0!==i?i:null;h&&Object.defineProperty(h,"__DEBUG_ID__",{value:r}),this._source=h,this._publicState=new p7(this,t,null==h?void 0:h.createPort()),this._privateState=new p7(this,t,null==h?void 0:h.createPort()),this.components=new f7(t)}var e=t.prototype;return e.setPrefix_debug=function(t){this._publicState.setPrefix_debug(t),this._privateState.setPrefix_debug(t)},e.addTransition=function(t){t.to===this._publicState?this._publicState.addTransition(r({},t,{to:this._privateState})):this._publicState.addTransition(t),this._privateState.addTransition(t)},e.getClipStatuses=function(t){var e,i=this._source;return i?((e={})[Symbol.iterator]=function(){return i.getClipStatuses(t)},e):u7},e.overrideClips=function(t){var e;null===(e=this._source)||void 0===e||e.overrideClips(t)},e._setSpeedMultiplier=function(t){this._speed=this._baseSpeed*t},n(t,[{key:"duration",get:function(){var t,e;return null!==(t=null===(e=this._source)||void 0===e?void 0:e.duration)&&void 0!==t?t:0}},{key:"speed",get:function(){return this._speed}},{key:"entry",get:function(){return this._publicState}},{key:"stateMachine",get:function(){return this._stateMachine},set:function(t){this._stateMachine=t,this._publicState.stateMachine=t,this._privateState.stateMachine=t}}]),t}(),p7=function(t){function e(e,i,n){var r;return(r=t.call(this,i)||this).kind=o7.animation,r._container=void 0,r._progress=0,r._port=void 0,r._statusCache={progress:0},r._container=e,r._port=n,r}s(e,t);var i=e.prototype;return i.reenter=function(t){var e;this._progress=t,null===(e=this._port)||void 0===e||e.reenter()},i.getStatus=function(){var t=this._statusCache;return t.progress=m7(this._progress),t},i.getClipStatuses=function(t){return this._container.getClipStatuses(t)},i.update=function(t,e){this._progress=function(t,e,i){return 0===e?0:t+i/e}(this._progress,this.duration,t*this._container.speed),this._container.components.callMotionStateUpdateMethods(e,this.getStatus())},i.evaluate=function(t){var e,i;return null!==(e=null===(i=this._port)||void 0===i?void 0:i.evaluate(this._progress,t))&&void 0!==e?e:null},n(e,[{key:"duration",get:function(){return this._container.duration}},{key:"components",get:function(){return this._container.components}},{key:"normalizedTime",get:function(){return this._progress}},{key:"time",get:function(){return this._progress*this._container.duration}}]),e}(_7);function m7(t){var e=t-Math.trunc(t);return e>=0?e:1+e}var g7,v7=function(t){function e(e,i){var n;return(n=t.call(this,e)||this).kind=void 0,n.kind=i,n}return s(e,t),e}(c7),y7=function(t){function e(e){var i;return(i=t.call(this,e)||this).kind=o7.empty,i}return s(e,t),e}(c7),S7=function(t){function e(e,i){var n;(n=t.call(this,e)||this).kind=o7.procedural,n.elapsedTime=0,n.statusCache={progress:0},n._instantiatedPoseGraph=void 0,n._statusCache={progress:0},n._elapsedTime=0;var r=Q8(e.graph,i,!0);return r.bind(i),n._instantiatedPoseGraph=r,n._statusCache.progress=0,n}s(e,t);var i=e.prototype;return i.settle=function(t){this._instantiatedPoseGraph.settle(t)},i.reenter=function(){this._statusCache.progress=0,this._instantiatedPoseGraph.reenter()},i.update=function(t){this._elapsedTime+=t.deltaTime,this._instantiatedPoseGraph.update(t)},i.evaluate=function(t){var e;return null!==(e=this._instantiatedPoseGraph.evaluate(t))&&void 0!==e?e:null},i.getStatus=function(){return this._statusCache.progress=m7(this._elapsedTime),this._statusCache},i.countMotionTime=function(){return this._instantiatedPoseGraph.countMotionTime()},e}(_7),T7=function(){function t(){this.sourceStateWeight=0,this._sourceState=void 0}var e=t.prototype;return e.set=function(t){this._sourceState=t,a7(t)?(t.activeReferenceCount,this.sourceStateWeight=t.absoluteWeight):this.sourceStateWeight=0},e.unset=function(){this._sourceState=void 0,this.sourceStateWeight=0},n(t,[{key:"sourceStateMotionTimeNormalized",get:function(){var t=this._sourceState;switch(t&&(t.kind===o7.animation||t.kind===o7.procedural)&&t.activeReferenceCount,t.kind){case o7.animation:return t.normalizedTime;case o7.procedural:return t.countMotionTime();default:return 0}}}]),t}(),A7=function(){function t(){this.normalizedElapsedTime=0,this.path=[],this._durationMultiplier=1}var e=t.prototype;return e.getAbsoluteDuration=function(t){return this._getAbsoluteDurationUnscaled(t)*this._durationMultiplier},e.update=function(t,e){if(a7(e)){var i=this.getAbsoluteDuration(e);if(i<=0)this.normalizedElapsedTime=1;else{var n=this.normalizedElapsedTime*i,r=i-n,s=ki((n+Math.min(r,t))/i);this.normalizedElapsedTime=s}}else this.normalizedElapsedTime=1},t.createPool=function(e){return new ws((function(){return new t}),e,void 0)},e.reset=function(t,e){var i=e.to;a7(i),this.normalizedElapsedTime=0,this.destination=i,this.path=[].concat(t,[e]);var n=i.activeReferenceCount;if(i.increaseActiveReference(),0===n)if(i.kind===o7.animation){var r=this.path[0],s=r.destinationStart,a=r.relativeDestinationStart?s:0===i.duration?0:s/i.duration;i.reenter(a)}else i.kind===o7.procedural&&i.reenter();i.activeReferenceCount,this._durationMultiplier=1-i.absoluteWeight},e._getAbsoluteDurationUnscaled=function(t){this.path.length;var e=this.path[0],i=e.duration;return e.normalizedDuration?(t.kind===o7.animation?t.duration:1)*i:i},n(t,[{key:"done",get:function(){return Ni(this.normalizedElapsedTime,1,1e-6)}}]),t}(),b7=function(){function t(){this._groups=[]}var e=t.prototype;return e.register=function(t){var e=t.group,i=this._groups.find((function(t){return t.name===e}));return i||(i=new E7(e),this._groups.push(i)),i.addMember()},e.sync=function(){for(var t,e=f(this._groups);!(t=e()).done;)t.value.sync()},t}(),E7=function(){function t(t){this._lastLeader=void 0,this._records=[],this.name=t}var e=t.prototype;return e.addMember=function(){var t=new C7;return this._records.push(t),t},e.sync=function(){var t=this._records,e=t.length,i=this._lastLeader;if(this._lastLeader=void 0,!t.every((function(t){return!t.active}))){t.sort((function(t,e){var i=t.active?t.weight:-1;return(e.active?e.weight:-1)-i}));var n=0,r=t[0].weight;if(t[n]!==i)for(var s=0;s<e;++s){var a=t[s];if(!a.active||!Ni(a.weight,r,1e-6))break;if(a===i){n=s;break}}t[n].active,this._lastLeader=t[n];for(var o=t[n].normalizedTime,h=0;h<e;++h){var u=t[h];if(!u.active)break;u.normalizedTime=o,u.reset()}}},t}(),C7=function(){function t(){this.normalizedTime=0,this.weight=0,this.active=!1}var e=t.prototype;return e.notifyRenter=function(t){this.reset(),this.normalizedTime=t},e.notifyUpdate=function(t,e){this.normalizedTime+=t,this.active?this.weight+=e:(this.active=!0,this.weight=e)},e.reset=function(){this.active=!1,this.weight=0},e.getSyncedEnterTime=function(){return this.normalizedTime},t}();!function(t){t[t.UNINITIALIZED=0]="UNINITIALIZED",t[t.UNSETTLED=1]="UNSETTLED",t[t.SETTLED=2]="SETTLED",t[t.UP_TO_DATE=3]="UP_TO_DATE",t[t.OUTDATED=4]="OUTDATED",t[t.UPDATING=5]="UPDATING",t[t.UPDATED=6]="UPDATED",t[t.EVALUATING=7]="EVALUATING",t[t.EVALUATED=8]="EVALUATED"}(g7||(g7={}));var x7,w7,R7,I7,D7,B7,M7=function(){function t(t){this._state=g7.UNINITIALIZED,this._instantiatedPoseGraph=void 0,this._maxRequestedUpdateTime=0,this._evaluationCache=null,this._updateContextGenerator=new L6,this._allocator=t}var e=t.prototype;return e.set=function(t,e){this._state,g7.UNINITIALIZED;var i=Q8(t.graph,e);i.bind(e),this._instantiatedPoseGraph=i,this._state=g7.UNSETTLED},e.settle=function(t){this._state===g7.UNSETTLED||(this._state,g7.SETTLED),this._instantiatedPoseGraph,this._instantiatedPoseGraph.settle(t),this._state=g7.SETTLED},e.reset=function(){switch(this._state){case g7.SETTLED:case g7.OUTDATED:break;case g7.UP_TO_DATE:this._state=g7.OUTDATED;break;case g7.UPDATED:case g7.EVALUATED:this._evaluationCache&&(this._allocator.destroyPose(this._evaluationCache),this._evaluationCache=null),this._maxRequestedUpdateTime=0,this._state=g7.UP_TO_DATE;break;case g7.UNINITIALIZED:}},e.reenter=function(){switch(this._state){default:this._state;break;case g7.UP_TO_DATE:case g7.UPDATED:break;case g7.SETTLED:case g7.OUTDATED:this._state=g7.UP_TO_DATE,this._instantiatedPoseGraph,this._instantiatedPoseGraph.reenter()}},e.requestUpdate=function(t){var e=t.deltaTime;if(this._state===g7.OUTDATED||this._state===g7.UP_TO_DATE||this._state===g7.UPDATING||(this._state,g7.UPDATED),this._instantiatedPoseGraph,this._state!==g7.UPDATING){var i=Math.max(0,e-this._maxRequestedUpdateTime);if(this._state!==g7.UPDATED||!Ni(i,0,1e-8)){this._state=g7.UPDATING,this._maxRequestedUpdateTime=Math.max(e,this._maxRequestedUpdateTime);var n=this._updateContextGenerator.generate(i,t.indicativeWeight);this._instantiatedPoseGraph.update(n),this._state=g7.UPDATED}}},e.evaluate=function(t){switch(this._state){default:this._state;break;case g7.EVALUATING:this._state=g7.EVALUATED;break;case g7.EVALUATED:break;case g7.UPDATED:var e;this._evaluationCache,this._state=g7.EVALUATING;var i=null===(e=this._instantiatedPoseGraph)||void 0===e?void 0:e.evaluate(t);if(this._state=g7.EVALUATED,i){var n=this._allocator.allocatePose();n.transforms.set(i.transforms),n.auxiliaryCurves.set(i.auxiliaryCurves),this._evaluationCache=n,t.popPose()}this._state=g7.EVALUATED}return this._state,g7.EVALUATED,this._instantiatedPoseGraph,this._evaluationCache?t.pushDuplicatedPose(this._evaluationCache):null},t}(),P7=function(){function t(t){this._allocator=void 0,this._stashEvaluations={},this._allocator=t}var e=t.prototype;return e.bindStash=function(t){return this._stashEvaluations[t]},e.getStash=function(t){return this._stashEvaluations[t]},e.addStash=function(t){this._stashEvaluations[t]=new M7(this._allocator)},e.setStash=function(t,e,i){this._stashEvaluations,this._stashEvaluations[t].set(e,i)},e.reset=function(){for(var t in this._stashEvaluations)this._stashEvaluations[t].reset()},e.settle=function(t){for(var e in this._stashEvaluations)this._stashEvaluations[e].settle(t)},t}(),O7=function(t){function e(e,i,n){var r;(r=t.call(this)||this)._layerRecords=void 0;var s=e.layers.map((function(t){return new L7(t,i,n)}));return r._layerRecords=s,r}s(e,t);var i=e.prototype;return i.reenter=function(){},i.bind=function(){},i.settle=function(t){for(var e=this._layerRecords,i=e.length,n=0;n<i;++n)e[n].settle(t)},i.getLayerWeight=function(t){return t>=0&&this._layerRecords.length,this._layerRecords[t].weight},i.setLayerWeight=function(t,e){t>=0&&this._layerRecords.length,this._layerRecords[t].weight=e},i.getLayerTopLevelStateMachineEvaluation=function(t){return this._layerRecords[t].stateMachineEvaluation},i.overrideClips=function(t){for(var e=this._layerRecords,i=e.length,n=0;n<i;++n){var r=e[n];t._pushAdditiveFlag(r.additive),r.stateMachineEvaluation.overrideClips(t),t._popAdditiveFlag()}},i.doUpdate=function(t){for(var e=this._layerRecords,i=e.length,n=0;n<i;++n)e[n].update(t)},i.doEvaluate=function(t){for(var e=t.pushDefaultedPose(),i=this._layerRecords,n=i.length,r=0;r<n;++r){var s=i[r],a=s.stateMachineEvaluation.evaluate(t),o=s.weight*s.stateMachineEvaluation.passthroughWeight,h=s.transformFilter;s.additive?P$(e,a,o,h):R$(e,a,o,h),t.popPose(),s.postEvaluate()}return e},n(e,[{key:"layerCount",get:function(){return this._layerRecords.length}}]),e}(H$),L7=function(){function t(t,e,i){var n;this.additive=!1,this.weight=0,this._topLevelStateMachineEval=void 0,this._stashManager=void 0,this._motionSyncManager=void 0,this._mask=void 0,this.transformFilter=void 0;for(var r,s=new P7(i),a=f(t.stashes());!(r=a()).done;){var o=r.value,h=o[0];o[1],s.addStash(h)}this._stashManager=s;var u=new b7;this._motionSyncManager=u,e._setLayerWideContextProperties(s,u);for(var l,c=f(t.stashes());!(l=c()).done;){var _=l.value,d=_[0],p=_[1];s.setStash(d,p,e)}this.weight=t.weight;var m=this.additive=t.additive;this._mask=null!==(n=t.mask)&&void 0!==n?n:void 0,e._pushAdditiveFlag(m),this._topLevelStateMachineEval=new s7(t.stateMachine,t.name,e),e._popAdditiveFlag(),e._unsetLayerWideContextProperties()}var e=t.prototype;return e.settle=function(t){this._mask&&(this.transformFilter=t.createTransformFilter(this._mask)),this._stashManager.settle(t),this._topLevelStateMachineEval.settle(t)},e.update=function(t){this.stateMachineEvaluation.update(t),this._motionSyncManager.sync()},e.postEvaluate=function(){this._stashManager.reset()},n(t,[{key:"stateMachineEvaluation",get:function(){return this._topLevelStateMachineEval}}]),t}(),N7=function(){function t(t,e,i,n){this._currentTransitionCache={duration:0,time:0},this._rootPoseNode=void 0,this._varInstances={},this._hasAutoTrigger=!1,this._auxiliaryCurveRegistry=new v6,this._poseLayoutMaintainer=void 0,this._bindingContext=void 0,this._settleContext=void 0,this._rootUpdateContextGenerator=new L6;for(var r,s=f(t.variables);!(r=s()).done;){var a=r.value,o=a[0],h=a[1][GZ]();this._varInstances[o]=h,h instanceof iJ&&h.resetMode===kZ.NEXT_FRAME_OR_AFTER_CONSUMED&&(this._hasAutoTrigger=!0)}var u=new y6(e,this._auxiliaryCurveRegistry);this._poseLayoutMaintainer=u;var l=new m6(e,u,this._varInstances,i);l._setClipOverrides(null!=n?n:void 0),this._bindingContext=l;var c=new I6(u);this._settleContext=c,u.startBind();var _=new N6;this._poseStashAllocator=_,this._rootPoseNode=new O7(t,l,_),this._root=e,this._initializeContexts()}var e=t.prototype;return e.destroy=function(){this._evaluationContext.destroy()},e._destroyAfterException_debugging=function(){var t=this._evaluationContext._stackSize_debugging;if(0!==t)for(var e=0;e<t;++e)this._evaluationContext.popPose();this._evaluationContext.destroy()},e.update=function(t){var e=this._evaluationContext,i=this._poseLayoutMaintainer,n=this._rootUpdateContextGenerator,r=this._rootPoseNode,s=n.generate(t,1);r.update(s);var a=r.evaluate(e,L$.LOCAL);if(this._hasAutoTrigger){var o=this._varInstances;for(var h in o){var u=o[h];u instanceof iJ&&u.resetMode===kZ.NEXT_FRAME_OR_AFTER_CONSUMED&&(u.value=!1)}}i.apply(a),e.popPose()},e.getVariables=function(){return Object.entries(this._varInstances)},e.getCurrentStateStatus=function(t){return this._rootPoseNode.getLayerTopLevelStateMachineEvaluation(t).getCurrentStateStatus()},e.getCurrentClipStatuses=function(t){return this._rootPoseNode.getLayerTopLevelStateMachineEvaluation(t).getCurrentClipStatuses()},e.getCurrentTransition=function(t){var e=this._currentTransitionCache;return this._rootPoseNode.getLayerTopLevelStateMachineEvaluation(t).getCurrentTransition(e)?e:null},e.getNextStateStatus=function(t){return this._rootPoseNode.getLayerTopLevelStateMachineEvaluation(t).getNextStateStatus()},e.getNextClipStatuses=function(t){return this._rootPoseNode.getLayerTopLevelStateMachineEvaluation(t).getNextClipStatuses()},e.getValue=function(t){var e=this._varInstances[t];return e?e.value:void 0},e.setValue=function(t,e){var i=this._varInstances[t];i&&(i.value=e)},e.getLayerWeight=function(t){return this._rootPoseNode.getLayerWeight(t)},e.setLayerWeight=function(t,e){this._rootPoseNode.setLayerWeight(t,e)},e.overrideClips=function(t){this._poseLayoutMaintainer.startBind(),this._bindingContext._setClipOverrides(t),this._rootPoseNode.overrideClips(this._bindingContext),this._updateAfterPossiblePoseLayoutChange()},e.getAuxiliaryCurveValue=function(t){return this._auxiliaryCurveRegistry.get(t)},e._initializeContexts=function(){var t=this._poseLayoutMaintainer;t.endBind(),this._createOrUpdateTransformFilters();var e=t.createEvaluationContext();this._evaluationContext=e,t.fetchDefaultTransforms(e[R6]),t.resetPoseStashAllocator(this._poseStashAllocator)},e._updateAfterPossiblePoseLayoutChange=function(){var t=this._poseLayoutMaintainer,e=t.endBind();if(0!==e){(e&p6.TRANSFORM_COUNT||e&p6.TRANSFORM_ORDER)&&this._createOrUpdateTransformFilters();var i=!1;if(e&p6.TRANSFORM_COUNT||e&p6.AUXILIARY_CURVE_COUNT){var n=t.createEvaluationContext();this._evaluationContext.destroy(),this._evaluationContext=n,i=!0,t.resetPoseStashAllocator(this._poseStashAllocator)}(i||e&p6.TRANSFORM_COUNT||e&p6.TRANSFORM_ORDER)&&t.fetchDefaultTransforms(this._evaluationContext[R6])}},e._createOrUpdateTransformFilters=function(){this._rootPoseNode.settle(this._settleContext)},n(t,[{key:"layerCount",get:function(){return this._rootPoseNode.layerCount}}]),t}(),F7=Lo,k7=lo,G7=co,V7=(x7=eo("cc.animation.AnimationController"),w7=F7(VJ),R7=G7("graph"),x7((m((D7=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._graph=B7&&B7(),e._graphEval=null,e}s(e,t);var i=e.prototype;return i.__preload=function(){var t=this.graph;if(t){var e,i=null;if(t instanceof k4){if(!t.original)return;e=t.original,i=t.clipOverrides}else e=t;var n=new N7(e,this.node,this,i);this._graphEval=n}},i.onDestroy=function(){var t;null===(t=this._graphEval)||void 0===t||t.destroy()},i.update=function(t){var e;null===(e=this._graphEval)||void 0===e||e.update(t)},i.getVariables=function(){return this._graphEval.getVariables()},i.setValue=function(t,e){return this.setValue_experimental(t,e)},i.setValue_experimental=function(t,e){this._graphEval.setValue(t,e)},i.getValue=function(t){var e=this.getValue_experimental(t);return"object"==typeof e?void 0:e},i.getValue_experimental=function(t){return this._graphEval.getValue(t)},i.getCurrentStateStatus=function(t){return this._graphEval.getCurrentStateStatus(t)},i.getCurrentClipStatuses=function(t){return this._graphEval.getCurrentClipStatuses(t)},i.getCurrentTransition=function(t){return this._graphEval.getCurrentTransition(t)},i.getNextStateStatus=function(t){return this._graphEval.getNextStateStatus(t)},i.getNextClipStatuses=function(t){return this._graphEval.getNextClipStatuses(t)},i.getLayerWeight=function(t){return this._graphEval.getLayerWeight(t)},i.setLayerWeight=function(t,e){return this._graphEval.setLayerWeight(t,e)},i.overrideClips_experimental=function(t){this._graphEval.overrideClips(t)},i.getAuxiliaryCurveValue_experimental=function(t){var e=this._graphEval;return e?e.getAuxiliaryCurveValue(t):0},n(e,[{key:"graph",get:function(){return this._graph},set:function(t){this._graph=t}},{key:"layerCount",get:function(){var t,e;return null!==(t=null===(e=this._graphEval)||void 0===e?void 0:e.layerCount)&&void 0!==t?t:0}}]),e}(mp)).prototype,"graph",[w7],Object.getOwnPropertyDescriptor(D7.prototype,"graph"),D7.prototype),B7=ja(D7.prototype,"_graph",[k7,R7],(function(){return null})),I7=D7))||I7);t("ar",Object.freeze({__proto__:null,UniformProxyFactory:HQ,MorphWeightValueProxy:WQ,MorphWeightsValueProxy:XQ,MorphWeightsAllValueProxy:jQ,Track:yQ,TrackPath:dQ,RealTrack:rZ,VectorTrack:mZ,QuatTrack:SZ,ColorTrack:bZ,SizeTrack:xZ,ObjectTrack:RZ,isPropertyPath:XK,isCustomPath:function(t,e){return t instanceof e},HierarchyPath:uQ,ComponentPath:lQ,CubicSplineVec2Value:$Q,CubicSplineVec3Value:tZ,CubicSplineVec4Value:eZ,CubicSplineQuatValue:iZ,CubicSplineNumberValue:nZ,AnimationController:V7,get VariableType(){return dZ},StateMachineComponent:H8}));var U7,z7=function(){function t(){this._nodeBlendStates=new Map}var e=t.prototype;return e.createWriter=function(t,e,i,n){var r=this.ref(t,e);return new H7(t,e,r,i,n)},e.destroyWriter=function(t){var e=t;this.deRef(e.node,e.property)},e.ref=function(t,e){var i=this._nodeBlendStates.get(t);return i||(i=this.createNodeBlendState(),this._nodeBlendStates.set(t,i)),i.refProperty(t,e)},e.deRef=function(t,e){var i=this._nodeBlendStates.get(t);i&&(i.deRefProperty(e),i.empty&&this._nodeBlendStates.delete(t))},e.apply=function(){this._nodeBlendStates.forEach((function(t,e){t.apply(e)}))},t}(),H7=function(){function t(t,e,i,n,r){this._node=t,this._property=e,this._propertyBlendState=i,this._host=n,this._constants=r}var e=t.prototype;return e.getValue=function(){return this._node[this._property]},e.setValue=function(t){var e=this._propertyBlendState,i=this._host.weight;e.blend(t,i)},n(t,[{key:"node",get:function(){return this._node}},{key:"property",get:function(){return this._property}}]),t}();!function(t){t[t.POSITION=1]="POSITION",t[t.ROTATION=2]="ROTATION",t[t.SCALE=4]="SCALE",t[t.EULER_ANGLES=8]="EULER_ANGLES"}(U7||(U7={})),U7.POSITION,U7.ROTATION,U7.SCALE,U7.EULER_ANGLES;var W7,X7,j7=function(){function t(){this.refCount=0,this.accumulatedWeight=0,this.result=new gn}var e=t.prototype;return e.blend=function(t,e){this.accumulatedWeight=function(t,e,i,n,r){var s=i+r;if(1!==r||i){if(s){var a=r/s;gn.lerp(t,t,n,a)}}else gn.copy(t,n);return s}(this.result,this.result,this.accumulatedWeight,t,e)},e.reset=function(){this.accumulatedWeight=0,gn.zero(this.result)},t}(),Y7=function(){function t(){this.refCount=0,this.accumulatedWeight=0,this.result=new Bn}var e=t.prototype;return e.blend=function(t,e){this.accumulatedWeight=function(t,e,i,n,r){var s=i+r;if(1!==r||i){if(s){var a=r/s;Bn.slerp(t,e,n,a)}}else Bn.copy(t,n);return s}(this.result,this.result,this.accumulatedWeight,t,e)},e.reset=function(){this.accumulatedWeight=0,Bn.identity(this.result)},t}(),q7=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.apply=function(e){var i=this._properties,n=i.position,r=i.scale,s=i.rotation,a=i.eulerAngles;n&&n.accumulatedWeight&&(this._transformApplyFlags|=U7.POSITION,n.accumulatedWeight<1&&n.blend(e.position,1-n.accumulatedWeight)),r&&r.accumulatedWeight&&(this._transformApplyFlags|=U7.SCALE,r.accumulatedWeight<1&&r.blend(e.scale,1-r.accumulatedWeight)),a&&a.accumulatedWeight&&(this._transformApplyFlags|=U7.EULER_ANGLES,a.accumulatedWeight<1&&a.blend(e.eulerAngles,1-a.accumulatedWeight)),s&&s.accumulatedWeight&&(this._transformApplyFlags|=U7.ROTATION,s.accumulatedWeight<1&&s.blend(e.rotation,1-s.accumulatedWeight)),t.prototype.apply.call(this,e),null==n||n.reset(),null==r||r.reset(),null==s||s.reset(),null==a||a.reset()},i._createVec3BlendState=function(){return new j7},i._createQuatBlendState=function(){return new Y7},e}(function(){function t(){this._transformApplyFlags=0,this._properties={}}var e=t.prototype;return e.refProperty=function(t,e){var i,n,r,s=this._properties;switch(e){default:case"position":case"scale":case"eulerAngles":r=null!==(i=s[e])&&void 0!==i?i:s[e]=this._createVec3BlendState(t[e]);break;case"rotation":r=null!==(n=s[e])&&void 0!==n?n:s[e]=this._createQuatBlendState(t.rotation)}return++r.refCount,r},e.deRefProperty=function(t){var e=this._properties,i=e[t];i&&(--i.refCount,i.refCount>0||delete e[t])},e.apply=function(t){var e,i,n,r=this._transformApplyFlags,s=this._properties,a=s.position,o=s.scale,h=s.rotation,u=s.eulerAngles;r&&(a&&r&U7.POSITION&&(e=a.result),o&&r&U7.SCALE&&(i=o.result),u&&r&U7.EULER_ANGLES&&(n=u.result),h&&r&U7.ROTATION&&(n=h.result),(n||e||i)&&t.setRTS(n,e,i),this._transformApplyFlags=0)},n(t,[{key:"empty",get:function(){var t=this._properties;return!(t.position||t.rotation||t.eulerAngles||t.scale)}}]),t}()),K7=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.createNodeBlendState=function(){return new q7},e}(z7),Q7=t("aA",eo(((X7=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._anims=new ce([]),e._crossFades=new ce([]),e._delayEvents=[],e._blendStateBuffer=new K7,e._sockets=[],e}s(e,t);var i=e.prototype;return i.addCrossFade=function(t){-1===this._crossFades.array.indexOf(t)&&this._crossFades.push(t)},i.removeCrossFade=function(t){var e=this._crossFades.array.indexOf(t);e>=0?this._crossFades.fastRemoveAt(e):it(3907)},i.update=function(t){var e=this._delayEvents,i=this._crossFades,n=this._sockets,r=i.array;for(i.i=0;i.i<r.length;++i.i)r[i.i].update(t);var s=this._anims,a=s.array;for(s.i=0;s.i<a.length;++s.i){var o=a[s.i];o.isMotionless||o.update(t)}this._blendStateBuffer.apply();for(var h=ID.getTotalFrames(),u=0,l=n.length;u<l;u++){var c=n[u],_=c.target,f=c.transform;_.matrix=Kj(f,h)}for(var d=0,p=e.length;d<p;d++){var m=e[d];m.fn.apply(m.thisArg,m.args)}e.length=0},i.destruct=function(){},i.addAnimation=function(t){-1===this._anims.array.indexOf(t)&&this._anims.push(t)},i.removeAnimation=function(t){var e=this._anims.array.indexOf(t);e>=0?this._anims.fastRemoveAt(e):it(3907)},i.pushDelayEvent=function(t,e,i){this._delayEvents.push({fn:t,thisArg:e,args:i})},i.addSockets=function(t,e){for(var i=this,n=function(){var n=e[r];if(i._sockets.find((function(t){return t.target===n.target})))return 1;var s=t.getChildByPath(n.path),a=n.target&&s&&Qj(s,t);a&&i._sockets.push({target:n.target,transform:a})},r=0;r<e.length;++r)n()},i.removeSockets=function(t,e){for(var i=0;i<e.length;++i)for(var n=e[i],r=0;r<this._sockets.length;++r){var s=this._sockets[r];if(s.target===n.target){Zj(s.transform.node),this._sockets[r]=this._sockets[this._sockets.length-1],this._sockets.length--;break}}},n(e,[{key:"blendState",get:function(){return this._blendStateBuffer}}]),e}(Ml)).ID="animation",W7=X7))||W7);ID.on(wD.EVENT_INIT,(function(){var t=new Q7;ID.registerSystem(Q7.ID,t,Ml.Priority.HIGH)})),S.AnimationManager=Q7;var Z7,J7,$7,t9,e9,i9,n9,r9,s9,a9,o9,h9,u9,l9,c9=function(t){function e(e){var i;return(i=t.call(this)||this)._managedStates=[],i._fadings=[],i._scheduled=!1,i._scheduler=null!=e?e:DK(),i}s(e,t);var i=e.prototype;return i.update=function(t){if(!this.isMotionless){var e=this._managedStates,i=this._fadings;if(1===e.length&&1===i.length){var n=e[0].state;n&&(n.weight=1)}else this._calculateWeights(t);1===e.length&&1===i.length&&this._unscheduleThis()}},i.crossFade=function(t,e){var i;0===this._managedStates.length&&(e=0),0===e&&this.clear();var n=this._managedStates.find((function(e){return e.state===t}));n?null!==(i=n.state)&&void 0!==i&&i.isMotionless&&n.state.play():(n={state:t,reference:0},t&&t.play(),this._managedStates.push(n)),++n.reference,this._fadings.unshift({easeDuration:e,easeTime:0,target:n}),this.isMotionless||this._scheduleThis()},i.clear=function(){for(var t=0;t<this._managedStates.length;++t){var e=this._managedStates[t].state;e&&e.stop()}this._managedStates.length=0,this._fadings.length=0},i.onPlay=function(){t.prototype.onPlay.call(this),this._scheduleThis()},i.onPause=function(){t.prototype.onPause.call(this);for(var e=0;e<this._managedStates.length;++e){var i=this._managedStates[e].state;i&&i.pause()}this._unscheduleThis()},i.onResume=function(){t.prototype.onResume.call(this);for(var e=0;e<this._managedStates.length;++e){var i=this._managedStates[e].state;i&&i.resume()}this._scheduleThis()},i.onStop=function(){t.prototype.onStop.call(this),this.clear()},i._calculateWeights=function(t){for(var e=this._managedStates,i=this._fadings,n=0;n<e.length;++n){var r=e[n].state;r&&(r.weight=0)}for(var s=1,a=i.length,o=0;o<i.length;++o){var h=i[o];h.easeTime+=t;var u=0===h.easeDuration?1:ki(h.easeTime/h.easeDuration),l=u*s;if(s*=1-u,h.target.state&&(h.target.state.weight+=l),h.easeTime>=h.easeDuration){a=o+1,h.easeTime=h.easeDuration;break}}if(a!==i.length){for(var c=a;c<i.length;++c){var _=i[c];--_.target.reference,_.target.reference<=0&&(_.target.state&&_.target.state.stop(),de(this._managedStates,_.target))}i.splice(a)}},i._scheduleThis=function(){this._scheduled||(this._scheduler.addCrossFade(this),this._scheduled=!0)},i._unscheduleThis=function(){this._scheduled&&(this._scheduler.removeCrossFade(this),this._scheduled=!1)},e}(xK),_9=t("au",(Z7=eo("cc.Animation"),J7=no(99),$7=Lo([_3]),t9=Lo(_3),e9=Lo([_3]),Z7(i9=J7(((o9=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).playOnLoad=r9&&r9(),e._crossFade=new c9,e._nameToState=Lt(!0),e._clips=s9&&s9(),e._defaultClip=a9&&a9(),e._hasBeenPlayed=!1,e}s(e,t);var i=e.prototype;return i.onLoad=function(){for(var t in this.clips=this._clips,this._nameToState)this._nameToState[t].initialize(this.node)},i.start=function(){this.playOnLoad&&!this._hasBeenPlayed&&this._defaultClip&&this.crossFade(this._defaultClip.name,0)},i.onEnable=function(){this._crossFade.resume()},i.onDisable=function(){this._crossFade.pause()},i.onDestroy=function(){for(var t in this._crossFade.stop(),this._nameToState)this._nameToState[t].destroy();this._nameToState=Lt(!0)},i.play=function(t){if(this._hasBeenPlayed=!0,!t){if(!this._defaultClip)return;t=this._defaultClip.name}this.crossFade(t,0)},i.crossFade=function(t,e){void 0===e&&(e=.3),this._hasBeenPlayed=!0;var i=this._nameToState[t];i&&this.doPlayOrCrossFade(i,e)},i.pause=function(){this._crossFade.pause()},i.resume=function(){this._crossFade.resume()},i.stop=function(){this._crossFade.stop()},i.getState=function(t){var e=this._nameToState[t];return e&&!e.curveLoaded&&e.initialize(this.node),e||null},i.createState=function(t,e){return e=e||t.name,this.removeState(e),this._doCreateState(t,e)},i.removeState=function(t){var e=this._nameToState[t];e&&(e.allowLastFrameEvent(!1),e.stop(),delete this._nameToState[t])},i.addClip=function(t,e){return ge(this._clips,t)||this._clips.push(t),this.createState(t,e)},i.removeClip=function(t,e){var i;for(var n in this._nameToState){var r=this._nameToState[n];if(r.clip===t){i=r;break}}if(t===this._defaultClip){if(!e)return void tt(3902);this._defaultClip=null}if(i&&i.isPlaying){if(!e)return void tt(3903);i.stop()}this._clips=this._clips.filter((function(e){return e!==t})),i&&delete this._nameToState[i.name]},i.on=function(e,i,n,r){var s=t.prototype.on.call(this,e,i,n,r);return e===wK.LASTFRAME&&this._syncAllowLastFrameEvent(),s},i.once=function(e,i,n){var r=t.prototype.once.call(this,e,i,n);return e===wK.LASTFRAME&&this._syncAllowLastFrameEvent(),r},i.off=function(e,i,n){t.prototype.off.call(this,e,i,n),e===wK.LASTFRAME&&this._syncDisallowLastFrameEvent()},i._createState=function(t,e){return new OK(t,e)},i._doCreateState=function(t,e){var i=this._createState(t,e);return i._setEventTarget(this),i.allowLastFrameEvent(this.hasEventListener(wK.LASTFRAME)),this.node&&i.initialize(this.node),this._nameToState[i.name]=i,i},i.doPlayOrCrossFade=function(t,e){this._crossFade.play(),this._crossFade.crossFade(t,e)},i._removeStateOfAutomaticClip=function(t){for(var e in this._nameToState){var i=this._nameToState[e];f9(t,i.clip)&&(i.stop(),delete this._nameToState[e])}},i._syncAllowLastFrameEvent=function(){if(this.hasEventListener(wK.LASTFRAME))for(var t in this._nameToState)this._nameToState[t].allowLastFrameEvent(!0)},i._syncDisallowLastFrameEvent=function(){if(!this.hasEventListener(wK.LASTFRAME))for(var t in this._nameToState)this._nameToState[t].allowLastFrameEvent(!1)},n(e,[{key:"clips",get:function(){return this._clips},set:function(t){var e=this;this._crossFade&&this._crossFade.clear();for(var i,n=f(this._clips);!(i=n()).done;){var r=i.value;r&&this._removeStateOfAutomaticClip(r)}for(var s,a=f(t);!(s=a()).done;){var o=s.value;o&&this.createState(o)}var h=t.find((function(t){return f9(t,e._defaultClip)}));this._defaultClip=h||null,this._clips=t}},{key:"defaultClip",get:function(){return this._defaultClip},set:function(t){this._defaultClip=t,t&&(this._clips.findIndex((function(e){return f9(e,t)}))>=0||(this._clips.push(t),this.createState(t)))}}]),e}(zs(mp))).EventType=wK,m((n9=o9).prototype,"clips",[$7],Object.getOwnPropertyDescriptor(n9.prototype,"clips"),n9.prototype),m(n9.prototype,"defaultClip",[t9],Object.getOwnPropertyDescriptor(n9.prototype,"defaultClip"),n9.prototype),r9=ja(n9.prototype,"playOnLoad",[lo],(function(){return!1})),s9=ja(n9.prototype,"_clips",[e9],(function(){return[]})),a9=ja(n9.prototype,"_defaultClip",[lo],(function(){return null})),i9=n9))||i9)||i9));function f9(t,e){return t===e||!!t&&!!e&&t._uuid===e._uuid&&t._uuid}S.Animation=_9,S.AnimationComponent=_9,ne(_9,"cc.AnimationComponent"),function(t){t.PLAYED="play",t.PAUSED="pause",t.STOPPED="stop",t.SEEKED="seeked",t.ENDED="ended",t.INTERRUPTION_BEGIN="interruptionBegin",t.INTERRUPTION_END="interruptionEnd",t.USER_GESTURE="on_gesture"}(h9||(h9={})),function(t){t[t.DOM_AUDIO=0]="DOM_AUDIO",t[t.WEB_AUDIO=1]="WEB_AUDIO",t[t.MINIGAME_AUDIO=2]="MINIGAME_AUDIO",t[t.NATIVE_AUDIO=3]="NATIVE_AUDIO",t[t.UNKNOWN_AUDIO=4]="UNKNOWN_AUDIO"}(u9||(u9={})),function(t){t[t.INIT=0]="INIT",t[t.PLAYING=1]="PLAYING",t[t.PAUSED=2]="PAUSED",t[t.STOPPED=3]="STOPPED",t[t.INTERRUPTED=4]="INTERRUPTED"}(l9||(l9={}));var d9,p9=t("aF",function(){function t(){this._bufferView=void 0,this._normalizeFactor=1;for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];if(2===e.length)this._bufferView=e[0],this._normalizeFactor=e[1];else{var n=e[0],r=e[1],s=e[2];this._bufferView=new r(n),this._normalizeFactor=s}}return t.prototype.getData=function(t){return this._bufferView[t]*this._normalizeFactor},n(t,[{key:"length",get:function(){return this._bufferView.length}}]),t}()),m9=0;function g9(t,e){var i;e.invoking||(e.invoking=!0,(i=e.func).call.apply(i,[t].concat(e.args)).then((function(){e.invoking=!1,t._operationQueue.shift(),t._eventTarget.emit(e.id.toString()),function(t){for(var e=t._operationQueue.length,i=t._operationQueue.slice(),n=[],r=!1,s=e-1;s>=0;s--){var a=i[s];if("stop"===a.op){n.push(a);break}if("seek"===a.op)r||(n.push(a),r=!0);else{if(r){n.push(a);break}0===n.length&&n.push(a)}}t._operationQueue=n.reverse()}(t);var i=t._operationQueue[0];i&&g9(t,i)})).catch((function(){})))}function v9(t,e,i){var n=i.value;i.value=function(){for(var t=this,i=arguments.length,r=new Array(i),s=0;s<i;s++)r[s]=arguments[s];return new Promise((function(i){var s=m9++,a=t;a._operationQueue.push({op:e,id:s,func:n,args:r,invoking:!1}),a._eventTarget.once(s.toString(),i),g9(a,a._operationQueue[0])}))}}function y9(t){return new Promise((function(e){var i=t.play();return void 0===i?e():(i.then(e).catch((function(){var i=function i(){t.play().then((function(){null==n||n.removeEventListener("touchend",i,{capture:!0}),null==n||n.removeEventListener("mouseup",i,{capture:!0})})).catch((function(){})),e()},n=document.getElementById("GameCanvas");null==n||n.addEventListener("touchend",i,{capture:!0}),null==n||n.addEventListener("mouseup",i,{capture:!0})})),null)}))}var S9,T9,A9=function(){function t(t,e){this._domAudio=void 0,this._onPlayCb=void 0,this._onEndCb=void 0,this._domAudio=t,t.volume=e}var e=t.prototype;return e.play=function(){var t=this;y9(this._domAudio).then((function(){var e;null===(e=t.onPlay)||void 0===e||e.call(t)})).catch((function(){}))},e.stop=function(){this._domAudio.pause()},n(t,[{key:"onPlay",get:function(){return this._onPlayCb},set:function(t){this._onPlayCb=t}},{key:"onEnd",get:function(){return this._onEndCb},set:function(t){this._onEndCb&&this._domAudio.removeEventListener("ended",this._onEndCb),this._onEndCb=t,t&&this._domAudio.addEventListener("ended",t)}}]),t}(),b9=(m((d9=function(){function t(t){var e=this;this._domAudio=void 0,this._state=l9.INIT,this._onEnded=void 0,this._eventTarget=new Hs,this._operationQueue=[],this._domAudio=t,EB.on(bB.EVENT_PAUSE,this._onInterruptedBegin,this),EB.on(bB.EVENT_RESUME,this._onInterruptedEnd,this),this._onEnded=function(){e.seek(0).catch((function(){})),e._state=l9.INIT,e._eventTarget.emit(h9.ENDED)},this._domAudio.addEventListener("ended",this._onEnded)}var e=t.prototype;return e.destroy=function(){EB.off(bB.EVENT_PAUSE,this._onInterruptedBegin,this),EB.off(bB.EVENT_RESUME,this._onInterruptedEnd,this),this._domAudio.removeEventListener("ended",this._onEnded),this._domAudio=null},t.load=function(e){return new Promise((function(i,n){t.loadNative(e).then((function(e){i(new t(e))})).catch(n)}))},t.loadNative=function(t){return new Promise((function(e,i){var n=document.createElement("audio"),r="canplaythrough";Zs.os===Ys.IOS?r="loadedmetadata":Zs.browserType===Ws.FIREFOX&&(r="canplay");var s=setTimeout((function(){0===n.readyState?h():o()}),8e3),a=function(){clearTimeout(s),n.removeEventListener(r,o,!1),n.removeEventListener("error",h,!1)},o=function(){a(),e(n)},h=function(){a(),i(new Error("load audio failure - "+t))};n.addEventListener(r,o,!1),n.addEventListener("error",h,!1),n.src=t}))},t.loadOneShotAudio=function(e,i){return new Promise((function(n,r){t.loadNative(e).then((function(t){var e=new A9(t,i);n(e)})).catch(r)}))},e._onInterruptedBegin=function(){var t=this;this._state===l9.PLAYING&&this.pause().then((function(){t._state=l9.INTERRUPTED,t._eventTarget.emit(h9.INTERRUPTION_BEGIN)})).catch((function(){}))},e._onInterruptedEnd=function(){var t=this;this._state===l9.INTERRUPTED&&this.play().then((function(){t._eventTarget.emit(h9.INTERRUPTION_END)})).catch((function(){}))},e.getPCMData=function(){},e.seek=function(t){return t=Fi(t,0,this.duration),this._domAudio.currentTime=t,Promise.resolve()},e.play=function(){var t=this;return new Promise((function(e){y9(t._domAudio).then((function(){t._state=l9.PLAYING,e()})).catch((function(){}))}))},e.pause=function(){return this._domAudio.pause(),this._state=l9.PAUSED,Promise.resolve()},e.stop=function(){var t=this;return new Promise((function(e){t._domAudio.pause(),t._domAudio.currentTime=0,t._state=l9.STOPPED,e()}))},e.onInterruptionBegin=function(t){this._eventTarget.on(h9.INTERRUPTION_BEGIN,t)},e.offInterruptionBegin=function(t){this._eventTarget.off(h9.INTERRUPTION_BEGIN,t)},e.onInterruptionEnd=function(t){this._eventTarget.on(h9.INTERRUPTION_END,t)},e.offInterruptionEnd=function(t){this._eventTarget.off(h9.INTERRUPTION_END,t)},e.onEnded=function(t){this._eventTarget.on(h9.ENDED,t)},e.offEnded=function(t){this._eventTarget.off(h9.ENDED,t)},n(t,[{key:"src",get:function(){return this._domAudio?this._domAudio.src:""}},{key:"type",get:function(){return u9.DOM_AUDIO}},{key:"state",get:function(){return this._state}},{key:"loop",get:function(){return this._domAudio.loop},set:function(t){this._domAudio.loop=t}},{key:"volume",get:function(){return this._domAudio.volume},set:function(t){t=ki(t),this._domAudio.volume=t}},{key:"duration",get:function(){return this._domAudio.duration}},{key:"currentTime",get:function(){return this._domAudio.currentTime}},{key:"sampleRate",get:function(){return 0}}]),t}()).prototype,"seek",[v9],Object.getOwnPropertyDescriptor(d9.prototype,"seek"),d9.prototype),m(d9.prototype,"play",[v9],Object.getOwnPropertyDescriptor(d9.prototype,"play"),d9.prototype),m(d9.prototype,"pause",[v9],Object.getOwnPropertyDescriptor(d9.prototype,"pause"),d9.prototype),m(d9.prototype,"stop",[v9],Object.getOwnPropertyDescriptor(d9.prototype,"stop"),d9.prototype),d9),E9=function(){function t(t){this._nativeAudio=void 0,this._startTime=0,this._startOffset=0,this._isPaused=!0,this._nativeAudio=t}var e=t.prototype;return e.destroy=function(){this._nativeAudio=void 0},e._now=function(){return performance.now()/1e3},e._calculateCurrentTime=function(){var t=this._now()-this._startTime,e=this._startOffset+t;return e>=this.duration&&(this._startTime=this._now(),this._startOffset=0),e%this.duration},e.start=function(){this._isPaused=!1,this._startTime=this._now()},e.pause=function(){this._isPaused||(this._isPaused=!0,this._startOffset=this._calculateCurrentTime())},e.stop=function(){this._isPaused=!0,this._startOffset=0},e.seek=function(t){this._startTime=this._now(),this._startOffset=Fi(t,0,this.duration)},n(t,[{key:"duration",get:function(){return this._nativeAudio.duration}},{key:"currentTime",get:function(){return this._isPaused?this._startOffset:this._calculateCurrentTime()}}]),t}(),C9=new(function(){function t(){this._audioBufferDataMap={}}var e=t.prototype;return e.addCache=function(t,e){this._audioBufferDataMap[t]?console.warn("Audio buffer "+t+" has been cached"):this._audioBufferDataMap[t]={usedCount:1,audioBuffer:e}},e.retainCache=function(t){var e=this._audioBufferDataMap[t];e?e.usedCount++:console.warn("Audio buffer cache "+t+" has not been added.")},e.getCache=function(t){var e=this._audioBufferDataMap[t];return null==e?void 0:e.audioBuffer},e.tryReleasingCache=function(t){var e=this._audioBufferDataMap[t];e?--e.usedCount<=0&&delete this._audioBufferDataMap[t]:console.warn("Audio buffer cache "+t+" has not been added.")},t}()),x9=window.AudioContext||window.webkitAudioContext||window.mozAudioContext,w9="on-context-running",R9=function(){function t(){var t=this;this._eventTarget=void 0,this._context=void 0,this._isRunning=!1,this._context=new(window.AudioContext||window.webkitAudioContext||window.mozAudioContext),this._eventTarget=new Hs,this._context.onstatechange=function(){"running"===t._context.state?(t._isRunning=!0,t._eventTarget.emit(w9)):t._isRunning=!1}}var e=t.prototype;return e.onceRunning=function(t,e){this._eventTarget.once(w9,t,e)},e.offRunning=function(t,e){this._eventTarget.off(w9,t,e)},e.decodeAudioData=function(t){var e=this;return new Promise((function(i,n){var r=e._context.decodeAudioData(t,(function(t){i(t)}),(function(t){console.error("failed to load Web Audio",t)}));null==r||r.catch(n)}))},e.runContext=function(){var t=this;return new Promise((function(e){if(t.isRunning)e();else{var i=t._context;if(i.resume)if(i.resume().catch((function(t){z("runContext error",t)})),"running"!==i.state){var n=document.getElementById("GameCanvas"),r=function t(){i.resume().then((function(){null==n||n.removeEventListener("touchend",t,{capture:!0}),null==n||n.removeEventListener("mouseup",t,{capture:!0}),e()})).catch((function(t){z("onGesture resume error",t)}))};null==n||n.addEventListener("touchend",r,{capture:!0}),null==n||n.addEventListener("mouseup",r,{capture:!0})}else e();else e()}}))},e.createBufferSource=function(t,e){var i=this._context.createBufferSource();return void 0!==t&&(i.buffer=t),void 0!==e&&(i.loop=e),i},e.createGain=function(t){void 0===t&&(t=1);var e=this._context.createGain();return this.setGainValue(e,t),e},e.setGainValue=function(t,e){if(t.gain.setTargetAtTime)try{t.gain.setTargetAtTime(e,this._context.currentTime,0)}catch(i){t.gain.setTargetAtTime(e,this._context.currentTime,.01)}else t.gain.value=e},e.connectContext=function(t){this._context&&t.connect(this._context.destination)},n(t,[{key:"isRunning",get:function(){return this._isRunning}},{key:"currentTime",get:function(){return this._context.currentTime}}]),t}();R9.support=!!x9,R9.support&&(T9=new R9);var I9,D9,B9,M9,P9=function(){function t(t,e,i){this._duration=void 0,this._bufferSourceNode=void 0,this._onPlayCb=void 0,this._currentTimer=0,this._url=void 0,this._onEndCb=void 0,this._duration=t.duration,this._url=i,this._bufferSourceNode=T9.createBufferSource(t,!1);var n=T9.createGain(e);this._bufferSourceNode.connect(n),T9.connectContext(n)}var e=t.prototype;return e.play=function(){var t=this;this._bufferSourceNode.start(),T9.runContext().then((function(){var e;null===(e=t.onPlay)||void 0===e||e.call(t),t._currentTimer=window.setTimeout((function(){var e;C9.tryReleasingCache(t._url),null===(e=t.onEnd)||void 0===e||e.call(t)}),1e3*t._duration)})).catch((function(t){z("play error",t)}))},e.stop=function(){clearTimeout(this._currentTimer),C9.tryReleasingCache(this._url),this._bufferSourceNode.stop(),this._bufferSourceNode.disconnect(),this._bufferSourceNode.buffer=null},n(t,[{key:"onPlay",get:function(){return this._onPlayCb},set:function(t){this._onPlayCb=t}},{key:"onEnd",get:function(){return this._onEndCb},set:function(t){this._onEndCb=t}}]),t}(),O9=(m((S9=function(){function t(t,e){this._src=void 0,this._audioBuffer=void 0,this._sourceNode=void 0,this._gainNode=void 0,this._currentTimer=0,this._volume=1,this._loop=!1,this._state=l9.INIT,this._audioTimer=void 0,this._runningCallback=void 0,this._eventTarget=new Hs,this._operationQueue=[],this._audioBuffer=t,this._audioTimer=new E9(t),this._gainNode=T9.createGain(),T9.connectContext(this._gainNode),this._src=e,EB.on(bB.EVENT_PAUSE,this._onInterruptedBegin,this),EB.on(bB.EVENT_RESUME,this._onInterruptedEnd,this)}var e=t.prototype;return e.destroy=function(){window.clearTimeout(this._currentTimer),this._audioTimer.destroy(),this._audioBuffer&&(this._audioBuffer=null),C9.tryReleasingCache(this._src),EB.off(bB.EVENT_PAUSE,this._onInterruptedBegin,this),EB.off(bB.EVENT_RESUME,this._onInterruptedEnd,this),this.offRunning()},t.load=function(e){return new Promise((function(i,n){t.loadNative(e).then((function(n){i(new t(n,e))})).catch(n)}))},t.loadNative=function(t){return new Promise((function(e,i){var n=C9.getCache(t);if(n)return C9.retainCache(t),void e(n);var r=new XMLHttpRequest,s="load audio failed: "+t+", status: ";r.open("GET",t,!0),r.responseType="arraybuffer",r.onload=function(){200===r.status||0===r.status?T9.decodeAudioData(r.response).then((function(i){C9.addCache(t,i),e(i)})).catch((function(e){z("loadNative error",t,e)})):i(new Error(""+s+r.status+"(no response)"))},r.onerror=function(){i(new Error(""+s+r.status+"(error)"))},r.ontimeout=function(){i(new Error(""+s+r.status+"(time out)"))},r.onabort=function(){i(new Error(""+s+r.status+"(abort)"))},r.send(null)}))},t.loadOneShotAudio=function(e,i){return new Promise((function(n,r){t.loadNative(e).then((function(t){var r=new P9(t,i,e);n(r)})).catch(r)}))},e.getPCMData=function(t){return new p9(this._audioBuffer.getChannelData(t),1)},e._onInterruptedBegin=function(){var t=this;this._state===l9.PLAYING&&this.pause().then((function(){t._state=l9.INTERRUPTED,t._eventTarget.emit(h9.INTERRUPTION_BEGIN)})).catch((function(t){z("_onInterruptedBegin error",t)}))},e._onInterruptedEnd=function(){var t=this;this._state===l9.INTERRUPTED&&this.play().then((function(){t._eventTarget.emit(h9.INTERRUPTION_END)})).catch((function(t){z("_onInterruptedEnd error",t)}))},e.offRunning=function(){this._runningCallback&&(T9.offRunning(this._runningCallback),this._runningCallback=void 0)},e.seek=function(t){var e=this;return new Promise((function(i){e.offRunning(),e._audioTimer.seek(t),e._state===l9.PLAYING?e._doPlay().then(i).catch((function(t){z("seek error",t)})):i()}))},e.play=function(){return this.offRunning(),this._doPlay()},e._doPlay=function(){var t=this;return new Promise((function(e){T9.isRunning?(t._startSourceNode(),e()):(t.offRunning(),t._runningCallback=function(){t._startSourceNode(),e()},T9.onceRunning(t._runningCallback),T9.runContext().catch((function(t){z("doPlay error",t)})))}))},e._startSourceNode=function(){var t=this;this._stopSourceNode(),this._sourceNode=T9.createBufferSource(this._audioBuffer,this.loop),this._sourceNode.connect(this._gainNode),this._sourceNode.loop=this._loop,this._sourceNode.start(0,this._audioTimer.currentTime),this._state=l9.PLAYING,this._audioTimer.start(),window.clearTimeout(this._currentTimer),this._currentTimer=window.setTimeout((function e(){t.loop?t._currentTimer=window.setTimeout(e,1e3*t._audioBuffer.duration):(t._audioTimer.stop(),t._eventTarget.emit(h9.ENDED),t._state=l9.INIT)}),1e3*(this._audioBuffer.duration-this._audioTimer.currentTime))},e._stopSourceNode=function(){try{this._sourceNode&&(this._sourceNode.stop(),this._sourceNode.disconnect(),this._sourceNode.buffer=null,this._sourceNode=void 0)}catch(t){}},e.pause=function(){return this.offRunning(),this._state===l9.PLAYING&&this._sourceNode?(this._audioTimer.pause(),this._state=l9.PAUSED,window.clearTimeout(this._currentTimer),this._stopSourceNode(),Promise.resolve()):Promise.resolve()},e.stop=function(){return this.offRunning(),this._sourceNode?(this._audioTimer.stop(),this._state=l9.STOPPED,window.clearTimeout(this._currentTimer),this._stopSourceNode(),Promise.resolve()):(this._audioTimer.stop(),this._state=l9.STOPPED,Promise.resolve())},e.onInterruptionBegin=function(t){this._eventTarget.on(h9.INTERRUPTION_BEGIN,t)},e.offInterruptionBegin=function(t){this._eventTarget.off(h9.INTERRUPTION_BEGIN,t)},e.onInterruptionEnd=function(t){this._eventTarget.on(h9.INTERRUPTION_END,t)},e.offInterruptionEnd=function(t){this._eventTarget.off(h9.INTERRUPTION_END,t)},e.onEnded=function(t){this._eventTarget.on(h9.ENDED,t)},e.offEnded=function(t){this._eventTarget.off(h9.ENDED,t)},n(t,[{key:"sampleRate",get:function(){return this._audioBuffer.sampleRate}},{key:"src",get:function(){return this._src}},{key:"type",get:function(){return u9.WEB_AUDIO}},{key:"state",get:function(){return this._state}},{key:"loop",get:function(){return this._loop},set:function(t){this._loop=t,this._sourceNode&&(this._sourceNode.loop=t)}},{key:"volume",get:function(){return this._volume},set:function(t){t=ki(t),this._volume=t,T9.setGainValue(this._gainNode,t)}},{key:"duration",get:function(){return this._audioBuffer.duration}},{key:"currentTime",get:function(){return this._audioTimer.currentTime}}]),t}()).prototype,"seek",[v9],Object.getOwnPropertyDescriptor(S9.prototype,"seek"),S9.prototype),m(S9.prototype,"play",[v9],Object.getOwnPropertyDescriptor(S9.prototype,"play"),S9.prototype),m(S9.prototype,"pause",[v9],Object.getOwnPropertyDescriptor(S9.prototype,"pause"),S9.prototype),m(S9.prototype,"stop",[v9],Object.getOwnPropertyDescriptor(S9.prototype,"stop"),S9.prototype),S9),L9=function(){function t(t){this._audio=void 0,this._audio=t}var e=t.prototype;return e.play=function(){this._audio.play()},e.stop=function(){this._audio.stop()},n(t,[{key:"onPlay",get:function(){return this._audio.onPlay},set:function(t){this._audio.onPlay=t}},{key:"onEnd",get:function(){return this._audio.onEnd},set:function(t){this._audio.onEnd=t}}]),t}(),N9=function(){function t(t){this._player=void 0,this._player=t}t.load=function(e,i){return new Promise((function(n,r){(null==i?void 0:i.audioLoadMode)!==u9.DOM_AUDIO&&R9.support?O9.load(e).then((function(e){n(new t(e))})).catch(r):(R9.support||tt(5201),b9.load(e).then((function(e){n(new t(e))})).catch(r))}))};var e=t.prototype;return e.destroy=function(){this._player.destroy()},t.loadNative=function(t,e){return(null==e?void 0:e.audioLoadMode)!==u9.DOM_AUDIO&&R9.support?O9.loadNative(t):(R9.support||tt(5201),b9.loadNative(t))},t.loadOneShotAudio=function(t,e,i){return new Promise((function(n,r){(null==i?void 0:i.audioLoadMode)!==u9.DOM_AUDIO&&R9.support?O9.loadOneShotAudio(t,e).then((function(t){n(new L9(t))})).catch(r):(R9.support||tt(5201),b9.loadOneShotAudio(t,e).then((function(t){n(new L9(t))})).catch(r))}))},e.getPCMData=function(t){return this._player.getPCMData(t)},e.seek=function(t){return this._player.seek(t)},e.play=function(){return this._player.play()},e.pause=function(){return this._player.pause()},e.stop=function(){return this._player.stop()},e.onInterruptionBegin=function(t){this._player.onInterruptionBegin(t)},e.offInterruptionBegin=function(t){this._player.offInterruptionBegin(t)},e.onInterruptionEnd=function(t){this._player.onInterruptionEnd(t)},e.offInterruptionEnd=function(t){this._player.offInterruptionEnd(t)},e.onEnded=function(t){this._player.onEnded(t)},e.offEnded=function(t){this._player.offEnded(t)},n(t,[{key:"src",get:function(){return this._player.src}},{key:"type",get:function(){return this._player.type}},{key:"state",get:function(){return this._player.state}},{key:"loop",get:function(){return this._player.loop},set:function(t){this._player.loop=t}},{key:"volume",get:function(){return this._player.volume},set:function(t){this._player.volume=t}},{key:"duration",get:function(){return this._player.duration}},{key:"currentTime",get:function(){return this._player.currentTime}},{key:"sampleRate",get:function(){return this._player.sampleRate}}]),t}();N9.maxAudioChannel=24;var F9=t("aE",eo("cc.AudioClip")(((M9=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._duration=B9&&B9(),e._loadMode=u9.UNKNOWN_AUDIO,e._meta=null,e._player=null,e}s(e,t);var i=e.prototype;return i.destroy=function(){var e,i=t.prototype.destroy.call(this);return null===(e=this._player)||void 0===e||e.destroy(),this._player=null,this._meta&&(this._meta.player=null),i},i.validate=function(){return!!this._meta},i.getDuration=function(){return this._duration?this._duration:this._meta?this._meta.duration:0},i.getCurrentTime=function(){return this._player?this._player.currentTime:0},i.getVolume=function(){return this._player?this._player.volume:0},i.getLoop=function(){return!!this._player&&this._player.loop},i.setCurrentTime=function(t){var e;null===(e=this._player)||void 0===e||e.seek(t).catch((function(){}))},i.setVolume=function(t){this._player&&(this._player.volume=t)},i.setLoop=function(t){this._player&&(this._player.loop=t)},i.play=function(){var t;null===(t=this._player)||void 0===t||t.play().catch((function(){}))},i.pause=function(){var t;null===(t=this._player)||void 0===t||t.pause().catch((function(){}))},i.stop=function(){var t;null===(t=this._player)||void 0===t||t.stop().catch((function(){}))},i.playOneShot=function(t){void 0===t&&(t=1),this._nativeAsset&&N9.loadOneShotAudio(this._nativeAsset.url,t).then((function(t){t.play()})).catch((function(){}))},n(e,[{key:"duration",set:function(t){this._duration=t}},{key:"_nativeAsset",get:function(){return this._meta},set:function(t){this._meta=t,t?(this._loadMode=t.type,this._player=t.player):(this._meta=null,this._loadMode=u9.UNKNOWN_AUDIO,this._duration=0)}},{key:"_nativeDep",get:function(){return{uuid:this._uuid,audioLoadMode:this.loadMode,ext:this._native,__isNative__:!0}}},{key:"loadMode",get:function(){return this._loadMode}},{key:"state",get:function(){return this._player?this._player.state:l9.INIT}}]),e}(vd)).AudioType=u9,B9=ja((D9=M9).prototype,"_duration",[lo],(function(){return 0})),m(D9.prototype,"_nativeDep",[jo],Object.getOwnPropertyDescriptor(D9.prototype,"_nativeDep"),D9.prototype),I9=D9))||I9);function k9(t,e,i){N9.load(t,{audioLoadMode:e.audioLoadMode}).then((function(e){var n={player:e,url:t,duration:e.duration,type:e.type};i(null,n)})).catch((function(t){i(t)}))}function G9(t,e,i,n){var r=new F9;r._nativeUrl=t,r._nativeAsset=e,r.duration=e.duration,n(null,r)}S.AudioClip=F9,zS.register({".mp3":k9,".ogg":k9,".wav":k9,".m4a":k9}),tT.register({".mp3":G9,".ogg":G9,".wav":G9,".m4a":G9});var V9,U9,z9,H9,W9,X9,j9,Y9,q9,K9,Q9,Z9,J9=new(function(){function t(){this._oneShotAudioInfoList=[],this._audioPlayerInfoList=[]}var e=t.prototype;return e._findIndex=function(t,e){return t.findIndex((function(t){return t.audio===e}))},e._tryAddPlaying=function(t,e){var i=this._findIndex(t,e);return i>-1?(t[i].playTime=performance.now(),!1):(t.push({audio:e,playTime:performance.now()}),!0)},e.addPlaying=function(t){t instanceof N9?this._tryAddPlaying(this._audioPlayerInfoList,t):this._tryAddPlaying(this._oneShotAudioInfoList,t)},e._tryRemovePlaying=function(t,e){var i=this._findIndex(t,e);return-1!==i&&(fe(t,i),!0)},e.removePlaying=function(t){t instanceof N9?this._tryRemovePlaying(this._audioPlayerInfoList,t):this._tryRemovePlaying(this._oneShotAudioInfoList,t)},e.discardOnePlayingIfNeeded=function(){var t;this._audioPlayerInfoList.length+this._oneShotAudioInfoList.length<N9.maxAudioChannel||(this._oneShotAudioInfoList.length>0?this._oneShotAudioInfoList.forEach((function(e){(!t||e.playTime<t.playTime)&&(t=e)})):this._audioPlayerInfoList.forEach((function(e){(!t||e.playTime<t.playTime)&&(t=e)})),t&&(t.audio.stop(),this.removePlaying(t.audio)))},e.pause=function(){this._oneShotAudioInfoList.forEach((function(t){t.audio.stop()})),this._audioPlayerInfoList.forEach((function(t){t.audio.pause().catch((function(){}))}))},e.resume=function(){this._audioPlayerInfoList.forEach((function(t){t.audio.play().catch((function(){}))}))},t}()),$9="audiosource-loaded";!function(t){t.STARTED="started",t.ENDED="ended"}(Q9||(Q9={})),function(t){t.PLAY="play",t.STOP="stop",t.PAUSE="pause",t.SEEK="seek"}(Z9||(Z9={}));var ttt=t("aD",(V9=eo("cc.AudioSource"),U9=Lo(F9),z9=Lo(F9),V9(((K9=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._clip=X9&&X9(),e._player=null,e._hasRegisterListener=!1,e._loop=j9&&j9(),e._playOnAwake=Y9&&Y9(),e._volume=q9&&q9(),e._cachedCurrentTime=-1,e._operationsBeforeLoading=[],e._isLoaded=!1,e._lastSetClip=null,e}s(e,t);var i=e.prototype;return i._resetPlayer=function(){this._player&&(J9.removePlaying(this._player),this._unregisterListener(),this._player.destroy(),this._player=null)},i._syncPlayer=function(){var t=this,e=this._clip;if(this._lastSetClip!==e)return e?void(e._nativeAsset?(this._isLoaded=!1,this._lastSetClip=e,this._operationsBeforeLoading.length=0,N9.load(e._nativeAsset.url,{audioLoadMode:e.loadMode}).then((function(i){var n;t._lastSetClip===e?(t._isLoaded=!0,t._resetPlayer(),t._player=i,t._syncStates(),null===(n=t.node)||void 0===n||n.emit($9)):i.destroy()})).catch((function(){}))):console.error("Invalid audio clip")):(this._lastSetClip=null,void this._resetPlayer())},i._registerListener=function(){var t=this;if(!this._hasRegisterListener&&this._player){var e=this._player;e.onEnded((function(){var i;J9.removePlaying(e),null===(i=t.node)||void 0===i||i.emit(Q9.ENDED,t)})),e.onInterruptionBegin((function(){J9.removePlaying(e)})),e.onInterruptionEnd((function(){t._player===e&&J9.addPlaying(e)})),this._hasRegisterListener=!0}},i._unregisterListener=function(){this._player&&this._hasRegisterListener&&(this._player.offEnded(),this._player.offInterruptionBegin(),this._player.offInterruptionEnd(),this._hasRegisterListener=!1)},i.onLoad=function(){this._syncPlayer()},i.onEnable=function(){this._playOnAwake&&!this.playing&&this.play()},i.onDisable=function(){var t=this._getRootNode();null!=t&&t._persistNode||this.pause()},i.onDestroy=function(){this.stop(),this.clip=null},i.getPCMData=function(t){var e=this;return new Promise((function(i){if(0!==t&&1!==t)return z("Only support channel index 0 or 1 to get buffer"),void i(void 0);var n;e._player?i(e._player.getPCMData(t)):null===(n=e.node)||void 0===n||n.once($9,(function(){var n;i(null===(n=e._player)||void 0===n?void 0:n.getPCMData(t))}))}))},i.getSampleRate=function(){var t=this;return new Promise((function(e){var i;t._player?e(t._player.sampleRate):null===(i=t.node)||void 0===i||i.once($9,(function(){e(t._player.sampleRate)}))}))},i._getRootNode=function(){for(var t,e,i=this.node,n=null===(t=i)||void 0===t||null===(e=t.parent)||void 0===e?void 0:e.parent;n;){var r,s,a;n=null===(s=i=null===(r=i)||void 0===r?void 0:r.parent)||void 0===s||null===(a=s.parent)||void 0===a?void 0:a.parent}return i},i.play=function(){var t=this;if(this._isLoaded||!this.clip){var e;this._registerListener(),J9.discardOnePlayingIfNeeded(),this.state===l9.PLAYING&&(null===(e=this._player)||void 0===e||e.stop().catch((function(){})));var i=this._player;i&&(i.play().then((function(){var e;null===(e=t.node)||void 0===e||e.emit(Q9.STARTED,t)})).catch((function(){J9.removePlaying(i)})),J9.addPlaying(i))}else this._operationsBeforeLoading.push({op:Z9.PLAY,params:null})},i.pause=function(){var t;this._isLoaded||!this.clip?null===(t=this._player)||void 0===t||t.pause().catch((function(){})):this._operationsBeforeLoading.push({op:Z9.PAUSE,params:null})},i.stop=function(){this._isLoaded||!this.clip?this._player&&(this._player.stop().catch((function(){})),J9.removePlaying(this._player)):this._operationsBeforeLoading.push({op:Z9.STOP,params:null})},i.playOneShot=function(t,e){var i;void 0===e&&(e=1),t._nativeAsset?N9.loadOneShotAudio(t._nativeAsset.url,this._volume*e,{audioLoadMode:t.loadMode}).then((function(t){i=t,J9.discardOnePlayingIfNeeded(),t.onEnd=function(){J9.removePlaying(t)},t.play(),J9.addPlaying(t)})).catch((function(){i&&J9.removePlaying(i)})):console.error("Invalid audio clip")},i._syncStates=function(){var t=this;this._player&&(this._player.loop=this._loop,this._player.volume=this._volume,this._operationsBeforeLoading.forEach((function(e){var i;e.op===Z9.SEEK?(t._cachedCurrentTime=e.params&&e.params[0],t._player&&t._player.seek(t._cachedCurrentTime).catch((function(){}))):null===(i=t[e.op])||void 0===i||i.call(t)})),this._operationsBeforeLoading.length=0)},n(e,[{key:"clip",get:function(){return this._clip},set:function(t){t!==this._clip&&(this._clip=t,this._syncPlayer())}},{key:"loop",get:function(){return this._loop},set:function(t){this._loop=t,this._player&&(this._player.loop=t)}},{key:"playOnAwake",get:function(){return this._playOnAwake},set:function(t){this._playOnAwake=t}},{key:"volume",get:function(){return this._volume},set:function(t){Number.isNaN(t)?z("illegal audio volume!"):(t=Fi(t,0,1),this._player?(this._player.volume=t,this._volume=this._player.volume):this._volume=t)}},{key:"currentTime",get:function(){return this._player?this._player.currentTime:this._cachedCurrentTime<0?0:this._cachedCurrentTime},set:function(t){var e;Number.isNaN(t)?z("illegal audio time!"):(t=Fi(t,0,this.duration),this._isLoaded||!this.clip?(this._cachedCurrentTime=t,null===(e=this._player)||void 0===e||e.seek(this._cachedCurrentTime).catch((function(){}))):this._operationsBeforeLoading.push({op:Z9.SEEK,params:[t]}))}},{key:"duration",get:function(){var t,e;return null!==(t=null===(e=this._clip)||void 0===e?void 0:e.getDuration())&&void 0!==t?t:this._player?this._player.duration:0}},{key:"state",get:function(){return this._player?this._player.state:l9.INIT}},{key:"playing",get:function(){return this.state===e.AudioState.PLAYING}}],[{key:"maxAudioChannel",get:function(){return N9.maxAudioChannel}}]),e}(mp)).AudioState=l9,K9.EventType=Q9,X9=ja((W9=K9).prototype,"_clip",[U9],(function(){return null})),j9=ja(W9.prototype,"_loop",[lo],(function(){return!1})),Y9=ja(W9.prototype,"_playOnAwake",[lo],(function(){return!0})),q9=ja(W9.prototype,"_volume",[lo],(function(){return 1})),m(W9.prototype,"clip",[z9],Object.getOwnPropertyDescriptor(W9.prototype,"clip"),W9.prototype),H9=W9))||H9));ut(F9,"AudioClip",[{name:"PlayingState",newName:"AudioState",target:ttt,targetName:"AudioSource"}]),ct(F9.prototype,"AudioClip.prototype",["state","play","pause","stop","playOneShot","setCurrentTime","setVolume","setLoop","getCurrentTime","getVolume","getLoop"].map((function(t){return{name:t,suggest:"please use AudioSource.prototype."+t+" instead"}}))),S.AudioSourceComponent=ttt,ne(ttt,"cc.AudioSourceComponent"),S.log=U,S.warn=z,S.error=H,S.assert=W,S._throw=Y,S.logID=Q,S.warnID=tt,S.errorID=it,S.assertID=st,S.debug=dt,S.path={join:ea,extname:ia,mainFileName:na,basename:ra,dirname:sa,changeExtname:aa,changeBasename:oa,_normalize:ha,stripSep:ua,get sep(){return la()}};var ett,itt,ntt=t("ej",function(){function t(t){this._pool=[],this.poolHandlerComp=t}var e=t.prototype;return e.size=function(){return this._pool.length},e.clear=function(){for(var t=this._pool.length,e=0;e<t;++e)this._pool[e].destroy();this._pool.length=0},e.put=function(t){if(t&&-1===this._pool.indexOf(t)){t.removeFromParent();var e=this.poolHandlerComp?t.getComponent(this.poolHandlerComp):null;e&&e.unuse&&e.unuse(),this._pool.push(t)}},e.get=function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];var n=this._pool.length-1;if(n<0)return null;var r=this._pool[n];this._pool.length=n;var s=this.poolHandlerComp?r.getComponent(this.poolHandlerComp):null;return s&&s.reuse&&s.reuse(arguments),r},t}());S.NodePool=ntt;var rtt,stt=null!==(ett=globalThis.jsb)&&void 0!==ett?ett:{};function att(t,e){t.s(e.name),t.n(e.type),t.n(e.count)}function ott(t,e){e.name=t.s(),e.type=t.n(),e.count=t.n()}function htt(t,e){t.n(e.set),t.n(e.binding),t.s(e.name),t.n(e.members.length);for(var i,n=f(e.members);!(i=n()).done;)att(t,i.value);t.n(e.count)}function utt(t,e){var i;e.set=t.n(),e.binding=t.n(),e.name=t.s(),i=t.n(),e.members.length=i;for(var n=0;n!==i;++n){var r=new __;ott(t,r),e.members[n]=r}e.count=t.n()}function ltt(t,e){e.binding=t.n(),e.descriptorType=t.n(),e.count=t.n(),e.stageFlags=t.n()}t("eB",{DownloaderHints:stt.DownloaderHints,Downloader:stt.Downloader,zipUtils:stt.zipUtils,fileUtils:stt.fileUtils,DebugRenderer:stt.DebugRenderer,copyTextToClipboard:null===(itt=stt.copyTextToClipboard)||void 0===itt?void 0:itt.bind(stt),garbageCollect:stt.garbageCollect,reflection:stt.reflection,bridge:stt.bridge,jsbBridgeWrapper:stt.jsbBridgeWrapper,AssetsManager:stt.AssetsManager,EventAssetsManager:stt.EventAssetsManager,Manifest:stt.Manifest,saveImageData:stt.saveImageData,process:stt.process,adpf:stt.adpf}),S.renderer=AN,function(t){t[t.PER_INSTANCE=0]="PER_INSTANCE",t[t.PER_BATCH=1]="PER_BATCH",t[t.PER_PHASE=2]="PER_PHASE",t[t.PER_PASS=3]="PER_PASS",t[t.COUNT=4]="COUNT"}(rtt||(rtt={}));var ctt,_tt,ftt,dtt,ptt,mtt={CONSTANTS:0,CBV:1,UAV:2,SRV:3,TABLE:4,SSV:5};!function(t){t[t.MANAGED=0]="MANAGED",t[t.MEMORYLESS=1]="MEMORYLESS",t[t.PERSISTENT=2]="PERSISTENT",t[t.EXTERNAL=3]="EXTERNAL",t[t.BACKBUFFER=4]="BACKBUFFER"}(ctt||(ctt={})),function(t){t[t.NONE=0]="NONE",t[t.OPAQUE=1]="OPAQUE",t[t.MASK=2]="MASK",t[t.BLEND=3]="BLEND",t[t.RENDER_OPAQUE=1]="RENDER_OPAQUE",t[t.RENDER_CUTOUT=2]="RENDER_CUTOUT",t[t.RENDER_TRANSPARENT=3]="RENDER_TRANSPARENT"}(_tt||(_tt={})),function(t){t[t.BUFFER=0]="BUFFER",t[t.TEXTURE1D=1]="TEXTURE1D",t[t.TEXTURE2D=2]="TEXTURE2D",t[t.TEXTURE3D=3]="TEXTURE3D"}(ftt||(ftt={})),function(t){t[t.NONE=0]="NONE",t[t.UNIFORM=1]="UNIFORM",t[t.INDIRECT=2]="INDIRECT",t[t.STORAGE=4]="STORAGE",t[t.SAMPLED=8]="SAMPLED",t[t.COLOR_ATTACHMENT=16]="COLOR_ATTACHMENT",t[t.DEPTH_STENCIL_ATTACHMENT=32]="DEPTH_STENCIL_ATTACHMENT",t[t.INPUT_ATTACHMENT=64]="INPUT_ATTACHMENT",t[t.SHADING_RATE=128]="SHADING_RATE",t[t.TRANSFER_SRC=256]="TRANSFER_SRC",t[t.TRANSFER_DST=512]="TRANSFER_DST"}(dtt||(dtt={})),function(t){t[t.NONE=0]="NONE",t[t.OPAQUE=1]="OPAQUE",t[t.MASK=2]="MASK",t[t.BLEND=4]="BLEND",t[t.OPAQUE_OBJECT=1]="OPAQUE_OBJECT",t[t.CUTOUT_OBJECT=2]="CUTOUT_OBJECT",t[t.TRANSPARENT_OBJECT=4]="TRANSPARENT_OBJECT",t[t.SHADOW_CASTER=8]="SHADOW_CASTER",t[t.UI=16]="UI",t[t.DEFAULT_LIGHTING=32]="DEFAULT_LIGHTING",t[t.VOLUMETRIC_LIGHTING=64]="VOLUMETRIC_LIGHTING",t[t.CLUSTERED_LIGHTING=128]="CLUSTERED_LIGHTING",t[t.PLANAR_SHADOW=256]="PLANAR_SHADOW",t[t.GEOMETRY=512]="GEOMETRY",t[t.PROFILER=1024]="PROFILER",t[t.DRAW_INSTANCING=2048]="DRAW_INSTANCING",t[t.DRAW_NON_INSTANCING=4096]="DRAW_NON_INSTANCING",t[t.REFLECTION_PROBE=8192]="REFLECTION_PROBE",t[t.GPU_DRIVEN=16384]="GPU_DRIVEN",t[t.NON_BUILTIN=32768]="NON_BUILTIN",t[t.ALL=4294967295]="ALL"}(ptt||(ptt={}));var gtt,vtt={NONE:0,DEFAULT:1,CLUSTERED:2},ytt={RENDER_TARGET:0,DEPTH_STENCIL:1,SHADING_RATE:2};!function(t){t[t.READ=0]="READ",t[t.READ_WRITE=1]="READ_WRITE",t[t.WRITE=2]="WRITE"}(gtt||(gtt={}));var Stt={NONE:0,FLOAT_TYPE:1,INT_TYPE:2},Ttt=function(){function t(t,e,i,n){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=!1),void 0===n&&(n=null),this.light=t,this.probe=n,this.level=e,this.culledByLight=i}return t.prototype.reset=function(t,e,i,n){this.light=t,this.probe=n,this.level=e,this.culledByLight=i},t}(),Att={UNIFORM_BUFFER:0,DYNAMIC_UNIFORM_BUFFER:1,SAMPLER_TEXTURE:2,SAMPLER:3,TEXTURE:4,STORAGE_BUFFER:5,DYNAMIC_STORAGE_BUFFER:6,STORAGE_IMAGE:7,INPUT_ATTACHMENT:8},btt=function(){function t(t){void 0===t&&(t=nc.UNKNOWN),this.count=1,this.type=t}return t.prototype.reset=function(t){this.type=t,this.count=1},t}(),Ett=function(){function t(){this.descriptors=new Map,this.uniformBlocks=new Map,this.capacity=0,this.count=0}return t.prototype.reset=function(){this.descriptors.clear(),this.uniformBlocks.clear(),this.capacity=0,this.count=0},t}(),Ctt=function(){function t(){this.descriptorNames=[],this.uniformBlockNames=[],this.descriptors=[],this.uniformBlocks=[],this.capacity=0,this.count=0}return t.prototype.reset=function(){this.descriptorNames.length=0,this.uniformBlockNames.length=0,this.descriptors.length=0,this.uniformBlocks.length=0,this.capacity=0,this.count=0},t}(),xtt=function(t,e,i,n){void 0===t&&(t=rtt.PER_INSTANCE),void 0===e&&(e=mtt.CONSTANTS),void 0===i&&(i=Att.UNIFORM_BUFFER),void 0===n&&(n=Tc.NONE),this.updateFrequency=t,this.parameterType=e,this.descriptorType=i,this.visibility=n},wtt={NONE:0,COLOR:1,DEPTH:2,STENCIL:4},Rtt=function(){function t(t,e,i,n,r){void 0===t&&(t=""),void 0===e&&(e=""),void 0===i&&(i=wtt.NONE),void 0===n&&(n=Cc.SAMPLE_ZERO),void 0===r&&(r=Cc.SAMPLE_ZERO),this.source=t,this.target=e,this.resolveFlags=i,this.mode=n,this.mode1=r}return t.prototype.reset=function(t,e,i,n,r){this.source=t,this.target=e,this.resolveFlags=i,this.mode=n,this.mode1=r},t}(),Itt=function(){function t(t,e,i,n,r,s,a,o,h,u){void 0===t&&(t=""),void 0===e&&(e=""),void 0===i&&(i=4294967295),void 0===n&&(n=4294967295),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=0),this.source=t,this.target=e,this.mipLevels=i,this.numSlices=n,this.sourceMostDetailedMip=r,this.sourceFirstSlice=s,this.sourcePlaneSlice=a,this.targetMostDetailedMip=o,this.targetFirstSlice=h,this.targetPlaneSlice=u}return t.prototype.reset=function(t,e,i,n,r,s,a,o,h,u){this.source=t,this.target=e,this.mipLevels=i,this.numSlices=n,this.sourceMostDetailedMip=r,this.sourceFirstSlice=s,this.sourcePlaneSlice=a,this.targetMostDetailedMip=o,this.targetFirstSlice=h,this.targetPlaneSlice=u},t}(),Dtt=function(){function t(t,e,i,n,r,s,a){void 0===t&&(t=new Uint8Array(0)),void 0===e&&(e=""),void 0===i&&(i=4294967295),void 0===n&&(n=4294967295),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),this.source=t,this.target=e,this.mipLevels=i,this.numSlices=n,this.targetMostDetailedMip=r,this.targetFirstSlice=s,this.targetPlaneSlice=a}return t.prototype.reset=function(t,e,i,n,r,s){this.target=t,this.mipLevels=e,this.numSlices=i,this.targetMostDetailedMip=n,this.targetFirstSlice=r,this.targetPlaneSlice=s},t}(),Btt=function(){function t(t,e,i,n,r,s,a){void 0===t&&(t=""),void 0===e&&(e=""),void 0===i&&(i=4294967295),void 0===n&&(n=4294967295),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),this.source=t,this.target=e,this.mipLevels=i,this.numSlices=n,this.targetMostDetailedMip=r,this.targetFirstSlice=s,this.targetPlaneSlice=a}return t.prototype.reset=function(t,e,i,n,r,s,a){this.source=t,this.target=e,this.mipLevels=i,this.numSlices=n,this.targetMostDetailedMip=r,this.targetFirstSlice=s,this.targetPlaneSlice=a},t}(),Mtt=function(){function t(){this.numRenderPasses=0,this.numManagedTextures=0,this.totalManagedTextures=0,this.numUploadBuffers=0,this.numUploadBufferViews=0,this.numFreeUploadBuffers=0,this.numFreeUploadBufferViews=0,this.numDescriptorSets=0,this.numFreeDescriptorSets=0,this.numInstancingBuffers=0,this.numInstancingUniformBlocks=0}return t.prototype.reset=function(){this.numRenderPasses=0,this.numManagedTextures=0,this.totalManagedTextures=0,this.numUploadBuffers=0,this.numUploadBufferViews=0,this.numFreeUploadBuffers=0,this.numFreeUploadBufferViews=0,this.numDescriptorSets=0,this.numFreeDescriptorSets=0,this.numInstancingBuffers=0,this.numInstancingUniformBlocks=0},t}();function Ptt(t){return new Rs((function(){return new t}),16)}var Ott,Ltt,Ntt,Ftt=function(){function t(){this.li=Ptt(Ttt),this.d=Ptt(btt),this.db=Ptt(Ett),this.dbf=Ptt(Ctt),this.dbi=Ptt(xtt),this.rp=Ptt(Rtt),this.cp=Ptt(Itt),this.up=Ptt(Dtt),this.mp=Ptt(Btt),this.ps=Ptt(Mtt)}var e=t.prototype;return e.reset=function(){this.li.reset(),this.d.reset(),this.db.reset(),this.dbf.reset(),this.dbi.reset(),this.rp.reset(),this.cp.reset(),this.up.reset(),this.mp.reset(),this.ps.reset()},e.createLightInfo=function(t,e,i,n){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=!1),void 0===n&&(n=null);var r=this.li.add();return r.reset(t,e,i,n),r},e.createDescriptor=function(t){void 0===t&&(t=nc.UNKNOWN);var e=this.d.add();return e.reset(t),e},e.createDescriptorBlock=function(){var t=this.db.add();return t.reset(),t},e.createDescriptorBlockFlattened=function(){var t=this.dbf.add();return t.reset(),t},e.createDescriptorBlockIndex=function(t,e,i,n){void 0===t&&(t=rtt.PER_INSTANCE),void 0===e&&(e=mtt.CONSTANTS),void 0===i&&(i=Att.UNIFORM_BUFFER),void 0===n&&(n=Tc.NONE);var r=this.dbi.add();return r.updateFrequency=t,r.parameterType=e,r.descriptorType=i,r.visibility=n,r},e.createResolvePair=function(t,e,i,n,r){void 0===t&&(t=""),void 0===e&&(e=""),void 0===i&&(i=wtt.NONE),void 0===n&&(n=Cc.SAMPLE_ZERO),void 0===r&&(r=Cc.SAMPLE_ZERO);var s=this.rp.add();return s.reset(t,e,i,n,r),s},e.createCopyPair=function(t,e,i,n,r,s,a,o,h,u){void 0===t&&(t=""),void 0===e&&(e=""),void 0===i&&(i=4294967295),void 0===n&&(n=4294967295),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),void 0===o&&(o=0),void 0===h&&(h=0),void 0===u&&(u=0);var l=this.cp.add();return l.reset(t,e,i,n,r,s,a,o,h,u),l},e.createUploadPair=function(t,e,i,n,r,s){void 0===t&&(t=""),void 0===e&&(e=4294967295),void 0===i&&(i=4294967295),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=0);var a=this.up.add();return a.reset(t,e,i,n,r,s),a},e.createMovePair=function(t,e,i,n,r,s,a){void 0===t&&(t=""),void 0===e&&(e=""),void 0===i&&(i=4294967295),void 0===n&&(n=4294967295),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0);var o=this.mp.add();return o.reset(t,e,i,n,r,s,a),o},e.createPipelineStatistics=function(){var t=this.ps.add();return t.reset(),t},t}();function ktt(t,e){t.n(e.type),t.n(e.count)}function Gtt(t,e){e.type=t.n(),e.count=t.n()}var Vtt=function(){function t(t,e){this.source=void 0,this.target=void 0,this.source=t,this.target=e}return t.prototype.equals=function(t){return this.source===t.source&&this.target===t.target},t}(),Utt=function(){function t(t){this.target=void 0,this.target=t}return t.prototype.equals=function(t){return this.target===t.target},t}();Ott=Symbol.iterator;var ztt=function(){function t(t,e){this.iterator=void 0,this.source=void 0,this.iterator=t,this.source=e}var e=t.prototype;return e[Ott]=function(){return this},e.next=function(){var t=this.iterator.next();return t.done?{value:void 0,done:!0}:{value:new Vtt(this.source,t.value.target),done:!1}},t}();Ltt=Symbol.iterator;var Htt=function(){function t(t,e){this.iterator=void 0,this.source=void 0,this.iterator=t,this.source=e}var e=t.prototype;return e[Ltt]=function(){return this},e.next=function(){var t=this.iterator.next();return t.done?{value:void 0,done:!0}:{value:new Vtt(t.value.target,this.source),done:!1}},t}();Ntt=Symbol.iterator;var Wtt=function(){function t(t,e){this.graph=void 0,this.iterator=void 0,this.graph=t,this.iterator=e}var e=t.prototype;return e[Ntt]=function(){return this},e.next=function(){var t=this.iterator.next();return t.done?{value:void 0,done:!0}:{value:this.graph.target(t.value),done:!1}},t}();function Xtt(t,e,i){var n=t.N,r=i.split("/");if(0===r.length)return e;var s=e,a=0;""===r[0]&&(s=n,++a);for(var o=a;o!==r.length;++o){var h=r[o];if(""!==h&&"."!==h)if(".."!==h){if((s=t.locateChild(s,h))===n)return n}else{if(s===n)return n;s=t.getParent(s)}}return s}var jtt,Ytt=function(){function t(){}return t.prototype.terminate=function(){return!1},t}();function qtt(t){var e=t.v().next();return e.done?t.N:e.value}!function(t){t[t.WHITE=0]="WHITE",t[t.GRAY=1]="GRAY",t[t.GREEN=2]="GREEN",t[t.RED=3]="RED",t[t.BLACK=4]="BLACK"}(jtt||(jtt={}));var Ktt=function(t,e,i){this.v=void 0,this.e=void 0,this.iter=void 0,this.v=t,this.e=e,this.iter=i};function Qtt(t,e,i,n,r){var s=null,a=null,o=new Array;for(n.put(e,jtt.GRAY),i.discoverVertex(e,t),a=t.oe(e),r.terminate(e,t)?o.push(new Ktt(e,null,null)):o.push(new Ktt(e,null,a));o.length;){var h=o.pop();if(e=h.v,s=h.e,a=h.iter,null!==s&&i.finishEdge(s,t),a)for(var u=a.next();!u.done;u=a.next()){var l=u.value,c=l.target;i.examineEdge(l,t);var _=n.get(c);if(_===jtt.WHITE){if(i.treeEdge(l,t),s=l,o.push(new Ktt(e,s,a)),e=c,n.put(e,jtt.GRAY),i.discoverVertex(e,t),a=t.oe(e),r.terminate(e,t))break}else _===jtt.GRAY?i.backEdge(l,t):i.forwardOrCrossEdge(l,t),i.finishEdge(l,t)}n.put(e,jtt.BLACK),i.finishVertex(e,t)}}function Ztt(t,e,i,n){if(void 0===n&&(n=null),null!==(n=n||qtt(t))&&0!==t.nv()){for(var r,s=f(t.v());!(r=s()).done;){var a=r.value;i.put(a,jtt.WHITE),e.initializeVertex(a,t)}var o=new Ytt;n!==qtt(t)&&(e.startVertex(n,t),Qtt(t,n,e,i,o));for(var h,u=f(t.v());!(h=u()).done;){var l=h.value;i.get(l)===jtt.WHITE&&(e.startVertex(l,t),Qtt(t,l,e,i,o))}}}var Jtt=function(){function t(){}var e=t.prototype;return e.initializeVertex=function(){},e.startVertex=function(){},e.discoverVertex=function(){},e.examineEdge=function(){},e.treeEdge=function(){},e.backEdge=function(){},e.forwardOrCrossEdge=function(){},e.finishEdge=function(){},e.finishVertex=function(){},t}(),$tt=function(){function t(t){this.g=void 0,this.g=t,this.N=t.N}var e=t.prototype;return e.edge=function(t,e){return this.g.reference(t,e)},e.source=function(t){return this.g.parent(t)},e.target=function(t){return this.g.child(t)},e.oe=function(t){return this.g.children(t)},e.od=function(t){return this.g.numChildren(t)},e.v=function(){return this.g.v()},e.nv=function(){return this.g.nv()},t}(),tet=function(){function t(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),this.x=t,this.y=e,this.z=i,this.w=n}return t.prototype.reset=function(t,e,i,n){this.x=t,this.y=e,this.z=i,this.w=n},t}(),eet=function(){function t(t,e,i,n,r,s,a,o){void 0===t&&(t=""),void 0===e&&(e=gtt.WRITE),void 0===i&&(i=ytt.RENDER_TARGET),void 0===n&&(n=Ac.LOAD),void 0===r&&(r=bc.STORE),void 0===s&&(s=Fc.ALL),void 0===a&&(a=new t_),void 0===o&&(o=Tc.NONE),this.slotName1="",this.slotID=0,this.slotName=t,this.accessType=e,this.attachmentType=i,this.loadOp=n,this.storeOp=r,this.clearFlags=s,this.clearColor=a,this.shaderStageFlags=o}return t.prototype.reset=function(t,e,i,n,r,s,a){this.slotName=t,this.slotName1="",this.accessType=e,this.attachmentType=i,this.loadOp=n,this.storeOp=r,this.clearFlags=s,this.clearColor.reset(),this.slotID=0,this.shaderStageFlags=a},t}(),iet=function(){function t(t,e,i,n,r,s){void 0===t&&(t=""),void 0===e&&(e=gtt.READ),void 0===i&&(i=Fc.NONE),void 0===n&&(n=Stt.NONE),void 0===r&&(r=new tet),void 0===s&&(s=Tc.NONE),this.plane=0,this.name=t,this.accessType=e,this.clearFlags=i,this.clearValueType=n,this.clearValue=r,this.shaderStageFlags=s}return t.prototype.reset=function(t,e,i,n,r){this.name=t,this.accessType=e,this.plane=0,this.clearFlags=i,this.clearValueType=n,this.clearValue.reset(0,0,0,0),this.shaderStageFlags=r},t}(),net=function(){function t(){this.dimension=ftt.BUFFER,this.alignment=0,this.width=0,this.height=0,this.depthOrArraySize=0,this.mipLevels=0,this.format=ec.UNKNOWN,this.sampleCount=_c.X1,this.textureFlags=lc.NONE,this.flags=dtt.NONE,this.viewType=hc.TEX2D}return t.prototype.reset=function(){this.dimension=ftt.BUFFER,this.alignment=0,this.width=0,this.height=0,this.depthOrArraySize=0,this.mipLevels=0,this.format=ec.UNKNOWN,this.sampleCount=_c.X1,this.textureFlags=lc.NONE,this.flags=dtt.NONE,this.viewType=hc.TEX2D},t}(),ret=function(){function t(t){void 0===t&&(t=ctt.MANAGED),this.residency=t}return t.prototype.reset=function(t){this.residency=t},t}(),set=function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=!1),this.renderWindow=null,this.currentID=0,this.numBackBuffers=0,this.generation=4294967295,this.swapchain=t,this.isDepthStencil=e}return t.prototype.reset=function(t,e){this.swapchain=t,this.renderWindow=null,this.currentID=0,this.numBackBuffers=0,this.generation=4294967295,this.isDepthStencil=e},t}(),aet=function(){function t(){this.states=Ec.NONE}return t.prototype.reset=function(){this.states=Ec.NONE},t}(),oet=function(){function t(t){void 0===t&&(t=null),this.fenceValue=0,this.buffer=t}return t.prototype.reset=function(t){this.buffer=t,this.fenceValue=0},t}(),het=function(){function t(t){void 0===t&&(t=null),this.fenceValue=0,this.buffer=t}return t.prototype.reset=function(t){this.buffer=t,this.fenceValue=0},t}(),uet=function(){function t(t){void 0===t&&(t=null),this.fenceValue=0,this.texture=t}return t.prototype.reset=function(t){this.texture=t,this.fenceValue=0},t}(),cet=function(){function t(t){void 0===t&&(t=null),this.fenceValue=0,this.texture=t}return t.prototype.reset=function(t){this.texture=t,this.fenceValue=0},t}(),_et=function(){function t(){this.unused=0}return t.prototype.reset=function(){this.unused=0},t}(),fet=function(){function t(){this.rasterViews=new Map,this.computeViews=new Map,this.resolvePairs=[]}return t.prototype.reset=function(){this.rasterViews.clear(),this.computeViews.clear(),this.resolvePairs.length=0},t}(),det=function(){this.o=[],this.i=[]},pet=function(){function t(){this.N=4294967295,this.x=[],this._names=[],this._subpasses=[]}var e=t.prototype;return e.edge=function(t,e){for(var i,n=f(this.x[t].o);!(i=n()).done;)if(e===i.value.target)return!0;return!1},e.source=function(t){return t.source},e.target=function(t){return t.target},e.oe=function(t){return new ztt(this.x[t].o.values(),t)},e.od=function(t){return this.x[t].o.length},e.ie=function(t){return new Htt(this.x[t].i.values(),t)},e.id=function(t){return this.x[t].i.length},e.d=function(t){return this.od(t)+this.id(t)},e.adj=function(t){return new Wtt(this,this.oe(t))},e.v=function(){return this.x.keys()},e.nv=function(){return this.x.length},e.ne=function(){for(var t,e=0,i=f(this.v());!(t=i()).done;){var n=t.value;e+=this.od(n)}return e},e.clear=function(){this._names.length=0,this._subpasses.length=0,this.x.length=0},e.addVertex=function(t,e){var i=new det,n=this.x.length;return this.x.push(i),this._names.push(t),this._subpasses.push(e),n},e.addEdge=function(t,e){return this.x[t].o.push(new Utt(e)),this.x[e].i.push(new Utt(t)),new Vtt(t,e)},e.vertexName=function(t){return this._names[t]},e.getName=function(t){return this._names[t]},e.setName=function(t,e){this._names[t]=e},e.getSubpass=function(t){return this._subpasses[t]},t}(),met=function(){function t(t,e,i){void 0===t&&(t=4294967295),void 0===e&&(e=1),void 0===i&&(i=0),this.rasterViews=new Map,this.computeViews=new Map,this.resolvePairs=[],this.viewport=new $c,this.showStatistics=!1,this.subpassID=t,this.count=e,this.quality=i}return t.prototype.reset=function(t,e,i){this.rasterViews.clear(),this.computeViews.clear(),this.resolvePairs.length=0,this.viewport.reset(),this.subpassID=t,this.count=e,this.quality=i,this.showStatistics=!1},t}(),get=function(){function t(t){void 0===t&&(t=4294967295),this.rasterViews=new Map,this.computeViews=new Map,this.subpassID=t}return t.prototype.reset=function(t){this.rasterViews.clear(),this.computeViews.clear(),this.subpassID=t},t}(),vet=function(){function t(){this.rasterViews=new Map,this.computeViews=new Map,this.attachmentIndexMap=new Map,this.textures=new Map,this.subpassGraph=new pet,this.width=0,this.height=0,this.count=1,this.quality=0,this.viewport=new $c,this.versionName="",this.version=0,this.hashValue=0,this.showStatistics=!1}return t.prototype.reset=function(){this.rasterViews.clear(),this.computeViews.clear(),this.attachmentIndexMap.clear(),this.textures.clear(),this.subpassGraph.clear(),this.width=0,this.height=0,this.count=1,this.quality=0,this.viewport.reset(),this.versionName="",this.version=0,this.hashValue=0,this.showStatistics=!1},t}(),yet=function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this.clearColors=[],this.clearDepth=0,this.clearStencil=0,this.renderPass=t,this.framebuffer=e}return t.prototype.reset=function(t,e){this.renderPass=t,this.framebuffer=e,this.clearColors.length=0,this.clearDepth=0,this.clearStencil=0},t}(),Tet=function(){function t(){this.format=ec.UNKNOWN}return t.prototype.reset=function(){this.format=ec.UNKNOWN},t}(),Aet=function(){function t(){this.textureView=null,this.format=ec.UNKNOWN,this.indexOrFirstMipLevel=0,this.numMipLevels=0,this.firstArraySlice=0,this.numArraySlices=0,this.firstPlane=0,this.numPlanes=0}return t.prototype.reset=function(){this.textureView=null,this.format=ec.UNKNOWN,this.indexOrFirstMipLevel=0,this.numMipLevels=0,this.firstArraySlice=0,this.numArraySlices=0,this.firstPlane=0,this.numPlanes=0},t}(),bet=function(t,e){this.o=[],this.i=[],this.t=void 0,this.j=void 0,this.id=t,this.object=e,this.t=t,this.j=e},Eet=function(){function t(){this.N=4294967295,this.x=[],this._names=[],this._descs=[],this._traits=[],this._states=[],this._samplerInfo=[],this._valueIndex=new Map,this.renderPasses=new Map,this.nextFenceValue=0,this.version=0}var e=t.prototype;return e.edge=function(t,e){for(var i,n=f(this.x[t].o);!(i=n()).done;)if(e===i.value.target)return!0;return!1},e.source=function(t){return t.source},e.target=function(t){return t.target},e.oe=function(t){return new ztt(this.x[t].o.values(),t)},e.od=function(t){return this.x[t].o.length},e.ie=function(t){return new Htt(this.x[t].i.values(),t)},e.id=function(t){return this.x[t].i.length},e.d=function(t){return this.od(t)+this.id(t)},e.adj=function(t){return new Wtt(this,this.oe(t))},e.v=function(){return this.x.keys()},e.nv=function(){return this.x.length},e.ne=function(){for(var t,e=0,i=f(this.v());!(t=i()).done;){var n=t.value;e+=this.od(n)}return e},e.clear=function(){this.renderPasses.clear(),this.nextFenceValue=0,this.version=0,this._valueIndex.clear(),this._names.length=0,this._descs.length=0,this._traits.length=0,this._states.length=0,this._samplerInfo.length=0,this.x.length=0},e.addVertex=function(t,e,i,n,r,s,a,o){void 0===o&&(o=4294967295);var h=new bet(t,e),u=this.x.length;return this.x.push(h),this._names.push(i),this._descs.push(n),this._traits.push(r),this._states.push(s),this._samplerInfo.push(a),this._valueIndex.set(i,u),4294967295!==o&&this.addEdge(o,u),u},e.addEdge=function(t,e){return this.x[t].o.push(new Utt(e)),this.x[e].i.push(new Utt(t)),new Vtt(t,e)},e.vertexName=function(t){return this._names[t]},e.getName=function(t){return this._names[t]},e.setName=function(t,e){this._names[t]=e},e.getDesc=function(t){return this._descs[t]},e.getTraits=function(t){return this._traits[t]},e.getStates=function(t){return this._states[t]},e.getSampler=function(t){return this._samplerInfo[t]},e.h=function(t,e){return this.x[e].t===t},e.w=function(t){return this.x[t].t},e.object=function(t){return this.x[t].j},e.value=function(t,e){if(this.x[e].t===t)return this.x[e].j;throw Error("value id not match")},e.visitVertex=function(t,e){var i=this.x[e];switch(i.t){case 0:return t.managed(i.j);case 1:return t.managedBuffer(i.j);case 2:return t.managedTexture(i.j);case 3:return t.persistentBuffer(i.j);case 4:return t.persistentTexture(i.j);case 5:return t.framebuffer(i.j);case 6:return t.swapchain(i.j);case 7:return t.formatView(i.j);case 8:return t.subresourceView(i.j);default:throw Error("polymorphic type not found")}},e.j=function(t){return this.x[t].j},e.reference=function(t,e){for(var i,n=f(this.x[t].o);!(i=n()).done;)if(e===i.value.target)return!0;return!1},e.parent=function(t){return t.source},e.child=function(t){return t.target},e.children=function(t){return new ztt(this.x[t].o.values(),t)},e.numChildren=function(t){return this.x[t].o.length},e.getParent=function(t){if(4294967295===t)return 4294967295;var e=this.x[t].i;return 0===e.length?4294967295:e[0].target},e.addReference=function(t,e){return this.addEdge(t,e)},e.contains=function(t){return this._valueIndex.has(t)},e.vertex=function(t){return this._valueIndex.get(t)},e.find=function(t){var e=this._valueIndex.get(t);return void 0===e?4294967295:e},t}(),Cet=function(){function t(){this.computeViews=new Map,this.textures=new Map}return t.prototype.reset=function(){this.computeViews.clear(),this.textures.clear()},t}(),xet=function(){function t(){this.resolvePairs=[]}return t.prototype.reset=function(){this.resolvePairs.length=0},t}(),wet=function(){function t(){this.copyPairs=[],this.uploadPairs=[]}return t.prototype.reset=function(){this.copyPairs.length=0,this.uploadPairs.length=0},t}(),Ret=function(){function t(){this.movePairs=[]}return t.prototype.reset=function(){this.movePairs.length=0},t}(),Iet=function(){function t(){this.computeViews=new Map}return t.prototype.reset=function(){this.computeViews.clear()},t}(),Det=function(){function t(t,e,i){void 0===t&&(t=""),void 0===e&&(e=Fc.ALL),void 0===i&&(i=new t_),this.slotName=t,this.clearFlags=e,this.clearColor=i}return t.prototype.reset=function(t,e){this.slotName=t,this.clearFlags=e,this.clearColor.reset()},t}(),Bet=function(){function t(t,e,i){void 0===t&&(t=_tt.RENDER_OPAQUE),void 0===e&&(e=4294967295),void 0===i&&(i=4294967295),this.viewport=null,this.hint=t,this.phaseID=e,this.passLayoutID=i}return t.prototype.reset=function(t,e,i){this.hint=t,this.phaseID=e,this.passLayoutID=i,this.viewport=null},t}(),Met=function(){function t(t,e,i,n,r,s){void 0===t&&(t=null),void 0===e&&(e=null),void 0===i&&(i=ptt.NONE),void 0===n&&(n=new Ttt),void 0===r&&(r=1),void 0===s&&(s=null),this.scene=t,this.camera=e,this.light=n,this.flags=i,this.cullingFlags=r,this.shadingLight=s}return t.prototype.reset=function(t,e,i,n,r){this.scene=t,this.camera=e,this.light.reset(null,0,!1,null),this.flags=i,this.cullingFlags=n,this.shadingLight=r},t}(),Pet=function(){function t(t,e,i,n,r){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),this.material=t,this.passID=e,this.threadGroupCountX=i,this.threadGroupCountY=n,this.threadGroupCountZ=r}return t.prototype.reset=function(t,e,i,n,r){this.material=t,this.passID=e,this.threadGroupCountX=i,this.threadGroupCountY=n,this.threadGroupCountZ=r},t}(),Oet=function(){function t(t,e,i,n){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=ptt.NONE),void 0===n&&(n=null),this.material=t,this.passID=e,this.sceneFlags=i,this.camera=n}return t.prototype.reset=function(t,e,i,n){this.material=t,this.passID=e,this.sceneFlags=i,this.camera=n},t}(),Let=function(){function t(){this.constants=new Map,this.buffers=new Map,this.textures=new Map,this.samplers=new Map,this.custom=""}return t.prototype.reset=function(){this.constants.clear(),this.buffers.clear(),this.textures.clear(),this.samplers.clear(),this.custom=""},t}(),Net=10,Fet=function(t,e){this.o=[],this.i=[],this.c=[],this.p=[],this.t=void 0,this.j=void 0,this.id=t,this.object=e,this.t=t,this.j=e},ket=function(){function t(){this.N=4294967295,this.x=[],this._names=[],this._layoutNodes=[],this._data=[],this._valid=[],this.index=new Map,this.sortedVertices=[]}var e=t.prototype;return e.edge=function(t,e){for(var i,n=f(this.x[t].o);!(i=n()).done;)if(e===i.value.target)return!0;return!1},e.source=function(t){return t.source},e.target=function(t){return t.target},e.oe=function(t){return new ztt(this.x[t].o.values(),t)},e.od=function(t){return this.x[t].o.length},e.ie=function(t){return new Htt(this.x[t].i.values(),t)},e.id=function(t){return this.x[t].i.length},e.d=function(t){return this.od(t)+this.id(t)},e.adj=function(t){return new Wtt(this,this.oe(t))},e.v=function(){return this.x.keys()},e.nv=function(){return this.x.length},e.ne=function(){for(var t,e=0,i=f(this.v());!(t=i()).done;){var n=t.value;e+=this.od(n)}return e},e.clear=function(){this.index.clear(),this.sortedVertices.length=0,this._names.length=0,this._layoutNodes.length=0,this._data.length=0,this._valid.length=0,this.x.length=0},e.addVertex=function(t,e,i,n,r,s,a){void 0===a&&(a=4294967295);var o=new Fet(t,e),h=this.x.length;return this.x.push(o),this._names.push(i),this._layoutNodes.push(n),this._data.push(r),this._valid.push(s),4294967295!==a&&(this.x[a].c.push(new Utt(h)),o.p.push(new Utt(a))),h},e.addEdge=function(t,e){return this.x[t].o.push(new Utt(e)),this.x[e].i.push(new Utt(t)),new Vtt(t,e)},e.vertexName=function(t){return this._names[t]},e.getName=function(t){return this._names[t]},e.setName=function(t,e){this._names[t]=e},e.getLayout=function(t){return this._layoutNodes[t]},e.setLayout=function(t,e){this._layoutNodes[t]=e},e.getData=function(t){return this._data[t]},e.getValid=function(t){return this._valid[t]},e.setValid=function(t,e){this._valid[t]=e},e.h=function(t,e){return this.x[e].t===t},e.w=function(t){return this.x[t].t},e.object=function(t){return this.x[t].j},e.value=function(t,e){if(this.x[e].t===t)return this.x[e].j;throw Error("value id not match")},e.visitVertex=function(t,e){var i=this.x[e];switch(i.t){case 0:return t.rasterPass(i.j);case 1:return t.rasterSubpass(i.j);case 2:return t.computeSubpass(i.j);case 3:return t.compute(i.j);case 4:return t.resolve(i.j);case 5:return t.copy(i.j);case 6:return t.move(i.j);case 7:return t.raytrace(i.j);case 8:return t.queue(i.j);case 9:return t.scene(i.j);case Net:return t.blit(i.j);case 11:return t.dispatch(i.j);case 12:return t.clear(i.j);case 13:return t.viewport(i.j);default:throw Error("polymorphic type not found")}},e.j=function(t){return this.x[t].j},e.reference=function(t,e){for(var i,n=f(this.x[t].c);!(i=n()).done;)if(e===i.value.target)return!0;return!1},e.parent=function(t){return t.source},e.child=function(t){return t.target},e.children=function(t){return new ztt(this.x[t].c.values(),t)},e.numChildren=function(t){return this.x[t].c.length},e.getParent=function(t){if(4294967295===t)return 4294967295;var e=this.x[t].p;return 0===e.length?4294967295:e[0].target},e.addReference=function(t,e){return this.x[t].c.push(new Utt(e)),this.x[e].p.push(new Utt(t)),new Vtt(t,e)},t}();function Get(t){return new Rs((function(){return new t}),16)}var Vet,Uet,zet=function(){function t(t){this.renderCommon=void 0,this.cv=Get(tet),this.rv=Get(eet),this.cv1=Get(iet),this.rd=Get(net),this.rt=Get(ret),this.rs=Get(set),this.rs1=Get(aet),this.mb=Get(oet),this.pb=Get(het),this.mt=Get(uet),this.pt=Get(cet),this.mr=Get(_et),this.s=Get(fet),this.sg=Get(pet),this.rs2=Get(met),this.cs=Get(get),this.rp=Get(vet),this.prpaf=Get(yet),this.fv=Get(Tet),this.sv=Get(Aet),this.rg=Get(Eet),this.cp=Get(Cet),this.rp1=Get(xet),this.cp1=Get(wet),this.mp=Get(Ret),this.rp2=Get(Iet),this.cv2=Get(Det),this.rq=Get(Bet),this.sd=Get(Met),this.d=Get(Pet),this.b=Get(Oet),this.rd1=Get(Let),this.rg1=Get(ket),this.renderCommon=t}var e=t.prototype;return e.reset=function(){this.cv.reset(),this.rv.reset(),this.cv1.reset(),this.rd.reset(),this.rt.reset(),this.rs.reset(),this.rs1.reset(),this.mb.reset(),this.pb.reset(),this.mt.reset(),this.pt.reset(),this.mr.reset(),this.s.reset(),this.sg.reset(),this.rs2.reset(),this.cs.reset(),this.rp.reset(),this.prpaf.reset(),this.fv.reset(),this.sv.reset(),this.rg.reset(),this.cp.reset(),this.rp1.reset(),this.cp1.reset(),this.mp.reset(),this.rp2.reset(),this.cv2.reset(),this.rq.reset(),this.sd.reset(),this.d.reset(),this.b.reset(),this.rd1.reset(),this.rg1.reset()},e.createClearValue=function(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0);var r=this.cv.add();return r.reset(t,e,i,n),r},e.createRasterView=function(t,e,i,n,r,s,a){void 0===t&&(t=""),void 0===e&&(e=gtt.WRITE),void 0===i&&(i=ytt.RENDER_TARGET),void 0===n&&(n=Ac.LOAD),void 0===r&&(r=bc.STORE),void 0===s&&(s=Fc.ALL),void 0===a&&(a=Tc.NONE);var o=this.rv.add();return o.reset(t,e,i,n,r,s,a),o},e.createComputeView=function(t,e,i,n,r){void 0===t&&(t=""),void 0===e&&(e=gtt.READ),void 0===i&&(i=Fc.NONE),void 0===n&&(n=Stt.NONE),void 0===r&&(r=Tc.NONE);var s=this.cv1.add();return s.reset(t,e,i,n,r),s},e.createResourceDesc=function(){var t=this.rd.add();return t.reset(),t},e.createResourceTraits=function(t){void 0===t&&(t=ctt.MANAGED);var e=this.rt.add();return e.reset(t),e},e.createRenderSwapchain=function(t,e){void 0===t&&(t=null),void 0===e&&(e=!1);var i=this.rs.add();return i.reset(t,e),i},e.createResourceStates=function(){var t=this.rs1.add();return t.reset(),t},e.createManagedBuffer=function(t){void 0===t&&(t=null);var e=this.mb.add();return e.reset(t),e},e.createPersistentBuffer=function(t){void 0===t&&(t=null);var e=this.pb.add();return e.reset(t),e},e.createManagedTexture=function(t){void 0===t&&(t=null);var e=this.mt.add();return e.reset(t),e},e.createPersistentTexture=function(t){void 0===t&&(t=null);var e=this.pt.add();return e.reset(t),e},e.createManagedResource=function(){var t=this.mr.add();return t.reset(),t},e.createSubpass=function(){var t=this.s.add();return t.reset(),t},e.createSubpassGraph=function(){var t=this.sg.add();return t.clear(),t},e.createRasterSubpass=function(t,e,i){void 0===t&&(t=4294967295),void 0===e&&(e=1),void 0===i&&(i=0);var n=this.rs2.add();return n.reset(t,e,i),n},e.createComputeSubpass=function(t){void 0===t&&(t=4294967295);var e=this.cs.add();return e.reset(t),e},e.createRasterPass=function(){var t=this.rp.add();return t.reset(),t},e.createPersistentRenderPassAndFramebuffer=function(t,e){void 0===t&&(t=null),void 0===e&&(e=null);var i=this.prpaf.add();return i.reset(t,e),i},e.createFormatView=function(){var t=this.fv.add();return t.reset(),t},e.createSubresourceView=function(){var t=this.sv.add();return t.reset(),t},e.createResourceGraph=function(){var t=this.rg.add();return t.clear(),t},e.createComputePass=function(){var t=this.cp.add();return t.reset(),t},e.createResolvePass=function(){var t=this.rp1.add();return t.reset(),t},e.createCopyPass=function(){var t=this.cp1.add();return t.reset(),t},e.createMovePass=function(){var t=this.mp.add();return t.reset(),t},e.createRaytracePass=function(){var t=this.rp2.add();return t.reset(),t},e.createClearView=function(t,e){void 0===t&&(t=""),void 0===e&&(e=Fc.ALL);var i=this.cv2.add();return i.reset(t,e),i},e.createRenderQueue=function(t,e,i){void 0===t&&(t=_tt.RENDER_OPAQUE),void 0===e&&(e=4294967295),void 0===i&&(i=4294967295);var n=this.rq.add();return n.reset(t,e,i),n},e.createSceneData=function(t,e,i,n,r){void 0===t&&(t=null),void 0===e&&(e=null),void 0===i&&(i=ptt.NONE),void 0===n&&(n=1),void 0===r&&(r=null);var s=this.sd.add();return s.reset(t,e,i,n,r),s},e.createDispatch=function(t,e,i,n,r){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0);var s=this.d.add();return s.reset(t,e,i,n,r),s},e.createBlit=function(t,e,i,n){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=ptt.NONE),void 0===n&&(n=null);var r=this.b.add();return r.reset(t,e,i,n),r},e.createRenderData=function(){var t=this.rd1.add();return t.reset(),t},e.createRenderGraph=function(){var t=this.rg1.add();return t.clear(),t},t}();!function(t){t[t.BASIC=0]="BASIC",t[t.STANDARD=1]="STANDARD"}(Vet||(Vet={})),function(t){t[t.NONE=0]="NONE",t[t.INPUT_DEPTH_STENCIL=1]="INPUT_DEPTH_STENCIL",t[t.INPUT_COLOR=2]="INPUT_COLOR",t[t.INPUT_COLOR_MRT=4]="INPUT_COLOR_MRT",t[t.HETEROGENEOUS_SAMPLE_COUNT=8]="HETEROGENEOUS_SAMPLE_COUNT"}(Uet||(Uet={}));var Het=function(){this.subpass=Uet.NONE},Wet=function(){function t(t,e,i){void 0===t&&(t=0),void 0===e&&(e=nc.UNKNOWN),void 0===i&&(i=1),this.descriptorID=t,this.type=e,this.count=i}return t.prototype.reset=function(t,e,i){this.descriptorID=t,this.type=e,this.count=i},t}(),Xet=function(){function t(t,e,i){void 0===t&&(t=Att.UNIFORM_BUFFER),void 0===e&&(e=Tc.NONE),void 0===i&&(i=0),this.offset=0,this.descriptors=[],this.type=t,this.visibility=e,this.capacity=i}return t.prototype.reset=function(t,e,i){this.type=t,this.visibility=e,this.offset=0,this.capacity=i,this.descriptors.length=0},t}(),jet=function(){function t(t,e,i,n,r){void 0===t&&(t=4294967295),void 0===e&&(e=0),void 0===i&&(i=[]),void 0===n&&(n=new Map),void 0===r&&(r=new Map),this.uniformBlockCapacity=0,this.samplerTextureCapacity=0,this.slot=t,this.capacity=e,this.descriptorBlocks=i,this.uniformBlocks=n,this.bindingMap=r}return t.prototype.reset=function(t,e){this.slot=t,this.capacity=e,this.uniformBlockCapacity=0,this.samplerTextureCapacity=0,this.descriptorBlocks.length=0,this.uniformBlocks.clear(),this.bindingMap.clear()},t}(),Yet=function(){function t(t,e,i){void 0===t&&(t=new jet),void 0===e&&(e=null),void 0===i&&(i=null),this.descriptorSetLayoutInfo=new O_,this.descriptorSetLayoutData=t,this.descriptorSetLayout=e,this.descriptorSet=i}return t.prototype.reset=function(t,e){this.descriptorSetLayoutData.reset(4294967295,0),this.descriptorSetLayoutInfo.reset(),this.descriptorSetLayout=t,this.descriptorSet=e},t}(),qet=function(){function t(){this.descriptorSets=new Map}return t.prototype.reset=function(){this.descriptorSets.clear()},t}(),Ket=function(){function t(){this.descriptorBindings=new Map}return t.prototype.reset=function(){this.descriptorBindings.clear()},t}(),Qet=function(){function t(){this.layoutData=new Map,this.bindingData=new Map}return t.prototype.reset=function(){this.layoutData.clear(),this.bindingData.clear()},t}(),Zet=function(){function t(){this.passes=[]}return t.prototype.reset=function(){this.passes.length=0},t}(),Jet=function(){function t(){this.techniques=new Map}return t.prototype.reset=function(){this.techniques.clear()},t}(),$et=function(){function t(){this.layout=new qet,this.pipelineLayout=null}return t.prototype.reset=function(){this.layout.reset(),this.pipelineLayout=null},t}(),tit=function(){function t(){this.descriptorVisibility=new Map}return t.prototype.reset=function(){this.descriptorVisibility.clear()},t}(),eit=function(){function t(){this.rootSignature="",this.shaderPrograms=[],this.shaderIndex=new Map,this.pipelineLayout=null}return t.prototype.reset=function(){this.rootSignature="",this.shaderPrograms.length=0,this.shaderIndex.clear(),this.pipelineLayout=null},t}(),iit=function(t,e){this.o=[],this.i=[],this.t=void 0,this.j=void 0,this.id=t,this.object=e,this.t=t,this.j=e},nit=function(){function t(){this.N=4294967295,this.x=[],this._names=[],this._updateFrequencies=[],this._layouts=[],this.valueNames=[],this.attributeIndex=new Map,this.constantIndex=new Map,this.shaderLayoutIndex=new Map,this.effects=new Map,this.constantMacros=""}var e=t.prototype;return e.edge=function(t,e){for(var i,n=f(this.x[t].o);!(i=n()).done;)if(e===i.value.target)return!0;return!1},e.source=function(t){return t.source},e.target=function(t){return t.target},e.oe=function(t){return new ztt(this.x[t].o.values(),t)},e.od=function(t){return this.x[t].o.length},e.ie=function(t){return new Htt(this.x[t].i.values(),t)},e.id=function(t){return this.x[t].i.length},e.d=function(t){return this.od(t)+this.id(t)},e.adj=function(t){return new Wtt(this,this.oe(t))},e.v=function(){return this.x.keys()},e.nv=function(){return this.x.length},e.ne=function(){for(var t,e=0,i=f(this.v());!(t=i()).done;){var n=t.value;e+=this.od(n)}return e},e.clear=function(){this.valueNames.length=0,this.attributeIndex.clear(),this.constantIndex.clear(),this.shaderLayoutIndex.clear(),this.effects.clear(),this.constantMacros="",this._names.length=0,this._updateFrequencies.length=0,this._layouts.length=0,this.x.length=0},e.addVertex=function(t,e,i,n,r,s){void 0===s&&(s=4294967295);var a=new iit(t,e),o=this.x.length;return this.x.push(a),this._names.push(i),this._updateFrequencies.push(n),this._layouts.push(r),4294967295!==s&&this.addEdge(s,o),o},e.addEdge=function(t,e){return this.x[t].o.push(new Utt(e)),this.x[e].i.push(new Utt(t)),new Vtt(t,e)},e.vertexName=function(t){return this._names[t]},e.getName=function(t){return this._names[t]},e.getUpdate=function(t){return this._updateFrequencies[t]},e.setUpdate=function(t,e){this._updateFrequencies[t]=e},e.getLayout=function(t){return this._layouts[t]},e.h=function(t,e){return this.x[e].t===t},e.w=function(t){return this.x[t].t},e.object=function(t){return this.x[t].j},e.value=function(t,e){if(this.x[e].t===t)return this.x[e].j;throw Error("value id not match")},e.visitVertex=function(t,e){var i=this.x[e];switch(i.t){case 0:return t.renderStage(i.j);case 1:return t.renderPhase(i.j);default:throw Error("polymorphic type not found")}},e.j=function(t){return this.x[t].j},e.reference=function(t,e){for(var i,n=f(this.x[t].o);!(i=n()).done;)if(e===i.value.target)return!0;return!1},e.parent=function(t){return t.source},e.child=function(t){return t.target},e.children=function(t){return new ztt(this.x[t].o.values(),t)},e.numChildren=function(t){return this.x[t].o.length},e.getParent=function(t){if(4294967295===t)return 4294967295;var e=this.x[t].i;return 0===e.length?4294967295:e[0].target},e.addReference=function(t,e){return this.addEdge(t,e)},e.locateChild=function(t,e){if(4294967295===t){for(var i,n=f(this.x.keys());!(i=n()).done;){var r=i.value;if(0===this.x[r].i.length&&this._names[r]===e)return r}return 4294967295}for(var s,a=f(this.x[t].o);!(s=a()).done;){var o=s.value.target;if(e===this._names[o])return o}return 4294967295},e.locate=function(t){return Xtt(this,4294967295,t)},e.locateRelative=function(t,e){return void 0===e&&(e=4294967295),Xtt(this,e,t)},e.path=function(t){return function(t,e){if(e===t.N)return"";for(var i=[];e!==t.N;e=t.getParent(e))i.push(t.vertexName(e));for(var n="",r=i.length;r-- >0;)n+="/",n+=i[r];return n}(this,t)},t}();function rit(t,e){e.descriptorID=t.n(),e.type=t.n(),e.count=t.n()}function sit(t,e){var i;e.type=t.n(),e.visibility=t.n(),e.offset=t.n(),e.capacity=t.n(),i=t.n(),e.descriptors.length=i;for(var n=0;n!==i;++n){var r=new Wet;rit(t,r),e.descriptors[n]=r}}function ait(t,e){e.slot=t.n(),e.capacity=t.n(),e.uniformBlockCapacity=t.n(),e.samplerTextureCapacity=t.n();var i=0;i=t.n(),e.descriptorBlocks.length=i;for(var n=0;n!==i;++n){var r=new Xet;sit(t,r),e.descriptorBlocks[n]=r}i=t.n();for(var s=0;s!==i;++s){var a=t.n(),o=new f_;utt(t,o),e.uniformBlocks.set(a,o)}i=t.n();for(var h=0;h!==i;++h){var u=t.n(),l=t.n();e.bindingMap.set(u,l)}}function oit(t,e){ait(t,e.descriptorSetLayoutData),function(t,e){var i=t.n();e.bindings.length=i;for(var n=0;n!==i;++n){var r=new P_;ltt(t,r),e.bindings[n]=r}}(t,e.descriptorSetLayoutInfo)}function hit(t,e){var i;i=t.n();for(var n=0;n!==i;++n){var r=t.n(),s=new Yet;oit(t,s),e.descriptorSets.set(r,s)}}function uit(t,e){var i;i=t.n();for(var n=0;n!==i;++n){var r=t.n(),s=t.n();e.descriptorBindings.set(r,s)}}function lit(t,e){var i=0;i=t.n();for(var n=0;n!==i;++n){var r=t.n(),s=new jet;ait(t,s),e.layoutData.set(r,s)}i=t.n();for(var a=0;a!==i;++a){var o=t.n(),h=new Ket;uit(t,h),e.bindingData.set(o,h)}}function cit(t,e){var i;i=t.n(),e.passes.length=i;for(var n=0;n!==i;++n){var r=new Qet;lit(t,r),e.passes[n]=r}}function _it(t,e){var i;i=t.n();for(var n=0;n!==i;++n){var r=t.s(),s=new Zet;cit(t,s),e.techniques.set(r,s)}}function fit(t,e){hit(t,e.layout)}function dit(t,e){var i;i=t.n();for(var n=0;n!==i;++n){var r=t.n(),s=t.n();e.descriptorVisibility.set(r,s)}}function pit(t,e){e.rootSignature=t.s();var i=0;i=t.n(),e.shaderPrograms.length=i;for(var n=0;n!==i;++n){var r=new $et;fit(t,r),e.shaderPrograms[n]=r}i=t.n();for(var s=0;s!==i;++s){var a=t.s(),o=t.n();e.shaderIndex.set(a,o)}}function mit(t,e){var i=t.n();t.n(),t.n(),t.n();for(var n=0;n!==i;++n){var r=t.n(),s=t.n(),a=t.s(),o=t.n(),h=new qet;switch(hit(t,h),r){case 0:var u=new tit;dit(t,u),e.addVertex(0,u,a,o,h,s);break;case 1:var l=new eit;pit(t,l),e.addVertex(1,l,a,o,h,s)}}var c=0;c=t.n(),e.valueNames.length=c;for(var _=0;_!==c;++_)e.valueNames[_]=t.s();c=t.n();for(var f=0;f!==c;++f){var d=t.s(),p=t.n();e.attributeIndex.set(d,p)}c=t.n();for(var m=0;m!==c;++m){var g=t.s(),v=t.n();e.constantIndex.set(g,v)}c=t.n();for(var y=0;y!==c;++y){var S=t.s(),T=t.n();e.shaderLayoutIndex.set(S,T)}c=t.n();for(var A=0;A!==c;++A){var b=t.s(),E=new Jet;_it(t,E),e.effects.set(b,E)}}var git,vit=function(){function t(t){this.colors=void 0,this.colors=new Array(t)}var e=t.prototype;return e.get=function(t){return this.colors[t]},e.put=function(t,e){this.colors[t]=e},t}();function yit(t){switch(t){case nc.BOOL:case nc.INT:case nc.UINT:case nc.FLOAT:return 1;case nc.INT2:case nc.FLOAT2:case nc.UINT2:case nc.BOOL2:return 2;case nc.FLOAT3:case nc.BOOL3:case nc.UINT3:case nc.INT3:return 3;case nc.BOOL4:case nc.FLOAT4:case nc.UINT4:case nc.INT4:case nc.MAT2:return 4;case nc.MAT2X3:case nc.MAT3X2:return 6;case nc.MAT2X4:case nc.MAT4X2:return 8;case nc.MAT3:return 9;case nc.MAT3X4:case nc.MAT4X3:return 12;case nc.MAT4:return 16;default:return 0}}function Sit(t,e){var i=Ac.CLEAR;return t&Fc.COLOR||e!==ytt.RENDER_TARGET||(i=t&nR?Ac.CLEAR:Ac.LOAD),(t&Fc.DEPTH_STENCIL)!==Fc.DEPTH_STENCIL&&e===ytt.DEPTH_STENCIL&&(t&Fc.DEPTH||(i=Ac.LOAD),t&Fc.STENCIL||(i=Ac.LOAD)),i}function Tit(t,e,i,n,r,s){void 0===n&&(n=null),void 0===r&&(r=0),void 0===s&&(s=void 0),s=s||new jc;var a=t?t.viewport:new jc(0,0,1,1),o=e,h=i;if(s.x=a.x*o,s.y=a.y*h,s.width=a.width*o,s.height=a.height*h,n)switch(n.type){case CR.DIRECTIONAL:var u=n;if(u.shadowFixedArea||u.csmLevel===jT.LEVEL_1)s.x=0,s.y=0,s.width=o,s.height=h;else{var l=S.director.root.device.capabilities.screenSpaceSignY;s.x=r%2*.5*o,s.y=l>0?.5*(1-Math.floor(r/2))*h:.5*Math.floor(r/2)*h,s.width=.5*o,s.height=.5*h}break;case CR.SPOT:s.x=0,s.y=0,s.width=o,s.height=h}return s}function Ait(t,e,i,n,r){var s="Camera"+r,a=i.renderArea(),o=a.x,h=a.y,u=i.camera,l="reflectionProbePassColor"+s,c="reflectionProbePassDS"+s;e.containsResource(l)||(e.addRenderWindow(l,ec.RGBA8,o,h,n),e.addDepthStencil(c,ec.DEPTH_STENCIL,o,h,ctt.EXTERNAL)),e.updateRenderWindow(l,n),e.updateDepthStencil(c,o,h);var _=e.addRenderPass(o,h,"default");_.name="ReflectionProbePass"+r,_.setViewport(new $c(0,0,o,h)),_.addRenderTarget(l,Sit(u.clearFlag,ytt.RENDER_TARGET),bc.STORE,new t_(u.clearColor.x,u.clearColor.y,u.clearColor.z,u.clearColor.w)),_.addDepthStencil(c,Sit(u.clearFlag,ytt.DEPTH_STENCIL),bc.STORE,u.clearDepth,u.clearStencil,u.clearFlag);var f=_.addQueue(_tt.RENDER_OPAQUE,"reflect-map"),d=new Ttt;d.probe=i,f.addSceneOfCamera(t,d,ptt.REFLECTION_PROBE|ptt.OPAQUE_OBJECT),function(t,e,i){var n=S.director.root.pipeline,r=i.pipelineSceneData,s=r.skybox;t.setMat4("cc_matView",e.matView),t.setMat4("cc_matViewInv",e.node.worldMatrix),t.setMat4("cc_matProj",e.matProj),t.setMat4("cc_matProjInv",e.matProjInv),t.setMat4("cc_matViewProj",e.matViewProj),t.setMat4("cc_matViewProjInv",e.matViewProjInv),t.setVec4("cc_cameraPos",new cn(e.position.x,e.position.y,e.position.z,n.getCombineSignY())),t.setVec4("cc_surfaceTransform",new cn(e.surfaceTransform,0,Math.cos(Vi(s.getRotationAngle())),Math.sin(Vi(s.getRotationAngle())))),t.setVec4("cc_screenScale",new cn(r.shadingScale,r.shadingScale,1/r.shadingScale,1/r.shadingScale)),t.setVec4("cc_exposure",new cn(e.exposure,1/e.exposure,r.isHDR?1:0,1/sR.standardExposureValue))}(f,u,e)}function bit(t,e,i){!function(t,e,i){i instanceof af?t.bindBuffer(e,i):i instanceof xf?t.bindTexture(e,i):i instanceof Ef&&t.bindSampler(e,i)}(t,e,i)}function Eit(t,e){for(var i,n=f(e.descriptorSetLayoutData.descriptorBlocks);!(i=n()).done;)for(var r=i.value,s=0;s!==r.descriptors.length;++s)if(t===r.descriptors[s].descriptorID)return r.offset+s;return-1}new Ra(0,0,0,.5,.5,.5),new Ra,function(t){t[t.NONE=0]="NONE",t[t.FXAA=1]="FXAA",t[t.FXAAHQ=2]="FXAAHQ"}(git||(git={})),new(function(){function t(){this.shadowEnabled=!1,this.mainLightShadowNames=new Array,this.spotLightShadowNames=new Array,this.validLights=[]}return t.prototype.reset=function(){this.shadowEnabled=!1,this.mainLightShadowNames.length=0,this.spotLightShadowNames.length=0,this.validLights.length=0},t}());var Cit=function(){function t(t,e){void 0===e&&(e=2),this.buffers=[],this.currBuffIdx=0,this.device=void 0,this.currUniform=void 0,this._root=void 0;var i=(this._root=S.director.root).device;this.device=i,this.currUniform=new Float32Array(t/4);for(var n=0;n<e;n++){var r=new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,t,t);this.buffers.push(this.device.createBuffer(r))}}var e=t.prototype;return e.getCurrentBuffer=function(){var t=S.director;return this.currBuffIdx=t.getTotalFrames()%this.buffers.length,this.buffers[this.currBuffIdx]},e.updateData=function(t){this.currUniform.set(t)},e.updateBuffer=function(t,e){var i=e.descriptorSet,n=this.getCurrentBuffer();n.update(this.currUniform),bit(i,t,n)},t}(),xit=new Map,wit=new Map,Rit=new Map;function Iit(t){var e=Rit.get(t);if(e)return e;var i=S.director.root.pipeline,n=i.layoutGraph.locateChild(i.layoutGraph.N,t),r=i.layoutGraph.getLayout(n).descriptorSets.get(rtt.PER_PASS);return Rit.set(t,r),r}function Dit(t,e,i,n){void 0===n&&(n="default"),function(t,e,i,n){var r=n.constants,s=n.samplers,a=n.textures,o=n.buffers,h=S.director.root.pipeline,u=h.layoutGraph,l=Iit(t);wit.clear();for(var c,_=function(){var n=c.value,r=n[0],s=n[1],a=Lit.get(r);if(a)kit(a,s,l,e,i);else for(var o,h=Array.from(u.constantIndex).find((function(t){return t[0],t[1]===r}))[0],_=f(u.attributeIndex);!(o=_()).done;){var d=o.value,p=d[0],m=d[1],g=Nit(p,t);if(g){var v=Mit(h,p,t);-1!==v?(Lit.set(r,new Oit),(a=Lit.get(r)).buffer=g,a.blockId=m,a.offset=v,kit(a,s,l,e,i)):Git(m,e,i,g,l)}}},d=f(r);!(c=d()).done;)_();for(var p,m=l.descriptorSet,g=f(a);!(p=g()).done;){var v=p.value,y=v[0],T=v[1],A=Eit(y,l);if(-1!==A){var b=m.getTexture(A);b&&T===h.defaultShadowTexture&&(b.gpuTexture||b.gpuTextureView&&b.gpuTextureView.gpuTexture)||bit(m,A,T)}}for(var E,C=f(s);!(E=C()).done;){var x=E.value,w=x[0],R=x[1],I=Eit(w,l);-1!==I&&(m.getSampler(I)&&R===h.defaultSampler||bit(m,I,R))}for(var D,B=f(wit);!(D=B()).done;){var M=D.value,P=M[0],O=M[1];xit.get(P).updateBuffer(O,l)}for(var L,N=f(o);!(L=N()).done;){var F=L.value,k=F[0],G=F[1],V=Eit(k,l);-1!==V&&(m.getBuffer(V)||bit(m,V,G))}m.update()}(n,e,i,t)}function Bit(t,e){var i=S.director.root.pipeline.layoutGraph,n=i.locateChild(4294967295,e),r=i.getLayout(n).descriptorSets.get(rtt.PER_PASS).descriptorSetLayoutData,s=i.attributeIndex.get(t);return r.uniformBlocks.get(s)}function Mit(t,e,i){var n=Bit(e,i);if(!n)return-1;for(var r,s=0,a=f(n.members);!(r=a()).done;){var o=r.value,h=yit(o.type);if(o.name===t)return s;s+=h*o.count}return-1}var Pit=new Map,Oit=function(){this.offset=-1,this.buffer=[],this.blockId=-1},Lit=new Map;function Nit(t,e){var i=Pit.get(t);if(i)return i;i=[],S.director.root.pipeline.layoutGraph;var n=0,r=Bit(t,e);if(!r)return null;for(var s,a=f(r.members);!(s=a()).done;){var o=s.value;n+=yit(o.type)*o.count}return i.length=n,i.fill(0),Pit.set(t,i),i}function Fit(t,e){var i=xit.get(t);i||(xit.set(t,new Cit(4*e.length,2)),i=xit.get(t)),i.updateData(e)}function kit(t,e,i,n,r){var s=t.blockId,a=t.buffer,o=function(t,e,i){var n=!1;if(i<0||i>t.length)return n;for(var r=Math.min(e.length,t.length-i),s=0;s<r;s++)t[i+s]!==e[s]&&(t[i+s]=e[s],n=!0);return n}(a,e,t.offset),h=Eit(s,i),u=i.descriptorSet;if(o||!u.getBuffer(h)&&-1!==h){var l=""+s+h+r+n;wit.set(l,h),Fit(l,a)}}function Git(t,e,i,n,r){var s=Eit(t,r);if(-1!==s){var a=""+t+s+i+e;wit.set(a,s),Fit(a,n)}}function Vit(t){return t+"-"}function Uit(t){return!!t}var zit=new cn,Hit=new gn,Wit=new t_,Xit=new Vn,jit=new Vn;function Yit(t,e,i,n){var r,s=S.director.root.pipeline,a=i.shadows,o=i.skybox,h=i.shadingScale;e&&(t.setMat4("cc_matView",e.matView),t.setMat4("cc_matViewInv",e.node.worldMatrix),t.setMat4("cc_matProj",e.matProj),t.setMat4("cc_matProjInv",e.matProjInv),t.setMat4("cc_matViewProj",e.matViewProj),t.setMat4("cc_matViewProjInv",e.matViewProjInv),zit.set(e.surfaceTransform,e.cameraUsage,Math.cos(Vi(o.getRotationAngle())),Math.sin(Vi(o.getRotationAngle()))),t.setVec4("cc_surfaceTransform",zit),zit.set(e.exposure,1/e.exposure,i.isHDR?1:0,1/sR.standardExposureValue),t.setVec4("cc_exposure",zit)),e?zit.set(e.position.x,e.position.y,e.position.z,s.getCombineSignY()):zit.set(0,0,0,s.getCombineSignY()),t.setVec4("cc_cameraPos",zit),zit.set(i.shadingScale,i.shadingScale,1/i.shadingScale,1/i.shadingScale),t.setVec4("cc_screenScale",zit);var u=n&&n.mainLight;if(u){var l=u.shadowEnabled&&a.type===WT.ShadowMap?1:0;zit.set(u.direction.x,u.direction.y,u.direction.z,l),t.setVec4("cc_mainLitDir",zit);var c=u.color.x,_=u.color.y,f=u.color.z;u.useColorTemperature&&(c*=u.colorTemperatureRGB.x,_*=u.colorTemperatureRGB.y,f*=u.colorTemperatureRGB.z);var d=u.illuminance;i.isHDR&&e&&(d*=e.exposure),zit.set(c,_,f,d),t.setVec4("cc_mainLitColor",zit)}else zit.set(0,0,1,0),t.setVec4("cc_mainLitDir",zit),zit.set(0,0,0,0),t.setVec4("cc_mainLitColor",zit);var p=i.ambient,m=p.skyColor;i.isHDR?m.w=p.skyIllum*(e?e.exposure:1):m.w=p.skyIllum,zit.set(m.x,m.y,m.z,m.w),t.setVec4("cc_ambientSky",zit),zit.set(p.groundAlbedo.x,p.groundAlbedo.y,p.groundAlbedo.z,o.envmap?null===(r=o.envmap)||void 0===r?void 0:r.mipmapLevel:1),t.setVec4("cc_ambientGround",zit);var g=i.fog,v=g.colorArray;zit.set(v.x,v.y,v.z,v.z),t.setVec4("cc_fogColor",zit),zit.set(g.fogStart,g.fogEnd,g.fogDensity,0),t.setVec4("cc_fogBase",zit),zit.set(g.fogTop,g.fogRange,g.fogAtten,0),t.setVec4("cc_fogAdd",zit),e&&(zit.set(e.nearClip,e.farClip,e.getClipSpaceMinz(),0),t.setVec4("cc_nearFar",zit),zit.set(e.viewport.x,e.viewport.y,h*e.window.width*e.viewport.z,h*e.window.height*e.viewport.w),t.setVec4("cc_viewPort",zit))}var qit=function(){function t(t,e,i,n,r,s){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=0),this.subModel=void 0,this.priority=void 0,this.hash=void 0,this.depth=void 0,this.shaderID=void 0,this.passIndex=void 0,this.subModel=t,this.priority=e,this.hash=i,this.depth=n,this.shaderID=r,this.passIndex=s}return t.prototype.update=function(t,e,i,n,r,s){void 0===t&&(t=null),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=0),void 0===s&&(s=0),this.subModel=t,this.priority=e,this.hash=i,this.depth=n,this.shaderID=r,this.passIndex=s},t}(),Kit=new Rs((function(){return new qit}),8),Qit="CC_USE_RGBE_OUTPUT";function Zit(t,e){for(var i=t.passes,n=0;n<i.length;n++)if(i[n].phaseID===e)return n;return-1}var Jit=function(){function t(){this.probeMap=new Array,this.defaultId=function(){var t=S.rendering;return t.getPhaseID(t.getPassID("default"),"default")}()}var e=t.prototype;return e.clear=function(){this.probeMap.length=0},e.applyMacro=function(){for(var t,e=f(this.probeMap);!(t=e()).done;){var i=t.value,n=[{name:Qit,value:!0}];i.patches&&(n=n.concat(i.patches)),i.onMacroPatchesStateChanged(n)}},e.removeMacro=function(){for(var t,e=f(this.probeMap);!(t=e()).done;){var i=t.value;if(i.patches){var n=i.patches.filter((function(t){return t.name!==Qit}));0===n.length?i.onMacroPatchesStateChanged(null):i.onMacroPatchesStateChanged(n)}}},e.addToProbeQueue=function(t,e){for(var i=t.subModels,n=0;n<i.length;n++){var r=i[n];if(!r.passes[0].blendState.targets[0].blend){var s=Zit(r,e),a=!0;s<0&&(s=Zit(r,e=this.defaultId),a=!1),s<0||a||this.probeMap.push(r)}}},t}();function $it(t,e,i,n){var r=S.director.root.pipeline,s=r.device,a=r.pipelineSceneData,o=a.shadows;if(o.type!==WT.Planar){var h=a.csmLayers,u=uy(s)?0:1,l=r.device.capabilities;switch(o.enabled&&o.type===WT.ShadowMap&&i&&i.node&&i.type===CR.DIRECTIONAL&&h.update(a,e),i.type){case CR.DIRECTIONAL:var c=i;if(o.enabled&&c&&c.shadowEnabled&&o.type===WT.ShadowMap){var _,f,d,p=.1,m=0,g=0;if(c.shadowFixedArea||c.csmLevel===jT.LEVEL_1)_=h.specialLayer.matShadowView,f=h.specialLayer.matShadowProj,d=h.specialLayer.matShadowViewProj,c.shadowFixedArea?(p=c.shadowNear,m=c.shadowFar,g=0):(p=.1,m=h.specialLayer.shadowCameraFar,g=1),zit.set(CR.DIRECTIONAL,u,c.shadowNormalBias,0),t.setVec4("cc_shadowLPNNInfo",zit);else{var v=h.layers[n];_=v.matShadowView,f=v.matShadowProj,d=v.matShadowViewProj,p=v.splitCameraNear,m=v.splitCameraFar,g=c.csmLevel}t.setMat4("cc_matLightView",_),zit.set(f.m10,f.m14,f.m11,f.m15),t.setVec4("cc_shadowProjDepthInfo",zit),zit.set(f.m00,f.m05,1/f.m00,1/f.m05),t.setVec4("cc_shadowProjInfo",zit),t.setMat4("cc_matLightViewProj",d),zit.set(p,m,0,1-c.shadowSaturation),t.setVec4("cc_shadowNFLSInfo",zit),zit.set(CR.DIRECTIONAL,u,c.shadowNormalBias,g),t.setVec4("cc_shadowLPNNInfo",zit),zit.set(o.size.x,o.size.y,c.shadowPcf,c.shadowBias),t.setVec4("cc_shadowWHPBInfo",zit)}break;case CR.SPOT:var y=i;if(o.enabled&&y&&y.shadowEnabled){Vn.invert(Xit,y.node.getWorldMatrix()),t.setMat4("cc_matLightView",Xit),Vn.perspective(jit,y.angle,1,.001,y.range,!0,l.clipSpaceMinZ,l.clipSpaceSignY,0);var T=jit.clone().invert(),A=jit.clone();Vn.multiply(Xit,jit,Xit),t.setMat4("cc_matLightViewProj",Xit),zit.set(.01,i.range,0,0),t.setVec4("cc_shadowNFLSInfo",zit),zit.set(o.size.x,o.size.y,y.shadowPcf,y.shadowBias),t.setVec4("cc_shadowWHPBInfo",zit),zit.set(CR.SPOT,u,y.shadowNormalBias,0),t.setVec4("cc_shadowLPNNInfo",zit),zit.set(A.m10,A.m14,A.m11,A.m15),t.setVec4("cc_shadowProjDepthInfo",zit),zit.set(T.m10,T.m14,T.m11,T.m15),t.setVec4("cc_shadowInvProjDepthInfo",zit),zit.set(A.m00,A.m05,1/A.m00,1/A.m05),t.setVec4("cc_shadowProjInfo",zit)}break;case CR.SPHERE:zit.set(o.size.x,o.size.y,1,0),t.setVec4("cc_shadowWHPBInfo",zit),zit.set(CR.SPHERE,u,0,0),t.setVec4("cc_shadowLPNNInfo",zit);break;case CR.POINT:zit.set(o.size.x,o.size.y,1,0),t.setVec4("cc_shadowWHPBInfo",zit),zit.set(CR.POINT,u,0,0),t.setVec4("cc_shadowLPNNInfo",zit)}Wit.set(o.shadowColor.x,o.shadowColor.y,o.shadowColor.z,o.shadowColor.w),t.setColor("cc_shadowColor",Wit)}}function tnt(t,e){var i=S.director,n=i.root.pipeline,r=n.device,s=i.getScene(),a=e&&e.scene?e.scene.mainLight:s?s.renderScene.mainLight:null,o=n.pipelineSceneData,h=o.shadows,u=o.csmLayers,l=o.csmSupported,c=uy(r)?0:1;if(a&&h.enabled){if(h.type===WT.ShadowMap){if(a.shadowEnabled){if(a.shadowFixedArea||a.csmLevel===jT.LEVEL_1||!l){var _=u.specialLayer.matShadowView,f=u.specialLayer.matShadowProj,d=u.specialLayer.matShadowViewProj,p=a.shadowNear,m=a.shadowFar;t.setMat4("cc_matLightView",_),zit.set(f.m10,f.m14,f.m11,f.m15),t.setVec4("cc_shadowProjDepthInfo",zit),zit.set(f.m00,f.m05,1/f.m00,1/f.m05),t.setVec4("cc_shadowProjInfo",zit),t.setMat4("cc_matLightViewProj",d),zit.set(p,m,0,1-a.shadowSaturation),t.setVec4("cc_shadowNFLSInfo",zit),zit.set(CR.DIRECTIONAL,c,a.shadowNormalBias,0),t.setVec4("cc_shadowLPNNInfo",zit)}else{for(var g=function(t,e){var i=t.size.x;switch(e.shadowPcf){case XT.HARD:return 0;case XT.SOFT:return 1/(.5*i);case XT.SOFT_2X:return 2/(.5*i);case XT.SOFT_4X:return 3/(.5*i)}return 0}(h,a),v=0;v<a.csmLevel;v++){var y=u.layers[v],T=y.matShadowView;zit.set(T.m00,T.m04,T.m08,g),t.setVec4("cc_csmViewDir0",zit,v),zit.set(T.m01,T.m05,T.m09,y.splitCameraNear),t.setVec4("cc_csmViewDir1",zit,v),zit.set(T.m02,T.m06,T.m10,y.splitCameraFar),t.setVec4("cc_csmViewDir2",zit,v);var A=y.csmAtlas;t.setVec4("cc_csmAtlas",A,v);var b=y.matShadowViewProj;t.setMat4("cc_matCSMViewProj",b,v);var E=y.matShadowProj;zit.set(E.m10,E.m14,E.m11,E.m15),t.setVec4("cc_csmProjDepthInfo",zit,v),zit.set(E.m00,E.m05,1/E.m00,1/E.m05),t.setVec4("cc_csmProjInfo",zit,v)}zit.set(a.csmTransitionRange,0,0,0),t.setVec4("cc_csmSplitsInfo",zit),zit.set(.1,a.shadowDistance,0,1-a.shadowSaturation),t.setVec4("cc_shadowNFLSInfo",zit),zit.set(CR.DIRECTIONAL,c,a.shadowNormalBias,a.csmLevel),t.setVec4("cc_shadowLPNNInfo",zit)}zit.set(h.size.x,h.size.y,a.shadowPcf,a.shadowBias),t.setVec4("cc_shadowWHPBInfo",zit)}}else gn.normalize(Hit,h.normal),zit.set(Hit.x,Hit.y,Hit.z,-h.distance),t.setVec4("cc_planarNDInfo",zit),zit.set(0,0,0,h.planeBias),t.setVec4("cc_shadowWHPBInfo",zit);t.setMathColor("cc_shadowColor",h.shadowColor)}}var ent=function(){function t(t,e){this._data=void 0,this._lg=void 0,this._vertID=-1,this._currBlock=void 0,this._currStage="",this._currFrequency=rtt.PER_PASS,this._currCount=void 0,this._currConstant=[],this._data=t,this._lg=e}var e=t.prototype;return e.setMat4=function(e,i,n){void 0===n&&(n=0),t.setMat4(this._lg,this._data,e,i,n)},t.setMat4=function(e,i,n,r,s){void 0===s&&(s=0);var a=t.getConstantInfo(e,i,n);Vn.toArray(a.dataArr,r,16*s),i.constants.set(a.constantID,a.dataArr)},e.setQuaternion=function(e,i,n){void 0===n&&(n=0),t.setQuaternion(this._lg,this._data,e,i,n)},t.setQuaternion=function(e,i,n,r,s){void 0===s&&(s=0);var a=t.getConstantInfo(e,i,n);Bn.toArray(a.dataArr,r,4*s),i.constants.set(a.constantID,a.dataArr)},e.setColor=function(e,i,n){void 0===n&&(n=0),t.setColor(this._lg,this._data,e,i,n)},t.setColor=function(e,i,n,r,s){void 0===s&&(s=0);var a=t.getConstantInfo(e,i,n),o=4*s;a.dataArr[0+o]=r.x,a.dataArr[1+o]=r.y,a.dataArr[2+o]=r.z,a.dataArr[3+o]=r.w,i.constants.set(a.constantID,a.dataArr)},e.setMathColor=function(e,i,n){void 0===n&&(n=0),t.setMathColor(this._lg,this._data,e,i,n)},t.setMathColor=function(e,i,n,r,s){void 0===s&&(s=0);var a=t.getConstantInfo(e,i,n);En.toArray(a.dataArr,r,4*s),i.constants.set(a.constantID,a.dataArr)},t.getConstantInfo=function(t,e,i){var n=t.constantIndex.get(i);if(void 0===n)throw new Error("Constant with name "+i+" not found.");return{constantID:n,dataArr:e.constants.get(n)||[]}},e.setVec4=function(e,i,n){void 0===n&&(n=0),t.setVec4(this._lg,this._data,e,i,n)},t.setVec4=function(e,i,n,r,s){void 0===s&&(s=0);var a=t.getConstantInfo(e,i,n);cn.toArray(a.dataArr,r,4*s),i.constants.set(a.constantID,a.dataArr)},e.setVec2=function(e,i,n){void 0===n&&(n=0),t.setVec2(this._lg,this._data,e,i,n)},t.setVec2=function(e,i,n,r,s){void 0===s&&(s=0);var a=t.getConstantInfo(e,i,n);jn.toArray(a.dataArr,r,2*s),i.constants.set(a.constantID,a.dataArr)},e.setFloat=function(e,i,n){void 0===n&&(n=0),t.setFloat(this._lg,this._data,e,i,n)},t.setFloat=function(e,i,n,r,s){void 0===s&&(s=0);var a=t.getConstantInfo(e,i,n);a.dataArr[0+s]=r,i.constants.set(a.constantID,a.dataArr)},e.setArrayBuffer=function(e,i){t.setArrayBuffer(this._lg,this._data,e,i)},t.setArrayBuffer=function(){throw new Error("Method not implemented.")},e.setBuffer=function(e,i){t.setBuffer(this._lg,this._data,e,i)},t.setBuffer=function(t,e,i,n){var r=t.attributeIndex.get(i);e.buffers.set(r,n)},e.setTexture=function(e,i){t.setTexture(this._lg,this._data,e,i)},t.setTexture=function(t,e,i,n){var r=t.attributeIndex.get(i);e.textures.set(r,n)},e.setReadWriteBuffer=function(e,i){t.setReadWriteBuffer(this._lg,this._data,e,i)},t.setReadWriteBuffer=function(t,e,i,n){var r=t.attributeIndex.get(i);e.buffers.set(r,n)},e.setReadWriteTexture=function(e,i){t.setReadWriteTexture(this._lg,this._data,e,i)},t.setReadWriteTexture=function(t,e,i,n){var r=t.attributeIndex.get(i);e.textures.set(r,n)},e.setSampler=function(e,i){t.setSampler(this._lg,this._data,e,i)},t.setSampler=function(t,e,i,n){var r=t.attributeIndex.get(i);e.samplers.set(r,n)},e.getParentLayout=function(){var t=S.director.root.pipeline,e=t.renderGraph.getParent(this._vertID);return t.renderGraph.getLayout(e)},e.getCurrentLayout=function(){return S.director.root.pipeline.renderGraph.getLayout(this._vertID)},e.setBuiltinCameraConstants=function(t){var e=S.director.root.pipeline;this.getParentLayout(),Yit(this,t,e.pipelineSceneData,t.scene)},e.setBuiltinShadowMapConstants=function(){tnt(this,null,this.getParentLayout())},e.setBuiltinDirectionalLightFrustumConstants=function(t,e,i){void 0===i&&(i=0),$it(this,t,e,i)},e.setBuiltinSpotLightFrustumConstants=function(t){$it(this,null,t,0)},e.setBuiltinDirectionalLightConstants=function(t){this.setBuiltinShadowMapConstants(t)},e.setBuiltinSphereLightConstants=function(t,e){var i=S.director.root.pipeline.pipelineSceneData;zit.set(t.position.x,t.position.y,t.position.z,CR.SPHERE),this.setVec4("cc_lightPos",zit),zit.set(t.size,t.range,0,0),this.setVec4("cc_lightSizeRangeAngle",zit);var n=i.isHDR;if(zit.set(t.color.x,t.color.y,t.color.z,0),t.useColorTemperature){var r=t.finalColor;zit.x=r.x,zit.y=r.y,zit.z=r.z}zit.w=n?t.luminance*e.exposure*1e4:t.luminance,this.setVec4("cc_lightColor",zit)},e.setBuiltinSpotLightConstants=function(t,e){var i=S.director.root.pipeline.pipelineSceneData,n=i.shadows;zit.set(t.position.x,t.position.y,t.position.z,CR.SPOT),this.setVec4("cc_lightPos",zit),zit.set(t.size,t.range,t.spotAngle,n.enabled&&t.shadowEnabled&&n.type===WT.ShadowMap?1:0),this.setVec4("cc_lightSizeRangeAngle",zit),zit.set(t.direction.x,t.direction.y,t.direction.z,0),this.setVec4("cc_lightDir",zit);var r=i.isHDR;if(zit.set(t.color.x,t.color.y,t.color.z,0),t.useColorTemperature){var s=t.finalColor;zit.x=s.x,zit.y=s.y,zit.z=s.z}zit.w=r?t.luminance*e.exposure*1e4:t.luminance,this.setVec4("cc_lightColor",zit),zit.set(0,0,0,t.angleAttenuationStrength),this.setVec4("cc_lightBoundingSizeVS",zit)},e.setBuiltinPointLightConstants=function(t,e){var i=S.director.root.pipeline.pipelineSceneData;zit.set(t.position.x,t.position.y,t.position.z,CR.POINT),this.setVec4("cc_lightPos",zit),zit.set(0,t.range,0,0),this.setVec4("cc_lightSizeRangeAngle",zit);var n=i.isHDR;if(t.useColorTemperature){var r=t.finalColor;zit.x=r.x,zit.y=r.y,zit.z=r.z}zit.w=n?t.luminance*e.exposure*1e4:t.luminance,zit.set(t.color.x,t.color.y,t.color.z,0),this.setVec4("cc_lightColor",zit)},e.setBuiltinRangedDirectionalLightConstants=function(t,e){var i=S.director.root.pipeline.pipelineSceneData;zit.set(t.position.x,t.position.y,t.position.z,CR.RANGED_DIRECTIONAL),this.setVec4("cc_lightPos",zit),zit.set(t.right.x,t.right.y,t.right.z,0),this.setVec4("cc_lightSizeRangeAngle",zit),zit.set(t.direction.x,t.direction.y,t.direction.z,0),this.setVec4("cc_lightDir",zit);var n=t.scale;zit.set(.5*n.x,.5*n.y,.5*n.z,0),this.setVec4("cc_lightBoundingSizeVS",zit);var r=i.isHDR;if(zit.set(t.color.x,t.color.y,t.color.z,0),t.useColorTemperature){var s=t.finalColor;zit.x=s.x,zit.y=s.y,zit.z=s.z}zit.w=r?t.illuminance*e.exposure:t.illuminance,this.setVec4("cc_lightColor",zit)},e.hasSampler=function(t){var e=this._lg.constantIndex.get(t);return void 0!==e&&this._data.samplers.has(e)},e.hasTexture=function(t){var e=this._lg.constantIndex.get(t);return void 0!==e&&this._data.textures.has(e)},e.setCustomBehavior=function(){throw new Error("Method not implemented.")},n(t,[{key:"name",get:function(){return""},set:function(){}}]),t}(),int=function(){function t(){this.instances=new Array}var e=t.prototype;return e.empty=function(){return 0===this.instances.length},e.clear=function(){this.instances.length=0},e.add=function(t,e,i,n){var r=t.subModels[i],s=r.passes[n].priority,a=r.priority,o=r.shaders[n].typedID,h=0|s<<16|a<<8|n,u=t.priority,l=Kit.add();l.update(r,u,h,e,o,n),this.instances.push(l)},e.sortOpaqueOrCutout=function(){this.instances.sort((function(t,e){return t.hash!==e.hash?t.hash-e.hash:t.depth!==e.depth?t.depth-e.depth:t.shaderID-e.shaderID}))},e.sortTransparent=function(){this.instances.sort((function(t,e){return t.priority!==e.priority?t.priority-e.priority:t.hash!==e.hash?t.hash-e.hash:t.depth!==e.depth?e.depth-t.depth:t.shaderID-e.shaderID}))},e.recordCommandBuffer=function(t,e,i,n,r,s){void 0===n&&(n=null),void 0===r&&(r=0),void 0===s&&(s=null);for(var a,o=f(this.instances);!(a=o()).done;){var h=a.value,u=h.subModel,l=h.passIndex,c=u.inputAssembler,_=u.passes[l],d=u.shaders[l],p=GT.getOrCreatePipelineState(t,_,d,e,c);i.bindPipelineState(p),i.bindDescriptorSet(Og.MATERIAL,_.descriptorSet),n&&i.bindDescriptorSet(Og.GLOBAL,n,[r]),s?i.bindDescriptorSet(Og.LOCAL,u.descriptorSet,s):i.bindDescriptorSet(Og.LOCAL,u.descriptorSet),i.bindInputAssembler(c),i.draw(c)}},t}(),nnt=function(){function t(){this.passInstances=new Map,this.instanceBuffers=new Array}var e=t.prototype;return e.empty=function(){return 0===this.passInstances.size},e.add=function(t,e,i){if(void 0===this.passInstances.get(t)){var n=this.passInstances.size;n>=this.instanceBuffers.length&&this.instanceBuffers.push(new CT(t)),this.passInstances.set(t,n);var r=this.instanceBuffers[n];r.pass=t,r.instances}this.instanceBuffers[this.passInstances.get(t)].merge(e,i)},e.clear=function(){this.passInstances.clear(),this.instanceBuffers.forEach((function(t){t.clear()}))},e.sort=function(){},e.uploadBuffers=function(t){for(var e,i=f(this.passInstances.entries());!(e=i()).done;){var n=e.value;n[0];var r=n[1],s=this.instanceBuffers[r];s.hasPendingModels&&s.uploadBuffers(t)}},e.recordCommandBuffer=function(t,e,i,n,r){void 0===i&&(i=null),void 0===n&&(n=0),void 0===r&&(r=null);for(var s,a=f(this.instanceBuffers);!(s=a()).done;){var o=s.value;if(o.hasPendingModels){var h=o.instances,u=o.pass;e.bindDescriptorSet(Og.MATERIAL,u.descriptorSet);for(var l,c=null,_=f(h);!(l=_()).done;){var d=l.value;if(d.count){var p=GT.getOrCreatePipelineState(Ff.gfxDevice,u,d.shader,t,d.ia);c!==p&&(e.bindPipelineState(p),c=p),i&&e.bindDescriptorSet(Og.GLOBAL,i,[n]),r?e.bindDescriptorSet(Og.LOCAL,d.descriptorSet,r):e.bindDescriptorSet(Og.LOCAL,d.descriptorSet,o.dynamicOffsets),e.bindInputAssembler(d.ia),e.draw(d.ia)}}}}},t}(),rnt=function(){function t(t,e,i){void 0===t&&(t=4294967295),void 0===e&&(e=4294967295),void 0===i&&(i=4294967295),this.frustumCulledResultID=void 0,this.lightBoundsCulledResultID=void 0,this.renderQueueTarget=void 0,this.frustumCulledResultID=t,this.lightBoundsCulledResultID=e,this.renderQueueTarget=i}return t.prototype.update=function(t,e,i){void 0===t&&(t=4294967295),void 0===e&&(e=4294967295),void 0===i&&(i=4294967295),this.frustumCulledResultID=t,this.lightBoundsCulledResultID=e,this.renderQueueTarget=i},t}(),snt=function(){function t(){this.probeQueue=new Jit,this.opaqueQueue=new int,this.transparentQueue=new int,this.opaqueInstancingQueue=new nnt,this.transparentInstancingQueue=new nnt,this.camera=null,this.sceneFlags=ptt.NONE,this.lightByteOffset=4294967295}var e=t.prototype;return e.sort=function(){this.opaqueQueue.sortOpaqueOrCutout(),this.transparentQueue.sortTransparent(),this.opaqueInstancingQueue.sort(),this.transparentInstancingQueue.sort()},e.update=function(){this.probeQueue.clear(),this.opaqueQueue.clear(),this.transparentQueue.clear(),this.opaqueInstancingQueue.clear(),this.transparentInstancingQueue.clear(),this.camera=null,this.sceneFlags=ptt.NONE,this.lightByteOffset=4294967295},e.empty=function(){return this.opaqueQueue.empty()&&this.transparentQueue.empty()&&this.opaqueInstancingQueue.empty()&&this.transparentInstancingQueue.empty()},e.recordCommands=function(t,e,i){var n=4294967295===this.lightByteOffset?null:[this.lightByteOffset];i&(ptt.OPAQUE|ptt.MASK)&&(this.opaqueQueue.recordCommandBuffer(Ff.gfxDevice,e,t,null,0,n),this.opaqueInstancingQueue.recordCommandBuffer(e,t,null,0,n)),i&ptt.BLEND&&(this.transparentInstancingQueue.recordCommandBuffer(e,t,null,0,n),this.transparentQueue.recordCommandBuffer(Ff.gfxDevice,e,t,null,0,n))},t}(),ant=4294967295;function ont(t){switch(t){case Att.UNIFORM_BUFFER:return Pc.UNIFORM_BUFFER;case Att.DYNAMIC_UNIFORM_BUFFER:return Pc.DYNAMIC_UNIFORM_BUFFER;case Att.SAMPLER_TEXTURE:return Pc.SAMPLER_TEXTURE;case Att.SAMPLER:return Pc.SAMPLER;case Att.TEXTURE:return Pc.TEXTURE;case Att.STORAGE_BUFFER:return Pc.STORAGE_BUFFER;case Att.DYNAMIC_STORAGE_BUFFER:return Pc.DYNAMIC_STORAGE_BUFFER;case Att.STORAGE_IMAGE:return Pc.STORAGE_IMAGE;case Att.INPUT_ATTACHMENT:return Pc.INPUT_ATTACHMENT;default:return H("DescriptorType not found"),Pc.INPUT_ATTACHMENT}}function hnt(t){switch(t){case Pc.UNIFORM_BUFFER:return Att.UNIFORM_BUFFER;case Pc.DYNAMIC_UNIFORM_BUFFER:return Att.DYNAMIC_UNIFORM_BUFFER;case Pc.SAMPLER_TEXTURE:return Att.SAMPLER_TEXTURE;case Pc.SAMPLER:return Att.SAMPLER;case Pc.TEXTURE:return Att.TEXTURE;case Pc.STORAGE_BUFFER:return Att.STORAGE_BUFFER;case Pc.DYNAMIC_STORAGE_BUFFER:return Att.DYNAMIC_STORAGE_BUFFER;case Pc.STORAGE_IMAGE:return Att.STORAGE_IMAGE;case Pc.INPUT_ATTACHMENT:return Att.INPUT_ATTACHMENT;case Pc.UNKNOWN:default:return H("DescriptorTypeOrder not found"),Att.INPUT_ATTACHMENT}}function unt(t,e){return t.locateChild(t.N,e||"default")}function lnt(t,e,i){return t.locateChild(e,i)}function cnt(t,e,i){return void 0===i?t.locateChild(e,"default"):"number"==typeof i?t.locateChild(e,i.toString()):t.locateChild(e,i)}var _nt,fnt,dnt=new Map([["cc_lightPos",av.LIGHTS_PER_PASS],["cc_lightColor",av.LIGHTS_PER_PASS],["cc_lightSizeRangeAngle",av.LIGHTS_PER_PASS],["cc_lightDir",av.LIGHTS_PER_PASS],["cc_lightBoundingSizeVS",av.LIGHTS_PER_PASS]]);function pnt(t,e){var i=JSON.parse(t[0]),n=JSON.parse(e[0]);return 1e4*i.updateFrequency+1e3*i.parameterType+100*i.descriptorType+i.visibility-(1e4*n.updateFrequency+1e3*n.parameterType+100*n.descriptorType+n.visibility)}function mnt(t,e){var i=t.attributeIndex.get(e);if(void 0===i){var n=t.valueNames.length;return t.attributeIndex.set(e,n),t.valueNames.push(e),n}return i}function gnt(t,e){for(var i=0;i<t.descriptorBlocks.length;++i)for(var n=t.descriptorBlocks[i],r=n.offset,s=0;s<n.descriptors.length;++s){var a=n.descriptors[s],o=new P_;o.binding=r,o.descriptorType=ont(n.type),o.count=a.count,o.stageFlags=n.visibility,o.immutableSamplers=[],e.bindings.push(o),r+=a.count}}function vnt(t,e){var i=new O_;return gnt(e,i),t?t.createDescriptorSetLayout(i):null}function ynt(t,e){var i=JSON.stringify(e),n=t.get(i);if(n)return n;var r=new Xet(e.descriptorType,e.visibility,0);return t.set(i,r),r}function Snt(t,e,i,n){for(var r=new Map,s=new Map,a=0;a<n.blocks.length;a++){var o=n.blocks[a],h=ynt(r,{updateFrequency:e,parameterType:mtt.TABLE,descriptorType:Att.UNIFORM_BUFFER,visibility:o.stageFlags}),u=mnt(t,o.name);h.descriptors.push(new Wet(u,nc.UNKNOWN,1)),s.set(u,new f_(i,4294967295,o.name,o.members,1))}for(var l=0;l<n.samplerTextures.length;l++){var c=n.samplerTextures[l],_=ynt(r,{updateFrequency:e,parameterType:mtt.TABLE,descriptorType:Att.SAMPLER_TEXTURE,visibility:c.stageFlags}),d=mnt(t,c.name);_.descriptors.push(new Wet(d,c.type,c.count))}for(var p=0;p<n.samplers.length;p++){var m=n.samplers[p],g=ynt(r,{updateFrequency:e,parameterType:mtt.TABLE,descriptorType:Att.SAMPLER,visibility:m.stageFlags}),v=mnt(t,m.name);g.descriptors.push(new Wet(v,nc.SAMPLER,m.count))}for(var y=0;y<n.textures.length;y++){var S=n.textures[y],T=ynt(r,{updateFrequency:e,parameterType:mtt.TABLE,descriptorType:Att.TEXTURE,visibility:S.stageFlags}),A=mnt(t,S.name);T.descriptors.push(new Wet(A,S.type,S.count))}for(var b=0;b<n.buffers.length;b++){var E=n.buffers[b],C=ynt(r,{updateFrequency:e,parameterType:mtt.TABLE,descriptorType:Att.STORAGE_BUFFER,visibility:E.stageFlags}),x=mnt(t,E.name);C.descriptors.push(new Wet(x,nc.UNKNOWN,1))}for(var w=0;w<n.images.length;w++){var R=n.images[w],I=ynt(r,{updateFrequency:e,parameterType:mtt.TABLE,descriptorType:Att.STORAGE_IMAGE,visibility:R.stageFlags}),D=mnt(t,R.name);I.descriptors.push(new Wet(D,R.type,R.count))}for(var B=0;B<n.subpassInputs.length;B++){var M=n.subpassInputs[B],P=ynt(r,{updateFrequency:e,parameterType:mtt.TABLE,descriptorType:Att.INPUT_ATTACHMENT,visibility:M.stageFlags}),O=mnt(t,M.name);P.descriptors.push(new Wet(O,nc.UNKNOWN,M.count))}for(var L,N=Array.from(r).sort(pnt),F=new jet(i,0),k=0,G=f(N);!(L=G()).done;){var V=L.value,U=V[0],z=V[1],X=JSON.parse(U);z.offset=k;for(var j,Y=f(z.descriptors);!(j=Y()).done;){var q=j.value;if(X.descriptorType===Att.UNIFORM_BUFFER){var K=s.get(q.descriptorID);if(!K){H("Uniform block not found for "+q.descriptorID);continue}W(4294967295===K.binding),K.binding=z.capacity,F.uniformBlocks.set(q.descriptorID,K)}void 0!==F.bindingMap.get(q.descriptorID)&&H("Duplicated descriptor "+q.descriptorID),F.bindingMap.set(q.descriptorID,z.offset+z.capacity),z.capacity+=q.count}k+=z.capacity,F.capacity+=z.capacity,X.descriptorType===Att.UNIFORM_BUFFER||X.descriptorType===Att.DYNAMIC_UNIFORM_BUFFER?F.uniformBlockCapacity+=z.capacity:X.descriptorType===Att.SAMPLER_TEXTURE&&(F.samplerTextureCapacity+=z.capacity),F.descriptorBlocks.push(z)}return F}function Tnt(t,e){for(var i=0;i<t.descriptorBlocks.length;++i)for(var n=t.descriptorBlocks[i],r=n.offset,s=0;s<n.descriptors.length;++s){var a=n.descriptors[s],o=new P_;o.binding=r,o.descriptorType=ont(n.type),o.count=a.count,o.stageFlags=n.visibility,o.immutableSamplers=[],e.bindings.push(o),r+=a.count}}function Ant(t,e,i){var n=t.descriptorSets.get(e);n&&n.descriptorSetLayout?i.setLayouts.push(n.descriptorSetLayout):i.setLayouts.push(_nt)}function bnt(){return _nt}function Ent(){return fnt}function Cnt(t,e,i,n){if(n<rtt.PER_PASS){var r=t.getLayout(i).descriptorSets.get(n);return r?r.descriptorSetLayout?r.descriptorSetLayout:(H("descriptor set layout not initialized"),_nt):_nt}W(n===rtt.PER_PASS),W(e===t.getParent(i));var s=t.getLayout(e).descriptorSets.get(n);return s?s.descriptorSetLayout?s.descriptorSetLayout:(H("descriptor set layout not initialized"),_nt):_nt}function xnt(t,e,i,n){if(n<rtt.PER_PASS){var r=t.getLayout(i).descriptorSets.get(n);return r?r.descriptorSetLayout?r.descriptorSetLayout:(H("descriptor set layout not initialized"),null):null}W(n===rtt.PER_PASS),W(e===t.getParent(i));var s=t.getLayout(e).descriptorSets.get(n);return s?s.descriptorSetLayout?s.descriptorSetLayout:(H("descriptor set layout not initialized"),null):null}var wnt=function(){this.frustumCullingKeyRecycle=new Rs((function(){return new Lnt}),8),this.frustumCullingsRecycle=new Rs((function(){return new Unt}),8),this.lightBoundsCullingRecycle=new Rs((function(){return new Fnt}),8),this.lightBoundsCullingResultRecycle=new Rs((function(){return new knt}),8),this.lightBoundsCullingKeyRecycle=new Rs((function(){return new Nnt}),8),this.renderQueueRecycle=new Rs((function(){return new snt}),8),this.renderQueueQueryRecycle=new Rs((function(){return new rnt}),8)},Rnt=dm.makeMaskExclude([dm.BitMask.UI_2D,dm.BitMask.UI_3D,dm.BitMask.GIZMOS,dm.BitMask.EDITOR,dm.BitMask.SCENE_GIZMO,dm.BitMask.PROFILER]),Int=new WeakMap,Dnt="",Bnt=0;function Mnt(t){return Int.has(t)||Int.set(t,++Bnt),Int.get(t)}function Pnt(t,e,i){void 0===i&&(i=-1),Dnt="";var n=t.camera,r=t.light.light,s=t.light.level,a=t.light.probe,o=t.shadingLight;return Dnt+=Vit(n?Mnt(n):0),Dnt+=Vit(a?Mnt(a):0),Dnt+=Vit(-1===i&&r?Mnt(r):0),Dnt+=Vit(-1!==i&&o?Mnt(o):0),Dnt+=Vit(-1===i?s:0),Dnt+=Vit(e?1:0),Dnt+=Vit(i)}var Ont,Lnt=function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=!1),this.sceneData=null,this.castShadows=!1,this.sceneData=t,this.castShadows=e}return t.prototype.update=function(t,e){this.sceneData=t,this.castShadows=e},t}(),Nnt=function(){function t(t,e){void 0===t&&(t=null),void 0===e&&(e=-1),this.sceneData=null,this.frustumCullingID=-1,this.sceneData=t,this.frustumCullingID=e}return t.prototype.update=function(t,e){void 0===t&&(t=null),void 0===e&&(e=-1),this.sceneData=t,this.frustumCullingID=e},t}(),Fnt=function(){function t(){this.resultKeyIndex=new Map,this.resultIndex=new Map}return t.prototype.update=function(){this.resultIndex.clear(),this.resultKeyIndex.clear()},t}(),knt=function(){function t(){this.instances=new Array,this.lightByteOffset=4294967295}return t.prototype.update=function(){return this.instances.length=0,this.lightByteOffset=4294967295,this},t}();function Gnt(t,e,i){return t+"-"+e+"-"+i}function Vnt(t){var e=t.split("-");return[parseInt(e[0]),parseInt(e[1]),parseInt(e[2])]}var Unt=function(){function t(){this.resultIndex=new Map,this.resultKeyIndex=new Map}return t.prototype.update=function(){this.resultIndex.clear(),this.resultKeyIndex.clear()},t}();function znt(t,e){return function(t,e){return t&&(e&t.layer)===t.layer}(t.node,e)||function(t,e){return!!(e&t.visFlags)}(t,e)}function Hnt(t){return Uit((t.node.layer&Rnt)===t.node.layer||Rnt&t.visFlags)}var Wnt=new Ra;function Xnt(t,e,i){var n=t.worldBounds,r=Ont.shadows;return i&&r.type===WT.Planar?(Ra.transform(Wnt,n,r.matLight),!vs.aabbFrustum(Wnt,e)):!vs.aabbFrustum(n,e)}function jnt(t,e,i,n,r,s){var a,o,h=Ont.skybox,u=h.model,l=e.visibility,c=e.clearFlag&nR;!n&&h&&h.enabled&&u&&c&&s.push(u);for(var _,d=f(t.models);!(_=d()).done;){var p=_.value;if(p.enabled&&p.node&&(!n||p.castShadow)&&!t.isCulledByLod(e,p)){var m=p.worldBounds;if(r)if(r.probeType===cR.CUBE){if(!znt(p,l))continue;if(m&&(a=m,o=r.boundingBox,!vs.aabbWithAABB(a,o)))continue;s.push(p)}else Hnt(p)&&s.push(p);else{if(!znt(p,l))continue;if(m&&Xnt(p,i,n))continue;s.push(p)}}}}var Ynt=new gn;function qnt(t,e,i,n,r,s,a){var o=a.probeQueue;n&&o.addToProbeQueue(s,t);for(var h=s.subModels,u=h.length,l=Ont.skybox.model,c=function(t,e){var i=0;return e.node&&(gn.subtract(Ynt,e.worldBounds?e.worldBounds.center:e.node.worldPosition,t.position),i=gn.dot(Ynt,t.forward)),i}(r,s),_=0;_<u;++_){var f=h[_],d=f.passes,p=d.length;o.probeMap.includes(f)&&(t=o.defaultId);for(var m=0;m<p;++m)if(s!==l||_||m||!e){var g=d[m];if(t===g.phaseID){var v=g.blendState.targets[0].blend;!i&&v||!e&&!v||(g.batchingScheme===TT.INSTANCING?v?a.transparentInstancingQueue.add(g,f,m):a.opaqueInstancingQueue.add(g,f,m):v?a.transparentQueue.add(s,c,_,m):a.opaqueQueue.add(s,c,_,m))}}else a.opaqueQueue.add(s,c,_,m)}}var Knt,Qnt,Znt,Jnt=new Ra(0,0,0,.5,.5,.5),$nt=new Ra,trt=function(){function t(){this.frustumCullings=new Map,this.frustumCullingResults=new Array,this.lightBoundsCullings=new Map,this.lightBoundsCullingResults=new Array,this.renderQueueIndex=new Map,this.renderQueues=new Array,this.renderQueueQueryIndex=new Map,this.cullingPools=new wnt,this.numFrustumCulling=0,this.numLightBoundsCulling=0,this.numRenderQueues=0,this.layoutGraph=void 0,this.renderGraph=void 0,this.enableLightCulling=!0,this.kFilterMask=ptt.SHADOW_CASTER|ptt.REFLECTION_PROBE,this.kDrawMask=ptt.OPAQUE|ptt.MASK|ptt.BLEND,this.kAllMask=this.kFilterMask|this.kDrawMask}var e=t.prototype;return e.resetPool=function(){var t=this.cullingPools;t.frustumCullingKeyRecycle.reset(),t.frustumCullingsRecycle.reset(),t.lightBoundsCullingRecycle.reset(),t.lightBoundsCullingResultRecycle.reset(),t.lightBoundsCullingKeyRecycle.reset(),t.renderQueueRecycle.reset(),t.renderQueueQueryRecycle.reset(),Kit.reset()},e.clear=function(){this.resetPool(),this.frustumCullings.clear(),this.frustumCullingResults.length=0,this.lightBoundsCullings.clear(),this.lightBoundsCullingResults.length=0,this.renderQueueIndex.clear(),this.renderQueues.length=0,this.renderQueueQueryIndex.clear(),this.numLightBoundsCulling=0,this.numFrustumCulling=0,this.numRenderQueues=0},e.buildRenderQueues=function(t,e,i){this.layoutGraph=e,this.renderGraph=t,Ont=i,this.collectCullingQueries(t),this.batchFrustumCulling(i),this.batchLightBoundsCulling(),this.fillRenderQueues()},e.getOrCreateLightBoundsCulling=function(t,e){var i;if(!(4&t.cullingFlags))return 4294967295;if((null===(i=t.shadingLight)||void 0===i?void 0:i.type)===CR.DIRECTIONAL)return 4294967295;if(!this.enableLightCulling)return 4294967295;var n=t.scene,r=this.lightBoundsCullings.get(n);if(!r){var s=this.cullingPools.lightBoundsCullingRecycle.add();s.update(),this.lightBoundsCullings.set(n,s),r=this.lightBoundsCullings.get(n)}var a=Pnt(t,!1,e),o=r.resultIndex.get(a);if(void 0!==o)return o;var h=this.numLightBoundsCulling++;this.numLightBoundsCulling>this.lightBoundsCullingResults.length&&this.lightBoundsCullingResults.push(this.cullingPools.lightBoundsCullingResultRecycle.add().update()),r.resultIndex.set(a,h);var u=this.cullingPools.lightBoundsCullingKeyRecycle.add();return u.update(t,e),r.resultKeyIndex.set(a,u),h},e.getOrCreateFrustumCulling=function(t){var e=this.renderGraph.j(t),i=e.scene,n=this.frustumCullings.get(i);if(!n){var r=this.cullingPools.frustumCullingsRecycle.add();r.update(),this.frustumCullings.set(i,r),n=this.frustumCullings.get(i)}var s=Uit(e.flags&ptt.SHADOW_CASTER),a=Pnt(e,s),o=n.resultIndex.get(a);if(void 0!==o)return o;var h=this.numFrustumCulling++;this.numFrustumCulling>this.frustumCullingResults.length&&this.frustumCullingResults.push([]),n.resultIndex.set(a,h);var u=this.cullingPools.frustumCullingKeyRecycle.add();return u.update(e,s),n.resultKeyIndex.set(a,u),h},e.getOrCreateRenderQueue=function(t,e,i){var n=this.renderQueueIndex.get(t);if(void 0!==n)return this.renderQueues[n].sceneFlags|=e&this.kDrawMask,n;var r=this.numRenderQueues++;if(this.numRenderQueues>this.renderQueues.length){var s=this.cullingPools.renderQueueRecycle.add();s.update(),this.renderQueues.push(s)}var a=this.renderQueues[r];return this.renderQueueIndex.set(t,r),a.camera=i,a.sceneFlags=e&this.kAllMask,r},e.collectCullingQueries=function(t){for(var e,i=f(t.v());!(e=i()).done;){var n=e.value;if(t.h(9,n)&&t.getValid(n)){var r=t.j(n);if(r.scene){var s=this.getOrCreateFrustumCulling(n),a=this.getOrCreateLightBoundsCulling(r,s),o=t.getParent(n),h=Gnt(s,a,t.j(o).phaseID),u=this.getOrCreateRenderQueue(h,r.flags,r.camera),l=this.cullingPools.renderQueueQueryRecycle.add();l.update(s,a,u),this.renderQueueQueryIndex.set(n,l)}}}},e.uploadInstancing=function(t){for(var e=0;e!==this.numRenderQueues;++e){var i=this.renderQueues[e];i.opaqueInstancingQueue.uploadBuffers(t),i.transparentInstancingQueue.uploadBuffers(t)}},e._getPhaseIdFromScene=function(t){var e=this.renderGraph,i=e.getParent(t);return e.j(i).phaseID},e.getBuiltinShadowFrustum=function(t,e,i,n){var r=t.csmLayers,s=i.csmLevel,a=t.shadows;return a.type===WT.Planar?e.frustum:(a.enabled&&a.type===WT.ShadowMap&&i&&i.node&&r.update(t,e),i.shadowFixedArea||s===jT.LEVEL_1?r.specialLayer.validFrustum:r.layers[n].validFrustum)},e.batchFrustumCulling=function(t){for(var e,i=f(this.frustumCullings);!(e=i()).done;)for(var n,r=e.value,s=r[0],a=r[1],o=f(a.resultIndex);!(n=o()).done;){var h=n.value,u=h[0],l=h[1],c=a.resultKeyIndex.get(u),_=c.sceneData,d=_.light.light,p=_.light.level,m=c.castShadows,g=_.light.probe,v=g?g.camera:_.camera,y=this.frustumCullingResults[l];if(g)jnt(s,v,v.frustum,m,g,y);else if(d)switch(d.type){case CR.SPOT:jnt(s,v,d.frustum,m,null,y);break;case CR.DIRECTIONAL:jnt(s,v,this.getBuiltinShadowFrustum(t,v,d,p),m,null,y)}else jnt(s,v,v.frustum,m,null,y)}},e.executeSphereLightCulling=function(t,e,i){for(var n,r=t.aabb,s=f(e);!(n=s()).done;){var a=n.value,o=a.worldBounds;o&&!vs.aabbWithAABB(o,r)||i.push(a)}},e.executeSpotLightCulling=function(t,e,i){for(var n,r=t.aabb,s=t.frustum,a=f(e);!(n=a()).done;){var o=n.value,h=o.worldBounds;(!h||vs.aabbWithAABB(r,h)&&vs.aabbFrustum(h,s))&&i.push(o)}},e.executePointLightCulling=function(t,e,i){for(var n,r=t.aabb,s=f(e);!(n=s()).done;){var a=n.value,o=a.worldBounds;o&&!vs.aabbWithAABB(r,o)||i.push(a)}},e.executeRangedDirectionalLightCulling=function(t,e,i){Jnt.transform(t.node.worldMatrix,null,null,null,$nt);for(var n,r=f(e);!(n=r()).done;){var s=n.value,a=s.worldBounds;a&&!vs.aabbWithAABB($nt,a)||i.push(s)}},e.batchLightBoundsCulling=function(){for(var t,e=f(this.lightBoundsCullings);!(t=e()).done;){var i=t.value;i[0];for(var n,r=i[1],s=f(r.resultIndex);!(n=s()).done;){var a=n.value,o=a[0],h=a[1],u=r.resultKeyIndex.get(o),l=u.sceneData,c=u.frustumCullingID,_=this.frustumCullingResults[c],d=this.lightBoundsCullingResults[h];switch(l.shadingLight.type){case CR.SPHERE:var p=l.shadingLight;this.executeSphereLightCulling(p,_,d.instances);break;case CR.SPOT:var m=l.shadingLight;this.executeSpotLightCulling(m,_,d.instances);break;case CR.POINT:var g=l.shadingLight;this.executePointLightCulling(g,_,d.instances);break;case CR.RANGED_DIRECTIONAL:var v=l.shadingLight;this.executeRangedDirectionalLightCulling(v,_,d.instances);break;case CR.DIRECTIONAL:case CR.UNKNOWN:}}}},e._getModelsByCullingResults=function(t,e){return 4294967295!==t?t<this.lightBoundsCullingResults.length?this.lightBoundsCullingResults[t].instances:[]:e<this.frustumCullingResults.length?this.frustumCullingResults[e]:[]},e.fillRenderQueues=function(){for(var t,e=f(this.renderQueueIndex);!(t=e()).done;){var i=t.value,n=i[0],r=i[1],s=this.renderQueues[r],a=Vnt(n),o=a[0],h=a[1],u=a[2],l=Uit(s.sceneFlags&ptt.BLEND),c=Uit(s.sceneFlags&(ptt.OPAQUE|ptt.MASK)),_=Uit(s.sceneFlags&ptt.SHADOW_CASTER),d=Uit(s.sceneFlags&ptt.REFLECTION_PROBE);if(_||l||c||d){for(var p,m=this._getModelsByCullingResults(h,o),g=s.camera,v=f(m);!(p=v()).done;)qnt(u,c,l,d,g,p.value,s);s.sort()}}},t}(),ert=function(){function t(){this.cpuBuffer=void 0,this.programLibrary=void 0,this.device=null,this.elementSize=0,this.maxNumLights=16,this.binding=4294967295,this.resized=!1,this.lightBuffer=void 0,this.firstLightBufferView=null,this.lights=[],this.lightIndex=new Map}var e=t.prototype;return e.init=function(t,e,i){this.device=e,this.programLibrary=t;var n=this.programLibrary.localLayoutData,r=t.layoutGraph.attributeIndex.get("CCForwardLight"),s=n.uniformBlocks.get(r);this.elementSize=function(t,e){return t+(e-1)&~(e-1)}(function(t){for(var e,i=0,n=f(t);!(e=n()).done;){var r=e.value;if(r.count)i+=tf(r.type)*r.count;else{var s=dnt.get(r.name);if(void 0===s)if("cc_joints"!==r.name)H("Invalid uniform count: "+r.name);else{var a=tf(r.type)*cv.LAYOUT.members[0].count;W(a!==cv.SIZE),i+=a}else i+=tf(r.type)*s}}return W(!!i),i}(s.members),this.device.capabilities.uboOffsetAlignment),this.maxNumLights=i,this.binding=t.localLayoutData.bindingMap.get(r);var a=this.elementSize*this.maxNumLights;this.lightBuffer=this.device.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,a,this.elementSize)),this.firstLightBufferView=this.device.createBuffer(new s_(this.lightBuffer,0,this.elementSize)),this.cpuBuffer=new Float32Array(a/Float32Array.BYTES_PER_ELEMENT),this.resized=!0},e.buildLights=function(t,e,i){for(var n,r=f(t.lightBoundsCullings);!(n=r()).done;){var s=n.value;s[0];for(var a,o=s[1],h=f(o.resultIndex);!(a=h()).done;){var u=a.value,l=u[0],c=u[1],_=o.resultKeyIndex.get(l).sceneData,d=1;if(_.camera)d=_.camera.exposure;else{if(!_.light.probe||!_.light.probe.camera)throw new Error("Unexpected situation: No camera or probe found.");d=_.light.probe.camera.exposure}var p=this.addLight(_.shadingLight,e,d,i);t.lightBoundsCullingResults[c].lightByteOffset=p}}for(var m,g=f(t.renderQueueQueryIndex);!(m=g()).done;){var v=m.value;v[0];var y=v[1];if(4294967295!==y.lightBoundsCulledResultID){var S=t.lightBoundsCullingResults[y.lightBoundsCulledResultID].lightByteOffset;t.renderQueues[y.renderQueueTarget].lightByteOffset=S}}},e.tryUpdateRenderSceneLocalDescriptorSet=function(t){if(t.lightBoundsCullings.size){for(var e,i=f(t.frustumCullings);!(e=i()).done;){var n=e.value,r=n[0];n[1];for(var s,a=f(r.models);!(s=a()).done;){var o=s.value;if(!o)throw new Error("Unexpected null model.");for(var h,u=f(o.subModels);!(h=u()).done;){var l=h.value.descriptorSet,c=l.getBuffer(this.binding);(this.resized||c!==this.firstLightBufferView)&&(l.bindBuffer(this.binding,this.firstLightBufferView),l.update())}}}this.resized=!1}},e.clear=function(){this.cpuBuffer.fill(0),this.lights.length=0,this.lightIndex.clear()},e.addLight=function(t,e,i,n){var r=this.lightIndex.get(t);if(void 0!==r)return r;if(this.lights.length===this.maxNumLights){this.resized=!0,this.maxNumLights*=2;var s=this.elementSize*this.maxNumLights;this.lightBuffer.resize(s),this.firstLightBufferView=this.device.createBuffer(new s_(this.lightBuffer,0,this.elementSize));var a=this.cpuBuffer;this.cpuBuffer=new Float32Array(s/Float32Array.BYTES_PER_ELEMENT),this.cpuBuffer.set(a)}var o=this.lights.length;this.lights[o]=t,this.lightIndex.set(t,o);var h=this.elementSize/Float32Array.BYTES_PER_ELEMENT*o;return function(t,e,i,n,r,s){var a=new Float32Array(4),o=0,h=0,u=0,l=0;if(t&&t.type===CR.SPHERE){var c=t;a[0]=c.position.x,a[1]=c.position.y,a[2]=c.position.z,a[3]=CR.SPHERE,o=c.size,h=c.range,u=c.luminanceHDR,l=c.luminanceLDR}else if(t&&t.type===CR.SPOT){var _=t;a[0]=_.position.x,a[1]=_.position.y,a[2]=_.position.z,a[3]=CR.SPOT,o=_.size,h=_.range,u=_.luminanceHDR,l=_.luminanceLDR}else if(t&&t.type===CR.POINT){var f=t;a[0]=f.position.x,a[1]=f.position.y,a[2]=f.position.z,a[3]=CR.POINT,o=0,h=f.range,u=f.luminanceHDR,l=f.luminanceLDR}else if(t&&t.type===CR.RANGED_DIRECTIONAL){var d=t;a[0]=d.position.x,a[1]=d.position.y,a[2]=d.position.z,a[3]=CR.RANGED_DIRECTIONAL,o=0,h=0,u=d.illuminanceHDR,l=d.illuminanceLDR}var p=s+av.LIGHT_POS_OFFSET;r.set(a,p),p=s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET,a.set([o,h,0,0]),r.set(a,p),p=s+av.LIGHT_COLOR_OFFSET;var m=t?t.color:new t_;if(t&&t.useColorTemperature){var g=t.colorTemperatureRGB;r[p++]=m.x*g.x,r[p++]=m.y*g.y,r[p++]=m.z*g.z}else r[p++]=m.x,r[p++]=m.y,r[p++]=m.z;switch(r[p]=e?u*i*1e4:l,t?t.type:CR.UNKNOWN){case CR.SPHERE:r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+2]=0,r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+3]=0;break;case CR.SPOT:var v=t;r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+2]=v.spotAngle,r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+3]=n&&n.enabled&&v.shadowEnabled&&n.type===WT.ShadowMap?1:0,p=s+av.LIGHT_DIR_OFFSET;var y=v.direction;r[p++]=y.x,r[p++]=y.y,r[p]=y.z,r[s+av.LIGHT_BOUNDING_SIZE_VS_OFFSET+0]=0,r[s+av.LIGHT_BOUNDING_SIZE_VS_OFFSET+1]=0,r[s+av.LIGHT_BOUNDING_SIZE_VS_OFFSET+2]=0,r[s+av.LIGHT_BOUNDING_SIZE_VS_OFFSET+3]=v.angleAttenuationStrength;break;case CR.POINT:r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+2]=0,r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+3]=0;break;case CR.RANGED_DIRECTIONAL:var S=t,T=S.right;r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+0]=T.x,r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+1]=T.y,r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+2]=T.z,r[s+av.LIGHT_SIZE_RANGE_ANGLE_OFFSET+3]=0;var A=S.direction;r[s+av.LIGHT_DIR_OFFSET+0]=A.x,r[s+av.LIGHT_DIR_OFFSET+1]=A.y,r[s+av.LIGHT_DIR_OFFSET+2]=A.z,r[s+av.LIGHT_DIR_OFFSET+3]=0;var b=S.scale;r[s+av.LIGHT_BOUNDING_SIZE_VS_OFFSET+0]=.5*b.x,r[s+av.LIGHT_BOUNDING_SIZE_VS_OFFSET+1]=.5*b.y,r[s+av.LIGHT_BOUNDING_SIZE_VS_OFFSET+2]=.5*b.z,r[s+av.LIGHT_BOUNDING_SIZE_VS_OFFSET+3]=0}}(t,e,i,n,this.cpuBuffer,h,this.elementSize),o*this.elementSize},e.buildLightBuffer=function(t){t.updateBuffer(this.lightBuffer,this.cpuBuffer,this.lights.length*this.elementSize/Float32Array.BYTES_PER_ELEMENT)},t}(),irt=function(){function t(t){void 0===t&&(t=""),this.name=void 0,this.name=t,Knt&&Knt.pipeline.resourceUses.push(t)}var e=t.prototype;return e.checkTexture=function(t){var e=Knt.deviceTextures.get(t),i=Knt.resourceGraph.vertex(this.name),n=Knt.resourceGraph.getDesc(i),r=!1;return e.texture?r=e.texture.width===n.width&&e.texture.height===n.height:e.swapchain&&(r=e.swapchain.width===n.width&&e.swapchain.height===n.height),r},e.createDeviceTex=function(t){if(Knt.deviceTextures.get(this.name)){if(!this.checkTexture(this.name)){var e;null===(e=Knt.deviceTextures.get(this.name).texture)||void 0===e||e.destroy();var i=new rrt(this.name,t);Knt.deviceTextures.set(this.name,i)}}else{var n=new rrt(this.name,t);Knt.deviceTextures.set(this.name,n)}},e.checkBuffer=function(t){var e=Knt.deviceBuffers.get(t),i=Knt.resourceGraph.vertex(this.name),n=Knt.resourceGraph.getDesc(i);return e.buffer.size>=n.width},e.createDeviceBuf=function(t){if(Knt.deviceBuffers.get(this.name)){if(!this.checkBuffer(this.name)){var e;null===(e=Knt.deviceBuffers.get(this.name).buffer)||void 0===e||e.destroy();var i=new srt(this.name,t);Knt.deviceBuffers.set(this.name,i)}}else{var n=new srt(this.name,t);Knt.deviceBuffers.set(this.name,n)}},e.managed=function(t){this.createDeviceTex(t)},e.managedBuffer=function(t){this.createDeviceBuf(t)},e.managedTexture=function(){},e.persistentBuffer=function(t){this.createDeviceBuf(t)},e.persistentTexture=function(t){this.createDeviceTex(t)},e.framebuffer=function(t){this.createDeviceTex(t)},e.swapchain=function(t){this.createDeviceTex(t)},e.formatView=function(){},e.subresourceView=function(){},n(t,[{key:"resName",set:function(t){this.name=t}}]),t}(),nrt=function(){function t(t){this._name=void 0,this._name=t}return n(t,[{key:"name",get:function(){return this._name}}]),t}(),rrt=function(t){function e(e,i){var n;(n=t.call(this,e)||this)._texture=null,n._swapchain=null,n._framebuffer=null,n._desc=null,n._trait=null;var r=Knt.resourceGraph,s=r.vertex(e);if(n._desc=r.getDesc(s),n._trait=r.getTraits(s),i instanceof xf)return n._texture=i,c(n);if(i instanceof cf)return n._framebuffer=i,c(n);if(i instanceof set)return n._swapchain=i.swapchain,c(n);var a=n._desc,o=hc.TEX2D;switch(a.dimension){case ftt.TEXTURE1D:o=hc.TEX1D;break;case ftt.TEXTURE2D:o=hc.TEX2D;break;case ftt.TEXTURE3D:o=hc.TEX3D}var h=uc.NONE;return a.flags&dtt.COLOR_ATTACHMENT&&(h|=uc.COLOR_ATTACHMENT),a.flags&dtt.DEPTH_STENCIL_ATTACHMENT&&(h|=uc.DEPTH_STENCIL_ATTACHMENT),a.flags&dtt.INPUT_ATTACHMENT&&(h|=uc.INPUT_ATTACHMENT),a.flags&dtt.SAMPLED&&(h|=uc.SAMPLED),a.flags&dtt.STORAGE&&(h|=uc.STORAGE),a.flags&dtt.TRANSFER_SRC&&(h|=uc.TRANSFER_SRC),a.flags&dtt.TRANSFER_DST&&(h|=uc.TRANSFER_DST),n._texture=Knt.device.createTexture(new u_(o,h,a.format,a.width,a.height)),n}return s(e,t),e.prototype.release=function(){this.framebuffer&&(this.framebuffer.destroy(),this._framebuffer=null),this.texture&&(this.texture.destroy(),this._texture=null)},n(e,[{key:"texture",get:function(){return this._texture}},{key:"framebuffer",get:function(){return this._framebuffer},set:function(t){this._framebuffer=t}},{key:"description",get:function(){return this._desc}},{key:"trait",get:function(){return this._trait}},{key:"swapchain",get:function(){return this._swapchain}}]),e}(nrt),srt=function(t){function e(e){var i;(i=t.call(this,e)||this)._buffer=void 0;var n=Knt.resourceGraph,r=n.vertex(e),s=n.getDesc(r),a=new r_;return a.size=s.width,a.memUsage=oc.DEVICE,s.flags&dtt.INDIRECT&&(a.usage|=rc.INDIRECT),s.flags&dtt.UNIFORM&&(a.usage|=rc.UNIFORM),s.flags&dtt.STORAGE&&(a.usage|=rc.STORAGE),s.flags&dtt.TRANSFER_SRC&&(a.usage|=rc.TRANSFER_SRC),s.flags&dtt.TRANSFER_DST&&(a.usage|=rc.TRANSFER_DST),i._buffer=Knt.device.createBuffer(a),i}return s(e,t),e.prototype.release=function(){this._buffer&&(this._buffer.destroy(),this._buffer=null)},n(e,[{key:"buffer",get:function(){return this._buffer}}]),e}(nrt),art=new Float32Array(4),ort=function(){function t(t,e){this._isUpdate=!1,this._isGatherLight=!1,this._blit=void 0,this._screenQuad=null,this._queue=null,this._stageDesc=void 0,this._lightVolumeBuffer=null,this._lightMeterScale=1e4,this._lightBufferData=void 0,this._blit=t,this._queue=e}var e=t.prototype;return e._createQuadInputAssembler=function(){return Knt.blit.pipelineIAData},e.createScreenQuad=function(){this._screenQuad||(this._screenQuad=this._createQuadInputAssembler())},e._gatherVolumeLights=function(t){if(t.scene){for(var e=Knt.pipeline,i=Knt.commandBuffer,n=t.scene.sphereLights,r=t.scene.spotLights,s=Ir.create(0,0,0,1),a=t.exposure,o=0,h=ov.LIGHTS_PER_PASS,u=cn.length,l=u*h,c=0;c<n.length&&o<h;c++,++o){var _=n[c];if(Ir.set(s,_.position.x,_.position.y,_.position.z,_.range),vs.sphereFrustum(s,t.frustum)){if(gn.toArray(art,_.position),art[3]=0,this._lightBufferData.set(art,o*u),gn.toArray(art,_.color),_.useColorTemperature){var f=_.colorTemperatureRGB;art[0]*=f.x,art[1]*=f.y,art[2]*=f.z}e.pipelineSceneData.isHDR?art[3]=_.luminance*a*this._lightMeterScale:art[3]=_.luminance,this._lightBufferData.set(art,o*u+1*l),art[0]=_.size,art[1]=_.range,art[2]=0,this._lightBufferData.set(art,o*u+2*l)}}for(var d=0;d<r.length&&o<h;d++,++o){var p=r[d];if(Ir.set(s,p.position.x,p.position.y,p.position.z,p.range),vs.sphereFrustum(s,t.frustum)){if(gn.toArray(art,p.position),art[3]=1,this._lightBufferData.set(art,o*u+0*l),gn.toArray(art,p.color),p.useColorTemperature){var m=p.colorTemperatureRGB;art[0]*=m.x,art[1]*=m.y,art[2]*=m.z}e.pipelineSceneData.isHDR?art[3]=p.luminance*a*this._lightMeterScale:art[3]=p.luminance,this._lightBufferData.set(art,o*u+1*l),art[0]=p.size,art[1]=p.range,art[2]=p.spotAngle,this._lightBufferData.set(art,o*u+2*l),gn.toArray(art,p.direction),this._lightBufferData.set(art,o*u+3*l)}}var g=3*l+3;this._lightBufferData.set([o],g),i.updateBuffer(this._lightVolumeBuffer,this._lightBufferData)}},e.update=function(){this.blit.sceneFlags&ptt.VOLUMETRIC_LIGHTING&&this.blit.camera&&!this._isGatherLight&&(this._gatherVolumeLights(this.blit.camera),this._isGatherLight=!0,this._isUpdate=!1),this._isUpdate||(this._stageDesc.update(),this._isUpdate=!0)},e.reset=function(){this._isUpdate=!1,this._isGatherLight=!1},e.createStageDescriptor=function(){var t=this.blit,e=t.material.passes[t.passID],i=Knt.device;if(this._stageDesc=Knt.blit.stageDescs.get(e),this._stageDesc||(this._stageDesc=i.createDescriptorSet(new L_(e.localSetLayout)),Knt.blit.stageDescs.set(e,this._stageDesc)),this.blit.sceneFlags&ptt.VOLUMETRIC_LIGHTING){this._lightVolumeBuffer=Knt.blit.lightVolumeBuffer;var n=Knt.blit.deferredLitsBufView;this._lightBufferData=Knt.blit.lightBufferData,this._lightBufferData.fill(0),this._stageDesc.bindBuffer(av.BINDING,n)}this._stageDesc.bindBuffer(ev.BINDING,Knt.blit.emptyLocalUBO)},n(t,[{key:"screenQuad",get:function(){return this._screenQuad}},{key:"blit",get:function(){return this._blit},set:function(t){this._blit=t}},{key:"stageDesc",get:function(){return this._stageDesc}}]),t}(),hrt=function(){function t(){this._devicePass=void 0,this._hint=_tt.NONE,this._phaseID=ET("default"),this._renderPhase=null,this._descSetData=null,this._layoutID=-1,this._isUpdateUBO=!1,this._isUploadInstance=!1,this._isUploadBatched=!1,this._queueId=-1}var e=t.prototype;return e.preRecord=function(){},e.postRecord=function(){},e.init=function(t,e,i){this.reset(),this.queueHint=e.hint,this.queueId=i,this._devicePass=t,this._phaseID=S.rendering.getPhaseID(t.passID,Knt.renderGraph.getLayout(i))},e.reset=function(){this._isUpdateUBO=!1,this._isUploadInstance=!1,this._isUploadBatched=!1},e.record=function(){this._descSetData&&this._descSetData.descriptorSet&&Knt.commandBuffer.bindDescriptorSet(Og.COUNT,this._descSetData.descriptorSet)},n(t,[{key:"phaseID",get:function(){return this._phaseID}},{key:"layoutID",get:function(){return this._layoutID},set:function(t){this._layoutID=t;var e=Knt.layoutGraph;this._renderPhase=e.h(1,t)?e.j(t):null;var i=e.getLayout(t);this._descSetData=i.descriptorSets.get(rtt.PER_PHASE)}},{key:"descSetData",get:function(){return this._descSetData}},{key:"renderPhase",get:function(){return this._renderPhase}},{key:"queueId",get:function(){return this._queueId},set:function(t){this._queueId=t}},{key:"isUpdateUBO",get:function(){return this._isUpdateUBO},set:function(t){this._isUpdateUBO=t}},{key:"isUploadInstance",get:function(){return this._isUploadInstance},set:function(t){this._isUploadInstance=t}},{key:"isUploadBatched",get:function(){return this._isUploadBatched},set:function(t){this._isUploadBatched=t}},{key:"queueHint",get:function(){return this._hint},set:function(t){this._hint=t}},{key:"devicePass",get:function(){return this._devicePass}}]),t}(),urt=function(){function t(){this._renderScenes=[],this._devicePass=void 0,this._hint=_tt.NONE,this._graphQueue=void 0,this._phaseID=ET("default"),this._renderPhase=null,this._descSetData=null,this._viewport=null,this._scissor=null,this._layoutID=-1,this._isUpdateUBO=!1,this._isUploadInstance=!1,this._isUploadBatched=!1,this._blitDesc=null,this._queueId=-1}var e=t.prototype;return e.init=function(t,e,i){this.reset(),this._graphQueue=e,this.queueHint=e.hint;var n=this._viewport=e.viewport;n&&(this._scissor=new jc(n.left,n.top,n.width,n.height)),this.queueId=i,this._devicePass=t,this._phaseID=S.rendering.getPhaseID(t.passID,Knt.renderGraph.getLayout(i))},e.createBlitDesc=function(t){this._blitDesc||(this._blitDesc=new ort(t,this)),this._blitDesc.createScreenQuad(),this._blitDesc.createStageDescriptor()},e.setScene=function(t,e,i){var n=Knt.pools.addDeviceScene();return n.init(this,t,e,i),this._renderScenes.push(n),n},e.reset=function(){var t;this._renderScenes.length=0,this._isUpdateUBO=!1,this._isUploadInstance=!1,this._isUploadBatched=!1,null===(t=this._blitDesc)||void 0===t||t.reset()},e.preRecord=function(){},e.record=function(){this._descSetData&&this._descSetData.descriptorSet&&Knt.commandBuffer.bindDescriptorSet(Og.COUNT,this._descSetData.descriptorSet),this._renderScenes.forEach((function(t){t.record()}))},e.postRecord=function(){},n(t,[{key:"phaseID",get:function(){return this._phaseID}},{key:"layoutID",get:function(){return this._layoutID},set:function(t){this._layoutID=t;var e=Knt.layoutGraph;this._renderPhase=e.h(1,t)?e.j(t):null;var i=e.getLayout(t);this._descSetData=i.descriptorSets.get(rtt.PER_PHASE)}},{key:"descSetData",get:function(){return this._descSetData}},{key:"renderPhase",get:function(){return this._renderPhase}},{key:"viewport",get:function(){return this._viewport}},{key:"scissor",get:function(){return this._scissor}},{key:"queueId",get:function(){return this._queueId},set:function(t){this._queueId=t}},{key:"isUpdateUBO",get:function(){return this._isUpdateUBO},set:function(t){this._isUpdateUBO=t}},{key:"isUploadInstance",get:function(){return this._isUploadInstance},set:function(t){this._isUploadInstance=t}},{key:"isUploadBatched",get:function(){return this._isUploadBatched},set:function(t){this._isUploadBatched=t}},{key:"graphQueue",get:function(){return this._graphQueue}},{key:"blitDesc",get:function(){return this._blitDesc}},{key:"renderScenes",get:function(){return this._renderScenes}},{key:"queueHint",get:function(){return this._hint},set:function(t){this._hint=t}},{key:"devicePass",get:function(){return this._devicePass}}]),t}(),lrt=function(){function t(t,e,i){this._layoutID=0,this._vertID=-1,this._stage=null,this._layout=void 0,this._inputName=void 0,this._descriptorSet=null,this._inputName=i[0],this._layoutID=t,this._vertID=e;var n=Knt.layoutGraph;this._stage=n.j(t),this._layout=n.getLayout(t);var r=this._layout.descriptorSets.get(rtt.PER_PASS);if(r){var s=r.descriptorSet,a=Knt.deviceTextures.get(this._inputName),o=null==a?void 0:a.texture,h=Knt.deviceBuffers.get(this._inputName),u=null==h?void 0:h.buffer;if(!o&&!u)throw Error("Could not find texture with resource name "+this._inputName);for(var l,c=Knt.resourceGraph.vertex(this._inputName),_=Knt.resourceGraph.getSampler(c),d=f(i[1]);!(l=d()).done;)for(var p,m=l.value.name,g=n.attributeIndex.get(m),v=f(r.descriptorSetLayoutData.descriptorBlocks);!(p=v()).done;)for(var y=p.value,S=0;S!==y.descriptors.length;++S)if(g!==y.descriptors[S].descriptorID);else{if(o){s.bindTexture(y.offset+S,o);var T=Knt.renderGraph.getData(this._vertID);s.bindSampler(y.offset+S,T.samplers.get(g)||Knt.device.getSampler(_))}else if(Knt.resourceGraph.getDesc(c).flags&dtt.STORAGE){var A=i[1][0].accessType!==gtt.READ?Ec.COMPUTE_SHADER_WRITE:Ec.COMPUTE_SHADER_READ_OTHER;s.bindBuffer(y.offset+S,u,0,A)}else s.bindBuffer(y.offset+S,u);this._descriptorSet||(this._descriptorSet=s)}}}return n(t,[{key:"descriptorSet",get:function(){return this._descriptorSet}},{key:"layoutID",get:function(){return this._layoutID}},{key:"vertID",get:function(){return this._vertID}},{key:"stage",get:function(){return this._stage}},{key:"layout",get:function(){return this._layout}}]),t}(),crt=new $c,_rt=new jc,frt=new irt,drt=function(){function t(t,e){this._renderPass=void 0,this._framebuffer=void 0,this._clearColor=[],this._deviceQueues=new Map,this._clearDepth=1,this._clearStencil=0,this._passID=void 0,this._rasterID=void 0,this._rasterPass=void 0,this._layoutName=void 0,this._viewport=null,this._layout=null,this._idxOfRenderData=0,this._rasterID=t,this._rasterPass=e;var i=Knt.device;this._layoutName=Knt.renderGraph.getLayout(t),this._passID=S.rendering.getPassID(this._layoutName);var n=new C_;n.format=ec.DEPTH_STENCIL;for(var r,s=[],a=[],o=null,h=null,u=null,l=f(e.computeViews);!(r=l()).done;){var c=r.value;this._applyRenderLayout(c)}this.renderLayout&&this.renderLayout.descriptorSet&&this.renderLayout.descriptorSet.update();for(var _,d=f(e.rasterViews);!(_=d()).done;){var p=_.value,m=p[0],g=p[1],v=Knt.deviceTextures.get(m);if(v){var y=Knt.resourceGraph,T=y.vertex(m),A=y.object(T);if(v.framebuffer&&A instanceof cf&&v.framebuffer!==A)v.framebuffer=A;else if(v.texture){var b=y.getDesc(T);v.texture.width===b.width&&v.texture.height===b.height||v.texture.resize(b.width,b.height)}}else this.visitResource(m),v=Knt.deviceTextures.get(m);switch(h||(h=v.swapchain),u||(u=v.framebuffer),g.attachmentType){case ytt.RENDER_TARGET:v.swapchain||v.framebuffer||a.push(v.texture);var E=new E_;E.format=v.description.format,E.sampleCount=v.description.sampleCount,E.loadOp=g.loadOp,E.storeOp=g.storeOp,E.barrier=i.getGeneralBarrier(new I_(g.loadOp===Ac.LOAD?Ec.COLOR_ATTACHMENT_WRITE:Ec.NONE,g.storeOp===bc.STORE?Ec.COLOR_ATTACHMENT_WRITE:Ec.NONE));var C=new t_;C.copy(g.clearColor),this._clearColor.push(C),s.push(E);break;case ytt.DEPTH_STENCIL:n.depthStoreOp=g.storeOp,n.stencilStoreOp=g.storeOp,n.depthLoadOp=g.loadOp,n.stencilLoadOp=g.loadOp,n.barrier=i.getGeneralBarrier(new I_(g.loadOp===Ac.LOAD?Ec.DEPTH_STENCIL_ATTACHMENT_WRITE:Ec.NONE,g.storeOp===bc.STORE?Ec.DEPTH_STENCIL_ATTACHMENT_WRITE:Ec.NONE)),v.swapchain||v.framebuffer?v.swapchain&&(o=v.swapchain.depthStencilTexture):o=v.texture,this._clearDepth=g.clearColor.x,this._clearStencil=g.clearColor.y}}if(0===s.length){var x=new E_;s.push(x)}if(0===a.length&&!h&&!u){var w=i.createTexture(new u_);a.push(w)}var R=new R_;R.colorAttachments=s,(h?h.depthStencilTexture:o)&&(R.depthStencilAttachment=n),this._renderPass=i.createRenderPass(R),this._framebuffer=u||i.createFramebuffer(new M_(this._renderPass,h?[h.colorTexture]:a,h?h.depthStencilTexture:o))}var e=t.prototype;return e.addIdxOfRD=function(){this._idxOfRenderData++},e.visitResource=function(t){var e=Knt.resourceGraph,i=e.vertex(t);frt.resName=t,e.visitVertex(frt,i)},e.addQueue=function(t){this._deviceQueues.set(t.queueId,t)},e.preRecord=function(){Knt.passDescriptorSet=Iit(this.layoutName).descriptorSet},e._applyRenderLayout=function(t){var e=Knt.renderGraph.getLayout(this._rasterID);if(e){var i=Knt.layoutGraph,n=i.locateChild(i.N,e);4294967295!==n&&(this._layout=new lrt(n,this._rasterID,t))}},e.getGlobalDescData=function(){var t=Knt.layoutGraph.locateChild(Knt.layoutGraph.N,"default");return Knt.layoutGraph.getLayout(t).descriptorSets.get(rtt.PER_PASS)},e._applyViewport=function(){this._viewport=null;var t=this._rasterPass.viewport;0===t.left&&0===t.top&&0===t.width&&0===t.height||(this._viewport=t)},e._showProfiler=function(t){var e=Knt.pipeline.profiler;if(e&&e.enabled){var i=Knt.profilerDescriptorSet,n=this._renderPass,r=Knt.commandBuffer,s=e.subModels[0],a=s.passes[0],o=s.inputAssembler,h=Knt.device,u=GT.getOrCreatePipelineState(h,a,s.shaders[0],n,o);crt.width=t.width,crt.height=t.height,r.setViewport(crt),r.setScissor(t),r.bindPipelineState(u),r.bindDescriptorSet(Og.GLOBAL,i),r.bindDescriptorSet(Og.MATERIAL,a.descriptorSet),r.bindDescriptorSet(Og.LOCAL,s.descriptorSet),r.bindInputAssembler(o),r.draw(o)}},e.beginPass=function(){var t=this.framebuffer.colorTextures[0];this._applyViewport(t);var e=Knt.commandBuffer;this._viewport?(_rt.x=this._viewport.left,_rt.y=this._viewport.top,_rt.width=this._viewport.width,_rt.height=this._viewport.height):(_rt.y=_rt.x=0,_rt.width=t.width,_rt.height=t.height),e.beginRenderPass(this.renderPass,this.framebuffer,_rt,this.clearColor,this.clearDepth,this.clearStencil),Knt.passDescriptorSet&&e.bindDescriptorSet(Og.GLOBAL,Knt.passDescriptorSet)},e.endPass=function(){Knt.commandBuffer.endRenderPass()},e.record=function(){this.beginPass();for(var t,e=f(this._deviceQueues.values());!(t=e()).done;)t.value.record();this._rasterPass.showStatistics&&this._showProfiler(_rt),this.endPass()},e.postRecord=function(){},e.resetResource=function(t,e){this._rasterID=t,this._rasterPass=e,this._layoutName=Knt.renderGraph.getLayout(t),this._passID=S.rendering.getPassID(this._layoutName),this._deviceQueues.clear(),this._idxOfRenderData=0;for(var i,n=null,r=[],s=this._framebuffer,a=s.depthStencilTexture,o=s?a:null,h=f(e.computeViews);!(i=h()).done;){var u=i.value;this._applyRenderLayout(u)}this.renderLayout&&this.renderLayout.descriptorSet&&this.renderLayout.descriptorSet.update();for(var l,c=Knt.resourceGraph,_=s?s.width:0,d=s?s.height:0,p=0,m=0,g=f(e.rasterViews);!(l=g()).done;){var v=l.value,y=v[0];if(v[1].attachmentType!==ytt.SHADING_RATE){var T=c.vertex(y),A=c.getDesc(T);p=A.width,m=A.height;break}}for(var b,E=!1,C=f(s.colorTextures);!(b=C()).done;){var x=b.value;if(0===(null==x?void 0:x.getTextureHandle())){E=!0;break}}a&&!E&&(E=0===a.getTextureHandle());for(var w,R=p!==_||m!==d||s.needRebuild||E,I=f(e.rasterViews);!(w=I()).done;){var D=w.value,B=D[0],M=D[1],P=Knt.deviceTextures.get(B),O=P;P||(this.visitResource(B),P=Knt.deviceTextures.get(B));var L=Knt.resourceGraph,N=L.vertex(B),F=L.object(N),k=L.getDesc(N);if(P.framebuffer&&F instanceof cf&&(P.framebuffer!==F||F!==this._framebuffer))n=this._framebuffer=P.framebuffer=F;else if(!O||P.texture&&R){var G=P.texture;switch(O&&G.resize(k.width,k.height),M.attachmentType){case ytt.RENDER_TARGET:r.push(G);break;case ytt.DEPTH_STENCIL:o=G}}}!n&&r.length&&(this._framebuffer.destroy(),this._framebuffer=Knt.device.createFramebuffer(new M_(this._renderPass,r,o)))},n(t,[{key:"indexOfRD",get:function(){return this._idxOfRenderData}},{key:"rasterID",get:function(){return this._rasterID}},{key:"layoutName",get:function(){return this._layoutName}},{key:"passID",get:function(){return this._passID}},{key:"renderLayout",get:function(){return this._layout}},{key:"renderPass",get:function(){return this._renderPass}},{key:"framebuffer",get:function(){return this._framebuffer}},{key:"clearColor",get:function(){return this._clearColor}},{key:"clearDepth",get:function(){return this._clearDepth}},{key:"clearStencil",get:function(){return this._clearStencil}},{key:"deviceQueues",get:function(){return this._deviceQueues}},{key:"viewport",get:function(){return this._viewport}}]),t}(),prt=function(){function t(){this._id=void 0,this._pass=void 0}return t.prototype.applyInfo=function(t,e){this._id=t,this._pass=e},n(t,[{key:"id",get:function(){return this._id}},{key:"pass",get:function(){return this._pass}}]),t}(),mrt=function(){function t(t){this._deviceQueues=[],this._passID=void 0,this._layoutName=void 0,this._viewport=null,this._computeInfo=void 0,this._layout=null,this._computeInfo=t,this._layoutName=Knt.renderGraph.getLayout(t.id),this._passID=S.rendering.getPassID(this._layoutName);for(var e,i=f(t.pass.computeViews);!(e=i()).done;){var n=e.value,r=Knt.deviceTextures.get(n[0]);r||(this.visitResource(n[0]),r=Knt.deviceTextures.get(n[0])),this._applyRenderLayout(n)}this.renderLayout&&this.renderLayout.descriptorSet&&this.renderLayout.descriptorSet.update()}var e=t.prototype;return e.preRecord=function(){Knt.passDescriptorSet=Iit(this.layoutName).descriptorSet},e.postRecord=function(){},e.visitResource=function(t){var e=Knt.resourceGraph,i=e.vertex(t);frt.resName=t,e.visitVertex(frt,i)},e.addQueue=function(t){this._deviceQueues.push(t)},e._applyRenderLayout=function(t){var e=Knt.renderGraph.getLayout(this._computeInfo.id);if(e){var i=Knt.layoutGraph,n=i.locateChild(i.N,e);4294967295!==n&&(this._layout=new lrt(n,this._computeInfo.id,t))}},e.getGlobalDescData=function(){var t=Knt.layoutGraph.locateChild(Knt.layoutGraph.N,"default");return Knt.layoutGraph.getLayout(t).descriptorSets.get(rtt.PER_PASS)},e.record=function(){var t=Knt.commandBuffer;Knt.passDescriptorSet&&t.bindDescriptorSet(Og.GLOBAL,Knt.passDescriptorSet);for(var e,i=f(this._deviceQueues);!(e=i()).done;)e.value.record();Dit(Knt.renderGraph.getData(this._computeInfo.id),-1,0,Knt.renderGraph.getLayout(this._computeInfo.id))},e.resetResource=function(t,e){this._computeInfo.applyInfo(t,e),this._layoutName=Knt.renderGraph.getLayout(t),this._passID=S.rendering.getPassID(this._layoutName),this._deviceQueues.length=0;for(var i,n=f(this._computeInfo.pass.computeViews);!(i=n()).done;){var r=i.value;this._applyRenderLayout(r)}this.renderLayout&&this.renderLayout.descriptorSet&&this.renderLayout.descriptorSet.update()},n(t,[{key:"layoutName",get:function(){return this._layoutName}},{key:"passID",get:function(){return this._passID}},{key:"renderLayout",get:function(){return this._layout}},{key:"deviceQueues",get:function(){return this._deviceQueues}},{key:"computePassInfo",get:function(){return this._computeInfo}}]),t}(),grt=new $c,vrt=function(){function t(){this._currentQueue=void 0,this._renderPass=void 0,this._scene=null,this._camera=null,this._sceneData=void 0,this._blit=void 0,this._sceneID=-1}var e=t.prototype;return e.preRecord=function(){this._blit&&(this._currentQueue.createBlitDesc(this._blit),this._currentQueue.blitDesc.update()),Knt.lightResource.buildLightBuffer(Knt.commandBuffer),Knt.lightResource.tryUpdateRenderSceneLocalDescriptorSet(Knt.culling)},e.postRecord=function(){},e.init=function(t,e,i,n){this._currentQueue=t,this._sceneData=i,this._blit=n,this._sceneID=e,this._renderPass=t.devicePass.renderPass;var r=i&&i.camera?i.camera:null;r&&(this._scene=r.scene,this._camera=r)},e._recordUI=function(){var t=this._currentQueue.devicePass.rasterID,e=Knt.renderGraph.getData(t);this._updateGlobal(e,this.sceneID);var i=this._currentQueue.queueId,n=Knt.renderGraph.getData(i);this._updateGlobal(n,this.sceneID),this._currentQueue.isUpdateUBO=!0;for(var r=this.camera.scene.batches,s=0;s<r.length;s++){var a=r[s],o=!1;if(this.camera.visibility&a.visFlags&&(o=!0),o)for(var h=a.shaders.length,u=0;u<h;u++){var l=a.passes[u];if(l.phaseID===this._currentQueue.phaseID){var c=a.shaders[u],_=a.inputAssembler,f=GT.getOrCreatePipelineState(Ff.gfxDevice,l,c,this._renderPass,_);Knt.commandBuffer.bindPipelineState(f),Knt.commandBuffer.bindDescriptorSet(Og.MATERIAL,l.descriptorSet);var d=a.descriptorSet;Knt.commandBuffer.bindDescriptorSet(Og.LOCAL,d),Knt.commandBuffer.bindInputAssembler(_),Knt.commandBuffer.draw(_)}}}},e._recordBlit=function(){if(this.blit){var t=this.blit,e=t.material.passes[t.passID];e.update();var i=e.getShaderVariant(),n=this._currentQueue.devicePass,r=this._currentQueue.blitDesc.screenQuad.quadIA,s=null;null!==e&&null!==i&&null!==r&&(s=GT.getOrCreatePipelineState(Knt.device,e,i,n.renderPass,r)),s&&(Knt.commandBuffer.bindPipelineState(s),Knt.commandBuffer.bindDescriptorSet(Og.MATERIAL,e.descriptorSet),Knt.commandBuffer.bindDescriptorSet(Og.LOCAL,this._currentQueue.blitDesc.stageDesc),Knt.commandBuffer.bindInputAssembler(r),Knt.commandBuffer.draw(r))}},e._updateGlobal=function(t,e){var i=this._currentQueue.devicePass;i.addIdxOfRD(),Dit(t,e,i.indexOfRD,Knt.renderGraph.getLayout(i.rasterID))},e._updateRenderData=function(){if(!this._currentQueue.isUpdateUBO){var t=this._currentQueue.devicePass.rasterID,e=Knt.renderGraph.getData(t),i=this.sceneID;this._updateGlobal(e,i);var n=this._currentQueue.queueId,r=Knt.renderGraph.getData(n);this._updateGlobal(r,i);var s=Knt.renderGraph.getData(i);s&&this._updateGlobal(s,i),this._currentQueue.isUpdateUBO=!0}},e._applyViewport=function(){var t=this._currentQueue.viewport;if(t)Knt.commandBuffer.setViewport(t),Knt.commandBuffer.setScissor(this._currentQueue.scissor);else if(!this._currentQueue.devicePass.viewport){var e=this._currentQueue.devicePass.framebuffer.colorTextures[0],i=this.sceneData?this.sceneData.light:null,n=function(t){var e=S.director.root.pipeline.pipelineSceneData;return e.shadows.enabled&&e.shadows.type===WT.ShadowMap&&t&&0!=(t.flags&ptt.SHADOW_CASTER)}(this.sceneData)&&this.sceneData&&i.light?Tit(this.camera,e.width,e.height,i.light,i.level):Tit(this.camera,e.width,e.height);grt.left=n.x,grt.top=n.y,grt.width=n.width,grt.height=n.height,Knt.commandBuffer.setViewport(grt),Knt.commandBuffer.setScissor(n)}},e.record=function(){var t=this._currentQueue.devicePass,e=Knt.culling;if(this._updateRenderData(),this._applyViewport(),this.blit)this._recordBlit();else{var i,n=e.renderQueueQueryIndex.get(this.sceneID),r=e.renderQueues[n.renderQueueTarget],s=this.sceneData;Uit(s.flags&ptt.REFLECTION_PROBE)&&r.probeQueue.applyMacro(),r.recordCommands(Knt.commandBuffer,this._renderPass,s.flags),Uit(s.flags&ptt.REFLECTION_PROBE)&&r.probeQueue.removeMacro(),s.flags&ptt.GEOMETRY&&(null===(i=this.camera.geometryRenderer)||void 0===i||i.render(t.renderPass,Knt.commandBuffer,Knt.pipeline.pipelineSceneData)),s.flags&ptt.UI&&this._recordUI()}},n(t,[{key:"blit",get:function(){return this._blit}},{key:"sceneData",get:function(){return this._sceneData}},{key:"sceneID",get:function(){return this._sceneID}},{key:"camera",get:function(){return this._camera}}]),t}(),yrt=function(){function t(){this.deviceQueuePool=void 0,this.computeQueuePool=void 0,this.passPool=void 0,this.deviceScenePool=void 0,this.deviceQueuePool=new Rs((function(){return new urt}),16),this.deviceScenePool=new Rs((function(){return new vrt}),16),this.computeQueuePool=new Rs((function(){return new hrt}),16),this.passPool=new Rs((function(){return{priority:0,hash:0,depth:0,shaderId:0,subModel:null,passIdx:0}}),64)}var e=t.prototype;return e.addDeviceQueue=function(){return this.deviceQueuePool.add()},e.addComputeQueue=function(){return this.computeQueuePool.add()},e.addDeviceScene=function(){return this.deviceScenePool.add()},e.reset=function(){this.deviceQueuePool.reset(),this.computeQueuePool.reset(),this.deviceScenePool.reset()},t}(),Srt=new Float32Array(16),Trt=new jc,Art=function(){function t(t){this._pipelineIAData=void 0,this._context=void 0,this._width=void 0,this._height=void 0,this._lightVolumeBuffer=void 0,this._lightBufferData=void 0,this._deferredLitsBufView=void 0,this._localUBO=void 0,this._stageDescs=new Map,this._context=t,this._width=t.width,this._height=t.height,this._pipelineIAData=this._createQuadInputAssembler();var e=this._genQuadVertexData($l.IDENTITY,new jc(0,0,t.width,t.height));this._pipelineIAData.quadVB.update(e),this._createLightVolumes(),this._localUBO=t.device.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.DEVICE,ev.SIZE,ev.SIZE))}var e=t.prototype;return e.resize=function(t,e){if(t!==this._width||e!==this._height){Trt.y=Trt.x=0,Trt.width=t,Trt.height=e;var i=this._genQuadVertexData($l.IDENTITY,Trt);this._pipelineIAData.quadVB.update(i)}},e._createLightVolumes=function(){var t=this._context.root.device,e=20*Float32Array.BYTES_PER_ELEMENT*ov.LIGHTS_PER_PASS;e=Math.ceil(e/t.capabilities.uboOffsetAlignment)*t.capabilities.uboOffsetAlignment,this._lightVolumeBuffer=t.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,e,t.capabilities.uboOffsetAlignment)),this._deferredLitsBufView=t.createBuffer(new s_(this._lightVolumeBuffer,0,e)),this._lightBufferData=new Float32Array(e/Float32Array.BYTES_PER_ELEMENT)},e._genQuadVertexData=function(t,e){var i=e.x/this._context.width,n=(e.x+e.width)/this._context.width,r=e.y/this._context.height,s=(e.y+e.height)/this._context.height;if(this._context.root.device.capabilities.screenSpaceSignY>0){var a=s;s=r,r=a}var o=0;switch(t){case $l.IDENTITY:o=0,Srt[o++]=-1,Srt[o++]=-1,Srt[o++]=i,Srt[o++]=s,Srt[o++]=1,Srt[o++]=-1,Srt[o++]=n,Srt[o++]=s,Srt[o++]=-1,Srt[o++]=1,Srt[o++]=i,Srt[o++]=r,Srt[o++]=1,Srt[o++]=1,Srt[o++]=n,Srt[o++]=r;break;case $l.ROTATE_90:o=0,Srt[o++]=-1,Srt[o++]=-1,Srt[o++]=n,Srt[o++]=s,Srt[o++]=1,Srt[o++]=-1,Srt[o++]=n,Srt[o++]=r,Srt[o++]=-1,Srt[o++]=1,Srt[o++]=i,Srt[o++]=s,Srt[o++]=1,Srt[o++]=1,Srt[o++]=i,Srt[o++]=r;break;case $l.ROTATE_180:o=0,Srt[o++]=-1,Srt[o++]=-1,Srt[o++]=i,Srt[o++]=r,Srt[o++]=1,Srt[o++]=-1,Srt[o++]=n,Srt[o++]=r,Srt[o++]=-1,Srt[o++]=1,Srt[o++]=i,Srt[o++]=s,Srt[o++]=1,Srt[o++]=1,Srt[o++]=n,Srt[o++]=s;break;case $l.ROTATE_270:o=0,Srt[o++]=-1,Srt[o++]=-1,Srt[o++]=i,Srt[o++]=r,Srt[o++]=1,Srt[o++]=-1,Srt[o++]=i,Srt[o++]=s,Srt[o++]=-1,Srt[o++]=1,Srt[o++]=n,Srt[o++]=r,Srt[o++]=1,Srt[o++]=1,Srt[o++]=n,Srt[o++]=s}return Srt},e._createQuadInputAssembler=function(){var t=new BD,e=4*Float32Array.BYTES_PER_ELEMENT,i=4*e,n=S.director.root.device,r=n.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE|oc.HOST,i,e));if(!r)return t;var s=Uint16Array.BYTES_PER_ELEMENT,a=6*s,o=n.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,a,s));if(!o)return t;var h=new Uint16Array(6);h[0]=0,h[1]=1,h[2]=2,h[3]=1,h[4]=3,h[5]=2,o.update(h.buffer);var u=new Array(2);u[0]=new T_("a_position",ec.RG32F),u[1]=new T_("a_texCoord",ec.RG32F);var l=n.createInputAssembler(new b_(u,[r],o));return t.quadIB=o,t.quadVB=r,t.quadIA=l,t},n(t,[{key:"pipelineIAData",get:function(){return this._pipelineIAData}},{key:"deferredLitsBufView",get:function(){return this._deferredLitsBufView}},{key:"lightVolumeBuffer",get:function(){return this._lightVolumeBuffer}},{key:"lightBufferData",get:function(){return this._lightBufferData}},{key:"stageDescs",get:function(){return this._stageDescs}},{key:"emptyLocalUBO",get:function(){return this._localUBO}}]),t}(),brt=function(){function t(t,e,i,n,r,s,a,o){void 0===o&&(o=null),this.device=void 0,this.pipeline=void 0,this.commandBuffer=void 0,this.pipelineSceneData=void 0,this.resourceGraph=void 0,this.devicePasses=new Map,this.deviceTextures=new Map,this.deviceBuffers=new Map,this.layoutGraph=void 0,this.root=void 0,this.pools=void 0,this.blit=void 0,this.culling=void 0,this.lightResource=new ert,this.renderGraph=void 0,this.width=void 0,this.height=void 0,this.cullCamera=void 0,this.passDescriptorSet=void 0,this.profilerDescriptorSet=void 0,this.pipeline=t,this.device=e,this.commandBuffer=e.commandBuffer,this.pipelineSceneData=t.pipelineSceneData,this.resourceGraph=i,this.renderGraph=n,this.root=S.director.root,this.layoutGraph=r,this.width=s,this.height=a,this.pools=new yrt,this.blit=new Art(this),this.culling=new trt,this.passDescriptorSet=o,this.profilerDescriptorSet=Iit("default").descriptorSet}var e=t.prototype;return e.reset=function(){this.culling.clear(),this.pools.reset(),this.cullCamera=null,this.lightResource.clear()},e.resize=function(t,e){this.width=t,this.height=e,this.blit.resize(t,e)},t}(),Ert=function(){function t(t,e,i,n,r,s){this._context=void 0,this._visitor=void 0,Knt=this._context=new brt(t,e,i,new ket,n,r,s);var a=S.rendering.programLib;Knt.lightResource.init(a,e,16)}var e=t.prototype;return e.resize=function(t,e){Knt.resize(t,e)},e._removeDeviceResource=function(){for(var t,e=Knt.pipeline.resourceUses,i=[],n=Knt.deviceTextures,r=f(n);!(t=r()).done;){var s=t.value,a=s[0];s[1];var o=Knt.resourceGraph.vertex(a),h=Knt.resourceGraph.getTraits(o);if(!e.includes(a))switch(h.residency){case ctt.MANAGED:i.push(a)}}for(var u=0,l=i;u<l.length;u++){var c=l[u];n.get(c).release(),n.delete(c)}for(var _,d=[],p=Knt.deviceBuffers,m=f(p);!(_=m()).done;){var g=_.value,v=g[0];g[1];var y=Knt.resourceGraph.vertex(v),S=Knt.resourceGraph.getTraits(y);if(!e.includes(v))switch(S.residency){case ctt.MANAGED:d.push(v)}}for(var T=0,A=d;T<A.length;T++){var b=A[T];p.get(b).release(),p.delete(b)}e.length=0},e.execute=function(t){Knt.renderGraph=t,Knt.reset();var e=Knt.commandBuffer,i=Knt.culling;i.buildRenderQueues(t,Knt.layoutGraph,Knt.pipelineSceneData),Knt.lightResource.buildLights(i,Knt.pipelineSceneData.isHDR,Knt.pipelineSceneData.shadows),this._removeDeviceResource(),e.begin(),i.uploadInstancing(e),this._visitor||(this._visitor=new Rrt),Ztt(this._visitor.graphView,this._visitor,this._visitor.colorMap),e.end(),Knt.device.queue.submit([e])},e.release=function(){Knt.devicePasses.clear();for(var t,e=f(Knt.deviceTextures);!(t=e()).done;){var i=t.value;i[0],i[1].release()}Knt.deviceTextures.clear();for(var n,r=f(Knt.deviceBuffers);!(n=r()).done;){var s=n.value;s[0],s[1].release()}Knt.deviceBuffers.clear()},t}(),Crt=function(){function t(){this.queueID=4294967295,this.sceneID=4294967295,this.passID=4294967295,this.dispatchID=4294967295,this.currPass=void 0,this.currQueue=void 0,this.rg=void 0,this.rg=Knt.renderGraph}var e=t.prototype;return e._isRasterPass=function(t){return Knt.renderGraph.h(0,t)},e.isComputePass=function(t){return Knt.renderGraph.h(3,t)},e.isDispatch=function(t){return Knt.renderGraph.h(11,t)},e._isQueue=function(t){return Knt.renderGraph.h(8,t)},e._isScene=function(t){return Knt.renderGraph.h(9,t)},e._isBlit=function(t){return Knt.renderGraph.h(Net,t)},e.applyID=function(t){this._isRasterPass(t)?this.passID=t:this._isQueue(t)?this.queueID=t:this._isScene(t)||this._isBlit(t)?this.sceneID=t:this.isComputePass(t)?this.passID=t:this.isDispatch(t)&&(this.dispatchID=t)},t}(),xrt=function(t){function e(){return t.call(this)||this}s(e,t);var i=e.prototype;return i.clear=function(){},i.viewport=function(){},i.rasterPass=function(t){if(this.rg.getValid(this.passID)){var e=Knt.devicePasses,i=t.hashValue;this.currPass=e.get(i),this.currPass?this.currPass.resetResource(this.passID,t):(this.currPass=new drt(this.passID,t),e.set(i,this.currPass)),this.currPass.preRecord()}},i.rasterSubpass=function(){},i.computeSubpass=function(){},i.resolve=function(){},i.move=function(){},i.raytrace=function(){},i.compute=function(t){if(this.rg.getValid(this.passID)){Knt.devicePasses;var e=new prt;e.applyInfo(this.passID,t),this.currPass=new mrt(e),this.currPass.preRecord(),this.currPass.record()}},i.copy=function(t){if(t.uploadPairs.length)for(var e,i=f(t.uploadPairs);!(e=i()).done;){var n=e.value,r=Knt.deviceBuffers,s=Knt.resourceGraph,a=s.vertex(n.target);frt.resName=n.target,s.visitVertex(frt,a);var o=r.get(n.target);Knt.device.commandBuffer.updateBuffer(o.buffer,n.source,n.source.byteLength)}},i.queue=function(t){if(this.rg.getValid(this.queueID)){var e;this.currPass instanceof drt?((e=Knt.pools.addDeviceQueue()).init(this.currPass,t,this.queueID),this.currQueue=e,this.currPass.addQueue(e)):((e=Knt.pools.addComputeQueue()).init(this.currPass,t,this.queueID),this.currQueue=e,this.currPass.addQueue(e));var i=this.rg.getLayout(this.queueID);if(i){var n=Knt.layoutGraph;if(this.currPass.renderLayout){var r=n.locateChild(this.currPass.renderLayout.layoutID,i);this.currQueue.layoutID=r}}this.currQueue.preRecord()}},i.scene=function(t){this.rg.getValid(this.sceneID)&&this.currQueue.setScene(this.sceneID,t).preRecord()},i.blit=function(t){this.rg.getValid(this.sceneID)&&this.currQueue.setScene(this.sceneID,void 0,t).preRecord()},i.dispatch=function(t){var e,i=null,n=this.currPass,r=null===(e=t.material)||void 0===e?void 0:e.passes[t.passID];null==r||r.update();var s=null==r?void 0:r.getShaderVariant();if(null!==r&&null!==s){var a=new Sf(s,null==r?void 0:r.pipelineLayout);a.bindPoint=xc.COMPUTE,i=Ff.gfxDevice.createPipelineState(a)}var o=Knt.commandBuffer;if(i){o.bindPipelineState(i);var h=n.renderLayout.descriptorSet;o.bindDescriptorSet(Og.GLOBAL,h)}var u=t.threadGroupCountX,l=t.threadGroupCountY,c=t.threadGroupCountZ;o.dispatch(new o_(u,l,c))},e}(Crt),wrt=function(t){function e(){return t.call(this)||this}s(e,t);var i=e.prototype;return i.clear=function(){},i.viewport=function(){},i.rasterPass=function(t){var e=Knt.devicePasses,i=t.hashValue,n=e.get(i);n&&(this.currPass=n,this.currPass.record())},i.rasterSubpass=function(){},i.computeSubpass=function(){},i.resolve=function(){},i.compute=function(){},i.copy=function(){},i.move=function(){},i.raytrace=function(){},i.queue=function(){},i.scene=function(){},i.blit=function(){},i.dispatch=function(){},e}(Crt),Rrt=function(t){function e(){var e;return(e=t.call(this)||this)._preVisitor=void 0,e._postVisitor=void 0,e._graphView=void 0,e._colorMap=void 0,e._preVisitor=new xrt,e._postVisitor=new wrt,e._graphView=new $tt(Knt.renderGraph),e._colorMap=new vit(Knt.renderGraph.nv()),e}s(e,t);var i=e.prototype;return i.discoverVertex=function(t,e){var i=e.g;this._preVisitor.applyID(t),i.visitVertex(this._preVisitor,t)},i.finishVertex=function(t,e){e.g.visitVertex(this._postVisitor,t)},n(e,[{key:"graphView",get:function(){return this._graphView}},{key:"colorMap",get:function(){return this._colorMap}}]),e}(Jtt),Irt=new c_(dc.LINEAR,dc.LINEAR,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP),Drt=new c_(dc.POINT,dc.POINT,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP),Brt=function(){function t(t){this._descriptorSetMap=new Map,this._device=t,this._linearSampler=this._device.getSampler(Irt),this._pointSampler=this._device.getSampler(Drt);var e=new O_(Ig.bindings);this._descriptorSetLayout=this._device.createDescriptorSetLayout(e),this._globalDescriptorSet=this._device.createDescriptorSet(new L_(this._descriptorSetLayout))}var e=t.prototype;return e.regenLayout=function(){var t=new O_(Ig.bindings);this._descriptorSetLayout=this._device.createDescriptorSetLayout(t),this._globalDescriptorSet=this._device.createDescriptorSet(new L_(this._descriptorSetLayout))},e.bindBuffer=function(t,e){this._globalDescriptorSet.bindBuffer(t,e);for(var i=this._descriptorSetMap.values(),n=i.next();!n.done;)n.value.bindBuffer(t,e),n=i.next()},e.bindSampler=function(t,e){this._globalDescriptorSet.bindSampler(t,e);for(var i=this._descriptorSetMap.values(),n=i.next();!n.done;)n.value.bindSampler(t,e),n=i.next()},e.bindTexture=function(t,e){this._globalDescriptorSet.bindTexture(t,e);for(var i=this._descriptorSetMap.values(),n=i.next();!n.done;)n.value.bindTexture(t,e),n=i.next()},e.update=function(){this._globalDescriptorSet.update();for(var t=this._descriptorSetMap.values(),e=t.next();!e.done;)e.value.update(),e=t.next()},e.getOrCreateDescriptorSet=function(t){var e=this._device;if(!this._descriptorSetMap.has(t)){var i=this._globalDescriptorSet,n=e.createDescriptorSet(new L_(this._descriptorSetLayout));this._descriptorSetMap.set(t,n);for(var r=Rg.UBO_GLOBAL;r<Rg.COUNT;r++)n.bindBuffer(r,i.getBuffer(r)),n.bindSampler(r,i.getSampler(r)),n.bindTexture(r,i.getTexture(r));var s=e.createBuffer(new r_(rc.UNIFORM|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,Ug.SIZE,Ug.SIZE));n.bindBuffer(Ug.BINDING,s),n.update()}return this._descriptorSetMap.get(t)},e.destroy=function(){this._descriptorSetLayout.destroy()},n(t,[{key:"descriptorSetMap",get:function(){return this._descriptorSetMap}},{key:"linearSampler",get:function(){return this._linearSampler}},{key:"pointSampler",get:function(){return this._pointSampler}},{key:"descriptorSetLayout",get:function(){return this._descriptorSetLayout}},{key:"globalDescriptorSet",get:function(){return this._globalDescriptorSet},set:function(t){this._globalDescriptorSet=t}}]),t}(),Mrt=new Map,Prt=function(){function t(t){this.queueID=4294967295,this.sceneID=4294967295,this.passID=4294967295,this.dispatchID=4294967295,this.resID=4294967295,this.context=void 0,this._currPass=null,this._resVisitor=void 0,this.context=t,this._resVisitor=new Lrt(this.context)}var e=t.prototype;return e._isRasterPass=function(t){return this.context.renderGraph.h(0,t)},e._isCopyPass=function(t){return this.context.renderGraph.h(5,t)},e._isCompute=function(t){return this.context.renderGraph.h(3,t)},e._isDispatch=function(t){return this.context.renderGraph.h(11,t)},e._isQueue=function(t){return this.context.renderGraph.h(8,t)},e._isShadowMap=function(t){var e=this._getSceneData(t);return!!e&&e.light&&!!e.light.light&&0!=(e.flags&ptt.SHADOW_CASTER)},e._getSceneData=function(t){return this.context.renderGraph.h(9,t)?this.context.renderGraph.j(t):null},e._isScene=function(t){return this.context.renderGraph.h(9,t)},e._isBlit=function(t){return this.context.renderGraph.h(Net,t)},e._useResourceInfo=function(){},e._fetchValidPass=function(){var t=this.context.renderGraph;if(this.context.resourceContext,t.getValid(this.passID))return t.setValid(this.queueID,!0),void t.setValid(this.sceneID,!0);var e=this.resID,i=this.context.resourceGraph.vertexName(e);Mrt.clear();var n=this._currPass;t.getValid(this.passID);for(var r,s=f(n.rasterViews);!(r=s()).done;){var a=r.value,o=a[0],h=a[1];o!==i||h.accessType===gtt.READ?h.accessType!==gtt.WRITE&&Mrt.set(o,h):(t.setValid(this.passID,!0),t.setValid(this.queueID,!0),t.setValid(this.sceneID,!0))}if(t.getValid(this.sceneID)){for(var u,l=f(n.rasterViews);!(u=l()).done;){var c=u.value,_=c[0];c[1],krt.pipeline.resourceUses.push(_)}for(var d,p,m,g=f(Mrt);!(m=g()).done;){var v=m.value,y=v[0];v[1],4294967295!==(p=(d=this.context.resourceGraph).find(y))&&(this._resVisitor.resID=p,d.visitVertex(this._resVisitor,p))}for(var S,T=f(n.computeViews);!(S=T()).done;){var A=S.value,b=A[0];A[1],4294967295!==(p=(d=this.context.resourceGraph).find(b))&&(this._resVisitor.resID=p,d.visitVertex(this._resVisitor,p))}!function(t){for(var e,i="",n=f(t.rasterViews);!(e=n()).done;){var r=e.value,s=r[0],a=r[1];i+=Vit(s),i+=Vit(a.slotName),i+=Vit(a.accessType),i+=Vit(a.attachmentType),i+=Vit(a.loadOp),i+=Vit(a.storeOp),i+=Vit(a.clearFlags),i+=Vit(a.clearColor.x),i+=Vit(a.clearColor.y),i+=Vit(a.clearColor.z),i+=Vit(a.clearColor.w),i+=Vit(a.slotID),i+=Vit(a.shaderStageFlags)}for(var o,h=f(t.computeViews);!(o=h()).done;){var u=o.value,l=u[0],c=u[1];i+=Vit(l);for(var _,d=f(c);!(_=d()).done;){var p=_.value;i+=Vit(p.name),i+=Vit(p.accessType),i+=Vit(p.clearFlags),i+=Vit(p.clearValueType),i+=Vit(p.clearValue.x),i+=Vit(p.clearValue.y),i+=Vit(p.clearValue.z),i+=Vit(p.clearValue.w),i+=Vit(p.shaderStageFlags)}}i+=Vit(t.width),i+=Vit(t.height),i+=Vit(t.viewport.left),i+=Vit(t.viewport.top),i+=Vit(t.viewport.width),i+=Vit(t.viewport.height),i+=Vit(t.viewport.minDepth),i+=Vit(t.viewport.maxDepth),i+=Vit(t.showStatistics?1:0),t.hashValue=function(t){for(var e=0,i=0;i<t.length;i++)e=(e<<5)-e+t.charCodeAt(i),e|=0;return e}(i)}(n)}},e.applyID=function(t,e){this.resID=e,this._isRasterPass(t)||this._isCopyPass(t)||this._isCompute(t)?this.passID=t:this._isQueue(t)?this.queueID=t:this._isScene(t)||this._isBlit(t)?this.sceneID=t:this._isDispatch(t)&&(this.dispatchID=t)},e.rasterPass=function(t){this._currPass=t},e.rasterSubpass=function(){},e.computeSubpass=function(){},e.compute=function(t){this._currPass=t,krt.renderGraph.setValid(this.passID,!0)},e.resolve=function(){},e.copy=function(t){var e=krt.renderGraph;if(!e.getValid(this.passID)){var i=this.context.resourceGraph;this._currPass=t;for(var n,r,s=this.resID,a=i.vertexName(s),o=f(t.copyPairs);!(r=o()).done;){var h=r.value;h.target===a&&(e.setValid(this.passID,!0),4294967295!==(n=i.find(h.source))&&(this._resVisitor.resID=n,i.visitVertex(this._resVisitor,n)))}}},e.move=function(){},e.raytrace=function(){},e.queue=function(){},e.scene=function(){this._fetchValidPass()},e.blit=function(){this._fetchValidPass()},e.dispatch=function(){var t=this.context.renderGraph;t.setValid(this.queueID,!0),t.setValid(this.dispatchID,!0)},e.clear=function(){},e.viewport=function(){},t}(),Ort=function(t){function e(e,i){var n;return(n=t.call(this)||this)._colorMap=void 0,n._graphView=void 0,n._passVisitor=void 0,n._resId=4294967295,n._resId=i,n._passVisitor=new Prt(e),n._graphView=new $tt(e.renderGraph),n._colorMap=new vit(e.renderGraph.nv()),n}return s(e,t),e.prototype.discoverVertex=function(t,e){var i=e.g;this._passVisitor.applyID(t,this.resId),i.visitVertex(this._passVisitor,t)},n(e,[{key:"resId",get:function(){return this._resId},set:function(t){this._resId=t,this._colorMap.colors.length=krt.renderGraph.nv()}},{key:"graphView",get:function(){return this._graphView}},{key:"colorMap",get:function(){return this._colorMap}}]),e}(Jtt),Lrt=function(){function t(t){this._context=void 0,this.resID=4294967295,this._passManagerVis=void 0,this._context=t}var e=t.prototype;return e.managedBuffer=function(){},e.managedTexture=function(){},e.managed=function(){this.dependency()},e.persistentBuffer=function(){},e.dependency=function(){this._passManagerVis?this._passManagerVis.resId=this.resID:this._passManagerVis=new Ort(this._context,this.resID),Ztt(this._passManagerVis.graphView,this._passManagerVis,this._passManagerVis.colorMap)},e.persistentTexture=function(){this.dependency()},e.framebuffer=function(){this.dependency()},e.swapchain=function(){this.dependency()},e.formatView=function(){},e.subresourceView=function(){},t}(),Nrt=function(){function t(){this.resourceGraph=void 0,this.pipeline=void 0,this.renderGraph=void 0,this.layoutGraph=void 0,this.resourceContext=void 0}return t.prototype.set=function(t,e,i,n){this.pipeline=t,this.resourceGraph=e,this.renderGraph=i,this.layoutGraph=n,this.resourceContext||(this.resourceContext=new Map),this.resourceContext.clear()},t}(),Frt=function(){function t(t,e,i,n){this._resourceGraph=void 0,this._pipeline=void 0,this._layoutGraph=void 0,this._visitor=void 0,this._pipeline=t,this._resourceGraph=i,this._layoutGraph=n,krt.set(this._pipeline,this._resourceGraph,e,this._layoutGraph),this._visitor=new Grt(krt)}return t.prototype.compile=function(t){krt.set(this._pipeline,this._resourceGraph,t,this._layoutGraph),krt.pipeline.resourceUses.length=0,this._visitor.colorMap.colors.length=krt.resourceGraph.nv(),Ztt(this._resourceGraph,this._visitor,this._visitor.colorMap)},t}(),krt=new Nrt,Grt=function(t){function e(e){var i;return(i=t.call(this)||this)._colorMap=void 0,i._resourceGraph=void 0,i._resVisitor=void 0,i._colorMap=new vit(e.resourceGraph.nv()),i._resourceGraph=e.resourceGraph,i._resVisitor=new Lrt(e),i}return s(e,t),e.prototype.discoverVertex=function(t){var e=this._resourceGraph.getTraits(t);e.residency!==ctt.MANAGED&&e.residency!==ctt.MEMORYLESS&&(this._resVisitor.resID=t,this._resourceGraph.visitVertex(this._resVisitor,t))},n(e,[{key:"colorMap",get:function(){return this._colorMap}}]),e}(Jtt),Vrt=new cn,Urt=new c_(dc.POINT,dc.POINT,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP),zrt=function(){function t(){var t=this;this.renderData=new Let,this.layoutGraph=new nit,this.rg=new ket,this.vertId=-1,this.sceneData=new Met,this.resourceGraph=new Eet,this.computePass=new Cet,this.rasterPass=new vet,this.rasterSubpass=new met,this.renderQueue=new Bet,this.sceneBuilder=new Rs((function(){return new Hrt(t.renderData,t.layoutGraph,t.rg,t.vertId,t.sceneData)}),16),this.renderPassBuilder=new Rs((function(){return new jrt(t.renderData,t.rg,t.layoutGraph,t.resourceGraph,t.vertId,t.rasterPass,t.getPipelineSceneData())}),16),this.computeQueueBuilder=new Rs((function(){return new Yrt(t.renderData,t.rg,t.layoutGraph,t.vertId,t.renderQueue,t.getPipelineSceneData())}),16),this.renderQueueBuilder=new Rs((function(){return new Wrt(t.renderData,t.rg,t.layoutGraph,t.vertId,t.renderQueue,t.getPipelineSceneData())}),16),this.renderSubpassBuilder=new Rs((function(){return new Xrt(t.renderData,t.rg,t.layoutGraph,t.vertId,t.rasterSubpass,t.getPipelineSceneData())}),16),this.computePassBuilder=new Rs((function(){return new qrt(t.renderData,t.rg,t.layoutGraph,t.resourceGraph,t.vertId,t.computePass,t.getPipelineSceneData())}),16),this.samplerInfo=new Rs((function(){return new c_}),16),this.color=new Rs((function(){return new t_}),16),this.renderCommonObjectPool=new Ftt,this.renderGraphPool=new zet(this.renderCommonObjectPool),this.viewport=new Rs((function(){return new $c}),16)}var e=t.prototype;return e.getPipelineSceneData=function(){return S.director.root.pipeline.pipelineSceneData},e.createColor=function(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0);var r=this.color.add();return r.set(t,e,i,n),r},e.createSamplerInfo=function(t,e,i,n,r,s,a,o){void 0===t&&(t=dc.LINEAR),void 0===e&&(e=dc.LINEAR),void 0===i&&(i=dc.NONE),void 0===n&&(n=pc.WRAP),void 0===r&&(r=pc.WRAP),void 0===s&&(s=pc.WRAP),void 0===a&&(a=0),void 0===o&&(o=mc.ALWAYS);var h=this.samplerInfo.add();return h.minFilter=t,h.magFilter=e,h.mipFilter=i,h.addressU=n,h.addressV=r,h.addressW=s,h.maxAnisotropy=a,h.cmpFunc=o,h},e.reset=function(){this.sceneBuilder.reset(),this.renderPassBuilder.reset(),this.computePassBuilder.reset(),this.computeQueueBuilder.reset(),this.renderCommonObjectPool.reset(),this.renderGraphPool.reset(),this.viewport.reset(),this.samplerInfo.reset(),this.color.reset(),this.renderQueueBuilder.reset(),this.renderSubpassBuilder.reset()},t}(),Hrt=function(t){function e(e,i,n,r,s){var a;return(a=t.call(this,e,i)||this)._renderGraph=void 0,a._scene=void 0,a._renderGraph=n,a._scene=s,a._vertID=r,a}s(e,t);var i=e.prototype;return i.update=function(t,e,i,n,r){this._data=t,this._lg=e,this._renderGraph=i,this._scene=r,this._vertID=n},i.useLightFrustum=function(t,e,i){if(void 0===e&&(e=0),void 0===i&&(i=void 0),this._scene.light.light=t,this._scene.light.level=e,this._scene.light.culledByLight=!0,i&&(this._scene.camera=i),!(this._scene.flags&ptt.NON_BUILTIN)){var n=this._renderGraph.getParent(this._vertID),r=this._renderGraph.getParent(n);this._renderGraph.getLayout(r),$it(this,this._scene.camera,t,e)}},e}(ent),Wrt=function(t){function e(e,i,n,r,s,a){var o;return(o=t.call(this,e,n)||this)._renderGraph=void 0,o._queue=void 0,o._pipeline=void 0,o._renderGraph=i,o._vertID=r,o._queue=s,o._pipeline=a,o}s(e,t);var i=e.prototype;return i.update=function(t,e,i,n,r,s){this._data=t,this._lg=i,this._renderGraph=e,this._vertID=n,this._queue=r,this._pipeline=s},i.setArrayBuffer=function(){throw new Error("Method not implemented.")},i.addSceneOfCamera=function(t,e,i,n){void 0===i&&(i=ptt.NONE),void 0===n&&(n="Camera");var r=e.light,s=Znt.createSceneData(t.scene,t,i,!r||i&ptt.SHADOW_CASTER?1:5,r);this._renderGraph.addVertex(9,s,n,"",Znt.createRenderData(),!1,this._vertID),this.getParentLayout();var a=S.director.getScene();Yit(this,t,this._pipeline,t.scene||(a?a.renderScene:null)),i&ptt.SHADOW_CASTER||r&&r.type!==CR.DIRECTIONAL?$it(this,t,r,e.level):tnt(this,t)},i.addScene=function(t,e,i,n){void 0===e&&(e=ptt.NONE),void 0===i&&(i=void 0),void 0===n&&(n=void 0);var r=Znt.createSceneData(n||t.scene,t,e,!i||e&ptt.SHADOW_CASTER?1:5,i),s=Znt.createRenderData(),a=this._renderGraph.addVertex(9,r,"Scene","",s,!1,this._vertID);e&ptt.NON_BUILTIN||(this.getParentLayout(),Yit(this,t,this._pipeline,n||t.scene),i&&i.type!==CR.DIRECTIONAL?$it(this,t,i,0):e&ptt.SHADOW_CASTER||tnt(this,t));var o=Qnt.sceneBuilder.add();return o.update(s,this._lg,this._renderGraph,a,r),o},i.addFullscreenQuad=function(t,e,i,n){void 0===i&&(i=ptt.NONE),void 0===n&&(n="Quad"),this._renderGraph.addVertex(Net,Znt.createBlit(t,e,i,null),n,"",Znt.createRenderData(),!1,this._vertID),this.getParentLayout();var r=S.director.getScene();Yit(this,null,this._pipeline,r?r.renderScene:null),i&ptt.SHADOW_CASTER||tnt(this,null)},i.addCameraQuad=function(t,e,i,n){void 0===n&&(n=ptt.NONE),this._renderGraph.addVertex(Net,Znt.createBlit(e,i,n,t),"CameraQuad","",Znt.createRenderData(),!1,this._vertID),this.getParentLayout();var r=S.director.getScene();Yit(this,t,this._pipeline,t.scene||(r?r.renderScene:null)),n&ptt.SHADOW_CASTER||tnt(this,t)},i.clearRenderTarget=function(t,e){void 0===e&&(e=new t_);var i=Znt.createClearView(t,Fc.COLOR);i.clearColor.copy(e),this._renderGraph.addVertex(12,[i],"ClearRenderTarget","",Znt.createRenderData(),!1,this._vertID)},i.setViewport=function(t){var e=Qnt.viewport.add();this._queue.viewport=e.copy(t)},i.addCustomCommand=function(){throw new Error("Method not implemented.")},n(e,[{key:"name",get:function(){return this._renderGraph.getName(this._vertID)},set:function(t){this._renderGraph.setName(this._vertID,t)}}]),e}(ent),Xrt=function(t){function e(e,i,n,r,s,a){var o;(o=t.call(this,e,n)||this)._renderGraph=void 0,o._layoutID=void 0,o._subpass=void 0,o._pipeline=void 0,o._renderGraph=i,o._vertID=r,o._subpass=s,o._pipeline=a;var h=o._renderGraph.getLayout(o._vertID);return o._layoutID=n.locateChild(n.N,h),o}s(e,t);var i=e.prototype;return i.update=function(t,e,i,n,r,s){this._data=t,this._lg=i,this._renderGraph=e,this._vertID=n,this._subpass=r,this._pipeline=s;var a=this._renderGraph.getLayout(this._vertID);this._layoutID=i.locateChild(i.N,a)},i.addRenderTarget=function(){throw new Error("Method not implemented.")},i.setCustomShaderStages=function(){throw new Error("Method not implemented.")},i.setArrayBuffer=function(){throw new Error("Method not implemented.")},i.addDepthStencil=function(t,e,i,n,r,s,a,o,h){throw void 0===r&&(r=Ac.CLEAR),void 0===s&&(s=bc.STORE),void 0===h&&(h=Fc.DEPTH_STENCIL),new Error("Method not implemented.")},i.addTexture=function(){throw new Error("Method not implemented.")},i.addStorageBuffer=function(){throw new Error("Method not implemented.")},i.addStorageImage=function(){throw new Error("Method not implemented.")},i.setViewport=function(){throw new Error("Method not implemented.")},i.addQueue=function(t,e){void 0===t&&(t=_tt.RENDER_OPAQUE),void 0===e&&(e="default");var i=this._lg.locateChild(this._layoutID,e),n=Znt.createRenderQueue(t,i),r=Znt.createRenderData(),s=this._renderGraph.addVertex(8,n,"",e,r,!1,this._vertID),a=Qnt.renderQueueBuilder.add();return a.update(r,this._renderGraph,this._lg,s,n,this._pipeline),a},n(e,[{key:"name",get:function(){return this._renderGraph.getName(this._vertID)},set:function(t){this._renderGraph.setName(this._vertID,t)}},{key:"showStatistics",get:function(){return this._subpass.showStatistics},set:function(t){this._subpass.showStatistics=t}}]),e}(ent),jrt=function(t){function e(e,i,n,r,s,a,o){var h;(h=t.call(this,e,n)||this)._renderGraph=void 0,h._layoutID=void 0,h._pass=void 0,h._pipeline=void 0,h._resourceGraph=void 0,h._renderGraph=i,h._resourceGraph=r,h._vertID=s,h._pass=a,h._pipeline=o;var u=h._renderGraph.getLayout(h._vertID);return h._layoutID=n.locateChild(n.N,u),h}s(e,t);var i=e.prototype;return i.update=function(t,e,i,n,r,s,a){this._renderGraph=e,this._lg=i,this._resourceGraph=n,this._vertID=r,this._pass=s,this._pipeline=a,this._data=t;var o=this._renderGraph.getLayout(this._vertID);this._layoutID=i.locateChild(i.N,o)},i.setCustomShaderStages=function(){throw new Error("Method not implemented.")},i.setArrayBuffer=function(){throw new Error("Method not implemented.")},i.setVersion=function(t,e){this._pass.versionName=t,this._pass.version=e},i.addRenderTarget=function(t,e,i,n){void 0===e&&(e=Ac.CLEAR),void 0===i&&(i=bc.STORE),void 0===n&&(n=new t_);var r=Fc.COLOR;e===Ac.LOAD&&(r=Fc.NONE);var s=Znt.createRasterView("",gtt.WRITE,ytt.RENDER_TARGET,e,i,r);s.clearColor.copy(n),this._pass.rasterViews.set(t,s)},i.addDepthStencil=function(t,e,i,n,r,s){void 0===e&&(e=Ac.CLEAR),void 0===i&&(i=bc.STORE),void 0===n&&(n=1),void 0===r&&(r=0),void 0===s&&(s=Fc.DEPTH_STENCIL);var a=Znt.createRasterView("",gtt.WRITE,ytt.DEPTH_STENCIL,e,i,s);a.clearColor.set(n,r,0,0),this._pass.rasterViews.set(t,a)},i.resolveRenderTarget=function(){},i.resolveDepthStencil=function(){},i._addComputeResource=function(t,e,i){var n,r=Znt.createComputeView(i);r.accessType=e,this._pass.computeViews.has(t)?null===(n=this._pass.computeViews.get(t))||void 0===n||n.push(r):this._pass.computeViews.set(t,[r])},i.addTexture=function(t,e,i){if(void 0===i&&(i=null),this._addComputeResource(t,gtt.READ,e),i){var n=this._lg.attributeIndex.get(e);this._data.samplers.set(n,i)}},i.addStorageBuffer=function(t,e,i){this._addComputeResource(t,e,i)},i.addStorageImage=function(t,e,i){this._addComputeResource(t,e,i)},i.addRenderSubpass=function(t){void 0===t&&(t="");var e="Raster",i=this._pass.subpassGraph.nv();this._pass.subpassGraph.addVertex(e,Znt.createSubpass());var n=Znt.createRasterSubpass(i,1,0),r=Znt.createRenderData(),s=this._renderGraph.addVertex(1,n,e,t,r,!1),a=Qnt.renderSubpassBuilder.add();return a.update(r,this._renderGraph,this._lg,s,n,this._pipeline),a},i.addQueue=function(t,e){void 0===t&&(t=_tt.RENDER_OPAQUE),void 0===e&&(e="default");var i=this._lg.locateChild(this._layoutID,e),n=Znt.createRenderQueue(t,i),r=Znt.createRenderData(),s=this._renderGraph.addVertex(8,n,"",e,r,!1,this._vertID),a=Qnt.renderQueueBuilder.add();return a.update(r,this._renderGraph,this._lg,s,n,this._pipeline),a},i.addFullscreenQuad=function(t,e,i,n){void 0===i&&(i=ptt.NONE),void 0===n&&(n="FullscreenQuad");var r=Znt.createRenderQueue(_tt.RENDER_TRANSPARENT),s=this._renderGraph.addVertex(8,r,"Queue","",Znt.createRenderData(),!1,this._vertID);this._renderGraph.addVertex(Net,Znt.createBlit(t,e,i,null),n,"",Znt.createRenderData(),!1,s)},i.addCameraQuad=function(t,e,i,n,r){void 0===r&&(r="CameraQuad");var s=Znt.createRenderQueue(_tt.RENDER_TRANSPARENT),a=this._renderGraph.addVertex(8,s,"Queue","",Znt.createRenderData(),!1,this._vertID);this._renderGraph.addVertex(Net,Znt.createBlit(e,i,n,t),r,"",Znt.createRenderData(),!1,a)},i.setViewport=function(t){this._pass.viewport.copy(t)},n(e,[{key:"name",get:function(){return this._renderGraph.getName(this._vertID)},set:function(t){this._renderGraph.setName(this._vertID,t)}},{key:"showStatistics",get:function(){return this._pass.showStatistics},set:function(t){this._pass.showStatistics=t}}]),e}(ent),Yrt=function(t){function e(e,i,n,r,s,a){var o;return(o=t.call(this,e,n)||this)._renderGraph=void 0,o._queue=void 0,o._pipeline=void 0,o._renderGraph=i,o._vertID=r,o._queue=s,o._pipeline=a,o}s(e,t);var i=e.prototype;return i.update=function(t,e,i,n,r,s){this._data=t,this._lg=i,this._renderGraph=e,this._vertID=n,this._queue=r,this._pipeline=s},i.setArrayBuffer=function(){throw new Error("Method not implemented.")},i.addDispatch=function(t,e,i,n,r,s){void 0===n&&(n=null),void 0===r&&(r=0),void 0===s&&(s="Dispatch"),this._renderGraph.addVertex(11,Znt.createDispatch(n,r,t,e,i),s,"",Znt.createRenderData(),!1,this._vertID)},n(e,[{key:"name",get:function(){return this._renderGraph.getName(this._vertID)},set:function(t){this._renderGraph.setName(this._vertID,t)}}]),e}(ent),qrt=function(t){function e(e,i,n,r,s,a,o){var h;(h=t.call(this,e,n)||this)._renderGraph=void 0,h._resourceGraph=void 0,h._layoutID=void 0,h._pass=void 0,h._pipeline=void 0,h._renderGraph=i,h._resourceGraph=r,h._vertID=s,h._pass=a,h._pipeline=o;var u=h._renderGraph.getLayout(h._vertID);return h._layoutID=n.locateChild(n.N,u),h}s(e,t);var i=e.prototype;return i.update=function(t,e,i,n,r,s,a){this._data=t,this._renderGraph=e,this._lg=i,this._resourceGraph=n,this._vertID=r,this._pass=s,this._pipeline=a;var o=this._renderGraph.getLayout(this._vertID);this._layoutID=i.locateChild(i.N,o)},i.setCustomShaderStages=function(){throw new Error("Method not implemented.")},i.setArrayBuffer=function(){throw new Error("Method not implemented.")},i.addTexture=function(){throw new Error("Method not implemented.")},i.addStorageBuffer=function(t,e,i){this._addComputeResource(t,e,i)},i.addStorageImage=function(t,e,i){this._addComputeResource(t,e,i)},i.addMaterialTexture=function(){throw new Error("Method not implemented.")},i.addQueue=function(t){void 0===t&&(t="default");var e=this._lg.locateChild(this._layoutID,t),i=Znt.createRenderQueue(_tt.RENDER_OPAQUE,e),n=Znt.createRenderData(),r=this._renderGraph.addVertex(8,i,"",t,n,!1,this._vertID),s=Qnt.computeQueueBuilder.add();return s.update(n,this._renderGraph,this._lg,r,i,this._pipeline),s},i._addComputeResource=function(t,e,i){var n,r=Znt.createComputeView(i);r.accessType=e,this._pass.computeViews.has(t)?null===(n=this._pass.computeViews.get(t))||void 0===n||n.push(r):this._pass.computeViews.set(t,[r])},n(e,[{key:"name",get:function(){return this._renderGraph.getName(this._vertID)},set:function(t){this._renderGraph.setName(this._vertID,t)}}]),e}(ent);!function(){function t(t,e,i){this._renderGraph=void 0,this._vertID=void 0,this._pass=void 0,this._renderGraph=t,this._vertID=e,this._pass=i}var e=t.prototype;e.setCustomBehavior=function(){throw new Error("Method not implemented.")},e.addPair=function(t){this._pass.movePairs.push(t)},n(t,[{key:"name",get:function(){return this._renderGraph.getName(this._vertID)},set:function(t){this._renderGraph.setName(this._vertID,t)}}])}(),function(){function t(t,e,i){this._renderGraph=void 0,this._vertID=void 0,this._pass=void 0,this._renderGraph=t,this._vertID=e,this._pass=i}var e=t.prototype;e.addPair=function(){throw new Error("Method not implemented.")},e.setCustomBehavior=function(){throw new Error("Method not implemented.")},n(t,[{key:"name",get:function(){return this._renderGraph.getName(this._vertID)},set:function(t){this._renderGraph.setName(this._vertID,t)}}])}();var Krt=function(){function t(t){this._width=0,this._height=0,this._usesDeferredPipeline=!1,this._copyPassMat=new zT,this._device=void 0,this._globalDSManager=void 0,this._defaultSampler=void 0,this._globalDescriptorSet=null,this._globalDescriptorSetInfo=null,this._globalDescriptorSetLayout=null,this._profilerDescriptorSet=null,this._macros={},this._pipelineSceneData=new sB,this._constantMacros="",this._lightingMode=vtt.DEFAULT,this._profiler=null,this._cameras=[],this._resourceUses=[],this._layoutGraph=void 0,this._resourceGraph=new Eet,this._renderGraph=null,this._compiler=null,this._executor=null,this._customPipelineName="",this._globalDescSetData=void 0,this._combineSignY=0,this._layoutGraph=t}var e=t.prototype;return e.addCustomBuffer=function(){throw new Error("Method not implemented.")},e.addCustomTexture=function(){throw new Error("Method not implemented.")},e.tryAddRenderWindowDepthStencil=function(t,e,i,n){i&&(n?this.addDepthStencilImpl(i,n.depthStencilTexture.format,t,e,ctt.BACKBUFFER,n):this.addDepthStencilImpl(i,ec.DEPTH_STENCIL,t,e,ctt.MANAGED))},e.addRenderWindow=function(t,e,i,n,r,s){var a=this._resourceGraph.find(t);if(4294967295!==a)return this.updateRenderWindow(t,r,s),a;this.tryAddRenderWindowDepthStencil(i,n,s,r.swapchain);var o=new net;return o.dimension=ftt.TEXTURE2D,o.width=i,o.height=n,o.depthOrArraySize=1,o.mipLevels=1,o.format=r.framebuffer.colorTextures[0].format,o.flags=dtt.COLOR_ATTACHMENT,r.swapchain?this._resourceGraph.addVertex(6,new set(r.swapchain),t,o,new ret(ctt.BACKBUFFER),new aet,new c_):(o.sampleCount=r.framebuffer.colorTextures[0].info.samples,this._resourceGraph.addVertex(5,r.framebuffer,t,o,new ret(ctt.EXTERNAL),new aet,new c_))},e.updateRenderWindow=function(t,e,i){var n=this.resourceGraph.vertex(t),r=this.resourceGraph.getDesc(n);r.width=e.width,r.height=e.height,this.resourceGraph.object(n)!==e.framebuffer&&(this.resourceGraph.x[n].j=e.framebuffer),this.tryAddRenderWindowDepthStencil(e.width,e.height,i,e.swapchain)},e.updateStorageBuffer=function(t,e,i){void 0===i&&(i=ec.UNKNOWN);var n=this.resourceGraph.vertex(t),r=this.resourceGraph.getDesc(n);r.width=e,i!==ec.UNKNOWN&&(r.format=i)},e.updateRenderTarget=function(t,e,i,n){void 0===n&&(n=ec.UNKNOWN);var r=this.resourceGraph.vertex(t),s=this.resourceGraph.getDesc(r);s.width=e,s.height=i,n!==ec.UNKNOWN&&(s.format=n)},e.updateDepthStencil=function(t,e,i,n){void 0===n&&(n=ec.UNKNOWN);var r=this.resourceGraph.find(t);4294967295!==r&&this.updateDepthStencilImpl(r,e,i,n)},e.updateStorageTexture=function(t,e,i,n){void 0===n&&(n=ec.UNKNOWN);var r=this.resourceGraph.vertex(t),s=this.resourceGraph.getDesc(r);s.width=e,s.height=i,n!==ec.UNKNOWN&&(s.format=n)},e.updateShadingRateTexture=function(t,e,i){var n=this.resourceGraph.vertex(t),r=this.resourceGraph.getDesc(n);r.width=e,r.height=i},e.addBuffer=function(t,e,i,n){var r=this._resourceGraph.find(t);if(4294967295!==r)return this.updateBuffer(t,e),r;var s=new net;return s.dimension=ftt.BUFFER,s.width=e,s.flags=i,this._resourceGraph.addVertex(0,new _et,t,s,new ret(n),new aet,new c_(dc.LINEAR,dc.LINEAR,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP))},e.updateBuffer=function(t,e){this.updateResource(t,ec.UNKNOWN,e,0,0,0,0,_c.X1)},e.addExternalTexture=function(){throw new Error("Method not implemented.")},e.updateExternalTexture=function(){throw new Error("Method not implemented.")},e.addTexture=function(t,e,i,n,r,s,a,o,h,u,l){var c=this._resourceGraph.find(t);if(4294967295!==c)return this.updateTexture(t,i,n,r,s,a,o,h),c;var _=new net;return _.dimension=function(t){switch(t){case hc.TEX1D:case hc.TEX1D_ARRAY:return ftt.TEXTURE1D;case hc.TEX2D:case hc.TEX2D_ARRAY:case hc.CUBE:return ftt.TEXTURE2D;case hc.TEX3D:return ftt.TEXTURE3D}return ftt.TEXTURE2D}(e),_.width=n,_.height=r,_.depthOrArraySize=_.dimension===ftt.TEXTURE3D?s:a,_.mipLevels=o,_.format=i,_.sampleCount=h,_.flags=u,_.viewType=e,this._resourceGraph.addVertex(0,new _et,t,_,new ret(l),new aet,new c_(dc.LINEAR,dc.LINEAR,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP))},e.updateTexture=function(t,e,i,n,r,s,a,o){this.updateResource(t,e,i,n,r,s,a,o)},e.addResource=function(t,e,i,n,r,s,a,o,h,u,l){var c=this._resourceGraph.find(t);return 4294967295!==c?(this.updateResource(t,i,n,r,s,a,o,h),c):e===ftt.BUFFER?this.addBuffer(t,n,u,l):this.addTexture(t,function(t,e){switch(t){case ftt.TEXTURE1D:return e>1?hc.TEX1D_ARRAY:hc.TEX1D;case ftt.TEXTURE2D:return e>1?hc.TEX2D_ARRAY:hc.TEX2D;case ftt.TEXTURE3D:return hc.TEX3D;case ftt.BUFFER:return hc.TEX2D}return hc.TEX2D}(e,a),i,n,r,s,a,o,h,u,l)},e.updateResource=function(t,e,i,n,r,s,a,o){var h=this.resourceGraph.vertex(t),u=this.resourceGraph.getDesc(h);u.width=i,u.height=n,u.depthOrArraySize=u.dimension===ftt.TEXTURE3D?r:s,u.mipLevels=a,e!==ec.UNKNOWN&&(u.format=e),u.sampleCount=o},e.containsResource=function(t){return this._resourceGraph.contains(t)},e.addResolvePass=function(){throw new Error("Method not implemented.")},e.addComputePass=function(t){var e=Znt.createComputePass(),i=Znt.createRenderData(),n=this._renderGraph.addVertex(3,e,"Compute",t,i,!1),r=Qnt.computePassBuilder.add();return r.update(i,this._renderGraph,this._layoutGraph,this._resourceGraph,n,e,this._pipelineSceneData),S.director.root.pipeline,r},e.addUploadPass=function(t){for(var e,i=Znt.createCopyPass(),n=f(t);!(e=n()).done;){var r=e.value;i.uploadPairs.push(r)}this._renderGraph.addVertex(5,i,"UploadPass","",Znt.createRenderData(),!1)},e.addCopyPass=function(t){for(var e,i=f(t);!(e=i()).done;){var n=e.value,r=n.target,s=this.resourceGraph.find(r),a=this.resourceGraph.getDesc(s),o=this.addRenderPass(a.width,a.height,"copy-pass");o.addRenderTarget(r,Ac.CLEAR,bc.STORE,Qnt.createColor()),o.addTexture(n.source,"outputResultMap"),o.addQueue(_tt.NONE).addFullscreenQuad(this._copyPassMat,0,ptt.NONE)}},e._generateConstantMacros=function(){var t="";t+="#define CC_DEVICE_SUPPORT_FLOAT_TEXTURE "+(this._device.getFormatFeatures(ec.RGBA32F)&(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE)?1:0)+"\n",t+="#define CC_DEVICE_MAX_VERTEX_UNIFORM_VECTORS "+this._device.capabilities.maxVertexUniformVectors+"\n",t+="#define CC_DEVICE_MAX_FRAGMENT_UNIFORM_VECTORS "+this._device.capabilities.maxFragmentUniformVectors+"\n",t+="#define CC_DEVICE_CAN_BENEFIT_FROM_INPUT_ATTACHMENT "+(this._device.hasFeature(tc.INPUT_ATTACHMENT_BENEFIT)?1:0)+"\n",t+="#define CC_PLATFORM_ANDROID_AND_WEBGL "+(Zs.os===Ys.ANDROID&&Zs.isBrowser?1:0)+"\n",t+="#define CC_ENABLE_WEBGL_HIGHP_STRUCT_VALUES "+(Pe.ENABLE_WEBGL_HIGHP_STRUCT_VALUES?1:0)+"\n",t+="#define CC_JOINT_UNIFORM_CAPACITY "+cv.JOINT_UNIFORM_CAPACITY+"\n",this._constantMacros=t,this._layoutGraph.constantMacros=this._constantMacros},e.setCustomPipelineName=function(t){this._customPipelineName=t,"Deferred"===this._customPipelineName&&(this._usesDeferredPipeline=!0)},e.getGlobalDescriptorSetData=function(){var t=this.layoutGraph.locateChild(this.layoutGraph.N,"default");return this.layoutGraph.getLayout(t).descriptorSets.get(rtt.PER_PASS)},e._initCombineSignY=function(){var t=this._device;this._combineSignY=.5*t.capabilities.screenSpaceSignY+.5<<1|.5*t.capabilities.clipSpaceSignY+.5},e.getCombineSignY=function(){return this._combineSignY},e._compileMaterial=function(){this._copyPassMat.initialize({effectName:"pipeline/copy-pass"});for(var t=0;t<this._copyPassMat.passes.length;++t)this._copyPassMat.passes[t].tryCompile()},e.activate=function(){this._device=Ff.gfxDevice,Qnt=new zrt,Znt=Qnt.renderGraphPool,function(t,e){for(var i=0;i<e._layouts.length;++i)e.getLayout(i).descriptorSets.forEach((function(e){var i=e,n=i.descriptorSetLayoutData;if(t){var r=vnt(t,n);r&&(i.descriptorSetLayout=r,i.descriptorSet=t.createDescriptorSet(new L_(r)))}else gnt(n,i.descriptorSetLayoutInfo)}))}(this._device,this._layoutGraph),this._globalDSManager=new Brt(this._device),this._globalDescSetData=this.getGlobalDescriptorSetData(),this._globalDescriptorSetLayout=this._globalDescSetData.descriptorSetLayout,this._globalDescriptorSetInfo=new L_(this._globalDescriptorSetLayout),this._globalDescriptorSet=this._device.createDescriptorSet(this._globalDescriptorSetInfo),this._profilerDescriptorSet=this._device.createDescriptorSet(this._globalDescriptorSetInfo),this._globalDSManager.globalDescriptorSet=this.globalDescriptorSet,this._compileMaterial(),this.setMacroBool("CC_USE_HDR",this._pipelineSceneData.isHDR),this.setMacroBool("CC_USE_FLOAT_OUTPUT",Pe.ENABLE_FLOAT_OUTPUT&&ly(this._device)),this._generateConstantMacros(!1),this._pipelineSceneData.activate(this._device),this._initCombineSignY();var e=uy(this._device)?0:1;this.setMacroInt("CC_SHADOWMAP_FORMAT",e);var i=this._device.gfxAPI===Jl.WEBGL?1:0;this.setMacroInt("CC_SHADOWMAP_USE_LINEAR_DEPTH",i);var n=S.director.root;return this._defaultSampler=n.device.getSampler(Urt),this.pipelineSceneData.csmSupported=this.device.capabilities.maxFragmentUniformVectors>=t.CSM_UNIFORM_VECTORS+t.GLOBAL_UNIFORM_VECTORS,this.setMacroBool("CC_SUPPORT_CASCADED_SHADOW_MAP",this.pipelineSceneData.csmSupported),this.setMacroInt("CC_SHADOW_TYPE",0),this.setMacroInt("CC_DIR_SHADOW_PCF_TYPE",XT.HARD),this.setMacroInt("CC_DIR_LIGHT_SHADOW_TYPE",0),this.setMacroBool("CC_CASCADED_LAYERS_TRANSITION",!1),this.usesDeferredPipeline&&this.setMacroInt("CC_PIPELINE_TYPE",1),!0},e.destroy=function(){var t,e,i;return null===(t=this._globalDSManager)||void 0===t||t.globalDescriptorSet.destroy(),null===(e=this._globalDSManager)||void 0===e||e.destroy(),null===(i=this._pipelineSceneData)||void 0===i||i.destroy(),!0},e.getMacroString=function(t){var e=this._macros[t];return void 0===e?"":e},e.getMacroInt=function(t){var e=this._macros[t];return void 0===e?0:e},e.getMacroBool=function(t){var e=this._macros[t];return void 0!==e&&e},e.getSamplerInfo=function(t){if(this.containsResource(t)){var e=this._resourceGraph.vertex(t);return this._resourceGraph.getSampler(e)}return null},e.setMacroString=function(t,e){this._macros[t]=e},e.setMacroInt=function(t,e){this._macros[t]=e},e.setMacroBool=function(t,e){this._macros[t]=e},e.onGlobalPipelineStateChanged=function(){var t=S.rendering.getCustomPipeline(Pe.CUSTOM_PIPELINE_NAME);t&&("function"==typeof t.onGlobalPipelineStateChanged&&t.onGlobalPipelineStateChanged(),S.rendering.forceResizeAllWindows())},e.beginSetup=function(){this._renderGraph||(this._renderGraph=new ket),Qnt.reset()},e.endSetup=function(){this.compile()},e.addStorageBuffer=function(t,e,i,n){void 0===n&&(n=ctt.MANAGED);var r=this._resourceGraph.find(t);if(4294967295!==r)return this.updateStorageBuffer(t,i,e),r;var s=new net;return s.dimension=ftt.BUFFER,s.width=i,s.height=1,s.depthOrArraySize=1,s.mipLevels=1,s.format=e,s.flags=dtt.STORAGE,n===ctt.PERSISTENT?this._resourceGraph.addVertex(3,new het,t,s,new ret(ctt.PERSISTENT),new aet,new c_):this._resourceGraph.addVertex(1,new oet,t,s,new ret(n),new aet,new c_)},e.addRenderTarget=function(t,e,i,n,r){void 0===r&&(r=ctt.MANAGED);var s=this._resourceGraph.find(t);if(4294967295!==s)return this.updateRenderTarget(t,i,n,e),s;var a=new net;return a.dimension=ftt.TEXTURE2D,a.width=i,a.height=n,a.depthOrArraySize=1,a.mipLevels=1,a.format=e,a.sampleCount=_c.X1,a.flags=dtt.COLOR_ATTACHMENT|dtt.SAMPLED,this._resourceGraph.addVertex(0,new _et,t,a,new ret(r),new aet,new c_(dc.LINEAR,dc.LINEAR,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP))},e.updateDepthStencilImpl=function(t,e,i,n,r){var s=this.resourceGraph.getDesc(t);if(s.width=e,s.height=i,r){var a=this.resourceGraph.j(t);a.swapchain=r,s.format=a.swapchain.depthStencilTexture.format}else n!==ec.UNKNOWN&&(s.format=n)},e.addDepthStencilImpl=function(t,e,i,n,r,s){var a=this._resourceGraph.find(t);if(4294967295!==a)return this.updateDepthStencilImpl(a,i,n,e,s),a;var o=new net;return o.dimension=ftt.TEXTURE2D,o.width=i,o.height=n,o.depthOrArraySize=1,o.mipLevels=1,o.format=e,o.sampleCount=_c.X1,o.flags=dtt.DEPTH_STENCIL_ATTACHMENT|dtt.SAMPLED,s?this._resourceGraph.addVertex(6,new set(s,!0),t,o,new ret(r),new aet,new c_(dc.POINT,dc.POINT,dc.NONE)):this._resourceGraph.addVertex(0,new _et,t,o,new ret(r),new aet,new c_(dc.POINT,dc.POINT,dc.NONE))},e.addDepthStencil=function(t,e,i,n,r){return void 0===r&&(r=ctt.MANAGED),this.addDepthStencilImpl(t,e,i,n,r)},e.addStorageTexture=function(t,e,i,n,r){void 0===r&&(r=ctt.MANAGED);var s=this._resourceGraph.find(t);if(4294967295!==s)return this.updateStorageTexture(t,i,n,e),s;var a=new net;return a.dimension=ftt.TEXTURE2D,a.width=i,a.height=n,a.depthOrArraySize=1,a.mipLevels=1,a.format=e,a.flags=dtt.STORAGE|dtt.SAMPLED,this._resourceGraph.addVertex(0,new _et,t,a,new ret(r),new aet,new c_(dc.POINT,dc.POINT,dc.NONE))},e.addShadingRateTexture=function(t,e,i,n){void 0===n&&(n=ctt.MANAGED);var r=this._resourceGraph.find(t);if(4294967295!==r)return this.addShadingRateTexture(t,e,i),r;var s=new net;return s.dimension=ftt.TEXTURE2D,s.width=e,s.height=i,s.depthOrArraySize=1,s.mipLevels=1,s.format=ec.R8UI,s.flags=dtt.SHADING_RATE|dtt.STORAGE|dtt.SAMPLED,this._resourceGraph.addVertex(0,new _et,t,s,new ret(n),new aet,new c_(dc.LINEAR,dc.LINEAR,dc.NONE,pc.CLAMP,pc.CLAMP,pc.CLAMP))},e.beginFrame=function(){},e.update=function(){},e.endFrame=function(){var t;null===(t=this.renderGraph)||void 0===t||t.clear()},e.compile=function(){if(!this._renderGraph)throw new Error("RenderGraph cannot be built without being created");this._compiler||(this._compiler=new Frt(this,this._renderGraph,this._resourceGraph,this._layoutGraph)),this._compiler.compile(this._renderGraph)},e.execute=function(){if(!this._renderGraph)throw new Error("Cannot run without creating rendergraph");this._executor||(this._executor=new Ert(this,this._device,this._resourceGraph,this.layoutGraph,this.width,this.height)),this._executor.resize(this.width,this.height),this._executor.execute(this._renderGraph)},e._applySize=function(t){var e=this,i=this._width,n=this._height;t.forEach((function(t){var r=t.window;i=Math.max(r.width,i),n=Math.max(r.height,n),e._cameras.includes(t)||e._cameras.push(t)})),i===this._width&&n===this._height||(this._width=i,this._height=n)},e.render=function(t){0!==t.length&&(this._applySize(t),function(t){for(var e=t.length-1;e>=0;--e)if(t[e].window.swapchain)return}(t),this.beginFrame(),this.execute(),this.endFrame())},e.addBuiltinReflectionProbePass=function(t){var e=S.internal.reflectionProbeManager;if(e){var i=e.getProbes();if(0!==i.length)for(var n=0;n<i.length;n++){var r=i[n];r.needRender&&i[n].probeType===cR.PLANAR&&Ait(t,this,r,r.realtimePlanarTexture.window,0)}}},e.addRenderPassImpl=function(t,e,i,n,r){void 0===n&&(n=1),void 0===r&&(r=0);var s=Znt.createRasterPass();s.viewport.width=t,s.viewport.height=e,s.count=n,s.quality=r;var a=Znt.createRenderData(),o=this._renderGraph.addVertex(0,s,"Raster",i,a,!1),h=Qnt.renderPassBuilder.add();return h.update(a,this._renderGraph,this._layoutGraph,this._resourceGraph,o,s,this._pipelineSceneData),this._updateRasterPassConstants(h,t,e,i),function(t,e){var i=e.skybox,n=S.director.root,r=n.pipeline;if(i.reflectionMap){var s=i.reflectionMap.getGFXTexture(),a=n.device.getSampler(i.reflectionMap.getSamplerInfo());t.setTexture("cc_environment",s),t.setSampler("cc_environment",a)}else{var o=i.envmap?i.envmap:bT.get("default-cube-texture");if(o){var h=o.getGFXTexture(),u=n.device.getSampler(o.getSamplerInfo());t.setTexture("cc_environment",h),t.setSampler("cc_environment",u)}}var l=i.diffuseMap?i.diffuseMap:bT.get("default-cube-texture");if(l){var c=l.getGFXTexture(),_=n.device.getSampler(l.getSamplerInfo());t.setTexture("cc_diffuseMap",c),t.setSampler("cc_diffuseMap",_)}t.hasSampler("cc_shadowMap")||t.setSampler("cc_shadowMap",r.defaultSampler),t.hasTexture("cc_shadowMap")||t.setTexture("cc_shadowMap",r.defaultShadowTexture),t.hasSampler("cc_spotShadowMap")||t.setSampler("cc_spotShadowMap",r.defaultSampler),t.hasTexture("cc_spotShadowMap")||t.setTexture("cc_spotShadowMap",r.defaultShadowTexture)}(h,this._pipelineSceneData),h},e.addRenderPass=function(t,e,i){return void 0===i&&(i="default"),this.addRenderPassImpl(t,e,i)},e.addMultisampleRenderPass=function(t,e,i,n,r){return void 0===r&&(r="default"),this.addRenderPassImpl(t,e,r,i,n)},e.getDescriptorSetLayout=function(t,e){var i=this._layoutGraph,n=i.shaderLayoutIndex.get(t);return i.getLayout(n).descriptorSets.get(e).descriptorSetLayout},e._updateRasterPassConstants=function(t,e,i){var n=S.director,r=n.root,s=e,a=i;r.pipeline.layoutGraph,Vrt.set(r.cumulativeTime,r.frameTime,n.getTotalFrames()),t.setVec4("cc_time",Vrt),Vrt.set(s,a,1/s,1/a),t.setVec4("cc_screenSize",Vrt),Vrt.set(s,a,1/s,1/a),t.setVec4("cc_nativeSize",Vrt);var o=r.debugView;if(Vrt.set(0,0,0,0),o){for(var h=[o.singleMode,0,0,0],u=0;u<17;u++){var l=u%8;h[1+(u>>3)]+=(o.isCompositeModeEnabled(u)?1:0)*Math.pow(10,l)}h[3]+=(o.lightingWithAlbedo?1:0)*Math.pow(10,6),h[3]+=(o.csmLayerColoration?1:0)*Math.pow(10,7),Vrt.set(h[0],h[1],h[2],h[3])}t.setVec4("cc_debug_view_mode",Vrt)},n(t,[{key:"type",get:function(){return Vet.BASIC}},{key:"capabilities",get:function(){return new Het}},{key:"enableCpuLightCulling",get:function(){return!this._executor||this._executor._context.culling.enableLightCulling},set:function(t){this._executor&&(this._executor._context.culling.enableLightCulling=t)}},{key:"globalDescriptorSetData",get:function(){return this._globalDescSetData}},{key:"defaultSampler",get:function(){return this._defaultSampler}},{key:"defaultShadowTexture",get:function(){return hy(this.device)}},{key:"device",get:function(){return this._device}},{key:"lightingMode",get:function(){return this._lightingMode},set:function(t){this._lightingMode=t}},{key:"usesDeferredPipeline",get:function(){return this._usesDeferredPipeline}},{key:"macros",get:function(){return this._macros}},{key:"globalDSManager",get:function(){return this._globalDSManager}},{key:"descriptorSetLayout",get:function(){return this._globalDSManager.descriptorSetLayout}},{key:"descriptorSet",get:function(){return this._globalDSManager.globalDescriptorSet}},{key:"profilerDescriptorSet",get:function(){return this._profilerDescriptorSet}},{key:"globalDescriptorSet",get:function(){return this._globalDescriptorSet}},{key:"globalDescriptorSetInfo",get:function(){return this._globalDescriptorSetInfo}},{key:"commandBuffers",get:function(){return[this._device.commandBuffer]}},{key:"pipelineSceneData",get:function(){return this._pipelineSceneData}},{key:"constantMacros",get:function(){return this._constantMacros}},{key:"profiler",get:function(){return this._profiler},set:function(t){this._profiler=t}},{key:"geometryRenderer",get:function(){throw new Error("Method not implemented.")}},{key:"shadingScale",get:function(){return this._pipelineSceneData.shadingScale},set:function(t){this._pipelineSceneData.shadingScale=t}},{key:"width",get:function(){return this._width}},{key:"height",get:function(){return this._height}},{key:"renderGraph",get:function(){return this._renderGraph}},{key:"resourceGraph",get:function(){return this._resourceGraph}},{key:"layoutGraph",get:function(){return this._layoutGraph}},{key:"resourceUses",get:function(){return this._resourceUses}}]),t}();Krt.MAX_BLOOM_FILTER_PASS_NUM=6,Krt.CSM_UNIFORM_VECTORS=61,Krt.GLOBAL_UNIFORM_VECTORS=64,function(){function t(){this.capacity=0,this.size=0,this.buffer=void 0,this.dataView=void 0,this.capacity=4096,this.buffer=new Uint8Array(this.capacity),this.dataView=new DataView(this.buffer.buffer)}var e=t.prototype;e.b=function(t){var e=this.size+1;e>this.capacity&&this.reserve(e),this.dataView.setUint8(this.size,t?1:0),this.size=e},e.n=function(t){var e=this.size+8;e>this.capacity&&this.reserve(e),this.dataView.setFloat64(this.size,t,!0),this.size=e},e.s=function(t){this.n(t.length);var e=this.size+t.length;e>this.capacity&&this.reserve(e);for(var i=0;i<t.length;i++)this.dataView.setUint8(this.size+i,t.charCodeAt(i));this.size=e},e.reserve=function(t){var e=Math.max(t,2*this.capacity),i=this.buffer;this.buffer=new Uint8Array(e),this.buffer.set(i),this.dataView=new DataView(this.buffer.buffer),this.capacity=e},n(t,[{key:"data",get:function(){return this.buffer.buffer.slice(0,this.size)}}])}();var Qrt=function(){function t(t,e){this.offset=0,this.dataView=void 0,this.dataView=new DataView(t,e)}var e=t.prototype;return e.b=function(){return 0!==this.dataView.getUint8(this.offset++)},e.n=function(){var t=this.dataView.getFloat64(this.offset,!0);return this.offset+=8,t},e.s=function(){var t=this.n(),e=String.fromCharCode.apply(null,Array.from(new Uint8Array(this.dataView.buffer,this.offset,t)));return this.offset+=t,e},t}(),Zrt=function(t,e,i,n,r){this.programInfo=t,this.shaderInfo=e,this.attributes=i,this.blockSizes=n,this.handleMap=r},Jrt=function(){this.programInfos=new Map,this.programProxies=new Map},$rt=[2,1,3,0];function tst(t,e){var i=r({},e);return i.effectName=t,Gy(i),i}function est(t,e){for(var i,n=f(t.blocks);!(i=n()).done;){var r=i.value;if(r.name===e)return{set:r.set,binding:r.binding}}for(var s,a=f(t.buffers);!(s=a()).done;){var o=s.value;if(o.name===e)return{set:o.set,binding:o.binding}}for(var h,u=f(t.samplerTextures);!(h=u()).done;){var l=h.value;if(l.name===e)return{set:l.set,binding:l.binding}}for(var c,_=f(t.samplers);!(c=_()).done;){var d=c.value;if(d.name===e)return{set:d.set,binding:d.binding}}for(var p,m=f(t.textures);!(p=m()).done;){var g=p.value;if(g.name===e)return{set:g.set,binding:g.binding}}for(var v,y=f(t.images);!(v=y()).done;){var S=v.value;if(S.name===e)return{set:S.set,binding:S.binding}}for(var T,A=f(t.subpassInputs);!(T=A()).done;){var b=T.value;if(b.name===e)return{set:b.set,binding:b.binding}}throw H("binding not found in shaderInfo!")}function ist(t,e){for(var i=e,n=/layout\s*\(([^)])+\)\s+uniform\s+(\b\w+\b\s+)?sampler(\w+)\s+(\b\w+\b)/g,r=n.exec(i);r;){var s=est(t,r[4]),a="layout(set = "+s.set+", binding = "+s.binding+") uniform "+(r[2]?r[2]:"")+" sampler"+r[3]+" "+r[4];i=i.replace(r[0],a),r=n.exec(i)}for(var o=/layout\s*\(([^)]+)\)\s*(readonly|writeonly)?\s*\b((uniform\s*|buffer\s*|image2D\s*){1,2})\b\s*(\b\w+\b)\s*[{;]/g,h=o.exec(i);h;){var u=est(t,h[5]),l=u.set,c=u.binding,_=h[2]?h[2]:"",f=" {";h[3].includes("image")&&(f=";");var d=h[1],p="layout("+(d=(d=d.replace(/set\s*=\s*\d+/g,"set = "+l)).replace(/binding\s*=\s*\d+/g,"binding = "+c))+") "+_+" "+h[3]+" "+h[5]+f;i=i.replace(h[0],p),h=o.exec(i)}return i}function nst(t,e){!function(t,e){"glsl4"===Hy(Ff.gfxDevice)&&(e.glsl4.vert&&(e.glsl4.vert=ist(t,e.glsl4.vert)),e.glsl4.frag&&(e.glsl4.frag=ist(t,e.glsl4.frag)),e.glsl4.compute&&(e.glsl4.compute=ist(t,e.glsl4.compute)))}(t,e);for(var i,n=$rt[rtt.PER_BATCH],r=f(e.blocks);!(i=r()).done;){for(var s,a=i.value,o=!1,h=f(t.blocks);!(s=h()).done;){var u=s.value;if(u.set===n&&u.name===a.name){a.binding=u.binding,o=!0;break}}o||H("Block "+a.name+" not found in shader "+t.name)}}function rst(t,e,i,n,r){for(var s,a=f(t.descriptorBlocks);!(s=a()).done;){var o=s.value,h=o.visibility,u=o.offset;switch(o.type){case Att.UNIFORM_BUFFER:for(var l,c=f(e.blocks);!(l=c()).done;){var _=l.value;_.stageFlags===h&&(r.push(Ny(_.members)),n.blocks.push(new f_(i,u,_.name,_.members.map((function(t){return new __(t.name,t.type,t.count)})),1)),++u)}break;case Att.DYNAMIC_UNIFORM_BUFFER:break;case Att.SAMPLER_TEXTURE:for(var d,p=f(e.samplerTextures);!(d=p()).done;){var m=d.value;m.stageFlags===h&&(n.samplerTextures.push(new d_(i,u,m.name,m.type,m.count)),++u)}break;case Att.SAMPLER:for(var g,v=f(e.samplers);!(g=v()).done;){var y=g.value;y.stageFlags===h&&(n.samplers.push(new p_(i,u,y.name,y.count)),++u)}break;case Att.TEXTURE:for(var S,T=f(e.textures);!(S=T()).done;){var A=S.value;A.stageFlags===h&&(n.textures.push(new m_(i,u,A.name,A.type,A.count)),++u)}break;case Att.STORAGE_BUFFER:for(var b,E=f(e.buffers);!(b=E()).done;){var C=b.value;C.stageFlags===h&&(n.buffers.push(new v_(i,u,C.name,1,C.memoryAccess)),++u)}break;case Att.DYNAMIC_STORAGE_BUFFER:break;case Att.STORAGE_IMAGE:for(var x,w=f(e.images);!(x=w()).done;){var R=x.value;R.stageFlags===h&&(n.images.push(new g_(i,u,R.name,R.type,R.count,R.memoryAccess)),++u)}break;case Att.INPUT_ATTACHMENT:for(var I,D=f(e.subpassInputs);!(I=D()).done;){var B=I.value;B.stageFlags===h&&(n.subpassInputs.push(new y_(i,B.binding,B.name,B.count)),++u)}}}}function sst(t,e,i,n,r){for(var s,a=f(e.descriptorBlocks);!(s=a()).done;){var o=s.value,h=o.offset;switch(o.type){case Att.UNIFORM_BUFFER:for(var u,l=f(o.descriptors);!(u=l()).done;){var c=u.value,_=e.uniformBlocks.get(c.descriptorID);void 0!==_?(r.push(Ny(_.members)),n.blocks.push(new f_(i,h,t[c.descriptorID],_.members.map((function(t){return new __(t.name,t.type,t.count)})),1)),++h):H("Failed to find uniform block "+c.descriptorID+" in layout")}h!==o.offset+o.capacity&&H("Uniform buffer binding mismatch for set "+i);break;case Att.DYNAMIC_UNIFORM_BUFFER:break;case Att.SAMPLER_TEXTURE:for(var d,p=f(o.descriptors);!(d=p()).done;){var m=d.value;n.samplerTextures.push(new d_(i,h,t[m.descriptorID],m.type,m.count)),++h}break;case Att.SAMPLER:for(var g,v=f(o.descriptors);!(g=v()).done;){var y=g.value;n.samplers.push(new p_(i,h,t[y.descriptorID],y.count)),++h}break;case Att.TEXTURE:for(var S,T=f(o.descriptors);!(S=T()).done;){var A=S.value;n.textures.push(new m_(i,h,t[A.descriptorID],A.type,A.count)),++h}break;case Att.STORAGE_BUFFER:for(var b,E=f(o.descriptors);!(b=E()).done;){var C=b.value;n.buffers.push(new v_(i,h,t[C.descriptorID],1,ac.READ_WRITE)),++h}break;case Att.DYNAMIC_STORAGE_BUFFER:break;case Att.STORAGE_IMAGE:for(var x,w=f(o.descriptors);!(x=w()).done;){var R=x.value;n.images.push(new g_(i,h,t[R.descriptorID],R.type,R.count,ac.READ_WRITE)),++h}break;case Att.INPUT_ATTACHMENT:for(var I,D=f(o.descriptors);!(I=D()).done;){var B=I.value;n.subpassInputs.push(new y_(i,h,t[B.descriptorID],B.count)),++h}}}}function ast(t,e,i,n,r,s){var a=[null,null,null,null],o=null,h=new A_,u=new Array,l=e.descriptorSets.get(rtt.PER_PASS);l&&(a[rtt.PER_PASS]=l.descriptorSetLayoutData,sst(t.valueNames,l.descriptorSetLayoutData,$rt[rtt.PER_PASS],h,u));var c=i.descriptorSets.get(rtt.PER_PHASE);c&&(a[rtt.PER_PHASE]=c.descriptorSetLayoutData,sst(t.valueNames,c.descriptorSetLayoutData,$rt[rtt.PER_PHASE],h,u));var _=n.descriptors[rtt.PER_BATCH];if(r){var d=r.layout.descriptorSets.get(rtt.PER_BATCH);d&&(a[rtt.PER_BATCH]=d.descriptorSetLayoutData,sst(t.valueNames,d.descriptorSetLayoutData,$rt[rtt.PER_BATCH],h,u))}else{var p=i.descriptorSets.get(rtt.PER_BATCH);p&&(a[rtt.PER_BATCH]=p.descriptorSetLayoutData,rst(p.descriptorSetLayoutData,_,$rt[rtt.PER_BATCH],h,u))}var m=n.descriptors[rtt.PER_INSTANCE];if(r)if(s)o=Dg,function(t,e,i,n){for(var r=$rt[rtt.PER_INSTANCE],s=function(){var s=t.blocks[a],o=e.layouts[s.name],h=o&&e.bindings.find((function(t){return t.binding===o.binding}));if(!(o&&h&&h.descriptorType&Y_))return console.warn("builtin UBO '"+s.name+"' not available!"),1;n.push(Ny(s.members)),i.blocks.push(new f_(r,h.binding,s.name,s.members.map((function(t){return new __(t.name,t.type,t.count)})),1))},a=0;a<t.blocks.length;a++)s();for(var o=function(){var n=t.samplerTextures[h],s=e.layouts[n.name],a=s&&e.bindings.find((function(t){return t.binding===s.binding}));if(!(s&&a&&a.descriptorType&q_))return console.warn("builtin samplerTexture '"+n.name+"' not available!"),1;i.samplerTextures.push(new d_(r,a.binding,n.name,n.type,n.count))},h=0;h<t.samplerTextures.length;h++)o()}(m,Dg,h,u);else{var g=r.layout.descriptorSets.get(rtt.PER_INSTANCE);g&&(a[rtt.PER_INSTANCE]=g.descriptorSetLayoutData,sst(t.valueNames,g.descriptorSetLayoutData,$rt[rtt.PER_INSTANCE],h,u))}else{var v=i.descriptorSets.get(rtt.PER_INSTANCE);v&&(a[rtt.PER_INSTANCE]=v.descriptorSetLayoutData,rst(v.descriptorSetLayoutData,m,$rt[rtt.PER_INSTANCE],h,u))}return function(t,e,i){var n,r,s,a,o=new Array(4),h=(null===(n=t[rtt.PER_PASS])||void 0===n?void 0:n.uniformBlockCapacity)||0,u=(null===(r=t[rtt.PER_PHASE])||void 0===r?void 0:r.uniformBlockCapacity)||0,l=(null===(s=t[rtt.PER_BATCH])||void 0===s?void 0:s.uniformBlockCapacity)||0,c=e?function(t){for(var e,i=0,n=f(t.bindings);!(e=n()).done;){var r=e.value;r.descriptorType!==Pc.UNIFORM_BUFFER&&r.descriptorType!==Pc.DYNAMIC_UNIFORM_BUFFER||(i+=r.count)}return i}(e):(null===(a=t[rtt.PER_INSTANCE])||void 0===a?void 0:a.uniformBlockCapacity)||0;o[$rt[rtt.PER_PASS]]=h,o[$rt[rtt.PER_PHASE]]=u,o[$rt[rtt.PER_BATCH]]=l,o[$rt[rtt.PER_INSTANCE]]=c;var _=0+h,d=_+u,p=d+c,m=new Array(4);m[$rt[rtt.PER_PASS]]=0,m[$rt[rtt.PER_PHASE]]=_,m[$rt[rtt.PER_BATCH]]=p,m[$rt[rtt.PER_INSTANCE]]=d,function(t,e){for(var i,n=f(e);!(i=n()).done;){var r=i.value;r.flattened=t[r.set]+r.binding}}(m,i.blocks);var g,v,y,S=0+((null===(g=t[rtt.PER_PASS])||void 0===g?void 0:g.samplerTextureCapacity)||0),T=S+((null===(v=t[rtt.PER_PHASE])||void 0===v?void 0:v.samplerTextureCapacity)||0),A=T+(e?function(t){for(var e,i=0,n=f(t.bindings);!(e=n()).done;){var r=e.value;r.descriptorType!==Pc.UNIFORM_BUFFER&&r.descriptorType!==Pc.DYNAMIC_UNIFORM_BUFFER&&(i+=r.count)}return i}(e):(null===(y=t[rtt.PER_INSTANCE])||void 0===y?void 0:y.samplerTextureCapacity)||0),b=new Array(4);b[$rt[rtt.PER_PASS]]=0,b[$rt[rtt.PER_PHASE]]=S,b[$rt[rtt.PER_BATCH]]=A,b[$rt[rtt.PER_INSTANCE]]=T,function(t,e,i){for(var n,r=f(i);!(n=r()).done;){var s=n.value;s.flattened=t[s.set]+s.binding-e[s.set]}}(b,o,i.samplerTextures)}(a,o,h),h.stages.push(new S_(Tc.VERTEX,"")),h.stages.push(new S_(Tc.FRAGMENT,"")),[h,u]}var ost=function(){function t(t,e){void 0===e&&(e=null),this.shader=void 0,this.pipelineState=null,this.shader=t,this.pipelineState=e}return n(t,[{key:"name",get:function(){return this.shader.name}}]),t}();function hst(t,e){for(var i in t.layouts){var n=t.layouts[i];if(n.binding===e){W(n.name===i);var r=nc.UNKNOWN;return(n instanceof d_||n instanceof g_)&&(r=n.type),[n.name,r]}}return H("descriptor not found"),["",nc.UNKNOWN]}function ust(t,e){for(var i,n=new jet,r=f(e.bindings);!(i=r()).done;){var s=i.value,a=hst(e,s.binding),o=a[0],h=a[1],u=mnt(t,o),l=hnt(s.descriptorType),c=new Xet(l,s.stageFlags,s.count);c.offset=s.binding,c.descriptors.push(new Wet(u,h,s.count)),n.descriptorBlocks.push(c),void 0!==n.bindingMap.get(u)&&H("duplicate descriptor name '"+o+"'"),n.bindingMap.set(u,s.binding);var _=e.layouts[o];_ instanceof f_&&n.uniformBlocks.set(u,_)}return n}function lst(t,e,i,n,r,s){var a=Snt(i,rtt.PER_BATCH,$rt[rtt.PER_BATCH],e.descriptors[rtt.PER_BATCH]),o=new Yet(a);if(Tnt(o.descriptorSetLayoutData,o.descriptorSetLayoutInfo),r.layout.descriptorSets.set(rtt.PER_BATCH,o),s){var h=ust(i,Dg),u=new Yet(h);if(Tnt(u.descriptorSetLayoutData,u.descriptorSetLayoutInfo),Dg.bindings.length!==u.descriptorSetLayoutInfo.bindings.length)H("local descriptor set layout inconsistent");else for(var l=0;l!==Dg.bindings.length;++l){var c=Dg.bindings[l],_=u.descriptorSetLayoutInfo.bindings[l];c.binding===_.binding&&c.descriptorType===_.descriptorType&&c.count===_.count&&c.stageFlags===_.stageFlags||H("local descriptor set layout inconsistent")}r.layout.descriptorSets.set(rtt.PER_INSTANCE,u)}else{var f=Snt(i,rtt.PER_INSTANCE,$rt[rtt.PER_INSTANCE],e.descriptors[rtt.PER_INSTANCE]),d=new Yet(f);Tnt(d.descriptorSetLayoutData,d.descriptorSetLayoutInfo),r.layout.descriptorSets.set(rtt.PER_INSTANCE,d)}var p=n.shaderPrograms.length;n.shaderIndex.set(t,p),n.shaderPrograms.push(r)}function cst(t,e,i,n,r){W(r<rtt.PER_PHASE);var s=e.j(i),a=s.shaderIndex.get(n);if(void 0===a)return bnt();var o=s.shaderPrograms[a].layout.descriptorSets.get(r);return void 0===o?bnt():(o.descriptorSetLayout||(o.descriptorSetLayout=t.createDescriptorSetLayout(o.descriptorSetLayoutInfo)),o.descriptorSetLayout)}function _st(t,e,i,n,r){W(r<rtt.PER_PHASE);var s=e.j(i),a=s.shaderIndex.get(n);if(void 0===a)return null;var o=s.shaderPrograms[a].layout.descriptorSets.get(r);return void 0===o?null:(o.descriptorSetLayout||(o.descriptorSetLayout=t.createDescriptorSetLayout(o.descriptorSetLayoutInfo)),o.descriptorSetLayout)}function fst(t,e,i){var n=i.program,r=unt(t,i.pass);if(r===ant)return H("Invalid render pass, program: "+n),[ant,ant,ant,null,ant];var s=i.subpass&&""!==i.subpass&&!0,a=s?lnt(t,r,i.subpass):ant;if(s&&a===ant)return H("Invalid render subpass, program: "+n),[ant,ant,ant,null,ant];var o=cnt(t,a===ant?r:a,i.phase);if(o===ant)return H("Invalid render phase, program: "+n),[ant,ant,ant,null,ant];for(var h=null,u=ant,l=0;l<e.shaders.length;++l){var c=e.shaders[l];if(c.name===n){h=c,u=l;break}}return[r,a,o,h,u]}function dst(t){return void 0===t.descriptors?(H("No descriptors in shader: "+t.name+", please reimport ALL effects"),1):0}var pst=function(){function t(t){this.layoutGraph=void 0,this.phases=new Map,this.mergeHighFrequency=!1,this.fixedLocal=!0,this.localLayoutData=new jet,this.localDescriptorSetLayout=null,this.emptyDescriptorSetLayout=null,this.emptyPipelineLayout=null,this.pipeline=null,this.device=null,this.layoutGraph=t;for(var e,i=f(t.v());!(e=i()).done;){var n=e.value;t.h(1,n)&&this.phases.set(n,new Jrt)}}var e=t.prototype;return e.init=function(t){if(this.device!==t){this.device=t,this.emptyDescriptorSetLayout=this.device.createDescriptorSetLayout(new O_),this.emptyPipelineLayout=this.device.createPipelineLayout(new N_);var e=Math.floor((this.device.capabilities.maxVertexUniformVectors-38)/3);e=e<256?e:256,cv.initLayout(e);for(var i,n=this.layoutGraph,r=f(n.v());!(i=r()).done;)for(var s,a=i.value,o=f(n.getLayout(a).descriptorSets);!(s=o()).done;){var h=s.value;h[0];var u=h[1];Tnt(u.descriptorSetLayoutData,u.descriptorSetLayoutInfo),u.descriptorSetLayout=this.device.createDescriptorSetLayout(u.descriptorSetLayoutInfo),W(!!u.descriptorSetLayout),u.descriptorSet=this.device.createDescriptorSet(new L_(u.descriptorSetLayout)),W(!!u.descriptorSet)}for(var l,c=f(n.v());!(l=c()).done;){var _=l.value;if(n.h(1,_)){var d=_,p=n.getParent(d),m=n.getLayout(p),g=n.getLayout(d),v=new N_;Ant(m,rtt.PER_PASS,v),Ant(g,rtt.PER_PHASE,v),Ant(g,rtt.PER_BATCH,v),Ant(g,rtt.PER_INSTANCE,v),n.j(d).pipelineLayout=this.device.createPipelineLayout(v)}}var y=Dg;this.localLayoutData=ust(n,y);var S,T=new O_;Tnt(this.localLayoutData,T),this.localDescriptorSetLayout=this.device.createDescriptorSetLayout(T),W(!!this.localDescriptorSetLayout);for(var A,b=0,E=f(this.localLayoutData.descriptorBlocks);!(A=E()).done;){var C=A.value;if(C.type===Att.UNIFORM_BUFFER||C.type===Att.DYNAMIC_UNIFORM_BUFFER)for(var x,w=f(C.descriptors);!(x=w()).done;)b+=x.value.count}W(7===b),S=this.device,this.layoutGraph.constantMacros,S.getFormatFeatures(ec.RGBA32F),cc.RENDER_TARGET,cc.SAMPLED_TEXTURE,S.capabilities.maxVertexUniformVectors,S.capabilities.maxFragmentUniformVectors,S.hasFeature(tc.INPUT_ATTACHMENT_BENEFIT),cv.JOINT_UNIFORM_CAPACITY}},e.addEffect=function(t){for(var e,i=this.layoutGraph,n=f(t.techniques);!(e=n()).done;)for(var r,s=f(e.value.passes);!(r=s()).done;){var a=r.value,o=a.program,h=fst(i,t,a),u=h[0],l=h[1],c=h[2],_=h[3];if(null===_||dst(_))H("program: "+o+" not found");else{W(u!==ant&&c!==ant);var d=l===ant?u:l,p=i.getLayout(d),m=i.getLayout(c),g=this.phases.get(c);void 0===g&&(g=new Jrt,this.phases.set(c,g));var v=g.programInfos,y=tst(t.name,_),S=null;if(!this.mergeHighFrequency){var T=i.j(c);lst(o,_,i,T,S=new $et,this.fixedLocal)}var A=ast(i,p,m,_,S,this.fixedLocal),b=A[0],E=A[1];nst(b,y);for(var C,x=Fy(b),w=new Array,R=f(y.attributes);!(C=R()).done;){var I=C.value;w.push(new T_(I.name,I.format,I.isNormalized,0,I.isInstanced,I.location))}var D=new Zrt(y,b,w,E,x);v.set(_.name,D)}}},e.precompileEffect=function(t,e){for(var i,n=this,r=this.layoutGraph,s=f(e.techniques);!(i=s()).done;)for(var a,o=function(){var i=a.value,s=i.program,o=fst(r,e,i),h=o[0];o[1];var u=o[2],l=o[3],c=o[4];if(null===l||dst(l))return H("program: "+s+" not valid"),0;W(h!==ant&&u!==ant&&c!==ant);var _=e.combinations[c];if(!_)return 0;Vy(_).forEach((function(e){return n.getProgramVariant(t,u,s,e)}))},h=f(i.value.passes);!(a=h()).done;)o()},e.getProgramInfo=function(t,e){return W(t!==ant),this.phases.get(t).programInfos.get(e).programInfo},e.getShaderInfo=function(t,e){return W(t!==ant),this.phases.get(t).programInfos.get(e).shaderInfo},e.getKey=function(t,e,i){W(t!==ant);var n=this.phases.get(t);if(void 0===n)return H("Invalid render phase, program: "+e),"";var r=n.programInfos.get(e);return void 0===r?(H("Invalid program, program: "+e),""):Py(r.programInfo,i)},e.getProgramVariant=function(t,e,i,n,r){var s;void 0===r&&(r=null),Object.assign(n,null===(s=this.pipeline)||void 0===s?void 0:s.macros),W(e!==ant);var a=this.phases.get(e);if(void 0===a)return H("Invalid render phase, program: "+i),null;var o=a.programInfos.get(i);if(void 0===o)return H("Invalid program, program: "+i),null;var h=o.programInfo;null===r&&(r=Py(h,n));var u=a.programProxies,l=u.get(r);if(void 0!==l)return l;var c=Iy(n,h.defines),_=this.layoutGraph.constantMacros+h.constantMacros+c.reduce((function(t,e){return t+"#define "+e.name+" "+e.value+"\n"}),""),f=h.glsl3,d=Hy(t);d?f=h[d]:it(16346);var p=o.shaderInfo;f.compute?(p.stages[0].source=_+f.compute,p.stages[0].stage=Tc.COMPUTE,p.stages.length=1):(p.stages[0].source=_+f.vert,p.stages[1].source=_+f.frag),p.attributes=My(h,o.attributes,n),p.name=Dy(i,c);var m=t.createShader(p),g=new ost(m);return u.set(r,g),g},e.getMaterialDescriptorSetLayout=function(t,e,i){if(this.mergeHighFrequency){W(e!==ant);var n=this.layoutGraph.getParent(e);return Cnt(this.layoutGraph,n,e,rtt.PER_BATCH)}return cst(t,this.layoutGraph,e,i,rtt.PER_BATCH)},e.getLocalDescriptorSetLayout=function(t,e,i){if(this.mergeHighFrequency){W(e!==ant);var n=this.layoutGraph.getParent(e);return Cnt(this.layoutGraph,n,e,rtt.PER_INSTANCE)}return cst(t,this.layoutGraph,e,i,rtt.PER_INSTANCE)},e.getBlockSizes=function(t,e){W(t!==ant);var i=this.phases.get(t);if(!i)return H("Invalid render phase, program: "+e),[];var n=i.programInfos.get(e);return n?n.blockSizes:(H("Invalid program, program: "+e),[])},e.getHandleMap=function(t,e){W(t!==ant);var i=this.phases.get(t);if(!i)return H("Invalid render phase, program: "+e),{};var n=i.programInfos.get(e);return n?n.handleMap:(H("Invalid program, program: "+e),{})},e.getPipelineLayout=function(t,e,i){if(this.mergeHighFrequency)return W(e!==ant),this.layoutGraph.j(e).pipelineLayout;var n=this.layoutGraph,r=n.j(e),s=r.shaderIndex.get(i);if(void 0===s)return Ent();var a=r.shaderPrograms[s];if(a.pipelineLayout)return a.pipelineLayout;var o=n.getParent(e);if(o===ant)return Ent();var h=new N_,u=xnt(this.layoutGraph,o,e,rtt.PER_PASS);u&&h.setLayouts.push(u);var l=xnt(this.layoutGraph,o,e,rtt.PER_PHASE);l&&h.setLayouts.push(l);var c=_st(t,n,e,i,rtt.PER_BATCH);c&&h.setLayouts.push(c);var _=_st(t,n,e,i,rtt.PER_INSTANCE);return _&&h.setLayouts.push(_),a.pipelineLayout=t.createPipelineLayout(h),a.pipelineLayout},e.getProgramID=function(t,e){return function(t,e,i){W(e!==t.N);var n=t.j(e).shaderIndex.get(i);return void 0===n?ant:n}(this.layoutGraph,t,e)},e.getDescriptorNameID=function(t){return function(t,e){var i=t.attributeIndex.get(e);return void 0===i?ant:i}(this.layoutGraph,t)},e.getDescriptorName=function(t){return function(t,e){return e>=t.valueNames.length?"":t.valueNames[e]}(this.layoutGraph,t)},t}(),mst=null,gst=!1;function vst(){gst=!0}var yst=[],Sst=4294967295,Tst=new nit,Ast=new pst(Tst),bst=new Map,Est=Object.freeze({__proto__:null,INVALID_ID:Sst,enableEffectImport:!0,programLib:Ast,createCustomPipeline:function(){var t=new Krt(Tst),e=Pe.CUSTOM_PIPELINE_NAME;return t.setCustomPipelineName(e),Ast.pipeline=t,t},customPipelineBuilderMap:bst,setCustomPipeline:function(t,e){bst.set(t,e),vst()},getCustomPipeline:function(t){var e=bst.get(t);return e||(e=bst.get("Forward")),e},init:function(t,e){if(e&&e.byteLength>=8){var i=new Uint8Array(e);if(new DataView(i.buffer,i.byteOffset,8).getUint32(0)===Sst){var n=new jB.Inflate(new Uint8Array(i.buffer,i.byteOffset+8)).decompress();mit(new Qrt(n.buffer,n.byteOffset),Tst)}else mit(new Qrt(i.buffer,i.byteOffset),Tst)}!function(t,e){_nt=t.createDescriptorSetLayout(new O_),fnt=t.createPipelineLayout(new N_);for(var i,n=f(e.v());!(i=n()).done;)for(var r,s=i.value,a=f(e.getLayout(s).descriptorSets);!(r=a()).done;){var o=r.value;o[0];var h=o[1];null!==h.descriptorSetLayout&&z("descriptor set layout already initialized. It will be overwritten"),Tnt(h.descriptorSetLayoutData,h.descriptorSetLayoutInfo),h.descriptorSetLayout=t.createDescriptorSetLayout(h.descriptorSetLayoutInfo)}for(var u,l=f(e.v());!(u=l()).done;){var c=u.value;if(e.h(1,c)){var _=e.getParent(c),d=c,p=e.getLayout(_),m=e.getLayout(d),g=new N_;Ant(p,rtt.PER_PASS,g),Ant(m,rtt.PER_PHASE,g),Ant(m,rtt.PER_BATCH,g),Ant(m,rtt.PER_INSTANCE,g),e.j(d).pipelineLayout=t.createPipelineLayout(g)}}}(t,Tst)},destroy:function(){!function(t){for(var e,i=f(t.v());!(e=i()).done;)for(var n,r=e.value,s=f(t.getLayout(r).descriptorSets);!(n=s()).done;){var a=n.value;a[0];var o=a[1];null!==o.descriptorSetLayout&&o.descriptorSetLayout.destroy()}fnt.destroy(),_nt.destroy()}(Tst)},getPassID:function(t){return unt(Tst,t)},getSubpassID:function(t,e){return lnt(Tst,t,e)},getPhaseID:function(t,e){return cnt(Tst,t,e)},completePhaseName:function(t){return"number"==typeof t?t.toString():"string"==typeof t?t:"default"},get UpdateFrequency(){return rtt},ParameterType:mtt,get ResourceResidency(){return ctt},get QueueHint(){return _tt},get ResourceDimension(){return ftt},get ResourceFlags(){return dtt},TaskType:{SYNC:0,ASYNC:1},get SceneFlags(){return ptt},LightingMode:vtt,AttachmentType:ytt,get AccessType(){return gtt},ClearValueType:Stt,LightInfo:Ttt,DescriptorTypeOrder:Att,Descriptor:btt,DescriptorBlock:Ett,DescriptorBlockFlattened:Ctt,DescriptorBlockIndex:xtt,ResolveFlags:wtt,ResolvePair:Rtt,CopyPair:Itt,UploadPair:Dtt,MovePair:Btt,PipelineStatistics:Mtt,RenderCommonObjectPool:Ftt,saveLightInfo:function(t,e){t.n(e.level),t.b(e.culledByLight)},loadLightInfo:function(t,e){e.level=t.n(),e.culledByLight=t.b()},saveDescriptor:ktt,loadDescriptor:Gtt,saveDescriptorBlock:function(t,e){t.n(e.descriptors.size);for(var i,n=f(e.descriptors);!(i=n()).done;){var r=i.value,s=r[0],a=r[1];t.s(s),ktt(t,a)}t.n(e.uniformBlocks.size);for(var o,h=f(e.uniformBlocks);!(o=h()).done;){var u=o.value,l=u[0],c=u[1];t.s(l),htt(t,c)}t.n(e.capacity),t.n(e.count)},loadDescriptorBlock:function(t,e){var i=0;i=t.n();for(var n=0;n!==i;++n){var r=t.s(),s=new btt;Gtt(t,s),e.descriptors.set(r,s)}i=t.n();for(var a=0;a!==i;++a){var o=t.s(),h=new f_;utt(t,h),e.uniformBlocks.set(o,h)}e.capacity=t.n(),e.count=t.n()},saveDescriptorBlockFlattened:function(t,e){t.n(e.descriptorNames.length);for(var i,n=f(e.descriptorNames);!(i=n()).done;){var r=i.value;t.s(r)}t.n(e.uniformBlockNames.length);for(var s,a=f(e.uniformBlockNames);!(s=a()).done;){var o=s.value;t.s(o)}t.n(e.descriptors.length);for(var h,u=f(e.descriptors);!(h=u()).done;)ktt(t,h.value);t.n(e.uniformBlocks.length);for(var l,c=f(e.uniformBlocks);!(l=c()).done;)htt(t,l.value);t.n(e.capacity),t.n(e.count)},loadDescriptorBlockFlattened:function(t,e){var i=0;i=t.n(),e.descriptorNames.length=i;for(var n=0;n!==i;++n)e.descriptorNames[n]=t.s();i=t.n(),e.uniformBlockNames.length=i;for(var r=0;r!==i;++r)e.uniformBlockNames[r]=t.s();i=t.n(),e.descriptors.length=i;for(var s=0;s!==i;++s){var a=new btt;Gtt(t,a),e.descriptors[s]=a}i=t.n(),e.uniformBlocks.length=i;for(var o=0;o!==i;++o){var h=new f_;utt(t,h),e.uniformBlocks[o]=h}e.capacity=t.n(),e.count=t.n()},saveDescriptorBlockIndex:function(t,e){t.n(e.updateFrequency),t.n(e.parameterType),t.n(e.descriptorType),t.n(e.visibility)},loadDescriptorBlockIndex:function(t,e){e.updateFrequency=t.n(),e.parameterType=t.n(),e.descriptorType=t.n(),e.visibility=t.n()},saveResolvePair:function(t,e){t.s(e.source),t.s(e.target),t.n(e.resolveFlags),t.n(e.mode),t.n(e.mode1)},loadResolvePair:function(t,e){e.source=t.s(),e.target=t.s(),e.resolveFlags=t.n(),e.mode=t.n(),e.mode1=t.n()},saveCopyPair:function(t,e){t.s(e.source),t.s(e.target),t.n(e.mipLevels),t.n(e.numSlices),t.n(e.sourceMostDetailedMip),t.n(e.sourceFirstSlice),t.n(e.sourcePlaneSlice),t.n(e.targetMostDetailedMip),t.n(e.targetFirstSlice),t.n(e.targetPlaneSlice)},loadCopyPair:function(t,e){e.source=t.s(),e.target=t.s(),e.mipLevels=t.n(),e.numSlices=t.n(),e.sourceMostDetailedMip=t.n(),e.sourceFirstSlice=t.n(),e.sourcePlaneSlice=t.n(),e.targetMostDetailedMip=t.n(),e.targetFirstSlice=t.n(),e.targetPlaneSlice=t.n()},saveMovePair:function(t,e){t.s(e.source),t.s(e.target),t.n(e.mipLevels),t.n(e.numSlices),t.n(e.targetMostDetailedMip),t.n(e.targetFirstSlice),t.n(e.targetPlaneSlice)},loadMovePair:function(t,e){e.source=t.s(),e.target=t.s(),e.mipLevels=t.n(),e.numSlices=t.n(),e.targetMostDetailedMip=t.n(),e.targetFirstSlice=t.n(),e.targetPlaneSlice=t.n()},savePipelineStatistics:function(t,e){t.n(e.numRenderPasses),t.n(e.numManagedTextures),t.n(e.totalManagedTextures),t.n(e.numUploadBuffers),t.n(e.numUploadBufferViews),t.n(e.numFreeUploadBuffers),t.n(e.numFreeUploadBufferViews),t.n(e.numDescriptorSets),t.n(e.numFreeDescriptorSets),t.n(e.numInstancingBuffers),t.n(e.numInstancingUniformBlocks)},loadPipelineStatistics:function(t,e){e.numRenderPasses=t.n(),e.numManagedTextures=t.n(),e.totalManagedTextures=t.n(),e.numUploadBuffers=t.n(),e.numUploadBufferViews=t.n(),e.numFreeUploadBuffers=t.n(),e.numFreeUploadBufferViews=t.n(),e.numDescriptorSets=t.n(),e.numFreeDescriptorSets=t.n(),e.numInstancingBuffers=t.n(),e.numInstancingUniformBlocks=t.n()},get PipelineType(){return Vet},get SubpassCapabilities(){return Uet},PipelineCapabilities:Het,packRGBE:function(t){var e=Math.max(Math.max(t.x,t.y),t.z),i=128;e>1e-4&&(i=Math.log(e)/Math.log(1.1),i=Fi((i=Math.ceil(i))+128,0,255));var n=1/Math.pow(1.1,i-128),r=function(t,e,i){if(e>i){var n=e;e=i,i=n}return t<e?e:t>i?i:t}(t.multiplyScalar(n),new gn(0,0,0),new gn(1,1,1));r.multiplyScalar(255);var s,a,o=xn(r).add((s=r.subtract(xn(r)))<(a=new gn(.5,.5,.5))?a:s);return new cn(o.x/255,o.y/255,o.z/255,i/255)},setEditorPipelineSettings:function(t){mst=t,gst=!0},getEditorPipelineSettings:function(){return mst},forceResizeAllWindows:vst,defaultWindowResize:function(t,e,i,n){t.addRenderWindow(e.colorName,ec.BGRA8,i,n,e),t.addDepthStencil(e.depthStencilName,ec.DEPTH_STENCIL,i,n);var r=e.renderWindowId,s=uy(t.device)?ec.R32F:ec.RGBA8,a=t.pipelineSceneData.shadows.size;t.addRenderTarget("ShadowMap"+r,s,a.x,a.y),t.addDepthStencil("ShadowDepth"+r,ec.DEPTH_STENCIL,a.x,a.y)},dispatchResizeEvents:function(t,e,i){if(e.windowResize){for(var n,r=f(t);!(n=r()).done;){var s=n.value;if(s.window.isRenderWindowResized()||gst){var a=Math.max(Math.floor(s.window.width),1),o=Math.max(Math.floor(s.window.height),1);e.windowResize(i,s.window,s,a,o),yst.push(s.window)}}for(var h,u=f(yst);!(h=u()).done;)h.value.setRenderWindowResizeHandled();yst.length=0,gst=!1}}});t("eC",Est),S.rendering=Est;var Cst=Object.setPrototypeOf,xst={};xst||(xst={}),function(t){var e=function(){function e(i){this._clock=new t.WorldClock,this._events=[],this._objects=[],this._eventManager=null,this._eventManager=i,console.info("DragonBones: "+e.VERSION+"\nWebsite: http://dragonbones.com/\nSource and Demo: https://github.com/DragonBones/")}return e.prototype.advanceTime=function(e){if(this._objects.length>0){for(var i=0,n=this._objects;i<n.length;i++)n[i].returnToPool();this._objects.length=0}if(this._clock.advanceTime(e),this._events.length>0){for(var r=0;r<this._events.length;++r){var s=this._events[r],a=s.armature;null!==a._armatureData&&(a.eventDispatcher.dispatchDBEvent(s.type,s),s.type===t.EventObject.SOUND_EVENT&&this._eventManager.dispatchDBEvent(s.type,s)),this.bufferObject(s)}this._events.length=0}},e.prototype.bufferEvent=function(t){this._events.indexOf(t)<0&&this._events.push(t)},e.prototype.bufferObject=function(t){this._objects.indexOf(t)<0&&this._objects.push(t)},Object.defineProperty(e.prototype,"clock",{get:function(){return this._clock},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"eventManager",{get:function(){return this._eventManager},enumerable:!0,configurable:!0}),e.VERSION="5.6.300",e.yDown=!1,e.debug=!1,e.debugDraw=!1,e.webAssembly=!1,e}();t.DragonBones=e}(xst||(xst={})),console.warn||(console.warn=function(){}),console.assert||(console.assert=function(){}),Date.now||(Date.now=function(){return(new Date).getTime()}),Cst=function(t,e){function i(){this.constructor=t}for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);i.prototype=e.prototype,t.prototype=new i},function(t){var e=function(){function t(){this.hashCode=t._hashCode++,this._isInPool=!1}return t._returnObject=function(e){var i=String(e.constructor),n=i in t._maxCountMap?t._maxCountMap[i]:t._defaultMaxCount,r=t._poolsMap[i]=t._poolsMap[i]||[];r.length<n&&(e._isInPool?console.warn("The object is already in the pool."):(e._isInPool=!0,r.push(e)))},t.toString=function(){throw new Error},t.setMaxCount=function(e,i){if((i<0||i!=i)&&(i=0),null!==e)null!==(r=(n=String(e))in t._poolsMap?t._poolsMap[n]:null)&&r.length>i&&(r.length=i),t._maxCountMap[n]=i;else for(var n in t._defaultMaxCount=i,t._poolsMap){var r;(r=t._poolsMap[n]).length>i&&(r.length=i),n in t._maxCountMap&&(t._maxCountMap[n]=i)}},t.clearPool=function(e){if(void 0===e&&(e=null),null!==e){var i=String(e);null!==(r=i in t._poolsMap?t._poolsMap[i]:null)&&r.length>0&&(r.length=0)}else for(var n in t._poolsMap){var r;(r=t._poolsMap[n]).length=0}},t.borrowObject=function(e){var i=String(e),n=i in t._poolsMap?t._poolsMap[i]:null;if(null!==n&&n.length>0){var r=n.pop();return r._isInPool=!1,r}var s=new e;return s._onClear(),s},t.prototype.returnToPool=function(){this._onClear(),t._returnObject(this)},t._hashCode=0,t._defaultMaxCount=3e3,t._maxCountMap={},t._poolsMap={},t}();t.BaseObject=e}(xst||(xst={})),function(t){var e=function(){function t(t,e,i,n,r,s){void 0===t&&(t=1),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=1),void 0===r&&(r=0),void 0===s&&(s=0),this.a=t,this.b=e,this.c=i,this.d=n,this.tx=r,this.ty=s}return t.prototype.toString=function(){return"[object dragonBones.Matrix] a:"+this.a+" b:"+this.b+" c:"+this.c+" d:"+this.d+" tx:"+this.tx+" ty:"+this.ty},t.prototype.copyFrom=function(t){return this.a=t.a,this.b=t.b,this.c=t.c,this.d=t.d,this.tx=t.tx,this.ty=t.ty,this},t.prototype.copyFromArray=function(t,e){return void 0===e&&(e=0),this.a=t[e],this.b=t[e+1],this.c=t[e+2],this.d=t[e+3],this.tx=t[e+4],this.ty=t[e+5],this},t.prototype.identity=function(){return this.a=this.d=1,this.b=this.c=0,this.tx=this.ty=0,this},t.prototype.concat=function(t){var e=this.a*t.a,i=0,n=0,r=this.d*t.d,s=this.tx*t.a+t.tx,a=this.ty*t.d+t.ty;return 0===this.b&&0===this.c||(e+=this.b*t.c,i+=this.b*t.d,n+=this.c*t.a,r+=this.c*t.b),0===t.b&&0===t.c||(i+=this.a*t.b,n+=this.d*t.c,s+=this.ty*t.c,a+=this.tx*t.b),this.a=e,this.b=i,this.c=n,this.d=r,this.tx=s,this.ty=a,this},t.prototype.invert=function(){var t=this.a,e=this.b,i=this.c,n=this.d,r=this.tx,s=this.ty;if(0===e&&0===i)return this.b=this.c=0,0===t||0===n?this.a=this.b=this.tx=this.ty=0:(t=this.a=1/t,n=this.d=1/n,this.tx=-t*r,this.ty=-n*s),this;var a=t*n-e*i;if(0===a)return this.a=this.d=1,this.b=this.c=0,this.tx=this.ty=0,this;a=1/a;var o=this.a=n*a;return e=this.b=-e*a,i=this.c=-i*a,n=this.d=t*a,this.tx=-(o*r+i*s),this.ty=-(e*r+n*s),this},t.prototype.transformPoint=function(t,e,i,n){void 0===n&&(n=!1),i.x=this.a*t+this.c*e,i.y=this.b*t+this.d*e,n||(i.x+=this.tx,i.y+=this.ty)},t.prototype.transformRectangle=function(t,e){void 0===e&&(e=!1);var i=this.a,n=this.b,r=this.c,s=this.d,a=e?0:this.tx,o=e?0:this.ty,h=t.x,u=t.y,l=h+t.width,c=u+t.height,_=i*h+r*u+a,f=n*h+s*u+o,d=i*l+r*u+a,p=n*l+s*u+o,m=i*l+r*c+a,g=n*l+s*c+o,v=i*h+r*c+a,y=n*h+s*c+o,S=0;_>d&&(S=_,_=d,d=S),m>v&&(S=m,m=v,v=S),t.x=Math.floor(_<m?_:m),t.width=Math.ceil((d>v?d:v)-t.x),f>p&&(S=f,f=p,p=S),g>y&&(S=g,g=y,y=S),t.y=Math.floor(f<g?f:g),t.height=Math.ceil((p>y?p:y)-t.y)},t}();t.Matrix=e}(xst||(xst={})),function(t){var e=function(){function t(t,e,i,n,r,s){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),void 0===r&&(r=1),void 0===s&&(s=1),this.x=t,this.y=e,this.skew=i,this.rotation=n,this.scaleX=r,this.scaleY=s}return t.normalizeRadian=function(t){return(t=(t+Math.PI)%(2*Math.PI))+(t>0?-Math.PI:Math.PI)},t.prototype.toString=function(){return"[object dragonBones.Transform] x:"+this.x+" y:"+this.y+" skewX:"+180*this.skew/Math.PI+" skewY:"+180*this.rotation/Math.PI+" scaleX:"+this.scaleX+" scaleY:"+this.scaleY},t.prototype.copyFrom=function(t){return this.x=t.x,this.y=t.y,this.skew=t.skew,this.rotation=t.rotation,this.scaleX=t.scaleX,this.scaleY=t.scaleY,this},t.prototype.identity=function(){return this.x=this.y=0,this.skew=this.rotation=0,this.scaleX=this.scaleY=1,this},t.prototype.add=function(t){return this.x+=t.x,this.y+=t.y,this.skew+=t.skew,this.rotation+=t.rotation,this.scaleX*=t.scaleX,this.scaleY*=t.scaleY,this},t.prototype.minus=function(t){return this.x-=t.x,this.y-=t.y,this.skew-=t.skew,this.rotation-=t.rotation,this.scaleX/=t.scaleX,this.scaleY/=t.scaleY,this},t.prototype.fromMatrix=function(e){var i=this.scaleX,n=this.scaleY,r=t.PI_Q;this.x=e.tx,this.y=e.ty,this.rotation=Math.atan(e.b/e.a);var s=Math.atan(-e.c/e.d);return this.scaleX=this.rotation>-r&&this.rotation<r?e.a/Math.cos(this.rotation):e.b/Math.sin(this.rotation),this.scaleY=s>-r&&s<r?e.d/Math.cos(s):-e.c/Math.sin(s),i>=0&&this.scaleX<0&&(this.scaleX=-this.scaleX,this.rotation=this.rotation-Math.PI),n>=0&&this.scaleY<0&&(this.scaleY=-this.scaleY,s-=Math.PI),this.skew=s-this.rotation,this},t.prototype.toMatrix=function(t){return 0===this.rotation?(t.a=1,t.b=0):(t.a=Math.cos(this.rotation),t.b=Math.sin(this.rotation)),0===this.skew?(t.c=-t.b,t.d=t.a):(t.c=-Math.sin(this.skew+this.rotation),t.d=Math.cos(this.skew+this.rotation)),1!==this.scaleX&&(t.a*=this.scaleX,t.b*=this.scaleX),1!==this.scaleY&&(t.c*=this.scaleY,t.d*=this.scaleY),t.tx=this.x,t.ty=this.y,this},t.PI=Math.PI,t.PI_D=2*Math.PI,t.PI_H=Math.PI/2,t.PI_Q=Math.PI/4,t.RAD_DEG=180/Math.PI,t.DEG_RAD=Math.PI/180,t}();t.Transform=e}(xst||(xst={})),function(t){var e=function(){function t(t,e,i,n,r,s,a,o){void 0===t&&(t=1),void 0===e&&(e=1),void 0===i&&(i=1),void 0===n&&(n=1),void 0===r&&(r=0),void 0===s&&(s=0),void 0===a&&(a=0),void 0===o&&(o=0),this.alphaMultiplier=t,this.redMultiplier=e,this.greenMultiplier=i,this.blueMultiplier=n,this.alphaOffset=r,this.redOffset=s,this.greenOffset=a,this.blueOffset=o}return t.prototype.copyFrom=function(t){this.alphaMultiplier=t.alphaMultiplier,this.redMultiplier=t.redMultiplier,this.greenMultiplier=t.greenMultiplier,this.blueMultiplier=t.blueMultiplier,this.alphaOffset=t.alphaOffset,this.redOffset=t.redOffset,this.greenOffset=t.greenOffset,this.blueOffset=t.blueOffset},t.prototype.identity=function(){this.alphaMultiplier=this.redMultiplier=this.greenMultiplier=this.blueMultiplier=1,this.alphaOffset=this.redOffset=this.greenOffset=this.blueOffset=0},t}();t.ColorTransform=e}(xst||(xst={})),function(t){var e=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=0),this.x=t,this.y=e}return t.prototype.copyFrom=function(t){this.x=t.x,this.y=t.y},t.prototype.clear=function(){this.x=this.y=0},t}();t.Point=e}(xst||(xst={})),function(t){var e=function(){function t(t,e,i,n){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),void 0===n&&(n=0),this.x=t,this.y=e,this.width=i,this.height=n}return t.prototype.copyFrom=function(t){this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height},t.prototype.clear=function(){this.x=this.y=0,this.width=this.height=0},t}();t.Rectangle=e}(xst||(xst={})),function(t){var e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.ints=[],e.floats=[],e.strings=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.UserData]"},e.prototype._onClear=function(){this.ints.length=0,this.floats.length=0,this.strings.length=0},e.prototype.addInt=function(t){this.ints.push(t)},e.prototype.addFloat=function(t){this.floats.push(t)},e.prototype.addString=function(t){this.strings.push(t)},e.prototype.getInt=function(t){return void 0===t&&(t=0),t>=0&&t<this.ints.length?this.ints[t]:0},e.prototype.getFloat=function(t){return void 0===t&&(t=0),t>=0&&t<this.floats.length?this.floats[t]:0},e.prototype.getString=function(t){return void 0===t&&(t=0),t>=0&&t<this.strings.length?this.strings[t]:""},e}(t.BaseObject);t.UserData=e;var i=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.data=null,e}return Cst(e,t),e.toString=function(){return"[class dragonBones.ActionData]"},e.prototype._onClear=function(){null!==this.data&&this.data.returnToPool(),this.type=0,this.name="",this.bone=null,this.slot=null,this.data=null},e}(t.BaseObject);t.ActionData=i}(xst||(xst={})),function(t){var e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.frameIndices=[],e.cachedFrames=[],e.armatureNames=[],e.armatures={},e.userData=null,e}return Cst(e,t),e.toString=function(){return"[class dragonBones.DragonBonesData]"},e.prototype._onClear=function(){for(var t in this.armatures)this.armatures[t].returnToPool(),delete this.armatures[t];null!==this.userData&&this.userData.returnToPool(),this.autoSearch=!1,this.frameRate=0,this.version="",this.name="",this.stage=null,this.frameIndices.length=0,this.cachedFrames.length=0,this.armatureNames.length=0,this.binary=null,this.intArray=null,this.floatArray=null,this.frameIntArray=null,this.frameFloatArray=null,this.frameArray=null,this.timelineArray=null,this.userData=null},e.prototype.addArmature=function(t){t.name in this.armatures?console.warn("Same armature: "+t.name):(t.parent=this,this.armatures[t.name]=t,this.armatureNames.push(t.name))},e.prototype.getArmature=function(t){return t in this.armatures?this.armatures[t]:null},e.prototype.dispose=function(){console.warn("已废弃"),this.returnToPool()},e}(t.BaseObject);t.DragonBonesData=e}(xst||(xst={})),function(t){var e=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.aabb=new t.Rectangle,i.animationNames=[],i.sortedBones=[],i.sortedSlots=[],i.defaultActions=[],i.actions=[],i.bones={},i.slots={},i.constraints={},i.skins={},i.animations={},i.canvas=null,i.userData=null,i}return Cst(i,e),i.toString=function(){return"[class dragonBones.ArmatureData]"},i.prototype._onClear=function(){for(var t=0,e=this.defaultActions;t<e.length;t++)e[t].returnToPool();for(var i=0,n=this.actions;i<n.length;i++)n[i].returnToPool();for(var r in this.bones)this.bones[r].returnToPool(),delete this.bones[r];for(var r in this.slots)this.slots[r].returnToPool(),delete this.slots[r];for(var r in this.constraints)this.constraints[r].returnToPool(),delete this.constraints[r];for(var r in this.skins)this.skins[r].returnToPool(),delete this.skins[r];for(var r in this.animations)this.animations[r].returnToPool(),delete this.animations[r];null!==this.canvas&&this.canvas.returnToPool(),null!==this.userData&&this.userData.returnToPool(),this.type=0,this.frameRate=0,this.cacheFrameRate=0,this.scale=1,this.name="",this.aabb.clear(),this.animationNames.length=0,this.sortedBones.length=0,this.sortedSlots.length=0,this.defaultActions.length=0,this.actions.length=0,this.defaultSkin=null,this.defaultAnimation=null,this.canvas=null,this.userData=null,this.parent=null},i.prototype.sortBones=function(){var t=this.sortedBones.length;if(!(t<=0)){var e=this.sortedBones.concat(),i=0,n=0;for(this.sortedBones.length=0;n<t;){var r=e[i++];if(i>=t&&(i=0),!(this.sortedBones.indexOf(r)>=0)){var s=!1;for(var a in this.constraints){var o=this.constraints[a];if(o.root===r&&this.sortedBones.indexOf(o.target)<0){s=!0;break}}s||null!==r.parent&&this.sortedBones.indexOf(r.parent)<0||(this.sortedBones.push(r),n++)}}}},i.prototype.cacheFrames=function(t){if(!(this.cacheFrameRate>0))for(var e in this.cacheFrameRate=t,this.animations)this.animations[e].cacheFrames(this.cacheFrameRate)},i.prototype.setCacheFrame=function(t,e){var i=this.parent.cachedFrames,n=i.length;return i.length+=10,i[n]=t.a,i[n+1]=t.b,i[n+2]=t.c,i[n+3]=t.d,i[n+4]=t.tx,i[n+5]=t.ty,i[n+6]=e.rotation,i[n+7]=e.skew,i[n+8]=e.scaleX,i[n+9]=e.scaleY,n},i.prototype.getCacheFrame=function(t,e,i){var n=this.parent.cachedFrames;t.a=n[i],t.b=n[i+1],t.c=n[i+2],t.d=n[i+3],t.tx=n[i+4],t.ty=n[i+5],e.rotation=n[i+6],e.skew=n[i+7],e.scaleX=n[i+8],e.scaleY=n[i+9],e.x=t.tx,e.y=t.ty},i.prototype.addBone=function(t){t.name in this.bones?console.warn("Same bone: "+t.name):(this.bones[t.name]=t,this.sortedBones.push(t))},i.prototype.addSlot=function(t){t.name in this.slots?console.warn("Same slot: "+t.name):(this.slots[t.name]=t,this.sortedSlots.push(t))},i.prototype.addConstraint=function(t){t.name in this.constraints?console.warn("Same constraint: "+t.name):this.constraints[t.name]=t},i.prototype.addSkin=function(t){t.name in this.skins?console.warn("Same skin: "+t.name):(t.parent=this,this.skins[t.name]=t,null===this.defaultSkin&&(this.defaultSkin=t),"default"===t.name&&(this.defaultSkin=t))},i.prototype.addAnimation=function(t){t.name in this.animations?console.warn("Same animation: "+t.name):(t.parent=this,this.animations[t.name]=t,this.animationNames.push(t.name),null===this.defaultAnimation&&(this.defaultAnimation=t))},i.prototype.addAction=function(t,e){e?this.defaultActions.push(t):this.actions.push(t)},i.prototype.getBone=function(t){return t in this.bones?this.bones[t]:null},i.prototype.getSlot=function(t){return t in this.slots?this.slots[t]:null},i.prototype.getConstraint=function(t){return t in this.constraints?this.constraints[t]:null},i.prototype.getSkin=function(t){return t in this.skins?this.skins[t]:null},i.prototype.getMesh=function(t,e,i){var n=this.getSkin(t);return null===n?null:n.getDisplay(e,i)},i.prototype.getAnimation=function(t){return t in this.animations?this.animations[t]:null},i}(t.BaseObject);t.ArmatureData=e;var i=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.transform=new t.Transform,i.userData=null,i}return Cst(i,e),i.toString=function(){return"[class dragonBones.BoneData]"},i.prototype._onClear=function(){null!==this.userData&&this.userData.returnToPool(),this.inheritTranslation=!1,this.inheritRotation=!1,this.inheritScale=!1,this.inheritReflection=!1,this.type=0,this.length=0,this.name="",this.transform.identity(),this.userData=null,this.parent=null},i}(t.BaseObject);t.BoneData=i;var n=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.vertices=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.SurfaceData]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.type=1,this.segmentX=0,this.segmentY=0,this.vertices.length=0},e}(i);t.SurfaceData=n;var r=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t.color=null,t.userData=null,t}return Cst(i,e),i.createColor=function(){return new t.ColorTransform},i.toString=function(){return"[class dragonBones.SlotData]"},i.prototype._onClear=function(){null!==this.userData&&this.userData.returnToPool(),this.blendMode=0,this.displayIndex=0,this.zOrder=0,this.name="",this.color=null,this.userData=null,this.parent=null},i.DEFAULT_COLOR=new t.ColorTransform,i}(t.BaseObject);t.SlotData=r}(xst||(xst={})),function(t){var e=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.prototype._onClear=function(){this.order=0,this.name="",this.type=0,this.target=null,this.root=null,this.bone=null},e}(t.BaseObject);t.ConstraintData=e;var i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.IKConstraintData]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.scaleEnabled=!1,this.bendPositive=!1,this.weight=1},e}(e);t.IKConstraintData=i;var n=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.bones=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.PathConstraintData]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.pathSlot=null,this.pathDisplayData=null,this.bones.length=0,this.positionMode=0,this.spacingMode=1,this.rotateMode=1,this.position=0,this.spacing=0,this.rotateOffset=0,this.rotateMix=0,this.translateMix=0},e.prototype.AddBone=function(t){this.bones.push(t)},e}(e);t.PathConstraintData=n}(xst||(xst={})),function(t){var e=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.CanvasData]"},e.prototype._onClear=function(){this.hasBackground=!1,this.color=0,this.x=0,this.y=0,this.width=0,this.height=0},e}(t.BaseObject);t.CanvasData=e}(xst||(xst={})),function(t){var e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.displays={},e}return Cst(e,t),e.toString=function(){return"[class dragonBones.SkinData]"},e.prototype._onClear=function(){for(var t in this.displays){for(var e=0,i=this.displays[t];e<i.length;e++){var n=i[e];null!==n&&n.returnToPool()}delete this.displays[t]}this.name="",this.parent=null},e.prototype.addDisplay=function(t,e){t in this.displays||(this.displays[t]=[]),null!==e&&(e.parent=this),this.displays[t].push(e)},e.prototype.getDisplay=function(t,e){var i=this.getDisplays(t);if(null!==i)for(var n=0,r=i;n<r.length;n++){var s=r[n];if(null!==s&&s.name===e)return s}return null},e.prototype.getDisplays=function(t){return t in this.displays?this.displays[t]:null},e}(t.BaseObject);t.SkinData=e}(xst||(xst={})),function(t){var e=function(){function t(){this.weight=null}return t.prototype.clear=function(){this.isShared||null===this.weight||this.weight.returnToPool(),this.isShared=!1,this.inheritDeform=!1,this.offset=0,this.data=null,this.weight=null},t.prototype.shareFrom=function(t){this.isShared=!0,this.offset=t.offset,this.weight=t.weight},t}();t.VerticesData=e;var i=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.transform=new t.Transform,i}return Cst(i,e),i.prototype._onClear=function(){this.name="",this.path="",this.transform.identity(),this.parent=null},i}(t.BaseObject);t.DisplayData=i;var n=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.pivot=new t.Point,i}return Cst(i,e),i.toString=function(){return"[class dragonBones.ImageDisplayData]"},i.prototype._onClear=function(){e.prototype._onClear.call(this),this.type=0,this.pivot.clear(),this.texture=null},i}(i);t.ImageDisplayData=n;var r=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.actions=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.ArmatureDisplayData]"},e.prototype._onClear=function(){t.prototype._onClear.call(this);for(var e=0,i=this.actions;e<i.length;e++)i[e].returnToPool();this.type=1,this.inheritAnimation=!1,this.actions.length=0,this.armature=null},e.prototype.addAction=function(t){this.actions.push(t)},e}(i);t.ArmatureDisplayData=r;var s=function(t){function i(){var i=null!==t&&t.apply(this,arguments)||this;return i.vertices=new e,i}return Cst(i,t),i.toString=function(){return"[class dragonBones.MeshDisplayData]"},i.prototype._onClear=function(){t.prototype._onClear.call(this),this.type=2,this.vertices.clear(),this.texture=null},i}(i);t.MeshDisplayData=s;var a=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.boundingBox=null,e}return Cst(e,t),e.toString=function(){return"[class dragonBones.BoundingBoxDisplayData]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),null!==this.boundingBox&&this.boundingBox.returnToPool(),this.type=3,this.boundingBox=null},e}(i);t.BoundingBoxDisplayData=a;var o=function(t){function i(){var i=null!==t&&t.apply(this,arguments)||this;return i.vertices=new e,i.curveLengths=[],i}return Cst(i,t),i.toString=function(){return"[class dragonBones.PathDisplayData]"},i.prototype._onClear=function(){t.prototype._onClear.call(this),this.type=4,this.closed=!1,this.constantSpeed=!1,this.vertices.clear(),this.curveLengths.length=0},i}(i);t.PathDisplayData=o;var h=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.bones=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.WeightData]"},e.prototype._onClear=function(){this.count=0,this.offset=0,this.bones.length=0},e.prototype.addBone=function(t){this.bones.push(t)},e}(t.BaseObject);t.WeightData=h}(xst||(xst={})),function(t){var e=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.prototype._onClear=function(){this.color=0,this.width=0,this.height=0},e}(t.BaseObject);t.BoundingBoxData=e;var i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.RectangleBoundingBoxData]"},e._computeOutCode=function(t,e,i,n,r,s){var a=0;return t<i?a|=1:t>r&&(a|=2),e<n?a|=4:e>s&&(a|=8),a},e.rectangleIntersectsSegment=function(t,i,n,r,s,a,o,h,u,l,c){void 0===u&&(u=null),void 0===l&&(l=null),void 0===c&&(c=null);var _=t>s&&t<o&&i>a&&i<h,f=n>s&&n<o&&r>a&&r<h;if(_&&f)return-1;for(var d=0,p=e._computeOutCode(t,i,s,a,o,h),m=e._computeOutCode(n,r,s,a,o,h);;){if(0==(p|m)){d=2;break}if(0!=(p&m))break;var g=0,v=0,y=0,S=0!==p?p:m;0!=(4&S)?(g=t+(n-t)*(a-i)/(r-i),v=a,null!==c&&(y=.5*-Math.PI)):0!=(8&S)?(g=t+(n-t)*(h-i)/(r-i),v=h,null!==c&&(y=.5*Math.PI)):0!=(2&S)?(v=i+(r-i)*(o-t)/(n-t),g=o,null!==c&&(y=0)):0!=(1&S)&&(v=i+(r-i)*(s-t)/(n-t),g=s,null!==c&&(y=Math.PI)),S===p?(t=g,i=v,p=e._computeOutCode(t,i,s,a,o,h),null!==c&&(c.x=y)):(n=g,r=v,m=e._computeOutCode(n,r,s,a,o,h),null!==c&&(c.y=y))}return d&&(_?(d=2,null!==u&&(u.x=n,u.y=r),null!==l&&(l.x=n,l.y=n),null!==c&&(c.x=c.y+Math.PI)):f?(d=1,null!==u&&(u.x=t,u.y=i),null!==l&&(l.x=t,l.y=i),null!==c&&(c.y=c.x+Math.PI)):(d=3,null!==u&&(u.x=t,u.y=i),null!==l&&(l.x=n,l.y=r))),d},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.type=0},e.prototype.containsPoint=function(t,e){var i=.5*this.width;if(t>=-i&&t<=i){var n=.5*this.height;if(e>=-n&&e<=n)return!0}return!1},e.prototype.intersectsSegment=function(t,i,n,r,s,a,o){void 0===s&&(s=null),void 0===a&&(a=null),void 0===o&&(o=null);var h=.5*this.width,u=.5*this.height;return e.rectangleIntersectsSegment(t,i,n,r,-h,-u,h,u,s,a,o)},e}(e);t.RectangleBoundingBoxData=i;var n=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.EllipseData]"},e.ellipseIntersectsSegment=function(t,e,i,n,r,s,a,o,h,u,l){void 0===h&&(h=null),void 0===u&&(u=null),void 0===l&&(l=null);var c=a/o,_=c*c,f=i-t,d=(n*=c)-(e*=c),p=Math.sqrt(f*f+d*d),m=f/p,g=d/p,v=(r-t)*m+(s-e)*g,y=a*a,S=y-(t*t+e*e)+v*v,T=0;if(S>=0){var A=Math.sqrt(S),b=v-A,E=v+A,C=b<0?-1:b<=p?0:1,x=E<0?-1:E<=p?0:1,w=C*x;if(w<0)return-1;0===w&&(-1===C?(T=2,i=t+E*m,n=(e+E*g)/c,null!==h&&(h.x=i,h.y=n),null!==u&&(u.x=i,u.y=n),null!==l&&(l.x=Math.atan2(n/y*_,i/y),l.y=l.x+Math.PI)):1===x?(T=1,t+=b*m,e=(e+b*g)/c,null!==h&&(h.x=t,h.y=e),null!==u&&(u.x=t,u.y=e),null!==l&&(l.x=Math.atan2(e/y*_,t/y),l.y=l.x+Math.PI)):(T=3,null!==h&&(h.x=t+b*m,h.y=(e+b*g)/c,null!==l&&(l.x=Math.atan2(h.y/y*_,h.x/y))),null!==u&&(u.x=t+E*m,u.y=(e+E*g)/c,null!==l&&(l.y=Math.atan2(u.y/y*_,u.x/y)))))}return T},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.type=1},e.prototype.containsPoint=function(t,e){var i=.5*this.width;if(t>=-i&&t<=i){var n=.5*this.height;if(e>=-n&&e<=n)return e*=i/n,Math.sqrt(t*t+e*e)<=i}return!1},e.prototype.intersectsSegment=function(t,i,n,r,s,a,o){return void 0===s&&(s=null),void 0===a&&(a=null),void 0===o&&(o=null),e.ellipseIntersectsSegment(t,i,n,r,0,0,.5*this.width,.5*this.height,s,a,o)},e}(e);t.EllipseBoundingBoxData=n;var r=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.vertices=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.PolygonBoundingBoxData]"},e.polygonIntersectsSegment=function(t,e,i,n,r,s,a,o){void 0===s&&(s=null),void 0===a&&(a=null),void 0===o&&(o=null),t===i&&(t=i+1e-6),e===n&&(e=n+1e-6);for(var h=r.length,u=t-i,l=e-n,c=t*n-e*i,_=0,f=r[h-2],d=r[h-1],p=0,m=0,g=0,v=0,y=0,S=0,T=0;T<h;T+=2){var A=r[T],b=r[T+1];f===A&&(f=A+1e-4),d===b&&(d=b+1e-4);var E=f-A,C=d-b,x=f*b-d*A,w=u*C-l*E,R=(c*E-u*x)/w;if((R>=f&&R<=A||R>=A&&R<=f)&&(0===u||R>=t&&R<=i||R>=i&&R<=t)){var I=(c*C-l*x)/w;if((I>=d&&I<=b||I>=b&&I<=d)&&(0===l||I>=e&&I<=n||I>=n&&I<=e)){if(null===a){g=R,v=I,y=R,S=I,_++,null!==o&&(o.x=Math.atan2(b-d,A-f)-.5*Math.PI,o.y=o.x);break}var D=R-t;D<0&&(D=-D),0===_?(p=D,m=D,g=R,v=I,y=R,S=I,null!==o&&(o.x=Math.atan2(b-d,A-f)-.5*Math.PI,o.y=o.x)):(D<p&&(p=D,g=R,v=I,null!==o&&(o.x=Math.atan2(b-d,A-f)-.5*Math.PI)),D>m&&(m=D,y=R,S=I,null!==o&&(o.y=Math.atan2(b-d,A-f)-.5*Math.PI))),_++}}f=A,d=b}return 1===_?(null!==s&&(s.x=g,s.y=v),null!==a&&(a.x=g,a.y=v),null!==o&&(o.y=o.x+Math.PI)):_>1&&(_++,null!==s&&(s.x=g,s.y=v),null!==a&&(a.x=y,a.y=S)),_},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.type=2,this.x=0,this.y=0,this.vertices.length=0},e.prototype.containsPoint=function(t,e){var i=!1;if(t>=this.x&&t<=this.width&&e>=this.y&&e<=this.height)for(var n=0,r=this.vertices.length,s=r-2;n<r;n+=2){var a=this.vertices[s+1],o=this.vertices[n+1];if(o<e&&a>=e||a<e&&o>=e){var h=this.vertices[s],u=this.vertices[n];(e-o)*(h-u)/(a-o)+u<t&&(i=!i)}s=n}return i},e.prototype.intersectsSegment=function(t,n,r,s,a,o,h){void 0===a&&(a=null),void 0===o&&(o=null),void 0===h&&(h=null);var u=0;return 0!==i.rectangleIntersectsSegment(t,n,r,s,this.x,this.y,this.x+this.width,this.y+this.height,null,null,null)&&(u=e.polygonIntersectsSegment(t,n,r,s,this.vertices,a,o,h)),u},e}(e);t.PolygonBoundingBoxData=r}(xst||(xst={})),function(t){var e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.cachedFrames=[],e.boneTimelines={},e.surfaceTimelines={},e.slotTimelines={},e.constraintTimelines={},e.animationTimelines={},e.boneCachedFrameIndices={},e.slotCachedFrameIndices={},e.actionTimeline=null,e.zOrderTimeline=null,e}return Cst(e,t),e.toString=function(){return"[class dragonBones.AnimationData]"},e.prototype._onClear=function(){for(var t in this.boneTimelines){for(var e=0,i=this.boneTimelines[t];e<i.length;e++)i[e].returnToPool();delete this.boneTimelines[t]}for(var t in this.surfaceTimelines){for(var n=0,r=this.surfaceTimelines[t];n<r.length;n++)r[n].returnToPool();delete this.surfaceTimelines[t]}for(var t in this.slotTimelines){for(var s=0,a=this.slotTimelines[t];s<a.length;s++)a[s].returnToPool();delete this.slotTimelines[t]}for(var t in this.constraintTimelines){for(var o=0,h=this.constraintTimelines[t];o<h.length;o++)h[o].returnToPool();delete this.constraintTimelines[t]}for(var t in this.animationTimelines){for(var u=0,l=this.animationTimelines[t];u<l.length;u++)l[u].returnToPool();delete this.animationTimelines[t]}for(var t in this.boneCachedFrameIndices)delete this.boneCachedFrameIndices[t];for(var t in this.slotCachedFrameIndices)delete this.slotCachedFrameIndices[t];null!==this.actionTimeline&&this.actionTimeline.returnToPool(),null!==this.zOrderTimeline&&this.zOrderTimeline.returnToPool(),this.frameIntOffset=0,this.frameFloatOffset=0,this.frameOffset=0,this.frameCount=0,this.playTimes=0,this.duration=0,this.scale=1,this.fadeInTime=0,this.cacheFrameRate=0,this.name="",this.cachedFrames.length=0,this.actionTimeline=null,this.zOrderTimeline=null,this.parent=null},e.prototype.cacheFrames=function(t){if(!(this.cacheFrameRate>0)){this.cacheFrameRate=Math.max(Math.ceil(t*this.scale),1);var e=Math.ceil(this.cacheFrameRate*this.duration)+1;this.cachedFrames.length=e;for(var i=0,n=this.cacheFrames.length;i<n;++i)this.cachedFrames[i]=!1;for(var r=0,s=this.parent.sortedBones;r<s.length;r++){var a=s[r];for(i=0,n=(u=new Array(e)).length;i<n;++i)u[i]=-1;this.boneCachedFrameIndices[a.name]=u}for(var o=0,h=this.parent.sortedSlots;o<h.length;o++){var u,l=h[o];for(i=0,n=(u=new Array(e)).length;i<n;++i)u[i]=-1;this.slotCachedFrameIndices[l.name]=u}}},e.prototype.addBoneTimeline=function(t,e){var i=t.name in this.boneTimelines?this.boneTimelines[t.name]:this.boneTimelines[t.name]=[];i.indexOf(e)<0&&i.push(e)},e.prototype.addSurfaceTimeline=function(t,e){var i=t.name in this.surfaceTimelines?this.surfaceTimelines[t.name]:this.surfaceTimelines[t.name]=[];i.indexOf(e)<0&&i.push(e)},e.prototype.addSlotTimeline=function(t,e){var i=t.name in this.slotTimelines?this.slotTimelines[t.name]:this.slotTimelines[t.name]=[];i.indexOf(e)<0&&i.push(e)},e.prototype.addConstraintTimeline=function(t,e){var i=t.name in this.constraintTimelines?this.constraintTimelines[t.name]:this.constraintTimelines[t.name]=[];i.indexOf(e)<0&&i.push(e)},e.prototype.addAnimationTimeline=function(t,e){var i=t in this.animationTimelines?this.animationTimelines[t]:this.animationTimelines[t]=[];i.indexOf(e)<0&&i.push(e)},e.prototype.getBoneTimelines=function(t){return t in this.boneTimelines?this.boneTimelines[t]:null},e.prototype.getSurfaceTimelines=function(t){return t in this.surfaceTimelines?this.surfaceTimelines[t]:null},e.prototype.getSlotTimelines=function(t){return t in this.slotTimelines?this.slotTimelines[t]:null},e.prototype.getConstraintTimelines=function(t){return t in this.constraintTimelines?this.constraintTimelines[t]:null},e.prototype.getAnimationTimelines=function(t){return t in this.animationTimelines?this.animationTimelines[t]:null},e.prototype.getBoneCachedFrameIndices=function(t){return t in this.boneCachedFrameIndices?this.boneCachedFrameIndices[t]:null},e.prototype.getSlotCachedFrameIndices=function(t){return t in this.slotCachedFrameIndices?this.slotCachedFrameIndices[t]:null},e}(t.BaseObject);t.AnimationData=e;var i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.TimelineData]"},e.prototype._onClear=function(){this.type=10,this.offset=0,this.frameIndicesOffset=-1},e}(t.BaseObject);t.TimelineData=i}(xst||(xst={})),function(t){var e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.boneMask=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.AnimationConfig]"},e.prototype._onClear=function(){this.pauseFadeOut=!0,this.fadeOutMode=4,this.fadeOutTweenType=1,this.fadeOutTime=-1,this.actionEnabled=!0,this.additiveBlending=!1,this.displayControl=!0,this.pauseFadeIn=!0,this.resetToPose=!0,this.fadeInTweenType=1,this.playTimes=-1,this.layer=0,this.position=0,this.duration=-1,this.timeScale=-100,this.weight=1,this.fadeInTime=-1,this.autoFadeOutTime=-1,this.name="",this.animation="",this.group="",this.boneMask.length=0},e.prototype.clear=function(){this._onClear()},e.prototype.copyFrom=function(t){this.pauseFadeOut=t.pauseFadeOut,this.fadeOutMode=t.fadeOutMode,this.autoFadeOutTime=t.autoFadeOutTime,this.fadeOutTweenType=t.fadeOutTweenType,this.actionEnabled=t.actionEnabled,this.additiveBlending=t.additiveBlending,this.displayControl=t.displayControl,this.pauseFadeIn=t.pauseFadeIn,this.resetToPose=t.resetToPose,this.playTimes=t.playTimes,this.layer=t.layer,this.position=t.position,this.duration=t.duration,this.timeScale=t.timeScale,this.fadeInTime=t.fadeInTime,this.fadeOutTime=t.fadeOutTime,this.fadeInTweenType=t.fadeInTweenType,this.weight=t.weight,this.name=t.name,this.animation=t.animation,this.group=t.group,this.boneMask.length=t.boneMask.length;for(var e=0,i=this.boneMask.length;e<i;++e)this.boneMask[e]=t.boneMask[e]},e.prototype.containsBoneMask=function(t){return 0===this.boneMask.length||this.boneMask.indexOf(t)>=0},e.prototype.addBoneMask=function(t,e,i){void 0===i&&(i=!0);var n=t.getBone(e);if(null!==n&&(this.boneMask.indexOf(e)<0&&this.boneMask.push(e),i))for(var r=0,s=t.getBones();r<s.length;r++){var a=s[r];this.boneMask.indexOf(a.name)<0&&n.contains(a)&&this.boneMask.push(a.name)}},e.prototype.removeBoneMask=function(t,e,i){void 0===i&&(i=!0);var n=this.boneMask.indexOf(e);if(n>=0&&this.boneMask.splice(n,1),i){var r=t.getBone(e);if(null!==r)if(this.boneMask.length>0)for(var s=0,a=t.getBones();s<a.length;s++){var o=a[s],h=this.boneMask.indexOf(o.name);h>=0&&r.contains(o)&&this.boneMask.splice(h,1)}else for(var u=0,l=t.getBones();u<l.length;u++)(o=l[u])!==r&&(r.contains(o)||this.boneMask.push(o.name))}},e}(t.BaseObject);t.AnimationConfig=e}(xst||(xst={})),function(t){var e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.textures={},e}return Cst(e,t),e.prototype._onClear=function(){for(var t in this.textures)this.textures[t].returnToPool(),delete this.textures[t];this.autoSearch=!1,this.width=0,this.height=0,this.scale=1,this.name="",this.imagePath=""},e.prototype.copyFrom=function(t){for(var e in this.autoSearch=t.autoSearch,this.scale=t.scale,this.width=t.width,this.height=t.height,this.name=t.name,this.imagePath=t.imagePath,this.textures)this.textures[e].returnToPool(),delete this.textures[e];for(var e in t.textures){var i=this.createTexture();i.copyFrom(t.textures[e]),this.textures[e]=i}},e.prototype.addTexture=function(t){t.name in this.textures?console.warn("Same texture: "+t.name):(t.parent=this,this.textures[t.name]=t)},e.prototype.getTexture=function(t){return t in this.textures?this.textures[t]:null},e}(t.BaseObject);t.TextureAtlasData=e;var i=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.region=new t.Rectangle,i.frame=null,i}return Cst(i,e),i.createRectangle=function(){return new t.Rectangle},i.prototype._onClear=function(){this.rotated=!1,this.name="",this.region.clear(),this.parent=null,this.frame=null},i.prototype.copyFrom=function(t){this.rotated=t.rotated,this.name=t.name,this.region.copyFrom(t.region),this.parent=t.parent,null===this.frame&&null!==t.frame?this.frame=i.createRectangle():null!==this.frame&&null===t.frame&&(this.frame=null),null!==this.frame&&null!==t.frame&&this.frame.copyFrom(t.frame)},i}(t.BaseObject);t.TextureData=i}(xst||(xst={})),function(t){var e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.vertices=[],e.bones=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.DeformVertices]"},e.prototype._onClear=function(){this.verticesDirty=!1,this.vertices.length=0,this.bones.length=0,this.verticesData=null},e.prototype.init=function(t,e){if(this.verticesData=t,null!==this.verticesData){var i;i=null!==this.verticesData.weight?2*this.verticesData.weight.count:2*this.verticesData.data.intArray[this.verticesData.offset+0],this.verticesDirty=!0,this.vertices.length=i,this.bones.length=0;for(var n=0,r=this.vertices.length;n<r;++n)this.vertices[n]=0;if(null!==this.verticesData.weight)for(n=0,r=this.verticesData.weight.bones.length;n<r;++n){var s=e.getBone(this.verticesData.weight.bones[n].name);this.bones.push(s)}}else this.verticesDirty=!1,this.vertices.length=0,this.bones.length=0,this.verticesData=null},e.prototype.isBonesUpdate=function(){for(var t=0,e=this.bones;t<e.length;t++){var i=e[t];if(null!==i&&i._childrenTransformDirty)return!0}return!1},e}(t.BaseObject);t.DeformVertices=e}(xst||(xst={})),function(t){var e=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t._bones=[],t._slots=[],t._constraints=[],t._actions=[],t._animation=null,t._proxy=null,t._replaceTextureAtlasData=null,t._clock=null,t}return Cst(i,e),i.toString=function(){return"[class dragonBones.Armature]"},i._onSortSlots=function(t,e){return t._zOrder>e._zOrder?1:-1},i.prototype._onClear=function(){null!==this._clock&&this._clock.remove(this);for(var t=0,e=this._bones;t<e.length;t++)e[t].returnToPool();for(var i=0,n=this._slots;i<n.length;i++)n[i].returnToPool();for(var r=0,s=this._constraints;r<s.length;r++)s[r].returnToPool();for(var a=0,o=this._actions;a<o.length;a++)o[a].returnToPool();null!==this._animation&&this._animation.returnToPool(),null!==this._proxy&&this._proxy.dbClear(),null!==this._replaceTextureAtlasData&&this._replaceTextureAtlasData.returnToPool(),this.inheritAnimation=!0,this.userData=null,this._lockUpdate=!1,this._slotsDirty=!0,this._zOrderDirty=!1,this._flipX=!1,this._flipY=!1,this._cacheFrameIndex=-1,this._bones.length=0,this._slots.length=0,this._constraints.length=0,this._actions.length=0,this._armatureData=null,this._animation=null,this._proxy=null,this._display=null,this._replaceTextureAtlasData=null,this._replacedTexture=null,this._dragonBones=null,this._clock=null,this._parent=null},i.prototype._sortZOrder=function(t,e){var i=this._armatureData.sortedSlots,n=null===t;if(this._zOrderDirty||!n){for(var r=0,s=i.length;r<s;++r){var a=n?r:t[e+r];if(!(a<0||a>=s)){var o=i[a],h=this.getSlot(o.name);null!==h&&h._setZorder(r)}}this._slotsDirty=!0,this._zOrderDirty=!n}},i.prototype._addBone=function(t){this._bones.indexOf(t)<0&&this._bones.push(t)},i.prototype._addSlot=function(t){this._slots.indexOf(t)<0&&this._slots.push(t)},i.prototype._addConstraint=function(t){this._constraints.indexOf(t)<0&&this._constraints.push(t)},i.prototype._bufferAction=function(t,e){this._actions.indexOf(t)<0&&(e?this._actions.push(t):this._actions.unshift(t))},i.prototype.dispose=function(){null!==this._armatureData&&(this._lockUpdate=!0,this._dragonBones.bufferObject(this))},i.prototype.init=function(e,i,n,r){null===this._armatureData&&(this._armatureData=e,this._animation=t.BaseObject.borrowObject(t.Animation),this._proxy=i,this._display=n,this._dragonBones=r,this._proxy.dbInit(this),this._animation.init(this),this._animation.animations=this._armatureData.animations)},i.prototype.advanceTime=function(t){if(!this._lockUpdate)if(null!==this._armatureData)if(null!==this._armatureData.parent){var e=this._cacheFrameIndex;if(this._animation.advanceTime(t),this._slotsDirty&&(this._slotsDirty=!1,this._slots.sort(i._onSortSlots)),this._cacheFrameIndex<0||this._cacheFrameIndex!==e){var n=0,r=0;for(n=0,r=this._bones.length;n<r;++n)this._bones[n].update(this._cacheFrameIndex);for(n=0,r=this._slots.length;n<r;++n)this._slots[n].update(this._cacheFrameIndex)}if(this._actions.length>0){this._lockUpdate=!0;for(var s=0,a=this._actions;s<a.length;s++){var o=a[s],h=o.actionData;if(null!==h&&0===h.type)if(null!==o.slot)null!==(c=o.slot.childArmature)&&c.animation.fadeIn(h.name);else if(null!==o.bone)for(var u=0,l=this.getSlots();u<l.length;u++){var c,_=l[u];_.parent===o.bone&&null!==(c=_.childArmature)&&c.animation.fadeIn(h.name)}else this._animation.fadeIn(h.name);o.returnToPool()}this._actions.length=0,this._lockUpdate=!1}this._proxy.dbUpdate()}else console.warn("The armature data has been disposed.\nPlease make sure dispose armature before call factory.clear().");else console.warn("The armature has been disposed.")},i.prototype.invalidUpdate=function(t,e){if(void 0===t&&(t=null),void 0===e&&(e=!1),null!==t&&t.length>0){if(null!==(a=this.getBone(t))&&(a.invalidUpdate(),e))for(var i=0,n=this._slots;i<n.length;i++)(u=n[i]).parent===a&&u.invalidUpdate()}else{for(var r=0,s=this._bones;r<s.length;r++){var a;(a=s[r]).invalidUpdate()}if(e)for(var o=0,h=this._slots;o<h.length;o++){var u;(u=h[o]).invalidUpdate()}}},i.prototype.containsPoint=function(t,e){for(var i=0,n=this._slots;i<n.length;i++){var r=n[i];if(r.containsPoint(t,e))return r}return null},i.prototype.intersectsSegment=function(t,e,i,n,r,s,a){void 0===r&&(r=null),void 0===s&&(s=null),void 0===a&&(a=null);for(var o=t===i,h=0,u=0,l=0,c=0,_=0,f=0,d=0,p=0,m=null,g=null,v=0,y=this._slots;v<y.length;v++){var S=y[v];if(S.intersectsSegment(t,e,i,n,r,s,a)>0){if(null===r&&null===s){m=S;break}var T;null!==r&&((T=o?r.y-e:r.x-t)<0&&(T=-T),(null===m||T<h)&&(h=T,l=r.x,c=r.y,m=S,a&&(d=a.x))),null!==s&&((T=s.x-t)<0&&(T=-T),(null===g||T>u)&&(u=T,_=s.x,f=s.y,g=S,null!==a&&(p=a.y)))}}return null!==m&&null!==r&&(r.x=l,r.y=c,null!==a&&(a.x=d)),null!==g&&null!==s&&(s.x=_,s.y=f,null!==a&&(a.y=p)),m},i.prototype.getBone=function(t){for(var e=0,i=this._bones;e<i.length;e++){var n=i[e];if(n.name===t)return n}return null},i.prototype.getBoneByDisplay=function(t){var e=this.getSlotByDisplay(t);return null!==e?e.parent:null},i.prototype.getSlot=function(t){for(var e=0,i=this._slots;e<i.length;e++){var n=i[e];if(n.name===t)return n}return null},i.prototype.getSlotByDisplay=function(t){if(null!==t)for(var e=0,i=this._slots;e<i.length;e++){var n=i[e];if(n.display===t)return n}return null},i.prototype.getBones=function(){return this._bones},i.prototype.getSlots=function(){return this._slots},Object.defineProperty(i.prototype,"flipX",{get:function(){return this._flipX},set:function(t){this._flipX!==t&&(this._flipX=t,this.invalidUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"flipY",{get:function(){return this._flipY},set:function(t){this._flipY!==t&&(this._flipY=t,this.invalidUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"cacheFrameRate",{get:function(){return this._armatureData.cacheFrameRate},set:function(t){if(this._armatureData.cacheFrameRate!==t){this._armatureData.cacheFrames(t);for(var e=0,i=this._slots;e<i.length;e++){var n=i[e].childArmature;null!==n&&(n.cacheFrameRate=t)}}},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"name",{get:function(){return this._armatureData.name},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"armatureData",{get:function(){return this._armatureData},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"animation",{get:function(){return this._animation},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"proxy",{get:function(){return this._proxy},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"eventDispatcher",{get:function(){return this._proxy},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"display",{get:function(){return this._display},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"replacedTexture",{get:function(){return this._replacedTexture},set:function(t){if(this._replacedTexture!==t){null!==this._replaceTextureAtlasData&&(this._replaceTextureAtlasData.returnToPool(),this._replaceTextureAtlasData=null),this._replacedTexture=t;for(var e=0,i=this._slots;e<i.length;e++){var n=i[e];n.invalidUpdate(),n.update(-1)}}},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"clock",{get:function(){return this._clock},set:function(t){if(this._clock!==t){null!==this._clock&&this._clock.remove(this),this._clock=t,this._clock&&this._clock.add(this);for(var e=0,i=this._slots;e<i.length;e++){var n=i[e].childArmature;null!==n&&(n.clock=this._clock)}}},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"parent",{get:function(){return this._parent},enumerable:!0,configurable:!0}),i.prototype.replaceTexture=function(t){this.replacedTexture=t},i.prototype.hasEventListener=function(t){return this._proxy.hasDBEventListener(t)},i.prototype.addEventListener=function(t,e,i){this._proxy.addDBEventListener(t,e,i)},i.prototype.removeEventListener=function(t,e,i){this._proxy.removeDBEventListener(t,e,i)},i.prototype.enableAnimationCache=function(t){console.warn("Deprecated."),this.cacheFrameRate=t},i.prototype.getDisplay=function(){return this._display},i}(t.BaseObject);t.Armature=e}(xst||(xst={})),function(t){var e=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.globalTransformMatrix=new t.Matrix,i.global=new t.Transform,i.offset=new t.Transform,i}return Cst(i,e),i.prototype._onClear=function(){this.globalTransformMatrix.identity(),this.global.identity(),this.offset.identity(),this.origin=null,this.userData=null,this._globalDirty=!1,this._armature=null},i.prototype.updateGlobalTransform=function(){this._globalDirty&&(this._globalDirty=!1,this.global.fromMatrix(this.globalTransformMatrix))},Object.defineProperty(i.prototype,"armature",{get:function(){return this._armature},enumerable:!0,configurable:!0}),i._helpMatrix=new t.Matrix,i._helpTransform=new t.Transform,i._helpPoint=new t.Point,i}(t.BaseObject);t.TransformObject=e}(xst||(xst={})),function(t){var e=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.animationPose=new t.Transform,i._blendState=new t.BlendState,i}return Cst(i,e),i.toString=function(){return"[class dragonBones.Bone]"},i.prototype._onClear=function(){e.prototype._onClear.call(this),this.offsetMode=1,this.animationPose.identity(),this._transformDirty=!1,this._childrenTransformDirty=!1,this._localDirty=!0,this._hasConstraint=!1,this._visible=!0,this._cachedFrameIndex=-1,this._blendState.clear(),this._boneData=null,this._parent=null,this._cachedFrameIndices=null},i.prototype._updateGlobalTransformMatrix=function(e){var i=this._boneData,n=this.global,r=this.globalTransformMatrix,s=this.origin,a=this.offset,o=this.animationPose,h=this._parent,u=this._armature.flipX,l=this._armature.flipY===t.DragonBones.yDown,c=null!==h,_=0;if(1===this.offsetMode?null!==s?(n.x=s.x+a.x+o.x,n.scaleX=s.scaleX*a.scaleX*o.scaleX,n.scaleY=s.scaleY*a.scaleY*o.scaleY,t.DragonBones.yDown?(n.y=s.y+a.y+o.y,n.skew=s.skew+a.skew+o.skew,n.rotation=s.rotation+a.rotation+o.rotation):(n.y=s.y-a.y+o.y,n.skew=s.skew-a.skew+o.skew,n.rotation=s.rotation-a.rotation+o.rotation)):(n.copyFrom(a),t.DragonBones.yDown||(n.y=-n.y,n.skew=-n.skew,n.rotation=-n.rotation),n.add(o)):0===this.offsetMode?null!==s?n.copyFrom(s).add(o):n.copyFrom(o):(c=!1,n.copyFrom(a),t.DragonBones.yDown||(n.y=-n.y,n.skew=-n.skew,n.rotation=-n.rotation)),c){var f=0===h._boneData.type?h.globalTransformMatrix:h._getGlobalTransformMatrix(n.x,n.y);if(i.inheritScale)i.inheritRotation||(h.updateGlobalTransform(),_=u&&l?n.rotation-(h.global.rotation+Math.PI):u?n.rotation+h.global.rotation+Math.PI:l?n.rotation+h.global.rotation:n.rotation-h.global.rotation,n.rotation=_),n.toMatrix(r),r.concat(f),i.inheritTranslation?(n.x=r.tx,n.y=r.ty):(r.tx=n.x,r.ty=n.y),e?n.fromMatrix(r):this._globalDirty=!0;else{if(i.inheritTranslation){var d=n.x,p=n.y;n.x=f.a*d+f.c*p+f.tx,n.y=f.b*d+f.d*p+f.ty}else u&&(n.x=-n.x),l&&(n.y=-n.y);i.inheritRotation?(h.updateGlobalTransform(),_=h.global.scaleX<0?n.rotation+h.global.rotation+Math.PI:n.rotation+h.global.rotation,f.a*f.d-f.b*f.c<0&&(_-=2*n.rotation,(u!==l||i.inheritReflection)&&(n.skew+=Math.PI),t.DragonBones.yDown||(n.skew=-n.skew)),n.rotation=_):(u||l)&&(u&&l?_=n.rotation+Math.PI:(_=u?Math.PI-n.rotation:-n.rotation,n.skew+=Math.PI),n.rotation=_),n.toMatrix(r)}}else(u||l)&&(u&&(n.x=-n.x),l&&(n.y=-n.y),u&&l?_=n.rotation+Math.PI:(_=u?Math.PI-n.rotation:-n.rotation,n.skew+=Math.PI),n.rotation=_),n.toMatrix(r)},i.prototype.init=function(t,e){null===this._boneData&&(this._boneData=t,this._armature=e,null!==this._boneData.parent&&(this._parent=this._armature.getBone(this._boneData.parent.name)),this._armature._addBone(this),this.origin=this._boneData.transform)},i.prototype.update=function(t){if(this._blendState.dirty=!1,t>=0&&null!==this._cachedFrameIndices){var e=this._cachedFrameIndices[t];if(e>=0&&this._cachedFrameIndex===e)this._transformDirty=!1;else if(e>=0)this._transformDirty=!0,this._cachedFrameIndex=e;else{if(this._hasConstraint)for(var i=0,n=this._armature._constraints;i<n.length;i++)(a=n[i])._root===this&&a.update();this._transformDirty||null!==this._parent&&this._parent._childrenTransformDirty?(this._transformDirty=!0,this._cachedFrameIndex=-1):this._cachedFrameIndex>=0?(this._transformDirty=!1,this._cachedFrameIndices[t]=this._cachedFrameIndex):(this._transformDirty=!0,this._cachedFrameIndex=-1)}}else{if(this._hasConstraint)for(var r=0,s=this._armature._constraints;r<s.length;r++){var a;(a=s[r])._root===this&&a.update()}(this._transformDirty||null!==this._parent&&this._parent._childrenTransformDirty)&&(t=-1,this._transformDirty=!0,this._cachedFrameIndex=-1)}if(this._transformDirty)if(this._transformDirty=!1,this._childrenTransformDirty=!0,this._cachedFrameIndex<0){var o=t>=0;this._localDirty&&this._updateGlobalTransformMatrix(o),o&&null!==this._cachedFrameIndices&&(this._cachedFrameIndex=this._cachedFrameIndices[t]=this._armature._armatureData.setCacheFrame(this.globalTransformMatrix,this.global))}else this._armature._armatureData.getCacheFrame(this.globalTransformMatrix,this.global,this._cachedFrameIndex);else this._childrenTransformDirty&&(this._childrenTransformDirty=!1);this._localDirty=!0},i.prototype.updateByConstraint=function(){this._localDirty&&(this._localDirty=!1,(this._transformDirty||null!==this._parent&&this._parent._childrenTransformDirty)&&this._updateGlobalTransformMatrix(!0),this._transformDirty=!0)},i.prototype.invalidUpdate=function(){this._transformDirty=!0},i.prototype.contains=function(t){if(t===this)return!1;for(var e=t;e!==this&&null!==e;)e=e.parent;return e===this},Object.defineProperty(i.prototype,"boneData",{get:function(){return this._boneData},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"visible",{get:function(){return this._visible},set:function(t){if(this._visible!==t){this._visible=t;for(var e=0,i=this._armature.getSlots();e<i.length;e++){var n=i[e];n.parent===this&&n._updateVisible()}}},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"name",{get:function(){return this._boneData.name},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"parent",{get:function(){return this._parent},enumerable:!0,configurable:!0}),i.prototype.getBones=function(){console.warn("Deprecated.");for(var t=new Array,e=0,i=this._armature.getBones();e<i.length;e++){var n=i[e];n.parent===this&&t.push(n)}return t},i.prototype.getSlots=function(){console.warn("Deprecated.");for(var t=new Array,e=0,i=this._armature.getSlots();e<i.length;e++){var n=i[e];n.parent===this&&t.push(n)}return t},Object.defineProperty(i.prototype,"slot",{get:function(){console.warn("Deprecated.");for(var t=0,e=this._armature.getSlots();t<e.length;t++){var i=e[t];if(i.parent===this)return i}return null},enumerable:!0,configurable:!0}),i}(t.TransformObject);t.Bone=e}(xst||(xst={})),function(t){var e=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._vertices=[],e._deformVertices=[],e._hullCache=[],e._matrixCahce=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.Surface]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this._dX=0,this._dY=0,this._k=0,this._kX=0,this._kY=0,this._vertices.length=0,this._deformVertices.length=0,this._matrixCahce.length=0,this._hullCache.length=0},e.prototype._getAffineTransform=function(t,e,i,n,r,s,a,o,h,u,l,c,_){var f=a-r,d=o-s,p=h-r,m=u-s;l.rotation=Math.atan2(d,f),l.skew=Math.atan2(m,p)-.5*Math.PI-l.rotation,_&&(l.rotation+=Math.PI),l.scaleX=Math.sqrt(f*f+d*d)/i,l.scaleY=Math.sqrt(p*p+m*m)/n,l.toMatrix(c),l.x=c.tx=r-(c.a*t+c.c*e),l.y=c.ty=s-(c.b*t+c.d*e)},e.prototype._updateVertices=function(){var t=this._boneData.vertices,e=this._vertices,i=this._deformVertices;if(null!==this._parent)if(1===this._parent._boneData.type)for(var n=0,r=t.length;n<r;n+=2){var s=t[n]+i[n],a=t[n+1]+i[n],o=this._parent._getGlobalTransformMatrix(s,a);e[n]=o.a*s+o.c*a+o.tx,e[n+1]=o.b*s+o.d*a+o.ty}else{var h=this._parent.globalTransformMatrix;for(n=0,r=t.length;n<r;n+=2)s=t[n]+i[n],a=t[n+1]+i[n+1],e[n]=h.a*s+h.c*a+h.tx,e[n+1]=h.b*s+h.d*a+h.ty}else for(n=0,r=t.length;n<r;n+=2)e[n]=t[n]+i[n],e[n+1]=t[n+1]+i[n+1]},e.prototype._updateGlobalTransformMatrix=function(){var t=2*this._boneData.segmentX,e=this._vertices.length-2,i=this._vertices[0],n=this._vertices[1],r=this._vertices[t],s=this._vertices[t+1],a=this._vertices[e],o=this._vertices[e+1],h=this._vertices[e-t],u=this._vertices[e-t+1],l=i+.5*(a-i),c=n+.5*(o-n),_=l+.5*(r+.5*(h-r)-l),f=c+.5*(s+.5*(u-s)-c),d=r+.5*(a-r),p=s+.5*(o-s),m=h+.5*(a-h),g=u+.5*(o-u);this._globalDirty=!1,this._getAffineTransform(0,0,200,200,_,f,d,p,m,g,this.global,this.globalTransformMatrix,!1)},e.prototype._getGlobalTransformMatrix=function(t,i){var n=1e3;if(t<-n||n<t||i<-n||n<i)return this.globalTransformMatrix;var r=!1,s=200,a=this._boneData,o=a.segmentX,h=a.segmentY,u=2*a.segmentX,l=this._dX,c=this._dY,_=Math.floor((t+s)/l),f=Math.floor((i+s)/c),d=0,p=_*l-s,m=f*c-s,g=this._matrixCahce,v=e._helpMatrix;if(t<-s){if(i<-s||i>=s)return this.globalTransformMatrix;if(d=7*(2*(o*(h+1)+2*o+h+f)+((r=i>this._kX*(t+s)+m)?1:0)),this._matrixCahce[d]>0)v.copyFromArray(g,d+1);else{var y=f*(u+2),S=this._hullCache[4],T=this._hullCache[5],A=this._hullCache[2]-(h-f)*S,b=this._hullCache[3]-(h-f)*T,E=this._vertices;r?this._getAffineTransform(-s,m+c,800,c,E[y+u+2],E[y+u+3],A+S,b+T,E[y],E[y+1],e._helpTransform,v,!0):this._getAffineTransform(-n,m,800,c,A,b,E[y],E[y+1],A+S,b+T,e._helpTransform,v,!1),g[d]=1,g[d+1]=v.a,g[d+2]=v.b,g[d+3]=v.c,g[d+4]=v.d,g[d+5]=v.tx,g[d+6]=v.ty}}else if(t>=s){if(i<-s||i>=s)return this.globalTransformMatrix;d=7*(2*(o*(h+1)+o+f)+((r=i>this._kX*(t-n)+m)?1:0)),this._matrixCahce[d]>0?v.copyFromArray(g,d+1):(y=(f+1)*(u+2)-2,S=this._hullCache[4],T=this._hullCache[5],A=this._hullCache[0]+f*S,b=this._hullCache[1]+f*T,E=this._vertices,r?this._getAffineTransform(n,m+c,800,c,A+S,b+T,E[y+u+2],E[y+u+3],A,b,e._helpTransform,v,!0):this._getAffineTransform(s,m,800,c,E[y],E[y+1],A,b,E[y+u+2],E[y+u+3],e._helpTransform,v,!1),g[d]=1,g[d+1]=v.a,g[d+2]=v.b,g[d+3]=v.c,g[d+4]=v.d,g[d+5]=v.tx,g[d+6]=v.ty)}else if(i<-s){if(t<-s||t>=s)return this.globalTransformMatrix;d=7*(o*(h+1)+2*_+((r=i>this._kY*(t-p-l)-n)?1:0)),this._matrixCahce[d]>0?v.copyFromArray(g,d+1):(y=2*_,S=this._hullCache[10],T=this._hullCache[11],A=this._hullCache[8]+_*S,b=this._hullCache[9]+_*T,E=this._vertices,r?this._getAffineTransform(p+l,-s,l,800,E[y+2],E[y+3],E[y],E[y+1],A+S,b+T,e._helpTransform,v,!0):this._getAffineTransform(p,-n,l,800,A,b,A+S,b+T,E[y],E[y+1],e._helpTransform,v,!1),g[d]=1,g[d+1]=v.a,g[d+2]=v.b,g[d+3]=v.c,g[d+4]=v.d,g[d+5]=v.tx,g[d+6]=v.ty)}else if(i>=s){if(t<-s||t>=s)return this.globalTransformMatrix;d=7*(2*(o*(h+1)+o+h+f)+((r=i>this._kY*(t-p-l)+s)?1:0)),this._matrixCahce[d]>0?v.copyFromArray(g,d+1):(y=h*(u+2)+2*_,S=this._hullCache[10],T=this._hullCache[11],A=this._hullCache[6]-(o-_)*S,b=this._hullCache[7]-(o-_)*T,E=this._vertices,r?this._getAffineTransform(p+l,n,l,800,A+S,b+T,A,b,E[y+2],E[y+3],e._helpTransform,v,!0):this._getAffineTransform(p,s,l,800,E[y],E[y+1],E[y+2],E[y+3],A,b,e._helpTransform,v,!1),g[d]=1,g[d+1]=v.a,g[d+2]=v.b,g[d+3]=v.c,g[d+4]=v.d,g[d+5]=v.tx,g[d+6]=v.ty)}else d=7*(2*(o*f+_)+((r=i>this._k*(t-p-l)+m)?1:0)),this._matrixCahce[d]>0?v.copyFromArray(g,d+1):(y=2*_+f*(u+2),E=this._vertices,r?this._getAffineTransform(p+l,m+c,l,c,E[y+u+4],E[y+u+5],E[y+u+2],E[y+u+3],E[y+2],E[y+3],e._helpTransform,v,!0):this._getAffineTransform(p,m,l,c,E[y],E[y+1],E[y+2],E[y+3],E[y+u+2],E[y+u+3],e._helpTransform,v,!1),g[d]=1,g[d+1]=v.a,g[d+2]=v.b,g[d+3]=v.c,g[d+4]=v.d,g[d+5]=v.tx,g[d+6]=v.ty);return v},e.prototype.init=function(e,i){if(null===this._boneData){t.prototype.init.call(this,e,i);var n=e.segmentX,r=e.segmentY,s=e.vertices.length;this._dX=400/n,this._dY=400/r,this._k=-this._dY/this._dX,this._kX=-this._dY/800,this._kY=-800/this._dX,this._vertices.length=s,this._deformVertices.length=s,this._matrixCahce.length=14*(n*r+2*n+2*r),this._hullCache.length=10;for(var a=0;a<s;++a)this._deformVertices[a]=0}},e.prototype.update=function(t){if(this._blendState.dirty=!1,t>=0&&null!==this._cachedFrameIndices){var i=this._cachedFrameIndices[t];if(i>=0&&this._cachedFrameIndex===i)this._transformDirty=!1;else if(i>=0)this._transformDirty=!0,this._cachedFrameIndex=i;else{if(this._hasConstraint)for(var n=0,r=this._armature._constraints;n<r.length;n++)(o=r[n])._root===this&&o.update();this._transformDirty||null!==this._parent&&this._parent._childrenTransformDirty?(this._transformDirty=!0,this._cachedFrameIndex=-1):this._cachedFrameIndex>=0?(this._transformDirty=!1,this._cachedFrameIndices[t]=this._cachedFrameIndex):(this._transformDirty=!0,this._cachedFrameIndex=-1)}}else{if(this._hasConstraint)for(var s=0,a=this._armature._constraints;s<a.length;s++){var o;(o=a[s])._root===this&&o.update()}(this._transformDirty||null!==this._parent&&this._parent._childrenTransformDirty)&&(t=-1,this._transformDirty=!0,this._cachedFrameIndex=-1)}if(this._transformDirty){this._transformDirty=!1,this._childrenTransformDirty=!0;for(var h=0,u=this._matrixCahce.length;h<u;h+=7)this._matrixCahce[h]=-1;if(this._updateVertices(),this._cachedFrameIndex<0){var l=t>=0;this._localDirty&&this._updateGlobalTransformMatrix(l),l&&null!==this._cachedFrameIndices&&(this._cachedFrameIndex=this._cachedFrameIndices[t]=this._armature._armatureData.setCacheFrame(this.globalTransformMatrix,this.global))}else this._armature._armatureData.getCacheFrame(this.globalTransformMatrix,this.global,this._cachedFrameIndex);var c=2*this.global.x,_=2*this.global.y,f=e._helpPoint;this.globalTransformMatrix.transformPoint(1e3,-200,f),this._hullCache[0]=f.x,this._hullCache[1]=f.y,this._hullCache[2]=c-f.x,this._hullCache[3]=_-f.y,this.globalTransformMatrix.transformPoint(0,this._dY,f,!0),this._hullCache[4]=f.x,this._hullCache[5]=f.y,this.globalTransformMatrix.transformPoint(200,1e3,f),this._hullCache[6]=f.x,this._hullCache[7]=f.y,this._hullCache[8]=c-f.x,this._hullCache[9]=_-f.y,this.globalTransformMatrix.transformPoint(this._dX,0,f,!0),this._hullCache[10]=f.x,this._hullCache[11]=f.y}else this._childrenTransformDirty&&(this._childrenTransformDirty=!1);this._localDirty=!0},e}(t.Bone);t.Surface=e}(xst||(xst={})),function(t){var e=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i._localMatrix=new t.Matrix,i._colorTransform=new t.ColorTransform,i._displayDatas=[],i._displayList=[],i._deformVertices=null,i._rawDisplay=null,i._meshDisplay=null,i}return Cst(i,e),i.prototype._onClear=function(){e.prototype._onClear.call(this);for(var i=[],n=0,r=this._displayList;n<r.length;n++)null!==(o=r[n])&&o!==this._rawDisplay&&o!==this._meshDisplay&&i.indexOf(o)<0&&i.push(o);for(var s=0,a=i;s<a.length;s++){var o;(o=a[s])instanceof t.Armature?o.dispose():this._disposeDisplay(o,!0)}null!==this._deformVertices&&this._deformVertices.returnToPool(),null!==this._meshDisplay&&this._meshDisplay!==this._rawDisplay&&this._disposeDisplay(this._meshDisplay,!1),null!==this._rawDisplay&&this._disposeDisplay(this._rawDisplay,!1),this.displayController=null,this._displayDirty=!1,this._zOrderDirty=!1,this._blendModeDirty=!1,this._colorDirty=!1,this._transformDirty=!1,this._visible=!0,this._blendMode=0,this._displayIndex=-1,this._animationDisplayIndex=-1,this._zOrder=0,this._cachedFrameIndex=-1,this._pivotX=0,this._pivotY=0,this._localMatrix.identity(),this._colorTransform.identity(),this._displayList.length=0,this._displayDatas.length=0,this._slotData=null,this._rawDisplayDatas=null,this._displayData=null,this._boundingBoxData=null,this._textureData=null,this._deformVertices=null,this._rawDisplay=null,this._meshDisplay=null,this._display=null,this._childArmature=null,this._parent=null,this._cachedFrameIndices=null},i.prototype._getDefaultRawDisplayData=function(t){var e=this._armature._armatureData.defaultSkin;if(null!==e){var i=e.getDisplays(this._slotData.name);if(null!==i)return t<i.length?i[t]:null}return null},i.prototype._updateDisplayData=function(){var e=this._displayData,n=null!==this._deformVertices?this._deformVertices.verticesData:null,r=this._textureData,s=null,a=null;if(this._displayData=null,this._boundingBoxData=null,this._textureData=null,this._displayIndex>=0&&(null!==this._rawDisplayDatas&&(s=this._displayIndex<this._rawDisplayDatas.length?this._rawDisplayDatas[this._displayIndex]:null),null===s&&(s=this._getDefaultRawDisplayData(this._displayIndex)),this._displayIndex<this._displayDatas.length&&(this._displayData=this._displayDatas[this._displayIndex])),null!==this._displayData&&(2===this._displayData.type||4===this._displayData.type?a=this._displayData.vertices:null!==s&&(2===s.type||4===s.type)&&(a=s.vertices),3===this._displayData.type?this._boundingBoxData=this._displayData.boundingBox:null!==s&&3===s.type&&(this._boundingBoxData=s.boundingBox),(0===this._displayData.type||2===this._displayData.type)&&(this._textureData=this._displayData.texture)),this._displayData!==e||a!==n||this._textureData!==r){if(null===a&&null!==this._textureData){var o=this._displayData,h=this._textureData.parent.scale*this._armature._armatureData.scale,u=this._textureData.frame;this._pivotX=o.pivot.x,this._pivotY=o.pivot.y;var l=null!==u?u:this._textureData.region,c=l.width,_=l.height;this._textureData.rotated&&null===u&&(c=l.height,_=l.width),this._pivotX*=c*h,this._pivotY*=_*h,null!==u&&(this._pivotX+=u.x*h,this._pivotY+=u.y*h),null!==this._displayData&&null!==s&&this._displayData!==s&&(s.transform.toMatrix(i._helpMatrix),i._helpMatrix.invert(),i._helpMatrix.transformPoint(0,0,i._helpPoint),this._pivotX-=i._helpPoint.x,this._pivotY-=i._helpPoint.y,this._displayData.transform.toMatrix(i._helpMatrix),i._helpMatrix.invert(),i._helpMatrix.transformPoint(0,0,i._helpPoint),this._pivotX+=i._helpPoint.x,this._pivotY+=i._helpPoint.y),t.DragonBones.yDown||(this._pivotY=(this._textureData.rotated?this._textureData.region.width:this._textureData.region.height)*h-this._pivotY)}else this._pivotX=0,this._pivotY=0;null!==s?this.origin=s.transform:null!==this._displayData?this.origin=this._displayData.transform:this.origin=null,a!==n?(null===this._deformVertices&&(this._deformVertices=t.BaseObject.borrowObject(t.DeformVertices)),this._deformVertices.init(a,this._armature)):null!==this._deformVertices&&this._textureData!==r&&(this._deformVertices.verticesDirty=!0),this._displayDirty=!0,this._transformDirty=!0}},i.prototype._updateDisplay=function(){var e=null!==this._display?this._display:this._rawDisplay,i=this._childArmature;this._displayIndex>=0&&this._displayIndex<this._displayList.length?(this._display=this._displayList[this._displayIndex],null!==this._display&&this._display instanceof t.Armature?(this._childArmature=this._display,this._display=this._childArmature.display):this._childArmature=null):(this._display=null,this._childArmature=null);var n=null!==this._display?this._display:this._rawDisplay;if(n!==e&&(this._onUpdateDisplay(),this._replaceDisplay(e),this._transformDirty=!0,this._visibleDirty=!0,this._blendModeDirty=!0,this._colorDirty=!0),n!==this._rawDisplay&&n!==this._meshDisplay||this._updateFrame(),this._childArmature!==i&&(null!==i&&(i._parent=null,i.clock=null,i.inheritAnimation&&i.animation.reset()),null!==this._childArmature&&(this._childArmature._parent=this,this._childArmature.clock=this._armature.clock,this._childArmature.inheritAnimation))){if(0===this._childArmature.cacheFrameRate){var r=this._armature.cacheFrameRate;0!==r&&(this._childArmature.cacheFrameRate=r)}var s=null;if(null!==this._displayData&&1===this._displayData.type)s=this._displayData.actions;else if(this._displayIndex>=0&&null!==this._rawDisplayDatas){var a=this._displayIndex<this._rawDisplayDatas.length?this._rawDisplayDatas[this._displayIndex]:null;null===a&&(a=this._getDefaultRawDisplayData(this._displayIndex)),null!==a&&1===a.type&&(s=a.actions)}if(null!==s&&s.length>0)for(var o=0,h=s;o<h.length;o++){var u=h[o],l=t.BaseObject.borrowObject(t.EventObject);t.EventObject.actionDataToInstance(u,l,this._armature),l.slot=this,this._armature._bufferAction(l,!1)}else this._childArmature.animation.play()}},i.prototype._updateGlobalTransformMatrix=function(t){var e=0===this._parent._boneData.type?this._parent.globalTransformMatrix:this._parent._getGlobalTransformMatrix(this.global.x,this.global.y);this.globalTransformMatrix.copyFrom(this._localMatrix),this.globalTransformMatrix.concat(e),t?this.global.fromMatrix(this.globalTransformMatrix):this._globalDirty=!0},i.prototype._setDisplayIndex=function(t,e){if(void 0===e&&(e=!1),e){if(this._animationDisplayIndex===t)return!1;this._animationDisplayIndex=t}return this._displayIndex!==t&&(this._displayIndex=t,this._displayDirty=!0,this._updateDisplayData(),this._displayDirty)},i.prototype._setZorder=function(t){return this._zOrder,this._zOrder=t,this._zOrderDirty=!0,this._zOrderDirty},i.prototype._setColor=function(t){return this._colorTransform.copyFrom(t),this._colorDirty=!0,this._colorDirty},i.prototype._setDisplayList=function(e){if(null!==e&&e.length>0){this._displayList.length!==e.length&&(this._displayList.length=e.length);for(var i=0,n=e.length;i<n;++i){var r=e[i];null!==r&&r!==this._rawDisplay&&r!==this._meshDisplay&&!(r instanceof t.Armature)&&this._displayList.indexOf(r)<0&&this._initDisplay(r,!0),this._displayList[i]=r}}else this._displayList.length>0&&(this._displayList.length=0);return this._displayIndex>=0&&this._displayIndex<this._displayList.length?this._displayDirty=this._display!==this._displayList[this._displayIndex]:this._displayDirty=null!==this._display,this._updateDisplayData(),this._displayDirty},i.prototype.init=function(t,e,i,n){if(null===this._slotData){this._slotData=t,this._isFromCache=!1,this._visibleDirty=!0,this._blendModeDirty=!0,this._colorDirty=!0,this._blendMode=this._slotData.blendMode,this._zOrder=this._slotData.zOrder,this._colorTransform.copyFrom(this._slotData.color),this._rawDisplay=i,this._meshDisplay=n,this._armature=e;var r=this._armature.getBone(this._slotData.parent.name);null!==r&&(this._parent=r),this._armature._addSlot(this),this._initDisplay(this._rawDisplay,!1),this._rawDisplay!==this._meshDisplay&&this._initDisplay(this._meshDisplay,!1),this._onUpdateDisplay(),this._addDisplay()}},i.prototype.update=function(t){if(this._isFromCache=!1,this._displayDirty&&(this._displayDirty=!1,this._updateDisplay(),this._transformDirty&&(null!==this.origin?this.global.copyFrom(this.origin).add(this.offset).toMatrix(this._localMatrix):this.global.copyFrom(this.offset).toMatrix(this._localMatrix))),this._zOrderDirty&&(this._zOrderDirty=!1,this._updateZOrder()),t>=0&&null!==this._cachedFrameIndices){var e=this._cachedFrameIndices[t];e>=0&&this._cachedFrameIndex===e?this._transformDirty=!1:e>=0?(this._transformDirty=!0,this._cachedFrameIndex=e):this._transformDirty||this._parent._childrenTransformDirty?(this._transformDirty=!0,this._cachedFrameIndex=-1):this._cachedFrameIndex>=0?(this._transformDirty=!1,this._cachedFrameIndices[t]=this._cachedFrameIndex):(this._transformDirty=!0,this._cachedFrameIndex=-1)}else(this._transformDirty||this._parent._childrenTransformDirty)&&(t=-1,this._transformDirty=!0,this._cachedFrameIndex=-1);if(null!==this._display){if(this._visibleDirty&&(this._visibleDirty=!1,this._updateVisible()),this._blendModeDirty&&(this._blendModeDirty=!1,this._updateBlendMode()),this._colorDirty&&(this._colorDirty=!1,this._updateColor()),null!==this._deformVertices&&null!==this._deformVertices.verticesData&&this._display===this._meshDisplay){var i=null!==this._deformVertices.verticesData.weight,n=0!==this._parent._boneData.type;if((this._deformVertices.verticesDirty||i&&this._deformVertices.isBonesUpdate()||n&&this._parent._childrenTransformDirty)&&(this._deformVertices.verticesDirty=!1,this._updateMesh()),i||n)return}if(this._transformDirty){if(this._transformDirty=!1,this._cachedFrameIndex<0){var r=t>=0;this._updateGlobalTransformMatrix(r),r&&null!==this._cachedFrameIndices&&(this._cachedFrameIndex=this._cachedFrameIndices[t]=this._armature._armatureData.setCacheFrame(this.globalTransformMatrix,this.global))}else this._isFromCache=!0,this._armature._armatureData.getCacheFrame(this.globalTransformMatrix,this.global,this._cachedFrameIndex);this._updateTransform()}}},i.prototype.updateTransformAndMatrix=function(){this._transformDirty&&(this._transformDirty=!1,this._updateGlobalTransformMatrix(!1))},i.prototype.replaceDisplayData=function(t,e){if(void 0===e&&(e=-1),e<0&&(e=this._displayIndex<0?0:this._displayIndex),this._displayDatas.length<=e){this._displayDatas.length=e+1;for(var i=0,n=this._displayDatas.length;i<n;++i)this._displayDatas[i]||(this._displayDatas[i]=null)}this._displayDatas[e]=t},i.prototype.containsPoint=function(t,e){return null!==this._boundingBoxData&&(this.updateTransformAndMatrix(),i._helpMatrix.copyFrom(this.globalTransformMatrix),i._helpMatrix.invert(),i._helpMatrix.transformPoint(t,e,i._helpPoint),this._boundingBoxData.containsPoint(i._helpPoint.x,i._helpPoint.y))},i.prototype.intersectsSegment=function(t,e,n,r,s,a,o){if(void 0===s&&(s=null),void 0===a&&(a=null),void 0===o&&(o=null),null===this._boundingBoxData)return 0;this.updateTransformAndMatrix(),i._helpMatrix.copyFrom(this.globalTransformMatrix),i._helpMatrix.invert(),i._helpMatrix.transformPoint(t,e,i._helpPoint),t=i._helpPoint.x,e=i._helpPoint.y,i._helpMatrix.transformPoint(n,r,i._helpPoint),n=i._helpPoint.x,r=i._helpPoint.y;var h=this._boundingBoxData.intersectsSegment(t,e,n,r,s,a,o);return h>0&&(1===h||2===h?null!==s?(this.globalTransformMatrix.transformPoint(s.x,s.y,s),null!==a&&(a.x=s.x,a.y=s.y)):null!==a&&this.globalTransformMatrix.transformPoint(a.x,a.y,a):(null!==s&&this.globalTransformMatrix.transformPoint(s.x,s.y,s),null!==a&&this.globalTransformMatrix.transformPoint(a.x,a.y,a)),null!==o&&(this.globalTransformMatrix.transformPoint(Math.cos(o.x),Math.sin(o.x),i._helpPoint,!0),o.x=Math.atan2(i._helpPoint.y,i._helpPoint.x),this.globalTransformMatrix.transformPoint(Math.cos(o.y),Math.sin(o.y),i._helpPoint,!0),o.y=Math.atan2(i._helpPoint.y,i._helpPoint.x))),h},i.prototype.invalidUpdate=function(){this._displayDirty=!0,this._transformDirty=!0},Object.defineProperty(i.prototype,"visible",{get:function(){return this._visible},set:function(t){this._visible!==t&&(this._visible=t,this._updateVisible())},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"displayIndex",{get:function(){return this._displayIndex},set:function(t){this._setDisplayIndex(t)&&this.update(-1)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"name",{get:function(){return this._slotData.name},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"displayList",{get:function(){return this._displayList.concat()},set:function(e){var i=this._displayList.concat(),n=new Array;this._setDisplayList(e)&&this.update(-1);for(var r=0,s=i;r<s.length;r++)null!==(h=s[r])&&h!==this._rawDisplay&&h!==this._meshDisplay&&this._displayList.indexOf(h)<0&&n.indexOf(h)<0&&n.push(h);for(var a=0,o=n;a<o.length;a++){var h;(h=o[a])instanceof t.Armature||this._disposeDisplay(h,!0)}},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"slotData",{get:function(){return this._slotData},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"rawDisplayDatas",{get:function(){return this._rawDisplayDatas},set:function(t){if(this._rawDisplayDatas!==t)if(this._displayDirty=!0,this._rawDisplayDatas=t,null!==this._rawDisplayDatas){this._displayDatas.length=this._rawDisplayDatas.length;for(var e=0,i=this._displayDatas.length;e<i;++e){var n=this._rawDisplayDatas[e];null===n&&(n=this._getDefaultRawDisplayData(e)),this._displayDatas[e]=n}}else this._displayDatas.length=0},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"displayData",{get:function(){return this._displayData},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"boundingBoxData",{get:function(){return this._boundingBoxData},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"rawDisplay",{get:function(){return this._rawDisplay},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"meshDisplay",{get:function(){return this._meshDisplay},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"display",{get:function(){return this._display},set:function(t){if(this._display!==t){var e=this._displayList.length;if(this._displayIndex<0&&0===e&&(this._displayIndex=0),!(this._displayIndex<0)){var i=this.displayList;e<=this._displayIndex&&(i.length=this._displayIndex+1),i[this._displayIndex]=t,this.displayList=i}}},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"childArmature",{get:function(){return this._childArmature},set:function(t){this._childArmature!==t&&(this.display=t)},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"parent",{get:function(){return this._parent},enumerable:!0,configurable:!0}),i.prototype.getDisplay=function(){return this._display},i.prototype.setDisplay=function(t){this.display=t},i}(t.TransformObject);t.Slot=e}(xst||(xst={})),function(t){var e=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return Cst(i,e),i.prototype._onClear=function(){this._armature=null,this._target=null,this._root=null,this._bone=null},Object.defineProperty(i.prototype,"name",{get:function(){return this._constraintData.name},enumerable:!0,configurable:!0}),i._helpMatrix=new t.Matrix,i._helpTransform=new t.Transform,i._helpPoint=new t.Point,i}(t.BaseObject);t.Constraint=e;var i=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return Cst(i,e),i.toString=function(){return"[class dragonBones.IKConstraint]"},i.prototype._onClear=function(){e.prototype._onClear.call(this),this._scaleEnabled=!1,this._bendPositive=!1,this._weight=1,this._constraintData=null},i.prototype._computeA=function(){var e=this._target.global,i=this._root.global,n=this._root.globalTransformMatrix,r=Math.atan2(e.y-i.y,e.x-i.x);i.scaleX<0&&(r+=Math.PI),i.rotation+=t.Transform.normalizeRadian(r-i.rotation)*this._weight,i.toMatrix(n)},i.prototype._computeB=function(){var e=this._bone._boneData.length,i=this._root,n=this._target.global,r=i.global,s=this._bone.global,a=this._bone.globalTransformMatrix,o=a.a*e,h=a.b*e,u=o*o+h*h,l=Math.sqrt(u),c=s.x-r.x,_=s.y-r.y,f=c*c+_*_,d=Math.sqrt(f),p=s.rotation,m=r.rotation,g=Math.atan2(_,c),v=(c=n.x-r.x)*c+(_=n.y-r.y)*_,y=Math.sqrt(v),S=0;if(l+d<=y||y+l<=d||y+d<=l)S=Math.atan2(n.y-r.y,n.x-r.x),l+d<=y||d<l&&(S+=Math.PI);else{var T=(f-u+v)/(2*v),A=Math.sqrt(f-T*T*v)/y,b=r.x+c*T,E=r.y+_*T,C=-_*A,x=c*A,w=!1,R=i.parent;if(null!==R){var I=R.globalTransformMatrix;w=I.a*I.d-I.b*I.c<0}w!==this._bendPositive?(s.x=b-C,s.y=E-x):(s.x=b+C,s.y=E+x),S=Math.atan2(s.y-r.y,s.x-r.x)}var D=t.Transform.normalizeRadian(S-g);r.rotation=m+D*this._weight,r.toMatrix(i.globalTransformMatrix);var B=g+D*this._weight;s.x=r.x+Math.cos(B)*d,s.y=r.y+Math.sin(B)*d;var M=Math.atan2(n.y-s.y,n.x-s.x);s.scaleX<0&&(M+=Math.PI),s.rotation=r.rotation+p-m+t.Transform.normalizeRadian(M-D-p)*this._weight,s.toMatrix(a)},i.prototype.init=function(t,e){if(null===this._constraintData){this._constraintData=t,this._armature=e,this._target=this._armature.getBone(this._constraintData.target.name),this._root=this._armature.getBone(this._constraintData.root.name),this._bone=null!==this._constraintData.bone?this._armature.getBone(this._constraintData.bone.name):null;var i=this._constraintData;this._scaleEnabled=i.scaleEnabled,this._bendPositive=i.bendPositive,this._weight=i.weight,this._root._hasConstraint=!0}},i.prototype.update=function(){this._root.updateByConstraint(),null!==this._bone?(this._bone.updateByConstraint(),this._computeB()):this._computeA()},i.prototype.invalidUpdate=function(){this._root.invalidUpdate(),null!==this._bone&&this._bone.invalidUpdate()},i}(e);t.IKConstraint=i;var n=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t._bones=[],t._spaces=[],t._positions=[],t._curves=[],t._boneLengths=[],t._pathGlobalVertices=[],t._segments=[10],t}return Cst(i,e),i.toString=function(){return"[class dragonBones.PathConstraint]"},i.prototype._onClear=function(){e.prototype._onClear.call(this),this.dirty=!1,this.pathOffset=0,this.position=0,this.spacing=0,this.rotateOffset=0,this.rotateMix=1,this.translateMix=1,this._pathSlot=null,this._bones.length=0,this._spaces.length=0,this._positions.length=0,this._curves.length=0,this._boneLengths.length=0,this._pathGlobalVertices.length=0},i.prototype._updatePathVertices=function(t){var e=this._armature,i=e.armatureData.parent,n=e.armatureData.scale,r=i.intArray,s=i.floatArray,a=t.offset,o=r[a+0],h=r[a+2];this._pathGlobalVertices.length=2*o;var u=t.weight;if(null!==u)for(var l=this._pathSlot._deformVertices.bones,c=u.bones.length,_=u.offset,f=r[_+1],d=_+2+c,p=(E=0,0);E<o;E++){for(var m=0,g=0,v=0,y=r[d++];v<y;v++){var S=l[r[d++]];if(null!==S){S.updateByConstraint(),b=S.globalTransformMatrix;var T=s[f++];x=s[f++]*n,w=s[f++]*n,m+=(b.a*x+b.c*w+b.tx)*T,g+=(b.b*x+b.d*w+b.ty)*T}}this._pathGlobalVertices[p++]=m,this._pathGlobalVertices[p++]=g}else{var A=this._pathSlot.parent;A.updateByConstraint();for(var b=A.globalTransformMatrix,E=0,C=h;E<o;E+=2){var x=s[C++]*n,w=s[C++]*n,R=b.a*x+b.c*w+b.tx,I=b.b*x+b.d*w+b.ty;this._pathGlobalVertices[E]=R,this._pathGlobalVertices[E+1]=I}}},i.prototype._computeVertices=function(t,e,i,n){for(var r=i,s=t;r<e;r+=2)n[r]=this._pathGlobalVertices[s++],n[r+1]=this._pathGlobalVertices[s++]},i.prototype._computeBezierCurve=function(t,e,i,n,r){var s=this._armature.armatureData.parent.intArray[t.vertices.offset+0],a=this._positions,o=this._spaces,h=t.closed,u=Array(),l=2*s,c=l/6,_=-1,f=this.position;a.length=3*e+2;var d=0;if(t.constantSpeed){h?(l+=2,u.length=s,this._computeVertices(2,l-4,0,u),this._computeVertices(0,2,l-4,u),u[l-2]=u[0],u[l-1]=u[1]):(c--,l-=4,u.length=l,this._computeVertices(2,l,0,u));var p=new Array(c);d=0;for(var m,g,v,y,S,T,A,b,E=u[0],C=u[1],x=0,w=0,R=0,I=0,D=0,B=0,M=(z=0,2);z<c;z++,M+=6)x=u[M],w=u[M+1],R=u[M+2],I=u[M+3],S=2*(m=.1875*(E-2*x+R))+(v=.09375*(3*(x-R)-E+(D=u[M+4]))),T=2*(g=.1875*(C-2*w+I))+(y=.09375*(3*(w-I)-C+(B=u[M+5]))),A=.75*(x-E)+m+.16666667*v,b=.75*(w-C)+g+.16666667*y,d+=Math.sqrt(A*A+b*b),A+=S,b+=T,S+=v,T+=y,d+=Math.sqrt(A*A+b*b),A+=S,b+=T,d+=Math.sqrt(A*A+b*b),A+=S+v,b+=T+y,d+=Math.sqrt(A*A+b*b),p[z]=d,E=D,C=B;if(n&&(f*=d),r)for(z=0;z<e;z++)o[z]*=d;for(var P=this._segments,O=0,L=(z=0,H=0,W=0,0);z<e;z++,H+=3){var N=f+=o[z];if(h)(N%=d)<0&&(N+=d),W=0;else{if(N<0)continue;if(N>d)continue}for(;;W++){var F=p[W];if(!(N>F)){0===W?N/=F:N=(N-(V=p[W-1]))/(F-V);break}}if(W!==_){_=W;var k=6*W;for(E=u[k],C=u[k+1],x=u[k+2],w=u[k+3],R=u[k+4],I=u[k+5],S=2*(m=.03*(E-2*x+R))+(v=.006*(3*(x-R)-E+(D=u[k+6]))),T=2*(g=.03*(C-2*w+I))+(y=.006*(3*(w-I)-C+(B=u[k+7]))),A=.3*(x-E)+m+.16666667*v,b=.3*(w-C)+g+.16666667*y,O=Math.sqrt(A*A+b*b),P[0]=O,k=1;k<8;k++)A+=S,b+=T,S+=v,T+=y,O+=Math.sqrt(A*A+b*b),P[k]=O;A+=S,b+=T,O+=Math.sqrt(A*A+b*b),P[8]=O,A+=S+v,b+=T+y,O+=Math.sqrt(A*A+b*b),P[9]=O,L=0}for(N*=O;;L++){var G=P[L];if(!(N>G)){var V;0===L?N/=G:N=L+(N-(V=P[L-1]))/(G-V);break}}this.addCurvePosition(.1*N,E,C,x,w,R,I,D,B,a,H,i)}}else{var U=t.curveLengths;if(d=U[c-=h?1:2],n&&(f*=d),r)for(var z=0;z<e;z++)o[z]*=d;u.length=8;z=0;for(var H=0,W=0;z<e;z++,H+=3){if(f+=o[z],h)(f%=d)<0&&(f+=d),W=0;else{if(f<0)continue;if(f>d)continue}for(var X=0;;W++){var j=U[W];if(!(f>j)){if(0===W)X=f/j;else{var Y=U[W-1];X=(f-Y)/(j-Y)}break}}W!==_&&(_=W,h&&W===c?(this._computeVertices(l-4,4,0,u),this._computeVertices(0,4,4,u)):this._computeVertices(6*W+2,8,0,u)),this.addCurvePosition(X,u[0],u[1],u[2],u[3],u[4],u[5],u[6],u[7],a,H,i)}}},i.prototype.addCurvePosition=function(t,e,i,n,r,s,a,o,h,u,l,c){if(0===t)return u[l]=e,u[l+1]=i,void(u[l+2]=0);if(1===t)return u[l]=o,u[l+1]=h,void(u[l+2]=0);var _=1-t,f=_*_,d=t*t,p=f*_,m=f*t*3,g=_*d*3,v=t*d,y=p*e+m*n+g*s+v*o,S=p*i+m*r+g*a+v*h;u[l]=y,u[l+1]=S,u[l+2]=c?Math.atan2(S-(p*i+m*r+g*a),y-(p*e+m*n+g*s)):0},i.prototype.init=function(t,e){this._constraintData=t,this._armature=e;var i=t;this.pathOffset=i.pathDisplayData.vertices.offset,this.position=i.position,this.spacing=i.spacing,this.rotateOffset=i.rotateOffset,this.rotateMix=i.rotateMix,this.translateMix=i.translateMix,this._root=this._armature.getBone(i.root.name),this._target=this._armature.getBone(i.target.name),this._pathSlot=this._armature.getSlot(i.pathSlot.name);for(var n=0,r=i.bones.length;n<r;n++){var s=this._armature.getBone(i.bones[n].name);null!==s&&this._bones.push(s)}2===i.rotateMode&&(this._boneLengths.length=this._bones.length),this._root._hasConstraint=!0},i.prototype.update=function(){var e=this._pathSlot;if(null!==e._deformVertices&&null!==e._deformVertices.verticesData&&e._deformVertices.verticesData.offset===this.pathOffset){var i=this._constraintData,n=e._displayData,r=!1,s=e._deformVertices;if(this._root._childrenTransformDirty?(this._updatePathVertices(n.vertices),r=!0):null!==s&&(s.verticesDirty||s.isBonesUpdate())&&(this._updatePathVertices(n.vertices),s.verticesDirty=!1,r=!0),r||this.dirty){var a=i.positionMode,o=i.spacingMode,h=i.rotateMode,u=this._bones,l=0===o,c=2===h,_=0===h,f=u.length,d=_?f:f+1,p=this.spacing,m=this._spaces;if(m.length=d,c||l){m[0]=0;for(var g=0,v=d-1;g<v;g++){(B=u[g]).updateByConstraint();var y=B._boneData.length,S=y*(M=B.globalTransformMatrix).a,T=y*M.b,A=Math.sqrt(S*S+T*T);c&&(this._boneLengths[g]=A),m[g+1]=(y+p)*A/y}}else for(g=0;g<d;g++)m[g]=p;this._computeBezierCurve(n,d,_,1===a,2===o);var b,E=this._positions,C=this.rotateOffset,x=E[0],w=E[1];0===C?b=1===h:(b=!1,null!==(B=e.parent)&&(C*=(M=B.globalTransformMatrix).a*M.d-M.b*M.c>0?t.Transform.DEG_RAD:-t.Transform.DEG_RAD));for(var R=this.rotateMix,I=this.translateMix,D=(g=0,3);g<f;g++,D+=3){var B,M;(B=u[g]).updateByConstraint(),(M=B.globalTransformMatrix).tx+=(x-M.tx)*I,M.ty+=(w-M.ty)*I;var P=(S=E[D])-x,O=(T=E[D+1])-w;if(c){var L=this._boneLengths[g],N=(Math.sqrt(P*P+O*O)/L-1)*R+1;M.a*=N,M.b*=N}if(x=S,w=T,R>0){var F=M.a,k=M.b,G=M.c,V=M.d,U=void 0,z=void 0,H=void 0;if(U=_?E[D-1]:Math.atan2(O,P),U-=Math.atan2(k,F),b){z=Math.cos(U),H=Math.sin(U);var W=B._boneData.length;x+=(W*(z*F-H*k)-P)*R,w+=(W*(H*F+z*k)-O)*R}else U+=C;U>t.Transform.PI?U-=t.Transform.PI_D:U<-t.Transform.PI&&(U+=t.Transform.PI_D),U*=R,z=Math.cos(U),H=Math.sin(U),M.a=z*F-H*k,M.b=H*F+z*k,M.c=z*G-H*V,M.d=H*G+z*V}B.global.fromMatrix(M)}this.dirty=!1}}},i.prototype.invalidUpdate=function(){},i}(e);t.PathConstraint=n}(xst||(xst={})),function(t){var e=function(){function t(t){void 0===t&&(t=0),this.time=0,this.timeScale=1,this._systemTime=0,this._animatebles=[],this._clock=null,this.time=t,this._systemTime=.001*(new Date).getTime()}return t.prototype.advanceTime=function(t){t!=t&&(t=0);var e=.001*Date.now();if(t<0&&(t=e-this._systemTime),this._systemTime=e,1!==this.timeScale&&(t*=this.timeScale),0!==t){t<0?this.time-=t:this.time+=t;for(var i=0,n=0,r=this._animatebles.length;i<r;++i){var s=this._animatebles[i];null!==s?(n>0&&(this._animatebles[i-n]=s,this._animatebles[i]=null),s.advanceTime(t)):n++}if(n>0){for(r=this._animatebles.length;i<r;++i){var a=this._animatebles[i];null!==a?this._animatebles[i-n]=a:n++}this._animatebles.length-=n}}},t.prototype.contains=function(t){if(t===this)return!1;for(var e=t;e!==this&&null!==e;)e=e.clock;return e===this},t.prototype.add=function(t){this._animatebles.indexOf(t)<0&&(this._animatebles.push(t),t.clock=this)},t.prototype.remove=function(t){var e=this._animatebles.indexOf(t);e>=0&&(this._animatebles[e]=null,t.clock=null)},t.prototype.clear=function(){for(var t=0,e=this._animatebles;t<e.length;t++){var i=e[t];null!==i&&(i.clock=null)}},Object.defineProperty(t.prototype,"clock",{get:function(){return this._clock},set:function(t){this._clock!==t&&(null!==this._clock&&this._clock.remove(this),this._clock=t,null!==this._clock&&this._clock.add(this))},enumerable:!0,configurable:!0}),t.clock=new t,t}();t.WorldClock=e}(xst||(xst={})),function(t){var e=function(e){function i(){var t=null!==e&&e.apply(this,arguments)||this;return t._animationNames=[],t._animationStates=[],t._animations={},t._animationConfig=null,t}return Cst(i,e),i.toString=function(){return"[class dragonBones.Animation]"},i.prototype._onClear=function(){for(var t=0,e=this._animationStates;t<e.length;t++)e[t].returnToPool();for(var i in this._animations)delete this._animations[i];null!==this._animationConfig&&this._animationConfig.returnToPool(),this.timeScale=1,this._lockUpdate=!1,this._animationDirty=!1,this._inheritTimeScale=1,this._animationNames.length=0,this._animationStates.length=0,this._armature=null,this._animationConfig=null,this._lastAnimationState=null},i.prototype._fadeOut=function(t){switch(t.fadeOutMode){case 1:for(var e=0,i=this._animationStates;e<i.length;e++)null===(u=i[e])._parent&&u.layer===t.layer&&u.fadeOut(t.fadeOutTime,t.pauseFadeOut);break;case 2:for(var n=0,r=this._animationStates;n<r.length;n++)null===(u=r[n])._parent&&u.group===t.group&&u.fadeOut(t.fadeOutTime,t.pauseFadeOut);break;case 3:for(var s=0,a=this._animationStates;s<a.length;s++)null===(u=a[s])._parent&&u.layer===t.layer&&u.group===t.group&&u.fadeOut(t.fadeOutTime,t.pauseFadeOut);break;case 4:for(var o=0,h=this._animationStates;o<h.length;o++){var u;null===(u=h[o])._parent&&u.fadeOut(t.fadeOutTime,t.pauseFadeOut)}}},i.prototype.init=function(e){null===this._armature&&(this._armature=e,this._animationConfig=t.BaseObject.borrowObject(t.AnimationConfig))},i.prototype.advanceTime=function(t){t<0&&(t=-t),this._armature.inheritAnimation&&null!==this._armature._parent?this._inheritTimeScale=this._armature._parent._armature.animation._inheritTimeScale*this.timeScale:this._inheritTimeScale=this.timeScale,1!==this._inheritTimeScale&&(t*=this._inheritTimeScale);var e=this._animationStates.length;if(1===e)if((d=this._animationStates[0])._fadeState>0&&d._subFadeState>0)this._armature._dragonBones.bufferObject(d),this._animationStates.length=0,this._lastAnimationState=null;else{var i=d._animationData,n=i.cacheFrameRate;if(this._animationDirty&&n>0){this._animationDirty=!1;for(var r=0,s=this._armature.getBones();r<s.length;r++){var a=s[r];a._cachedFrameIndices=i.getBoneCachedFrameIndices(a.name)}for(var o=0,h=this._armature.getSlots();o<h.length;o++){var u=h[o],l=u.rawDisplayDatas;if(null!==l&&l.length>0){var c=l[0];if(null!==c&&c.parent===this._armature.armatureData.defaultSkin){u._cachedFrameIndices=i.getSlotCachedFrameIndices(u.name);continue}}u._cachedFrameIndices=null}}d.advanceTime(t,n)}else if(e>1){for(var _=0,f=0;_<e;++_){var d;(d=this._animationStates[_])._fadeState>0&&d._subFadeState>0?(f++,this._armature._dragonBones.bufferObject(d),this._animationDirty=!0,this._lastAnimationState===d&&(this._lastAnimationState=null)):(f>0&&(this._animationStates[_-f]=d),d.advanceTime(t,0)),_===e-1&&f>0&&(this._animationStates.length-=f,null===this._lastAnimationState&&this._animationStates.length>0&&(this._lastAnimationState=this._animationStates[this._animationStates.length-1]))}this._armature._cacheFrameIndex=-1}else this._armature._cacheFrameIndex=-1},i.prototype.reset=function(){for(var t=0,e=this._animationStates;t<e.length;t++)e[t].returnToPool();this._animationDirty=!1,this._animationConfig.clear(),this._animationStates.length=0,this._lastAnimationState=null},i.prototype.stop=function(t){if(void 0===t&&(t=null),null!==t)null!==(n=this.getState(t))&&n.stop();else for(var e=0,i=this._animationStates;e<i.length;e++){var n;(n=i[e]).stop()}},i.prototype.playConfig=function(e){var i=e.animation;if(!(i in this._animations))return console.warn("Non-existent animation.\n","DragonBones name: "+this._armature.armatureData.parent.name,"Armature name: "+this._armature.name,"Animation name: "+i),null;var n=this._animations[i];if(5===e.fadeOutMode)for(var r=0,s=this._animationStates;r<s.length;r++){var a=s[r];if(a._animationData===n)return a}0===this._animationStates.length?e.fadeInTime=0:e.fadeInTime<0&&(e.fadeInTime=n.fadeInTime),e.fadeOutTime<0&&(e.fadeOutTime=e.fadeInTime),e.timeScale<=-100&&(e.timeScale=1/n.scale),n.frameCount>1?(e.position<0?(e.position%=n.duration,e.position=n.duration-e.position):e.position===n.duration?e.position-=1e-6:e.position>n.duration&&(e.position%=n.duration),e.duration>0&&e.position+e.duration>n.duration&&(e.duration=n.duration-e.position),e.playTimes<0&&(e.playTimes=n.playTimes)):(e.playTimes=1,e.position=0,e.duration>0&&(e.duration=0)),0===e.duration&&(e.duration=-1),this._fadeOut(e);var o=t.BaseObject.borrowObject(t.AnimationState);if(o.init(this._armature,n,e),this._animationDirty=!0,this._armature._cacheFrameIndex=-1,this._animationStates.length>0){for(var h=!1,u=0,l=this._animationStates.length;u<l;++u){if(o.layer>this._animationStates[u].layer){h=!0,this._animationStates.splice(u,0,o);break}if(u!==l-1&&o.layer>this._animationStates[u+1].layer){h=!0,this._animationStates.splice(u+1,0,o);break}}h||this._animationStates.push(o)}else this._animationStates.push(o);for(var c=0,_=this._armature.getSlots();c<_.length;c++){var f=_[c].childArmature;null!==f&&f.inheritAnimation&&f.animation.hasAnimation(i)&&null===f.animation.getState(i)&&f.animation.fadeIn(i)}var d=!1;for(var p in n.animationTimelines){this._lockUpdate||(d=!0,this._lockUpdate=!0);var m=this.fadeIn(p,e.fadeInTime,1,o.layer,null,0);null!==m&&(m.resetToPose=!1,m._parent=o,m.stop())}return d&&(this._lockUpdate=!1),this._lockUpdate||(e.fadeInTime<=0&&this._armature.advanceTime(0),this._lastAnimationState=o),o},i.prototype.play=function(t,e){if(void 0===t&&(t=null),void 0===e&&(e=-1),this._animationConfig.clear(),this._animationConfig.resetToPose=!0,this._animationConfig.playTimes=e,this._animationConfig.fadeInTime=0,this._animationConfig.animation=null!==t?t:"",null!==t&&t.length>0)this.playConfig(this._animationConfig);else if(null===this._lastAnimationState){var i=this._armature.armatureData.defaultAnimation;null!==i&&(this._animationConfig.animation=i.name,this.playConfig(this._animationConfig))}else this._lastAnimationState.isPlaying||this._lastAnimationState.isCompleted?(this._animationConfig.animation=this._lastAnimationState.name,this.playConfig(this._animationConfig)):this._lastAnimationState.play();return this._lastAnimationState},i.prototype.fadeIn=function(t,e,i,n,r,s){return void 0===e&&(e=-1),void 0===i&&(i=-1),void 0===n&&(n=0),void 0===r&&(r=null),void 0===s&&(s=3),this._animationConfig.clear(),this._animationConfig.fadeOutMode=s,this._animationConfig.playTimes=i,this._animationConfig.layer=n,this._animationConfig.fadeInTime=e,this._animationConfig.animation=t,this._animationConfig.group=null!==r?r:"",this.playConfig(this._animationConfig)},i.prototype.gotoAndPlayByTime=function(t,e,i){return void 0===e&&(e=0),void 0===i&&(i=-1),this._animationConfig.clear(),this._animationConfig.resetToPose=!0,this._animationConfig.playTimes=i,this._animationConfig.position=e,this._animationConfig.fadeInTime=0,this._animationConfig.animation=t,this.playConfig(this._animationConfig)},i.prototype.gotoAndPlayByFrame=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=-1),this._animationConfig.clear(),this._animationConfig.resetToPose=!0,this._animationConfig.playTimes=i,this._animationConfig.fadeInTime=0,this._animationConfig.animation=t;var n=t in this._animations?this._animations[t]:null;return null!==n&&(this._animationConfig.position=n.duration*e/n.frameCount),this.playConfig(this._animationConfig)},i.prototype.gotoAndPlayByProgress=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=-1),this._animationConfig.clear(),this._animationConfig.resetToPose=!0,this._animationConfig.playTimes=i,this._animationConfig.fadeInTime=0,this._animationConfig.animation=t;var n=t in this._animations?this._animations[t]:null;return null!==n&&(this._animationConfig.position=n.duration*(e>0?e:0)),this.playConfig(this._animationConfig)},i.prototype.gotoAndStopByTime=function(t,e){void 0===e&&(e=0);var i=this.gotoAndPlayByTime(t,e,1);return null!==i&&i.stop(),i},i.prototype.gotoAndStopByFrame=function(t,e){void 0===e&&(e=0);var i=this.gotoAndPlayByFrame(t,e,1);return null!==i&&i.stop(),i},i.prototype.gotoAndStopByProgress=function(t,e){void 0===e&&(e=0);var i=this.gotoAndPlayByProgress(t,e,1);return null!==i&&i.stop(),i},i.prototype.getState=function(t){for(var e=this._animationStates.length;e--;){var i=this._animationStates[e];if(i.name===t)return i}return null},i.prototype.hasAnimation=function(t){return t in this._animations},i.prototype.getStates=function(){return this._animationStates},Object.defineProperty(i.prototype,"isPlaying",{get:function(){for(var t=0,e=this._animationStates;t<e.length;t++)if(e[t].isPlaying)return!0;return!1},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"isCompleted",{get:function(){for(var t=0,e=this._animationStates;t<e.length;t++)if(!e[t].isCompleted)return!1;return this._animationStates.length>0},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"lastAnimationName",{get:function(){return null!==this._lastAnimationState?this._lastAnimationState.name:""},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"animationNames",{get:function(){return this._animationNames},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"animations",{get:function(){return this._animations},set:function(t){if(this._animations!==t){for(var e in this._animationNames.length=0,this._animations)delete this._animations[e];for(var e in t)this._animationNames.push(e),this._animations[e]=t[e]}},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"animationConfig",{get:function(){return this._animationConfig.clear(),this._animationConfig},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"lastAnimationState",{get:function(){return this._lastAnimationState},enumerable:!0,configurable:!0}),i.prototype.gotoAndPlay=function(t,e,i,n,r,s,a){void 0===e&&(e=-1),void 0===i&&(i=-1),void 0===n&&(n=-1),void 0===r&&(r=0),void 0===s&&(s=null),void 0===a&&(a=3),console.warn("Deprecated."),this._animationConfig.clear(),this._animationConfig.resetToPose=!0,this._animationConfig.fadeOutMode=a,this._animationConfig.playTimes=n,this._animationConfig.layer=r,this._animationConfig.fadeInTime=e,this._animationConfig.animation=t,this._animationConfig.group=null!==s?s:"";var o=this._animations[t];return o&&i>0&&(this._animationConfig.timeScale=o.duration/i),this.playConfig(this._animationConfig)},i.prototype.gotoAndStop=function(t,e){return void 0===e&&(e=0),console.warn("Deprecated."),this.gotoAndStopByTime(t,e)},Object.defineProperty(i.prototype,"animationList",{get:function(){return console.warn("Deprecated."),this._animationNames},enumerable:!0,configurable:!0}),Object.defineProperty(i.prototype,"animationDataList",{get:function(){console.warn("Deprecated.");for(var t=[],e=0,i=this._animationNames.length;e<i;++e)t.push(this._animations[this._animationNames[e]]);return t},enumerable:!0,configurable:!0}),i}(t.BaseObject);t.Animation=e}(xst||(xst={})),function(t){var e=function(e){function r(){var t=null!==e&&e.apply(this,arguments)||this;return t._blendState=new n,t._boneMask=[],t._boneTimelines=[],t._surfaceTimelines=[],t._slotTimelines=[],t._constraintTimelines=[],t._animationTimelines=[],t._poseTimelines=[],t._bonePoses={},t._actionTimeline=null,t._zOrderTimeline=null,t._parent=null,t}return Cst(r,e),r.toString=function(){return"[class dragonBones.AnimationState]"},r.prototype._onClear=function(){for(var t=0,e=this._boneTimelines;t<e.length;t++)e[t].returnToPool();for(var i=0,n=this._surfaceTimelines;i<n.length;i++)n[i].returnToPool();for(var r=0,s=this._slotTimelines;r<s.length;r++)s[r].returnToPool();for(var a=0,o=this._constraintTimelines;a<o.length;a++)o[a].returnToPool();for(var h=0,u=this._animationTimelines;h<u.length;h++)u[h].returnToPool();for(var l in this._bonePoses)this._bonePoses[l].returnToPool(),delete this._bonePoses[l];null!==this._actionTimeline&&this._actionTimeline.returnToPool(),null!==this._zOrderTimeline&&this._zOrderTimeline.returnToPool(),this.actionEnabled=!1,this.additiveBlending=!1,this.displayControl=!1,this.resetToPose=!1,this.playTimes=1,this.layer=0,this.timeScale=1,this.weight=1,this.autoFadeOutTime=0,this.fadeTotalTime=0,this.name="",this.group="",this._timelineDirty=2,this._playheadState=0,this._fadeState=-1,this._subFadeState=-1,this._position=0,this._duration=0,this._fadeTime=0,this._time=0,this._fadeProgress=0,this._weightResult=0,this._blendState.clear(),this._boneMask.length=0,this._boneTimelines.length=0,this._surfaceTimelines.length=0,this._slotTimelines.length=0,this._constraintTimelines.length=0,this._animationTimelines.length=0,this._poseTimelines.length=0,this._animationData=null,this._armature=null,this._actionTimeline=null,this._zOrderTimeline=null,this._parent=null},r.prototype._updateTimelines=function(){for(var e=0,i=this._armature._constraints;e<i.length;e++){var n=i[e];if(null!==(h=this._animationData.getConstraintTimelines(n.name)))for(var r=0,s=h;r<s.length;r++)switch((_=s[r]).type){case 30:(f=t.BaseObject.borrowObject(t.IKConstraintTimelineState)).constraint=n,f.init(this._armature,this,_),this._constraintTimelines.push(f)}else this.resetToPose&&((f=t.BaseObject.borrowObject(t.IKConstraintTimelineState)).constraint=n,f.init(this._armature,this,null),this._constraintTimelines.push(f),this._poseTimelines.push(f))}for(var a=0,o=this._armature.animation.getStates();a<o.length;a++){var h,u=o[a];if(u._parent===this&&null!==(h=this._animationData.getAnimationTimelines(u.name)))for(var l=0,c=h;l<c.length;l++){var _;switch((_=c[l]).type){case 40:var f;(f=t.BaseObject.borrowObject(t.AnimationTimelineState)).animationState=u,f.init(this._armature,this,_),this._animationTimelines.push(f)}}}},r.prototype._updateBoneAndSlotTimelines=function(){for(var e={},n=0,r=this._boneTimelines;n<r.length;n++)(h=(v=r[n]).bone.name)in e||(e[h]=[]),e[h].push(v);for(var s=0,a=this._armature.getBones();s<a.length;s++){var o=a[s],h=o.name;if(this.containsBoneMask(h))if(h in e)delete e[h];else if(0===o._boneData.type){var u=this._animationData.getBoneTimelines(h),l=h in this._bonePoses?this._bonePoses[h]:this._bonePoses[h]=t.BaseObject.borrowObject(i);if(null!==u)for(var c=0,_=u;c<_.length;c++)switch((B=_[c]).type){case 10:(v=t.BaseObject.borrowObject(t.BoneAllTimelineState)).bone=o,v.bonePose=l,v.init(this._armature,this,B),this._boneTimelines.push(v);break;case 11:(v=t.BaseObject.borrowObject(t.BoneTranslateTimelineState)).bone=o,v.bonePose=l,v.init(this._armature,this,B),this._boneTimelines.push(v);break;case 12:(v=t.BaseObject.borrowObject(t.BoneRotateTimelineState)).bone=o,v.bonePose=l,v.init(this._armature,this,B),this._boneTimelines.push(v);break;case 13:(v=t.BaseObject.borrowObject(t.BoneScaleTimelineState)).bone=o,v.bonePose=l,v.init(this._armature,this,B),this._boneTimelines.push(v)}else this.resetToPose&&((v=t.BaseObject.borrowObject(t.BoneAllTimelineState)).bone=o,v.bonePose=l,v.init(this._armature,this,null),this._boneTimelines.push(v),this._poseTimelines.push(v))}else if(1===o._boneData.type)if(null!==(u=this._animationData.getSurfaceTimelines(h)))for(var f=0,d=u;f<d.length;f++)switch((B=d[f]).type){case 50:(v=t.BaseObject.borrowObject(t.SurfaceTimelineState)).surface=o,v.init(this._armature,this,B),this._surfaceTimelines.push(v)}else this.resetToPose&&((v=t.BaseObject.borrowObject(t.SurfaceTimelineState)).surface=o,v.init(this._armature,this,null),this._surfaceTimelines.push(v),this._poseTimelines.push(v))}for(var p in e)for(var m=0,g=e[p];m<g.length;m++){var v=g[m];this._boneTimelines.splice(this._boneTimelines.indexOf(v),1),v.returnToPool()}for(var y={},S=[],T=0,A=this._slotTimelines;T<A.length;T++)(h=(v=A[T]).slot.name)in y||(y[h]=[]),y[h].push(v);for(var b=0,E=this._armature.getSlots();b<E.length;b++){var C=E[b],x=C.parent.name;if(this.containsBoneMask(x))if(h=C.name,u=this._animationData.getSlotTimelines(h),h in y)delete y[h];else{var w=!1,R=!1;if(S.length=0,null!==u)for(var I=0,D=u;I<D.length;I++){var B;switch((B=D[I]).type){case 20:(v=t.BaseObject.borrowObject(t.SlotDislayTimelineState)).slot=C,v.init(this._armature,this,B),this._slotTimelines.push(v),w=!0;break;case 21:(v=t.BaseObject.borrowObject(t.SlotColorTimelineState)).slot=C,v.init(this._armature,this,B),this._slotTimelines.push(v),R=!0;break;case 22:(v=t.BaseObject.borrowObject(t.DeformTimelineState)).slot=C,v.init(this._armature,this,B),this._slotTimelines.push(v),S.push(v.vertexOffset)}}if(this.resetToPose&&(w||((v=t.BaseObject.borrowObject(t.SlotDislayTimelineState)).slot=C,v.init(this._armature,this,null),this._slotTimelines.push(v),this._poseTimelines.push(v)),R||((v=t.BaseObject.borrowObject(t.SlotColorTimelineState)).slot=C,v.init(this._armature,this,null),this._slotTimelines.push(v),this._poseTimelines.push(v)),null!==C.rawDisplayDatas))for(var M=0,P=C.rawDisplayDatas;M<P.length;M++){var O=P[M];if(null!==O&&2===O.type){var L=O.vertices.offset;S.indexOf(L)<0&&((v=t.BaseObject.borrowObject(t.DeformTimelineState)).vertexOffset=L,v.slot=C,v.init(this._armature,this,null),this._slotTimelines.push(v),this._poseTimelines.push(v))}}}}for(var p in y)for(var N=0,F=y[p];N<F.length;N++)v=F[N],this._slotTimelines.splice(this._slotTimelines.indexOf(v),1),v.returnToPool()},r.prototype._advanceFadeTime=function(e){var i,n=this._fadeState>0;if(this._subFadeState<0){this._subFadeState=0;var r=n?t.EventObject.FADE_OUT:t.EventObject.FADE_IN;this._armature.eventDispatcher.hasDBEventListener(r)&&((i=t.BaseObject.borrowObject(t.EventObject)).type=r,i.armature=this._armature,i.animationState=this,this._armature._dragonBones.bufferEvent(i))}(e<0&&(e=-e),this._fadeTime+=e,this._fadeTime>=this.fadeTotalTime?(this._subFadeState=1,this._fadeProgress=n?0:1):this._fadeTime>0?this._fadeProgress=n?1-this._fadeTime/this.fadeTotalTime:this._fadeTime/this.fadeTotalTime:this._fadeProgress=n?1:0,this._subFadeState>0)&&(n||(this._playheadState|=1,this._fadeState=0),r=n?t.EventObject.FADE_OUT_COMPLETE:t.EventObject.FADE_IN_COMPLETE,this._armature.eventDispatcher.hasDBEventListener(r)&&((i=t.BaseObject.borrowObject(t.EventObject)).type=r,i.armature=this._armature,i.animationState=this,this._armature._dragonBones.bufferEvent(i)))},r.prototype.init=function(e,i,n){if(null===this._armature){if(this._armature=e,this._animationData=i,this.resetToPose=n.resetToPose,this.additiveBlending=n.additiveBlending,this.displayControl=n.displayControl,this.actionEnabled=n.actionEnabled,this.layer=n.layer,this.playTimes=n.playTimes,this.timeScale=n.timeScale,this.fadeTotalTime=n.fadeInTime,this.autoFadeOutTime=n.autoFadeOutTime,this.weight=n.weight,this.name=n.name.length>0?n.name:n.animation,this.group=n.group,n.pauseFadeIn?this._playheadState=2:this._playheadState=3,n.duration<0?(this._position=0,this._duration=this._animationData.duration,0!==n.position?this.timeScale>=0?this._time=n.position:this._time=n.position-this._duration:this._time=0):(this._position=n.position,this._duration=n.duration,this._time=0),this.timeScale<0&&0===this._time&&(this._time=-1e-6),this.fadeTotalTime<=0&&(this._fadeProgress=.999999),n.boneMask.length>0){this._boneMask.length=n.boneMask.length;for(var r=0,s=this._boneMask.length;r<s;++r)this._boneMask[r]=n.boneMask[r]}this._actionTimeline=t.BaseObject.borrowObject(t.ActionTimelineState),this._actionTimeline.init(this._armature,this,this._animationData.actionTimeline),this._actionTimeline.currentTime=this._time,this._actionTimeline.currentTime<0&&(this._actionTimeline.currentTime=this._duration-this._actionTimeline.currentTime),null!==this._animationData.zOrderTimeline&&(this._zOrderTimeline=t.BaseObject.borrowObject(t.ZOrderTimelineState),this._zOrderTimeline.init(this._armature,this,this._animationData.zOrderTimeline))}},r.prototype.advanceTime=function(e,i){if(this._blendState.dirty=!1,0===this._fadeState&&0===this._subFadeState||this._advanceFadeTime(e),3===this._playheadState&&(1!==this.timeScale&&(e*=this.timeScale),this._time+=e),0!==this._timelineDirty&&(2===this._timelineDirty&&this._updateTimelines(),this._timelineDirty=0,this._updateBoneAndSlotTimelines()),0!==this.weight){var n=0===this._fadeState&&i>0,r=!0,s=!0,a=this._time;if(this._weightResult=this.weight*this._fadeProgress,null!==this._parent&&(this._weightResult*=this._parent._weightResult/this._parent._fadeProgress),this._actionTimeline.playState<=0&&this._actionTimeline.update(a),n){var o=2*i;this._actionTimeline.currentTime=Math.floor(this._actionTimeline.currentTime*o)/o}if(null!==this._zOrderTimeline&&this._zOrderTimeline.playState<=0&&this._zOrderTimeline.update(a),n){var h=Math.floor(this._actionTimeline.currentTime*i);this._armature._cacheFrameIndex===h?(r=!1,s=!1):(this._armature._cacheFrameIndex=h,this._animationData.cachedFrames[h]?s=!1:this._animationData.cachedFrames[h]=!0)}if(r){if(s)for(var u=0,l=this._boneTimelines.length;u<l;++u)(p=this._boneTimelines[u]).playState<=0&&p.update(a),(u===l-1||p.bone!==this._boneTimelines[u+1].bone)&&0!==(c=p.bone._blendState.update(this._weightResult,this.layer))&&p.blend(c);for(u=0,l=this._surfaceTimelines.length;u<l;++u){var c=(p=this._surfaceTimelines[u]).surface._blendState.update(this._weightResult,this.layer);p.playState<=0&&p.update(a),0!==c&&p.blend(c)}if(this.displayControl)for(u=0,l=this._slotTimelines.length;u<l;++u){var _=(p=this._slotTimelines[u]).slot.displayController;null!==_&&_!==this.name&&_!==this.group||p.playState<=0&&p.update(a)}for(u=0,l=this._constraintTimelines.length;u<l;++u)(p=this._constraintTimelines[u]).playState<=0&&p.update(a);for(u=0,l=this._animationTimelines.length;u<l;++u)c=(p=this._animationTimelines[u]).animationState._blendState.update(this._weightResult,this.layer),p.playState<=0&&p.update(a),0!==c&&p.blend(c)}if(0===this._fadeState){if(this._subFadeState>0&&(this._subFadeState=0,this._poseTimelines.length>0)){for(var f=0,d=this._poseTimelines;f<d.length;f++){var p;(p=d[f])instanceof t.BoneTimelineState?this._boneTimelines.splice(this._boneTimelines.indexOf(p),1):p instanceof t.SurfaceTimelineState?this._surfaceTimelines.splice(this._surfaceTimelines.indexOf(p),1):p instanceof t.SlotTimelineState?this._slotTimelines.splice(this._slotTimelines.indexOf(p),1):p instanceof t.ConstraintTimelineState&&this._constraintTimelines.splice(this._constraintTimelines.indexOf(p),1),p.returnToPool()}this._poseTimelines.length=0}this._actionTimeline.playState>0&&this.autoFadeOutTime>=0&&this.fadeOut(this.autoFadeOutTime)}}},r.prototype.play=function(){this._playheadState=3},r.prototype.stop=function(){this._playheadState&=1},r.prototype.fadeOut=function(t,e){if(void 0===e&&(e=!0),t<0&&(t=0),e&&(this._playheadState&=2),this._fadeState>0){if(t>this.fadeTotalTime-this._fadeTime)return}else{this._fadeState=1,this._subFadeState=-1,(t<=0||this._fadeProgress<=0)&&(this._fadeProgress=1e-6);for(var i=0,n=this._boneTimelines;i<n.length;i++)(_=n[i]).fadeOut();for(var r=0,s=this._surfaceTimelines;r<s.length;r++)(_=s[r]).fadeOut();for(var a=0,o=this._slotTimelines;a<o.length;a++)(_=o[a]).fadeOut();for(var h=0,u=this._constraintTimelines;h<u.length;h++)(_=u[h]).fadeOut();for(var l=0,c=this._animationTimelines;l<c.length;l++){var _;(_=c[l]).animationState.fadeOut(t,e),_.fadeOut()}}this.displayControl=!1,this.fadeTotalTime=this._fadeProgress>1e-6?t/this._fadeProgress:0,this._fadeTime=this.fadeTotalTime*(1-this._fadeProgress)},r.prototype.containsBoneMask=function(t){return 0===this._boneMask.length||this._boneMask.indexOf(t)>=0},r.prototype.addBoneMask=function(t,e){void 0===e&&(e=!0);var i=this._armature.getBone(t);if(null!==i){if(this._boneMask.indexOf(t)<0&&this._boneMask.push(t),e)for(var n=0,r=this._armature.getBones();n<r.length;n++){var s=r[n];this._boneMask.indexOf(s.name)<0&&i.contains(s)&&this._boneMask.push(s.name)}this._timelineDirty=1}},r.prototype.removeBoneMask=function(t,e){void 0===e&&(e=!0);var i=this._boneMask.indexOf(t);if(i>=0&&this._boneMask.splice(i,1),e){var n=this._armature.getBone(t);if(null!==n){var r=this._armature.getBones();if(this._boneMask.length>0)for(var s=0,a=r;s<a.length;s++){var o=a[s],h=this._boneMask.indexOf(o.name);h>=0&&n.contains(o)&&this._boneMask.splice(h,1)}else for(var u=0,l=r;u<l.length;u++)(o=l[u])!==n&&(n.contains(o)||this._boneMask.push(o.name))}}this._timelineDirty=1},r.prototype.removeAllBoneMask=function(){this._boneMask.length=0,this._timelineDirty=1},Object.defineProperty(r.prototype,"isFadeIn",{get:function(){return this._fadeState<0},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"isFadeOut",{get:function(){return this._fadeState>0},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"isFadeComplete",{get:function(){return 0===this._fadeState},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"isPlaying",{get:function(){return 0!=(2&this._playheadState)&&this._actionTimeline.playState<=0},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"isCompleted",{get:function(){return this._actionTimeline.playState>0},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"currentPlayTimes",{get:function(){return this._actionTimeline.currentPlayTimes},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"totalTime",{get:function(){return this._duration},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"currentTime",{get:function(){return this._actionTimeline.currentTime},set:function(t){var e=this._actionTimeline.currentPlayTimes-(this._actionTimeline.playState>0?1:0);if((t<0||this._duration<t)&&(t=t%this._duration+e*this._duration)<0&&(t+=this._duration),this.playTimes>0&&e===this.playTimes-1&&t===this._duration&&(t=this._duration-1e-6),this._time!==t){this._time=t,this._actionTimeline.setCurrentTime(this._time),null!==this._zOrderTimeline&&(this._zOrderTimeline.playState=-1);for(var i=0,n=this._boneTimelines;i<n.length;i++)n[i].playState=-1;for(var r=0,s=this._slotTimelines;r<s.length;r++)s[r].playState=-1}},enumerable:!0,configurable:!0}),Object.defineProperty(r.prototype,"animationData",{get:function(){return this._animationData},enumerable:!0,configurable:!0}),r}(t.BaseObject);t.AnimationState=e;var i=function(e){function i(){var i=null!==e&&e.apply(this,arguments)||this;return i.current=new t.Transform,i.delta=new t.Transform,i.result=new t.Transform,i}return Cst(i,e),i.toString=function(){return"[class dragonBones.BonePose]"},i.prototype._onClear=function(){this.current.identity(),this.delta.identity(),this.result.identity()},i}(t.BaseObject);t.BonePose=i;var n=function(){function t(){}return t.prototype.update=function(t,e){if(this.dirty){if(!(this.leftWeight>0))return 0;if(this.layer!==e){if(this.layerWeight>=this.leftWeight)return this.leftWeight=0,0;this.layer=e,this.leftWeight-=this.layerWeight,this.layerWeight=0}return t*=this.leftWeight,this.layerWeight+=t,this.blendWeight=t,2}return this.dirty=!0,this.layer=e,this.layerWeight=t,this.leftWeight=1,this.blendWeight=t,1},t.prototype.clear=function(){this.dirty=!1,this.layer=0,this.leftWeight=0,this.layerWeight=0,this.blendWeight=0},t}();t.BlendState=n}(xst||(xst={})),function(t){var e=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.prototype._onClear=function(){this.playState=-1,this.currentPlayTimes=-1,this.currentTime=-1,this._tweenState=0,this._frameRate=0,this._frameValueOffset=0,this._frameCount=0,this._frameOffset=0,this._frameIndex=-1,this._frameRateR=0,this._position=0,this._duration=0,this._timeScale=1,this._timeOffset=0,this._dragonBonesData=null,this._animationData=null,this._timelineData=null,this._armature=null,this._animationState=null,this._actionTimeline=null,this._frameArray=null,this._frameIntArray=null,this._frameFloatArray=null,this._timelineArray=null,this._frameIndices=null},e.prototype._setCurrentTime=function(t){var e=this.playState,i=this.currentPlayTimes,n=this.currentTime;if(null!==this._actionTimeline&&this._frameCount<=1)this.playState=this._actionTimeline.playState>=0?1:-1,this.currentPlayTimes=1,this.currentTime=this._actionTimeline.currentTime;else if(null===this._actionTimeline||1!==this._timeScale||0!==this._timeOffset){var r=this._animationState.playTimes,s=r*this._duration;t*=this._timeScale,0!==this._timeOffset&&(t+=this._timeOffset*this._animationData.duration),r>0&&(t>=s||t<=-s)?(this.playState<=0&&3===this._animationState._playheadState&&(this.playState=1),this.currentPlayTimes=r,this.currentTime=t<0?0:this._duration+1e-6):(0!==this.playState&&3===this._animationState._playheadState&&(this.playState=0),t<0?(t=-t,this.currentPlayTimes=Math.floor(t/this._duration),this.currentTime=this._duration-t%this._duration):(this.currentPlayTimes=Math.floor(t/this._duration),this.currentTime=t%this._duration)),this.currentTime+=this._position}else this.playState=this._actionTimeline.playState,this.currentPlayTimes=this._actionTimeline.currentPlayTimes,this.currentTime=this._actionTimeline.currentTime;return(this.currentPlayTimes!==i||this.currentTime!==n)&&((e<0&&this.playState!==e||this.playState<=0&&this.currentPlayTimes!==i)&&(this._frameIndex=-1),!0)},e.prototype.init=function(t,e,i){this._armature=t,this._animationState=e,this._timelineData=i,this._actionTimeline=this._animationState._actionTimeline,this===this._actionTimeline&&(this._actionTimeline=null),this._animationData=this._animationState._animationData,this._frameRate=this._animationData.parent.frameRate,this._frameRateR=1/this._frameRate,this._position=this._animationState._position,this._duration=this._animationState._duration,this._dragonBonesData=this._animationData.parent.parent,null!==this._timelineData&&(this._frameIntArray=this._dragonBonesData.frameIntArray,this._frameFloatArray=this._dragonBonesData.frameFloatArray,this._frameArray=this._dragonBonesData.frameArray,this._timelineArray=this._dragonBonesData.timelineArray,this._frameIndices=this._dragonBonesData.frameIndices,this._frameCount=this._timelineArray[this._timelineData.offset+2],this._frameValueOffset=this._timelineArray[this._timelineData.offset+4],this._timeScale=100/this._timelineArray[this._timelineData.offset+0],this._timeOffset=.01*this._timelineArray[this._timelineData.offset+1])},e.prototype.fadeOut=function(){},e.prototype.update=function(t){if(this._setCurrentTime(t)){if(this._frameCount>1){var e=Math.floor(this.currentTime*this._frameRate),i=this._frameIndices[this._timelineData.frameIndicesOffset+e];this._frameIndex!==i&&(this._frameIndex=i,this._frameOffset=this._animationData.frameOffset+this._timelineArray[this._timelineData.offset+5+this._frameIndex],this._onArriveAtFrame())}else this._frameIndex<0&&(this._frameIndex=0,null!==this._timelineData&&(this._frameOffset=this._animationData.frameOffset+this._timelineArray[this._timelineData.offset+5]),this._onArriveAtFrame());0!==this._tweenState&&this._onUpdateFrame()}},e}(t.BaseObject);t.TimelineState=e;var i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e._getEasingValue=function(t,e,i){var n=e;switch(t){case 3:n=Math.pow(e,2);break;case 4:n=1-Math.pow(1-e,2);break;case 5:n=.5*(1-Math.cos(e*Math.PI))}return(n-e)*i+e},e._getEasingCurveValue=function(t,e,i,n){if(t<=0)return 0;if(t>=1)return 1;var r=i+1,s=Math.floor(t*r),a=0===s?0:e[n+s-1];return 1e-4*(a+((s===r-1?1e4:e[n+s])-a)*(t*r-s))},e.prototype._onClear=function(){t.prototype._onClear.call(this),this._tweenType=0,this._curveCount=0,this._framePosition=0,this._frameDurationR=0,this._tweenProgress=0,this._tweenEasing=0},e.prototype._onArriveAtFrame=function(){if(this._frameCount>1&&(this._frameIndex!==this._frameCount-1||0===this._animationState.playTimes||this._animationState.currentPlayTimes<this._animationState.playTimes-1))if(this._tweenType=this._frameArray[this._frameOffset+1],this._tweenState=0===this._tweenType?1:2,2===this._tweenType?this._curveCount=this._frameArray[this._frameOffset+2]:0!==this._tweenType&&1!==this._tweenType&&(this._tweenEasing=.01*this._frameArray[this._frameOffset+2]),this._framePosition=this._frameArray[this._frameOffset]*this._frameRateR,this._frameIndex===this._frameCount-1)this._frameDurationR=1/(this._animationData.duration-this._framePosition);else{var t=this._animationData.frameOffset+this._timelineArray[this._timelineData.offset+5+this._frameIndex+1],e=this._frameArray[t]*this._frameRateR-this._framePosition;this._frameDurationR=e>0?1/e:0}else this._tweenState=1},e.prototype._onUpdateFrame=function(){2===this._tweenState?(this._tweenProgress=(this.currentTime-this._framePosition)*this._frameDurationR,2===this._tweenType?this._tweenProgress=e._getEasingCurveValue(this._tweenProgress,this._frameArray,this._curveCount,this._frameOffset+3):1!==this._tweenType&&(this._tweenProgress=e._getEasingValue(this._tweenType,this._tweenProgress,this._tweenEasing))):this._tweenProgress=0},e}(e);t.TweenTimelineState=i;var n=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.prototype._onClear=function(){t.prototype._onClear.call(this),this.bone=null,this.bonePose=null},e.prototype.blend=function(t){var e=this.bone._blendState.blendWeight,i=this.bone.animationPose,n=this.bonePose.result;2===t?(i.x+=n.x*e,i.y+=n.y*e,i.rotation+=n.rotation*e,i.skew+=n.skew*e,i.scaleX+=(n.scaleX-1)*e,i.scaleY+=(n.scaleY-1)*e):1!==e?(i.x=n.x*e,i.y=n.y*e,i.rotation=n.rotation*e,i.skew=n.skew*e,i.scaleX=(n.scaleX-1)*e+1,i.scaleY=(n.scaleY-1)*e+1):(i.x=n.x,i.y=n.y,i.rotation=n.rotation,i.skew=n.skew,i.scaleX=n.scaleX,i.scaleY=n.scaleY),0===this._animationState._fadeState&&0===this._animationState._subFadeState||(this.bone._transformDirty=!0)},e}(i);t.BoneTimelineState=n;var r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.prototype._onClear=function(){t.prototype._onClear.call(this),this.slot=null},e}(i);t.SlotTimelineState=r;var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.prototype._onClear=function(){t.prototype._onClear.call(this),this.constraint=null},e}(i);t.ConstraintTimelineState=s}(xst||(xst={})),function(t){var e=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return Cst(i,e),i.toString=function(){return"[class dragonBones.ActionTimelineState]"},i.prototype._onCrossFrame=function(e){var i=this._armature.eventDispatcher;if(this._animationState.actionEnabled)for(var n=this._animationData.frameOffset+this._timelineArray[this._timelineData.offset+5+e],r=this._frameArray[n+1],s=this._animationData.parent.actions,a=0;a<r;++a){var o=s[this._frameArray[n+2+a]];if(0===o.type)(h=t.BaseObject.borrowObject(t.EventObject)).time=this._frameArray[n]/this._frameRate,h.animationState=this._animationState,t.EventObject.actionDataToInstance(o,h,this._armature),this._armature._bufferAction(h,!0);else{var h,u=10===o.type?t.EventObject.FRAME_EVENT:t.EventObject.SOUND_EVENT;(11===o.type||i.hasDBEventListener(u))&&((h=t.BaseObject.borrowObject(t.EventObject)).time=this._frameArray[n]/this._frameRate,h.animationState=this._animationState,t.EventObject.actionDataToInstance(o,h,this._armature),this._armature._dragonBones.bufferEvent(h))}}},i.prototype._onArriveAtFrame=function(){},i.prototype._onUpdateFrame=function(){},i.prototype.update=function(e){var i=this.playState,n=this.currentPlayTimes,r=this.currentTime;if(this._setCurrentTime(e)){var s=this._armature.eventDispatcher;if(i<0){if(this.playState===i)return;if(this._animationState.displayControl&&this._animationState.resetToPose&&this._armature._sortZOrder(null,0),n=this.currentPlayTimes,s.hasDBEventListener(t.EventObject.START)){var a=t.BaseObject.borrowObject(t.EventObject);a.type=t.EventObject.START,a.armature=this._armature,a.animationState=this._animationState,this._armature._dragonBones.bufferEvent(a)}}var o=this._animationState.timeScale<0,h=null,u=null;if(this.currentPlayTimes!==n&&(s.hasDBEventListener(t.EventObject.LOOP_COMPLETE)&&((h=t.BaseObject.borrowObject(t.EventObject)).type=t.EventObject.LOOP_COMPLETE,h.armature=this._armature,h.animationState=this._animationState),this.playState>0&&s.hasDBEventListener(t.EventObject.COMPLETE)&&((u=t.BaseObject.borrowObject(t.EventObject)).type=t.EventObject.COMPLETE,u.armature=this._armature,u.animationState=this._animationState)),this._frameCount>1){var l=this._timelineData,c=Math.floor(this.currentTime*this._frameRate),_=this._frameIndices[l.frameIndicesOffset+c];if(this._frameIndex!==_){var f=this._frameIndex;if(this._frameIndex=_,null!==this._timelineArray)if(this._frameOffset=this._animationData.frameOffset+this._timelineArray[l.offset+5+this._frameIndex],o){if(f<0){var d=Math.floor(r*this._frameRate);f=this._frameIndices[l.frameIndicesOffset+d],this.currentPlayTimes===n&&f===_&&(f=-1)}for(;f>=0;){var p=this._animationData.frameOffset+this._timelineArray[l.offset+5+f],m=this._frameArray[p]/this._frameRate;if(this._position<=m&&m<=this._position+this._duration&&this._onCrossFrame(f),null!==h&&0===f&&(this._armature._dragonBones.bufferEvent(h),h=null),f>0?f--:f=this._frameCount-1,f===_)break}}else for(f<0&&(d=Math.floor(r*this._frameRate),f=this._frameIndices[l.frameIndicesOffset+d],p=this._animationData.frameOffset+this._timelineArray[l.offset+5+f],m=this._frameArray[p]/this._frameRate,this.currentPlayTimes===n&&(r<=m?f>0?f--:f=this._frameCount-1:f===_&&(f=-1)));f>=0&&(f<this._frameCount-1?f++:f=0,p=this._animationData.frameOffset+this._timelineArray[l.offset+5+f],m=this._frameArray[p]/this._frameRate,this._position<=m&&m<=this._position+this._duration&&this._onCrossFrame(f),null!==h&&0===f&&(this._armature._dragonBones.bufferEvent(h),h=null),f!==_););}}else this._frameIndex<0&&(this._frameIndex=0,null!==this._timelineData)&&(this._frameOffset=this._animationData.frameOffset+this._timelineArray[this._timelineData.offset+5],m=this._frameArray[this._frameOffset]/this._frameRate,this.currentPlayTimes===n?r<=m&&this._onCrossFrame(this._frameIndex):this._position<=m&&(o||null===h||(this._armature._dragonBones.bufferEvent(h),h=null),this._onCrossFrame(this._frameIndex)));null!==h&&this._armature._dragonBones.bufferEvent(h),null!==u&&this._armature._dragonBones.bufferEvent(u)}},i.prototype.setCurrentTime=function(t){this._setCurrentTime(t),this._frameIndex=-1},i}(t.TimelineState);t.ActionTimelineState=e;var i=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.ZOrderTimelineState]"},e.prototype._onArriveAtFrame=function(){this.playState>=0&&(this._frameArray[this._frameOffset+1]>0?this._armature._sortZOrder(this._frameArray,this._frameOffset+2):this._armature._sortZOrder(null,0))},e.prototype._onUpdateFrame=function(){},e}(t.TimelineState);t.ZOrderTimelineState=i;var n=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return Cst(i,e),i.toString=function(){return"[class dragonBones.BoneAllTimelineState]"},i.prototype._onArriveAtFrame=function(){if(e.prototype._onArriveAtFrame.call(this),null!==this._timelineData){var t=this._animationData.frameFloatOffset+this._frameValueOffset+6*this._frameIndex,i=this._armature._armatureData.scale,n=this._frameFloatArray,r=this.bonePose.current,s=this.bonePose.delta;r.x=n[t++]*i,r.y=n[t++]*i,r.rotation=n[t++],r.skew=n[t++],r.scaleX=n[t++],r.scaleY=n[t++],2===this._tweenState?(this._frameIndex===this._frameCount-1&&(t=this._animationData.frameFloatOffset+this._frameValueOffset),s.x=n[t++]*i-r.x,s.y=n[t++]*i-r.y,s.rotation=n[t++]-r.rotation,s.skew=n[t++]-r.skew,s.scaleX=n[t++]-r.scaleX,s.scaleY=n[t++]-r.scaleY):(s.x=0,s.y=0,s.rotation=0,s.skew=0,s.scaleX=0,s.scaleY=0)}else r=this.bonePose.current,s=this.bonePose.delta,r.x=0,r.y=0,r.rotation=0,r.skew=0,r.scaleX=1,r.scaleY=1,s.x=0,s.y=0,s.rotation=0,s.skew=0,s.scaleX=0,s.scaleY=0},i.prototype._onUpdateFrame=function(){e.prototype._onUpdateFrame.call(this);var t=this.bonePose.current,i=this.bonePose.delta,n=this.bonePose.result;this.bone._transformDirty=!0,2!==this._tweenState&&(this._tweenState=0),n.x=t.x+i.x*this._tweenProgress,n.y=t.y+i.y*this._tweenProgress,n.rotation=t.rotation+i.rotation*this._tweenProgress,n.skew=t.skew+i.skew*this._tweenProgress,n.scaleX=t.scaleX+i.scaleX*this._tweenProgress,n.scaleY=t.scaleY+i.scaleY*this._tweenProgress},i.prototype.fadeOut=function(){var e=this.bonePose.result;e.rotation=t.Transform.normalizeRadian(e.rotation),e.skew=t.Transform.normalizeRadian(e.skew)},i}(t.BoneTimelineState);t.BoneAllTimelineState=n;var r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.BoneTranslateTimelineState]"},e.prototype._onArriveAtFrame=function(){if(t.prototype._onArriveAtFrame.call(this),null!==this._timelineData){var e=this._animationData.frameFloatOffset+this._frameValueOffset+2*this._frameIndex,i=this._armature._armatureData.scale,n=this._frameFloatArray,r=this.bonePose.current,s=this.bonePose.delta;r.x=n[e++]*i,r.y=n[e++]*i,2===this._tweenState?(this._frameIndex===this._frameCount-1&&(e=this._animationData.frameFloatOffset+this._frameValueOffset),s.x=n[e++]*i-r.x,s.y=n[e++]*i-r.y):(s.x=0,s.y=0)}else r=this.bonePose.current,s=this.bonePose.delta,r.x=0,r.y=0,s.x=0,s.y=0},e.prototype._onUpdateFrame=function(){t.prototype._onUpdateFrame.call(this);var e=this.bonePose.current,i=this.bonePose.delta,n=this.bonePose.result;this.bone._transformDirty=!0,2!==this._tweenState&&(this._tweenState=0),n.x=e.x+i.x*this._tweenProgress,n.y=e.y+i.y*this._tweenProgress},e}(t.BoneTimelineState);t.BoneTranslateTimelineState=r;var s=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return Cst(i,e),i.toString=function(){return"[class dragonBones.BoneRotateTimelineState]"},i.prototype._onArriveAtFrame=function(){if(e.prototype._onArriveAtFrame.call(this),null!==this._timelineData){var i=this._animationData.frameFloatOffset+this._frameValueOffset+2*this._frameIndex,n=this._frameFloatArray,r=this.bonePose.current,s=this.bonePose.delta;r.rotation=n[i++],r.skew=n[i++],2===this._tweenState?(this._frameIndex===this._frameCount-1?(i=this._animationData.frameFloatOffset+this._frameValueOffset,s.rotation=t.Transform.normalizeRadian(n[i++]-r.rotation)):s.rotation=n[i++]-r.rotation,s.skew=n[i++]-r.skew):(s.rotation=0,s.skew=0)}else r=this.bonePose.current,s=this.bonePose.delta,r.rotation=0,r.skew=0,s.rotation=0,s.skew=0},i.prototype._onUpdateFrame=function(){e.prototype._onUpdateFrame.call(this);var t=this.bonePose.current,i=this.bonePose.delta,n=this.bonePose.result;this.bone._transformDirty=!0,2!==this._tweenState&&(this._tweenState=0),n.rotation=t.rotation+i.rotation*this._tweenProgress,n.skew=t.skew+i.skew*this._tweenProgress},i.prototype.fadeOut=function(){var e=this.bonePose.result;e.rotation=t.Transform.normalizeRadian(e.rotation),e.skew=t.Transform.normalizeRadian(e.skew)},i}(t.BoneTimelineState);t.BoneRotateTimelineState=s;var a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.BoneScaleTimelineState]"},e.prototype._onArriveAtFrame=function(){if(t.prototype._onArriveAtFrame.call(this),null!==this._timelineData){var e=this._animationData.frameFloatOffset+this._frameValueOffset+2*this._frameIndex,i=this._frameFloatArray,n=this.bonePose.current,r=this.bonePose.delta;n.scaleX=i[e++],n.scaleY=i[e++],2===this._tweenState?(this._frameIndex===this._frameCount-1&&(e=this._animationData.frameFloatOffset+this._frameValueOffset),r.scaleX=i[e++]-n.scaleX,r.scaleY=i[e++]-n.scaleY):(r.scaleX=0,r.scaleY=0)}else n=this.bonePose.current,r=this.bonePose.delta,n.scaleX=1,n.scaleY=1,r.scaleX=0,r.scaleY=0},e.prototype._onUpdateFrame=function(){t.prototype._onUpdateFrame.call(this);var e=this.bonePose.current,i=this.bonePose.delta,n=this.bonePose.result;this.bone._transformDirty=!0,2!==this._tweenState&&(this._tweenState=0),n.scaleX=e.scaleX+i.scaleX*this._tweenProgress,n.scaleY=e.scaleY+i.scaleY*this._tweenProgress},e}(t.BoneTimelineState);t.BoneScaleTimelineState=a;var o=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._current=[],e._delta=[],e._result=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.SurfaceTimelineState]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.surface=null,this._frameFloatOffset=0,this._valueCount=0,this._deformCount=0,this._valueOffset=0,this._current.length=0,this._delta.length=0,this._result.length=0},e.prototype._onArriveAtFrame=function(){if(t.prototype._onArriveAtFrame.call(this),null!==this._timelineData){var e=this._animationData.frameFloatOffset+this._frameValueOffset+this._frameIndex*this._valueCount,i=this._armature._armatureData.scale,n=this._frameFloatArray;if(2===this._tweenState){var r=e+this._valueCount;this._frameIndex===this._frameCount-1&&(r=this._animationData.frameFloatOffset+this._frameValueOffset);for(var s=0;s<this._valueCount;++s)this._delta[s]=n[r+s]*i-(this._current[s]=n[e+s]*i)}else for(s=0;s<this._valueCount;++s)this._current[s]=n[e+s]*i}else for(s=0;s<this._valueCount;++s)this._current[s]=0},e.prototype._onUpdateFrame=function(){t.prototype._onUpdateFrame.call(this),this.surface._transformDirty=!0,2!==this._tweenState&&(this._tweenState=0);for(var e=0;e<this._valueCount;++e)this._result[e]=this._current[e]+this._delta[e]*this._tweenProgress},e.prototype.init=function(e,i,n){if(t.prototype.init.call(this,e,i,n),null!==this._timelineData){var r=this._animationData.frameIntOffset+this._timelineArray[this._timelineData.offset+3];this._deformCount=this._frameIntArray[r+1],this._valueCount=this._frameIntArray[r+2],this._valueOffset=this._frameIntArray[r+3],this._frameFloatOffset=this._frameIntArray[r+4]+this._animationData.frameFloatOffset}else this._deformCount=this.surface._deformVertices.length,this._valueCount=this._deformCount,this._valueOffset=0,this._frameFloatOffset=0;this._current.length=this._valueCount,this._delta.length=this._valueCount,this._result.length=this._valueCount;for(var s=0;s<this._valueCount;++s)this._delta[s]=0},e.prototype.blend=function(t){for(var e=this.surface._blendState.blendWeight,i=this.surface._deformVertices,n=0;n<this._deformCount;++n){var r;r=n<this._valueOffset?this._frameFloatArray[this._frameFloatOffset+n]:n<this._valueOffset+this._valueCount?this._result[n-this._valueOffset]:this._frameFloatArray[this._frameFloatOffset+n-this._valueCount],2===t?i[n]+=r*e:i[n]=1!==e?r*e:r}0===this._animationState._fadeState&&0===this._animationState._subFadeState||(this.surface._transformDirty=!0)},e}(t.TweenTimelineState);t.SurfaceTimelineState=o;var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.SlotDislayTimelineState]"},e.prototype._onArriveAtFrame=function(){if(this.playState>=0){var t=null!==this._timelineData?this._frameArray[this._frameOffset+1]:this.slot._slotData.displayIndex;this.slot.displayIndex!==t&&this.slot._setDisplayIndex(t,!0)}},e}(t.SlotTimelineState);t.SlotDislayTimelineState=h;var u=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._current=[0,0,0,0,0,0,0,0],e._delta=[0,0,0,0,0,0,0,0],e._result=[0,0,0,0,0,0,0,0],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.SlotColorTimelineState]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this._dirty=!1},e.prototype._onArriveAtFrame=function(){if(t.prototype._onArriveAtFrame.call(this),null!==this._timelineData){var e=this._dragonBonesData.intArray,i=this._frameIntArray,n=this._animationData.frameIntOffset+this._frameValueOffset+1*this._frameIndex,r=i[n];r<0&&(r+=65536),this._current[0]=e[r++],this._current[1]=e[r++],this._current[2]=e[r++],this._current[3]=e[r++],this._current[4]=e[r++],this._current[5]=e[r++],this._current[6]=e[r++],this._current[7]=e[r++],2===this._tweenState&&((r=this._frameIndex===this._frameCount-1?i[this._animationData.frameIntOffset+this._frameValueOffset]:i[n+1])<0&&(r+=65536),this._delta[0]=e[r++]-this._current[0],this._delta[1]=e[r++]-this._current[1],this._delta[2]=e[r++]-this._current[2],this._delta[3]=e[r++]-this._current[3],this._delta[4]=e[r++]-this._current[4],this._delta[5]=e[r++]-this._current[5],this._delta[6]=e[r++]-this._current[6],this._delta[7]=e[r++]-this._current[7])}else{var s=this.slot._slotData.color;this._current[0]=100*s.alphaMultiplier,this._current[1]=100*s.redMultiplier,this._current[2]=100*s.greenMultiplier,this._current[3]=100*s.blueMultiplier,this._current[4]=s.alphaOffset,this._current[5]=s.redOffset,this._current[6]=s.greenOffset,this._current[7]=s.blueOffset}},e.prototype._onUpdateFrame=function(){t.prototype._onUpdateFrame.call(this),this._dirty=!0,2!==this._tweenState&&(this._tweenState=0),this._result[0]=.01*(this._current[0]+this._delta[0]*this._tweenProgress),this._result[1]=.01*(this._current[1]+this._delta[1]*this._tweenProgress),this._result[2]=.01*(this._current[2]+this._delta[2]*this._tweenProgress),this._result[3]=.01*(this._current[3]+this._delta[3]*this._tweenProgress),this._result[4]=this._current[4]+this._delta[4]*this._tweenProgress,this._result[5]=this._current[5]+this._delta[5]*this._tweenProgress,this._result[6]=this._current[6]+this._delta[6]*this._tweenProgress,this._result[7]=this._current[7]+this._delta[7]*this._tweenProgress},e.prototype.fadeOut=function(){this._tweenState=0,this._dirty=!1},e.prototype.update=function(e){if(t.prototype.update.call(this,e),0!==this._tweenState||this._dirty){var i=this.slot._colorTransform;if(0!==this._animationState._fadeState||0!==this._animationState._subFadeState){if(i.alphaMultiplier!==this._result[0]||i.redMultiplier!==this._result[1]||i.greenMultiplier!==this._result[2]||i.blueMultiplier!==this._result[3]||i.alphaOffset!==this._result[4]||i.redOffset!==this._result[5]||i.greenOffset!==this._result[6]||i.blueOffset!==this._result[7]){var n=Math.pow(this._animationState._fadeProgress,4);i.alphaMultiplier+=(this._result[0]-i.alphaMultiplier)*n,i.redMultiplier+=(this._result[1]-i.redMultiplier)*n,i.greenMultiplier+=(this._result[2]-i.greenMultiplier)*n,i.blueMultiplier+=(this._result[3]-i.blueMultiplier)*n,i.alphaOffset+=(this._result[4]-i.alphaOffset)*n,i.redOffset+=(this._result[5]-i.redOffset)*n,i.greenOffset+=(this._result[6]-i.greenOffset)*n,i.blueOffset+=(this._result[7]-i.blueOffset)*n,this.slot._colorDirty=!0}}else this._dirty&&(this._dirty=!1,i.alphaMultiplier===this._result[0]&&i.redMultiplier===this._result[1]&&i.greenMultiplier===this._result[2]&&i.blueMultiplier===this._result[3]&&i.alphaOffset===this._result[4]&&i.redOffset===this._result[5]&&i.greenOffset===this._result[6]&&i.blueOffset===this._result[7]||(i.alphaMultiplier=this._result[0],i.redMultiplier=this._result[1],i.greenMultiplier=this._result[2],i.blueMultiplier=this._result[3],i.alphaOffset=this._result[4],i.redOffset=this._result[5],i.greenOffset=this._result[6],i.blueOffset=this._result[7],this.slot._colorDirty=!0))}},e}(t.SlotTimelineState);t.SlotColorTimelineState=u;var l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._current=[],e._delta=[],e._result=[],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.DeformTimelineState]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.vertexOffset=0,this._dirty=!1,this._frameFloatOffset=0,this._valueCount=0,this._deformCount=0,this._valueOffset=0,this._current.length=0,this._delta.length=0,this._result.length=0},e.prototype._onArriveAtFrame=function(){if(t.prototype._onArriveAtFrame.call(this),null!==this._timelineData){var e=this._animationData.frameFloatOffset+this._frameValueOffset+this._frameIndex*this._valueCount,i=this._armature._armatureData.scale,n=this._frameFloatArray;if(2===this._tweenState){var r=e+this._valueCount;this._frameIndex===this._frameCount-1&&(r=this._animationData.frameFloatOffset+this._frameValueOffset);for(var s=0;s<this._valueCount;++s)this._delta[s]=n[r+s]*i-(this._current[s]=n[e+s]*i)}else for(s=0;s<this._valueCount;++s)this._current[s]=n[e+s]*i}else for(s=0;s<this._valueCount;++s)this._current[s]=0},e.prototype._onUpdateFrame=function(){t.prototype._onUpdateFrame.call(this),this._dirty=!0,2!==this._tweenState&&(this._tweenState=0);for(var e=0;e<this._valueCount;++e)this._result[e]=this._current[e]+this._delta[e]*this._tweenProgress},e.prototype.init=function(e,i,n){if(t.prototype.init.call(this,e,i,n),null!==this._timelineData){var r=this._animationData.frameIntOffset+this._timelineArray[this._timelineData.offset+3];this.vertexOffset=this._frameIntArray[r+0],this.vertexOffset<0&&(this.vertexOffset+=65536),this._deformCount=this._frameIntArray[r+1],this._valueCount=this._frameIntArray[r+2],this._valueOffset=this._frameIntArray[r+3],this._frameFloatOffset=this._frameIntArray[r+4]+this._animationData.frameFloatOffset}else{var s=this.slot._deformVertices;this._deformCount=null!==s?s.vertices.length:0,this._valueCount=this._deformCount,this._valueOffset=0,this._frameFloatOffset=0}this._current.length=this._valueCount,this._delta.length=this._valueCount,this._result.length=this._valueCount;for(var a=0;a<this._valueCount;++a)this._delta[a]=0},e.prototype.fadeOut=function(){this._tweenState=0,this._dirty=!1},e.prototype.update=function(e){var i=this.slot._deformVertices;if(null!==i&&null!==i.verticesData&&i.verticesData.offset===this.vertexOffset&&(t.prototype.update.call(this,e),0!==this._tweenState||this._dirty)){var n=i.vertices;if(0!==this._animationState._fadeState||0!==this._animationState._subFadeState){for(var r=Math.pow(this._animationState._fadeProgress,2),s=0;s<this._deformCount;++s)s<this._valueOffset?n[s]+=(this._frameFloatArray[this._frameFloatOffset+s]-n[s])*r:s<this._valueOffset+this._valueCount?n[s]+=(this._result[s-this._valueOffset]-n[s])*r:n[s]+=(this._frameFloatArray[this._frameFloatOffset+s-this._valueCount]-n[s])*r;i.verticesDirty=!0}else if(this._dirty){for(this._dirty=!1,s=0;s<this._deformCount;++s)s<this._valueOffset?n[s]=this._frameFloatArray[this._frameFloatOffset+s]:s<this._valueOffset+this._valueCount?n[s]=this._result[s-this._valueOffset]:n[s]=this._frameFloatArray[this._frameFloatOffset+s-this._valueCount];i.verticesDirty=!0}}},e}(t.SlotTimelineState);t.DeformTimelineState=l;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.toString=function(){return"[class dragonBones.IKConstraintTimelineState]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this._current=0,this._delta=0},e.prototype._onArriveAtFrame=function(){t.prototype._onArriveAtFrame.call(this);var e=this.constraint;if(null!==this._timelineData){var i=this._animationData.frameIntOffset+this._frameValueOffset+2*this._frameIndex,n=this._frameIntArray,r=0!==n[i++];this._current=.01*n[i++],2===this._tweenState?(this._frameIndex===this._frameCount-1&&(i=this._animationData.frameIntOffset+this._frameValueOffset),this._delta=.01*n[i+1]-this._current):this._delta=0,e._bendPositive=r}else{var s=e._constraintData;this._current=s.weight,this._delta=0,e._bendPositive=s.bendPositive}e.invalidUpdate()},e.prototype._onUpdateFrame=function(){t.prototype._onUpdateFrame.call(this),2!==this._tweenState&&(this._tweenState=0);var e=this.constraint;e._weight=this._current+this._delta*this._tweenProgress,e.invalidUpdate()},e}(t.ConstraintTimelineState);t.IKConstraintTimelineState=c;var _=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._floats=[0,0,0,0,0,0],e}return Cst(e,t),e.toString=function(){return"[class dragonBones.AnimationTimelineState]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.animationState=null},e.prototype._onArriveAtFrame=function(){if(t.prototype._onArriveAtFrame.call(this),null!==this._timelineData){var e=this._animationData.frameIntOffset+this._frameValueOffset+2*this._frameIndex,i=1/this.animationState._animationData.parent.frameRate,n=this._frameIntArray;this._floats[0]=n[e++]*i,this._floats[3]=.01*n[e++],2===this._tweenState?(this._frameIndex===this._frameCount-1&&(e=this._animationData.frameIntOffset+this._frameValueOffset),this._floats[1]=n[e++]*i-this._floats[0],this._floats[4]=.01*n[e++]-this._floats[3]):(this._floats[1]=0,this._floats[4]=0)}},e.prototype._onUpdateFrame=function(){t.prototype._onUpdateFrame.call(this),2!==this._tweenState&&(this._tweenState=0),this._floats[0]>=0&&(this._floats[2]=this._floats[0]+this._floats[1]*this._tweenProgress),this._floats[5]=this._floats[3]+this._floats[4]*this._tweenProgress},e.prototype.blend=function(t){var e=this.animationState,i=e._blendState.blendWeight;2===t?(e.weight+=this._floats[5]*i,e.currentTime+=this._floats[2]*i):(e.weight=this._floats[5]*i,e.currentTime=this._floats[2]*i)},e}(t.TweenTimelineState);t.AnimationTimelineState=_}(xst||(xst={})),function(t){var e=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return Cst(e,t),e.actionDataToInstance=function(t,i,n){0===t.type?i.type=e.FRAME_EVENT:i.type=10===t.type?e.FRAME_EVENT:e.SOUND_EVENT,i.name=t.name,i.armature=n,i.actionData=t,i.data=t.data,null!==t.bone&&(i.bone=n.getBone(t.bone.name)),null!==t.slot&&(i.slot=n.getSlot(t.slot.name))},e.toString=function(){return"[class dragonBones.EventObject]"},e.prototype._onClear=function(){this.time=0,this.type="",this.name="",this.armature=null,this.bone=null,this.slot=null,this.animationState=null,this.actionData=null,this.data=null},e.START="start",e.LOOP_COMPLETE="loopComplete",e.COMPLETE="complete",e.FADE_IN="fadeIn",e.FADE_IN_COMPLETE="fadeInComplete",e.FADE_OUT="fadeOut",e.FADE_OUT_COMPLETE="fadeOutComplete",e.FRAME_EVENT="frameEvent",e.SOUND_EVENT="soundEvent",e}(t.BaseObject);t.EventObject=e}(xst||(xst={})),function(t){var e=function(){function e(){}return e._getArmatureType=function(t){switch(t.toLowerCase()){case"stage":return 2;case"armature":return 0;case"movieclip":return 1;default:return 0}},e._getBoneType=function(t){switch(t.toLowerCase()){case"bone":return 0;case"surface":return 1;default:return 0}},e._getDisplayType=function(t){switch(t.toLowerCase()){case"image":return 0;case"mesh":return 2;case"armature":return 1;case"boundingbox":return 3;case"path":return 4;default:return 0}},e._getBoundingBoxType=function(t){switch(t.toLowerCase()){case"rectangle":return 0;case"ellipse":return 1;case"polygon":return 2;default:return 0}},e._getActionType=function(t){switch(t.toLowerCase()){case"play":return 0;case"frame":return 10;case"sound":return 11;default:return 0}},e._getBlendMode=function(t){switch(t.toLowerCase()){case"normal":return 0;case"add":return 1;case"alpha":return 2;case"darken":return 3;case"difference":return 4;case"erase":return 5;case"hardlight":return 6;case"invert":return 7;case"layer":return 8;case"lighten":return 9;case"multiply":return 10;case"overlay":return 11;case"screen":return 12;case"subtract":return 13;default:return 0}},e._getPositionMode=function(t){switch(t.toLocaleLowerCase()){case"percent":return 1;case"fixed":return 0;default:return 1}},e._getSpacingMode=function(t){switch(t.toLocaleLowerCase()){case"length":return 0;case"percent":return 2;case"fixed":return 1;default:return 0}},e._getRotateMode=function(t){switch(t.toLocaleLowerCase()){case"tangent":return 0;case"chain":return 1;case"chainscale":return 2;default:return 0}},e.parseDragonBonesData=function(e){return console.warn("Deprecated."),e instanceof ArrayBuffer?t.BinaryDataParser.getInstance().parseDragonBonesData(e):t.ObjectDataParser.getInstance().parseDragonBonesData(e)},e.parseTextureAtlasData=function(i,n){void 0===n&&(n=1),console.warn("已废弃");for(var r={},s=i[e.SUB_TEXTURE],a=0,o=s.length;a<o;a++){var h=s[a],u=h[e.NAME],l=new t.Rectangle,c=null;l.x=h[e.X]/n,l.y=h[e.Y]/n,l.width=h[e.WIDTH]/n,l.height=h[e.HEIGHT]/n,e.FRAME_WIDTH in h&&((c=new t.Rectangle).x=h[e.FRAME_X]/n,c.y=h[e.FRAME_Y]/n,c.width=h[e.FRAME_WIDTH]/n,c.height=h[e.FRAME_HEIGHT]/n),r[u]={region:l,frame:c,rotated:!1}}return r},e.DATA_VERSION_2_3="2.3",e.DATA_VERSION_3_0="3.0",e.DATA_VERSION_4_0="4.0",e.DATA_VERSION_4_5="4.5",e.DATA_VERSION_5_0="5.0",e.DATA_VERSION_5_5="5.5",e.DATA_VERSION=e.DATA_VERSION_5_5,e.DATA_VERSIONS=[e.DATA_VERSION_4_0,e.DATA_VERSION_4_5,e.DATA_VERSION_5_0,e.DATA_VERSION_5_5],e.TEXTURE_ATLAS="textureAtlas",e.SUB_TEXTURE="SubTexture",e.FORMAT="format",e.IMAGE_PATH="imagePath",e.WIDTH="width",e.HEIGHT="height",e.ROTATED="rotated",e.FRAME_X="frameX",e.FRAME_Y="frameY",e.FRAME_WIDTH="frameWidth",e.FRAME_HEIGHT="frameHeight",e.DRADON_BONES="dragonBones",e.USER_DATA="userData",e.ARMATURE="armature",e.BONE="bone",e.SURFACE="surface",e.SLOT="slot",e.CONSTRAINT="constraint",e.IK="ik",e.PATH_CONSTRAINT="path",e.SKIN="skin",e.DISPLAY="display",e.ANIMATION="animation",e.Z_ORDER="zOrder",e.FFD="ffd",e.FRAME="frame",e.TRANSLATE_FRAME="translateFrame",e.ROTATE_FRAME="rotateFrame",e.SCALE_FRAME="scaleFrame",e.DISPLAY_FRAME="displayFrame",e.COLOR_FRAME="colorFrame",e.DEFAULT_ACTIONS="defaultActions",e.ACTIONS="actions",e.EVENTS="events",e.INTS="ints",e.FLOATS="floats",e.STRINGS="strings",e.CANVAS="canvas",e.TRANSFORM="transform",e.PIVOT="pivot",e.AABB="aabb",e.COLOR="color",e.VERSION="version",e.COMPATIBLE_VERSION="compatibleVersion",e.FRAME_RATE="frameRate",e.TYPE="type",e.SUB_TYPE="subType",e.NAME="name",e.PARENT="parent",e.TARGET="target",e.STAGE="stage",e.SHARE="share",e.PATH="path",e.LENGTH="length",e.DISPLAY_INDEX="displayIndex",e.BLEND_MODE="blendMode",e.INHERIT_TRANSLATION="inheritTranslation",e.INHERIT_ROTATION="inheritRotation",e.INHERIT_SCALE="inheritScale",e.INHERIT_REFLECTION="inheritReflection",e.INHERIT_ANIMATION="inheritAnimation",e.INHERIT_DEFORM="inheritDeform",e.SEGMENT_X="segmentX",e.SEGMENT_Y="segmentY",e.BEND_POSITIVE="bendPositive",e.CHAIN="chain",e.WEIGHT="weight",e.FADE_IN_TIME="fadeInTime",e.PLAY_TIMES="playTimes",e.SCALE="scale",e.OFFSET="offset",e.POSITION="position",e.DURATION="duration",e.TWEEN_EASING="tweenEasing",e.TWEEN_ROTATE="tweenRotate",e.TWEEN_SCALE="tweenScale",e.CLOCK_WISE="clockwise",e.CURVE="curve",e.SOUND="sound",e.EVENT="event",e.ACTION="action",e.X="x",e.Y="y",e.SKEW_X="skX",e.SKEW_Y="skY",e.SCALE_X="scX",e.SCALE_Y="scY",e.VALUE="value",e.ROTATE="rotate",e.SKEW="skew",e.ALPHA_OFFSET="aO",e.RED_OFFSET="rO",e.GREEN_OFFSET="gO",e.BLUE_OFFSET="bO",e.ALPHA_MULTIPLIER="aM",e.RED_MULTIPLIER="rM",e.GREEN_MULTIPLIER="gM",e.BLUE_MULTIPLIER="bM",e.UVS="uvs",e.VERTICES="vertices",e.TRIANGLES="triangles",e.WEIGHTS="weights",e.SLOT_POSE="slotPose",e.BONE_POSE="bonePose",e.GLUE_WEIGHTS="glueWeights",e.GLUE_MESHES="glueMeshes",e.BONES="bones",e.POSITION_MODE="positionMode",e.SPACING_MODE="spacingMode",e.ROTATE_MODE="rotateMode",e.SPACING="spacing",e.ROTATE_OFFSET="rotateOffset",e.ROTATE_MIX="rotateMix",e.TRANSLATE_MIX="translateMix",e.TARGET_DISPLAY="targetDisplay",e.CLOSED="closed",e.CONSTANT_SPEED="constantSpeed",e.VERTEX_COUNT="vertexCount",e.LENGTHS="lengths",e.GOTO_AND_PLAY="gotoAndPlay",e.DEFAULT_NAME="default",e}();t.DataParser=e}(xst||(xst={})),function(t){var e=function(e){function n(){var i=null!==e&&e.apply(this,arguments)||this;return i._rawTextureAtlasIndex=0,i._rawBones=[],i._data=null,i._armature=null,i._bone=null,i._surface=null,i._slot=null,i._skin=null,i._mesh=null,i._animation=null,i._timeline=null,i._rawTextureAtlases=null,i._defaultColorOffset=-1,i._prevClockwise=0,i._prevRotation=0,i._helpMatrixA=new t.Matrix,i._helpMatrixB=new t.Matrix,i._helpTransform=new t.Transform,i._helpColorTransform=new t.ColorTransform,i._helpPoint=new t.Point,i._helpArray=[],i._intArray=[],i._floatArray=[],i._frameIntArray=[],i._frameFloatArray=[],i._frameArray=[],i._timelineArray=[],i._cacheRawMeshes=[],i._cacheMeshes=[],i._actionFrames=[],i._weightSlotPose={},i._weightBonePoses={},i._cacheBones={},i._slotChildActions={},i}return Cst(n,e),n._getBoolean=function(t,e,i){if(e in t){var n=t[e],r=typeof n;if("boolean"===r)return n;if("string"!==r)return!!n;switch(n){case"0":case"NaN":case"":case"false":case"null":case"undefined":return!1;default:return!0}}return i},n._getNumber=function(t,e,i){if(e in t){var n=t[e];return null===n||"NaN"===n?i:+n||0}return i},n._getString=function(e,i,n){if(i in e){var r=e[i];if("string"==typeof r){if(t.DragonBones.webAssembly)for(var s=0,a=r.length;s<a;++s)if(r.charCodeAt(s)>255)return encodeURI(r);return r}return String(r)}return n},n.prototype._getCurvePoint=function(t,e,i,n,r,s,a,o,h,u){var l=1-h,c=l*l,_=h*h,f=l*c,d=3*h*c,p=3*l*_,m=h*_;u.x=f*t+d*i+p*r+m*a,u.y=f*e+d*n+p*s+m*o},n.prototype._samplingEasingCurve=function(t,e){for(var i=t.length,n=-2,r=0,s=e.length;r<s;++r){for(var a=(r+1)/(s+1);(n+6<i?t[n+6]:1)<a;)n+=6;for(var o=n>=0&&n+6<i,h=o?t[n]:0,u=o?t[n+1]:0,l=t[n+2],c=t[n+3],_=t[n+4],f=t[n+5],d=o?t[n+6]:1,p=o?t[n+7]:1,m=0,g=1;g-m>1e-4;){var v=.5*(g+m);this._getCurvePoint(h,u,l,c,_,f,d,p,v,this._helpPoint),a-this._helpPoint.x>0?m=v:g=v}e[r]=this._helpPoint.y}},n.prototype._parseActionDataInFrame=function(e,i,n,r){t.DataParser.EVENT in e&&this._mergeActionFrame(e[t.DataParser.EVENT],i,10,n,r),t.DataParser.SOUND in e&&this._mergeActionFrame(e[t.DataParser.SOUND],i,11,n,r),t.DataParser.ACTION in e&&this._mergeActionFrame(e[t.DataParser.ACTION],i,0,n,r),t.DataParser.EVENTS in e&&this._mergeActionFrame(e[t.DataParser.EVENTS],i,10,n,r),t.DataParser.ACTIONS in e&&this._mergeActionFrame(e[t.DataParser.ACTIONS],i,0,n,r)},n.prototype._mergeActionFrame=function(e,n,r,s,a){for(var o=t.DragonBones.webAssembly?this._armature.actions.size():this._armature.actions.length,h=this._parseActionData(e,r,s,a),u=0,l=null,c=0,_=h;c<_.length;c++){var f=_[c];this._armature.addAction(f,!1)}0===this._actionFrames.length&&((l=new i).frameStart=0,this._actionFrames.push(l),l=null);for(var d=0,p=this._actionFrames;d<p.length;d++){var m=p[d];if(m.frameStart===n){l=m;break}if(m.frameStart>n)break;u++}null===l&&((l=new i).frameStart=n,this._actionFrames.splice(u+1,0,l));for(var g=0;g<h.length;++g)l.actions.push(o+g)},n.prototype._parseArmature=function(e,i){var r=t.BaseObject.borrowObject(t.ArmatureData);if(r.name=n._getString(e,t.DataParser.NAME,""),r.frameRate=n._getNumber(e,t.DataParser.FRAME_RATE,this._data.frameRate),r.scale=i,t.DataParser.TYPE in e&&"string"==typeof e[t.DataParser.TYPE]?r.type=t.DataParser._getArmatureType(e[t.DataParser.TYPE]):r.type=n._getNumber(e,t.DataParser.TYPE,0),0===r.frameRate&&(r.frameRate=24),this._armature=r,t.DataParser.CANVAS in e){var s=e[t.DataParser.CANVAS],a=t.BaseObject.borrowObject(t.CanvasData);t.DataParser.COLOR in s?a.hasBackground=!0:a.hasBackground=!1,a.color=n._getNumber(s,t.DataParser.COLOR,0),a.x=n._getNumber(s,t.DataParser.X,0)*r.scale,a.y=n._getNumber(s,t.DataParser.Y,0)*r.scale,a.width=n._getNumber(s,t.DataParser.WIDTH,0)*r.scale,a.height=n._getNumber(s,t.DataParser.HEIGHT,0)*r.scale,r.canvas=a}if(t.DataParser.AABB in e){var o=e[t.DataParser.AABB];r.aabb.x=n._getNumber(o,t.DataParser.X,0)*r.scale,r.aabb.y=n._getNumber(o,t.DataParser.Y,0)*r.scale,r.aabb.width=n._getNumber(o,t.DataParser.WIDTH,0)*r.scale,r.aabb.height=n._getNumber(o,t.DataParser.HEIGHT,0)*r.scale}if(t.DataParser.BONE in e)for(var h=0,u=e[t.DataParser.BONE];h<u.length;h++){var l=u[h],c=n._getString(l,t.DataParser.PARENT,""),_=this._parseBone(l);if(c.length>0){var f=r.getBone(c);null!==f?_.parent=f:(c in this._cacheBones||(this._cacheBones[c]=[]),this._cacheBones[c].push(_))}if(_.name in this._cacheBones){for(var d=0,p=this._cacheBones[_.name];d<p.length;d++)p[d].parent=_;delete this._cacheBones[_.name]}r.addBone(_),this._rawBones.push(_)}if(t.DataParser.IK in e)for(var m=0,g=e[t.DataParser.IK];m<g.length;m++){var v=g[m];(R=this._parseIKConstraint(v))&&r.addConstraint(R)}if(r.sortBones(),t.DataParser.SLOT in e)for(var y=0,S=0,T=e[t.DataParser.SLOT];S<T.length;S++){var A=T[S];r.addSlot(this._parseSlot(A,y++))}if(t.DataParser.SKIN in e)for(var b=0,E=e[t.DataParser.SKIN];b<E.length;b++){var C=E[b];r.addSkin(this._parseSkin(C))}if(t.DataParser.PATH_CONSTRAINT in e)for(var x=0,w=e[t.DataParser.PATH_CONSTRAINT];x<w.length;x++){var R,I=w[x];(R=this._parsePathConstraint(I))&&r.addConstraint(R)}for(var D=0,B=this._cacheRawMeshes.length;D<B;++D){var M=this._cacheRawMeshes[D];t.DataParser.GLUE_WEIGHTS in M&&t.DataParser.GLUE_MESHES in M&&this._parseMeshGlue(M,this._cacheMeshes[D])}for(D=0,B=this._cacheRawMeshes.length;D<B;++D){var P=this._cacheRawMeshes[D],O=n._getString(P,t.DataParser.SHARE,"");if(0!==O.length){var L=n._getString(P,t.DataParser.SKIN,t.DataParser.DEFAULT_NAME);0===L.length&&(L=t.DataParser.DEFAULT_NAME);var N=r.getMesh(L,"",O);null!==N&&this._cacheMeshes[D].vertices.shareFrom(N.vertices)}}if(t.DataParser.ANIMATION in e)for(var F=0,k=e[t.DataParser.ANIMATION];F<k.length;F++){var G=k[F],V=this._parseAnimation(G);r.addAnimation(V)}if(t.DataParser.DEFAULT_ACTIONS in e)for(var U=0,z=this._parseActionData(e[t.DataParser.DEFAULT_ACTIONS],0,null,null);U<z.length;U++){var H=z[U];r.addAction(H,!0),0===H.type&&null!==(V=r.getAnimation(H.name))&&(r.defaultAnimation=V)}if(t.DataParser.ACTIONS in e)for(var W=0,X=this._parseActionData(e[t.DataParser.ACTIONS],0,null,null);W<X.length;W++)H=X[W],r.addAction(H,!1);for(var j in this._rawBones.length=0,this._cacheRawMeshes.length=0,this._cacheMeshes.length=0,this._armature=null,this._weightSlotPose)delete this._weightSlotPose[j];for(var j in this._weightBonePoses)delete this._weightBonePoses[j];for(var j in this._cacheBones)delete this._cacheBones[j];for(var j in this._slotChildActions)delete this._slotChildActions[j];return r},n.prototype._parseBone=function(e){var i=this._armature.scale;if(0===(t.DataParser.TYPE in e&&"string"==typeof e[t.DataParser.TYPE]?t.DataParser._getBoneType(e[t.DataParser.TYPE]):n._getNumber(e,t.DataParser.TYPE,0))){var r=t.BaseObject.borrowObject(t.BoneData);return r.inheritTranslation=n._getBoolean(e,t.DataParser.INHERIT_TRANSLATION,!0),r.inheritRotation=n._getBoolean(e,t.DataParser.INHERIT_ROTATION,!0),r.inheritScale=n._getBoolean(e,t.DataParser.INHERIT_SCALE,!0),r.inheritReflection=n._getBoolean(e,t.DataParser.INHERIT_REFLECTION,!0),r.length=n._getNumber(e,t.DataParser.LENGTH,0)*i,r.name=n._getString(e,t.DataParser.NAME,""),t.DataParser.TRANSFORM in e&&this._parseTransform(e[t.DataParser.TRANSFORM],r.transform,i),r}var s=t.BaseObject.borrowObject(t.SurfaceData);if(s.name=n._getString(e,t.DataParser.NAME,""),s.segmentX=n._getNumber(e,t.DataParser.SEGMENT_X,0),s.segmentY=n._getNumber(e,t.DataParser.SEGMENT_Y,0),s.vertices.length=(s.segmentX+1)*(s.segmentY+1)*2,t.DataParser.VERTICES in e)for(var a=e[t.DataParser.VERTICES],o=0,h=s.vertices.length;o<h;++o)o<a.length?s.vertices[o]=a[o]*i:s.vertices[o]=0;return s},n.prototype._parseIKConstraint=function(e){var i=this._armature.getBone(n._getString(e,t.DataParser.BONE,""));if(null===i)return null;var r=this._armature.getBone(n._getString(e,t.DataParser.TARGET,""));if(null===r)return null;var s=t.BaseObject.borrowObject(t.IKConstraintData);return s.scaleEnabled=n._getBoolean(e,t.DataParser.SCALE,!1),s.bendPositive=n._getBoolean(e,t.DataParser.BEND_POSITIVE,!0),s.weight=n._getNumber(e,t.DataParser.WEIGHT,1),s.name=n._getString(e,t.DataParser.NAME,""),s.type=0,s.target=r,n._getNumber(e,t.DataParser.CHAIN,0)>0&&null!==i.parent?(s.root=i.parent,s.bone=i):(s.root=i,s.bone=null),s},n.prototype._parsePathConstraint=function(e){var i=this._armature.getSlot(n._getString(e,t.DataParser.TARGET,""));if(null===i)return null;var r=this._armature.defaultSkin;if(null===r)return null;var s=r.getDisplay(i.name,n._getString(e,t.DataParser.TARGET_DISPLAY,i.name));if(null===s||!(s instanceof t.PathDisplayData))return null;var a=e[t.DataParser.BONES];if(null===a||0===a.length)return null;var o=t.BaseObject.borrowObject(t.PathConstraintData);o.name=n._getString(e,t.DataParser.NAME,""),o.type=1,o.pathSlot=i,o.pathDisplayData=s,o.target=i.parent,o.positionMode=t.DataParser._getPositionMode(n._getString(e,t.DataParser.POSITION_MODE,"")),o.spacingMode=t.DataParser._getSpacingMode(n._getString(e,t.DataParser.SPACING_MODE,"")),o.rotateMode=t.DataParser._getRotateMode(n._getString(e,t.DataParser.ROTATE_MODE,"")),o.position=n._getNumber(e,t.DataParser.POSITION,0),o.spacing=n._getNumber(e,t.DataParser.SPACING,0),o.rotateOffset=n._getNumber(e,t.DataParser.ROTATE_OFFSET,0),o.rotateMix=n._getNumber(e,t.DataParser.ROTATE_MIX,1),o.translateMix=n._getNumber(e,t.DataParser.TRANSLATE_MIX,1);for(var h=0,u=a;h<u.length;h++){var l=u[h],c=this._armature.getBone(l);null!==c&&(o.AddBone(c),null===o.root&&(o.root=c))}return o},n.prototype._parseSlot=function(e,i){var r=t.BaseObject.borrowObject(t.SlotData);return r.displayIndex=n._getNumber(e,t.DataParser.DISPLAY_INDEX,0),r.zOrder=i,r.name=n._getString(e,t.DataParser.NAME,""),r.parent=this._armature.getBone(n._getString(e,t.DataParser.PARENT,"")),t.DataParser.BLEND_MODE in e&&"string"==typeof e[t.DataParser.BLEND_MODE]?r.blendMode=t.DataParser._getBlendMode(e[t.DataParser.BLEND_MODE]):r.blendMode=n._getNumber(e,t.DataParser.BLEND_MODE,0),t.DataParser.COLOR in e?(r.color=t.SlotData.createColor(),this._parseColorTransform(e[t.DataParser.COLOR],r.color)):r.color=t.SlotData.DEFAULT_COLOR,t.DataParser.ACTIONS in e&&(this._slotChildActions[r.name]=this._parseActionData(e[t.DataParser.ACTIONS],0,null,null)),r},n.prototype._parseSkin=function(e){var i=t.BaseObject.borrowObject(t.SkinData);if(i.name=n._getString(e,t.DataParser.NAME,t.DataParser.DEFAULT_NAME),0===i.name.length&&(i.name=t.DataParser.DEFAULT_NAME),t.DataParser.SLOT in e){var r=e[t.DataParser.SLOT];this._skin=i;for(var s=0,a=r;s<a.length;s++){var o=a[s],h=n._getString(o,t.DataParser.NAME,""),u=this._armature.getSlot(h);if(null!==u){if(this._slot=u,t.DataParser.DISPLAY in o)for(var l=0,c=o[t.DataParser.DISPLAY];l<c.length;l++){var _=c[l];_?i.addDisplay(h,this._parseDisplay(_)):i.addDisplay(h,null)}this._slot=null}}this._skin=null}return i},n.prototype._parseDisplay=function(e){var i=n._getString(e,t.DataParser.NAME,""),r=n._getString(e,t.DataParser.PATH,""),s=0,a=null;switch(s=t.DataParser.TYPE in e&&"string"==typeof e[t.DataParser.TYPE]?t.DataParser._getDisplayType(e[t.DataParser.TYPE]):n._getNumber(e,t.DataParser.TYPE,s)){case 0:var o=a=t.BaseObject.borrowObject(t.ImageDisplayData);o.name=i,o.path=r.length>0?r:i,this._parsePivot(e,o);break;case 1:var h=a=t.BaseObject.borrowObject(t.ArmatureDisplayData);if(h.name=i,h.path=r.length>0?r:i,h.inheritAnimation=!0,t.DataParser.ACTIONS in e)for(var u=0,l=this._parseActionData(e[t.DataParser.ACTIONS],0,null,null);u<l.length;u++){var c=l[u];h.addAction(c)}else if(this._slot.name in this._slotChildActions){var _=this._skin.getDisplays(this._slot.name);if(null===_?0===this._slot.displayIndex:this._slot.displayIndex===_.length){for(var f=0,d=this._slotChildActions[this._slot.name];f<d.length;f++)c=d[f],h.addAction(c);delete this._slotChildActions[this._slot.name]}}break;case 2:var p=a=t.BaseObject.borrowObject(t.MeshDisplayData);p.vertices.inheritDeform=n._getBoolean(e,t.DataParser.INHERIT_DEFORM,!0),p.name=i,p.path=r.length>0?r:i,p.vertices.data=this._data,t.DataParser.SHARE in e?(this._cacheRawMeshes.push(e),this._cacheMeshes.push(p)):this._parseMesh(e,p),t.DataParser.GLUE_WEIGHTS in e&&t.DataParser.GLUE_MESHES in e&&(this._cacheRawMeshes.push(e),this._cacheMeshes.push(p));break;case 3:var m=this._parseBoundingBox(e);if(null!==m){var g=a=t.BaseObject.borrowObject(t.BoundingBoxDisplayData);g.name=i,g.path=r.length>0?r:i,g.boundingBox=m}break;case 4:var v=e[t.DataParser.LENGTHS],y=a=t.BaseObject.borrowObject(t.PathDisplayData);y.closed=n._getBoolean(e,t.DataParser.CLOSED,!1),y.constantSpeed=n._getBoolean(e,t.DataParser.CONSTANT_SPEED,!1),y.name=i,y.path=r.length>0?r:i,y.vertices.data=this._data,y.curveLengths.length=v.length;for(var S=0,T=v.length;S<T;++S)y.curveLengths[S]=v[S];this._parsePath(e,y)}return null!==a&&t.DataParser.TRANSFORM in e&&this._parseTransform(e[t.DataParser.TRANSFORM],a.transform,this._armature.scale),a},n.prototype._parsePath=function(e,i){var r=e[t.DataParser.VERTICES],s=n._getNumber(e,t.DataParser.VERTEX_COUNT,0),a=this._floatArray.length,o=this._intArray.length;if(i.vertices.offset=o,this._intArray.length+=2,this._intArray[o+0]=s,this._intArray[o+2]=a,t.DataParser.WEIGHTS in e){var h=e[t.DataParser.WEIGHTS],u=e[t.DataParser.BONES],l=u.length,c=Math.floor(h.length-s)/2,_=this._intArray.length,f=this._floatArray.length,d=this._armature.sortedBones,p=t.BaseObject.borrowObject(t.WeightData);for(p.count=c,p.offset=_,this._intArray.length+=2+l+s+c,this._intArray[_+0]=l,this._intArray[_+1]=f,R=0;R<l;R++){var m=u[R],g=this._rawBones[m];p.addBone(g),this._intArray[_+2+R]=d.indexOf(g)}this._floatArray.length+=3*c,R=0;for(var v=0,y=0,S=_+2+l,T=f;R<c;R++){var A=h[v++];this._intArray[S++]=A;for(var b=0;b<A;b++){var E=h[v++],C=h[v++],x=r[y++],w=r[y++];this._intArray[S++]=u.indexOf(E),this._floatArray[T++]=C,this._floatArray[T++]=x,this._floatArray[T++]=w}}i.vertices.weight=p}else{this._floatArray.length+=r.length;for(var R=0,I=r.length;R<I;++R)this._floatArray[a+R]=r[R]}},n.prototype._parsePivot=function(e,i){if(t.DataParser.PIVOT in e){var r=e[t.DataParser.PIVOT];i.pivot.x=n._getNumber(r,t.DataParser.X,0),i.pivot.y=n._getNumber(r,t.DataParser.Y,0)}else i.pivot.x=.5,i.pivot.y=.5},n.prototype._parseMesh=function(e,i){var n=e[t.DataParser.VERTICES],r=e[t.DataParser.UVS],s=e[t.DataParser.TRIANGLES],a=Math.floor(n.length/2),o=Math.floor(s.length/3),h=this._floatArray.length,u=h+2*a,l=this._intArray.length,c=this._skin.name+"_"+this._slot.name+"_"+i.name;i.vertices.offset=l,this._intArray.length+=4+3*o,this._intArray[l+0]=a,this._intArray[l+1]=o,this._intArray[l+2]=h;for(var _=0,f=3*o;_<f;++_)this._intArray[l+4+_]=s[_];for(this._floatArray.length+=2*a+2*a,_=0,f=2*a;_<f;++_)this._floatArray[h+_]=n[_],this._floatArray[u+_]=r[_];if(t.DataParser.WEIGHTS in e){var d=e[t.DataParser.WEIGHTS],p=e[t.DataParser.SLOT_POSE],m=e[t.DataParser.BONE_POSE],g=this._armature.sortedBones,v=new Array,y=Math.floor(m.length/7),S=this._floatArray.length,T=Math.floor(d.length-a)/2,A=this._intArray.length,b=t.BaseObject.borrowObject(t.WeightData);for(b.count=T,b.offset=A,v.length=y,this._intArray.length+=2+y+a+T,this._intArray[A+1]=S,_=0;_<y;++_){var E=m[7*_],C=this._rawBones[E];b.addBone(C),v[_]=E,this._intArray[A+2+_]=g.indexOf(C)}this._floatArray.length+=3*T,this._helpMatrixA.copyFromArray(p,0),_=0;for(var x=0,w=A+2+y,R=S;_<a;++_){var I=2*_,D=this._intArray[w++]=d[x++],B=this._floatArray[h+I],M=this._floatArray[h+I+1];this._helpMatrixA.transformPoint(B,M,this._helpPoint),B=this._helpPoint.x,M=this._helpPoint.y;for(var P=0;P<D;++P){E=d[x++];var O=v.indexOf(E);this._helpMatrixB.copyFromArray(m,7*O+1),this._helpMatrixB.invert(),this._helpMatrixB.transformPoint(B,M,this._helpPoint),this._intArray[w++]=O,this._floatArray[R++]=d[x++],this._floatArray[R++]=this._helpPoint.x,this._floatArray[R++]=this._helpPoint.y}}i.vertices.weight=b,this._weightSlotPose[c]=p,this._weightBonePoses[c]=m}},n.prototype._parseMeshGlue=function(){},n.prototype._parseBoundingBox=function(e){var i=null,r=0;switch(r=t.DataParser.SUB_TYPE in e&&"string"==typeof e[t.DataParser.SUB_TYPE]?t.DataParser._getBoundingBoxType(e[t.DataParser.SUB_TYPE]):n._getNumber(e,t.DataParser.SUB_TYPE,r)){case 0:i=t.BaseObject.borrowObject(t.RectangleBoundingBoxData);break;case 1:i=t.BaseObject.borrowObject(t.EllipseBoundingBoxData);break;case 2:i=this._parsePolygonBoundingBox(e)}return null!==i&&(i.color=n._getNumber(e,t.DataParser.COLOR,0),0!==i.type&&1!==i.type||(i.width=n._getNumber(e,t.DataParser.WIDTH,0),i.height=n._getNumber(e,t.DataParser.HEIGHT,0))),i},n.prototype._parsePolygonBoundingBox=function(e){var i=t.BaseObject.borrowObject(t.PolygonBoundingBoxData);if(t.DataParser.VERTICES in e){var n=this._armature.scale,r=e[t.DataParser.VERTICES],s=i.vertices;t.DragonBones.webAssembly?s.resize(r.length,0):s.length=r.length;for(var a=0,o=r.length;a<o;a+=2){var h=r[a]*n,u=r[a+1]*n;t.DragonBones.webAssembly?(s.set(a,h),s.set(a+1,u)):(s[a]=h,s[a+1]=u),0===a?(i.x=h,i.y=u,i.width=h,i.height=u):(h<i.x?i.x=h:h>i.width&&(i.width=h),u<i.y?i.y=u:u>i.height&&(i.height=u))}i.width-=i.x,i.height-=i.y}else console.warn("Data error.\n Please reexport DragonBones Data to fixed the bug.");return i},n.prototype._parseAnimation=function(e){var i=t.BaseObject.borrowObject(t.AnimationData);if(i.frameCount=Math.max(n._getNumber(e,t.DataParser.DURATION,1),1),i.playTimes=n._getNumber(e,t.DataParser.PLAY_TIMES,1),i.duration=i.frameCount/this._armature.frameRate,i.fadeInTime=n._getNumber(e,t.DataParser.FADE_IN_TIME,0),i.scale=n._getNumber(e,t.DataParser.SCALE,1),i.name=n._getString(e,t.DataParser.NAME,t.DataParser.DEFAULT_NAME),0===i.name.length&&(i.name=t.DataParser.DEFAULT_NAME),i.frameIntOffset=this._frameIntArray.length,i.frameFloatOffset=this._frameFloatArray.length,i.frameOffset=this._frameArray.length,this._animation=i,t.DataParser.FRAME in e){var r=e[t.DataParser.FRAME],s=r.length;if(s>0)for(var a=0,o=0;a<s;++a){var h=r[a];this._parseActionDataInFrame(h,o,null,null),o+=n._getNumber(h,t.DataParser.DURATION,1)}}if(t.DataParser.Z_ORDER in e&&(this._animation.zOrderTimeline=this._parseTimeline(e[t.DataParser.Z_ORDER],null,t.DataParser.FRAME,1,!1,!1,0,this._parseZOrderFrame)),t.DataParser.BONE in e)for(var u=0,l=e[t.DataParser.BONE];u<l.length;u++){var c=l[u];this._parseBoneTimeline(c)}if(t.DataParser.SURFACE in e)for(var _=0,f=e[t.DataParser.SURFACE];_<f.length;_++){c=f[_];var d=n._getString(c,t.DataParser.NAME,"");this._surface=this._armature.getBone(d),null!==this._surface&&(null!==(R=this._parseTimeline(c,null,t.DataParser.FRAME,50,!1,!0,0,this._parseSurfaceFrame))&&this._animation.addSurfaceTimeline(this._surface,R),this._surface=null)}if(t.DataParser.SLOT in e)for(var p=0,m=e[t.DataParser.SLOT];p<m.length;p++)c=m[p],this._parseSlotTimeline(c);if(t.DataParser.FFD in e)for(var g=0,v=e[t.DataParser.FFD];g<v.length;g++){c=v[g];var y=n._getString(c,t.DataParser.SKIN,t.DataParser.DEFAULT_NAME),S=n._getString(c,t.DataParser.SLOT,""),T=n._getString(c,t.DataParser.NAME,"");0===y.length&&(y=t.DataParser.DEFAULT_NAME),this._slot=this._armature.getSlot(S),this._mesh=this._armature.getMesh(y,S,T),null!==this._slot&&null!==this._mesh&&(null!==(R=this._parseTimeline(c,null,t.DataParser.FRAME,22,!1,!0,0,this._parseSlotFFDFrame))&&this._animation.addSlotTimeline(this._slot,R),this._slot=null,this._mesh=null)}if(t.DataParser.IK in e)for(var A=0,b=e[t.DataParser.IK];A<b.length;A++){c=b[A];var E=n._getString(c,t.DataParser.NAME,""),C=this._armature.getConstraint(E);null!==C&&null!==(R=this._parseTimeline(c,null,t.DataParser.FRAME,30,!0,!1,2,this._parseIKConstraintFrame))&&this._animation.addConstraintTimeline(C,R)}if(t.DataParser.ANIMATION in e)for(var x=0,w=e[t.DataParser.ANIMATION];x<w.length;x++){c=w[x];var R,I=n._getString(c,t.DataParser.NAME,"");null!==(R=this._parseTimeline(c,null,t.DataParser.FRAME,40,!0,!1,2,this._parseAnimationFrame))&&this._animation.addAnimationTimeline(I,R)}return this._actionFrames.length>0&&(this._animation.actionTimeline=this._parseTimeline(null,this._actionFrames,"",0,!1,!1,0,this._parseActionFrame),this._actionFrames.length=0),this._animation=null,i},n.prototype._parseTimeline=function(e,r,s,a,o,h,u,l){if(null!==e&&s.length>0&&s in e&&(r=e[s]),null===r)return null;var c=r.length;if(0===c)return null;var _=this._frameIntArray.length,f=this._frameFloatArray.length,d=t.BaseObject.borrowObject(t.TimelineData),p=this._timelineArray.length;if(this._timelineArray.length+=5+c,null!==e?(this._timelineArray[p+0]=Math.round(100*n._getNumber(e,t.DataParser.SCALE,1)),this._timelineArray[p+1]=Math.round(100*n._getNumber(e,t.DataParser.OFFSET,0))):(this._timelineArray[p+0]=100,this._timelineArray[p+1]=0),this._timelineArray[p+2]=c,this._timelineArray[p+3]=u,this._timelineArray[p+4]=o?_-this._animation.frameIntOffset:h?f-this._animation.frameFloatOffset:0,this._timeline=d,d.type=a,d.offset=p,1===c)d.frameIndicesOffset=-1,this._timelineArray[p+5+0]=l.call(this,r[0],0,0)-this._animation.frameOffset;else{var m=this._animation.frameCount+1,g=this._data.frameIndices,v=0;t.DragonBones.webAssembly?(v=g.size(),g.resize(v+m,0)):(v=g.length,g.length+=m),d.frameIndicesOffset=v;for(var y=0,S=0,T=0,A=0;y<m;++y){if(T+A<=y&&S<c){var b=r[S];T=y,A=S===c-1?this._animation.frameCount-T:b instanceof i?this._actionFrames[S+1].frameStart-T:n._getNumber(b,t.DataParser.DURATION,1),this._timelineArray[p+5+S]=l.call(this,b,T,A)-this._animation.frameOffset,S++}t.DragonBones.webAssembly?g.set(v+y,S-1):g[v+y]=S-1}}return this._timeline=null,d},n.prototype._parseBoneTimeline=function(e){var i,r=this._armature.getBone(n._getString(e,t.DataParser.NAME,""));null!==r&&(this._bone=r,this._slot=this._armature.getSlot(this._bone.name),t.DataParser.TRANSLATE_FRAME in e&&null!==(i=this._parseTimeline(e,null,t.DataParser.TRANSLATE_FRAME,11,!1,!0,2,this._parseBoneTranslateFrame))&&this._animation.addBoneTimeline(r,i),t.DataParser.ROTATE_FRAME in e&&null!==(i=this._parseTimeline(e,null,t.DataParser.ROTATE_FRAME,12,!1,!0,2,this._parseBoneRotateFrame))&&this._animation.addBoneTimeline(r,i),t.DataParser.SCALE_FRAME in e&&null!==(i=this._parseTimeline(e,null,t.DataParser.SCALE_FRAME,13,!1,!0,2,this._parseBoneScaleFrame))&&this._animation.addBoneTimeline(r,i),t.DataParser.FRAME in e&&null!==(i=this._parseTimeline(e,null,t.DataParser.FRAME,10,!1,!0,6,this._parseBoneAllFrame))&&this._animation.addBoneTimeline(r,i),this._bone=null,this._slot=null)},n.prototype._parseSlotTimeline=function(e){var i=this._armature.getSlot(n._getString(e,t.DataParser.NAME,""));if(null!==i){this._slot=i;var r;null!==(r=t.DataParser.DISPLAY_FRAME in e?this._parseTimeline(e,null,t.DataParser.DISPLAY_FRAME,20,!1,!1,0,this._parseSlotDisplayFrame):this._parseTimeline(e,null,t.DataParser.FRAME,20,!1,!1,0,this._parseSlotDisplayFrame))&&this._animation.addSlotTimeline(i,r);var s;null!==(s=t.DataParser.COLOR_FRAME in e?this._parseTimeline(e,null,t.DataParser.COLOR_FRAME,21,!0,!1,1,this._parseSlotColorFrame):this._parseTimeline(e,null,t.DataParser.FRAME,21,!0,!1,1,this._parseSlotColorFrame))&&this._animation.addSlotTimeline(i,s),this._slot=null}},n.prototype._parseFrame=function(t,e){var i=this._frameArray.length;return this._frameArray.length+=1,this._frameArray[i+0]=e,i},n.prototype._parseTweenFrame=function(e,i,r){var s=this._parseFrame(e,i,r);if(r>0)if(t.DataParser.CURVE in e){var a=r+1;this._helpArray.length=a,this._samplingEasingCurve(e[t.DataParser.CURVE],this._helpArray),this._frameArray.length+=2+this._helpArray.length,this._frameArray[s+1]=2,this._frameArray[s+2]=a;for(var o=0;o<a;++o)this._frameArray[s+3+o]=Math.round(1e4*this._helpArray[o])}else{var h=-2;t.DataParser.TWEEN_EASING in e&&(h=n._getNumber(e,t.DataParser.TWEEN_EASING,-2)),-2===h?(this._frameArray.length+=1,this._frameArray[s+1]=0):0===h?(this._frameArray.length+=1,this._frameArray[s+1]=1):h<0?(this._frameArray.length+=2,this._frameArray[s+1]=3,this._frameArray[s+2]=Math.round(100*-h)):h<=1?(this._frameArray.length+=2,this._frameArray[s+1]=4,this._frameArray[s+2]=Math.round(100*h)):(this._frameArray.length+=2,this._frameArray[s+1]=5,this._frameArray[s+2]=Math.round(100*h-100))}else this._frameArray.length+=1,this._frameArray[s+1]=0;return s},n.prototype._parseActionFrame=function(t,e){var i=this._frameArray.length,n=t.actions.length;this._frameArray.length+=2+n,this._frameArray[i+0]=e,this._frameArray[i+0+1]=n;for(var r=0;r<n;++r)this._frameArray[i+0+2+r]=t.actions[r];return i},n.prototype._parseZOrderFrame=function(e,i,n){var r=this._parseFrame(e,i,n);if(t.DataParser.Z_ORDER in e){var s=e[t.DataParser.Z_ORDER];if(s.length>0){for(var a=this._armature.sortedSlots.length,o=new Array(a-s.length/2),h=new Array(a),u=0;u<o.length;++u)o[u]=0;for(var l=0;l<a;++l)h[l]=-1;for(var c=0,_=0,f=0,d=s.length;f<d;f+=2){for(var p=s[f],m=s[f+1];c!==p;)o[_++]=c++;h[c+m]=c++}for(;c<a;)o[_++]=c++;this._frameArray.length+=1+a,this._frameArray[r+1]=a;for(var g=a;g--;)-1===h[g]?this._frameArray[r+2+g]=o[--_]||0:this._frameArray[r+2+g]=h[g]||0;return r}}return this._frameArray.length+=1,this._frameArray[r+1]=0,r},n.prototype._parseBoneAllFrame=function(e,i,r){this._helpTransform.identity(),t.DataParser.TRANSFORM in e&&this._parseTransform(e[t.DataParser.TRANSFORM],this._helpTransform,1);var s=this._helpTransform.rotation;0!==i&&(0===this._prevClockwise?s=this._prevRotation+t.Transform.normalizeRadian(s-this._prevRotation):((this._prevClockwise>0?s>=this._prevRotation:s<=this._prevRotation)&&(this._prevClockwise=this._prevClockwise>0?this._prevClockwise-1:this._prevClockwise+1),s=this._prevRotation+s-this._prevRotation+t.Transform.PI_D*this._prevClockwise)),this._prevClockwise=n._getNumber(e,t.DataParser.TWEEN_ROTATE,0),this._prevRotation=s;var a=this._parseTweenFrame(e,i,r),o=this._frameFloatArray.length;return this._frameFloatArray.length+=6,this._frameFloatArray[o++]=this._helpTransform.x,this._frameFloatArray[o++]=this._helpTransform.y,this._frameFloatArray[o++]=s,this._frameFloatArray[o++]=this._helpTransform.skew,this._frameFloatArray[o++]=this._helpTransform.scaleX,this._frameFloatArray[o++]=this._helpTransform.scaleY,this._parseActionDataInFrame(e,i,this._bone,this._slot),a},n.prototype._parseBoneTranslateFrame=function(e,i,r){var s=this._parseTweenFrame(e,i,r),a=this._frameFloatArray.length;return this._frameFloatArray.length+=2,this._frameFloatArray[a++]=n._getNumber(e,t.DataParser.X,0),this._frameFloatArray[a++]=n._getNumber(e,t.DataParser.Y,0),s},n.prototype._parseBoneRotateFrame=function(e,i,r){var s=n._getNumber(e,t.DataParser.ROTATE,0)*t.Transform.DEG_RAD;0!==i&&(0===this._prevClockwise?s=this._prevRotation+t.Transform.normalizeRadian(s-this._prevRotation):((this._prevClockwise>0?s>=this._prevRotation:s<=this._prevRotation)&&(this._prevClockwise=this._prevClockwise>0?this._prevClockwise-1:this._prevClockwise+1),s=this._prevRotation+s-this._prevRotation+t.Transform.PI_D*this._prevClockwise)),this._prevClockwise=n._getNumber(e,t.DataParser.CLOCK_WISE,0),this._prevRotation=s;var a=this._parseTweenFrame(e,i,r),o=this._frameFloatArray.length;return this._frameFloatArray.length+=2,this._frameFloatArray[o++]=s,this._frameFloatArray[o++]=n._getNumber(e,t.DataParser.SKEW,0)*t.Transform.DEG_RAD,a},n.prototype._parseBoneScaleFrame=function(e,i,r){var s=this._parseTweenFrame(e,i,r),a=this._frameFloatArray.length;return this._frameFloatArray.length+=2,this._frameFloatArray[a++]=n._getNumber(e,t.DataParser.X,1),this._frameFloatArray[a++]=n._getNumber(e,t.DataParser.Y,1),s},n.prototype._parseSurfaceFrame=function(e,i,r){var s=this._frameFloatArray.length,a=this._parseTweenFrame(e,i,r),o=e[t.DataParser.VERTICES],h=n._getNumber(e,t.DataParser.OFFSET,0),u=this._surface.vertices.length/2,l=0,c=0;this._frameFloatArray.length+=2*u;for(var _=0;_<2*u;_+=2)l=_<h||_-h>=o.length?0:o[_-h],c=_+1<h||_+1-h>=o.length?0:o[_+1-h],this._frameFloatArray[s+_]=l,this._frameFloatArray[s+_+1]=c;if(0===i){var f=this._frameIntArray.length;this._frameIntArray.length+=5,this._frameIntArray[f+0]=0,this._frameIntArray[f+1]=this._frameFloatArray.length-s,this._frameIntArray[f+2]=this._frameFloatArray.length-s,this._frameIntArray[f+3]=0,this._frameIntArray[f+4]=s-this._animation.frameFloatOffset,this._timelineArray[this._timeline.offset+3]=f-this._animation.frameIntOffset}return a},n.prototype._parseSlotDisplayFrame=function(e,i,r){var s=this._parseFrame(e,i,r);return this._frameArray.length+=1,t.DataParser.VALUE in e?this._frameArray[s+1]=n._getNumber(e,t.DataParser.VALUE,0):this._frameArray[s+1]=n._getNumber(e,t.DataParser.DISPLAY_INDEX,0),this._parseActionDataInFrame(e,i,this._slot.parent,this._slot),s},n.prototype._parseSlotColorFrame=function(e,i,n){var r=this._parseTweenFrame(e,i,n),s=-1;if(t.DataParser.VALUE in e||t.DataParser.COLOR in e){var a=t.DataParser.VALUE in e?e[t.DataParser.VALUE]:e[t.DataParser.COLOR];for(var o in a){this._parseColorTransform(a,this._helpColorTransform),s=this._intArray.length,this._intArray.length+=8,this._intArray[s++]=Math.round(100*this._helpColorTransform.alphaMultiplier),this._intArray[s++]=Math.round(100*this._helpColorTransform.redMultiplier),this._intArray[s++]=Math.round(100*this._helpColorTransform.greenMultiplier),this._intArray[s++]=Math.round(100*this._helpColorTransform.blueMultiplier),this._intArray[s++]=Math.round(this._helpColorTransform.alphaOffset),this._intArray[s++]=Math.round(this._helpColorTransform.redOffset),this._intArray[s++]=Math.round(this._helpColorTransform.greenOffset),this._intArray[s++]=Math.round(this._helpColorTransform.blueOffset),s-=8;break}}s<0&&(this._defaultColorOffset<0&&(this._defaultColorOffset=s=this._intArray.length,this._intArray.length+=8,this._intArray[s++]=100,this._intArray[s++]=100,this._intArray[s++]=100,this._intArray[s++]=100,this._intArray[s++]=0,this._intArray[s++]=0,this._intArray[s++]=0,this._intArray[s++]=0),s=this._defaultColorOffset);var h=this._frameIntArray.length;return this._frameIntArray.length+=1,this._frameIntArray[h]=s,r},n.prototype._parseSlotFFDFrame=function(e,i,r){var s=this._frameFloatArray.length,a=this._parseTweenFrame(e,i,r),o=t.DataParser.VERTICES in e?e[t.DataParser.VERTICES]:null,h=n._getNumber(e,t.DataParser.OFFSET,0),u=this._intArray[this._mesh.vertices.offset+0],l=this._mesh.parent.name+"_"+this._slot.name+"_"+this._mesh.name,c=this._mesh.vertices.weight,_=0,f=0,d=0,p=0;if(null!==c){var m=this._weightSlotPose[l];this._helpMatrixA.copyFromArray(m,0),this._frameFloatArray.length+=2*c.count,d=c.offset+2+c.bones.length}else this._frameFloatArray.length+=2*u;for(var g=0;g<2*u;g+=2)if(null===o?(_=0,f=0):(_=g<h||g-h>=o.length?0:o[g-h],f=g+1<h||g+1-h>=o.length?0:o[g+1-h]),null!==c){var v=this._weightBonePoses[l],y=this._intArray[d++];this._helpMatrixA.transformPoint(_,f,this._helpPoint,!0),_=this._helpPoint.x,f=this._helpPoint.y;for(var S=0;S<y;++S){var T=this._intArray[d++];this._helpMatrixB.copyFromArray(v,7*T+1),this._helpMatrixB.invert(),this._helpMatrixB.transformPoint(_,f,this._helpPoint,!0),this._frameFloatArray[s+p++]=this._helpPoint.x,this._frameFloatArray[s+p++]=this._helpPoint.y}}else this._frameFloatArray[s+g]=_,this._frameFloatArray[s+g+1]=f;if(0===i){var A=this._frameIntArray.length;this._frameIntArray.length+=5,this._frameIntArray[A+0]=this._mesh.vertices.offset,this._frameIntArray[A+1]=this._frameFloatArray.length-s,this._frameIntArray[A+2]=this._frameFloatArray.length-s,this._frameIntArray[A+3]=0,this._frameIntArray[A+4]=s-this._animation.frameFloatOffset,this._timelineArray[this._timeline.offset+3]=A-this._animation.frameIntOffset}return a},n.prototype._parseIKConstraintFrame=function(e,i,r){var s=this._parseTweenFrame(e,i,r),a=this._frameIntArray.length;return this._frameIntArray.length+=2,this._frameIntArray[a++]=n._getBoolean(e,t.DataParser.BEND_POSITIVE,!0)?1:0,this._frameIntArray[a++]=Math.round(100*n._getNumber(e,t.DataParser.WEIGHT,1)),s},n.prototype._parseAnimationFrame=function(e,i,r){var s=this._parseTweenFrame(e,i,r),a=this._frameIntArray.length;return this._frameIntArray.length+=2,this._frameIntArray[a++]=n._getNumber(e,t.DataParser.VALUE,0),this._frameIntArray[a++]=Math.round(100*n._getNumber(e,t.DataParser.WEIGHT,1)),s},n.prototype._parseActionData=function(e,i,r,s){var a=new Array;if("string"==typeof e)(l=t.BaseObject.borrowObject(t.ActionData)).type=i,l.name=e,l.bone=r,l.slot=s,a.push(l);else if(e instanceof Array)for(var o=0,h=e;o<h.length;o++){var u=h[o],l=t.BaseObject.borrowObject(t.ActionData);if(t.DataParser.GOTO_AND_PLAY in u?(l.type=0,l.name=n._getString(u,t.DataParser.GOTO_AND_PLAY,"")):(t.DataParser.TYPE in u&&"string"==typeof u[t.DataParser.TYPE]?l.type=t.DataParser._getActionType(u[t.DataParser.TYPE]):l.type=n._getNumber(u,t.DataParser.TYPE,i),l.name=n._getString(u,t.DataParser.NAME,"")),t.DataParser.BONE in u){var c=n._getString(u,t.DataParser.BONE,"");l.bone=this._armature.getBone(c)}else l.bone=r;if(t.DataParser.SLOT in u){var _=n._getString(u,t.DataParser.SLOT,"");l.slot=this._armature.getSlot(_)}else l.slot=s;var f=null;if(t.DataParser.INTS in u){null===f&&(f=t.BaseObject.borrowObject(t.UserData));for(var d=0,p=u[t.DataParser.INTS];d<p.length;d++){var m=p[d];f.addInt(m)}}if(t.DataParser.FLOATS in u){null===f&&(f=t.BaseObject.borrowObject(t.UserData));for(var g=0,v=u[t.DataParser.FLOATS];g<v.length;g++)m=v[g],f.addFloat(m)}if(t.DataParser.STRINGS in u){null===f&&(f=t.BaseObject.borrowObject(t.UserData));for(var y=0,S=u[t.DataParser.STRINGS];y<S.length;y++)m=S[y],f.addString(m)}l.data=f,a.push(l)}return a},n.prototype._parseTransform=function(e,i,r){i.x=n._getNumber(e,t.DataParser.X,0)*r,i.y=n._getNumber(e,t.DataParser.Y,0)*r,t.DataParser.ROTATE in e||t.DataParser.SKEW in e?(i.rotation=t.Transform.normalizeRadian(n._getNumber(e,t.DataParser.ROTATE,0)*t.Transform.DEG_RAD),i.skew=t.Transform.normalizeRadian(n._getNumber(e,t.DataParser.SKEW,0)*t.Transform.DEG_RAD)):(t.DataParser.SKEW_X in e||t.DataParser.SKEW_Y in e)&&(i.rotation=t.Transform.normalizeRadian(n._getNumber(e,t.DataParser.SKEW_Y,0)*t.Transform.DEG_RAD),i.skew=t.Transform.normalizeRadian(n._getNumber(e,t.DataParser.SKEW_X,0)*t.Transform.DEG_RAD)-i.rotation),i.scaleX=n._getNumber(e,t.DataParser.SCALE_X,1),i.scaleY=n._getNumber(e,t.DataParser.SCALE_Y,1)},n.prototype._parseColorTransform=function(e,i){i.alphaMultiplier=.01*n._getNumber(e,t.DataParser.ALPHA_MULTIPLIER,100),i.redMultiplier=.01*n._getNumber(e,t.DataParser.RED_MULTIPLIER,100),i.greenMultiplier=.01*n._getNumber(e,t.DataParser.GREEN_MULTIPLIER,100),i.blueMultiplier=.01*n._getNumber(e,t.DataParser.BLUE_MULTIPLIER,100),i.alphaOffset=n._getNumber(e,t.DataParser.ALPHA_OFFSET,0),i.redOffset=n._getNumber(e,t.DataParser.RED_OFFSET,0),i.greenOffset=n._getNumber(e,t.DataParser.GREEN_OFFSET,0),i.blueOffset=n._getNumber(e,t.DataParser.BLUE_OFFSET,0)},n.prototype._parseArray=function(){this._intArray.length=0,this._floatArray.length=0,this._frameIntArray.length=0,this._frameFloatArray.length=0,this._frameArray.length=0,this._timelineArray.length=0},n.prototype._modifyArray=function(){this._intArray.length%Int16Array.BYTES_PER_ELEMENT!=0&&this._intArray.push(0),this._frameIntArray.length%Int16Array.BYTES_PER_ELEMENT!=0&&this._frameIntArray.push(0),this._frameArray.length%Int16Array.BYTES_PER_ELEMENT!=0&&this._frameArray.push(0),this._timelineArray.length%Uint16Array.BYTES_PER_ELEMENT!=0&&this._timelineArray.push(0);var e=this._intArray.length*Int16Array.BYTES_PER_ELEMENT,i=this._floatArray.length*Float32Array.BYTES_PER_ELEMENT,n=this._frameIntArray.length*Int16Array.BYTES_PER_ELEMENT,r=this._frameFloatArray.length*Float32Array.BYTES_PER_ELEMENT,s=this._frameArray.length*Int16Array.BYTES_PER_ELEMENT,a=this._timelineArray.length*Uint16Array.BYTES_PER_ELEMENT,o=e+i+n+r+s+a;if(t.DragonBones.webAssembly){for(var h=t.webAssemblyModule.HEAP16.buffer,u=t.webAssemblyModule._malloc(o),l=new Int16Array(h,u,this._intArray.length),c=new Float32Array(h,u+e,this._floatArray.length),_=new Int16Array(h,u+e+i,this._frameIntArray.length),f=new Float32Array(h,u+e+i+n,this._frameFloatArray.length),d=new Int16Array(h,u+e+i+n+r,this._frameArray.length),p=new Uint16Array(h,u+e+i+n+r+s,this._timelineArray.length),m=0,g=this._intArray.length;m<g;++m)l[m]=this._intArray[m];for(m=0,g=this._floatArray.length;m<g;++m)c[m]=this._floatArray[m];for(m=0,g=this._frameIntArray.length;m<g;++m)_[m]=this._frameIntArray[m];for(m=0,g=this._frameFloatArray.length;m<g;++m)f[m]=this._frameFloatArray[m];for(m=0,g=this._frameArray.length;m<g;++m)d[m]=this._frameArray[m];for(m=0,g=this._timelineArray.length;m<g;++m)p[m]=this._timelineArray[m];t.webAssemblyModule.setDataBinary(this._data,u,e,i,n,r,s,a)}else{var v=new ArrayBuffer(o);for(l=new Int16Array(v,0,this._intArray.length),c=new Float32Array(v,e,this._floatArray.length),_=new Int16Array(v,e+i,this._frameIntArray.length),f=new Float32Array(v,e+i+n,this._frameFloatArray.length),d=new Int16Array(v,e+i+n+r,this._frameArray.length),p=new Uint16Array(v,e+i+n+r+s,this._timelineArray.length),m=0,g=this._intArray.length;m<g;++m)l[m]=this._intArray[m];for(m=0,g=this._floatArray.length;m<g;++m)c[m]=this._floatArray[m];for(m=0,g=this._frameIntArray.length;m<g;++m)_[m]=this._frameIntArray[m];for(m=0,g=this._frameFloatArray.length;m<g;++m)f[m]=this._frameFloatArray[m];for(m=0,g=this._frameArray.length;m<g;++m)d[m]=this._frameArray[m];for(m=0,g=this._timelineArray.length;m<g;++m)p[m]=this._timelineArray[m];this._data.binary=v,this._data.intArray=l,this._data.floatArray=c,this._data.frameIntArray=_,this._data.frameFloatArray=f,this._data.frameArray=d,this._data.timelineArray=p}this._defaultColorOffset=-1},n.prototype.parseDragonBonesData=function(e,i){void 0===i&&(i=1),console.assert(null!=e,"Data error.");var r=n._getString(e,t.DataParser.VERSION,""),s=n._getString(e,t.DataParser.COMPATIBLE_VERSION,"");if(t.DataParser.DATA_VERSIONS.indexOf(r)>=0||t.DataParser.DATA_VERSIONS.indexOf(s)>=0){var a=t.BaseObject.borrowObject(t.DragonBonesData);if(a.version=r,a.name=n._getString(e,t.DataParser.NAME,""),a.frameRate=n._getNumber(e,t.DataParser.FRAME_RATE,24),0===a.frameRate&&(a.frameRate=24),t.DataParser.ARMATURE in e){this._data=a,this._parseArray(e);for(var o=0,h=e[t.DataParser.ARMATURE];o<h.length;o++){var u=h[o];a.addArmature(this._parseArmature(u,i))}this._data.binary||this._modifyArray(),t.DataParser.STAGE in e?a.stage=a.getArmature(n._getString(e,t.DataParser.STAGE,"")):a.armatureNames.length>0&&(a.stage=a.getArmature(a.armatureNames[0])),this._data=null}return t.DataParser.TEXTURE_ATLAS in e&&(this._rawTextureAtlases=e[t.DataParser.TEXTURE_ATLAS]),a}return console.assert(!1,"Nonsupport data version: "+r+"\nPlease convert DragonBones data to support version.\nRead more: https://github.com/DragonBones/Tools/"),null},n.prototype.parseTextureAtlasData=function(e,i,r){if(void 0===r&&(r=1),console.assert(void 0!==e),null===e){if(null===this._rawTextureAtlases||0===this._rawTextureAtlases.length)return!1;var s=this._rawTextureAtlases[this._rawTextureAtlasIndex++];return this.parseTextureAtlasData(s,i,r),this._rawTextureAtlasIndex>=this._rawTextureAtlases.length&&(this._rawTextureAtlasIndex=0,this._rawTextureAtlases=null),!0}if(i.width=n._getNumber(e,t.DataParser.WIDTH,0),i.height=n._getNumber(e,t.DataParser.HEIGHT,0),i.scale=1===r?1/n._getNumber(e,t.DataParser.SCALE,1):r,i.name=n._getString(e,t.DataParser.NAME,""),i.imagePath=n._getString(e,t.DataParser.IMAGE_PATH,""),t.DataParser.SUB_TEXTURE in e)for(var a=e[t.DataParser.SUB_TEXTURE],o=0,h=a.length;o<h;++o){var u=a[o],l=i.createTexture();l.rotated=n._getBoolean(u,t.DataParser.ROTATED,!1),l.name=n._getString(u,t.DataParser.NAME,""),l.region.x=n._getNumber(u,t.DataParser.X,0),l.region.y=n._getNumber(u,t.DataParser.Y,0),l.region.width=n._getNumber(u,t.DataParser.WIDTH,0),l.region.height=n._getNumber(u,t.DataParser.HEIGHT,0);var c=n._getNumber(u,t.DataParser.FRAME_WIDTH,-1),_=n._getNumber(u,t.DataParser.FRAME_HEIGHT,-1);c>0&&_>0&&(l.frame=t.TextureData.createRectangle(),l.frame.x=n._getNumber(u,t.DataParser.FRAME_X,0),l.frame.y=n._getNumber(u,t.DataParser.FRAME_Y,0),l.frame.width=c,l.frame.height=_),i.addTexture(l)}return!0},n.getInstance=function(){return null===n._objectDataParserInstance&&(n._objectDataParserInstance=new n),n._objectDataParserInstance},n._objectDataParserInstance=null,n}(t.DataParser);t.ObjectDataParser=e;var i=function(){this.frameStart=0,this.actions=[]};t.ActionFrame=i}(xst||(xst={})),function(t){var e=function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return Cst(i,e),i.prototype._inRange=function(t,e,i){return e<=t&&t<=i},i.prototype._decodeUTF8=function(t){for(var e,i=0,n="",r=0,s=0,a=0,o=0;t.length>i;){var h=t[i++];if(-1===h)e=0!==s?65533:-1;else if(0===s)this._inRange(h,0,127)?e=h:(this._inRange(h,194,223)?(s=1,o=128,r=h-192):this._inRange(h,224,239)?(s=2,o=2048,r=h-224):this._inRange(h,240,244)&&(s=3,o=65536,r=h-240),r*=Math.pow(64,s),e=null);else if(this._inRange(h,128,191))if(a+=1,r+=(h-128)*Math.pow(64,s-a),a!==s)e=null;else{var u=r,l=o;r=0,s=0,a=0,o=0,e=this._inRange(u,l,1114111)&&!this._inRange(u,55296,57343)?u:h}else r=0,s=0,a=0,o=0,i--,e=h;null!==e&&-1!==e&&(e<=65535?e>0&&(n+=String.fromCharCode(e)):(e-=65536,n+=String.fromCharCode(55296+(e>>10&1023)),n+=String.fromCharCode(56320+(1023&e))))}return n},i.prototype._getUTF16Key=function(t){for(var e=0,i=t.length;e<i;++e)if(t.charCodeAt(e)>255)return encodeURI(t);return t},i.prototype._parseBinaryTimeline=function(e,i,n){void 0===n&&(n=null);var r=null!==n?n:t.BaseObject.borrowObject(t.TimelineData);r.type=e,r.offset=i,this._timeline=r;var s=this._timelineArrayBuffer[r.offset+2];if(1===s)r.frameIndicesOffset=-1;else{var a=0,o=this._animation.frameCount+1,h=this._data.frameIndices;t.DragonBones.webAssembly?(a=h.size(),h.resize(a+o,0)):(a=h.length,h.length+=o),r.frameIndicesOffset=a;for(var u=0,l=0,c=0,_=0;u<o;++u)c+_<=u&&l<s&&(c=this._frameArrayBuffer[this._animation.frameOffset+this._timelineArrayBuffer[r.offset+5+l]],_=l===s-1?this._animation.frameCount-c:this._frameArrayBuffer[this._animation.frameOffset+this._timelineArrayBuffer[r.offset+5+l+1]]-c,l++),t.DragonBones.webAssembly?h.set(a+u,l-1):h[a+u]=l-1}return this._timeline=null,r},i.prototype._parseVertices=function(e,i){i.offset=e[t.DataParser.OFFSET];var n=this._intArrayBuffer[i.offset+3];if(n>=0){var r=t.BaseObject.borrowObject(t.WeightData),s=this._intArrayBuffer[i.offset+0],a=this._intArrayBuffer[n+0];r.offset=n;for(var o=0;o<a;++o){var h=this._intArrayBuffer[n+2+o];r.addBone(this._rawBones[h])}for(var u=n+2+a,l=0,c=(o=0,s);o<c;++o){var _=this._intArrayBuffer[u++];l+=_,u+=_}r.count=l,i.weight=r}},i.prototype._parseMesh=function(t,e){this._parseVertices(t,e.vertices)},i.prototype._parsePath=function(t,e){this._parseVertices(t,e.vertices)},i.prototype._parseAnimation=function(e){var i=t.BaseObject.borrowObject(t.AnimationData);i.frameCount=Math.max(t.ObjectDataParser._getNumber(e,t.DataParser.DURATION,1),1),i.playTimes=t.ObjectDataParser._getNumber(e,t.DataParser.PLAY_TIMES,1),i.duration=i.frameCount/this._armature.frameRate,i.fadeInTime=t.ObjectDataParser._getNumber(e,t.DataParser.FADE_IN_TIME,0),i.scale=t.ObjectDataParser._getNumber(e,t.DataParser.SCALE,1),i.name=t.ObjectDataParser._getString(e,t.DataParser.NAME,t.DataParser.DEFAULT_NAME),0===i.name.length&&(i.name=t.DataParser.DEFAULT_NAME);var n=e[t.DataParser.OFFSET];if(i.frameIntOffset=n[0],i.frameFloatOffset=n[1],i.frameOffset=n[2],this._animation=i,t.DataParser.ACTION in e&&(i.actionTimeline=this._parseBinaryTimeline(0,e[t.DataParser.ACTION])),t.DataParser.Z_ORDER in e&&(i.zOrderTimeline=this._parseBinaryTimeline(1,e[t.DataParser.Z_ORDER])),t.DataParser.BONE in e){var r=e[t.DataParser.BONE];for(var s in r){var a=r[s];t.DragonBones.webAssembly&&(s=this._getUTF16Key(s));var o=this._armature.getBone(s);if(null!==o)for(var h=0,u=a.length;h<u;h+=2){var l=a[h],c=a[h+1],_=this._parseBinaryTimeline(l,c);this._animation.addBoneTimeline(o,_)}}}if(t.DataParser.SURFACE in e)for(var s in r=e[t.DataParser.SURFACE]){a=r[s],t.DragonBones.webAssembly&&(s=this._getUTF16Key(s));var f=this._armature.getBone(s);if(null!==f)for(h=0,u=a.length;h<u;h+=2)l=a[h],c=a[h+1],_=this._parseBinaryTimeline(l,c),this._animation.addSurfaceTimeline(f,_)}if(t.DataParser.SLOT in e)for(var s in r=e[t.DataParser.SLOT]){a=r[s],t.DragonBones.webAssembly&&(s=this._getUTF16Key(s));var d=this._armature.getSlot(s);if(null!==d)for(h=0,u=a.length;h<u;h+=2)l=a[h],c=a[h+1],_=this._parseBinaryTimeline(l,c),this._animation.addSlotTimeline(d,_)}if(t.DataParser.CONSTRAINT in e)for(var s in r=e[t.DataParser.CONSTRAINT]){a=r[s],t.DragonBones.webAssembly&&(s=this._getUTF16Key(s));var p=this._armature.getConstraint(s);if(null!==p)for(h=0,u=a.length;h<u;h+=2)l=a[h],c=a[h+1],_=this._parseBinaryTimeline(l,c),this._animation.addConstraintTimeline(p,_)}if(t.DataParser.ANIMATION in e)for(var s in r=e[t.DataParser.ANIMATION])for(a=r[s],t.DragonBones.webAssembly&&(s=this._getUTF16Key(s)),h=0,u=a.length;h<u;h+=2)l=a[h],c=a[h+1],_=this._parseBinaryTimeline(l,c),this._animation.addAnimationTimeline(s,_);return this._animation=null,i},i.prototype._parseArray=function(e){var i=e[t.DataParser.OFFSET],n=i[1],r=i[3],s=i[5],a=i[7],o=i[9],h=i[11],u=new Int16Array(this._binary,this._binaryOffset+i[0],n/Int16Array.BYTES_PER_ELEMENT),l=new Float32Array(this._binary,this._binaryOffset+i[2],r/Float32Array.BYTES_PER_ELEMENT),c=new Int16Array(this._binary,this._binaryOffset+i[4],s/Int16Array.BYTES_PER_ELEMENT),_=new Float32Array(this._binary,this._binaryOffset+i[6],a/Float32Array.BYTES_PER_ELEMENT),f=new Int16Array(this._binary,this._binaryOffset+i[8],o/Int16Array.BYTES_PER_ELEMENT),d=new Uint16Array(this._binary,this._binaryOffset+i[10],h/Uint16Array.BYTES_PER_ELEMENT);if(t.DragonBones.webAssembly){for(var p=n+r+s+a+o+h,m=t.webAssemblyModule._malloc(p),g=new Uint8Array(this._binary,this._binaryOffset,p/Uint8Array.BYTES_PER_ELEMENT),v=new Uint8Array(t.webAssemblyModule.HEAP16.buffer,m,g.length),y=0,S=g.length;y<S;++y)v[y]=g[y];t.webAssemblyModule.setDataBinary(this._data,m,n,r,s,a,o,h),this._intArrayBuffer=u,this._floatArrayBuffer=l,this._frameIntArrayBuffer=c,this._frameFloatArrayBuffer=_,this._frameArrayBuffer=f,this._timelineArrayBuffer=d}else this._data.binary=this._binary,this._data.intArray=this._intArrayBuffer=u,this._data.floatArray=this._floatArrayBuffer=l,this._data.frameIntArray=this._frameIntArrayBuffer=c,this._data.frameFloatArray=this._frameFloatArrayBuffer=_,this._data.frameArray=this._frameArrayBuffer=f,this._data.timelineArray=this._timelineArrayBuffer=d},i.prototype.parseDragonBonesData=function(t,i){void 0===i&&(i=1),console.assert(null!=t&&t instanceof ArrayBuffer,"Data error.");var n=new Uint8Array(t,0,8);if(n[0]!=="D".charCodeAt(0)||n[1]!=="B".charCodeAt(0)||n[2]!=="D".charCodeAt(0)||n[3]!=="T".charCodeAt(0))return console.assert(!1,"Nonsupport data."),null;var r=new Uint32Array(t,8,1)[0],s=new Uint8Array(t,12,r),a=this._decodeUTF8(s),o=JSON.parse(a);return this._binaryOffset=12+r,this._binary=t,e.prototype.parseDragonBonesData.call(this,o,i)},i.getInstance=function(){return null===i._binaryDataParserInstance&&(i._binaryDataParserInstance=new i),i._binaryDataParserInstance},i._binaryDataParserInstance=null,i}(t.ObjectDataParser);t.BinaryDataParser=e}(xst||(xst={})),function(t){var e=function(){function e(i){void 0===i&&(i=null),this.autoSearch=!1,this._dragonBonesDataMap={},this._textureAtlasDataMap={},this._dragonBones=null,this._dataParser=null,null===e._objectParser&&(e._objectParser=new t.ObjectDataParser),null===e._binaryParser&&(e._binaryParser=new t.BinaryDataParser),this._dataParser=null!==i?i:e._objectParser}return e.prototype._isSupportMesh=function(){return!0},e.prototype._getTextureData=function(t,e){if(t in this._textureAtlasDataMap)for(var i=0,n=this._textureAtlasDataMap[t];i<n.length;i++)if(null!==(h=(o=n[i]).getTexture(e)))return h;if(this.autoSearch)for(var r in this._textureAtlasDataMap)for(var s=0,a=this._textureAtlasDataMap[r];s<a.length;s++){var o,h;if((o=a[s]).autoSearch&&null!==(h=o.getTexture(e)))return h}return null},e.prototype._fillBuildArmaturePackage=function(t,e,i,n,r){var s=null,a=null;if(e.length>0&&e in this._dragonBonesDataMap&&(a=(s=this._dragonBonesDataMap[e]).getArmature(i)),null===a&&(0===e.length||this.autoSearch))for(var o in this._dragonBonesDataMap)if(s=this._dragonBonesDataMap[o],(0===e.length||s.autoSearch)&&null!==(a=s.getArmature(i))){e=o;break}if(null!==a){if(t.dataName=e,t.textureAtlasName=r,t.data=s,t.armature=a,t.skin=null,n.length>0&&(t.skin=a.getSkin(n),null===t.skin&&this.autoSearch))for(var o in this._dragonBonesDataMap){var h=this._dragonBonesDataMap[o].getArmature(n);if(null!==h){t.skin=h.defaultSkin;break}}return null===t.skin&&(t.skin=a.defaultSkin),!0}return!1},e.prototype._buildBones=function(e,i){for(var n=0,r=e.armature.sortedBones;n<r.length;n++){var s=r[n];t.BaseObject.borrowObject(0===s.type?t.Bone:t.Surface).init(s,i)}},e.prototype._buildSlots=function(e,i){var n=e.skin,r=e.armature.defaultSkin;if(null!==n&&null!==r){var s={};for(var a in r.displays){var o=r.getDisplays(a);s[a]=o}if(n!==r)for(var a in n.displays)o=n.getDisplays(a),s[a]=o;for(var h=0,u=e.armature.sortedSlots;h<u.length;h++){var l=u[h],c=l.name in s?s[l.name]:null,_=this._buildSlot(e,l,i);if(_.rawDisplayDatas=c,null!==c){for(var f=new Array,d=0,p=t.DragonBones.webAssembly?c.size():c.length;d<p;++d){var m=t.DragonBones.webAssembly?c.get(d):c[d];null!==m?f.push(this._getSlotDisplay(e,m,null,_)):f.push(null)}_._setDisplayList(f)}_._setDisplayIndex(l.displayIndex,!0)}}},e.prototype._buildConstraints=function(e,i){var n=e.armature.constraints;for(var r in n){var s=n[r];switch(s.type){case 0:var a=t.BaseObject.borrowObject(t.IKConstraint);a.init(s,i),i._addConstraint(a);break;case 1:var o=t.BaseObject.borrowObject(t.PathConstraint);o.init(s,i),i._addConstraint(o);break;default:var h=t.BaseObject.borrowObject(t.IKConstraint);h.init(s,i),i._addConstraint(h)}}},e.prototype._buildChildArmature=function(t,e,i){return this.buildArmature(i.path,null!==t?t.dataName:"","",null!==t?t.textureAtlasName:"")},e.prototype._getSlotDisplay=function(e,i,n,r){var s=null!==e?e.dataName:i.parent.parent.parent.name,a=null;switch(i.type){case 0:var o=i;null!==e&&e.textureAtlasName.length>0&&(o.texture=this._getTextureData(e.textureAtlasName,i.path)),null===o.texture&&(o.texture=this._getTextureData(s,i.path)),a=null!==n&&2===n.type&&this._isSupportMesh()?r.meshDisplay:r.rawDisplay;break;case 2:var h=i;null!==e&&e.textureAtlasName.length>0&&(h.texture=this._getTextureData(e.textureAtlasName,h.path)),null===h.texture&&(h.texture=this._getTextureData(s,h.path)),a=this._isSupportMesh()?r.meshDisplay:r.rawDisplay;break;case 1:var u=i,l=this._buildChildArmature(e,r,i);if(null!==l){if(l.inheritAnimation=u.inheritAnimation,!l.inheritAnimation){var c=u.actions.length>0?u.actions:l.armatureData.defaultActions;if(c.length>0)for(var _=0,f=c;_<f.length;_++){var d=f[_],p=t.BaseObject.borrowObject(t.EventObject);t.EventObject.actionDataToInstance(d,p,r.armature),p.slot=r,r.armature._bufferAction(p,!1)}else l.animation.play()}u.armature=l.armatureData}a=l}return a},e.prototype.parseDragonBonesData=function(t,i,n){void 0===i&&(i=null),void 0===n&&(n=1);for(var r=t instanceof ArrayBuffer?e._binaryParser:this._dataParser,s=r.parseDragonBonesData(t,n);;){var a=this._buildTextureAtlasData(null,null);if(!r.parseTextureAtlasData(null,a,n)){a.returnToPool();break}this.addTextureAtlasData(a,i)}return null!==s&&this.addDragonBonesData(s,i),s},e.prototype.parseTextureAtlasData=function(t,e,i,n){void 0===i&&(i=null),void 0===n&&(n=1);var r=this._buildTextureAtlasData(null,null);return this._dataParser.parseTextureAtlasData(t,r,n),this._buildTextureAtlasData(r,e||null),this.addTextureAtlasData(r,i),r},e.prototype.updateTextureAtlasData=function(t,e){var i=this.getTextureAtlasData(t);if(null!==i)for(var n=0,r=i.length;n<r;++n)n<e.length&&this._buildTextureAtlasData(i[n],e[n])},e.prototype.getDragonBonesData=function(t){return t in this._dragonBonesDataMap?this._dragonBonesDataMap[t]:null},e.prototype.addDragonBonesData=function(t,e){if(void 0===e&&(e=null),(e=null!==e?e:t.name)in this._dragonBonesDataMap){if(this._dragonBonesDataMap[e]===t)return;console.warn("Can not add same name data: "+e)}else this._dragonBonesDataMap[e]=t},e.prototype.removeDragonBonesData=function(t,e){void 0===e&&(e=!0),t in this._dragonBonesDataMap&&(e&&this._dragonBones.bufferObject(this._dragonBonesDataMap[t]),delete this._dragonBonesDataMap[t])},e.prototype.getTextureAtlasData=function(t){return t in this._textureAtlasDataMap?this._textureAtlasDataMap[t]:null},e.prototype.addTextureAtlasData=function(t,e){void 0===e&&(e=null);var i=(e=null!==e?e:t.name)in this._textureAtlasDataMap?this._textureAtlasDataMap[e]:this._textureAtlasDataMap[e]=[];i.indexOf(t)<0&&i.push(t)},e.prototype.removeTextureAtlasData=function(t,e){if(void 0===e&&(e=!0),t in this._textureAtlasDataMap){var i=this._textureAtlasDataMap[t];if(e)for(var n=0,r=i;n<r.length;n++){var s=r[n];this._dragonBones.bufferObject(s)}delete this._textureAtlasDataMap[t]}},e.prototype.getArmatureData=function(t,e){void 0===e&&(e="");var n=new i;return this._fillBuildArmaturePackage(n,e,t,"","")?n.armature:null},e.prototype.clear=function(t){for(var e in void 0===t&&(t=!0),this._dragonBonesDataMap)t&&this._dragonBones.bufferObject(this._dragonBonesDataMap[e]),delete this._dragonBonesDataMap[e];for(var e in this._textureAtlasDataMap){if(t)for(var i=0,n=this._textureAtlasDataMap[e];i<n.length;i++){var r=n[i];this._dragonBones.bufferObject(r)}delete this._textureAtlasDataMap[e]}},e.prototype.buildArmature=function(t,e,n,r){void 0===e&&(e=""),void 0===n&&(n=""),void 0===r&&(r="");var s=new i;if(!this._fillBuildArmaturePackage(s,e||"",t,n||"",r||""))return console.warn("No armature data: "+t+", "+(null!==e?e:"")),null;var a=this._buildArmature(s);return this._buildBones(s,a),this._buildSlots(s,a),this._buildConstraints(s,a),a.invalidUpdate(null,!0),a.advanceTime(0),a},e.prototype.replaceDisplay=function(e,i,n){void 0===n&&(n=-1),n<0&&(n=e.displayIndex),n<0&&(n=0),e.replaceDisplayData(i,n);var r=e.displayList;if(r.length<=n){r.length=n+1;for(var s=0,a=r.length;s<a;++s)r[s]||(r[s]=null)}if(null!==i){var o=e.rawDisplayDatas,h=null;o&&(t.DragonBones.webAssembly?n<o.size()&&(h=o.get(n)):n<o.length&&(h=o[n])),r[n]=this._getSlotDisplay(null,i,h,e)}else r[n]=null;e.displayList=r},e.prototype.replaceSlotDisplay=function(t,e,i,n,r,s){void 0===s&&(s=-1);var a=this.getArmatureData(e,t||"");if(!a||!a.defaultSkin)return!1;var o=a.defaultSkin.getDisplay(i,n);return!!o&&(this.replaceDisplay(r,o,s),!0)},e.prototype.replaceSlotDisplayList=function(e,i,n,r){var s=this.getArmatureData(i,e||"");if(!s||!s.defaultSkin)return!1;var a=s.defaultSkin.getDisplays(n);if(!a)return!1;for(var o=0,h=0,u=t.DragonBones.webAssembly?a.size():a.length;h<u;++h){var l=t.DragonBones.webAssembly?a.get(h):a[h];this.replaceDisplay(r,l,o++)}return!0},e.prototype.replaceSkin=function(e,i,n,r){void 0===n&&(n=!1),void 0===r&&(r=null);for(var s=!1,a=i.parent.defaultSkin,o=0,h=e.getSlots();o<h.length;o++){var u=h[o];if(!(null!==r&&r.indexOf(u.name)>=0)){var l=i.getDisplays(u.name);if(l||(null!==a&&i!==a&&(l=a.getDisplays(u.name)),l)){var c=t.DragonBones.webAssembly?l.size():l.length,_=u.displayList;_.length=c;for(var f=0,d=c;f<d;++f){var p=t.DragonBones.webAssembly?l.get(f):l[f];_[f]=null!==p?this._getSlotDisplay(null,p,null,u):null}s=!0,u.rawDisplayDatas=l,u.displayList=_}else n&&(u.rawDisplayDatas=null,u.displayList=[])}}return s},e.prototype.replaceAnimation=function(e,i,n){void 0===n&&(n=!0);var r=i.defaultSkin;if(null===r)return!1;if(n)e.animation.animations=i.animations;else{var s=e.animation.animations,a={};for(var o in s)a[o]=s[o];for(var o in i.animations)a[o]=i.animations[o];e.animation.animations=a}for(var h=0,u=e.getSlots();h<u.length;h++)for(var l=u[h],c=0,_=0,f=l.displayList;_<f.length;_++){var d=f[_];if(d instanceof t.Armature){var p=r.getDisplays(l.name);if(null!==p&&c<(t.DragonBones.webAssembly?p.size():p.length)){var m=t.DragonBones.webAssembly?p.get(c):p[c];if(null!==m&&1===m.type){var g=this.getArmatureData(m.path,m.parent.parent.parent.name);g&&this.replaceAnimation(d,g,n)}}}c++}return!0},e.prototype.getAllDragonBonesData=function(){return this._dragonBonesDataMap},e.prototype.getAllTextureAtlasData=function(){return this._textureAtlasDataMap},Object.defineProperty(e.prototype,"clock",{get:function(){return this._dragonBones.clock},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"dragonBones",{get:function(){return this._dragonBones},enumerable:!0,configurable:!0}),e.prototype.changeSkin=function(t,e,i){return void 0===i&&(i=null),this.replaceSkin(t,e,!1,i)},e.prototype.copyAnimationsToArmature=function(t,e,i,n,r){void 0===n&&(n=""),void 0===r&&(r=!0);var s=this.getArmatureData(e,n);return!!s&&this.replaceAnimation(t,s,r)},e._objectParser=null,e._binaryParser=null,e}();t.BaseFactory=e;var i=function(){this.dataName="",this.textureAtlasName="",this.skin=null};t.BuildArmaturePackage=i}(xst||(xst={})),function(t){t.BinaryOffset={WeigthBoneCount:0,WeigthFloatOffset:1,WeigthBoneIndices:2,MeshVertexCount:0,MeshTriangleCount:1,MeshFloatOffset:2,MeshWeightOffset:3,MeshVertexIndices:4,TimelineScale:0,TimelineOffset:1,TimelineKeyFrameCount:2,TimelineFrameValueCount:3,TimelineFrameValueOffset:4,TimelineFrameOffset:5,FramePosition:0,FrameTweenType:1,FrameTweenEasingOrCurveSampleCount:2,FrameCurveSamples:3,DeformMeshOffset:0,DeformCount:1,DeformValueCount:2,DeformValueOffset:3,DeformFloatOffset:4},t.ArmatureType={Armature:0,MovieClip:1,Stage:2},t.BoneType={Bone:0,Surface:1},t.DisplayType={Image:0,Armature:1,Mesh:2,BoundingBox:3},t.BoundingBoxType={Rectangle:0,Ellipse:1,Polygon:2},t.ActionType={Play:0,Stop:1,GotoAndPlay:2,GotoAndStop:3,FadeIn:4,FadeOut:5,Frame:10,Sound:11},t.BlendMode={Normal:0,Add:1,Alpha:2,Darken:3,Difference:4,Erase:5,HardLight:6,Invert:7,Layer:8,Lighten:9,Multiply:10,Overlay:11,Screen:12,Subtract:13},t.TweenType={None:0,Line:1,Curve:2,QuadIn:3,QuadOut:4,QuadInOut:5},t.TimelineType={Action:0,ZOrder:1,BoneAll:10,BoneTranslate:11,BoneRotate:12,BoneScale:13,Surface:50,SlotDisplay:20,SlotColor:21,SlotFFD:22,IKConstraint:30,AnimationTime:40,AnimationWeight:41}}(xst||(xst={}));var wst,Rst,Ist,Dst,Bst,Mst,Pst,Ost,Lst,Nst,Fst,kst,Gst=xst.DragonBones,Vst=xst.BaseObject,Ust=xst.Matrix,zst=xst.Transform,Hst=xst.ColorTransform,Wst=xst.Point,Xst=xst.Rectangle,jst=xst.UserData,Yst=xst.ActionData,qst=xst.DragonBonesData,Kst=xst.ArmatureData,Qst=xst.BoneData,Zst=xst.SurfaceData,Jst=xst.SlotData,$st=xst.ConstraintData,tat=xst.IKConstraintData,eat=xst.PathConstraintData,iat=xst.CanvasData,nat=xst.SkinData,rat=xst.VerticesData,sat=xst.DisplayData,aat=xst.ImageDisplayData,oat=xst.ArmatureDisplayData,hat=xst.MeshDisplayData,uat=xst.BoundingBoxDisplayData,lat=xst.PathDisplayData,cat=xst.WeightData,_at=xst.BoundingBoxData,fat=xst.RectangleBoundingBoxData,dat=xst.EllipseBoundingBoxData,pat=xst.PolygonBoundingBoxData,mat=xst.AnimationData,gat=xst.TimelineData,vat=xst.AnimationConfig,yat=xst.TextureAtlasData,Sat=xst.TextureData,Tat=xst.DeformVertices,Aat=xst.Armature,bat=xst.TransformObject,Eat=xst.Bone,Cat=xst.Surface,xat=xst.Slot,wat=xst.Constraint,Rat=xst.IKConstraint,Iat=xst.PathConstraint,Dat=xst.WorldClock,Bat=xst.Animation,Mat=xst.AnimationState,Pat=xst.BonePose,Oat=xst.BlendState,Lat=xst.TimelineState,Nat=xst.TweenTimelineState,Fat=xst.BoneTimelineState,kat=xst.SlotTimelineState,Gat=xst.ConstraintTimelineState,Vat=xst.ActionTimelineState,Uat=xst.ZOrderTimelineState,zat=xst.BoneAllTimelineState,Hat=xst.BoneTranslateTimelineState,Wat=xst.BoneRotateTimelineState,Xat=xst.BoneScaleTimelineState,jat=xst.SurfaceTimelineState,Yat=xst.SlotDislayTimelineState,qat=xst.SlotColorTimelineState,Kat=xst.DeformTimelineState,Qat=xst.IKConstraintTimelineState,Zat=xst.AnimationTimelineState,Jat=xst.EventObject,$at=xst.DataParser,tot=xst.ObjectDataParser,eot=xst.ActionFrame,iot=xst.BinaryDataParser,not=xst.BaseFactory,rot=xst.BuildArmaturePackage,sot=xst.BinaryOffset,aot=xst.ArmatureType,oot=xst.BoneType,hot=xst.DisplayType,uot=xst.BoundingBoxType,lot=xst.ActionType,cot=xst.BlendMode,_ot=xst.TweenType,fot=xst.TimelineType,dot=eo,pot=dot("dragonBones.CCTextureAtlasData")(wst=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._renderTexture=null,e}s(e,t),e.toString=function(){return"[class dragonBones.CCTextureAtlasData]"};var i=e.prototype;return i.createTexture=function(){return Vst.borrowObject(mot)},i._onClear=function(){t.prototype._onClear.call(this),this.renderTexture=null},n(e,[{key:"renderTexture",get:function(){return this._renderTexture},set:function(t){if(this._renderTexture=t,t)for(var e in this.textures){var i=this.textures[e];if(!i.spriteFrame){var n=null;i.rotated?n=new Jn(i.region.x,i.region.y,i.region.height,i.region.width):(n=new Jn(i.region.x,i.region.y,i.region.width,i.region.height),i.spriteFrame=new SM,i.spriteFrame.texture=t,i.spriteFrame.rect=n)}}else for(var r in this.textures)this.textures[r].spriteFrame=null}}]),e}(yat))||wst,mot=dot("dragonBones.CCTextureData")(Rst=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).spriteFrame=null,e}return s(e,t),e.toString=function(){return"[class dragonBones.CCTextureData]"},e.prototype._onClear=function(){t.prototype._onClear.call(this),this.spriteFrame=null},e}(Sat))||Rst,got=eo("dragonBones.CCSlot")(Ist=function(t){function e(){var e;return(e=t.call(this)||this)._localVertices=void 0,e._indices=void 0,e._matrix=void 0,e._worldMatrix=void 0,e._worldMatrixDirty=void 0,e._color=void 0,e._localVertices=[],e._indices=[],e._matrix=new Vn,e._worldMatrix=new Vn,e._worldMatrixDirty=!0,e._visible=!1,e._color=new En,e}s(e,t),e.toString=function(){return"[class dragonBones.CCSlot]"};var i=e.prototype;return i.getTexture=function(){return this._textureData?this._textureData.spriteFrame.texture:null},i.calculWorldMatrix=function(){var t=this._armature._parent;t?this._mulMat(this._worldMatrix,t._worldMatrix,this._matrix):Vn.copy(this._worldMatrix,this._matrix),this._worldMatrixDirty=!1},i._onClear=function(){t.prototype._onClear.call(this),this._localVertices.length=0,this._indices.length=0,Vn.identity(this._matrix),Vn.identity(this._worldMatrix),this._worldMatrixDirty=!0,this._color=new En,this._visible=!1},i._onUpdateDisplay=function(){},i._initDisplay=function(){},i._addDisplay=function(){this._visible=!0},i._replaceDisplay=function(){},i._removeDisplay=function(){this._visible=!1},i._disposeDisplay=function(){},i._updateVisible=function(){this._visible=this.parent.visible},i._updateGlueMesh=function(){},i._updateZOrder=function(){},i._updateBlendMode=function(){if(this._childArmature)for(var t=this._childArmature.getSlots(),e=0,i=t.length;e<i;e++){var n=t[e];n._blendMode=this._blendMode,n._updateBlendMode()}},i._updateColor=function(){var t=this._color;t.r=255*this._colorTransform.redMultiplier,t.g=255*this._colorTransform.greenMultiplier,t.b=255*this._colorTransform.blueMultiplier,t.a=255*this._colorTransform.alphaMultiplier},i._updateFrame=function(){this._indices.length=0;var t=this._indices,e=this._localVertices,i=0,n=0,r=this._textureData;if(this._display&&!(this._displayIndex<0)&&r&&r.spriteFrame){var s=r.spriteFrame.texture,a=s.width,o=s.height,h=r.region;if(0!==a&&0!==o){var u=null!==this._deformVertices&&this._display===this._meshDisplay?this._deformVertices.verticesData:null;if(u){var l=u.data,c=l.intArray,_=l.floatArray,f=c[u.offset+sot.MeshVertexCount],d=c[u.offset+sot.MeshTriangleCount],p=c[u.offset+sot.MeshFloatOffset];p<0&&(p+=65536);for(var m=p+2*f,g=this._armature._armatureData.scale,v=0,y=2*f;v<y;v+=2)e[n++]=_[p+v]*g,e[n++]=-_[p+v+1]*g,u.rotated?(e[n++]=(h.x+(1-_[m+v])*h.width)/a,e[n++]=(h.y+_[m+v+1]*h.height)/o):(e[n++]=(h.x+_[m+v]*h.width)/a,e[n++]=(h.y+_[m+v+1]*h.height)/o);for(var S=0;S<3*d;++S)t[i++]=c[u.offset+sot.MeshVertexIndices+S];e.length=n,t.length=i,u.weight&&this._identityTransform()}else{var T=h.x/a,A=(h.y+h.height)/o,b=(h.x+h.width)/a,E=h.y/o;e[n++]=0,e[n++]=0,e[n++]=T,e[n++]=A,e[n++]=h.width,e[n++]=0,e[n++]=b,e[n++]=A,e[n++]=0,e[n++]=h.height,e[n++]=T,e[n++]=E,e[n++]=h.width,e[n++]=h.height,e[n++]=b,e[n++]=E,t[0]=0,t[1]=1,t[2]=2,t[3]=1,t[4]=3,t[5]=2,e.length=n,t.length=6}this._visibleDirty=!0,this._blendModeDirty=!0,this._colorDirty=!0}else console.error("SpriteFrame "+r.spriteFrame.name+" incorrect size "+a+" x "+o)}},i._updateMesh=function(){var t=this._armature._armatureData.scale,e=this._deformVertices.vertices,i=this._deformVertices.bones,n=this._deformVertices.verticesData,r=n.weight,s=e.length>0&&n.inheritDeform,a=this._localVertices;if(r){var o=n.data,h=o.intArray,u=o.floatArray,l=h[n.offset+sot.MeshVertexCount],c=h[r.offset+sot.WeigthFloatOffset];c<0&&(c+=65536);for(var _=0,f=r.offset+sot.WeigthBoneIndices+i.length,d=c,p=0,m=0;_<l;_++,m+=4){for(var g=h[f++],v=0,y=0,S=0;S<g;++S){var T=i[h[f++]];if(null!==T){var A=T.globalTransformMatrix,b=u[d++],E=u[d++]*t,C=u[d++]*t;s&&(E+=e[p++],C+=e[p++]),v+=(A.a*E+A.c*C+A.tx)*b,y+=(A.b*E+A.d*C+A.ty)*b}}a[m]=v,a[m+1]=-y}}else if(s){var x=this._parent._boneData.type!==oot.Bone,w=n.data,R=w.intArray,I=w.floatArray,D=R[n.offset+sot.MeshVertexCount],B=R[n.offset+sot.MeshFloatOffset];B<0&&(B+=65536);for(var M=0,P=D,O=0;M<P;M++,O+=4){var L=I[B+2*M]*t+e[2*M],N=I[B+2*M+1]*t+e[2*M+1];if(x){var F=this._parent._getGlobalTransformMatrix(L,N);a[O]=F.a*L+F.c*N+F.tx,a[O+1]=-F.b*L+F.d*N+F.ty}else a[O]=L,a[O+1]=-N}}r&&this._identityTransform()},i._identityTransform=function(){var t=this._matrix;t.m00=1,t.m01=0,t.m04=-0,t.m05=-1,t.m12=0,t.m13=0,this._worldMatrixDirty=!0},i._updateTransform=function(){var t=this._matrix;t.m00=this.globalTransformMatrix.a,t.m01=this.globalTransformMatrix.b,t.m04=-this.globalTransformMatrix.c,t.m05=-this.globalTransformMatrix.d,this._childArmature?(t.m12=this.globalTransformMatrix.tx,t.m13=this.globalTransformMatrix.ty):(t.m12=this.globalTransformMatrix.tx-(this.globalTransformMatrix.a*this._pivotX-this.globalTransformMatrix.c*this._pivotY),t.m13=this.globalTransformMatrix.ty-(this.globalTransformMatrix.b*this._pivotX-this.globalTransformMatrix.d*this._pivotY)),this._worldMatrixDirty=!0},i.updateWorldMatrix=function(){if(this._armature){var t=this._armature._parent;if(t&&t.updateWorldMatrix(),this._worldMatrixDirty){this.calculWorldMatrix();var e=this.childArmature;if(!e)return;for(var i=e.getSlots(),n=0,r=i.length;n<r;n++){var s=i[n];s&&(s._worldMatrixDirty=!0)}}}},i._mulMat=function(t,e,i){var n=e.m00,r=e.m01,s=e.m04,a=e.m05,o=e.m12,h=e.m13,u=i.m00,l=i.m01,c=i.m04,_=i.m05,f=i.m12,d=i.m13;0!==r||0!==s?(t.m00=u*n+l*s,t.m01=u*r+l*a,t.m04=c*n+_*s,t.m05=c*r+_*a,t.m12=n*f+s*d+o,t.m13=r*f+a*d+h):(t.m00=u*n,t.m01=l*a,t.m04=c*n,t.m05=_*a,t.m12=n*f+o,t.m13=a*d+h)},e}(xat))||Ist,vot=eo("dragonBones.CCArmatureDisplay")(Dst=function(t){function e(){var e;return(e=t.call(this)||this).shouldAdvanced=!1,e._ccNode=null,e._ccComponent=null,e._eventTarget=void 0,e._armature=null,e._eventTarget=new Hs,e}s(e,t);var i=e.prototype;return i.hasEvent=function(){return z("Method not implemented."),!1},i.addEvent=function(){z("Method not implemented.")},i.removeEvent=function(){z("Method not implemented.")},i.setEventTarget=function(t){this._eventTarget=t},i.getRootDisplay=function(){var t,e=this._armature._parent;if(!e)return this;for(;e;)t=e,e=e._armature._parent;return t._armature.display},i.convertToRootSpace=function(t){var e=this._armature._parent;if(!e)return t;e.updateWorldMatrix();var i=e._worldMatrix,n=new gn(0,0);return n.x=t.x*i.m00+t.y*i.m04+i.m12,n.y=t.x*i.m01+t.y*i.m05+i.m13,n},i.convertToWorldSpace=function(t){var e,i=this.convertToRootSpace(t),n=this.getRootNode();return null==n||null===(e=n._uiProps.uiTransformComp)||void 0===e?void 0:e.convertToWorldSpaceAR(i)},i.getRootNode=function(){var t=this.getRootDisplay();return t&&t._ccNode},i.dbInit=function(t){this._armature=t},i.dbClear=function(){this._armature=null},i.dbUpdate=function(){this._ccComponent&&this._ccComponent.markForUpdateRenderData()},i.advanceTimeBySelf=function(t){this.shouldAdvanced=!!t},i.hasDBEventListener=function(t){return this._eventTarget.hasEventListener(t)},i.addDBEventListener=function(t,e,i){this._eventTarget.on(t,e,i)},i.removeDBEventListener=function(t,e,i){this._eventTarget.off(t,e,i)},i.dispatchDBEvent=function(t,e){this._eventTarget.emit(t,e)},n(e,[{key:"node",get:function(){return this}}]),e}(sat))||Dst,yot=eo("CCFactory")(((Mst=function(t){function e(){var e;(e=t.call(this)||this).id=void 0,e.uuid=void 0,e._slots=void 0;var i=new vot;return e._dragonBones=new Gst(i),ID.getScheduler()&&(EB.on(bB.EVENT_RESTART,e.onRestart,c(e)),e.initUpdate()),e.id=e.uuid="CCFactory",e}s(e,t),e.getInstance=function(){return e._factory||(e._factory=new e),e._factory};var i=e.prototype;return i.onRestart=function(){e._factory=null},i.initUpdate=function(){kl.enableForTarget(this),ID.getScheduler().scheduleUpdate(this,Ml.Priority.HIGH,!1)},i.update=function(t){this._dragonBones.advanceTime(t)},i.getDragonBonesDataByRawData=function(t){return(t instanceof ArrayBuffer?not._binaryParser:this._dataParser).parseDragonBonesData(t,1)},i.buildArmatureDisplay=function(t,e,i,n){var r=this.buildArmature(t,e,i,n);return r?r._display:null},i.createArmatureNode=function(t,e,i){var n=(i=i||new hg).getComponent("dragonBones.ArmatureDisplay");return n||(n=i.addComponent("dragonBones.ArmatureDisplay")),i.name=e,n._armatureName=e,n._dragonAsset=t.dragonAsset,n._dragonAtlasAsset=t.dragonAtlasAsset,n._init(),n},i._buildTextureAtlasData=function(t,e){return t?t.renderTexture=e:t=Vst.borrowObject(pot),t},i._sortSlots=function(){for(var t=this._slots,e=[],i=0,n=t.length;i<n;i++){for(var r=t[i],s=r._zOrder,a=!1,o=e.length-1;o>=0;o--)if(s>=e[o]._zOrder){e.splice(o+1,0,r),a=!0;break}a||e.unshift(r)}this._slots=e},i._buildArmature=function(t){var e=Vst.borrowObject(Aat);e._skinData=t.skin,e._animation=Vst.borrowObject(Bat),e._animation._armature=e,e._animation.animations=t.armature.animations,e._isChildArmature=!1;var i=new vot;return e.init(t.armature,i,i,this._dragonBones),e},i._buildSlot=function(t,e,i){var n=Vst.borrowObject(got),r=n;return n.init(e,i,r,r),n},i.getDragonBonesDataByUUID=function(t){for(var e in this._dragonBonesDataMap)if(-1!==e.indexOf(t))return this._dragonBonesDataMap[e];return null},i.removeDragonBonesDataByUUID=function(t,e){for(var i in void 0===e&&(e=!0),this._dragonBonesDataMap)-1!==i.indexOf(t)&&(e&&this._dragonBones.bufferObject(this._dragonBonesDataMap[i]),delete this._dragonBonesDataMap[i])},e}(not))._factory=null,Bst=Mst))||Bst,Sot=1/60,Tot=[],Aot=[],bot=0,Eot=0,Cot=0,xot=null,wot=null,Rot=0,Iot=0,Dot=0,Bot=0,Mot=0,Pot=function(){function t(){this.maxVertexCount=0,this.maxIndexCount=0,this._privateMode=!1,this._inited=!1,this._invalid=!0,this._enableCacheAttachedInfo=!1,this.frames=[],this.totalTime=0,this.isCompleted=!1,this._frameIdx=-1,this._armatureInfo=null,this._animationName=null,this._tempSegments=null,this._tempColors=null,this._tempBoneInfos=null}var e=t.prototype;return e.init=function(t,e){this._inited=!0,this._armatureInfo=t,this._animationName=e},e.clear=function(){this._inited=!1;for(var t=0,e=this.frames.length;t<e;t++)this.frames[t].segments.length=0;this.invalidAllFrame()},e.begin=function(){if(this._invalid){var t=this._armatureInfo,e=t.curAnimationCache;e&&e!==this&&(this._privateMode?e.invalidAllFrame():e.updateToFrame()),t.armature.animation.play(this._animationName,1),t.curAnimationCache=this,this._invalid=!1,this._frameIdx=-1,this.totalTime=0,this.isCompleted=!1}},e.end=function(){this._needToUpdate()||(this._armatureInfo.curAnimationCache=null,this.frames.length=this._frameIdx+1,this.isCompleted=!0)},e._needToUpdate=function(t){return!this._armatureInfo.armature.animation.isCompleted&&this.totalTime<30&&(void 0===t||this._frameIdx<t)},e.updateToFrame=function(t){if(this._inited&&(this.begin(),this._needToUpdate(t))){var e=this._armatureInfo.armature;do{e.advanceTime(Sot),this._frameIdx++,this.updateFrame(e,this._frameIdx),this.totalTime+=Sot}while(this._needToUpdate(t));this.end()}},e.isInited=function(){return this._inited},e.isInvalid=function(){return this._invalid},e.invalidAllFrame=function(){this.isCompleted=!1,this._invalid=!0},e.updateAllFrame=function(){this.invalidAllFrame(),this.updateToFrame()},e.enableCacheAttachedInfo=function(){this._enableCacheAttachedInfo||(this._enableCacheAttachedInfo=!0,this.invalidAllFrame())},e.updateFrame=function(t,e){Cot=0,bot=0,Eot=0,xot=null,wot=null,Rot=0,Iot=0,Dot=0,Bot=0,Mot=0,this.frames[e]=this.frames[e]||{segments:[],colors:[],boneInfos:[],vertices:new Float32Array,uintVert:new Uint32Array,indices:new Uint16Array};var i=this.frames[e],n=this._tempSegments=i.segments,r=this._tempColors=i.colors,s=this._tempBoneInfos=i.boneInfos;this._traverseArmature(t,1),Bot>0&&(r[Bot-1].vfOffset=Cot),r.length=Bot,s.length=bot;var a=Dot-1;if(a>=0)if(Iot>0){var o=n[a];o.indexCount=Iot,o.vfCount=9*Rot,o.vertexCount=Rot,n.length=Dot}else n.length=Dot-1;if(0!==n.length){var h,u=i.vertices,l=Cot/5,c=9*l;(!u||u.length<Cot)&&(u=i.vertices=new Float32Array(c));for(var _=0,f=0;_<c;)u[_]=Tot[f++],u[_+1]=Tot[f++],u[_+3]=Tot[f++],u[_+4]=Tot[f++],h=Tot[f++],u[_+5]=(255&h)/255,u[_+6]=(h>>8&255)/255,u[_+7]=(h>>16&255)/255,u[_+8]=(h>>24&255)/255,_+=9;var d=i.indices;(!d||d.length<Eot)&&(d=i.indices=new Uint16Array(Eot));for(var p=0;p<Eot;p++)d[p]=Aot[p];i.vertices=u,i.indices=d,this.maxVertexCount=l>this.maxVertexCount?l:this.maxVertexCount,this.maxIndexCount=d.length>this.maxIndexCount?d.length:this.maxIndexCount}},e._traverseArmature=function(t,e){var i,n,r,s,a,o,h,u,l,c=this._tempColors,_=this._tempSegments,f=this._tempBoneInfos,d=t._slots,p=t._bones;if(this._enableCacheAttachedInfo)for(var m=0,g=p.length;m<g;m++,bot++){var v=p[m],y=f[bot];y||(y=f[bot]={globalTransformMatrix:new Ust});var S=v.globalTransformMatrix;y.globalTransformMatrix.copyFrom(S)}for(var T=0,A=d.length;T<A;T++)if((r=d[T])._visible&&r._displayData)if(r.updateWorldMatrix(),a=r._color,r.childArmature)this._traverseArmature(r.childArmature,e*a.a/255);else if(h=r.getTexture()){xot===h.nativeUrl&&wot===r._blendMode||(xot=h.nativeUrl,wot=r._blendMode,(u=Dot-1)>=0&&(Iot>0?((l=_[u]).indexCount=Iot,l.vertexCount=Rot,l.vfCount=9*Rot):Dot--),_[Dot]={tex:h,blendMode:r._blendMode,indexCount:0,vertexCount:0,vfCount:0},Dot++,Iot=0,Rot=0),o=(a.a*e<<24>>>0)+(a.b<<16)+(a.g<<8)+a.r,Mot!==o&&(Mot=o,Bot>0&&(c[Bot-1].vfOffset=Cot),c[Bot++]={r:a.r,g:a.g,b:a.b,a:a.a*e,vfOffset:0}),i=r._localVertices,n=r._indices,s=r._worldMatrix;for(var b=0,E=i.length;b<E;)Ost=i[b++],Lst=i[b++],Tot[Cot++]=Ost*s.m00+Lst*s.m04+s.m12,Tot[Cot++]=Ost*s.m01+Lst*s.m05+s.m13,Tot[Cot++]=i[b++],Tot[Cot++]=i[b++],Tot[Cot++]=o;for(var C=0,x=n.length;C<x;C++)Aot[Eot++]=Rot+n[C];Iot+=n.length,Rot+=i.length/4}},t}(),Oot=function(){function t(){this._privateMode=!1,this._animationPool={},this._armatureCache={}}var e=t.prototype;return e.enablePrivateMode=function(){this._privateMode=!0},e.dispose=function(){for(var t in this._armatureCache){var e=this._armatureCache[t];if(e){var i=e.armature;i&&i.dispose()}}this._armatureCache={},this._animationPool={}},e._removeArmature=function(t){var e=this._armatureCache[t],i=e.animationsCache;for(var n in i){var r=i[n];r&&(this._animationPool[t+"#"+n]=r,r.clear())}var s=e.armature;s&&s.dispose(),delete this._armatureCache[t]},e.resetArmature=function(t){for(var e in this._armatureCache)-1!==e.indexOf(t)&&this._removeArmature(e)},e.getArmatureCache=function(e,i,n){var r,s=this._armatureCache[i];if(s)r=s.armature;else{var a=yot.getInstance().buildArmatureDisplay(e,i,"",n);if(!a||!a._armature)return null;if(r=a._armature,!t.canCache(r))return r.dispose(),null;this._armatureCache[i]={armature:r,animationsCache:{},curAnimationCache:null}}return r},e.getAnimationCache=function(t,e){var i=this._armatureCache[t];return i?i.animationsCache[e]:null},e.initAnimationCache=function(t,e){if(!e)return null;var i=this._armatureCache[t],n=i&&i.armature;if(!n)return null;if(!n.animation.hasAnimation(e))return null;var r=i.animationsCache,s=r[e];if(!s){var a=t+"#"+e;(s=this._animationPool[a])?delete this._animationPool[a]:(s=new Pot)._privateMode=this._privateMode,s.init(i,e),r[e]=s}return s},e.invalidAnimationCache=function(t){var e=this._armatureCache[t];if(e&&e.armature){var i=e.animationsCache;for(var n in i)i[n].invalidAllFrame()}},e.updateAnimationCache=function(t,e){if(e){var i=this.initAnimationCache(t,e);if(!i)return;i.updateAllFrame()}else{var n=this._armatureCache[t];if(!n||!n.armature)return;var r=n.animationsCache;for(var s in r)r[s].updateAllFrame()}},t.canCache=function(t){for(var e=t._slots,i=0,n=e.length;i<n;i++)if(e[i].childArmature)return!1;return!0},t}();Pst=Oot,Oot.FrameTime=Sot,Oot.sharedCache=new Pst;var Lot,Not,Fot,kot,Got,Vot,Uot,zot,Hot=lo,Wot=eo("dragonBones.DragonBonesAsset")((Fst=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._dragonBonesJson=kst&&kst(),e._factory=null,e._dragonBonesJsonData=void 0,e._armaturesEnum=null,e}s(e,t);var i=e.prototype;return i.constructctor=function(){this.reset()},i.createNode=function(t){var e=new hg(this.name);return e.addComponent("dragonBones.ArmatureDisplay").dragonAsset=this,t(null,e)},i.reset=function(){this._clear()},i.init=function(t,e){this._factory=t||yot.getInstance(),!this._dragonBonesJsonData&&this.dragonBonesJson&&(this._dragonBonesJsonData=JSON.parse(this.dragonBonesJson));var i;if(i=this._dragonBonesJsonData?this._dragonBonesJsonData:this._nativeAsset,!this._uuid){var n=this._factory.getDragonBonesDataByRawData(i);n?this._uuid=n.name:z("dragonbones name is empty")}var r=this._uuid+"#"+e;return this._factory.getDragonBonesData(r)||this._factory.parseDragonBonesData(i instanceof ArrayBuffer?i:i.buffer instanceof ArrayBuffer?i.buffer:i,r),r},i.getArmatureEnum=function(){if(this._armaturesEnum)return this._armaturesEnum;this.init();var t=this._factory.getDragonBonesDataByUUID(this._uuid);if(t){for(var e=t.armatureNames,i={},n=0;n<e.length;n++)i[e[n]]=n;return this._armaturesEnum=Ee(i)}return null},i.getAnimsEnum=function(t){this.init();var e=this._factory.getDragonBonesDataByUUID(this._uuid);if(e){var i=e.getArmature(t);if(!i)return null;var n={"<None>":0},r=i.animations,s=0;for(var a in r)r.hasOwnProperty(a)&&(n[a]=s+1,s++);return Ee(n)}return null},i.destroy=function(){return this._clear(),t.prototype.destroy.call(this)},i._clear=function(){this._factory&&(Oot.sharedCache.resetArmature(this._uuid),this._factory.removeDragonBonesDataByUUID(this._uuid,!0))},n(e,[{key:"dragonBonesJson",get:function(){return this._dragonBonesJson},set:function(t){this._dragonBonesJson=t,this._dragonBonesJsonData=JSON.parse(t),this.reset()}}]),e}(vd),kst=ja(Fst.prototype,"_dragonBonesJson",[Hot],(function(){return""})),Nst=Fst))||Nst;S.internal.DragonBonesAsset=Wot;var Xot,jot=lo,Yot=Lo,qot=(Lot=eo("dragonBones.DragonBonesAtlasAsset"),Not=Yot(lm),Lot((kot=function(t){function e(){var e;return(e=t.call(this)||this)._atlasJson=Got&&Got(),e._texture=Vot&&Vot(),e._atlasJsonData=Uot&&Uot(),e._factory=null,e._textureAtlasData=zot&&zot(),e._clear(),e}s(e,t);var i=e.prototype;return i.createNode=function(t){var e=new hg(this.name);return e.addComponent("dragonBones.ArmatureDisplay").dragonAtlasAsset=this,t(null,e)},i.init=function(t){this._factory=t,this._atlasJsonData||(this._atlasJsonData=JSON.parse(this.atlasJson));var e=this._atlasJsonData;this._uuid=this._uuid||e.name,this._textureAtlasData?t.addTextureAtlasData(this._textureAtlasData,this._uuid):this._textureAtlasData=t.parseTextureAtlasData(e,this.texture,this._uuid)},i.destroy=function(){return this._clear(),t.prototype.destroy.call(this)},i._clear=function(){this._factory&&(Oot.sharedCache.resetArmature(this._uuid),this._factory.removeTextureAtlasData(this._uuid,!0),this._factory.removeDragonBonesDataByUUID(this._uuid,!0)),this._textureAtlasData=null},n(e,[{key:"atlasJson",get:function(){return this._atlasJson},set:function(t){this._atlasJson=t,this._atlasJsonData=JSON.parse(this.atlasJson),this._clear()}},{key:"texture",get:function(){return this._texture},set:function(t){this._texture=t,this._clear()}}]),e}(vd),Got=ja(kot.prototype,"_atlasJson",[jot],(function(){return""})),Vot=ja(kot.prototype,"_texture",[jot,Not],(function(){return null})),Uot=ja(kot.prototype,"_atlasJsonData",[jot],(function(){return{}})),zot=ja(kot.prototype,"_textureAtlasData",[jot],(function(){return null})),Fot=kot))||Fot);S.internal.DragonBonesAtlasAsset=qot;var Kot,Qot,Zot,Jot,$ot,tht,eht,iht,nht,rht,sht,aht,oht,hht,uht,lht,cht,_ht,fht,dht,pht,mht,ght,vht,yht,Sht,Tht,Aht,bht,Eht,Cht,xht,wht,Rht,Iht=new Vn,Dht=eo("dragonBones.AttachUtil")(Xot=function(){function t(){this._inited=!1,this._armature=null,this._armatureNode=null,this._armatureDisplay=null}var e=t.prototype;return e.init=function(t){this._inited=!0,this._armature=t._armature,this._armatureNode=t.node,this._armatureDisplay=t},e.reset=function(){this._inited=!1,this._armature=null,this._armatureNode=null,this._armatureDisplay=null},e._syncAttachedNode=function(){if(this._inited){this._armatureNode.worldMatrix;var t=null,e=this._armatureDisplay.isAnimationCached();if(!e||!this._armatureDisplay||(t=this._armatureDisplay._curFrame&&this._armatureDisplay._curFrame.boneInfos))for(var i,n,r,s=this._armatureDisplay.sockets,a=this._armatureDisplay.socketNodes,o=this._armature.getBones(),h=s.length-1;h>=0;h--){var u=s[h],l=u.target;if(l)if(l.isValid){var c=e?t[u.boneIndex]:o[u.boneIndex];c&&(i=l,n=c.globalTransformMatrix,r=void 0,(r=Iht).m00=n.a,r.m01=n.b,r.m04=-n.c,r.m05=-n.d,r.m12=n.tx,r.m13=n.ty,i.matrix=Iht)}else a.delete(u.path),s.splice(h,1)}}},t}())||Xot,Bht=function(t){function e(){var e;return(e=t.call(this)||this)._armatures=new Set,e}s(e,t),e.getInstance=function(){return e._instance||(e._instance=new e,ID.registerSystem(e.ID,e._instance,Ml.Priority.HIGH)),e._instance};var i=e.prototype;return i.add=function(t){t&&(this._armatures.has(t)||this._armatures.add(t))},i.remove=function(t){t&&this._armatures.has(t)&&this._armatures.delete(t)},i.postUpdate=function(t){this._armatures&&this._armatures.forEach((function(e){e.updateAnimation(t),e.syncAttachedNode()}))},i.prepareRenderData=function(){this._armatures&&this._armatures.forEach((function(t){t.markForUpdateRenderData()}))},e}(Ml);Bht.ID="ARMATURE",Bht._instance=void 0,S.internal.ArmatureSystem=Bht,function(t){t[t.default=-1]="default"}(Cht||(Cht={})),we(Cht),function(t){t[t["<None>"]=0]="<None>"}(xht||(xht={})),we(xht),function(t){t[t.REALTIME=0]="REALTIME"}(wht||(wht={})),we(xht),function(t){t[t.REALTIME=0]="REALTIME",t[t.SHARED_CACHE=1]="SHARED_CACHE",t[t.PRIVATE_CACHE=2]="PRIVATE_CACHE"}(Rht||(Rht={})),we(Rht);var Mht=eo,Pht=lo,Oht=Lo,Lht=jo,Nht=(Kot=Mht("dragonBones.ArmatureDisplay.DragonBoneSocket"),Qot=Oht(hg),Kot((Jot=function(t,e){void 0===t&&(t=""),void 0===e&&(e=null),this.path=$ot&&$ot(),this.target=tht&&tht(),this.boneIndex=null,this.path=t,this.target=e},$ot=ja(Jot.prototype,"path",[Pht],(function(){return""})),tht=ja(Jot.prototype,"target",[Qot,Pht],(function(){return null})),Zot=Jot))||Zot);ne(Nht,"dragonBones.ArmatureDisplay.DragonBoneSocket");var Fht=(eht=Mht("dragonBones.ArmatureDisplay"),iht=Oht(Wot),nht=Oht(qot),rht=Oht(Cht),sht=Oht(xht),aht=Oht([Nht]),oht=Oht(zT),eht(((Eht=function(t){s(i,t);var e=i.prototype;function i(){var e;return(e=t.call(this)||this).playTimes=lht&&lht(),e.premultipliedAlpha=cht&&cht(),e._armature=null,e.attachUtil=void 0,e._defaultArmatureIndexValue=_ht&&_ht(),e._dragonAsset=fht&&fht(),e._dragonAtlasAsset=dht&&dht(),e._armatureName=pht&&pht(),e._animationName=mht&&mht(),e._animationIndexValue=ght&&ght(),e._preCacheMode=-1,e._cacheMode=Rht.REALTIME,e._defaultCacheModeValue=vht&&vht(),e._timeScale=yht&&yht(),e._playTimes=Sht&&Sht(),e._debugBones=Tht&&Tht(),e._enableBatch=Aht&&Aht(),e._debugDraw=null,e._armatureKey="",e._accTime=0,e._playCount=0,e._frameCache=null,e._curFrame=null,e._playing=!1,e._armatureCache=null,e._eventTarget=void 0,e._factory=null,e._displayProxy=null,e._drawIdx=0,e._drawList=new Rs((function(){return{material:null,texture:null,indexOffset:0,indexCount:0}}),1),e.maxVertexCount=0,e.maxIndexCount=0,e._materialCache={},e._enumArmatures=Ee({}),e._enumAnimations=Ee({}),e._socketNodes=new Map,e._cachedSockets=new Map,e._sockets=bht&&bht(),e._inited=void 0,e._drawInfoList=[],e._cacheModeEnum=void 0,e._eventTarget=new Hs,e._inited=!1,e.attachUtil=new Dht,e.initFactory(),mi(c(e),"_animationIndex",e._enumAnimations),mi(c(e),"_defaultArmatureIndex",e._enumArmatures),e._useVertexOpacity=!0,e}return e.requestDrawInfo=function(t){return this._drawInfoList[t]||(this._drawInfoList[t]=new QP),this._drawInfoList[t]},e.initFactory=function(){this._factory=yot.getInstance()},e.onLoad=function(){t.prototype.onLoad.call(this)},e._requestDrawData=function(t,e,i,n){var r=this._drawList.add();return r.material=t,r.texture=e,r.indexOffset=i,r.indexCount=n,r},e.destroyRenderData=function(){this._drawList.reset(),t.prototype.destroyRenderData.call(this)},e.getMaterialTemplate=function(){return null!==this.customMaterial?this.customMaterial:(this.material||this.updateMaterial(),this.material)},e.getMaterialForBlend=function(t,e){var i=t+"/"+e,n=this._materialCache[i];if(n)return n;var r=this.getMaterialTemplate();return(n=new ZT({parent:r,subModelIdx:0,owner:this})).recompileShaders({TWO_COLORED:!1,USE_LOCAL:!1}),this._materialCache[i]=n,n.overridePipelineStates({blendState:{targets:[{blendSrc:t,blendDst:e}]}}),n},e._updateBuiltinMaterial=function(){return bT.get("default-spine-material")},e.updateMaterial=function(){var t;t=this._customMaterial?this._customMaterial:this._updateBuiltinMaterial(),this.setSharedMaterial(t,0),this._cleanMaterialCache()},e._render=function(t){var e=0;if(this.renderData&&this._drawList){for(var i=this.renderData,n=i.chunk,r=n.vertexAccessor,s=i.getMeshBuffer(),a=s.indexOffset,o=0;o<this._drawList.length;o++){this._drawIdx=o;var h=this._drawList.data[o];h.texture&&t.commitMiddleware(this,s,a+h.indexOffset,h.indexCount,h.texture,h.material,this._enableBatch),e+=h.indexCount}var u=i.indices.subarray(0,e);r.appendIndices(n.bufferId,u)}},e.__preload=function(){t.prototype.__preload.call(this),this._init()},e._init=function(){if(this._cacheMode=this._defaultCacheMode,!this._inited){this._inited=!0,this._parseDragonAtlasAsset(),this._refresh();for(var t=this.node.children,e=0,i=t.length;e<i;e++){var n=t[e];n&&"DEBUG_DRAW_NODE"===n.name&&n.destroy()}this._updateDebugDraw(),this._indexBoneSockets(),this._updateSocketBindings()}},e.getArmatureKey=function(){return this._armatureKey},e.setAnimationCacheMode=function(t){this._preCacheMode!==t&&(this._cacheMode=t,this._buildArmature(),this._armature&&!this.isAnimationCached()&&this._factory._dragonBones.clock.add(this._armature),this._updateSocketBindings(),this.markForUpdateRenderData())},e.isAnimationCached=function(){return this._cacheMode!==Rht.REALTIME},e.onEnable=function(){t.prototype.onEnable.call(this),this._armature&&!this.isAnimationCached()&&this._factory._dragonBones.clock.add(this._armature),this._flushAssembler(),Bht.getInstance().add(this)},e.onDisable=function(){t.prototype.onDisable.call(this),this._armature&&!this.isAnimationCached()&&this._factory._dragonBones.clock.remove(this._armature),Bht.getInstance().remove(this)},e._emitCacheCompleteEvent=function(){this._eventTarget.emit(Jat.LOOP_COMPLETE),this._eventTarget.emit(Jat.COMPLETE)},e.updateAnimation=function(t){if(this.markForUpdateRenderData(),this.isAnimationCached()&&this._frameCache){var e=this._frameCache;if(e.isInited()){var i=e.frames;if(this._playing){var n=Oot.FrameTime;0===this._accTime&&0===this._playCount&&this._eventTarget.emit(Jat.START),this._accTime+=t*this.timeScale*1;var r=Math.floor(this._accTime/n);if(e.isCompleted||(e.updateToFrame(r),this.renderData&&(this.renderData.vertexCount<e.maxVertexCount||this.renderData.indexCount<e.maxIndexCount)&&(this.maxVertexCount=e.maxVertexCount>this.maxVertexCount?e.maxVertexCount:this.maxVertexCount,this.maxIndexCount=e.maxIndexCount>this.maxIndexCount?e.maxIndexCount:this.maxIndexCount,this.renderData.resize(this.maxVertexCount,this.maxIndexCount),(!this.renderData.indices||this.maxIndexCount>this.renderData.indices.length)&&(this.renderData.indices=new Uint16Array(this.maxIndexCount)))),e.isCompleted&&r>=i.length){if(this._playCount++,this.playTimes>0&&this._playCount>=this.playTimes)return this._curFrame=i[i.length-1],this._accTime=0,this._playing=!1,this._playCount=0,this._emitCacheCompleteEvent(),void this.attachUtil._syncAttachedNode();this._accTime=0,r=0,this._emitCacheCompleteEvent()}this._curFrame=i[r],this.attachUtil._syncAttachedNode()}else e.isInvalid()&&(e.updateToFrame(),this._curFrame=i[i.length-1],this.renderData&&(this.renderData.vertexCount<e.maxVertexCount||this.renderData.indexCount<e.maxIndexCount)&&(this.maxVertexCount=e.maxVertexCount>this.maxVertexCount?e.maxVertexCount:this.maxVertexCount,this.maxIndexCount=e.maxIndexCount>this.maxIndexCount?e.maxIndexCount:this.maxIndexCount,this.renderData.resize(this.maxVertexCount,this.maxIndexCount),(!this.renderData.indices||this.maxIndexCount>this.renderData.indices.length)&&(this.renderData.indices=new Uint16Array(this.maxIndexCount))))}}},e.onDestroy=function(){this._materialInstances=this._materialInstances.filter((function(t){return!!t})),this._inited=!1,this._cacheMode===Rht.PRIVATE_CACHE?(this._armatureCache.dispose(),this._armatureCache=null,this._armature=null):this._cacheMode===Rht.SHARED_CACHE?(this._armatureCache=null,this._armature=null):this._armature&&(this._armature.dispose(),this._armature=null),this._drawList.destroy(),t.prototype.onDestroy.call(this)},e._updateDebugDraw=function(){if(this.debugBones){if(!this._debugDraw){var t=new hg("DEBUG_DRAW_NODE");t.hideFlags|=Ms.Flags.DontSave|Ms.Flags.HideInHierarchy;var e=t.addComponent(AF);e.lineWidth=1,e.strokeColor=new En(255,0,0,255),this._debugDraw=e}this._debugDraw.node.parent=this.node}else this._debugDraw&&(this._debugDraw.node.parent=null);this.markForUpdateRenderData()},e._updateBatch=function(){this._cleanMaterialCache(),this.markForUpdateRenderData()},e._buildArmature=function(){if(this.dragonAsset&&this.dragonAtlasAsset&&this.armatureName){this._armature&&(this._preCacheMode===Rht.PRIVATE_CACHE?this._armatureCache.dispose():this._preCacheMode===Rht.REALTIME&&this._armature.dispose(),this._armatureCache=null,this._armature=null,this._displayProxy=null,this._frameCache=null,this._curFrame=null,this._playing=!1,this._preCacheMode=-1),this._cacheMode===Rht.SHARED_CACHE?this._armatureCache=Oot.sharedCache:this._cacheMode===Rht.PRIVATE_CACHE&&(this._armatureCache=new Oot,this._armatureCache.enablePrivateMode());var t=this.dragonAtlasAsset._uuid;if(this._armatureKey=this.dragonAsset.init(this._factory,t),this.isAnimationCached()&&(this._armature=this._armatureCache.getArmatureCache(this.armatureName,this._armatureKey,t),this._armature||(this._cacheMode=Rht.REALTIME)),this._preCacheMode=this._cacheMode,this._cacheMode===Rht.REALTIME){if(this._displayProxy=this._factory.buildArmatureDisplay(this.armatureName,this._armatureKey,"",t),!this._displayProxy)return;this._displayProxy._ccNode=this.node,this._displayProxy._ccComponent=this,this._displayProxy.setEventTarget(this._eventTarget),this._armature=this._displayProxy._armature,this._armature.animation.timeScale=this.timeScale}if(this._cacheMode!==Rht.REALTIME&&this.debugBones&&z("Debug bones is invalid in cached mode"),this._armature){var e=this._armature.armatureData.aabb;this.node._uiProps.uiTransformComp.setContentSize(e.width,e.height)}this.attachUtil.init(this),this.animationName&&this.playAnimation(this.animationName,this.playTimes),this._flushAssembler()}},e.querySockets=function(){return this._armature?(0===this._cachedSockets.size&&this._indexBoneSockets(),Array.from(this._cachedSockets.keys()).sort()):[]},e.querySocketPathByName=function(t){for(var e,i=[],n=f(this._cachedSockets.keys());!(e=n()).done;){var r=e.value;r.endsWith(t)&&i.push(r)}return i},e._parseDragonAtlasAsset=function(){this.dragonAtlasAsset&&this.dragonAtlasAsset.init(this._factory)},e._refresh=function(){this._buildArmature(),this._indexBoneSockets(),this.markForUpdateRenderData()},e._updateCacheModeEnum=function(){this._cacheModeEnum=Ee({}),this._armature?Object.assign(this._cacheModeEnum,Rht):Object.assign(this._cacheModeEnum,wht),mi(this,"_defaultCacheMode",this._cacheModeEnum)},e._updateAnimEnum=function(){var t;t=this.dragonAsset?this.dragonAsset.getAnimsEnum(this.armatureName):xht,this._enumAnimations=Ee({}),Object.assign(this._enumAnimations,t||xht),Ee.update(this._enumAnimations),mi(this,"_animationIndex",this._enumAnimations)},e._updateArmatureEnum=function(){var t;t=this.dragonAsset?this.dragonAsset.getArmatureEnum():Cht,this._enumArmatures=Ee({}),Object.assign(this._enumArmatures,t||Cht),Ee.update(this._enumArmatures),mi(this,"_defaultArmatureIndex",this._enumArmatures)},e._indexBoneSockets=function(){if(this._armature){this._cachedSockets.clear();var t=this._cachedSockets,e=function t(e,i,n){if(n.has(e))return n.get(e);var r=i[e];if(!r.parent)return n.set(e,r.name),r.path=r.name,r.name;var s=t(r.parent._boneIndex,i,n)+"/"+r.name;return n.set(e,s),r.path=s,s};!function i(n,r){for(var s=r.getBones(),a=new Map,o=0;o<s.length;o++)s[o]._boneIndex=o;for(var h=0;h<s.length;h++)e(h,s,a);for(var u,l=f(a.keys());!(u=l()).done;){var c=u.value;t.set(""+n+a.get(c),c)}for(var _=r.getSlots(),d=0;d<_.length;d++)_[d].childArmature&&i(_[d].name,_[d].childArmature)}("",this._armature)}},e.playAnimation=function(t,e){if(this.playTimes=void 0===e?-1:e,this.animationName=t,this.isAnimationCached()){var i=this._armatureCache.getAnimationCache(this._armatureKey,t);i||(i=this._armatureCache.initAnimationCache(this._armatureKey,t)),i&&(this._accTime=0,this._playCount=0,this._frameCache=i,this._sockets.length>0&&this._frameCache.enableCacheAttachedInfo(),this._frameCache.updateToFrame(0),this._playing=!0,this._curFrame=this._frameCache.frames[0])}else if(this._armature)return this._armature.animation.play(t,this.playTimes);return this.markForUpdateRenderData(),null},e.updateAnimationCache=function(t){this.isAnimationCached()&&this._armatureCache.updateAnimationCache(this._armatureKey,t)},e.invalidAnimationCache=function(){this.isAnimationCached()&&this._armatureCache.invalidAnimationCache(this._armatureKey)},e.getArmatureNames=function(){var t=this._factory.getDragonBonesData(this._armatureKey);return t&&t.armatureNames||[]},e.getAnimationNames=function(t){var e=[],i=this._factory.getDragonBonesData(this._armatureKey);if(i){var n=i.getArmature(t);if(n)for(var r in n.animations)n.animations.hasOwnProperty(r)&&e.push(r)}return e},e.on=function(t,e,i){this.addEventListener(t,e,i)},e.off=function(t,e,i){this.removeEventListener(t,e,i)},e.once=function(t,e,i){this._eventTarget.once(t,e,i)},e.addEventListener=function(t,e,i){this._eventTarget.on(t,e,i)},e.removeEventListener=function(t,e,i){this._eventTarget.off(t,e,i)},e.buildArmature=function(t,e){return this._factory.createArmatureNode(this,t,e)},e.armature=function(){return this._armature},e._flushAssembler=function(){var t=i.Assembler.getAssembler(this);this._assembler!==t&&(this._assembler=t),this._armature&&this._assembler&&(this._renderData=this._assembler.createData(this),this._renderData&&(this.maxVertexCount=this._renderData.vertexCount,this.maxIndexCount=this._renderData.indexCount),this.markForUpdateRenderData(),this._updateColor())},e._updateSocketBindings=function(){if(this._armature){this._socketNodes.clear();for(var t=0,e=this._sockets.length;t<e;t++){var i=this._sockets[t];if(i.path&&i.target){var n=this._cachedSockets.get(i.path);if(!n){console.error("Skeleton data does not contain path "+i.path);continue}i.boneIndex=n,this._socketNodes.set(i.path,i.target)}}}},e._verifySockets=function(t){for(var e=0,i=t.length;e<i;e++){var n=t[e].target;!n||n.parent&&n.parent===this.node||console.error("Target node "+n.name+" is expected to be a direct child of "+this.node.name)}},e._cleanMaterialCache=function(){for(var t in this._materialCache)this._materialCache[t].destroy();this._materialCache={}},e.createRenderEntity=function(){var t=new dO(ZP.DYNAMIC);return t.setUseLocal(!1),t},e.markForUpdateRenderData=function(e){void 0===e&&(e=!0),t.prototype.markForUpdateRenderData.call(this,e),this._debugDraw&&this._debugDraw.markForUpdateRenderData(e)},e.syncAttachedNode=function(){this.attachUtil._syncAttachedNode()},n(i,[{key:"dragonAsset",get:function(){return this._dragonAsset},set:function(t){this._dragonAsset=t,this.destroyRenderData(),this._refresh()}},{key:"dragonAtlasAsset",get:function(){return this._dragonAtlasAsset},set:function(t){this._dragonAtlasAsset=t,this._parseDragonAtlasAsset(),this._refresh()}},{key:"armatureName",get:function(){return this._armatureName},set:function(t){this._armatureName=t;var e=this.getAnimationNames(this._armatureName);(!this.animationName||e.indexOf(this.animationName)<0)&&(this.animationName=""),this._armature&&!this.isAnimationCached()&&this._factory._dragonBones.clock.remove(this._armature),this._refresh(),this._armature&&!this.isAnimationCached()&&this._factory._dragonBones.clock.add(this._armature)}},{key:"animationName",get:function(){return this._animationName},set:function(t){this._animationName=t}},{key:"_defaultArmatureIndex",get:function(){return this._defaultArmatureIndexValue},set:function(t){this._defaultArmatureIndexValue=t;var e="";if(this.dragonAsset){var i;if(this.dragonAsset&&(i=this.dragonAsset.getArmatureEnum()),!i)return void it(7400,this.name);e=i[this._defaultArmatureIndex]}void 0!==e?this.armatureName=e:it(7401,this.name),this.markForUpdateRenderData()}},{key:"_animationIndex",get:function(){return this._animationIndexValue},set:function(t){var e;if(this._animationIndexValue=t,0!==this._animationIndex){if(this.dragonAsset&&(e=this.dragonAsset.getAnimsEnum(this.armatureName)),e){var i=e[this._animationIndex];void 0!==i?this.playAnimation(i,this.playTimes):it(7402,this.name)}}else this.animationName=""}},{key:"_defaultCacheMode",get:function(){return this._defaultCacheModeValue},set:function(t){if(this._defaultCacheModeValue=t,this._defaultCacheMode!==Rht.REALTIME&&this._armature&&!Oot.canCache(this._armature))return this._defaultCacheMode=Rht.REALTIME,void z("Animation cache mode doesn't support skeletal nesting");this.setAnimationCacheMode(this._defaultCacheMode)}},{key:"timeScale",get:function(){return this._timeScale},set:function(t){this._timeScale=t,this._armature&&!this.isAnimationCached()&&(this._armature.animation.timeScale=this.timeScale)}},{key:"debugBones",get:function(){return this._debugBones},set:function(t){this._debugBones=t,this._updateDebugDraw()}},{key:"enableBatch",get:function(){return this._enableBatch},set:function(t){t!==this._enableBatch&&(this._enableBatch=t,this._updateBatch())}},{key:"sockets",get:function(){return this._sockets},set:function(t){this._verifySockets(t),this._sockets=t,this._updateSocketBindings(),t.length>0&&this._frameCache&&this._frameCache.enableCacheAttachedInfo()}},{key:"socketNodes",get:function(){return this._socketNodes}},{key:"drawList",get:function(){return this._drawList}},{key:"customMaterial",get:function(){return this._customMaterial},set:function(t){this._customMaterial=t,this.updateMaterial(),this.markForUpdateRenderData()}}]),i}(XO)).AnimationCacheMode=Rht,m((uht=Eht).prototype,"dragonAsset",[iht],Object.getOwnPropertyDescriptor(uht.prototype,"dragonAsset"),uht.prototype),m(uht.prototype,"dragonAtlasAsset",[nht],Object.getOwnPropertyDescriptor(uht.prototype,"dragonAtlasAsset"),uht.prototype),m(uht.prototype,"_defaultArmatureIndex",[rht],Object.getOwnPropertyDescriptor(uht.prototype,"_defaultArmatureIndex"),uht.prototype),m(uht.prototype,"_animationIndex",[sht],Object.getOwnPropertyDescriptor(uht.prototype,"_animationIndex"),uht.prototype),m(uht.prototype,"timeScale",[Pht],Object.getOwnPropertyDescriptor(uht.prototype,"timeScale"),uht.prototype),lht=ja(uht.prototype,"playTimes",[Pht],(function(){return-1})),cht=ja(uht.prototype,"premultipliedAlpha",[Pht],(function(){return!1})),m(uht.prototype,"sockets",[aht],Object.getOwnPropertyDescriptor(uht.prototype,"sockets"),uht.prototype),_ht=ja(uht.prototype,"_defaultArmatureIndexValue",[Pht],(function(){return Cht.default})),fht=ja(uht.prototype,"_dragonAsset",[Pht],(function(){return null})),dht=ja(uht.prototype,"_dragonAtlasAsset",[Pht],(function(){return null})),pht=ja(uht.prototype,"_armatureName",[Pht],(function(){return""})),mht=ja(uht.prototype,"_animationName",[Pht],(function(){return""})),ght=ja(uht.prototype,"_animationIndexValue",[Pht],(function(){return 0})),vht=ja(uht.prototype,"_defaultCacheModeValue",[Pht],(function(){return Rht.REALTIME})),yht=ja(uht.prototype,"_timeScale",[Pht],(function(){return 1})),Sht=ja(uht.prototype,"_playTimes",[Pht],(function(){return-1})),Tht=ja(uht.prototype,"_debugBones",[Pht],(function(){return!1})),Aht=ja(uht.prototype,"_enableBatch",[Pht],(function(){return!1})),bht=ja(uht.prototype,"_sockets",[Pht],(function(){return[]})),m(uht.prototype,"customMaterial",[Lht,oht],Object.getOwnPropertyDescriptor(uht.prototype,"customMaterial"),uht.prototype),hht=uht))||hht);S.internal.ArmatureDisplay=Fht;var kht,Ght,Vht,Uht,zht,Hht,Wht,Xht,jht,Yht,qht,Kht=new En(255,0,0,255),Qht=new En(0,0,255,255),Zht=new En(0,255,0,255),Jht=0,$ht=0,tut=0,eut=0,iut=0,nut=0,rut=0,sut=0,aut=0,out=new Float32Array(4),hut=new gn(0,0,0),uut=new Vn,lut=null,cut=null;function _ut(t,e){if(!t)return null;var i,n;switch(e){case 1:i=zht?vc.ONE:vc.SRC_ALPHA,n=vc.ONE;break;case 10:i=vc.DST_COLOR,n=vc.ONE_MINUS_SRC_ALPHA;break;case 12:i=vc.ONE,n=vc.ONE_MINUS_SRC_COLOR;break;case 0:default:i=zht?vc.ONE:vc.SRC_ALPHA,n=vc.ONE_MINUS_SRC_ALPHA}return Yht.getMaterialForBlend(i,n)}function fut(t,e){var i=t.a*e*Uht,n=zht?i/255:1,r=t.r*kht*n/255,s=t.g*Ght*n/255,a=t.b*Vht*n/255;out[0]=r,out[1]=s,out[2]=a,out[3]=zht?1:i/255}var dut=null,put={accessor:dut,vCount:32767,ensureAccessor:function(){if(!dut){var t=ID.root.device,e=ID.root.batcher2D,i=PP;this.accessor=dut=new YP(t,i,this.vCount),e.registerBufferAccessor(Number.parseInt("DRAGONBONES",36),dut)}return this.accessor},createData:function(t){var e=t.renderData;if(!e){this.ensureAccessor();for(var i=t._armature._slots,n=0,r=0,s=0;s<i.length;++s){var a=i[s],o=a._localVertices.length%4;n+=0===o?a._localVertices.length/4:(a._localVertices.length-o)/4+1,r+=a._indices.length}(e=gO.add(PP,this.accessor)).resize(n,r),e.indices&&r===e.indices.length||(e.indices=new Uint16Array(r))}return e},updateRenderData:function(t){Yht=t,t._armature&&function(t){var e=t._armature;if(e&&null!==t.renderData){Hht=!0,zht=t.premultipliedAlpha,t.drawList.reset(),Yht=t,t.node,Wht=t.renderData,Yht=t,qht=0,lut=null;var i=t.color;kht=i.r/255,Ght=i.g/255,Vht=i.b/255,Uht=t.node._uiProps.opacity,4294967295!==En.toUint32(i)&&(qht|=1);var n=t.node.getWorldMatrix();if(Jht=0,tut=0,eut=0,iut=0,nut=0,aut=0,rut=Yht.maxVertexCount,sut=Yht.maxIndexCount,t.isAnimationCached())!function(t,e){if(t){var i=t.segments;if(0!==i.length){var n=null,r=t.vertices,s=t.indices,a=0,o=0,h=0,u=0,l=0,c=t.colors,_=c[l++],f=_.vfOffset;fut(_,1);for(var d=Wht,p=d.chunk.vb,m=d.indices,g=0,v=i.length;g<v;g++){var y=i[g];if(n=_ut(y.tex,y.blendMode)){if(lut||(lut=n),Hht||n.hash!==lut.hash||y.tex&&y.tex!==cut){Hht=!1;var S=nut-aut;S>0&&(Yht._requestDrawData(lut,cut,aut,S),aut=nut),lut=n,cut=y.tex}$ht=y.vertexCount,iut=y.indexCount,a=d.chunk.vertexOffset;for(var T=nut,A=nut+iut;T<A;T++)m[T]=a+tut+s[h++];u=y.vfCount;var b=r.subarray(o,u);p.set(b,o);var E=0;if(e)for(var C=0,x=$ht;C<x;C++)hut.x=p[E],hut.y=p[E+1],hut.z=0,hut.transformMat4(e),p[E]=hut.x,p[E+1]=hut.y,p[E+2]=hut.z,E+=9;if(1&qht)for(var w=o/9*5,R=o,I=o+u;R<I;R+=9,w+=5)w>=f&&(fut(_=c[l++],1),f=_.vfOffset),p.set(out,R+5);o+=u,tut+=$ht,nut+=iut,$ht=0,iut=0}}var D=nut-aut;cut&&D>0&&Yht._requestDrawData(lut,cut,aut,D)}}}(t._curFrame,n);else{mut(e,1,n);var r=t._debugDraw;if(t.debugBones&&r){r.clear(),r.lineWidth=5,r.strokeColor=Kht,r.fillColor=Qht;for(var s=e.getBones(),a=0,o=s.length;a<o;a++){var h=s[a],u=Math.max(h.boneData.length,5),l=h.globalTransformMatrix.tx,c=h.globalTransformMatrix.ty,_=l+h.globalTransformMatrix.a*u,f=c+h.globalTransformMatrix.b*u;r.moveTo(l,c),r.lineTo(_,f),r.stroke(),r.circle(l,c,2*Math.PI),r.fill(),0===a&&(r.fillColor=Zht)}}}dut.getMeshBuffer(Wht.chunk.bufferId).setDirty(),Yht=void 0}}(t)},updateColor:function(t){t&&(Yht=t).markForUpdateRenderData()}};function mut(t,e,i){var n=Wht;jht=n.chunk.vb,Xht=n.indices;for(var r,s,a,o,h,u,l=t._slots,c=0,_=l.length;c<_;c++)if(o=(h=l[c])._color,h._visible&&h._displayData)if(i?Vn.multiply(h._worldMatrix,i,h._matrix):Vn.copy(h._worldMatrix,h._matrix),h.childArmature)mut(h.childArmature,o.a/255,h._worldMatrix);else if(r=_ut(h.getTexture(),h._blendMode)){lut||(lut=r);var f=h.getTexture();if(Hht||r.hash!==lut.hash||f&&cut!==f){Hht=!1;var d=nut-aut;d>0&&(Yht._requestDrawData(lut,cut,aut,d),aut=nut),cut=f,lut=r}fut(o,e),uut.set(h._worldMatrix),s=h._localVertices,$ht=s.length/4,Jht=9*$ht,a=h._indices,iut=a.length;var p=!1;if(tut+$ht>rut&&(rut=tut+$ht,p=!0),nut+iut>sut&&(sut=nut+iut,p=!0),p){var m=Xht,g=n.chunk.vertexOffset;n.resizeAndCopy(rut,sut>n.indexCount?sut:n.indexCount),jht=n.chunk.vb,sut>Xht.length&&(Xht=n.indices=new Uint16Array(sut));for(var v=n.chunk.vertexOffset-g,y=0;y<nut;++y)Xht[y]=m[y]+v}for(var S=0,T=s.length,A=eut;S<T;A+=9)hut.x=s[S++],hut.y=s[S++],hut.z=0,hut.transformMat4(uut),jht[A]=hut.x,jht[A+1]=hut.y,jht[A+2]=hut.z,jht[A+3]=s[S++],jht[A+4]=s[S++],jht.set(out,A+5);for(var b=n.chunk.vertexOffset,E=0,C=a.length,x=nut;E<C;E++,x++)Xht[x]=tut+a[E]+b;eut+=Jht,tut+=$ht,nut+=iut,$ht=0,iut=0}u=nut-aut,cut&&u>0&&(Yht._requestDrawData(lut,cut,aut,u),aut=nut),Yht.maxIndexCount<sut&&(Yht.maxIndexCount=sut),Yht.maxVertexCount<rut&&(Yht.maxVertexCount=rut)}S.internal.DragonBonesAssembler=put;var gut,vut,yut,Sut={getAssembler:function(){return put}};Fht.Assembler=Sut,function(t){t[t.FFD=0]="FFD",t[t.AdjustColor=10]="AdjustColor",t[t.BevelFilter=11]="BevelFilter",t[t.BlurFilter=12]="BlurFilter",t[t.DropShadowFilter=13]="DropShadowFilter",t[t.GlowFilter=14]="GlowFilter",t[t.GradientBevelFilter=15]="GradientBevelFilter",t[t.GradientGlowFilter=16]="GradientGlowFilter"}(gut||(gut={})),function(t){t[t.Frame=0]="Frame",t[t.Sound=1]="Sound"}(vut||(vut={})),function(t){t[t.None=0]="None",t[t.SameLayer=1]="SameLayer",t[t.SameGroup=2]="SameGroup",t[t.SameLayerAndGroup=3]="SameLayerAndGroup",t[t.All=4]="All"}(yut||(yut={})),t("eD",Object.freeze({__proto__:null,get ExtensionType(){return gut},get EventType(){return vut},get AnimationFadeOutMode(){return yut},CCFactory:yot,CCSlot:got,CCTextureAtlasData:pot,CCTextureData:mot,CCArmatureDisplay:vot,AnimationCache:Pot,ArmatureCache:Oot,DragonBonesAsset:Wot,DragonBonesAtlasAsset:qot,timeScale:1,get AnimationCacheMode(){return Rht},DragonBoneSocket:Nht,ArmatureDisplay:Fht,AttachUtil:Dht,simpleDragonBoneAssembler:Sut,DragonBones:Gst,BaseObject:Vst,Matrix:Ust,Transform:zst,ColorTransform:Hst,Point:Wst,Rectangle:Xst,UserData:jst,ActionData:Yst,DragonBonesData:qst,ArmatureData:Kst,BoneData:Qst,SurfaceData:Zst,SlotData:Jst,ConstraintData:$st,IKConstraintData:tat,PathConstraintData:eat,CanvasData:iat,SkinData:nat,VerticesData:rat,DisplayData:sat,ImageDisplayData:aat,ArmatureDisplayData:oat,MeshDisplayData:hat,BoundingBoxDisplayData:uat,PathDisplayData:lat,WeightData:cat,BoundingBoxData:_at,RectangleBoundingBoxData:fat,EllipseBoundingBoxData:dat,PolygonBoundingBoxData:pat,AnimationData:mat,TimelineData:gat,AnimationConfig:vat,TextureAtlasData:yat,TextureData:Sat,DeformVertices:Tat,Armature:Aat,TransformObject:bat,Bone:Eat,Surface:Cat,Slot:xat,Constraint:wat,IKConstraint:Rat,PathConstraint:Iat,WorldClock:Dat,Animation:Bat,AnimationState:Mat,BonePose:Pat,BlendState:Oat,TimelineState:Lat,TweenTimelineState:Nat,BoneTimelineState:Fat,SlotTimelineState:kat,ConstraintTimelineState:Gat,ActionTimelineState:Vat,ZOrderTimelineState:Uat,BoneAllTimelineState:zat,BoneTranslateTimelineState:Hat,BoneRotateTimelineState:Wat,BoneScaleTimelineState:Xat,SurfaceTimelineState:jat,SlotDislayTimelineState:Yat,SlotColorTimelineState:qat,DeformTimelineState:Kat,IKConstraintTimelineState:Qat,AnimationTimelineState:Zat,EventObject:Jat,DataParser:$at,ObjectDataParser:tot,ActionFrame:eot,BinaryDataParser:iot,BaseFactory:not,BuildArmaturePackage:rot,BinaryOffset:sot,ArmatureType:aot,BoneType:oot,DisplayType:hot,BoundingBoxType:uot,ActionType:lot,BlendMode:cot,TweenType:_ot,TimelineType:fot}));var Tut,Aut=new gn,but=new gn,Eut=new gn,Cut=new gn,xut=new gn,wut=new gn,Rut=new gn,Iut=new gn,Dut=new gn,But=new gn;!function(t){t[t.LINE=0]="LINE",t[t.DASHED_LINE=1]="DASHED_LINE",t[t.TRIANGLE=2]="TRIANGLE"}(Tut||(Tut={}));var Mut=function(){function t(){this._maxVertices=0,this._vertexCount=0,this._stride=0,this._vertices=void 0,this._buffer=void 0,this._inputAssembler=void 0}var e=t.prototype;return e.init=function(t,e,i,n){this._maxVertices=e,this._vertexCount=0,this._stride=i,this._vertices=new Float32Array(e*i/Float32Array.BYTES_PER_ELEMENT),this._buffer=t.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,e*i,i)),this._inputAssembler=t.createInputAssembler(new b_(n,[this._buffer],null))},e.getCount=function(){return Math.min(this._vertexCount,this._maxVertices)},e.empty=function(){return 0===this._vertexCount},e.reset=function(){this._vertexCount=0},e.update=function(){if(!this.empty()){var t=this.getCount()*this._stride;this._buffer.update(this._vertices,t)}},e.destroy=function(){this._inputAssembler&&this._inputAssembler.destroy(),this._buffer&&this._buffer.destroy()},t}(),Put=function(){this.lines=[],this.dashedLines=[],this.triangles=[];for(var t=0;t<2;t++)this.lines[t]=new Mut,this.dashedLines[t]=new Mut,this.triangles[t]=new Mut},Out=t("eE",function(){function t(){this._device=null,this._buffers=void 0,this._buffers=new Put}var e=t.prototype;return e.activate=function(t,e){this._device=t;for(var i=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_COLOR,ec.RGBA32F)],n=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_NORMAL,ec.RGBA32F),new T_(Uc.ATTR_COLOR,ec.RGBA32F)],r=e?e.maxLines:3e4,s=e?e.maxDashedLines:1e4,a=e?e.maxTriangles:1e4,o=Float32Array.BYTES_PER_ELEMENT*(gn.length+En.length),h=Float32Array.BYTES_PER_ELEMENT*(gn.length+cn.length+En.length),u=0;u<2;u++)this._buffers.lines[u].init(this._device,2*r,o,i),this._buffers.dashedLines[u].init(this._device,2*s,o,i),this._buffers.triangles[u].init(this._device,3*a,h,n)},e.render=function(t,e,i){for(var n=i.geometryRendererPasses,r=i.geometryRendererShaders,s=0,a=[1,2],o=0;o<2;o++){var h=this._buffers.lines[o];if(!h.empty()){var u=new a_;u.vertexCount=h.getCount();for(var l=0;l<a[o];l++){var c=n[s+l],_=r[s+l],f=GT.getOrCreatePipelineState(this._device,c,_,t,h._inputAssembler);e.bindPipelineState(f),e.bindDescriptorSet(Og.MATERIAL,c.descriptorSet),e.bindInputAssembler(h._inputAssembler),e.draw(u)}}s+=a[o]}for(var d=0;d<2;d++){var p=this._buffers.dashedLines[d];if(!p.empty()){var m=new a_;m.vertexCount=p.getCount();for(var g=0;g<a[d];g++){var v=n[s+g],y=r[s+g],S=GT.getOrCreatePipelineState(this._device,v,y,t,p._inputAssembler);e.bindPipelineState(S),e.bindDescriptorSet(Og.MATERIAL,v.descriptorSet),e.bindInputAssembler(p._inputAssembler),e.draw(m)}}s+=a[d]}for(var T=0;T<2;T++){var A=this._buffers.triangles[T];if(!A.empty()){var b=new a_;b.vertexCount=A.getCount();for(var E=0;E<a[T];E++){var C=n[s+E],x=r[s+E],w=GT.getOrCreatePipelineState(this._device,C,x,t,A._inputAssembler);e.bindPipelineState(w),e.bindDescriptorSet(Og.MATERIAL,C.descriptorSet),e.bindInputAssembler(A._inputAssembler),e.draw(b)}}s+=a[T]}this.reset()},e.destroy=function(){for(var t=0;t<2;t++)this._buffers.lines[t].destroy(),this._buffers.dashedLines[t].destroy(),this._buffers.triangles[t].destroy()},e.empty=function(){for(var t=0;t<2;t++)if(!this._buffers.lines[t].empty()||!this._buffers.dashedLines[t].empty()||!this._buffers.triangles[t].empty())return!1;return!0},e.update=function(){for(var t=0;t<2;t++)this._buffers.lines[t].update(),this._buffers.dashedLines[t].update(),this._buffers.triangles[t].update()},e.reset=function(){for(var t=0;t<2;t++)this._buffers.lines[t].reset(),this._buffers.dashedLines[t].reset(),this._buffers.triangles[t].reset()},e.addDashedLine=function(t,e,i,n){void 0===n&&(n=!0);var r=this._buffers.dashedLines[n?1:0];if(r._vertexCount+2>r._maxVertices)tt(12008);else{var s=r._vertexCount*(gn.length+En.length);gn.toArray(r._vertices,t,s),s+=gn.length,En.toArray(r._vertices,i,s),s+=En.length,gn.toArray(r._vertices,e,s),s+=gn.length,En.toArray(r._vertices,i,s),r._vertexCount+=2}},e.addLine=function(t,e,i,n){void 0===n&&(n=!0);var r=this._buffers.lines[n?1:0];if(r._vertexCount+2>r._maxVertices)tt(12008);else{var s=r._vertexCount*(gn.length+En.length);gn.toArray(r._vertices,t,s),s+=gn.length,En.toArray(r._vertices,i,s),s+=En.length,gn.toArray(r._vertices,e,s),s+=gn.length,En.toArray(r._vertices,i,s),r._vertexCount+=2}},e.addTriangle=function(t,e,i,n,r,s,a){if(void 0===r&&(r=!0),void 0===s&&(s=!0),void 0===a&&(a=!1),r)return this.addLine(t,e,n,s),this.addLine(e,i,n,s),void this.addLine(i,t,n,s);var o=this._buffers.triangles[s?1:0];if(o._vertexCount+3>o._maxVertices)tt(12009);else{var h=new cn(cn.ZERO);if(!a){var u=new gn(e.x-t.x,e.y-t.y,e.z-t.z),l=new gn(i.x-t.x,i.y-t.y,i.z-t.z),c=new gn;gn.normalize(c,gn.cross(c,u,l)),h.set(c.x,c.y,c.z,1)}var _=o._vertexCount*(gn.length+cn.length+En.length);gn.toArray(o._vertices,t,_),_+=gn.length,cn.toArray(o._vertices,h,_),_+=cn.length,En.toArray(o._vertices,n,_),_+=En.length,gn.toArray(o._vertices,e,_),_+=gn.length,cn.toArray(o._vertices,h,_),_+=cn.length,En.toArray(o._vertices,n,_),_+=En.length,gn.toArray(o._vertices,i,_),_+=gn.length,cn.toArray(o._vertices,h,_),_+=cn.length,En.toArray(o._vertices,n,_),o._vertexCount+=3}},e.addQuad=function(t,e,i,n,r,s,a,o){void 0===s&&(s=!0),void 0===a&&(a=!0),void 0===o&&(o=!1),s?(this.addLine(t,e,r,a),this.addLine(e,i,r,a),this.addLine(i,n,r,a),this.addLine(n,t,r,a)):(this.addTriangle(t,e,i,r,s,a,o),this.addTriangle(t,i,n,r,s,a,o))},e.addBoundingBox=function(t,e,i,n,r,s,a){void 0===i&&(i=!0),void 0===n&&(n=!0),void 0===r&&(r=!1),void 0===s&&(s=!1),void 0===a&&(a=new Vn),Aut.set(t.center.x-t.halfExtents.x,t.center.y-t.halfExtents.y,t.center.z-t.halfExtents.z),but.set(t.center.x+t.halfExtents.x,t.center.y+t.halfExtents.y,t.center.z+t.halfExtents.z),Eut.set(Aut.x,Aut.y,Aut.z),Cut.set(but.x,Aut.y,Aut.z),xut.set(Aut.x,but.y,Aut.z),wut.set(but.x,but.y,Aut.z),Rut.set(Aut.x,Aut.y,but.z),Iut.set(but.x,Aut.y,but.z),Dut.set(Aut.x,but.y,but.z),But.set(but.x,but.y,but.z),s&&(gn.transformMat4(Eut,Eut,a),gn.transformMat4(Cut,Cut,a),gn.transformMat4(xut,xut,a),gn.transformMat4(wut,wut,a),gn.transformMat4(Rut,Rut,a),gn.transformMat4(Iut,Iut,a),gn.transformMat4(Dut,Dut,a),gn.transformMat4(But,But,a)),i?(this.addLine(Dut,But,e,n),this.addLine(But,wut,e,n),this.addLine(wut,xut,e,n),this.addLine(xut,Dut,e,n),this.addLine(Rut,Iut,e,n),this.addLine(Iut,Cut,e,n),this.addLine(Cut,Eut,e,n),this.addLine(Eut,Rut,e,n),this.addLine(Dut,Rut,e,n),this.addLine(But,Iut,e,n),this.addLine(wut,Cut,e,n),this.addLine(xut,Eut,e,n)):(this.addQuad(Rut,Iut,But,Dut,e,i,n,r),this.addQuad(Iut,Cut,wut,But,e,i,n,r),this.addQuad(Cut,Eut,xut,wut,e,i,n,r),this.addQuad(Eut,Rut,Dut,xut,e,i,n,r),this.addQuad(Dut,But,wut,xut,e,i,n,r),this.addQuad(Eut,Cut,Iut,Rut,e,i,n,r))},e.addCross=function(t,e,i,n){void 0===n&&(n=!0);var r=.5*e,s=new gn(t.x-r,t.y,t.z),a=new gn(t.x+r,t.y,t.z);this.addLine(s,a,i,n),s.set(t.x,t.y-r,t.z),a.set(t.x,t.y+r,t.z),this.addLine(s,a,i,n),s.set(t.x,t.y,t.z-r),a.set(t.x,t.y,t.z+r),this.addLine(s,a,i,n)},e.addFrustum=function(t,e,i){void 0===i&&(i=!0);var n=t.vertices;this.addLine(n[0],n[1],e,i),this.addLine(n[1],n[2],e,i),this.addLine(n[2],n[3],e,i),this.addLine(n[3],n[0],e,i),this.addLine(n[4],n[5],e,i),this.addLine(n[5],n[6],e,i),this.addLine(n[6],n[7],e,i),this.addLine(n[7],n[4],e,i),this.addLine(n[0],n[4],e,i),this.addLine(n[1],n[5],e,i),this.addLine(n[2],n[6],e,i),this.addLine(n[3],n[7],e,i)},e.addCapsule=function(t,e,i,n,r,s,a,o,h,u,l){void 0===r&&(r=32),void 0===s&&(s=8),void 0===a&&(a=!0),void 0===o&&(o=!0),void 0===h&&(h=!1),void 0===u&&(u=!1),void 0===l&&(l=Vn.IDENTITY);for(var c=2*Math.PI/r,_=Math.PI/2/s,f=new gn(t.x,t.y-i/2,t.z),d=new gn(t.x,t.y+i/2,t.z),p=new Array,m=new Array,g=0;g<s+1;g++){for(var v=new Array,y=new Array,S=g*_,T=Math.sin(S),A=Math.cos(S),b=0;b<r+1;b++){var E=b*c,C=Math.sin(E),x=Math.cos(E),w=new gn(e*T*x,e*A,e*T*C),R=new gn(f.x+w.x,f.y-w.y,f.z+w.z),I=new gn(d.x+w.x,d.y+w.y,d.z+w.z);v.push(R),y.push(I)}p.push(v),m.push(y)}if(u)for(var D=0;D<s+1;D++)for(var B=0;B<r+1;B++)gn.transformMat4(p[D][B],p[D][B],l),gn.transformMat4(m[D][B],m[D][B],l);for(var M=0;M<s;M++)for(var P=0;P<r;P++)this.addTriangle(p[M+1][P],p[M][P+1],p[M][P],n,a,o,h),this.addTriangle(p[M+1][P],p[M+1][P+1],p[M][P+1],n,a,o,h),this.addTriangle(m[M][P],m[M+1][P+1],m[M+1][P],n,a,o,h),this.addTriangle(m[M][P],m[M][P+1],m[M+1][P+1],n,a,o,h);for(var O=p[s],L=m[s],N=0;N<r;N++)this.addTriangle(L[N],O[N+1],O[N],n,a,o,h),this.addTriangle(L[N],L[N+1],O[N+1],n,a,o,h)},e.addCylinder=function(t,e,i,n,r,s,a,o,h,u){void 0===r&&(r=32),void 0===s&&(s=!0),void 0===a&&(a=!0),void 0===o&&(o=!1),void 0===h&&(h=!1),void 0===u&&(u=Vn.IDENTITY);for(var l=2*Math.PI/r,c=new gn(t.x,t.y-i/2,t.z),_=new gn(t.x,t.y+i/2,t.z),f=new Array,d=new Array,p=0;p<r+1;p++){var m=p*l,g=new gn(e*Math.cos(m),0,e*Math.sin(m)),v=new gn(g.x+c.x,g.y+c.y,g.z+c.z),y=new gn(g.x+_.x,g.y+_.y,g.z+_.z);f.push(v),d.push(y)}if(h){gn.transformMat4(c,c,u),gn.transformMat4(_,_,u);for(var S=0;S<r+1;S++)gn.transformMat4(f[S],f[S],u),gn.transformMat4(d[S],d[S],u)}for(var T=0;T<r;T++)this.addTriangle(_,d[T+1],d[T],n,s,a,o),this.addTriangle(c,f[T],f[T+1],n,s,a,o),this.addTriangle(d[T],f[T+1],f[T],n,s,a,o),this.addTriangle(d[T],d[T+1],f[T+1],n,s,a,o)},e.addCone=function(t,e,i,n,r,s,a,o,h,u){void 0===r&&(r=32),void 0===s&&(s=!0),void 0===a&&(a=!0),void 0===o&&(o=!1),void 0===h&&(h=!1),void 0===u&&(u=Vn.IDENTITY);for(var l=2*Math.PI/r,c=new gn(t.x,t.y-i/2,t.z),_=new gn(t.x,t.y+i/2,t.z),f=new Array,d=0;d<r+1;d++){var p=new gn(e*Math.cos(d*l),0,e*Math.sin(d*l)),m=new gn(p.x+c.x,p.y+c.y,p.z+c.z);f.push(m)}if(h){gn.transformMat4(c,c,u),gn.transformMat4(_,_,u);for(var g=0;g<r+1;g++)gn.transformMat4(f[g],f[g],u)}for(var v=0;v<r;v++)this.addTriangle(_,f[v+1],f[v],n,s,a,o),this.addTriangle(c,f[v],f[v+1],n,s,a,o)},e.addCircle=function(t,e,i,n,r,s,a){void 0===n&&(n=32),void 0===r&&(r=!0),void 0===s&&(s=!1),void 0===a&&(a=Vn.IDENTITY);for(var o=2*Math.PI/n,h=new Array,u=0;u<n+1;u++){var l=new gn(e*Math.cos(u*o),0,e*Math.sin(u*o)),c=new gn(l.x+t.x,l.y+t.y,l.z+t.z);h.push(c)}if(s)for(var _=0;_<n+1;_++)gn.transformMat4(h[_],h[_],a);for(var f=0;f<n;f++)this.addLine(h[f],h[f+1],i,r)},e.addArc=function(t,e,i,n,r,s,a,o,h){void 0===s&&(s=32),void 0===a&&(a=!0),void 0===o&&(o=!1),void 0===h&&(h=Vn.IDENTITY);for(var u=Vi(n),l=(Vi(r)-u)/s,c=new Array,_=0;_<s+1;_++){var f=new gn(e*Math.cos(_*l+u),0,e*Math.sin(_*l+u)),d=new gn(f.x+t.x,f.y+t.y,f.z+t.z);c.push(d)}if(o)for(var p=0;p<s+1;p++)gn.transformMat4(c[p],c[p],h);for(var m=0;m<s;m++)this.addLine(c[m],c[m+1],i,a)},e.addPolygon=function(t,e,i,n,r,s,a,o,h){void 0===n&&(n=6),void 0===r&&(r=!0),void 0===s&&(s=!0),void 0===a&&(a=!1),void 0===o&&(o=!1),void 0===h&&(h=Vn.IDENTITY),r?this.addCircle(t,e,i,n,s,o,h):this.addDisc(t,e,i,n,r,s,a,o,h)},e.addDisc=function(t,e,i,n,r,s,a,o,h){void 0===n&&(n=32),void 0===r&&(r=!0),void 0===s&&(s=!0),void 0===a&&(a=!1),void 0===o&&(o=!1),void 0===h&&(h=Vn.IDENTITY);for(var u=2*Math.PI/n,l=new Array,c=new gn(t),_=0;_<n+1;_++){var f=new gn(e*Math.cos(_*u),0,e*Math.sin(_*u)),d=new gn(f.x+c.x,f.y+c.y,f.z+c.z);l.push(d)}if(o){gn.transformMat4(c,c,h);for(var p=0;p<n+1;p++)gn.transformMat4(l[p],l[p],h)}for(var m=0;m<n;m++)this.addTriangle(c,l[m],l[m+1],i,r,s,a);if(!r)for(var g=0;g<n;g++)this.addTriangle(c,l[g+1],l[g],i,r,s,a)},e.addSector=function(t,e,i,n,r,s,a,o,h,u,l){void 0===s&&(s=32),void 0===a&&(a=!0),void 0===o&&(o=!0),void 0===h&&(h=!1),void 0===u&&(u=!1),void 0===l&&(l=Vn.IDENTITY);for(var c=Vi(n),_=(Vi(r)-c)/s,f=new Array,d=new gn(t),p=0;p<s+1;p++){var m=new gn(e*Math.cos(p*_),0,e*Math.sin(p*_)),g=new gn(m.x+d.x,m.y+d.y,m.z+d.z);f.push(g)}if(u){gn.transformMat4(d,d,l);for(var v=0;v<s+1;v++)gn.transformMat4(f[v],f[v],l)}for(var y=0;y<s;y++)this.addTriangle(d,f[y],f[y+1],i,a,o,h);if(!a)for(var S=0;S<s;S++)this.addTriangle(d,f[S+1],f[S],i,a,o,h)},e.addSphere=function(t,e,i,n,r,s,a,o,h,u){void 0===n&&(n=32),void 0===r&&(r=16),void 0===s&&(s=!0),void 0===a&&(a=!0),void 0===o&&(o=!1),void 0===h&&(h=!1),void 0===u&&(u=Vn.IDENTITY);for(var l=2*Math.PI/n,c=Math.PI/r,_=new Array,f=0;f<r+1;f++){for(var d=new Array,p=f*c,m=Math.sin(p),g=Math.cos(p),v=0;v<n+1;v++){var y=v*l,S=Math.sin(y),T=Math.cos(y),A=new gn(e*m*T,e*g,e*m*S),b=new gn(t.x+A.x,t.y+A.y,t.z+A.z);d.push(b)}_.push(d)}if(h)for(var E=0;E<r+1;E++)for(var C=0;C<n+1;C++)gn.transformMat4(_[E][C],_[E][C],u);for(var x=0;x<r;x++)for(var w=0;w<n;w++)this.addTriangle(_[x][w],_[x+1][w+1],_[x+1][w],i,s,a,o),this.addTriangle(_[x][w],_[x][w+1],_[x+1][w+1],i,s,a,o)},e.addTorus=function(t,e,i,n,r,s,a,o,h,u,l){void 0===r&&(r=32),void 0===s&&(s=16),void 0===a&&(a=!0),void 0===o&&(o=!0),void 0===h&&(h=!1),void 0===u&&(u=!1),void 0===l&&(l=Vn.IDENTITY);for(var c=2*Math.PI/r,_=2*Math.PI/s,f=new Array,d=0;d<r+1;d++){for(var p=new Array,m=d*c,g=Math.sin(m),v=Math.cos(m),y=0;y<s+1;y++){var S=y*_,T=Math.sin(S),A=Math.cos(S),b=new gn((e+i*A)*v,i*T,(e+i*A)*g),E=new gn(t.x+b.x,t.y+b.y,t.z+b.z);p.push(E)}f.push(p)}if(u)for(var C=0;C<r+1;C++)for(var x=0;x<s+1;x++)gn.transformMat4(f[C][x],f[C][x],l);for(var w=0;w<r;w++)for(var R=0;R<s;R++)this.addTriangle(f[w][R+1],f[w+1][R],f[w][R],n,a,o,h),this.addTriangle(f[w][R+1],f[w+1][R+1],f[w+1][R],n,a,o,h)},e.addOctahedron=function(t,e,i,n,r,s,a,o){void 0===n&&(n=!0),void 0===r&&(r=!0),void 0===s&&(s=!1),void 0===a&&(a=!1),void 0===o&&(o=Vn.IDENTITY);var h=new Array;if(h.push(new gn(e+t.x,t.y,t.z)),h.push(new gn(t.x,t.y,t.z-e)),h.push(new gn(-e+t.x,t.y,t.z)),h.push(new gn(t.x,t.y,t.z+e)),h.push(new gn(t.x,t.y+e,t.z)),h.push(new gn(t.x,t.y-e,t.z)),a)for(var u=0;u<h.length;u++)gn.transformMat4(h[u],h[u],o);n?(this.addLine(h[0],h[1],i,r),this.addLine(h[1],h[2],i,r),this.addLine(h[2],h[3],i,r),this.addLine(h[3],h[0],i,r),this.addLine(h[0],h[4],i,r),this.addLine(h[1],h[4],i,r),this.addLine(h[2],h[4],i,r),this.addLine(h[3],h[4],i,r),this.addLine(h[0],h[5],i,r),this.addLine(h[1],h[5],i,r),this.addLine(h[2],h[5],i,r),this.addLine(h[3],h[5],i,r)):(this.addTriangle(h[0],h[1],h[4],i,n,r,s),this.addTriangle(h[1],h[2],h[4],i,n,r,s),this.addTriangle(h[2],h[3],h[4],i,n,r,s),this.addTriangle(h[3],h[0],h[4],i,n,r,s),this.addTriangle(h[0],h[3],h[5],i,n,r,s),this.addTriangle(h[3],h[2],h[5],i,n,r,s),this.addTriangle(h[2],h[1],h[5],i,n,r,s),this.addTriangle(h[1],h[0],h[5],i,n,r,s))},e.addBezier=function(t,e,i,n,r,s,a,o,h){void 0===s&&(s=32),void 0===a&&(a=!0),void 0===o&&(o=!1),void 0===h&&(h=Vn.IDENTITY);var u=1/s,l=new Array,c=new gn(t),_=new gn(e),f=new gn(i),d=new gn(n);o&&(gn.transformMat4(c,c,h),gn.transformMat4(_,_,h),gn.transformMat4(f,f,h),gn.transformMat4(d,d,h));for(var p=0;p<s+1;p++){var m=p*u,g=(1-m)*(1-m)*(1-m),v=3*m*(1-m)*(1-m),y=3*m*m*(1-m),S=m*m*m,T=new gn(g*c.x+v*_.x+y*f.x+S*d.x,g*c.y+v*_.y+y*f.y+S*d.y,g*c.z+v*_.z+y*f.z+S*d.z);l.push(T)}for(var A=0;A<s;A++)this.addLine(l[A],l[A+1],r,a)},e.addSpline=function(t,e,i,n,r,s,a,o){void 0===i&&(i=4294967295),void 0===n&&(n=.5),void 0===r&&(r=32),void 0===s&&(s=!0),void 0===a&&(a=!1),void 0===o&&(o=Vn.IDENTITY);var h=r+1,u=t.getPoints(h,i);a&&u.forEach((function(t){t.transformMat4(o)}));for(var l=0;l<r;l++)this.addLine(u[l],u[l+1],e,s);if(n>0&&4294967295===i)for(var c=new En(255-e.r,255-e.g,255-e.b,e.a),_=t.getKnotCount(),f=t.knots,d=0;d<_;d++){var p=f[d];a&&(p=p.clone().transformMat4(o)),this.addCross(p,n,c,s)}},e.addMesh=function(t,e,i,n,r,s){void 0===n&&(n=!0),void 0===r&&(r=!1),void 0===s&&(s=Vn.IDENTITY);for(var a=0;a<e.length;a+=3){var o=new gn(t.x+e[a].x,t.y+e[a].y,t.z+e[a].z),h=new gn(t.x+e[a+1].x,t.y+e[a+1].y,t.z+e[a+1].z),u=new gn(t.x+e[a+2].x,t.y+e[a+2].y,t.z+e[a+2].z);r&&(gn.transformMat4(o,o,s),gn.transformMat4(h,h,s),gn.transformMat4(u,u,s)),this.addLine(o,h,i,n),this.addLine(h,u,i,n),this.addLine(u,o,i,n)}},e.addIndexedMesh=function(t,e,i,n,r,s,a){void 0===r&&(r=!0),void 0===s&&(s=!1),void 0===a&&(a=Vn.IDENTITY);for(var o=0;o<i.length;o+=3){var h=new gn(t.x+e[i[o]].x,t.y+e[i[o]].y,t.z+e[i[o]].z),u=new gn(t.x+e[i[o+1]].x,t.y+e[i[o+1]].y,t.z+e[i[o+1]].z),l=new gn(t.x+e[i[o+2]].x,t.y+e[i[o+2]].y,t.z+e[i[o+2]].z);s&&(gn.transformMat4(h,h,a),gn.transformMat4(u,u,a),gn.transformMat4(l,l,a)),this.addLine(h,u,n,r),this.addLine(u,l,n,r),this.addLine(l,h,n,r)}},t}());S.internal.GeometryRenderer=Out;var Lut,Nut=function(t){function e(){var e;return(e=t.call(this)||this)._gpuDescriptorSet=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._layout=t.layout;var e=t.layout.gpuDescriptorSetLayout,i=e.bindings,n=e.descriptorIndices,r=e.descriptorCount;this._buffers=Array(r).fill(null),this._textures=Array(r).fill(null),this._samplers=Array(r).fill(null);var s=[];this._gpuDescriptorSet={gpuDescriptors:s,descriptorIndices:n};for(var a=0;a<i.length;++a)for(var o=i[a],h=0;h<o.count;h++)s.push({type:o.descriptorType,gpuBuffer:null,gpuTexture:null,gpuSampler:null})},i.destroy=function(){this._layout=null,this._gpuDescriptorSet=null},i.update=function(){if(this._isDirty&&this._gpuDescriptorSet){for(var t=this._gpuDescriptorSet.gpuDescriptors,e=0;e<t.length;++e)if(t[e].type&Y_){var i=this._buffers[e];i&&(t[e].gpuBuffer=i.gpuBuffer||i.gpuBufferView)}else t[e].type&q_&&(this._textures[e]&&(t[e].gpuTexture=this._textures[e].gpuTexture),this._samplers[e]&&(t[e].gpuSampler=this._samplers[e].gpuSampler));this._isDirty=!1}},n(e,[{key:"gpuDescriptorSet",get:function(){return this._gpuDescriptorSet}}]),e}(ff);!function(t){t[t.RGBA16F_EXT=34842]="RGBA16F_EXT",t[t.RGB16F_EXT=34843]="RGB16F_EXT",t[t.RGBA32F_EXT=34836]="RGBA32F_EXT",t[t.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT=33297]="FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT",t[t.UNSIGNED_NORMALIZED_EXT=35863]="UNSIGNED_NORMALIZED_EXT",t[t.UNSIGNED_INT_24_8_WEBGL=34042]="UNSIGNED_INT_24_8_WEBGL",t[t.HALF_FLOAT_OES=36193]="HALF_FLOAT_OES",t[t.SRGB_EXT=35904]="SRGB_EXT",t[t.SRGB_ALPHA_EXT=35906]="SRGB_ALPHA_EXT",t[t.SRGB8_ALPHA8_EXT=35907]="SRGB8_ALPHA8_EXT",t[t.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]="COMPRESSED_RGB_S3TC_DXT1_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777]="COMPRESSED_RGBA_S3TC_DXT1_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778]="COMPRESSED_RGBA_S3TC_DXT3_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]="COMPRESSED_RGBA_S3TC_DXT5_EXT",t[t.COMPRESSED_SRGB_S3TC_DXT1_EXT=35916]="COMPRESSED_SRGB_S3TC_DXT1_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT=35917]="COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT=35918]="COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT=35919]="COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT",t[t.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]="COMPRESSED_RGB_PVRTC_4BPPV1_IMG",t[t.COMPRESSED_RGB_PVRTC_2BPPV1_IMG=35841]="COMPRESSED_RGB_PVRTC_2BPPV1_IMG",t[t.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]="COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",t[t.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG=35843]="COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",t[t.COMPRESSED_RGB_ETC1_WEBGL=36196]="COMPRESSED_RGB_ETC1_WEBGL",t[t.COMPRESSED_R11_EAC=37488]="COMPRESSED_R11_EAC",t[t.COMPRESSED_SIGNED_R11_EAC=37489]="COMPRESSED_SIGNED_R11_EAC",t[t.COMPRESSED_RG11_EAC=37490]="COMPRESSED_RG11_EAC",t[t.COMPRESSED_SIGNED_RG11_EAC=37491]="COMPRESSED_SIGNED_RG11_EAC",t[t.COMPRESSED_RGB8_ETC2=37492]="COMPRESSED_RGB8_ETC2",t[t.COMPRESSED_SRGB8_ETC2=37493]="COMPRESSED_SRGB8_ETC2",t[t.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2=37494]="COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2",t[t.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2=37495]="COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2",t[t.COMPRESSED_RGBA8_ETC2_EAC=37496]="COMPRESSED_RGBA8_ETC2_EAC",t[t.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC=37497]="COMPRESSED_SRGB8_ALPHA8_ETC2_EAC",t[t.COMPRESSED_RGBA_ASTC_4x4_KHR=37808]="COMPRESSED_RGBA_ASTC_4x4_KHR",t[t.COMPRESSED_RGBA_ASTC_5x4_KHR=37809]="COMPRESSED_RGBA_ASTC_5x4_KHR",t[t.COMPRESSED_RGBA_ASTC_5x5_KHR=37810]="COMPRESSED_RGBA_ASTC_5x5_KHR",t[t.COMPRESSED_RGBA_ASTC_6x5_KHR=37811]="COMPRESSED_RGBA_ASTC_6x5_KHR",t[t.COMPRESSED_RGBA_ASTC_6x6_KHR=37812]="COMPRESSED_RGBA_ASTC_6x6_KHR",t[t.COMPRESSED_RGBA_ASTC_8x5_KHR=37813]="COMPRESSED_RGBA_ASTC_8x5_KHR",t[t.COMPRESSED_RGBA_ASTC_8x6_KHR=37814]="COMPRESSED_RGBA_ASTC_8x6_KHR",t[t.COMPRESSED_RGBA_ASTC_8x8_KHR=37815]="COMPRESSED_RGBA_ASTC_8x8_KHR",t[t.COMPRESSED_RGBA_ASTC_10x5_KHR=37816]="COMPRESSED_RGBA_ASTC_10x5_KHR",t[t.COMPRESSED_RGBA_ASTC_10x6_KHR=37817]="COMPRESSED_RGBA_ASTC_10x6_KHR",t[t.COMPRESSED_RGBA_ASTC_10x8_KHR=37818]="COMPRESSED_RGBA_ASTC_10x8_KHR",t[t.COMPRESSED_RGBA_ASTC_10x10_KHR=37819]="COMPRESSED_RGBA_ASTC_10x10_KHR",t[t.COMPRESSED_RGBA_ASTC_12x10_KHR=37820]="COMPRESSED_RGBA_ASTC_12x10_KHR",t[t.COMPRESSED_RGBA_ASTC_12x12_KHR=37821]="COMPRESSED_RGBA_ASTC_12x12_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR=37840]="COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR=37841]="COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR=37842]="COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR=37843]="COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR=37844]="COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR=37845]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR=37846]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR=37847]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR=37848]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR=37849]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR=37850]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR=37851]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR=37852]="COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR=37853]="COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"}(Lut||(Lut={}));var Fut=function(){function t(){}return t.setInstance=function(e){t._instance=e},n(t,null,[{key:"instance",get:function(){return t._instance}}]),t}();function kut(t,e){switch(t){case ec.R8:return e.UNSIGNED_BYTE;case ec.R8SN:return e.BYTE;case ec.R8UI:return e.UNSIGNED_BYTE;case ec.R8I:return e.BYTE;case ec.R16F:return Lut.HALF_FLOAT_OES;case ec.R16UI:return e.UNSIGNED_SHORT;case ec.R16I:return e.SHORT;case ec.R32F:return e.FLOAT;case ec.R32UI:return e.UNSIGNED_INT;case ec.R32I:return e.INT;case ec.RG8:return e.UNSIGNED_BYTE;case ec.RG8SN:return e.BYTE;case ec.RG8UI:return e.UNSIGNED_BYTE;case ec.RG8I:return e.BYTE;case ec.RG16F:return Lut.HALF_FLOAT_OES;case ec.RG16UI:return e.UNSIGNED_SHORT;case ec.RG16I:return e.SHORT;case ec.RG32F:return e.FLOAT;case ec.RG32UI:return e.UNSIGNED_INT;case ec.RG32I:return e.INT;case ec.RGB8:case ec.SRGB8:return e.UNSIGNED_BYTE;case ec.RGB8SN:return e.BYTE;case ec.RGB8UI:return e.UNSIGNED_BYTE;case ec.RGB8I:return e.BYTE;case ec.RGB16F:return Lut.HALF_FLOAT_OES;case ec.RGB16UI:return e.UNSIGNED_SHORT;case ec.RGB16I:return e.SHORT;case ec.RGB32F:return e.FLOAT;case ec.RGB32UI:return e.UNSIGNED_INT;case ec.RGB32I:return e.INT;case ec.BGRA8:case ec.RGBA8:case ec.SRGB8_A8:return e.UNSIGNED_BYTE;case ec.RGBA8SN:return e.BYTE;case ec.RGBA8UI:return e.UNSIGNED_BYTE;case ec.RGBA8I:return e.BYTE;case ec.RGBA16F:return Lut.HALF_FLOAT_OES;case ec.RGBA16UI:return e.UNSIGNED_SHORT;case ec.RGBA16I:return e.SHORT;case ec.RGBA32F:return e.FLOAT;case ec.RGBA32UI:return e.UNSIGNED_INT;case ec.RGBA32I:return e.INT;case ec.R5G6B5:return e.UNSIGNED_SHORT_5_6_5;case ec.R11G11B10F:return e.FLOAT;case ec.RGB5A1:return e.UNSIGNED_SHORT_5_5_5_1;case ec.RGBA4:return e.UNSIGNED_SHORT_4_4_4_4;case ec.RGB10A2:return e.UNSIGNED_BYTE;case ec.RGB10A2UI:return e.UNSIGNED_INT;case ec.RGB9E5:return e.UNSIGNED_BYTE;case ec.DEPTH:return e.UNSIGNED_INT;case ec.DEPTH_STENCIL:return Lut.UNSIGNED_INT_24_8_WEBGL;case ec.BC1:case ec.BC1_SRGB:case ec.BC2:case ec.BC2_SRGB:case ec.BC3:case ec.BC3_SRGB:case ec.BC4:return e.UNSIGNED_BYTE;case ec.BC4_SNORM:return e.BYTE;case ec.BC5:return e.UNSIGNED_BYTE;case ec.BC5_SNORM:return e.BYTE;case ec.BC6H_SF16:case ec.BC6H_UF16:return e.FLOAT;case ec.BC7:case ec.BC7_SRGB:case ec.ETC_RGB8:case ec.ETC2_RGB8:case ec.ETC2_SRGB8:case ec.ETC2_RGB8_A1:case ec.ETC2_SRGB8_A1:case ec.EAC_R11:return e.UNSIGNED_BYTE;case ec.EAC_R11SN:return e.BYTE;case ec.EAC_RG11:return e.UNSIGNED_BYTE;case ec.EAC_RG11SN:return e.BYTE;case ec.PVRTC_RGB2:case ec.PVRTC_RGBA2:case ec.PVRTC_RGB4:case ec.PVRTC_RGBA4:case ec.PVRTC2_2BPP:case ec.PVRTC2_4BPP:return e.UNSIGNED_BYTE;case ec.ASTC_RGBA_4X4:case ec.ASTC_RGBA_5X4:case ec.ASTC_RGBA_5X5:case ec.ASTC_RGBA_6X5:case ec.ASTC_RGBA_6X6:case ec.ASTC_RGBA_8X5:case ec.ASTC_RGBA_8X6:case ec.ASTC_RGBA_8X8:case ec.ASTC_RGBA_10X5:case ec.ASTC_RGBA_10X6:case ec.ASTC_RGBA_10X8:case ec.ASTC_RGBA_10X10:case ec.ASTC_RGBA_12X10:case ec.ASTC_RGBA_12X12:case ec.ASTC_SRGBA_4X4:case ec.ASTC_SRGBA_5X4:case ec.ASTC_SRGBA_5X5:case ec.ASTC_SRGBA_6X5:case ec.ASTC_SRGBA_6X6:case ec.ASTC_SRGBA_8X5:case ec.ASTC_SRGBA_8X6:case ec.ASTC_SRGBA_8X8:case ec.ASTC_SRGBA_10X5:case ec.ASTC_SRGBA_10X6:case ec.ASTC_SRGBA_10X8:case ec.ASTC_SRGBA_10X10:case ec.ASTC_SRGBA_12X10:case ec.ASTC_SRGBA_12X12:default:return e.UNSIGNED_BYTE}}function Gut(t,e){switch(t){case nc.BOOL:return e.BOOL;case nc.BOOL2:return e.BOOL_VEC2;case nc.BOOL3:return e.BOOL_VEC3;case nc.BOOL4:return e.BOOL_VEC4;case nc.INT:return e.INT;case nc.INT2:return e.INT_VEC2;case nc.INT3:return e.INT_VEC3;case nc.INT4:return e.INT_VEC4;case nc.UINT:return e.UNSIGNED_INT;case nc.FLOAT:return e.FLOAT;case nc.FLOAT2:return e.FLOAT_VEC2;case nc.FLOAT3:return e.FLOAT_VEC3;case nc.FLOAT4:return e.FLOAT_VEC4;case nc.MAT2:return e.FLOAT_MAT2;case nc.MAT3:return e.FLOAT_MAT3;case nc.MAT4:return e.FLOAT_MAT4;case nc.SAMPLER2D:return e.SAMPLER_2D;case nc.SAMPLER_CUBE:return e.SAMPLER_CUBE;default:return it(16311),nc.UNKNOWN}}function Vut(t){switch(t){case nc.BOOL:case nc.BOOL2:case nc.BOOL3:case nc.BOOL4:case nc.INT:case nc.INT2:case nc.INT3:case nc.INT4:case nc.UINT:return Int32Array;case nc.FLOAT:case nc.FLOAT2:case nc.FLOAT3:case nc.FLOAT4:case nc.MAT2:case nc.MAT3:case nc.MAT4:return Float32Array;default:return it(16312),Float32Array}}function Uut(t,e){switch(t){case e.BOOL:return nc.BOOL;case e.BOOL_VEC2:return nc.BOOL2;case e.BOOL_VEC3:return nc.BOOL3;case e.BOOL_VEC4:return nc.BOOL4;case e.INT:return nc.INT;case e.INT_VEC2:return nc.INT2;case e.INT_VEC3:return nc.INT3;case e.INT_VEC4:return nc.INT4;case e.UNSIGNED_INT:return nc.UINT;case e.FLOAT:return nc.FLOAT;case e.FLOAT_VEC2:return nc.FLOAT2;case e.FLOAT_VEC3:return nc.FLOAT3;case e.FLOAT_VEC4:return nc.FLOAT4;case e.FLOAT_MAT2:return nc.MAT2;case e.FLOAT_MAT3:return nc.MAT3;case e.FLOAT_MAT4:return nc.MAT4;case e.SAMPLER_2D:return nc.SAMPLER2D;case e.SAMPLER_CUBE:return nc.SAMPLER_CUBE;default:return it(16313),nc.UNKNOWN}}function zut(t,e){switch(t){case e.BOOL:return 4;case e.BOOL_VEC2:return 8;case e.BOOL_VEC3:return 12;case e.BOOL_VEC4:return 16;case e.INT:return 4;case e.INT_VEC2:return 8;case e.INT_VEC3:return 12;case e.INT_VEC4:return 16;case e.UNSIGNED_INT:case e.FLOAT:return 4;case e.FLOAT_VEC2:return 8;case e.FLOAT_VEC3:return 12;case e.FLOAT_VEC4:case e.FLOAT_MAT2:return 16;case e.FLOAT_MAT3:return 36;case e.FLOAT_MAT4:return 64;case e.SAMPLER_2D:case e.SAMPLER_CUBE:return 4;default:return it(16314),0}}function Hut(t,e){switch(t){case e.FLOAT_MAT2:return 2;case e.FLOAT_MAT3:return 3;case e.FLOAT_MAT4:return 4;default:return 1}}Fut._instance=null;var Wut,Xut=[512,513,514,515,516,517,518,519],jut=[0,7680,7681,7682,7683,5386,34055,34056],Yut=[32774,32778,32779,32775,32776],qut=[0,1,770,772,771,773,768,774,769,775,776,32769,32770,32771,32772];!function(t){t[t.BEGIN_RENDER_PASS=0]="BEGIN_RENDER_PASS",t[t.END_RENDER_PASS=1]="END_RENDER_PASS",t[t.BIND_STATES=2]="BIND_STATES",t[t.DRAW=3]="DRAW",t[t.UPDATE_BUFFER=4]="UPDATE_BUFFER",t[t.COPY_BUFFER_TO_TEXTURE=5]="COPY_BUFFER_TO_TEXTURE",t[t.BLIT_TEXTURE=6]="BLIT_TEXTURE",t[t.COUNT=7]="COUNT"}(Wut||(Wut={}));var Kut=function(t){this.refCount=0,this.cmdType=t},Qut=function(t){function e(){var e;return(e=t.call(this,Wut.BEGIN_RENDER_PASS)||this).gpuRenderPass=null,e.gpuFramebuffer=null,e.renderArea=new jc,e.clearFlag=Fc.NONE,e.clearColors=[],e.clearDepth=1,e.clearStencil=0,e}return s(e,t),e.prototype.clear=function(){this.gpuFramebuffer=null,this.clearColors.length=0},e}(Kut),Zut=function(t){function e(){var e;return(e=t.call(this,Wut.BIND_STATES)||this).gpuPipelineState=null,e.gpuInputAssembler=null,e.gpuDescriptorSets=[],e.dynamicOffsets=[],e.dynamicStates=new W_,e}return s(e,t),e.prototype.clear=function(){this.gpuPipelineState=null,this.gpuDescriptorSets.length=0,this.gpuInputAssembler=null,this.dynamicOffsets.length=0},e}(Kut),Jut=function(t){function e(){var e;return(e=t.call(this,Wut.DRAW)||this).drawInfo=new a_,e}return s(e,t),e.prototype.clear=function(){},e}(Kut),$ut=function(t){function e(){var e;return(e=t.call(this,Wut.UPDATE_BUFFER)||this).gpuBuffer=null,e.buffer=null,e.offset=0,e.size=0,e}return s(e,t),e.prototype.clear=function(){this.gpuBuffer=null,this.buffer=null},e}(Kut),tlt=function(t){function e(){var e;return(e=t.call(this,Wut.COPY_BUFFER_TO_TEXTURE)||this).gpuTexture=null,e.buffers=[],e.regions=[],e}return s(e,t),e.prototype.clear=function(){this.gpuTexture=null,this.buffers.length=0,this.regions.length=0},e}(Kut),elt=function(t){function e(){var e;return(e=t.call(this,Wut.BLIT_TEXTURE)||this).srcTexture=null,e.dstTexture=null,e.regions=[],e.filter=dc.LINEAR,e}return s(e,t),e.prototype.clear=function(){this.srcTexture=null,this.dstTexture=null,this.regions.length=0},e}(Kut),ilt=function(){function t(){this.cmds=new Is(1),this.beginRenderPassCmds=new Is(1),this.bindStatesCmds=new Is(1),this.drawCmds=new Is(1),this.updateBufferCmds=new Is(1),this.copyBufferToTextureCmds=new Is(1),this.blitTextureCmds=new Is(1)}return t.prototype.clearCmds=function(t){this.beginRenderPassCmds.length&&(t.beginRenderPassCmdPool.freeCmds(this.beginRenderPassCmds),this.beginRenderPassCmds.clear()),this.bindStatesCmds.length&&(t.bindStatesCmdPool.freeCmds(this.bindStatesCmds),this.bindStatesCmds.clear()),this.drawCmds.length&&(t.drawCmdPool.freeCmds(this.drawCmds),this.drawCmds.clear()),this.updateBufferCmds.length&&(t.updateBufferCmdPool.freeCmds(this.updateBufferCmds),this.updateBufferCmds.clear()),this.copyBufferToTextureCmds.length&&(t.copyBufferToTextureCmdPool.freeCmds(this.copyBufferToTextureCmds),this.copyBufferToTextureCmds.clear()),this.blitTextureCmds.length&&(t.blitTextureCmdPool.freeCmds(this.blitTextureCmds),this.blitTextureCmds.clear()),this.cmds.clear()},t}();function nlt(t,e){var i=t.gl,n=t.stateCache,r=e.memUsage&oc.HOST?i.DYNAMIC_DRAW:i.STATIC_DRAW;if(e.usage&rc.VERTEX){e.glTarget=i.ARRAY_BUFFER;var s=i.createBuffer();s&&(e.glBuffer=s,e.size>0&&(t.extensions.useVAO&&n.glVAO&&(t.extensions.OES_vertex_array_object.bindVertexArrayOES(null),n.glVAO=null),llt.gpuInputAssembler=null,t.stateCache.glArrayBuffer!==e.glBuffer&&(i.bindBuffer(i.ARRAY_BUFFER,e.glBuffer),t.stateCache.glArrayBuffer=e.glBuffer),i.bufferData(i.ARRAY_BUFFER,e.size,r),i.bindBuffer(i.ARRAY_BUFFER,null),t.stateCache.glArrayBuffer=null))}else if(e.usage&rc.INDEX){e.glTarget=i.ELEMENT_ARRAY_BUFFER;var a=i.createBuffer();a&&(e.glBuffer=a,e.size>0&&(t.extensions.useVAO&&n.glVAO&&(t.extensions.OES_vertex_array_object.bindVertexArrayOES(null),n.glVAO=null),llt.gpuInputAssembler=null,t.stateCache.glElementArrayBuffer!==e.glBuffer&&(i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,e.glBuffer),t.stateCache.glElementArrayBuffer=e.glBuffer),i.bufferData(i.ELEMENT_ARRAY_BUFFER,e.size,r),i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,null),t.stateCache.glElementArrayBuffer=null))}else e.usage&rc.UNIFORM?(e.glTarget=i.NONE,e.buffer&&(e.vf32=new Float32Array(e.buffer.buffer))):(e.usage&rc.INDIRECT||e.usage&rc.TRANSFER_DST||e.usage&rc.TRANSFER_SRC||it(16315),e.glTarget=i.NONE)}function rlt(t,e){var i=t.gl,n=t.stateCache;if(e.glBuffer){switch(e.glTarget){case i.ARRAY_BUFFER:t.extensions.useVAO&&n.glVAO&&(t.extensions.OES_vertex_array_object.bindVertexArrayOES(null),t.stateCache.glVAO=null),llt.gpuInputAssembler=null,i.bindBuffer(i.ARRAY_BUFFER,null),t.stateCache.glArrayBuffer=null;break;case i.ELEMENT_ARRAY_BUFFER:t.extensions.useVAO&&n.glVAO&&(t.extensions.OES_vertex_array_object.bindVertexArrayOES(null),t.stateCache.glVAO=null),llt.gpuInputAssembler=null,i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,null),t.stateCache.glElementArrayBuffer=null}i.deleteBuffer(e.glBuffer),e.glBuffer=null}}function slt(t,e,i,n,r){if(e.usage&rc.UNIFORM)ArrayBuffer.isView(i)?e.vf32.set(i,n/Float32Array.BYTES_PER_ELEMENT):e.vf32.set(new Float32Array(i),n/Float32Array.BYTES_PER_ELEMENT);else if(e.usage&rc.INDIRECT){e.indirects.clearDraws();for(var s=i.drawInfos,a=0;a<s.length;++a)e.indirects.setDrawInfo(n+a,s[a])}else{var o=i,h=t.gl,u=t.stateCache;switch(e.glTarget){case h.ARRAY_BUFFER:t.extensions.useVAO&&u.glVAO&&(t.extensions.OES_vertex_array_object.bindVertexArrayOES(null),u.glVAO=null),llt.gpuInputAssembler=null,t.stateCache.glArrayBuffer!==e.glBuffer&&(h.bindBuffer(h.ARRAY_BUFFER,e.glBuffer),t.stateCache.glArrayBuffer=e.glBuffer);break;case h.ELEMENT_ARRAY_BUFFER:t.extensions.useVAO&&u.glVAO&&(t.extensions.OES_vertex_array_object.bindVertexArrayOES(null),u.glVAO=null),llt.gpuInputAssembler=null,t.stateCache.glElementArrayBuffer!==e.glBuffer&&(h.bindBuffer(h.ELEMENT_ARRAY_BUFFER,e.glBuffer),t.stateCache.glElementArrayBuffer=e.glBuffer);break;default:return void it(16316)}Zs.os===Ys.IOS&&e.memUsage&oc.HOST&&0===n&&r===o.byteLength?h.bufferData(e.glTarget,o,h.DYNAMIC_DRAW):r===o.byteLength?h.bufferSubData(e.glTarget,n,o):h.bufferSubData(e.glTarget,n,o.slice(0,r))}}function alt(t,e){for(var i,n=t.gl,r=function(){var t=e.gpuStages[s],i=0,r="",a=1;switch(t.type){case Tc.VERTEX:r="VertexShader",i=n.VERTEX_SHADER;break;case Tc.FRAGMENT:r="FragmentShader",i=n.FRAGMENT_SHADER;break;default:return it(16322),{v:void 0}}var o=n.createShader(i);if(o&&(t.glShader=o,n.shaderSource(t.glShader,t.source),n.compileShader(t.glShader),!n.getShaderParameter(t.glShader,n.COMPILE_STATUS))){it(16323,r,e.name),it(16324,t.source.replace(/^|\n/g,(function(){return"\n"+a+++" "}))),H(n.getShaderInfoLog(t.glShader));for(var h=0;h<e.gpuStages.length;h++){var u=e.gpuStages[s];u.glShader&&(n.deleteShader(u.glShader),u.glShader=null)}return{v:void 0}}},s=0;s<e.gpuStages.length;s++)if(i=r())return i.v;var a=n.createProgram();if(a){e.glProgram=a;for(var o=0;o<e.gpuStages.length;o++){var h=e.gpuStages[o];n.attachShader(e.glProgram,h.glShader)}if(n.linkProgram(e.glProgram),t.extensions.destroyShadersImmediately)for(var u=0;u<e.gpuStages.length;u++){var l=e.gpuStages[u];l.glShader&&(n.detachShader(e.glProgram,l.glShader),n.deleteShader(l.glShader),l.glShader=null)}if(!n.getProgramParameter(e.glProgram,n.LINK_STATUS))return it(16326,e.name),void H(n.getProgramInfoLog(e.glProgram));J(16325,e.name);var c=n.getProgramParameter(e.glProgram,n.ACTIVE_ATTRIBUTES);e.glInputs=new Array(c);for(var _=0;_<c;++_){var f=n.getActiveAttrib(e.glProgram,_);if(f){var d,p=f.name.indexOf("[");d=-1!==p?f.name.substr(0,p):f.name;var m=n.getAttribLocation(e.glProgram,d),g=Uut(f.type,n),v=zut(f.type,n);e.glInputs[_]={binding:m,name:d,type:g,stride:v,count:f.size,size:v*f.size,glType:f.type,glLoc:m}}}if(e.blocks.length>0){e.glBlocks=new Array(e.blocks.length);for(var y=0;y<e.blocks.length;++y){var T=e.blocks[y],A={set:T.set,binding:T.binding,name:T.name,size:0,glUniforms:new Array(T.members.length),glActiveUniforms:[]};e.glBlocks[y]=A;for(var b=0;b<T.members.length;++b){var E=T.members[b],C=Gut(E.type,n),x=zut(C,n),w=x*E.count;A.glUniforms[b]={binding:-1,name:E.name,type:E.type,stride:x,count:E.count,size:w,offset:0,glType:C,glLoc:null,array:null}}}}for(var R=0;R<e.subpassInputs.length;++R){var I=e.subpassInputs[R];e.samplerTextures.push(new d_(I.set,I.binding,I.name,nc.SAMPLER2D,I.count))}if(e.samplerTextures.length>0){e.glSamplerTextures=new Array(e.samplerTextures.length);for(var D=0;D<e.samplerTextures.length;++D){var B=e.samplerTextures[D];e.glSamplerTextures[D]={set:B.set,binding:B.binding,name:B.name,type:B.type,count:B.count,units:[],glUnits:null,glType:Gut(B.type,n),glLoc:null}}}for(var M=n.getProgramParameter(e.glProgram,n.ACTIVE_UNIFORMS),P=0;P<M;++P){var O=n.getActiveUniform(e.glProgram,P);if(O&&O.type!==n.SAMPLER_2D&&O.type!==n.SAMPLER_CUBE){var L=n.getUniformLocation(e.glProgram,O.name);if(t.extensions.isLocationActive(L)){var N,F=O.name.indexOf("[");N=-1!==F?O.name.substr(0,F):O.name;for(var k=0;k<e.glBlocks.length;k++)for(var G=e.glBlocks[k],V=0;V<G.glUniforms.length;V++){var U=G.glUniforms[V];if(U.name===N){U.glLoc=L,U.count=O.size,U.size=U.stride*U.count,U.array=new(Vut(U.type))(U.size/4),G.glActiveUniforms.push(U);break}}}}}for(var z=0;z<e.glBlocks.length;z++)for(var W=e.glBlocks[z],X=0;X<W.glUniforms.length;X++){var j=W.glUniforms[X];j.offset=W.size/4,W.size+=j.size}var Y=[],q=[],K=t.bindingMappings,Q=t.stateCache.texUnitCacheMap;if(S.rendering&&S.rendering.enableEffectImport)for(var Z=0;Z<e.samplerTextures.length;++Z){var $=e.samplerTextures[Z],tt=n.getUniformLocation(e.glProgram,$.name);t.extensions.isLocationActive(tt)&&(Y.push(e.glSamplerTextures[Z]),q.push(tt)),void 0===Q[$.name]&&(Q[$.name]=$.flattened%t.capabilities.maxTextureUnits)}else{for(var et=0,nt=0;nt<e.blocks.length;++nt)e.blocks[nt].set===K.flexibleSet&&et++;for(var rt=0,st=0;st<e.samplerTextures.length;++st){var at=e.samplerTextures[st],ot=n.getUniformLocation(e.glProgram,at.name);if(t.extensions.isLocationActive(ot)&&(Y.push(e.glSamplerTextures[st]),q.push(ot)),void 0===Q[at.name]){var ht=at.binding+K.samplerTextureOffsets[at.set]+rt;at.set===K.flexibleSet&&(ht-=et),Q[at.name]=ht%t.capabilities.maxTextureUnits,rt+=at.count-1}}}if(Y.length){for(var ut=[],lt=0;lt<Y.length;++lt){var ct=Y[lt],_t=Q[ct.name];if(void 0!==_t){ct.glLoc=q[lt];for(var ft=0;ft<ct.count;++ft){for(;ut[_t];)_t=(_t+1)%t.capabilities.maxTextureUnits;ct.units.push(_t),ut[_t]=!0}}}for(var dt=0,pt=0;pt<Y.length;++pt){var mt=Y[pt];if(!t.extensions.isLocationActive(mt.glLoc)){mt.glLoc=q[pt];for(var gt=0;gt<mt.count;++gt){for(;ut[dt];)dt=(dt+1)%t.capabilities.maxTextureUnits;void 0===Q[mt.name]&&(Q[mt.name]=dt),mt.units.push(dt),ut[dt]=!0}}}t.stateCache.glProgram!==e.glProgram&&n.useProgram(e.glProgram);for(var vt=0;vt<Y.length;vt++){var yt=Y[vt];yt.glUnits=new Int32Array(yt.units),n.uniform1iv(yt.glLoc,yt.glUnits)}t.stateCache.glProgram!==e.glProgram&&n.useProgram(t.stateCache.glProgram)}for(var St=0;St<e.glBlocks.length;)e.glBlocks[St].glActiveUniforms.length?St++:(e.glBlocks[St]=e.glBlocks[e.glBlocks.length-1],e.glBlocks.length--);e.glSamplerTextures=Y}}function olt(t,e){if(e.glProgram){var i=t.gl;if(!t.extensions.destroyShadersImmediately)for(var n=0;n<e.gpuStages.length;n++){var r=e.gpuStages[n];r.glShader&&(i.detachShader(e.glProgram,r.glShader),i.deleteShader(r.glShader),r.glShader=null)}i.deleteProgram(e.glProgram),t.stateCache.glProgram===e.glProgram&&(t.gl.useProgram(null),t.stateCache.glProgram=null),e.glProgram=null}}function hlt(t,e){var i=t.gl;e.glAttribs=new Array(e.attributes.length);for(var n=[0,0,0,0,0,0,0,0],r=0;r<e.attributes.length;++r){var s=e.attributes[r],a=void 0!==s.stream?s.stream:0,o=e.gpuVertexBuffers[a],h=kut(s.format,i),u=j_[s.format].size;e.glAttribs[r]={name:s.name,glBuffer:o.glBuffer,glType:h,size:u,count:j_[s.format].count,stride:o.stride,componentCount:Hut(h,i),isNormalized:void 0!==s.isNormalized&&s.isNormalized,isInstanced:void 0!==s.isInstanced&&s.isInstanced,offset:n[a]},n[a]+=u}}function ult(t,e){for(var i=e.glVAOs.values(),n=i.next(),r=t.extensions.OES_vertex_array_object,s=t.stateCache.glVAO;!n.done;)r.deleteVertexArrayOES(n.value),s===n.value&&(r.bindVertexArrayOES(null),s=null),n=i.next();t.stateCache.glVAO=s,e.glVAOs.clear()}var llt={gpuPipelineState:null,gpuInputAssembler:null,glPrimitive:0},clt=new jc;function _lt(t,e,i,n,r,s,a){var o=t.gl,h=t.stateCache,u=0;if(i&&(clt.x=n.x<<i.lodLevel,clt.y=n.y<<i.lodLevel,clt.width=n.width<<i.lodLevel,clt.height=n.height<<i.lodLevel),i&&e){h.glFramebuffer!==i.glFramebuffer&&(o.bindFramebuffer(o.FRAMEBUFFER,i.glFramebuffer),h.glFramebuffer=i.glFramebuffer),h.viewport.left===clt.x&&h.viewport.top===clt.y&&h.viewport.width===clt.width&&h.viewport.height===clt.height||(o.viewport(clt.x,clt.y,clt.width,clt.height),h.viewport.left=clt.x,h.viewport.top=clt.y,h.viewport.width=clt.width,h.viewport.height=clt.height),h.scissorRect.x===clt.x&&h.scissorRect.y===clt.y&&h.scissorRect.width===clt.width&&h.scissorRect.height===clt.height||(o.scissor(clt.x,clt.y,clt.width,clt.height),h.scissorRect.x=clt.x,h.scissorRect.y=clt.y,h.scissorRect.width=clt.width,h.scissorRect.height=clt.height);var l=r.length;t.extensions.WEBGL_draw_buffers||(l=1);for(var c=0;c<l;++c){var _=e.colorAttachments[c];if(_.format!==ec.UNKNOWN)switch(_.loadOp){case Ac.LOAD:break;case Ac.CLEAR:h.bs.targets[0].blendColorMask!==Sc.ALL&&o.colorMask(!0,!0,!0,!0);var f=r[0];o.clearColor(f.x,f.y,f.z,f.w),u|=o.COLOR_BUFFER_BIT;break;case Ac.DISCARD:}}if(e.depthStencilAttachment&&e.depthStencilAttachment.format!==ec.UNKNOWN){switch(e.depthStencilAttachment.depthLoadOp){case Ac.LOAD:break;case Ac.CLEAR:h.dss.depthWrite||o.depthMask(!0),o.clearDepth(s),u|=o.DEPTH_BUFFER_BIT;break;case Ac.DISCARD:}if(j_[e.depthStencilAttachment.format].hasStencil)switch(e.depthStencilAttachment.stencilLoadOp){case Ac.LOAD:break;case Ac.CLEAR:h.dss.stencilWriteMaskFront||o.stencilMaskSeparate(o.FRONT,65535),h.dss.stencilWriteMaskBack||o.stencilMaskSeparate(o.BACK,65535),o.clearStencil(a),u|=o.STENCIL_BUFFER_BIT;break;case Ac.DISCARD:}}if(u&&o.clear(u),u&o.COLOR_BUFFER_BIT){var d=h.bs.targets[0].blendColorMask;if(d!==Sc.ALL){var p=(d&Sc.R)!==Sc.NONE,m=(d&Sc.G)!==Sc.NONE,g=(d&Sc.B)!==Sc.NONE,v=(d&Sc.A)!==Sc.NONE;o.colorMask(p,m,g,v)}}u&o.DEPTH_BUFFER_BIT&&!h.dss.depthWrite&&o.depthMask(!1),u&o.STENCIL_BUFFER_BIT&&(h.dss.stencilWriteMaskFront||o.stencilMaskSeparate(o.FRONT,0),h.dss.stencilWriteMaskBack||o.stencilMaskSeparate(o.BACK,0))}}function flt(t,e,i,n,r,s){var a,o,h,u=t.gl,l=t.stateCache,c=e&&e.gpuShader,_=!1;if(e&&llt.gpuPipelineState!==e){if(llt.gpuPipelineState=e,llt.glPrimitive=e.glPrimitive,e.gpuShader){var f=e.gpuShader.glProgram;l.glProgram!==f&&(u.useProgram(f),l.glProgram=f,_=!0)}var d=e.rs;if(d){if(l.rs.cullMode!==d.cullMode){switch(d.cullMode){case Dc.NONE:u.disable(u.CULL_FACE);break;case Dc.FRONT:u.enable(u.CULL_FACE),u.cullFace(u.FRONT);break;case Dc.BACK:u.enable(u.CULL_FACE),u.cullFace(u.BACK)}l.rs.cullMode=d.cullMode}var p=d.isFrontFaceCCW;l.rs.isFrontFaceCCW!==p&&(u.frontFace(p?u.CCW:u.CW),l.rs.isFrontFaceCCW=p),l.rs.depthBias===d.depthBias&&l.rs.depthBiasSlop===d.depthBiasSlop||(u.polygonOffset(d.depthBias,d.depthBiasSlop),l.rs.depthBias=d.depthBias,l.rs.depthBiasSlop=d.depthBiasSlop),l.rs.lineWidth!==d.lineWidth&&(u.lineWidth(d.lineWidth),l.rs.lineWidth=d.lineWidth)}var m=e.dss;m&&(l.dss.depthTest!==m.depthTest&&(m.depthTest?u.enable(u.DEPTH_TEST):u.disable(u.DEPTH_TEST),l.dss.depthTest=m.depthTest),l.dss.depthWrite!==m.depthWrite&&(u.depthMask(m.depthWrite),l.dss.depthWrite=m.depthWrite),l.dss.depthFunc!==m.depthFunc&&(u.depthFunc(Xut[m.depthFunc]),l.dss.depthFunc=m.depthFunc),l.dss.stencilTestFront===m.stencilTestFront&&l.dss.stencilTestBack===m.stencilTestBack||(m.stencilTestFront||m.stencilTestBack?u.enable(u.STENCIL_TEST):u.disable(u.STENCIL_TEST),l.dss.stencilTestFront=m.stencilTestFront,l.dss.stencilTestBack=m.stencilTestBack),l.dss.stencilFuncFront===m.stencilFuncFront&&l.dss.stencilRefFront===m.stencilRefFront&&l.dss.stencilReadMaskFront===m.stencilReadMaskFront||(u.stencilFuncSeparate(u.FRONT,Xut[m.stencilFuncFront],m.stencilRefFront,m.stencilReadMaskFront),l.dss.stencilFuncFront=m.stencilFuncFront,l.dss.stencilRefFront=m.stencilRefFront,l.dss.stencilReadMaskFront=m.stencilReadMaskFront),l.dss.stencilFailOpFront===m.stencilFailOpFront&&l.dss.stencilZFailOpFront===m.stencilZFailOpFront&&l.dss.stencilPassOpFront===m.stencilPassOpFront||(u.stencilOpSeparate(u.FRONT,jut[m.stencilFailOpFront],jut[m.stencilZFailOpFront],jut[m.stencilPassOpFront]),l.dss.stencilFailOpFront=m.stencilFailOpFront,l.dss.stencilZFailOpFront=m.stencilZFailOpFront,l.dss.stencilPassOpFront=m.stencilPassOpFront),l.dss.stencilWriteMaskFront!==m.stencilWriteMaskFront&&(u.stencilMaskSeparate(u.FRONT,m.stencilWriteMaskFront),l.dss.stencilWriteMaskFront=m.stencilWriteMaskFront),l.dss.stencilFuncBack===m.stencilFuncBack&&l.dss.stencilRefBack===m.stencilRefBack&&l.dss.stencilReadMaskBack===m.stencilReadMaskBack||(u.stencilFuncSeparate(u.BACK,Xut[m.stencilFuncBack],m.stencilRefBack,m.stencilReadMaskBack),l.dss.stencilFuncBack=m.stencilFuncBack,l.dss.stencilRefBack=m.stencilRefBack,l.dss.stencilReadMaskBack=m.stencilReadMaskBack),l.dss.stencilFailOpBack===m.stencilFailOpBack&&l.dss.stencilZFailOpBack===m.stencilZFailOpBack&&l.dss.stencilPassOpBack===m.stencilPassOpBack||(u.stencilOpSeparate(u.BACK,jut[m.stencilFailOpBack],jut[m.stencilZFailOpBack],jut[m.stencilPassOpBack]),l.dss.stencilFailOpBack=m.stencilFailOpBack,l.dss.stencilZFailOpBack=m.stencilZFailOpBack,l.dss.stencilPassOpBack=m.stencilPassOpBack),l.dss.stencilWriteMaskBack!==m.stencilWriteMaskBack&&(u.stencilMaskSeparate(u.BACK,m.stencilWriteMaskBack),l.dss.stencilWriteMaskBack=m.stencilWriteMaskBack));var g=e.bs;if(g){l.bs.isA2C!==g.isA2C&&(g.isA2C?u.enable(u.SAMPLE_ALPHA_TO_COVERAGE):u.disable(u.SAMPLE_ALPHA_TO_COVERAGE),l.bs.isA2C=g.isA2C),l.bs.blendColor.x===g.blendColor.x&&l.bs.blendColor.y===g.blendColor.y&&l.bs.blendColor.z===g.blendColor.z&&l.bs.blendColor.w===g.blendColor.w||(u.blendColor(g.blendColor.x,g.blendColor.y,g.blendColor.z,g.blendColor.w),l.bs.blendColor.x=g.blendColor.x,l.bs.blendColor.y=g.blendColor.y,l.bs.blendColor.z=g.blendColor.z,l.bs.blendColor.w=g.blendColor.w);var v=g.targets[0],y=l.bs.targets[0];y.blend!==v.blend&&(v.blend?u.enable(u.BLEND):u.disable(u.BLEND),y.blend=v.blend),y.blendEq===v.blendEq&&y.blendAlphaEq===v.blendAlphaEq||(u.blendEquationSeparate(Yut[v.blendEq],Yut[v.blendAlphaEq]),y.blendEq=v.blendEq,y.blendAlphaEq=v.blendAlphaEq),y.blendSrc===v.blendSrc&&y.blendDst===v.blendDst&&y.blendSrcAlpha===v.blendSrcAlpha&&y.blendDstAlpha===v.blendDstAlpha||(u.blendFuncSeparate(qut[v.blendSrc],qut[v.blendDst],qut[v.blendSrcAlpha],qut[v.blendDstAlpha]),y.blendSrc=v.blendSrc,y.blendDst=v.blendDst,y.blendSrcAlpha=v.blendSrcAlpha,y.blendDstAlpha=v.blendDstAlpha),y.blendColorMask!==v.blendColorMask&&(u.colorMask((v.blendColorMask&Sc.R)!==Sc.NONE,(v.blendColorMask&Sc.G)!==Sc.NONE,(v.blendColorMask&Sc.B)!==Sc.NONE,(v.blendColorMask&Sc.A)!==Sc.NONE),y.blendColorMask=v.blendColorMask)}}if(e&&e.gpuPipelineLayout&&c){for(var S=c.glBlocks.length,T=e.gpuPipelineLayout.dynamicOffsetIndices,A=0;A<S;A++){var b=c.glBlocks[A],E=n[b.set],C=E&&E.descriptorIndices[b.binding],x=C>=0&&E.gpuDescriptors[C],w=null,R=0;if(x&&x.gpuBuffer){var I=x.gpuBuffer,D=T[b.set],B=D&&D[b.binding];B>=0&&(R=r[B]),"vf32"in I?w=I.vf32:(R+=I.offset,w=I.gpuBuffer.vf32),R>>=2}if(w)for(var M=b.glActiveUniforms.length,P=0;P<M;P++){var O=b.glActiveUniforms[P];switch(O.glType){case u.BOOL:case u.INT:for(var L=0;L<O.array.length;++L){var N=O.offset+R+L;if(w[N]!==O.array[L]){for(var F=L,k=N;F<O.array.length;++F,++k)O.array[F]=w[k];u.uniform1iv(O.glLoc,O.array);break}}break;case u.BOOL_VEC2:case u.INT_VEC2:for(var G=0;G<O.array.length;++G){var V=O.offset+R+G;if(w[V]!==O.array[G]){for(var U=G,z=V;U<O.array.length;++U,++z)O.array[U]=w[z];u.uniform2iv(O.glLoc,O.array);break}}break;case u.BOOL_VEC3:case u.INT_VEC3:for(var H=0;H<O.array.length;++H){var W=O.offset+R+H;if(w[W]!==O.array[H]){for(var X=H,j=W;X<O.array.length;++X,++j)O.array[X]=w[j];u.uniform3iv(O.glLoc,O.array);break}}break;case u.BOOL_VEC4:case u.INT_VEC4:for(var Y=0;Y<O.array.length;++Y){var q=O.offset+R+Y;if(w[q]!==O.array[Y]){for(var K=Y,Q=q;K<O.array.length;++K,++Q)O.array[K]=w[Q];u.uniform4iv(O.glLoc,O.array);break}}break;case u.FLOAT:for(var Z=0;Z<O.array.length;++Z){var J=O.offset+R+Z;if(w[J]!==O.array[Z]){for(var $=Z,tt=J;$<O.array.length;++$,++tt)O.array[$]=w[tt];u.uniform1fv(O.glLoc,O.array);break}}break;case u.FLOAT_VEC2:for(var et=0;et<O.array.length;++et){var it=O.offset+R+et;if(w[it]!==O.array[et]){for(var nt=et,rt=it;nt<O.array.length;++nt,++rt)O.array[nt]=w[rt];u.uniform2fv(O.glLoc,O.array);break}}break;case u.FLOAT_VEC3:for(var st=0;st<O.array.length;++st){var at=O.offset+R+st;if(w[at]!==O.array[st]){for(var ot=st,ht=at;ot<O.array.length;++ot,++ht)O.array[ot]=w[ht];u.uniform3fv(O.glLoc,O.array);break}}break;case u.FLOAT_VEC4:for(var ut=0;ut<O.array.length;++ut){var lt=O.offset+R+ut;if(w[lt]!==O.array[ut]){for(var ct=ut,_t=lt;ct<O.array.length;++ct,++_t)O.array[ct]=w[_t];u.uniform4fv(O.glLoc,O.array);break}}break;case u.FLOAT_MAT2:for(var ft=0;ft<O.array.length;++ft){var dt=O.offset+R+ft;if(w[dt]!==O.array[ft]){for(var pt=ft,mt=dt;pt<O.array.length;++pt,++mt)O.array[pt]=w[mt];u.uniformMatrix2fv(O.glLoc,!1,O.array);break}}break;case u.FLOAT_MAT3:for(var gt=0;gt<O.array.length;++gt){var vt=O.offset+R+gt;if(w[vt]!==O.array[gt]){for(var yt=gt,St=vt;yt<O.array.length;++yt,++St)O.array[yt]=w[St];u.uniformMatrix3fv(O.glLoc,!1,O.array);break}}break;case u.FLOAT_MAT4:for(var Tt=0;Tt<O.array.length;++Tt){var At=O.offset+R+Tt;if(w[At]!==O.array[Tt]){for(var bt=Tt,Et=At;bt<O.array.length;++bt,++Et)O.array[bt]=w[Et];u.uniformMatrix4fv(O.glLoc,!1,O.array);break}}}}}for(var Ct=c.glSamplerTextures.length,xt=0;xt<Ct;xt++)for(var wt=c.glSamplerTextures[xt],Rt=n[wt.set],It=Rt&&Rt.descriptorIndices[wt.binding],Dt=It>=0&&Rt.gpuDescriptors[It],Bt=wt.units.length,Mt=0;Mt<Bt;Mt++){var Pt=wt.units[Mt];if(Dt&&Dt.gpuSampler){if(Dt.gpuTexture&&Dt.gpuTexture.size>0){var Ot=Dt.gpuTexture,Lt=l.glTexUnits[Pt];Lt.glTexture!==Ot.glTexture&&(l.texUnit!==Pt&&(u.activeTexture(u.TEXTURE0+Pt),l.texUnit=Pt),Ot.glTexture?u.bindTexture(Ot.glTarget,Ot.glTexture):u.bindTexture(Ot.glTarget,t.nullTex2D.gpuTexture.glTexture),Lt.glTexture=Ot.glTexture);var Nt=Dt.gpuSampler;Ot.isPowerOf2?(a=Nt.glWrapS,o=Nt.glWrapT):(a=u.CLAMP_TO_EDGE,o=u.CLAMP_TO_EDGE),h=Ot.isPowerOf2?Ot.mipLevel<=1&&(Nt.glMinFilter===u.LINEAR_MIPMAP_NEAREST||Nt.glMinFilter===u.LINEAR_MIPMAP_LINEAR)?u.LINEAR:Nt.glMinFilter:Nt.glMinFilter===u.LINEAR||Nt.glMinFilter===u.LINEAR_MIPMAP_NEAREST||Nt.glMinFilter===u.LINEAR_MIPMAP_LINEAR?u.LINEAR:u.NEAREST,Ot.glWrapS!==a&&(l.texUnit!==Pt&&(u.activeTexture(u.TEXTURE0+Pt),l.texUnit=Pt),u.texParameteri(Ot.glTarget,u.TEXTURE_WRAP_S,a),Ot.glWrapS=a),Ot.glWrapT!==o&&(l.texUnit!==Pt&&(u.activeTexture(u.TEXTURE0+Pt),l.texUnit=Pt),u.texParameteri(Ot.glTarget,u.TEXTURE_WRAP_T,o),Ot.glWrapT=o),Ot.glMinFilter!==h&&(l.texUnit!==Pt&&(u.activeTexture(u.TEXTURE0+Pt),l.texUnit=Pt),u.texParameteri(Ot.glTarget,u.TEXTURE_MIN_FILTER,h),Ot.glMinFilter=h),Ot.glMagFilter!==Nt.glMagFilter&&(l.texUnit!==Pt&&(u.activeTexture(u.TEXTURE0+Pt),l.texUnit=Pt),u.texParameteri(Ot.glTarget,u.TEXTURE_MAG_FILTER,Nt.glMagFilter),Ot.glMagFilter=Nt.glMagFilter)}Dt=Rt.gpuDescriptors[++It]}}}if(i&&c&&(_||llt.gpuInputAssembler!==i)){llt.gpuInputAssembler=i;var Ft=t.extensions.ANGLE_instanced_arrays;if(t.extensions.useVAO){var kt=t.extensions.OES_vertex_array_object,Gt=i.glVAOs.get(c.glProgram);if(!Gt){var Vt;Gt=kt.createVertexArrayOES(),i.glVAOs.set(c.glProgram,Gt),kt.bindVertexArrayOES(Gt),u.bindBuffer(u.ARRAY_BUFFER,null),u.bindBuffer(u.ELEMENT_ARRAY_BUFFER,null),l.glArrayBuffer=null,l.glElementArrayBuffer=null;for(var Ut=c.glInputs.length,zt=0;zt<Ut;zt++){var Ht=c.glInputs[zt];Vt=null;for(var Wt=i.glAttribs.length,Xt=0;Xt<Wt;Xt++){var jt=i.glAttribs[Xt];if(jt.name===Ht.name){Vt=jt;break}}if(Vt){l.glArrayBuffer!==Vt.glBuffer&&(u.bindBuffer(u.ARRAY_BUFFER,Vt.glBuffer),l.glArrayBuffer=Vt.glBuffer);for(var Yt=0;Yt<Vt.componentCount;++Yt){var qt=Ht.glLoc+Yt,Kt=Vt.offset+Vt.size*Yt;u.enableVertexAttribArray(qt),l.glCurrentAttribLocs[qt]=!0,u.vertexAttribPointer(qt,Vt.count,Vt.glType,Vt.isNormalized,Vt.stride,Kt),Ft&&Ft.vertexAttribDivisorANGLE(qt,Vt.isInstanced?1:0)}}}var Qt=i.gpuIndexBuffer;Qt&&u.bindBuffer(u.ELEMENT_ARRAY_BUFFER,Qt.glBuffer),kt.bindVertexArrayOES(null),u.bindBuffer(u.ARRAY_BUFFER,null),u.bindBuffer(u.ELEMENT_ARRAY_BUFFER,null),l.glArrayBuffer=null,l.glElementArrayBuffer=null}l.glVAO!==Gt&&(kt.bindVertexArrayOES(Gt),l.glVAO=Gt)}else{for(var Zt=0;Zt<t.capabilities.maxVertexAttributes;++Zt)l.glCurrentAttribLocs[Zt]=!1;for(var Jt=c.glInputs.length,$t=0;$t<Jt;$t++){for(var te=c.glInputs[$t],ee=null,ie=i.glAttribs.length,ne=0;ne<ie;ne++){var re=i.glAttribs[ne];if(re.name===te.name){ee=re;break}}if(ee){l.glArrayBuffer!==ee.glBuffer&&(u.bindBuffer(u.ARRAY_BUFFER,ee.glBuffer),l.glArrayBuffer=ee.glBuffer);for(var se=0;se<ee.componentCount;++se){var ae=te.glLoc+se,oe=ee.offset+ee.size*se;!l.glEnabledAttribLocs[ae]&&ae>=0&&(u.enableVertexAttribArray(ae),l.glEnabledAttribLocs[ae]=!0),l.glCurrentAttribLocs[ae]=!0,u.vertexAttribPointer(ae,ee.count,ee.glType,ee.isNormalized,ee.stride,oe),Ft&&Ft.vertexAttribDivisorANGLE(ae,ee.isInstanced?1:0)}}}var he=i.gpuIndexBuffer;he&&l.glElementArrayBuffer!==he.glBuffer&&(u.bindBuffer(u.ELEMENT_ARRAY_BUFFER,he.glBuffer),l.glElementArrayBuffer=he.glBuffer);for(var ue=0;ue<t.capabilities.maxVertexAttributes;++ue)l.glEnabledAttribLocs[ue]!==l.glCurrentAttribLocs[ue]&&(u.disableVertexAttribArray(ue),l.glEnabledAttribLocs[ue]=!1)}}if(e&&e.dynamicStates.length)for(var le=e.dynamicStates.length,ce=0;ce<le;ce++)switch(e.dynamicStates[ce]){case Bc.LINE_WIDTH:l.rs.lineWidth!==s.lineWidth&&(u.lineWidth(s.lineWidth),l.rs.lineWidth=s.lineWidth);break;case Bc.DEPTH_BIAS:l.rs.depthBias===s.depthBiasConstant&&l.rs.depthBiasSlop===s.depthBiasSlope||(u.polygonOffset(s.depthBiasConstant,s.depthBiasSlope),l.rs.depthBias=s.depthBiasConstant,l.rs.depthBiasSlop=s.depthBiasSlope);break;case Bc.BLEND_CONSTANTS:var _e=s.blendConstant;l.bs.blendColor.x===_e.x&&l.bs.blendColor.y===_e.y&&l.bs.blendColor.z===_e.z&&l.bs.blendColor.w===_e.w||(u.blendColor(_e.x,_e.y,_e.z,_e.w),l.bs.blendColor.copy(_e));break;case Bc.STENCIL_WRITE_MASK:var fe=s.stencilStatesFront,de=s.stencilStatesBack;l.dss.stencilWriteMaskFront!==fe.writeMask&&(u.stencilMaskSeparate(u.FRONT,fe.writeMask),l.dss.stencilWriteMaskFront=fe.writeMask),l.dss.stencilWriteMaskBack!==de.writeMask&&(u.stencilMaskSeparate(u.BACK,de.writeMask),l.dss.stencilWriteMaskBack=de.writeMask);break;case Bc.STENCIL_COMPARE_MASK:var pe=s.stencilStatesFront,me=s.stencilStatesBack;l.dss.stencilRefFront===pe.reference&&l.dss.stencilReadMaskFront===pe.compareMask||(u.stencilFuncSeparate(u.FRONT,Xut[l.dss.stencilFuncFront],pe.reference,pe.compareMask),l.dss.stencilRefFront=pe.reference,l.dss.stencilReadMaskFront=pe.compareMask),l.dss.stencilRefBack===me.reference&&l.dss.stencilReadMaskBack===me.compareMask||(u.stencilFuncSeparate(u.BACK,Xut[l.dss.stencilFuncBack],me.reference,me.compareMask),l.dss.stencilRefBack=me.reference,l.dss.stencilReadMaskBack=me.compareMask)}}function dlt(t,e){var i=t.gl,n=t.extensions,r=n.ANGLE_instanced_arrays,s=n.WEBGL_multi_draw,a=llt.gpuInputAssembler,o=llt.glPrimitive;if(a){var h=a.gpuIndexBuffer;if(a.gpuIndirectBuffer){var u=a.gpuIndirectBuffer.indirects;if(u.drawByIndex){for(var l=0;l<u.drawCount;l++)u.byteOffsets[l]=u.offsets[l]*h.stride;if(s)u.instancedDraw?s.multiDrawElementsInstancedWEBGL(o,u.counts,0,a.glIndexType,u.byteOffsets,0,u.instances,0,u.drawCount):s.multiDrawElementsWEBGL(o,u.counts,0,a.glIndexType,u.byteOffsets,0,u.drawCount);else for(var c=0;c<u.drawCount;c++)u.instances[c]&&r?r.drawElementsInstancedANGLE(o,u.counts[c],a.glIndexType,u.byteOffsets[c],u.instances[c]):i.drawElements(o,u.counts[c],a.glIndexType,u.byteOffsets[c])}else if(s)u.instancedDraw?s.multiDrawArraysInstancedWEBGL(o,u.offsets,0,u.counts,0,u.instances,0,u.drawCount):s.multiDrawArraysWEBGL(o,u.offsets,0,u.counts,0,u.drawCount);else for(var _=0;_<u.drawCount;_++)u.instances[_]&&r?r.drawArraysInstancedANGLE(o,u.offsets[_],u.counts[_],u.instances[_]):i.drawArrays(o,u.offsets[_],u.counts[_])}else if(e.instanceCount&&r)if(h){if(e.indexCount>0){var f=e.firstIndex*h.stride;r.drawElementsInstancedANGLE(o,e.indexCount,a.glIndexType,f,e.instanceCount)}}else e.vertexCount>0&&r.drawArraysInstancedANGLE(o,e.firstVertex,e.vertexCount,e.instanceCount);else if(h){if(e.indexCount>0){var d=e.firstIndex*h.stride;i.drawElements(o,e.indexCount,a.glIndexType,d)}}else e.vertexCount>0&&i.drawArrays(o,e.firstVertex,e.vertexCount)}}var plt=new Array(Wut.COUNT);function mlt(t,e){plt.fill(0);for(var i=0;i<e.cmds.length;++i){var n=e.cmds.array[i],r=plt[n]++;switch(n){case Wut.BEGIN_RENDER_PASS:var s=e.beginRenderPassCmds.array[r];_lt(t,s.gpuRenderPass,s.gpuFramebuffer,s.renderArea,s.clearColors,s.clearDepth,s.clearStencil);break;case Wut.BIND_STATES:var a=e.bindStatesCmds.array[r];flt(t,a.gpuPipelineState,a.gpuInputAssembler,a.gpuDescriptorSets,a.dynamicOffsets,a.dynamicStates);break;case Wut.DRAW:dlt(t,e.drawCmds.array[r].drawInfo);break;case Wut.UPDATE_BUFFER:var o=e.updateBufferCmds.array[r];slt(t,o.gpuBuffer,o.buffer,o.offset,o.size);break;case Wut.COPY_BUFFER_TO_TEXTURE:var h=e.copyBufferToTextureCmds.array[r];ylt(t,h.buffers,h.gpuTexture,h.regions);break;case Wut.BLIT_TEXTURE:var u=e.blitTextureCmds.array[r];Slt(t,u.srcTexture,u.dstTexture,u.regions,u.filter)}}}var glt=new Uint8Array(1);function vlt(t,e,i,n,r){var s=nf(e).height,a=Z_(e,r.width,r.height,r.depth),o=Z_(e,n.width,1,1),h=Z_(e,n.width,n.height,1),u=Z_(e,r.width,1,1),l=ef(j_[e]);glt.byteLength<a&&(glt=new Uint8Array(a));for(var c=0,_=i,f=0;f<r.depth;f++){_=i+h*f;for(var d=0;d<r.height;d+=s)glt.subarray(c,c+u).set(new Uint8Array(t.buffer,t.byteOffset+_,u)),c+=u,_+=o}var p=a/l.BYTES_PER_ELEMENT;return st(Number.isInteger(p),9101),new l(glt.buffer,0,p)}function ylt(t,e,i,n){var r=t.gl,s=t.stateCache.glTexUnits[t.stateCache.texUnit];s.glTexture!==i.glTexture&&(r.bindTexture(i.glTarget,i.glTexture),s.glTexture=i.glTexture);var a=0,o=0,h=j_[i.format],u=ef(h),l=h.isCompressed,c=nf(i.format),_=new Yc,f=new Xc,d=new Yc;switch(i.glTarget){case r.TEXTURE_2D:for(var p=0;p<n.length;p++){var m=n[p],g=m.texSubres.mipLevel;f.x=0===m.texOffset.x?0:rf(m.texOffset.x,c.width),f.y=0===m.texOffset.y?0:rf(m.texOffset.y,c.height),_.width=m.texExtent.width<c.width?m.texExtent.width:rf(m.texExtent.width,c.width),_.height=m.texExtent.height<c.height?m.texExtent.width:rf(m.texExtent.height,c.height),d.width=m.buffStride>0?m.buffStride:_.width,d.height=m.buffTexHeight>0?m.buffTexHeight:_.height;var v=m.texExtent.width+f.x===i.width>>g?m.texExtent.width:_.width,y=m.texExtent.height+f.y===i.height>>g?m.texExtent.height:_.height,S=void 0,T=e[a++];if(d.width===_.width&&d.height===_.height){var A=Z_(i.format,v,y,1)/u.BYTES_PER_ELEMENT;st(Number.isInteger(A),9101),S=new u(T.buffer,T.byteOffset+m.buffOffset,A)}else S=vlt(T,i.format,m.buffOffset,d,_);l?i.glInternalFmt===Lut.COMPRESSED_RGB_ETC1_WEBGL||t.extensions.noCompressedTexSubImage2D?r.compressedTexImage2D(r.TEXTURE_2D,g,i.glInternalFmt,v,y,0,S):r.compressedTexSubImage2D(r.TEXTURE_2D,g,f.x,f.y,v,y,i.glFormat,S):r.texSubImage2D(r.TEXTURE_2D,g,f.x,f.y,v,y,i.glFormat,i.glType,S)}break;case r.TEXTURE_CUBE_MAP:for(var b=0;b<n.length;b++){var E=n[b],C=E.texSubres.mipLevel;f.x=0===E.texOffset.x?0:rf(E.texOffset.x,c.width),f.y=0===E.texOffset.y?0:rf(E.texOffset.y,c.height),_.width=E.texExtent.width<c.width?E.texExtent.width:rf(E.texExtent.width,c.width),_.height=E.texExtent.height<c.height?E.texExtent.width:rf(E.texExtent.height,c.height),d.width=E.buffStride>0?E.buffStride:_.width,d.height=E.buffTexHeight>0?E.buffTexHeight:_.height;var x=E.texExtent.width+f.x===i.width>>C?E.texExtent.width:_.width,w=E.texExtent.height+f.y===i.height>>C?E.texExtent.height:_.height,R=E.texSubres.baseArrayLayer+E.texSubres.layerCount;for(o=E.texSubres.baseArrayLayer;o<R;++o){var I=void 0,D=e[a++];if(d.width===_.width&&d.height===_.height){var B=Z_(i.format,x,w,1)/u.BYTES_PER_ELEMENT;st(Number.isInteger(B),9101),I=new u(D.buffer,D.byteOffset+E.buffOffset,B)}else I=vlt(D,i.format,E.buffOffset,d,_);l?i.glInternalFmt===Lut.COMPRESSED_RGB_ETC1_WEBGL||t.extensions.noCompressedTexSubImage2D?r.compressedTexImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+o,C,i.glInternalFmt,x,w,0,I):r.compressedTexSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+o,C,f.x,f.y,x,w,i.glFormat,I):r.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+o,C,f.x,f.y,x,w,i.glFormat,i.glType,I)}}break;default:it(16327)}i.flags&lc.GEN_MIPMAP&&r.generateMipmap(i.glTarget)}function Slt(t,e,i,n,r){t.blitManager.draw(e,i,n,r)}var Tlt=function(){function t(){this.drawCount=0,this.drawByIndex=!1,this.instancedDraw=!1,this._capacity=4,this.counts=new Int32Array(this._capacity),this.offsets=new Int32Array(this._capacity),this.instances=new Int32Array(this._capacity),this.byteOffsets=new Int32Array(this._capacity)}var e=t.prototype;return e.clearDraws=function(){this.drawCount=0,this.drawByIndex=!1,this.instancedDraw=!1},e.setDrawInfo=function(t,e){this._ensureCapacity(t),this.drawByIndex=e.indexCount>0,this.instancedDraw=!!e.instanceCount,this.drawCount=Math.max(t+1,this.drawCount),this.drawByIndex?(this.counts[t]=e.indexCount,this.offsets[t]=e.firstIndex):(this.counts[t]=e.vertexCount,this.offsets[t]=e.firstVertex),this.instances[t]=Math.max(1,e.instanceCount)},e._ensureCapacity=function(t){if(!(this._capacity>t)){this._capacity=Ki(t);var e=new Int32Array(this._capacity),i=new Int32Array(this._capacity),n=new Int32Array(this._capacity);this.byteOffsets=new Int32Array(this._capacity),e.set(this.counts),i.set(this.offsets),n.set(this.instances),this.counts=e,this.offsets=i,this.instances=n}},t}(),Alt=function(){function t(){this._gpuShader=null,this._gpuDescriptorSetLayout=null,this._gpuPipelineLayout=null,this._gpuPipelineState=null,this._gpuVertexBuffer=null,this._gpuInputAssembler=null,this._gpuPointSampler=null,this._gpuLinearSampler=null,this._gpuDescriptorSet=null,this._gpuUniformBuffer=null,this._drawInfo=null,this._glFramebuffer=null,this._uniformBuffer=null;var t=Fut.instance.gl,e=Fut.instance.bindingMappingInfo.maxBlockCounts[0];this._gpuShader={name:"Blit Pass",blocks:[new f_(0,0,"BlitParams",[new __("tilingOffsetSrc",nc.FLOAT4,1),new __("tilingOffsetDst",nc.FLOAT4,1)],1)],samplerTextures:[new d_(0,e,"textureSrc",nc.SAMPLER2D,1)],subpassInputs:[],gpuStages:[{type:Tc.VERTEX,source:"\n precision mediump float;\n\n attribute vec2 a_position;\n attribute vec2 a_texCoord;\n \n uniform vec4 tilingOffsetSrc;\n uniform vec4 tilingOffsetDst;\n \n varying vec2 v_texCoord;\n \n void main() {\n v_texCoord = a_texCoord * tilingOffsetSrc.xy + tilingOffsetSrc.zw;\n gl_Position = vec4((a_position + 1.0) * tilingOffsetDst.xy - 1.0 + tilingOffsetDst.zw * 2.0, 0, 1);\n }",glShader:null},{type:Tc.FRAGMENT,source:"\n precision mediump float;\n uniform sampler2D textureSrc;\n\n varying vec2 v_texCoord;\n \n void main() {\n gl_FragColor = texture2D(textureSrc, v_texCoord);\n }",glShader:null}],glProgram:null,glInputs:[],glUniforms:[],glBlocks:[],glSamplerTextures:[]},alt(Fut.instance,this._gpuShader),this._gpuDescriptorSetLayout={bindings:[new P_(0,Pc.UNIFORM_BUFFER,1,Tc.VERTEX),new P_(e,Pc.SAMPLER_TEXTURE,1,Tc.FRAGMENT)],dynamicBindings:[],descriptorIndices:[],descriptorCount:e+1};for(var i=0;i<e;i++)this._gpuDescriptorSetLayout.descriptorIndices[i]=0;this._gpuDescriptorSetLayout.descriptorIndices.push(1),this._gpuPipelineLayout={gpuSetLayouts:[this._gpuDescriptorSetLayout],dynamicOffsetCount:0,dynamicOffsetOffsets:[0],dynamicOffsetIndices:[[]]},this._gpuPipelineState={glPrimitive:t.TRIANGLE_STRIP,gpuShader:this._gpuShader,gpuPipelineLayout:this._gpuPipelineLayout,rs:null,dss:new gf(!1,!1),bs:null,dynamicStates:[],gpuRenderPass:null},this._gpuVertexBuffer={usage:rc.VERTEX,memUsage:oc.DEVICE,size:16*Float32Array.BYTES_PER_ELEMENT,stride:4*Float32Array.BYTES_PER_ELEMENT,buffer:null,vf32:null,indirects:new Tlt,glTarget:0,glBuffer:null},nlt(Fut.instance,this._gpuVertexBuffer),Fut.instance.memoryStatus.bufferSize+=this._gpuVertexBuffer.size;var n=new Float32Array([-1,-1,0,0,1,-1,1,0,-1,1,0,1,1,1,1,1]);slt(Fut.instance,this._gpuVertexBuffer,n,0,n.length),this._gpuInputAssembler={attributes:[new T_("a_position",ec.RG32F),new T_("a_texCoord",ec.RG32F)],gpuVertexBuffers:[this._gpuVertexBuffer],gpuIndexBuffer:null,gpuIndirectBuffer:null,glAttribs:[],glIndexType:0,glVAOs:new Map},hlt(Fut.instance,this._gpuInputAssembler),this._gpuPointSampler={glMinFilter:9728,glMagFilter:9728,glWrapS:10497,glWrapT:10497,glWrapR:10497},this._gpuLinearSampler={glMinFilter:9729,glMagFilter:9729,glWrapS:10497,glWrapT:10497,glWrapR:10497},this._uniformBuffer=new Float32Array(8),this._gpuUniformBuffer={usage:rc.UNIFORM,memUsage:oc.DEVICE,size:8*Float32Array.BYTES_PER_ELEMENT,stride:8*Float32Array.BYTES_PER_ELEMENT,buffer:this._uniformBuffer,vf32:null,indirects:new Tlt,glTarget:0,glBuffer:null},nlt(Fut.instance,this._gpuUniformBuffer),Fut.instance.memoryStatus.bufferSize+=this._gpuUniformBuffer.size,this._gpuDescriptorSet={gpuDescriptors:[{type:Pc.UNIFORM_BUFFER,gpuBuffer:this._gpuUniformBuffer,gpuTexture:null,gpuSampler:null},{type:Pc.SAMPLER_TEXTURE,gpuBuffer:null,gpuTexture:null,gpuSampler:null}],descriptorIndices:this._gpuDescriptorSetLayout.descriptorIndices},this._drawInfo=new a_(4,0,0,0,0,0,0),this._glFramebuffer=Fut.instance.gl.createFramebuffer()}var e=t.prototype;return e.destroy=function(){this._glFramebuffer&&(Fut.instance.gl.deleteFramebuffer(this._glFramebuffer),this._glFramebuffer=null),this._gpuVertexBuffer&&(Fut.instance.memoryStatus.bufferSize-=this._gpuVertexBuffer.size,rlt(Fut.instance,this._gpuVertexBuffer)),this._gpuUniformBuffer&&(Fut.instance.memoryStatus.bufferSize-=this._gpuUniformBuffer.size,rlt(Fut.instance,this._gpuUniformBuffer)),this._gpuShader&&olt(Fut.instance,this._gpuShader),this._gpuInputAssembler&&ult(Fut.instance,this._gpuInputAssembler)},e.draw=function(t,e,i,n){var r=Fut.instance,s=r.gl,a=r.stateCache,o=a.glFramebuffer;if(s.viewport(0,0,e.width,e.height),s.scissor(0,0,e.width,e.height),this._uniformBuffer&&this._gpuUniformBuffer&&this._gpuPipelineState&&this._gpuInputAssembler&&this._gpuDescriptorSet&&this._drawInfo){var h=this._gpuDescriptorSet.gpuDescriptors[1];h.gpuTexture=t,h.gpuSampler=n===dc.POINT?this._gpuPointSampler:this._gpuLinearSampler;var u=j_[e.format],l=s.COLOR_ATTACHMENT0;u.hasStencil?l=s.DEPTH_STENCIL_ATTACHMENT:u.hasDepth&&(l=s.DEPTH_ATTACHMENT);var c=i.map((function(t,e){return e}));c.sort((function(t,e){return i[t].srcSubres.mipLevel-i[e].srcSubres.mipLevel})),a.glFramebuffer!==this._glFramebuffer&&(r.gl.bindFramebuffer(r.gl.FRAMEBUFFER,this._glFramebuffer),a.glFramebuffer=this._glFramebuffer);var _=i[0].dstSubres.mipLevel;e.glTexture?s.framebufferTexture2D(s.FRAMEBUFFER,l,e.glTarget,e.glTexture,_):s.framebufferRenderbuffer(s.FRAMEBUFFER,l,s.RENDERBUFFER,e.glRenderbuffer);for(var f=0;f<c.length;++f){var d=i[c[f]];t.glTexture&&_!==d.srcSubres.mipLevel&&(_=d.srcSubres.mipLevel,s.framebufferTexture2D(s.FRAMEBUFFER,l,e.glTarget,e.glTexture,_));var p=t.width,m=t.height,g=e.width,v=e.height;this._uniformBuffer[0]=d.srcExtent.width/p,this._uniformBuffer[1]=d.srcExtent.height/m,this._uniformBuffer[2]=d.srcOffset.x/p,this._uniformBuffer[3]=d.srcOffset.y/m,this._uniformBuffer[4]=d.dstExtent.width/g,this._uniformBuffer[5]=d.dstExtent.height/v,this._uniformBuffer[6]=d.dstOffset.x/g,this._uniformBuffer[7]=d.dstOffset.y/v,slt(r,this._gpuUniformBuffer,this._uniformBuffer,0,this._uniformBuffer.length*Float32Array.BYTES_PER_ELEMENT),flt(r,this._gpuPipelineState,this._gpuInputAssembler,[this._gpuDescriptorSet],[],null),dlt(r,this._drawInfo)}a.glFramebuffer!==o&&(r.gl.bindFramebuffer(r.gl.FRAMEBUFFER,o),a.glFramebuffer=o);var y=a.viewport;s.viewport(y.left,y.top,y.width,y.height);var S=a.scissorRect;s.scissor(S.x,S.y,S.width,S.height)}},t}(),blt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuBuffer=null,e._gpuBufferView=null,e._uniformBuffer=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){if("buffer"in t){this._isBufferView=!0;var e=t.buffer;this._usage=e.usage,this._memUsage=e.memUsage,this._size=this._stride=t.range,this._count=1,this._flags=e.flags,this._gpuBufferView={gpuBuffer:e.gpuBuffer,offset:t.offset,range:t.range}}else this._usage=t.usage,this._memUsage=t.memUsage,this._size=t.size,this._stride=Math.max(t.stride||this._size,1),this._count=this._size/this._stride,this._flags=t.flags,this._usage&rc.UNIFORM&&this._size>0&&(this._uniformBuffer=new Uint8Array(this._size)),this._gpuBuffer={usage:this._usage,memUsage:this._memUsage,size:this._size,stride:this._stride,buffer:null,vf32:null,indirects:new Tlt,glTarget:0,glBuffer:null},this._usage&rc.UNIFORM&&(this._gpuBuffer.buffer=this._uniformBuffer),nlt(Fut.instance,this._gpuBuffer),Fut.instance.memoryStatus.bufferSize+=this._size},i.destroy=function(){this._gpuBuffer&&(rlt(Fut.instance,this._gpuBuffer),Fut.instance.memoryStatus.bufferSize-=this._size,this._gpuBuffer=null),this._gpuBufferView&&(this._gpuBufferView=null)},i.resize=function(t){if(this._isBufferView)tt(16379);else{var e=this._size;e!==t&&(this._size=t,this._count=this._size/this._stride,this._uniformBuffer&&(this._uniformBuffer=new Uint8Array(t)),this._gpuBuffer&&(this._uniformBuffer&&(this._gpuBuffer.buffer=this._uniformBuffer),this._gpuBuffer.size=t,t>0&&(function(t,e){var i=t.gl,n=t.stateCache,r=e.memUsage&oc.HOST?i.DYNAMIC_DRAW:i.STATIC_DRAW;e.usage&rc.VERTEX?(t.extensions.useVAO&&n.glVAO&&(t.extensions.OES_vertex_array_object.bindVertexArrayOES(null),n.glVAO=null),llt.gpuInputAssembler=null,t.stateCache.glArrayBuffer!==e.glBuffer&&i.bindBuffer(i.ARRAY_BUFFER,e.glBuffer),e.buffer?i.bufferData(i.ARRAY_BUFFER,e.buffer,r):i.bufferData(i.ARRAY_BUFFER,e.size,r),i.bindBuffer(i.ARRAY_BUFFER,null),t.stateCache.glArrayBuffer=null):e.usage&rc.INDEX?(t.extensions.useVAO&&n.glVAO&&(t.extensions.OES_vertex_array_object.bindVertexArrayOES(null),n.glVAO=null),llt.gpuInputAssembler=null,t.stateCache.glElementArrayBuffer!==e.glBuffer&&i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,e.glBuffer),e.buffer?i.bufferData(i.ELEMENT_ARRAY_BUFFER,e.buffer,r):i.bufferData(i.ELEMENT_ARRAY_BUFFER,e.size,r),i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,null),t.stateCache.glElementArrayBuffer=null):e.usage&rc.UNIFORM?e.buffer&&(e.vf32=new Float32Array(e.buffer.buffer)):(e.usage&rc.INDIRECT||e.usage&rc.TRANSFER_DST||e.usage&rc.TRANSFER_SRC||it(16315),e.glTarget=i.NONE)}(Fut.instance,this._gpuBuffer),Fut.instance.memoryStatus.bufferSize-=e,Fut.instance.memoryStatus.bufferSize+=t)))}},i.update=function(t,e){var i;this._isBufferView?tt(16380):(i=void 0!==e?e:this._usage&rc.INDIRECT?0:t.byteLength,slt(Fut.instance,this._gpuBuffer,t,0,i))},n(e,[{key:"gpuBuffer",get:function(){return this._gpuBuffer}},{key:"gpuBufferView",get:function(){return this._gpuBufferView}}]),e}(af),Elt=function(){function t(t,e){this._freeIdx=0,this._frees=new Array(e),this._freeCmds=new Is(e);for(var i=0;i<e;++i)this._frees[i]=new t;this._freeIdx=e-1}var e=t.prototype;return e.alloc=function(t){if(this._freeIdx<0){var e=2*this._frees.length,i=this._frees;this._frees=new Array(e);for(var n=e-i.length,r=0;r<n;++r)this._frees[r]=new t;for(var s=n,a=0;s<e;++s,++a)this._frees[s]=i[a];this._freeIdx+=n}var o=this._frees[this._freeIdx];return this._frees[this._freeIdx--]=null,++o.refCount,o},e.free=function(t){0==--t.refCount&&this._freeCmds.push(t)},e.freeCmds=function(t){for(var e=0;e<t.length;++e)0==--t.array[e].refCount&&this._freeCmds.push(t.array[e])},e.release=function(){for(var t=0;t<this._freeCmds.length;++t){var e=this._freeCmds.array[t];e.clear(),this._frees[++this._freeIdx]=e}this._freeCmds.clear()},t}(),Clt=function(){function t(){this.beginRenderPassCmdPool=new Elt(Qut,1),this.bindStatesCmdPool=new Elt(Zut,1),this.drawCmdPool=new Elt(Jut,1),this.updateBufferCmdPool=new Elt($ut,1),this.copyBufferToTextureCmdPool=new Elt(tlt,1),this.blitTextureCmdPool=new Elt(elt,1)}var e=t.prototype;return e.clearCmds=function(t){t.beginRenderPassCmds.length&&(this.beginRenderPassCmdPool.freeCmds(t.beginRenderPassCmds),t.beginRenderPassCmds.clear()),t.bindStatesCmds.length&&(this.bindStatesCmdPool.freeCmds(t.bindStatesCmds),t.bindStatesCmds.clear()),t.drawCmds.length&&(this.drawCmdPool.freeCmds(t.drawCmds),t.drawCmds.clear()),t.updateBufferCmds.length&&(this.updateBufferCmdPool.freeCmds(t.updateBufferCmds),t.updateBufferCmds.clear()),t.copyBufferToTextureCmds.length&&(this.copyBufferToTextureCmdPool.freeCmds(t.copyBufferToTextureCmds),t.copyBufferToTextureCmds.clear()),t.blitTextureCmds.length&&(this.blitTextureCmdPool.freeCmds(t.blitTextureCmds),t.blitTextureCmds.clear()),t.cmds.clear()},e.releaseCmds=function(){this.beginRenderPassCmdPool.release(),this.bindStatesCmdPool.release(),this.drawCmdPool.release(),this.updateBufferCmdPool.release(),this.copyBufferToTextureCmdPool.release(),this.blitTextureCmdPool.release()},t}(),xlt=function(t){function e(){var e;return(e=t.call(this)||this).cmdPackage=new ilt,e._cmdAllocator=new Clt,e._isInRenderPass=!1,e._curGPUPipelineState=null,e._curGPUInputAssembler=null,e._curGPUDescriptorSets=[],e._curDynamicOffsets=Array(8).fill(0),e._curDynamicStates=new W_,e._isStateInvalied=!1,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._type=t.type,this._queue=t.queue;for(var e=Fut.instance.bindingMappings.blockOffsets.length,i=0;i<e;i++)this._curGPUDescriptorSets.push(null)},i.destroy=function(){this._cmdAllocator.clearCmds(this.cmdPackage)},i.begin=function(){this._cmdAllocator.clearCmds(this.cmdPackage),this._curGPUPipelineState=null,this._curGPUInputAssembler=null,this._curGPUDescriptorSets.length=0,this._numDrawCalls=0,this._numInstances=0,this._numTris=0},i.end=function(){this._isStateInvalied&&this.bindStates(),this._isInRenderPass=!1},i.beginRenderPass=function(t,e,i,n,r,s){var a=this._cmdAllocator.beginRenderPassCmdPool.alloc(Qut);a.gpuRenderPass=t.gpuRenderPass,a.gpuFramebuffer=e.gpuFramebuffer,a.renderArea.copy(i),a.clearColors.length=n.length;for(var o=0;o<n.length;++o)a.clearColors[o]=n[o];a.clearDepth=r,a.clearStencil=s,this.cmdPackage.beginRenderPassCmds.push(a),this.cmdPackage.cmds.push(Wut.BEGIN_RENDER_PASS),this._isInRenderPass=!0},i.endRenderPass=function(){this._isInRenderPass=!1},i.bindPipelineState=function(t){var e=t.gpuPipelineState;e!==this._curGPUPipelineState&&(this._curGPUPipelineState=e,this._isStateInvalied=!0)},i.bindDescriptorSet=function(t,e,i){var n=e.gpuDescriptorSet;if(n!==this._curGPUDescriptorSets[t]&&(this._curGPUDescriptorSets[t]=n,this._isStateInvalied=!0),i){var r,s=null===(r=this._curGPUPipelineState)||void 0===r?void 0:r.gpuPipelineLayout;if(s){for(var a=this._curDynamicOffsets,o=s.dynamicOffsetOffsets[t],h=0;h<i.length;h++)a[o+h]=i[h];this._isStateInvalied=!0}}},i.bindInputAssembler=function(t){var e=t.gpuInputAssembler;this._curGPUInputAssembler=e,this._isStateInvalied=!0},i.setViewport=function(t){var e=this._curDynamicStates.viewport;e.left===t.left&&e.top===t.top&&e.width===t.width&&e.height===t.height&&e.minDepth===t.minDepth&&e.maxDepth===t.maxDepth||(e.left=t.left,e.top=t.top,e.width=t.width,e.height=t.height,e.minDepth=t.minDepth,e.maxDepth=t.maxDepth,this._isStateInvalied=!0)},i.setScissor=function(t){var e=this._curDynamicStates.scissor;e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height||(e.x=t.x,e.y=t.y,e.width=t.width,e.height=t.height,this._isStateInvalied=!0)},i.setLineWidth=function(t){this._curDynamicStates.lineWidth!==t&&(this._curDynamicStates.lineWidth=t,this._isStateInvalied=!0)},i.setDepthBias=function(t,e,i){var n=this._curDynamicStates;n.depthBiasConstant===t&&n.depthBiasClamp===e&&n.depthBiasSlope===i||(n.depthBiasConstant=t,n.depthBiasClamp=e,n.depthBiasSlope=i,this._isStateInvalied=!0)},i.setBlendConstants=function(t){var e=this._curDynamicStates.blendConstant;e.x===t.x&&e.y===t.y&&e.z===t.z&&e.w===t.w||(e.copy(t),this._isStateInvalied=!0)},i.setDepthBound=function(t,e){var i=this._curDynamicStates;i.depthMinBounds===t&&i.depthMaxBounds===e||(i.depthMinBounds=t,i.depthMaxBounds=e,this._isStateInvalied=!0)},i.setStencilWriteMask=function(t,e){var i=this._curDynamicStates.stencilStatesFront,n=this._curDynamicStates.stencilStatesBack;t&Mc.FRONT&&i.writeMask!==e&&(i.writeMask=e,this._isStateInvalied=!0),t&Mc.BACK&&n.writeMask!==e&&(n.writeMask=e,this._isStateInvalied=!0)},i.setStencilCompareMask=function(t,e,i){var n=this._curDynamicStates.stencilStatesFront,r=this._curDynamicStates.stencilStatesBack;t&Mc.FRONT&&(n.compareMask===i&&n.reference===e||(n.reference=e,n.compareMask=i,this._isStateInvalied=!0)),t&Mc.BACK&&(r.compareMask===i&&r.reference===e||(r.reference=e,r.compareMask=i,this._isStateInvalied=!0))},i.draw=function(t){if(this._type===Nc.PRIMARY&&this._isInRenderPass||this._type===Nc.SECONDARY){this._isStateInvalied&&this.bindStates();var e="drawInfo"in t?t.drawInfo:t,i=this._cmdAllocator.drawCmdPool.alloc(Jut);i.drawInfo.copy(e),this.cmdPackage.drawCmds.push(i),this.cmdPackage.cmds.push(Wut.DRAW),++this._numDrawCalls,this._numInstances+=e.instanceCount;var n=e.indexCount||e.vertexCount;if(this._curGPUPipelineState)switch(this._curGPUPipelineState.glPrimitive){case 4:this._numTris+=n/3*Math.max(e.instanceCount,1);break;case 5:case 6:this._numTris+=(n-2)*Math.max(e.instanceCount,1)}}else it(16328)},i.updateBuffer=function(t,e,i){if(this._type===Nc.PRIMARY&&!this._isInRenderPass||this._type===Nc.SECONDARY){var n=t.gpuBuffer;if(n){var r,s=this._cmdAllocator.updateBufferCmdPool.alloc($ut),a=0;t.usage&rc.INDIRECT||(a=void 0!==i?i:e.byteLength),r=e,s.gpuBuffer=n,s.buffer=r,s.offset=0,s.size=a,this.cmdPackage.updateBufferCmds.push(s),this.cmdPackage.cmds.push(Wut.UPDATE_BUFFER)}}else it(16329)},i.copyBuffersToTexture=function(t,e,i){if(this._type===Nc.PRIMARY&&!this._isInRenderPass||this._type===Nc.SECONDARY){var n=e.gpuTexture;if(n){var r=this._cmdAllocator.copyBufferToTextureCmdPool.alloc(tlt);r&&(r.gpuTexture=n,r.regions=i,r.buffers=t,this.cmdPackage.copyBufferToTextureCmds.push(r),this.cmdPackage.cmds.push(Wut.COPY_BUFFER_TO_TEXTURE))}}else it(16330)},i.execute=function(t,e){for(var i=0;i<e;++i){for(var n=t[i],r=0;r<n.cmdPackage.beginRenderPassCmds.length;++r){var s=n.cmdPackage.beginRenderPassCmds.array[r];++s.refCount,this.cmdPackage.beginRenderPassCmds.push(s)}for(var a=0;a<n.cmdPackage.bindStatesCmds.length;++a){var o=n.cmdPackage.bindStatesCmds.array[a];++o.refCount,this.cmdPackage.bindStatesCmds.push(o)}for(var h=0;h<n.cmdPackage.drawCmds.length;++h){var u=n.cmdPackage.drawCmds.array[h];++u.refCount,this.cmdPackage.drawCmds.push(u)}for(var l=0;l<n.cmdPackage.updateBufferCmds.length;++l){var c=n.cmdPackage.updateBufferCmds.array[l];++c.refCount,this.cmdPackage.updateBufferCmds.push(c)}for(var _=0;_<n.cmdPackage.copyBufferToTextureCmds.length;++_){var f=n.cmdPackage.copyBufferToTextureCmds.array[_];++f.refCount,this.cmdPackage.copyBufferToTextureCmds.push(f)}for(var d=0;d<n.cmdPackage.blitTextureCmds.length;++d){var p=n.cmdPackage.blitTextureCmds.array[d];++p.refCount,this.cmdPackage.blitTextureCmds.push(p)}this.cmdPackage.cmds.concat(n.cmdPackage.cmds.array),this._numDrawCalls+=n._numDrawCalls,this._numInstances+=n._numInstances,this._numTris+=n._numTris}},i.pipelineBarrier=function(){},i.bindStates=function(){var t=this._cmdAllocator.bindStatesCmdPool.alloc(Zut);t&&(t.gpuPipelineState=this._curGPUPipelineState,Array.prototype.push.apply(t.gpuDescriptorSets,this._curGPUDescriptorSets),Array.prototype.push.apply(t.dynamicOffsets,this._curDynamicOffsets),t.gpuInputAssembler=this._curGPUInputAssembler,t.dynamicStates.copy(this._curDynamicStates),this.cmdPackage.bindStatesCmds.push(t),this.cmdPackage.cmds.push(Wut.BIND_STATES),this._isStateInvalied=!1)},i.blitTexture=function(t,e,i,n){var r=this._cmdAllocator.blitTextureCmdPool.alloc(elt);r.srcTexture=t.gpuTexture,r.dstTexture=e.gpuTexture,r.regions=i,r.filter=n,++this._numDrawCalls,this.cmdPackage.blitTextureCmds.push(r),this.cmdPackage.cmds.push(Wut.BLIT_TEXTURE)},e}(of),wlt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuFramebuffer=null,e._gpuColorTextures=[],e._gpuDepthStencilTexture=void 0,e}s(e,t);var i=e.prototype;return i.initialize=function(t){var e,i=this;this._renderPass=t.renderPass,this._colorTextures=t.colorTextures||[];for(var n=this._depthStencilTexture=t.depthStencilTexture||null,r=0,s=[],a=0;a<t.colorTextures.length;++a){var o=t.colorTextures[a];o&&(s.push(o.gpuTexture),r=o.lodLevel)}var h=null;n&&(h=n.gpuTexture,r=n.lodLevel);var u=Number.MAX_SAFE_INTEGER,l=Number.MAX_SAFE_INTEGER;this._gpuFramebuffer={gpuRenderPass:t.renderPass.gpuRenderPass,gpuColorTextures:s,gpuDepthStencilTexture:h,glFramebuffer:null,isOffscreen:!0,get width(){return this.gpuColorTextures.length>0?this.gpuColorTextures[0].width:this.gpuDepthStencilTexture?this.gpuDepthStencilTexture.width:u},set width(t){u=t},get height(){return this.gpuColorTextures.length>0?this.gpuColorTextures[0].height:this.gpuDepthStencilTexture?this.gpuDepthStencilTexture.height:l},set height(t){l=t},lodLevel:r},function(t,e){for(var i=0;i<e.gpuColorTextures.length;++i)if(e.gpuColorTextures[i].isSwapchainTexture)return void(e.isOffscreen=!1);var n=t.gl,r=[],s=n.createFramebuffer();if(s){e.glFramebuffer=s,t.stateCache.glFramebuffer!==e.glFramebuffer&&n.bindFramebuffer(n.FRAMEBUFFER,e.glFramebuffer);for(var a=0;a<e.gpuColorTextures.length;++a){var o=e.gpuColorTextures[a];o&&(o.glTexture?n.framebufferTexture2D(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0+a,o.glTarget,o.glTexture,0):n.framebufferRenderbuffer(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0+a,n.RENDERBUFFER,o.glRenderbuffer),r.push(n.COLOR_ATTACHMENT0+a),e.width=Math.min(e.width,o.width),e.height=Math.min(e.height,o.height))}var h=e.gpuDepthStencilTexture;if(h){var u=j_[h.format].hasStencil?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT;h.glTexture?n.framebufferTexture2D(n.FRAMEBUFFER,u,h.glTarget,h.glTexture,0):n.framebufferRenderbuffer(n.FRAMEBUFFER,u,n.RENDERBUFFER,h.glRenderbuffer),e.width=Math.min(e.width,h.width),e.height=Math.min(e.height,h.height)}t.extensions.WEBGL_draw_buffers&&t.extensions.WEBGL_draw_buffers.drawBuffersWEBGL(r);var l=n.checkFramebufferStatus(n.FRAMEBUFFER);if(l!==n.FRAMEBUFFER_COMPLETE)switch(l){case n.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:it(16318);break;case n.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:it(16319);break;case n.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:it(16320);break;case n.FRAMEBUFFER_UNSUPPORTED:it(16321)}t.stateCache.glFramebuffer!==e.glFramebuffer&&n.bindFramebuffer(n.FRAMEBUFFER,t.stateCache.glFramebuffer)}}(Fut.instance,this._gpuFramebuffer),this.gpuFramebuffer.gpuColorTextures.forEach((function(t){return i._gpuColorTextures.push(t.glTexture)})),this._gpuDepthStencilTexture=null===(e=this.gpuFramebuffer.gpuDepthStencilTexture)||void 0===e?void 0:e.glTexture,this._width=this._gpuFramebuffer.width,this._height=this._gpuFramebuffer.height},i.destroy=function(){var t,e;this._gpuFramebuffer&&(t=Fut.instance,(e=this._gpuFramebuffer).glFramebuffer&&(t.gl.deleteFramebuffer(e.glFramebuffer),t.stateCache.glFramebuffer===e.glFramebuffer&&(t.gl.bindFramebuffer(t.gl.FRAMEBUFFER,null),t.stateCache.glFramebuffer=null),e.glFramebuffer=null),this._gpuFramebuffer=null,this._gpuColorTextures.length=0,this._gpuDepthStencilTexture=null)},n(e,[{key:"gpuFramebuffer",get:function(){return this._gpuFramebuffer}},{key:"needRebuild",get:function(){if(this.gpuFramebuffer){for(var t,e=0;e<this.gpuFramebuffer.gpuColorTextures.length;e++)if(this.gpuFramebuffer.gpuColorTextures[e].glTexture!==this._gpuColorTextures[e])return!0;if((null===(t=this.gpuFramebuffer.gpuDepthStencilTexture)||void 0===t?void 0:t.glTexture)!==this._gpuDepthStencilTexture)return!0}return!1}}]),e}(cf),Rlt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuInputAssembler=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){if(0!==t.vertexBuffers.length){if(this._attributes=t.attributes,this._attributesHash=this.computeAttributesHash(),this._vertexBuffers=t.vertexBuffers,t.indexBuffer)this._indexBuffer=t.indexBuffer,this._drawInfo.indexCount=this._indexBuffer.size/this._indexBuffer.stride,this._drawInfo.firstIndex=0;else{var e=this._vertexBuffers[0];this._drawInfo.vertexCount=e.size/e.stride,this._drawInfo.firstVertex=0,this._drawInfo.vertexOffset=0}this._drawInfo.instanceCount=0,this._drawInfo.firstInstance=0,this._indirectBuffer=t.indirectBuffer||null;for(var i=new Array(t.vertexBuffers.length),n=0;n<t.vertexBuffers.length;++n){var r=t.vertexBuffers[n];r.gpuBuffer&&(i[n]=r.gpuBuffer)}var s=null,a=0;if(t.indexBuffer&&(s=t.indexBuffer.gpuBuffer))switch(s.stride){case 1:a=5121;break;case 2:a=5123;break;case 4:a=5125;break;default:it(16332)}var o=null;t.indirectBuffer&&(o=t.indirectBuffer.gpuBuffer),this._gpuInputAssembler={attributes:t.attributes,gpuVertexBuffers:i,gpuIndexBuffer:s,gpuIndirectBuffer:o,glAttribs:[],glIndexType:a,glVAOs:new Map},hlt(Fut.instance,this._gpuInputAssembler)}else it(16331)},i.destroy=function(){var t=Fut.instance;this._gpuInputAssembler&&t.extensions.useVAO&&ult(t,this._gpuInputAssembler),this._gpuInputAssembler=null},n(e,[{key:"gpuInputAssembler",get:function(){return this._gpuInputAssembler}}]),e}(_f),Ilt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuDescriptorSetLayout=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){Array.prototype.push.apply(this._bindings,t.bindings);for(var e=0,i=-1,n=[],r=0;r<this._bindings.length;r++){var s=this._bindings[r];n.push(e),e+=s.count,s.binding>i&&(i=s.binding)}this._bindingIndices=Array(i+1).fill(-1);for(var a=this._descriptorIndices=Array(i+1).fill(-1),o=0;o<this._bindings.length;o++){var h=this._bindings[o];this._bindingIndices[h.binding]=o,a[h.binding]=n[o]}for(var u=[],l=0;l<this._bindings.length;l++){var c=this._bindings[l];if(c.descriptorType&K_)for(var _=0;_<c.count;_++)u.push(c.binding)}this._gpuDescriptorSetLayout={bindings:this._bindings,dynamicBindings:u,descriptorIndices:a,descriptorCount:e}},i.destroy=function(){this._bindings.length=0},n(e,[{key:"gpuDescriptorSetLayout",get:function(){return this._gpuDescriptorSetLayout}}]),e}(df),Dlt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuPipelineLayout=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){Array.prototype.push.apply(this._setLayouts,t.setLayouts);for(var e=[],i=[],n=0,r=[],s=0;s<this._setLayouts.length;s++){for(var a=this._setLayouts[s],o=a.gpuDescriptorSetLayout.dynamicBindings,h=Array(a.bindingIndices.length).fill(-1),u=0;u<o.length;u++){var l=o[u];h[l]<0&&(h[l]=n+u)}i.push(a.gpuDescriptorSetLayout),e.push(h),r.push(n),n+=o.length}this._gpuPipelineLayout={gpuSetLayouts:i,dynamicOffsetIndices:e,dynamicOffsetCount:n,dynamicOffsetOffsets:r}},i.destroy=function(){this._setLayouts.length=0},n(e,[{key:"gpuPipelineLayout",get:function(){return this._gpuPipelineLayout}}]),e}(pf),Blt=[0,1,3,2,0,0,0,4,5,6,0,0,0,0],Mlt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuPipelineState=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._primitive=t.primitive,this._shader=t.shader,this._pipelineLayout=t.pipelineLayout;var e=this._bs;if(t.blendState){var i=t.blendState,n=i.targets;n&&n.forEach((function(t,i){e.setTarget(i,t)})),void 0!==i.isA2C&&(e.isA2C=i.isA2C),void 0!==i.isIndepend&&(e.isIndepend=i.isIndepend),void 0!==i.blendColor&&(e.blendColor=i.blendColor)}Object.assign(this._rs,t.rasterizerState),Object.assign(this._dss,t.depthStencilState),this._is=t.inputState,this._renderPass=t.renderPass,this._dynamicStates=t.dynamicStates;for(var r=[],s=0;s<31;s++)this._dynamicStates&1<<s&&r.push(1<<s);this._gpuPipelineState={glPrimitive:Blt[t.primitive],gpuShader:t.shader.gpuShader,gpuPipelineLayout:t.pipelineLayout.gpuPipelineLayout,rs:t.rasterizerState,dss:t.depthStencilState,bs:t.blendState,gpuRenderPass:t.renderPass.gpuRenderPass,dynamicStates:r}},i.destroy=function(){this._gpuPipelineState=null},n(e,[{key:"gpuPipelineState",get:function(){return this._gpuPipelineState}}]),e}(Tf),Plt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.beginRenderPass=function(t,e,i,n,r,s){_lt(Fut.instance,t.gpuRenderPass,e.gpuFramebuffer,i,n,r,s),this._isInRenderPass=!0},i.draw=function(t){if(this._isInRenderPass){this._isStateInvalied&&this.bindStates();var e="drawInfo"in t?t.drawInfo:t;dlt(Fut.instance,e),++this._numDrawCalls,this._numInstances+=e.instanceCount;var i=e.indexCount||e.vertexCount;if(this._curGPUPipelineState)switch(this._curGPUPipelineState.glPrimitive){case 4:this._numTris+=i/3*Math.max(e.instanceCount,1);break;case 5:case 6:this._numTris+=(i-2)*Math.max(e.instanceCount,1)}}else it(16328)},i.setViewport=function(t){var e=Fut.instance,i=e.stateCache,n=e.gl;i.viewport.left===t.left&&i.viewport.top===t.top&&i.viewport.width===t.width&&i.viewport.height===t.height||(n.viewport(t.left,t.top,t.width,t.height),i.viewport.left=t.left,i.viewport.top=t.top,i.viewport.width=t.width,i.viewport.height=t.height)},i.setScissor=function(t){var e=Fut.instance,i=e.stateCache,n=e.gl;i.scissorRect.x===t.x&&i.scissorRect.y===t.y&&i.scissorRect.width===t.width&&i.scissorRect.height===t.height||(n.scissor(t.x,t.y,t.width,t.height),i.scissorRect.x=t.x,i.scissorRect.y=t.y,i.scissorRect.width=t.width,i.scissorRect.height=t.height)},i.updateBuffer=function(t,e,i){if(this._isInRenderPass)it(16329);else{var n,r=t.gpuBuffer;r&&(n=void 0!==i?i:t.usage&rc.INDIRECT?0:e.byteLength,slt(Fut.instance,r,e,0,n))}},i.copyBuffersToTexture=function(t,e,i){if(this._isInRenderPass)it(16330);else{var n=e.gpuTexture;n&&ylt(Fut.instance,t,n,i)}},i.execute=function(t,e){for(var i=0;i<e;++i){var n=t[i];mlt(Fut.instance,n.cmdPackage),this._numDrawCalls+=n._numDrawCalls,this._numInstances+=n._numInstances,this._numTris+=n._numTris}},i.bindStates=function(){flt(Fut.instance,this._curGPUPipelineState,this._curGPUInputAssembler,this._curGPUDescriptorSets,this._curDynamicOffsets,this._curDynamicStates),this._isStateInvalied=!1},i.blitTexture=function(t,e,i,n){var r=t.gpuTexture,s=e.gpuTexture;Slt(Fut.instance,r,s,i,n)},e}(xlt),Olt=function(t){function e(){var e;return(e=t.call(this)||this).numDrawCalls=0,e.numInstances=0,e.numTris=0,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._type=t.type},i.destroy=function(){},i.submit=function(t){for(var e=t.length,i=0;i<e;i++){var n=t[i];this.numDrawCalls+=n.numDrawCalls,this.numInstances+=n.numInstances,this.numTris+=n.numTris}},i.clear=function(){this.numDrawCalls=0,this.numInstances=0,this.numTris=0},e}(Af),Llt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuRenderPass=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._colorInfos=t.colorAttachments,this._depthStencilInfo=t.depthStencilAttachment,this._subpasses=t.subpasses,this._gpuRenderPass={colorAttachments:this._colorInfos,depthStencilAttachment:this._depthStencilInfo},this._hash=this.computeHash()},i.destroy=function(){this._gpuRenderPass=null},n(e,[{key:"gpuRenderPass",get:function(){return this._gpuRenderPass}}]),e}(bf),Nlt=[10497,33648,33071,33071],Flt=function(t){function e(e,i){var n;(n=t.call(this,e,i)||this)._gpuSampler=null;var r,s,a=n._info.minFilter,o=n._info.magFilter,h=n._info.mipFilter;r=a===dc.LINEAR||a===dc.ANISOTROPIC?h===dc.LINEAR||h===dc.ANISOTROPIC?9987:h===dc.POINT?9985:9729:h===dc.LINEAR||h===dc.ANISOTROPIC?9986:h===dc.POINT?9984:9728,s=o===dc.LINEAR||o===dc.ANISOTROPIC?9729:9728;var u=Nlt[n._info.addressU],l=Nlt[n._info.addressV],c=Nlt[n._info.addressW];return n._gpuSampler={glMinFilter:r,glMagFilter:s,glWrapS:u,glWrapT:l,glWrapR:c},n}return s(e,t),n(e,[{key:"gpuSampler",get:function(){return this._gpuSampler}}]),e}(Ef),klt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuShader=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._name=t.name,this._stages=t.stages,this._attributes=t.attributes,this._blocks=t.blocks,this._samplers=t.samplers,this._gpuShader={name:t.name,blocks:t.blocks.slice(),samplerTextures:t.samplerTextures.slice(),subpassInputs:t.subpassInputs.slice(),gpuStages:new Array(t.stages.length),glProgram:null,glInputs:[],glUniforms:[],glBlocks:[],glSamplerTextures:[]};for(var e=0;e<t.stages.length;++e){var i=t.stages[e];this._gpuShader.gpuStages[e]={type:i.stage,source:i.source,glShader:null}}},i.destroy=function(){this._gpuShader&&(olt(Fut.instance,this._gpuShader),this._gpuShader=null)},n(e,[{key:"gpuShader",get:function(){return null===this._gpuShader.glProgram&&alt(Fut.instance,this._gpuShader),this._gpuShader}}]),e}(Cf),Glt=function(){function t(){this.glArrayBuffer=null,this.glElementArrayBuffer=null,this.glVAO=null,this.texUnit=0,this.glTexUnits=[],this.glRenderbuffer=null,this.glFramebuffer=null,this.viewport=new $c,this.scissorRect=new jc(0,0,0,0),this.rs=new mf,this.dss=new gf,this.bs=new yf,this.glProgram=null,this.glEnabledAttribLocs=[],this.glCurrentAttribLocs=[],this.texUnitCacheMap={}}return t.prototype.initialize=function(t,e){for(var i=0;i<t;++i)this.glTexUnits.push({glTexture:null});this.glEnabledAttribLocs.length=e,this.glEnabledAttribLocs.fill(!1),this.glCurrentAttribLocs.length=e,this.glCurrentAttribLocs.fill(!1)},t}(),Vlt=function(t){function e(){var e;return(e=t.call(this)||this)._gpuTexture=null,e._lodLevel=0,e}s(e,t);var i=e.prototype;return i.initialize=function(t,e){var i=t,n=t;"texture"in t&&(i=n.texture.info,this._isTextureView=!0),this._info.copy(i),this._isPowerOf2=Q_(this._info.width)&&Q_(this._info.height),this._size=J_(this._info.format,this.width,this.height,this.depth,this._info.levelCount)*this._info.layerCount,this._isTextureView?(this._viewInfo.copy(n),this._lodLevel=n.baseLevel,this._gpuTexture=n.texture._gpuTexture):(this._gpuTexture={type:i.type,format:i.format,usage:i.usage,width:i.width,height:i.height,depth:i.depth,size:this._size,arrayLayer:i.layerCount,mipLevel:i.levelCount,samples:i.samples,flags:i.flags,isPowerOf2:this._isPowerOf2,glTarget:0,glInternalFmt:0,glFormat:0,glType:0,glUsage:0,glTexture:null,glRenderbuffer:null,glWrapS:0,glWrapT:0,glMinFilter:0,glMagFilter:0,isSwapchainTexture:e||!1},this._gpuTexture.isSwapchainTexture||(function(t,e){var i=t.gl;e.glFormat=e.glInternalFmt=function(t,e){switch(t){case ec.A8:return e.ALPHA;case ec.L8:return e.LUMINANCE;case ec.LA8:return e.LUMINANCE_ALPHA;case ec.RGB8:case ec.RGB16F:case ec.RGB32F:return e.RGB;case ec.BGRA8:case ec.RGBA8:case ec.SRGB8_A8:case ec.RGBA16F:case ec.RGBA32F:return e.RGBA;case ec.R5G6B5:return e.RGB;case ec.RGB5A1:case ec.RGBA4:return e.RGBA;case ec.DEPTH:return e.DEPTH_COMPONENT;case ec.DEPTH_STENCIL:return e.DEPTH_STENCIL;case ec.BC1:return Lut.COMPRESSED_RGB_S3TC_DXT1_EXT;case ec.BC1_ALPHA:return Lut.COMPRESSED_RGBA_S3TC_DXT1_EXT;case ec.BC1_SRGB:return Lut.COMPRESSED_SRGB_S3TC_DXT1_EXT;case ec.BC1_SRGB_ALPHA:return Lut.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;case ec.BC2:return Lut.COMPRESSED_RGBA_S3TC_DXT3_EXT;case ec.BC2_SRGB:return Lut.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;case ec.BC3:return Lut.COMPRESSED_RGBA_S3TC_DXT5_EXT;case ec.BC3_SRGB:return Lut.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT;case ec.ETC_RGB8:return Lut.COMPRESSED_RGB_ETC1_WEBGL;case ec.ETC2_RGB8:return Lut.COMPRESSED_RGB8_ETC2;case ec.ETC2_SRGB8:return Lut.COMPRESSED_SRGB8_ETC2;case ec.ETC2_RGB8_A1:return Lut.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2;case ec.ETC2_SRGB8_A1:return Lut.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2;case ec.ETC2_RGBA8:return Lut.COMPRESSED_RGBA8_ETC2_EAC;case ec.ETC2_SRGB8_A8:return Lut.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC;case ec.EAC_R11:return Lut.COMPRESSED_R11_EAC;case ec.EAC_R11SN:return Lut.COMPRESSED_SIGNED_R11_EAC;case ec.EAC_RG11:return Lut.COMPRESSED_RG11_EAC;case ec.EAC_RG11SN:return Lut.COMPRESSED_SIGNED_RG11_EAC;case ec.PVRTC_RGB2:return Lut.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;case ec.PVRTC_RGBA2:return Lut.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG;case ec.PVRTC_RGB4:return Lut.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;case ec.PVRTC_RGBA4:return Lut.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;case ec.ASTC_RGBA_4X4:return Lut.COMPRESSED_RGBA_ASTC_4x4_KHR;case ec.ASTC_RGBA_5X4:return Lut.COMPRESSED_RGBA_ASTC_5x4_KHR;case ec.ASTC_RGBA_5X5:return Lut.COMPRESSED_RGBA_ASTC_5x5_KHR;case ec.ASTC_RGBA_6X5:return Lut.COMPRESSED_RGBA_ASTC_6x5_KHR;case ec.ASTC_RGBA_6X6:return Lut.COMPRESSED_RGBA_ASTC_6x6_KHR;case ec.ASTC_RGBA_8X5:return Lut.COMPRESSED_RGBA_ASTC_8x5_KHR;case ec.ASTC_RGBA_8X6:return Lut.COMPRESSED_RGBA_ASTC_8x6_KHR;case ec.ASTC_RGBA_8X8:return Lut.COMPRESSED_RGBA_ASTC_8x8_KHR;case ec.ASTC_RGBA_10X5:return Lut.COMPRESSED_RGBA_ASTC_10x5_KHR;case ec.ASTC_RGBA_10X6:return Lut.COMPRESSED_RGBA_ASTC_10x6_KHR;case ec.ASTC_RGBA_10X8:return Lut.COMPRESSED_RGBA_ASTC_10x8_KHR;case ec.ASTC_RGBA_10X10:return Lut.COMPRESSED_RGBA_ASTC_10x10_KHR;case ec.ASTC_RGBA_12X10:return Lut.COMPRESSED_RGBA_ASTC_12x10_KHR;case ec.ASTC_RGBA_12X12:return Lut.COMPRESSED_RGBA_ASTC_12x12_KHR;case ec.ASTC_SRGBA_4X4:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR;case ec.ASTC_SRGBA_5X4:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR;case ec.ASTC_SRGBA_5X5:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR;case ec.ASTC_SRGBA_6X5:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR;case ec.ASTC_SRGBA_6X6:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR;case ec.ASTC_SRGBA_8X5:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR;case ec.ASTC_SRGBA_8X6:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR;case ec.ASTC_SRGBA_8X8:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR;case ec.ASTC_SRGBA_10X5:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR;case ec.ASTC_SRGBA_10X6:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR;case ec.ASTC_SRGBA_10X8:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR;case ec.ASTC_SRGBA_10X10:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR;case ec.ASTC_SRGBA_12X10:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR;case ec.ASTC_SRGBA_12X12:return Lut.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR;default:return it(16310),e.RGBA}}(e.format,i),e.glType=kut(e.format,i);var n=e.width,r=e.height;switch(e.type){case hc.TEX2D:e.glTarget=i.TEXTURE_2D;var s=Math.max(n,r);if(s>t.capabilities.maxTextureSize&&it(9100,s,t.capabilities.maxTextureSize),t.textureExclusive[e.format]||t.extensions.WEBGL_depth_texture||!j_[e.format].hasDepth){if(e.glTexture=i.createTexture(),e.size>0){var a=t.stateCache.glTexUnits[t.stateCache.texUnit];if(a.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_2D,e.glTexture),a.glTexture=e.glTexture),j_[e.format].isCompressed)for(var o=0;o<e.mipLevel;++o){var h=Z_(e.format,n,r,1),u=new Uint8Array(h);i.compressedTexImage2D(i.TEXTURE_2D,o,e.glInternalFmt,n,r,0,u),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else for(var l=0;l<e.mipLevel;++l)i.texImage2D(i.TEXTURE_2D,l,e.glInternalFmt,n,r,0,e.glFormat,e.glType,null),n=Math.max(1,n>>1),r=Math.max(1,r>>1);e.isPowerOf2?(e.glWrapS=i.REPEAT,e.glWrapT=i.REPEAT):(e.glWrapS=i.CLAMP_TO_EDGE,e.glWrapT=i.CLAMP_TO_EDGE),e.glMinFilter=i.LINEAR,e.glMagFilter=i.LINEAR,i.texParameteri(e.glTarget,i.TEXTURE_WRAP_S,e.glWrapS),i.texParameteri(e.glTarget,i.TEXTURE_WRAP_T,e.glWrapT),i.texParameteri(e.glTarget,i.TEXTURE_MIN_FILTER,e.glMinFilter),i.texParameteri(e.glTarget,i.TEXTURE_MAG_FILTER,e.glMagFilter)}}else e.glInternalFmt=function(t,e){switch(t){case ec.R5G6B5:return e.RGB565;case ec.RGB5A1:return e.RGB5_A1;case ec.RGBA4:return e.RGBA4;case ec.RGBA16F:return Lut.RGBA16F_EXT;case ec.RGBA32F:return Lut.RGBA32F_EXT;case ec.SRGB8_A8:return Lut.SRGB8_ALPHA8_EXT;case ec.DEPTH:return e.DEPTH_COMPONENT16;case ec.DEPTH_STENCIL:return e.DEPTH_STENCIL;default:return it(16309),e.RGBA}}(e.format,i),e.glRenderbuffer=i.createRenderbuffer(),e.size>0&&(t.stateCache.glRenderbuffer!==e.glRenderbuffer&&(i.bindRenderbuffer(i.RENDERBUFFER,e.glRenderbuffer),t.stateCache.glRenderbuffer=e.glRenderbuffer),i.renderbufferStorage(i.RENDERBUFFER,e.glInternalFmt,n,r));break;case hc.CUBE:e.glTarget=i.TEXTURE_CUBE_MAP;var c=Math.max(n,r);if(c>t.capabilities.maxCubeMapTextureSize&&it(9100,c,t.capabilities.maxTextureSize),e.glTexture=i.createTexture(),e.size>0){var _=t.stateCache.glTexUnits[t.stateCache.texUnit];if(_.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_CUBE_MAP,e.glTexture),_.glTexture=e.glTexture),j_[e.format].isCompressed)for(var f=0;f<6;++f){n=e.width,r=e.height;for(var d=0;d<e.mipLevel;++d){var p=Z_(e.format,n,r,1),m=new Uint8Array(p);i.compressedTexImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+f,d,e.glInternalFmt,n,r,0,m),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}}else for(var g=0;g<6;++g){n=e.width,r=e.height;for(var v=0;v<e.mipLevel;++v)i.texImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+g,v,e.glInternalFmt,n,r,0,e.glFormat,e.glType,null),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}e.isPowerOf2?(e.glWrapS=i.REPEAT,e.glWrapT=i.REPEAT):(e.glWrapS=i.CLAMP_TO_EDGE,e.glWrapT=i.CLAMP_TO_EDGE),e.glMinFilter=i.LINEAR,e.glMagFilter=i.LINEAR,i.texParameteri(e.glTarget,i.TEXTURE_WRAP_S,e.glWrapS),i.texParameteri(e.glTarget,i.TEXTURE_WRAP_T,e.glWrapT),i.texParameteri(e.glTarget,i.TEXTURE_MIN_FILTER,e.glMinFilter),i.texParameteri(e.glTarget,i.TEXTURE_MAG_FILTER,e.glMagFilter)}break;default:it(16317),e.type=hc.TEX2D,e.glTarget=i.TEXTURE_2D}}(Fut.instance,this._gpuTexture),Fut.instance.memoryStatus.textureSize+=this._size),this._viewInfo.texture=this,this._viewInfo.type=t.type,this._viewInfo.format=t.format,this._viewInfo.baseLevel=0,this._viewInfo.levelCount=t.levelCount,this._viewInfo.baseLayer=0,this._viewInfo.layerCount=t.layerCount)},i.destroy=function(){!this._isTextureView&&this._gpuTexture&&(function(t,e){var i=t.gl;if(e.glTexture){var n=t.stateCache.glTexUnits,r=t.stateCache.texUnit;i.deleteTexture(e.glTexture);for(var s=0;s<n.length;s++)n[s].glTexture===e.glTexture&&(i.activeTexture(i.TEXTURE0+s),r=s,i.bindTexture(e.glTarget,null),n[s].glTexture=null);t.stateCache.texUnit=r,e.glTexture=null}if(e.glRenderbuffer){var a=t.stateCache.glRenderbuffer;i.deleteRenderbuffer(e.glRenderbuffer),a===e.glRenderbuffer&&(i.bindRenderbuffer(i.RENDERBUFFER,null),a=null),e.glRenderbuffer=null}}(Fut.instance,this._gpuTexture),Fut.instance.memoryStatus.textureSize-=this._size,this._gpuTexture=null)},i.getTextureHandle=function(){var t=this._gpuTexture;return t?t.glTexture?t.glTexture:t.glRenderbuffer?t.glRenderbuffer:0:0},i.resize=function(t,i){if(this._info.width!==t||this._info.height!==i){this._info.levelCount===e.getLevelCount(this._info.width,this._info.height)?this._info.levelCount=e.getLevelCount(t,i):this._info.levelCount>1&&(this._info.levelCount=Math.min(this._info.levelCount,e.getLevelCount(t,i)));var n=this._size;this._info.width=t,this._info.height=i,this._size=J_(this._info.format,this.width,this.height,this.depth,this._info.levelCount)*this._info.layerCount,!this._isTextureView&&this._gpuTexture&&(this._gpuTexture.width=t,this._gpuTexture.height=i,this._gpuTexture.size=this._size,this._gpuTexture.isSwapchainTexture||(function(t,e){if(e.size){var i=t.gl,n=e.width,r=e.height;switch(e.type){case hc.TEX2D:e.glTarget=i.TEXTURE_2D;var s=Math.max(n,r);if(s>t.capabilities.maxTextureSize&&it(9100,s,t.capabilities.maxTextureSize),e.glRenderbuffer)t.stateCache.glRenderbuffer!==e.glRenderbuffer&&(i.bindRenderbuffer(i.RENDERBUFFER,e.glRenderbuffer),t.stateCache.glRenderbuffer=e.glRenderbuffer),i.renderbufferStorage(i.RENDERBUFFER,e.glInternalFmt,n,r);else if(e.glTexture){var a=t.stateCache.glTexUnits[t.stateCache.texUnit];if(a.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_2D,e.glTexture),a.glTexture=e.glTexture),j_[e.format].isCompressed)for(var o=0;o<e.mipLevel;++o){var h=Z_(e.format,n,r,1),u=new Uint8Array(h);i.compressedTexImage2D(i.TEXTURE_2D,o,e.glInternalFmt,n,r,0,u),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else for(var l=0;l<e.mipLevel;++l)i.texImage2D(i.TEXTURE_2D,l,e.glInternalFmt,n,r,0,e.glFormat,e.glType,null),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}break;case hc.CUBE:e.glTarget=i.TEXTURE_CUBE_MAP;var c=Math.max(n,r);c>t.capabilities.maxCubeMapTextureSize&&it(9100,c,t.capabilities.maxTextureSize);var _=t.stateCache.glTexUnits[t.stateCache.texUnit];if(_.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_CUBE_MAP,e.glTexture),_.glTexture=e.glTexture),j_[e.format].isCompressed)for(var f=0;f<6;++f){n=e.width,r=e.height;for(var d=0;d<e.mipLevel;++d){var p=Z_(e.format,n,r,1),m=new Uint8Array(p);i.compressedTexImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+f,d,e.glInternalFmt,n,r,0,m),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}}else for(var g=0;g<6;++g){n=e.width,r=e.height;for(var v=0;v<e.mipLevel;++v)i.texImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+g,v,e.glInternalFmt,n,r,0,e.glFormat,e.glType,null),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}break;default:it(16317),e.type=hc.TEX2D,e.glTarget=i.TEXTURE_2D}}}(Fut.instance,this._gpuTexture),Fut.instance.memoryStatus.textureSize-=n,Fut.instance.memoryStatus.textureSize+=this._size))}},i.initAsSwapchainTexture=function(t){var e=new u_;e.format=t.format,e.usage=j_[t.format].hasDepth?uc.DEPTH_STENCIL_ATTACHMENT:uc.COLOR_ATTACHMENT,e.width=t.width,e.height=t.height,this.initialize(e,!0)},n(e,[{key:"gpuTexture",get:function(){return this._gpuTexture}},{key:"lodLevel",get:function(){return this._lodLevel}}]),e}(xf),Ult="webglcontextlost";function zlt(t,e){for(var i=["","WEBKIT_","MOZ_"],n=0;n<i.length;++n){var r=t.getExtension(i[n]+e);if(r)return r}return null}function Hlt(t){var e={EXT_texture_filter_anisotropic:zlt(t,"EXT_texture_filter_anisotropic"),EXT_blend_minmax:zlt(t,"EXT_blend_minmax"),EXT_frag_depth:zlt(t,"EXT_frag_depth"),EXT_shader_texture_lod:zlt(t,"EXT_shader_texture_lod"),EXT_sRGB:zlt(t,"EXT_sRGB"),OES_vertex_array_object:zlt(t,"OES_vertex_array_object"),EXT_color_buffer_half_float:zlt(t,"EXT_color_buffer_half_float"),WEBGL_color_buffer_float:zlt(t,"WEBGL_color_buffer_float"),WEBGL_compressed_texture_etc1:zlt(t,"WEBGL_compressed_texture_etc1"),WEBGL_compressed_texture_etc:zlt(t,"WEBGL_compressed_texture_etc"),WEBGL_compressed_texture_pvrtc:zlt(t,"WEBGL_compressed_texture_pvrtc"),WEBGL_compressed_texture_s3tc:zlt(t,"WEBGL_compressed_texture_s3tc"),WEBGL_compressed_texture_s3tc_srgb:zlt(t,"WEBGL_compressed_texture_s3tc_srgb"),WEBGL_debug_shaders:zlt(t,"WEBGL_debug_shaders"),WEBGL_draw_buffers:zlt(t,"WEBGL_draw_buffers"),WEBGL_lose_context:zlt(t,"WEBGL_lose_context"),WEBGL_depth_texture:zlt(t,"WEBGL_depth_texture"),OES_texture_half_float:zlt(t,"OES_texture_half_float"),OES_texture_half_float_linear:zlt(t,"OES_texture_half_float_linear"),OES_texture_float:zlt(t,"OES_texture_float"),OES_texture_float_linear:zlt(t,"OES_texture_float_linear"),OES_standard_derivatives:zlt(t,"OES_standard_derivatives"),OES_element_index_uint:zlt(t,"OES_element_index_uint"),ANGLE_instanced_arrays:zlt(t,"ANGLE_instanced_arrays"),WEBGL_debug_renderer_info:zlt(t,"WEBGL_debug_renderer_info"),WEBGL_multi_draw:null,WEBGL_compressed_texture_astc:null,destroyShadersImmediately:!0,noCompressedTexSubImage2D:!1,isLocationActive:function(t){return!!t},useVAO:!1};return Zs.os===Ys.IOS&&14===Zs.osMainVersion&&Zs.isBrowser||(e.WEBGL_compressed_texture_astc=zlt(t,"WEBGL_compressed_texture_astc")),Zs.os!==Ys.ANDROID&&Zs.os!==Ys.IOS&&(e.WEBGL_multi_draw=zlt(t,"WEBGL_multi_draw")),Zs.browserType===Ws.UC&&(e.ANGLE_instanced_arrays=null),Zs.os===Ys.IOS&&Zs.osMainVersion<=10&&(e.destroyShadersImmediately=!1),e.OES_vertex_array_object&&(e.useVAO=!0),e}var Wlt=function(t){function e(){var e;return(e=t.call(this)||this).stateCache=new Glt,e.cmdAllocator=new Clt,e.nullTex2D=null,e.nullTexCube=null,e._canvas=null,e._webGLContextLostHandler=null,e._extensions=null,e._blitManager=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._canvas=t.windowHandle,this._webGLContextLostHandler=this._onWebGLContextLost.bind(this),this._canvas.addEventListener(Ult,this._onWebGLContextLost);var e=Fut.instance.gl;this.stateCache.initialize(Fut.instance.capabilities.maxTextureUnits,Fut.instance.capabilities.maxVertexAttributes),this._extensions=Hlt(e),function(t){t.activeTexture(t.TEXTURE0),t.pixelStorei(t.PACK_ALIGNMENT,1),t.pixelStorei(t.UNPACK_ALIGNMENT,1),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,!1),t.bindFramebuffer(t.FRAMEBUFFER,null),t.enable(t.SCISSOR_TEST),t.enable(t.CULL_FACE),t.cullFace(t.BACK),t.frontFace(t.CCW),t.disable(t.POLYGON_OFFSET_FILL),t.polygonOffset(0,0),t.enable(t.DEPTH_TEST),t.depthMask(!0),t.depthFunc(t.LESS),t.depthRange(0,1),t.stencilFuncSeparate(t.FRONT,t.ALWAYS,1,65535),t.stencilOpSeparate(t.FRONT,t.KEEP,t.KEEP,t.KEEP),t.stencilMaskSeparate(t.FRONT,65535),t.stencilFuncSeparate(t.BACK,t.ALWAYS,1,65535),t.stencilOpSeparate(t.BACK,t.KEEP,t.KEEP,t.KEEP),t.stencilMaskSeparate(t.BACK,65535),t.disable(t.STENCIL_TEST),t.disable(t.SAMPLE_ALPHA_TO_COVERAGE),t.disable(t.BLEND),t.blendEquationSeparate(t.FUNC_ADD,t.FUNC_ADD),t.blendFuncSeparate(t.ONE,t.ZERO,t.ONE,t.ZERO),t.colorMask(!0,!0,!0,!0),t.blendColor(0,0,0,0)}(e);var i=ec.RGBA8,n=ec.DEPTH_STENCIL,r=e.getParameter(e.DEPTH_BITS),s=e.getParameter(e.STENCIL_BITS);r&&s?n=ec.DEPTH_STENCIL:r&&(n=ec.DEPTH),this._colorTexture=new Vlt,this._colorTexture.initAsSwapchainTexture({swapchain:this,format:i,width:t.width,height:t.height}),this._depthStencilTexture=new Vlt,this._depthStencilTexture.initAsSwapchainTexture({swapchain:this,format:n,width:t.width,height:t.height}),this.nullTex2D=Fut.instance.createTexture(new u_(hc.TEX2D,uc.SAMPLED,ec.RGBA8,2,2,lc.GEN_MIPMAP)),this.nullTexCube=Fut.instance.createTexture(new u_(hc.CUBE,uc.SAMPLED,ec.RGBA8,2,2,lc.GEN_MIPMAP,6));var a=new Jc;a.texExtent.width=2,a.texExtent.height=2;var o=new Uint8Array(this.nullTex2D.size);o.fill(0),Fut.instance.copyBuffersToTexture([o],this.nullTex2D,[a]),a.texSubres.layerCount=6,Fut.instance.copyBuffersToTexture([o,o,o,o,o,o],this.nullTexCube,[a]),this._blitManager=new Alt},i.destroy=function(){this._canvas&&this._webGLContextLostHandler&&(this._canvas.removeEventListener(Ult,this._webGLContextLostHandler),this._webGLContextLostHandler=null),this.nullTex2D&&(this.nullTex2D.destroy(),this.nullTex2D=null),this.nullTexCube&&(this.nullTexCube.destroy(),this.nullTexCube=null),this._blitManager&&(this._blitManager.destroy(),this._blitManager=null),this._extensions=null,this._canvas=null},i.resize=function(t,e){this._colorTexture.width===t&&this._colorTexture.height===e||(X("Resizing swapchain: "+t+"x"+e),this._canvas.width=t,this._canvas.height=e,this._colorTexture.resize(t,e),this._depthStencilTexture.resize(t,e))},i._onWebGLContextLost=function(t){tt(11e3),z(t)},n(e,[{key:"extensions",get:function(){return this._extensions}},{key:"blitManager",get:function(){return this._blitManager}}]),e}(lf),Xlt=t("eF",function(t){function e(){var e;return(e=t.call(this)||this)._swapchain=null,e._context=null,e._bindingMappings=null,e._textureExclusive=new Array(ec.COUNT),e}s(e,t);var i=e.prototype;return i.initialize=function(t){Fut.setInstance(this),this._gfxAPI=Jl.WEBGL;var e=this._bindingMappingInfo=t.bindingMappingInfo,i=[],n=[],r=e.setIndices[0];i[r]=0,n[r]=0;for(var s=1;s<e.setIndices.length;++s){var a=e.setIndices[s],o=e.setIndices[s-1];i[a]=e.maxBlockCounts[o]+i[o],n[a]=e.maxSamplerTextureCounts[o]+n[o]}for(var h=0;h<e.setIndices.length;++h){var u=e.setIndices[h];n[u]-=e.maxBlockCounts[u]}this._bindingMappings={blockOffsets:i,samplerTextureOffsets:n,flexibleSet:e.setIndices[e.setIndices.length-1]};var l=this._context=function(t){var e=null;try{var i={alpha:Pe.ENABLE_TRANSPARENT_CANVAS,antialias:Pe.ENABLE_WEBGL_ANTIALIAS,depth:!0,stencil:!0,premultipliedAlpha:!1,preserveDrawingBuffer:!1,powerPreference:"default",failIfMajorPerformanceCaveat:!1};e=t.getContext("webgl",i)}catch(t){return null}return e}(hf.canvas);if(!l)return it(16333),!1;this._queue=this.createQueue(new G_(Oc.GRAPHICS)),this._cmdBuff=this.createCommandBuffer(new k_(this._queue)),this._caps.maxVertexAttributes=l.getParameter(l.MAX_VERTEX_ATTRIBS),this._caps.maxVertexUniformVectors=l.getParameter(l.MAX_VERTEX_UNIFORM_VECTORS),this._caps.maxFragmentUniformVectors=l.getParameter(l.MAX_FRAGMENT_UNIFORM_VECTORS),this._caps.maxTextureUnits=l.getParameter(l.MAX_TEXTURE_IMAGE_UNITS),this._caps.maxVertexTextureUnits=l.getParameter(l.MAX_VERTEX_TEXTURE_IMAGE_UNITS),this._caps.maxTextureSize=l.getParameter(l.MAX_TEXTURE_SIZE),this._caps.maxCubeMapTextureSize=l.getParameter(l.MAX_CUBE_MAP_TEXTURE_SIZE),this._caps.maxArrayTextureLayers=0,this._caps.max3DTextureSize=0,this._caps.maxUniformBufferBindings=16;var c=l.getSupportedExtensions(),_="";if(c)for(var d,p=f(c);!(d=p()).done;)_+=d.value+" ";var m=Hlt(l);m.WEBGL_debug_renderer_info?(this._renderer=l.getParameter(m.WEBGL_debug_renderer_info.UNMASKED_RENDERER_WEBGL),this._vendor=l.getParameter(m.WEBGL_debug_renderer_info.UNMASKED_VENDOR_WEBGL)):(this._renderer=l.getParameter(l.RENDERER),this._vendor=l.getParameter(l.VENDOR));var g=l.getParameter(l.VERSION);this._features.fill(!1),this.initFormatFeatures(m),m.EXT_blend_minmax&&(this._features[tc.BLEND_MINMAX]=!0),m.OES_element_index_uint&&(this._features[tc.ELEMENT_INDEX_UINT]=!0),m.ANGLE_instanced_arrays&&(this._features[tc.INSTANCED_ARRAYS]=!0),m.WEBGL_draw_buffers&&(this._features[tc.MULTIPLE_RENDER_TARGETS]=!0);var v="";return this.getFormatFeatures(ec.ETC_RGB8)&&(v+="etc1 "),this.getFormatFeatures(ec.ETC2_RGB8)&&(v+="etc2 "),this.getFormatFeatures(ec.BC1)&&(v+="dxt "),this.getFormatFeatures(ec.PVRTC_RGB2)&&(v+="pvrtc "),this.getFormatFeatures(ec.ASTC_RGBA_4X4)&&(v+="astc "),X("WebGL device initialized."),X("RENDERER: "+this._renderer),X("VENDOR: "+this._vendor),X("VERSION: "+g),X("COMPRESSED_FORMAT: "+v),X("EXTENSIONS: "+_),!0},i.destroy=function(){this._queue&&(this._queue.destroy(),this._queue=null),this._cmdBuff&&(this._cmdBuff.destroy(),this._cmdBuff=null),this._swapchain=null},i.flushCommands=function(){},i.acquire=function(){},i.present=function(){var t=this._queue;this._numDrawCalls=t.numDrawCalls,this._numInstances=t.numInstances,this._numTris=t.numTris,t.clear()},i.initFormatFeatures=function(t){this._formatFeatures.fill(cc.NONE),this._textureExclusive.fill(!0);var e=cc.RENDER_TARGET|cc.SAMPLED_TEXTURE|cc.LINEAR_FILTER;this._formatFeatures[ec.RGB8]=e,this._formatFeatures[ec.R5G6B5]=e,this._textureExclusive[ec.R5G6B5]=!1,this._formatFeatures[ec.RGBA8]=e,this._formatFeatures[ec.RGBA4]=e,this._textureExclusive[ec.RGBA4]=!1,this._formatFeatures[ec.RGB5A1]=e,this._textureExclusive[ec.RGB5A1]=!1,this._formatFeatures[ec.DEPTH]=cc.RENDER_TARGET,this._textureExclusive[ec.DEPTH]=!1,this._formatFeatures[ec.DEPTH_STENCIL]=cc.RENDER_TARGET,this._textureExclusive[ec.DEPTH_STENCIL]=!1,this._formatFeatures[ec.R8I]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RG8I]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGB8I]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGBA8I]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.R8UI]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RG8UI]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGB8UI]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGBA8UI]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.R8I]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RG8I]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGB8I]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGBA8I]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.R8UI]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RG8UI]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGB8UI]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGBA8UI]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.R32F]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RG32F]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGB32F]|=cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.RGBA32F]|=cc.VERTEX_ATTRIBUTE,t.EXT_sRGB&&(this._formatFeatures[ec.SRGB8]=e,this._formatFeatures[ec.SRGB8_A8]=e,this._textureExclusive[ec.SRGB8_A8]=!1),t.WEBGL_depth_texture&&(this._formatFeatures[ec.DEPTH]|=e,this._formatFeatures[ec.DEPTH_STENCIL]|=e),t.WEBGL_color_buffer_float&&(this._formatFeatures[ec.RGB32F]|=cc.RENDER_TARGET,this._formatFeatures[ec.RGBA32F]|=cc.RENDER_TARGET,this._textureExclusive[ec.RGB32F]=!1,this._textureExclusive[ec.RGBA32F]=!1),t.EXT_color_buffer_half_float&&(this._formatFeatures[ec.RGB16F]|=cc.RENDER_TARGET,this._formatFeatures[ec.RGBA16F]|=cc.RENDER_TARGET,this._textureExclusive[ec.RGB16F]=!1,this._textureExclusive[ec.RGBA16F]=!1),t.OES_texture_float&&(this._formatFeatures[ec.RGB32F]|=cc.RENDER_TARGET|cc.SAMPLED_TEXTURE,this._formatFeatures[ec.RGBA32F]|=cc.RENDER_TARGET|cc.SAMPLED_TEXTURE),t.OES_texture_half_float&&(this._formatFeatures[ec.RGB16F]|=cc.RENDER_TARGET|cc.SAMPLED_TEXTURE,this._formatFeatures[ec.RGBA16F]|=cc.RENDER_TARGET|cc.SAMPLED_TEXTURE),t.OES_texture_float_linear&&(this._formatFeatures[ec.RGB32F]|=cc.LINEAR_FILTER,this._formatFeatures[ec.RGBA32F]|=cc.LINEAR_FILTER),t.OES_texture_half_float_linear&&(this._formatFeatures[ec.RGB16F]|=cc.LINEAR_FILTER,this._formatFeatures[ec.RGBA16F]|=cc.LINEAR_FILTER);var i=cc.SAMPLED_TEXTURE|cc.LINEAR_FILTER;t.WEBGL_compressed_texture_etc1&&(this._formatFeatures[ec.ETC_RGB8]=i),t.WEBGL_compressed_texture_etc&&(this._formatFeatures[ec.ETC2_RGB8]=i,this._formatFeatures[ec.ETC2_RGBA8]=i,this._formatFeatures[ec.ETC2_SRGB8]=i,this._formatFeatures[ec.ETC2_SRGB8_A8]=i,this._formatFeatures[ec.ETC2_RGB8_A1]=i,this._formatFeatures[ec.ETC2_SRGB8_A1]=i),t.WEBGL_compressed_texture_s3tc&&(this._formatFeatures[ec.BC1]=i,this._formatFeatures[ec.BC1_ALPHA]=i,this._formatFeatures[ec.BC1_SRGB]=i,this._formatFeatures[ec.BC1_SRGB_ALPHA]=i,this._formatFeatures[ec.BC2]=i,this._formatFeatures[ec.BC2_SRGB]=i,this._formatFeatures[ec.BC3]=i,this._formatFeatures[ec.BC3_SRGB]=i),t.WEBGL_compressed_texture_pvrtc&&(this._formatFeatures[ec.PVRTC_RGB2]|=i,this._formatFeatures[ec.PVRTC_RGBA2]|=i,this._formatFeatures[ec.PVRTC_RGB4]|=i,this._formatFeatures[ec.PVRTC_RGBA4]|=i),t.WEBGL_compressed_texture_astc&&(this._formatFeatures[ec.ASTC_RGBA_4X4]|=i,this._formatFeatures[ec.ASTC_RGBA_5X4]|=i,this._formatFeatures[ec.ASTC_RGBA_5X5]|=i,this._formatFeatures[ec.ASTC_RGBA_6X5]|=i,this._formatFeatures[ec.ASTC_RGBA_6X6]|=i,this._formatFeatures[ec.ASTC_RGBA_8X5]|=i,this._formatFeatures[ec.ASTC_RGBA_8X6]|=i,this._formatFeatures[ec.ASTC_RGBA_8X8]|=i,this._formatFeatures[ec.ASTC_RGBA_10X5]|=i,this._formatFeatures[ec.ASTC_RGBA_10X6]|=i,this._formatFeatures[ec.ASTC_RGBA_10X8]|=i,this._formatFeatures[ec.ASTC_RGBA_10X10]|=i,this._formatFeatures[ec.ASTC_RGBA_12X10]|=i,this._formatFeatures[ec.ASTC_RGBA_12X12]|=i,this._formatFeatures[ec.ASTC_SRGBA_4X4]|=i,this._formatFeatures[ec.ASTC_SRGBA_5X4]|=i,this._formatFeatures[ec.ASTC_SRGBA_5X5]|=i,this._formatFeatures[ec.ASTC_SRGBA_6X5]|=i,this._formatFeatures[ec.ASTC_SRGBA_6X6]|=i,this._formatFeatures[ec.ASTC_SRGBA_8X5]|=i,this._formatFeatures[ec.ASTC_SRGBA_8X6]|=i,this._formatFeatures[ec.ASTC_SRGBA_8X8]|=i,this._formatFeatures[ec.ASTC_SRGBA_10X5]|=i,this._formatFeatures[ec.ASTC_SRGBA_10X6]|=i,this._formatFeatures[ec.ASTC_SRGBA_10X8]|=i,this._formatFeatures[ec.ASTC_SRGBA_10X10]|=i,this._formatFeatures[ec.ASTC_SRGBA_12X10]|=i,this._formatFeatures[ec.ASTC_SRGBA_12X12]|=i)},i.createCommandBuffer=function(t){var e=new(t.type===Nc.PRIMARY?Plt:xlt);return e.initialize(t),e},i.createSwapchain=function(t){var e=new Wlt;return this._swapchain=e,e.initialize(t),e},i.createBuffer=function(t){var e=new blt;return e.initialize(t),e},i.createTexture=function(t){var e=new Vlt;return e.initialize(t),e},i.createDescriptorSet=function(t){var e=new Nut;return e.initialize(t),e},i.createShader=function(t){var e=new klt;return e.initialize(t),e},i.createInputAssembler=function(t){var e=new Rlt;return e.initialize(t),e},i.createRenderPass=function(t){var e=new Llt;return e.initialize(t),e},i.createFramebuffer=function(t){var e=new wlt;return e.initialize(t),e},i.createDescriptorSetLayout=function(t){var e=new Ilt;return e.initialize(t),e},i.createPipelineLayout=function(t){var e=new Dlt;return e.initialize(t),e},i.createPipelineState=function(t){var e=new Mlt;return e.initialize(t),e},i.createQueue=function(t){var e=new Olt;return e.initialize(t),e},i.getSampler=function(t){var e=Ef.computeHash(t);return this._samplers.has(e)||this._samplers.set(e,new Flt(t,e)),this._samplers.get(e)},i.getSwapchains=function(){return[this._swapchain]},i.getGeneralBarrier=function(t){var e=wf.computeHash(t);return this._generalBarrierss.has(e)||this._generalBarrierss.set(e,new wf(t,e)),this._generalBarrierss.get(e)},i.getTextureBarrier=function(t){var e=Rf.computeHash(t);return this._textureBarriers.has(e)||this._textureBarriers.set(e,new Rf(t,e)),this._textureBarriers.get(e)},i.getBufferBarrier=function(t){var e=If.computeHash(t);return this._bufferBarriers.has(e)||this._bufferBarriers.set(e,new If(t,e)),this._bufferBarriers.get(e)},i.copyBuffersToTexture=function(t,e,i){ylt(this,t,e.gpuTexture,i)},i.copyTextureToBuffers=function(t,e,i){!function(t,e,i,n){var r=t.gl,s=t.stateCache,a=r.createFramebuffer();r.bindFramebuffer(r.FRAMEBUFFER,a);var o=0,h=0,u=1,l=1;switch(e.glTarget){case r.TEXTURE_2D:for(var c=0;c<n.length;c++){var _=n[c];r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,e.glTarget,e.glTexture,_.texSubres.mipLevel),o=_.texOffset.x,h=_.texOffset.y,u=_.texExtent.width,l=_.texExtent.height,r.readPixels(o,h,u,l,e.glFormat,e.glType,i[c])}break;default:H("Unsupported GL texture type, copy texture to buffers failed.")}r.bindFramebuffer(r.FRAMEBUFFER,null),s.glFramebuffer=null,r.deleteFramebuffer(a)}(this,t.gpuTexture,e,i)},i.copyTexImagesToTexture=function(t,e,i){!function(t,e,i,n){var r=t.gl,s=t.stateCache.glTexUnits[t.stateCache.texUnit];s.glTexture!==i.glTexture&&(r.bindTexture(i.glTarget,i.glTexture),s.glTexture=i.glTexture);var a=0,o=0;switch(i.glTarget){case r.TEXTURE_2D:for(var h=0;h<n.length;h++){var u=n[h];r.texSubImage2D(r.TEXTURE_2D,u.texSubres.mipLevel,u.texOffset.x,u.texOffset.y,i.glFormat,i.glType,e[a++])}break;case r.TEXTURE_CUBE_MAP:for(var l=0;l<n.length;l++){var c=n[l],_=c.texSubres.baseArrayLayer+c.texSubres.layerCount;for(o=c.texSubres.baseArrayLayer;o<_;++o)r.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+o,c.texSubres.mipLevel,c.texOffset.x,c.texOffset.y,i.glFormat,i.glType,e[a++])}break;default:it(16327)}i.flags&lc.GEN_MIPMAP&&i.isPowerOf2&&r.generateMipmap(i.glTarget)}(this,t,e.gpuTexture,i)},n(e,[{key:"gl",get:function(){return this._context}},{key:"extensions",get:function(){return this._swapchain.extensions}},{key:"stateCache",get:function(){return this._swapchain.stateCache}},{key:"nullTex2D",get:function(){return this._swapchain.nullTex2D}},{key:"nullTexCube",get:function(){return this._swapchain.nullTexCube}},{key:"textureExclusive",get:function(){return this._textureExclusive}},{key:"bindingMappings",get:function(){return this._bindingMappings}},{key:"blitManager",get:function(){return this._swapchain.blitManager}}]),e}(hf));function jlt(t,e,i,n){var r=(n.x-i.x)*(t.y-i.y)-(n.y-i.y)*(t.x-i.x),s=(e.x-t.x)*(t.y-i.y)-(e.y-t.y)*(t.x-i.x),a=(n.y-i.y)*(e.x-t.x)-(n.x-i.x)*(e.y-t.y);if(0!==a){var o=r/a,h=s/a;if(o>=0&&o<=1&&h>=0&&h<=1)return!0}return!1}S.WebGLDevice=Xlt;var Ylt=new jn,qlt=new jn,Klt=new jn,Qlt=new jn;function Zlt(t,e,i){for(var n=i.length,r=0;r<n;++r)if(jlt(t,e,i[r],i[(r+1)%n]))return!0;return!1}function Jlt(t,e){for(var i=!1,n=t.x,r=t.y,s=e.length,a=0,o=s-1;a<s;o=a++){var h=e[a].x,u=e[a].y,l=e[o].x,c=e[o].y;u>r!=c>r&&n<(l-h)*(r-u)/(c-u)+h&&(i=!i)}return i}function $lt(t,e,i,n){var r,s=i.x-e.x,a=i.y-e.y,o=s*s+a*a,h=((t.x-e.x)*s+(t.y-e.y)*a)/o;return r=n?o?h<0?e:h>1?i:Ylt.set(e.x+h*s,e.y+h*a):e:Ylt.set(e.x+h*s,e.y+h*a),s=t.x-r.x,a=t.y-r.y,Math.sqrt(s*s+a*a)}var tct=t("eG",(function(){}));tct.lineLine=jlt,tct.lineRect=function(t,e,i){var n=Ylt.set(i.x,i.y),r=qlt.set(i.x,i.yMax),s=Klt.set(i.xMax,i.yMax),a=Qlt.set(i.xMax,i.y);return!!(jlt(t,e,n,r)||jlt(t,e,r,s)||jlt(t,e,s,a)||jlt(t,e,a,n))},tct.linePolygon=Zlt,tct.rectRect=function(t,e){var i=t.x,n=t.y,r=t.x+t.width,s=t.y+t.height,a=e.x,o=e.y,h=e.x+e.width,u=e.y+e.height;return i<=h&&r>=a&&n<=u&&s>=o},tct.rectPolygon=function(t,e){var i=Ylt.set(t.x,t.y),n=qlt.set(t.x,t.yMax),r=Klt.set(t.xMax,t.yMax),s=Qlt.set(t.xMax,t.y);if(Zlt(i,n,e))return!0;if(Zlt(n,r,e))return!0;if(Zlt(r,s,e))return!0;if(Zlt(s,i,e))return!0;for(var a=0,o=e.length;a<o;++a)if(t.contains(e[a]))return!0;return!!(Jlt(i,e)||Jlt(n,e)||Jlt(r,e)||Jlt(s,e))},tct.rectCircle=function(t,e,i){var n=e.x,r=e.y,s=t.x,a=t.y,o=t.width,h=t.height,u=n,l=r;n<s?u=s:n>s+o&&(u=s+o),r<a?l=a:r>a+h&&(l=a+h);var c=n-u,_=r-l;return Math.sqrt(c*c+_*_)<=i},tct.polygonPolygon=function(t,e){var i,n;for(i=0,n=t.length;i<n;++i)if(Zlt(t[i],t[(i+1)%n],e))return!0;for(i=0,n=e.length;i<n;++i)if(Jlt(e[i],t))return!0;for(i=0,n=t.length;i<n;++i)if(Jlt(t[i],e))return!0;return!1},tct.circleCircle=function(t,e,i,n){return jn.distance(t,i)<e+n},tct.polygonCircle=function(t,e,i){var n=e;if(Jlt(n,t))return!0;for(var r=0,s=t.length;r<s;r++)if($lt(n,0===r?t[t.length-1]:t[r-1],t[r],!0)<i)return!0;return!1},tct.pointInPolygon=Jlt,tct.pointLineDistance=$lt;var ect,ict,nct,rct,sct,act,oct,hct,uct,lct,cct,_ct,fct,dct,pct,mct,gct,vct,yct,Sct,Tct,Act,bct,Ect,Cct,xct,wct,Rct,Ict,Dct,Bct,Mct,Pct,Oct,Lct=t("eH",Ee({UNIFORM:0,ADAPTIVE:1})),Nct=t("eI",function(){function t(){}return t.generate=function(t){switch(t.method){case Lct.UNIFORM:return this.doGenerateUniform(t);case Lct.ADAPTIVE:return this.doGenerateAdaptive(t);default:return[]}},t.doGenerateUniform=function(t){if(t.nProbesX<2||t.nProbesY<2||t.nProbesZ<2)return[];for(var e=[],i=new gn(0,0,0),n=new gn((t.maxPos.x-t.minPos.x)/(t.nProbesX-1),(t.maxPos.y-t.minPos.y)/(t.nProbesY-1),(t.maxPos.z-t.minPos.z)/(t.nProbesZ-1)),r=0;r<t.nProbesX;r++){i.x=r*n.x+t.minPos.x;for(var s=0;s<t.nProbesY;s++){i.y=s*n.y+t.minPos.y;for(var a=0;a<t.nProbesZ;a++)i.z=a*n.z+t.minPos.z,e.push(new gn(i))}}return e},t.doGenerateAdaptive=function(t){return this.doGenerateUniform(t)},t}()),Fct=eo,kct=lo,Gct=new wn,Vct=new gn(0,0,0),Uct=new gn(0,0,0),zct=new gn(0,0,0),Hct=new gn(0,0,0),Wct=new gn(0,0,0),Xct=new gn(0,0,0),jct=new gn(0,0,0),Yct=t("eJ",Fct("cc.Vertex")((ict=function(t){this.position=nct&&nct(),this.normal=rct&&rct(),this.coefficients=sct&&sct(),this.position.set(t)},nct=ja(ict.prototype,"position",[kct],(function(){return new gn(0,0,0)})),rct=ja(ict.prototype,"normal",[kct],(function(){return new gn(0,0,0)})),sct=ja(ict.prototype,"coefficients",[kct],(function(){return[]})),ect=ict))||ect),qct=(act=function(){function t(t,e,i,n){this.tetrahedron=oct&&oct(),this.index=hct&&hct(),this.vertex0=uct&&uct(),this.vertex1=lct&&lct(),this.tetrahedron=t,this.index=e,i<n?(this.vertex0=i,this.vertex1=n):(this.vertex0=n,this.vertex1=i)}var e=t.prototype;return e.set=function(t,e,i,n){this.tetrahedron=t,this.index=e,i<n?(this.vertex0=i,this.vertex1=n):(this.vertex0=n,this.vertex1=i)},e.isSame=function(t){return this.vertex0===t.vertex0&&this.vertex1===t.vertex1},t}(),oct=ja(act.prototype,"tetrahedron",[kct],(function(){return-1})),hct=ja(act.prototype,"index",[kct],(function(){return-1})),uct=ja(act.prototype,"vertex0",[kct],(function(){return-1})),lct=ja(act.prototype,"vertex1",[kct],(function(){return-1})),act),Kct=(cct=function(){function t(t,e,i,n,r,s){this.invalid=_ct&&_ct(),this.isOuterFace=fct&&fct(),this.tetrahedron=dct&&dct(),this.index=pct&&pct(),this.vertex0=mct&&mct(),this.vertex1=gct&&gct(),this.vertex2=vct&&vct(),this.vertex3=yct&&yct(),this.tetrahedron=t,this.index=e,this.vertex3=s,i<n&&i<r?(this.vertex0=i,n<r?(this.vertex1=n,this.vertex2=r):(this.vertex1=r,this.vertex2=n)):n<i&&n<r?(this.vertex0=n,i<r?(this.vertex1=i,this.vertex2=r):(this.vertex1=r,this.vertex2=i)):(this.vertex0=r,i<n?(this.vertex1=i,this.vertex2=n):(this.vertex1=n,this.vertex2=i))}var e=t.prototype;return e.set=function(t,e,i,n,r,s){this.invalid=!1,this.isOuterFace=!0,this.tetrahedron=t,this.index=e,this.vertex3=s,i<n&&i<r?(this.vertex0=i,n<r?(this.vertex1=n,this.vertex2=r):(this.vertex1=r,this.vertex2=n)):n<i&&n<r?(this.vertex0=n,i<r?(this.vertex1=i,this.vertex2=r):(this.vertex1=r,this.vertex2=i)):(this.vertex0=r,i<n?(this.vertex1=i,this.vertex2=n):(this.vertex1=n,this.vertex2=i))},e.isSame=function(t){return this.vertex0===t.vertex0&&this.vertex1===t.vertex1&&this.vertex2===t.vertex2},t}(),_ct=ja(cct.prototype,"invalid",[kct],(function(){return!1})),fct=ja(cct.prototype,"isOuterFace",[kct],(function(){return!0})),dct=ja(cct.prototype,"tetrahedron",[kct],(function(){return-1})),pct=ja(cct.prototype,"index",[kct],(function(){return-1})),mct=ja(cct.prototype,"vertex0",[kct],(function(){return-1})),gct=ja(cct.prototype,"vertex1",[kct],(function(){return-1})),vct=ja(cct.prototype,"vertex2",[kct],(function(){return-1})),yct=ja(cct.prototype,"vertex3",[kct],(function(){return-1})),cct),Qct=t("eK",Fct("cc.CircumSphere")((Tct=function(){function t(){this.center=Act&&Act(),this.radiusSquared=bct&&bct()}return t.prototype.init=function(t,e,i,n){Gct.set(e.x-t.x,e.y-t.y,e.z-t.z,i.x-t.x,i.y-t.y,i.z-t.z,n.x-t.x,n.y-t.y,n.z-t.z),Gct.invert(),Gct.transpose(),Vct.set(.5*((e.x+t.x)*(e.x-t.x)+(e.y+t.y)*(e.y-t.y)+(e.z+t.z)*(e.z-t.z)),.5*((i.x+t.x)*(i.x-t.x)+(i.y+t.y)*(i.y-t.y)+(i.z+t.z)*(i.z-t.z)),.5*((n.x+t.x)*(n.x-t.x)+(n.y+t.y)*(n.y-t.y)+(n.z+t.z)*(n.z-t.z))),gn.transformMat3(this.center,Vct,Gct),this.radiusSquared=gn.squaredDistance(t,this.center)},t}(),Act=ja(Tct.prototype,"center",[kct],(function(){return new gn(0,0,0)})),bct=ja(Tct.prototype,"radiusSquared",[kct],(function(){return 0})),Sct=Tct))||Sct),Zct=t("eL",Fct("cc.Tetrahedron")((Cct=function(){function t(t,e,i,n,r){if(void 0===r&&(r=-1),this.invalid=xct&&xct(),this.vertex0=wct&&wct(),this.vertex1=Rct&&Rct(),this.vertex2=Ict&&Ict(),this.vertex3=Dct&&Dct(),this.neighbours=Bct&&Bct(),this.matrix=Mct&&Mct(),this.offset=Pct&&Pct(),this.sphere=Oct&&Oct(),this.vertex0=e,this.vertex1=i,this.vertex2=n,this.vertex3=r,r>=0){var s=t._probes,a=s[this.vertex0].position,o=s[this.vertex1].position,h=s[this.vertex2].position,u=s[this.vertex3].position;this.sphere.init(a,o,h,u)}}var e=t.prototype;return e.isInCircumSphere=function(t){return gn.squaredDistance(t,this.sphere.center)<this.sphere.radiusSquared-Oi},e.contain=function(t){return this.vertex0===t||this.vertex1===t||this.vertex2===t||this.vertex3===t},e.isInnerTetrahedron=function(){return this.vertex3>=0},e.isOuterCell=function(){return this.vertex3<0},t}(),xct=ja(Cct.prototype,"invalid",[kct],(function(){return!1})),wct=ja(Cct.prototype,"vertex0",[kct],(function(){return-1})),Rct=ja(Cct.prototype,"vertex1",[kct],(function(){return-1})),Ict=ja(Cct.prototype,"vertex2",[kct],(function(){return-1})),Dct=ja(Cct.prototype,"vertex3",[kct],(function(){return-1})),Bct=ja(Cct.prototype,"neighbours",[kct],(function(){return[-1,-1,-1,-1]})),Mct=ja(Cct.prototype,"matrix",[kct],(function(){return new wn})),Pct=ja(Cct.prototype,"offset",[kct],(function(){return new gn(0,0,0)})),Oct=ja(Cct.prototype,"sphere",[kct],(function(){return new Qct})),Ect=Cct))||Ect),Jct=t("eM",function(){function t(t){this._probes=[],this._tetrahedrons=[],this._triangles=[],this._edges=[],this._probes=t}var e=t.prototype;return e.build=function(){return this.reset(),this.tetrahedralize(),this.computeAdjacency(),this.computeMatrices(),this._tetrahedrons},e.reset=function(){this._tetrahedrons.length=0,this._triangles.length=0,this._edges.length=0},e.tetrahedralize=function(){for(var t=this._probes.length,e=this.initTetrahedron(),i=0;i<t;i++)this.addProbe(i);this._tetrahedrons=this._tetrahedrons.filter((function(e){var i=t;return!(e.contain(i)||e.contain(i+1)||e.contain(i+2)||e.contain(i+3))})),this._probes.length=t,this.reorder(e)},e.initTetrahedron=function(){for(var t=new gn(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),e=new gn(Number.MIN_VALUE,Number.MIN_VALUE,Number.MIN_VALUE),i=0;i<this._probes.length;i++){var n=this._probes[i].position;t.x=Math.min(t.x,n.x),e.x=Math.max(e.x,n.x),t.y=Math.min(t.y,n.y),e.y=Math.max(e.y,n.y),t.z=Math.min(t.z,n.z),e.z=Math.max(e.z,n.z)}var r=new gn(0,0,0);gn.add(r,t,e),gn.multiplyScalar(r,r,.5);var s=new gn(0,0,0);gn.subtract(s,e,t);var a=10*Math.max(s.x,s.y,s.z),o=new gn(r.x,r.y+a,r.z),h=new gn(r.x-a,r.y-a,r.z-a),u=new gn(r.x-a,r.y-a,r.z+a),l=new gn(r.x+a,r.y-a,r.z),c=this._probes.length;return this._probes.push(new Yct(o)),this._probes.push(new Yct(h)),this._probes.push(new Yct(u)),this._probes.push(new Yct(l)),this._tetrahedrons.push(new Zct(this,c,c+1,c+2,c+3)),r},e.addTriangle=function(t,e,i,n,r,s,a){t<this._triangles.length?this._triangles[t].set(e,i,n,r,s,a):this._triangles.push(new Kct(e,i,n,r,s,a))},e.addEdge=function(t,e,i,n,r){t<this._edges.length?this._edges[t].set(e,i,n,r):this._edges.push(new qct(e,i,n,r))},e.addProbe=function(t){for(var e=this._probes[t].position,i=0,n=0;n<this._tetrahedrons.length;n++){var r=this._tetrahedrons[n];r.isInCircumSphere(e)&&(r.invalid=!0,this.addTriangle(i,n,0,r.vertex1,r.vertex3,r.vertex2,r.vertex0),this.addTriangle(i+1,n,1,r.vertex0,r.vertex2,r.vertex3,r.vertex1),this.addTriangle(i+2,n,2,r.vertex0,r.vertex3,r.vertex1,r.vertex2),this.addTriangle(i+3,n,3,r.vertex0,r.vertex1,r.vertex2,r.vertex3),i+=4)}for(var s=0;s<i;s++)if(!this._triangles[s].invalid)for(var a=s+1;a<i;a++)if(this._triangles[s].isSame(this._triangles[a])){this._triangles[s].invalid=!0,this._triangles[a].invalid=!0;break}this._tetrahedrons=this._tetrahedrons.filter((function(t){return!t.invalid}));for(var o=0;o<i;o++){var h=this._triangles[o];h.invalid||this._tetrahedrons.push(new Zct(this,h.vertex0,h.vertex1,h.vertex2,t))}},e.reorder=function(t){this._tetrahedrons.sort((function(e,i){return gn.squaredDistance(e.sphere.center,t)-gn.squaredDistance(i.sphere.center,t)}))},e.computeAdjacency=function(){for(var t=new gn(0,0,0),e=new gn(0,0,0),i=new gn(0,0,0),n=new gn(0,0,0),r=this._tetrahedrons.length,s=0,a=0;a<this._tetrahedrons.length;a++){var o=this._tetrahedrons[a];this.addTriangle(s,a,0,o.vertex1,o.vertex3,o.vertex2,o.vertex0),this.addTriangle(s+1,a,1,o.vertex0,o.vertex2,o.vertex3,o.vertex1),this.addTriangle(s+2,a,2,o.vertex0,o.vertex3,o.vertex1,o.vertex2),this.addTriangle(s+3,a,3,o.vertex0,o.vertex1,o.vertex2,o.vertex3),s+=4}for(var h=0;h<s;h++)if(this._triangles[h].isOuterFace){for(var u=h+1;u<s;u++)if(this._triangles[h].isSame(this._triangles[u])){this._tetrahedrons[this._triangles[h].tetrahedron].neighbours[this._triangles[h].index]=this._triangles[u].tetrahedron,this._tetrahedrons[this._triangles[u].tetrahedron].neighbours[this._triangles[u].index]=this._triangles[h].tetrahedron,this._triangles[h].isOuterFace=!1,this._triangles[u].isOuterFace=!1;break}if(this._triangles[h].isOuterFace){var l=this._probes[this._triangles[h].vertex0],c=this._probes[this._triangles[h].vertex1],_=this._probes[this._triangles[h].vertex2],f=this._probes[this._triangles[h].vertex3];gn.subtract(e,c.position,l.position),gn.subtract(i,_.position,l.position),gn.cross(t,e,i),gn.subtract(n,f.position,l.position);var d=gn.dot(t,n);d>0&&gn.negate(t,t),gn.add(l.normal,l.normal,t),gn.add(c.normal,c.normal,t),gn.add(_.normal,_.normal,t);var p=this._triangles[h].vertex0,m=d>0?this._triangles[h].vertex2:this._triangles[h].vertex1,g=d>0?this._triangles[h].vertex1:this._triangles[h].vertex2,v=new Zct(this,p,m,g);v.neighbours[3]=this._triangles[h].tetrahedron,this._tetrahedrons[this._triangles[h].tetrahedron].neighbours[this._triangles[h].index]=this._tetrahedrons.length,this._tetrahedrons.push(v)}}for(var y=0,S=r;S<this._tetrahedrons.length;S++){var T=this._tetrahedrons[S];this.addEdge(y,S,0,T.vertex1,T.vertex2),this.addEdge(y+1,S,1,T.vertex2,T.vertex0),this.addEdge(y+2,S,2,T.vertex0,T.vertex1),y+=3}for(var A=0;A<y;A++)for(var b=A+1;b<y;b++)this._edges[A].isSame(this._edges[b])&&(this._tetrahedrons[this._edges[A].tetrahedron].neighbours[this._edges[A].index]=this._edges[b].tetrahedron,this._tetrahedrons[this._edges[b].tetrahedron].neighbours[this._edges[b].index]=this._edges[A].tetrahedron);for(var E=0;E<this._probes.length;E++)this._probes[E].normal.normalize()},e.computeMatrices=function(){for(var t=0;t<this._tetrahedrons.length;t++){var e=this._tetrahedrons[t];e.vertex3>=0?this.computeTetrahedronMatrix(e):this.computeOuterCellMatrix(e)}},e.computeTetrahedronMatrix=function(t){var e=this._probes[t.vertex0].position,i=this._probes[t.vertex1].position,n=this._probes[t.vertex2].position,r=this._probes[t.vertex3].position;t.matrix.set(e.x-r.x,i.x-r.x,n.x-r.x,e.y-r.y,i.y-r.y,n.y-r.y,e.z-r.z,i.z-r.z,n.z-r.z),t.matrix.invert(),t.matrix.transpose()},e.computeOuterCellMatrix=function(t){var e=[],i=[];e[0]=this._probes[t.vertex0].normal,e[1]=this._probes[t.vertex1].normal,e[2]=this._probes[t.vertex2].normal,i[0]=this._probes[t.vertex0].position,i[1]=this._probes[t.vertex1].position,i[2]=this._probes[t.vertex2].position,gn.subtract(Uct,i[0],i[2]),gn.subtract(zct,e[0],e[2]),gn.subtract(Hct,i[1],i[2]),gn.subtract(Wct,e[1],e[2]),Xct.set(i[2]),gn.negate(jct,e[2]);var n=[];n[0]=zct.y*Wct.z-zct.z*Wct.y,n[3]=-zct.x*Wct.z+zct.z*Wct.x,n[6]=zct.x*Wct.y-zct.y*Wct.x,n[9]=Uct.x*Wct.y*jct.z-Uct.y*Wct.x*jct.z+zct.x*Hct.y*jct.z-zct.y*Hct.x*jct.z+Uct.z*Wct.x*jct.y-Uct.z*Wct.y*jct.x+zct.z*Hct.x*jct.y-zct.z*Hct.y*jct.x-Uct.x*Wct.z*jct.y+Uct.y*Wct.z*jct.x-zct.x*Hct.z*jct.y+zct.y*Hct.z*jct.x,n[9]-=Xct.x*n[0]+Xct.y*n[3]+Xct.z*n[6],n[1]=zct.y*Hct.z+Uct.y*Wct.z-zct.z*Hct.y-Uct.z*Wct.y,n[4]=-Uct.x*Wct.z-zct.x*Hct.z+Uct.z*Wct.x+zct.z*Hct.x,n[7]=Uct.x*Wct.y-Uct.y*Wct.x+zct.x*Hct.y-zct.y*Hct.x,n[10]=Uct.x*Hct.y*jct.z-Uct.y*Hct.x*jct.z-Uct.x*Hct.z*jct.y+Uct.y*Hct.z*jct.x+Uct.z*Hct.x*jct.y-Uct.z*Hct.y*jct.x,n[10]-=Xct.x*n[1]+Xct.y*n[4]+Xct.z*n[7],n[2]=-Uct.z*Hct.y+Uct.y*Hct.z,n[5]=-Uct.x*Hct.z+Uct.z*Hct.x,n[8]=Uct.x*Hct.y-Uct.y*Hct.x,n[11]=0,n[11]-=Xct.x*n[2]+Xct.y*n[5]+Xct.z*n[8];var r=zct.x*Wct.y*jct.z-zct.y*Wct.x*jct.z+zct.z*Wct.x*jct.y-zct.z*Wct.y*jct.x+zct.y*Wct.z*jct.x-zct.x*Wct.z*jct.y;if(Math.abs(r)>Oi)for(var s=0;s<12;s++)n[s]/=r;else t.vertex3=-2;t.matrix.set(n[0],n[1],n[2],n[3],n[4],n[5],n[6],n[7],n[8]),t.offset.set(n[9],n[10],n[11])},t}()),$ct=t("eN",function(){function t(){}return t.uniformSampleSphere=function(t,e){var i=1-2*t,n=Math.sqrt(Math.max(0,1-i*i)),r=2*Math.PI*e,s=n*Math.cos(r),a=n*Math.sin(r);return new gn(s,a,i)},t.uniformSampleSphereAll=function(t){for(var e=Math.floor(Math.sqrt(t)),i=e,n=[],r=1/e,s=1/i,a=0;a<e;a++)for(var o=(a+.5)*r,h=0;h<i;h++){var u=(h+.5)*s,l=this.uniformSampleSphere(o,u);n.push(l)}return n},t.uniformSpherePdf=function(){return 1/(4*Math.PI)},t}()),t_t=t("eO",function(){function t(){}return t.updateUBOData=function(t,e,i){t[e++]=i[3].x*this.basisOverPI[3],t[e++]=i[1].x*this.basisOverPI[1],t[e++]=i[2].x*this.basisOverPI[2],t[e++]=i[0].x*this.basisOverPI[0]-i[6].x*this.basisOverPI[6]/3,t[e++]=i[3].y*this.basisOverPI[3],t[e++]=i[1].y*this.basisOverPI[1],t[e++]=i[2].y*this.basisOverPI[2],t[e++]=i[0].y*this.basisOverPI[0]-i[6].y*this.basisOverPI[6]/3,t[e++]=i[3].z*this.basisOverPI[3],t[e++]=i[1].z*this.basisOverPI[1],t[e++]=i[2].z*this.basisOverPI[2],t[e++]=i[0].z*this.basisOverPI[0]-i[6].z*this.basisOverPI[6]/3,t[e++]=i[4].x*this.basisOverPI[4],t[e++]=i[5].x*this.basisOverPI[5],t[e++]=i[6].x*this.basisOverPI[6],t[e++]=i[7].x*this.basisOverPI[7],t[e++]=i[4].y*this.basisOverPI[4],t[e++]=i[5].y*this.basisOverPI[5],t[e++]=i[6].y*this.basisOverPI[6],t[e++]=i[7].y*this.basisOverPI[7],t[e++]=i[4].z*this.basisOverPI[4],t[e++]=i[5].z*this.basisOverPI[5],t[e++]=i[6].z*this.basisOverPI[6],t[e++]=i[7].z*this.basisOverPI[7],t[e++]=i[8].x*this.basisOverPI[8],t[e++]=i[8].y*this.basisOverPI[8],t[e++]=i[8].z*this.basisOverPI[8],t[e++]=0},t.shaderEvaluate=function(t,e){var i=new cn(e[3].x*this.basisOverPI[3],e[1].x*this.basisOverPI[1],e[2].x*this.basisOverPI[2],e[0].x*this.basisOverPI[0]-e[6].x*this.basisOverPI[6]/3),n=new cn(e[3].y*this.basisOverPI[3],e[1].y*this.basisOverPI[1],e[2].y*this.basisOverPI[2],e[0].y*this.basisOverPI[0]-e[6].y*this.basisOverPI[6]/3),r=new cn(e[3].z*this.basisOverPI[3],e[1].z*this.basisOverPI[1],e[2].z*this.basisOverPI[2],e[0].z*this.basisOverPI[0]-e[6].z*this.basisOverPI[6]/3),s=new cn(e[4].x*this.basisOverPI[4],e[5].x*this.basisOverPI[5],e[6].x*this.basisOverPI[6],e[7].x*this.basisOverPI[7]),a=new cn(e[4].y*this.basisOverPI[4],e[5].y*this.basisOverPI[5],e[6].y*this.basisOverPI[6],e[7].y*this.basisOverPI[7]),o=new cn(e[4].z*this.basisOverPI[4],e[5].z*this.basisOverPI[5],e[6].z*this.basisOverPI[6],e[7].z*this.basisOverPI[7]),h=new gn(e[8].x*this.basisOverPI[8],e[8].y*this.basisOverPI[8],e[8].z*this.basisOverPI[8]),u=new gn(0,0,0),l=new cn(t.x,t.y,t.z,1);u.x=cn.dot(i,l),u.y=cn.dot(n,l),u.z=cn.dot(r,l);var c=new cn(t.x*t.y,t.y*t.z,t.z*t.z,t.z*t.x),_=t.x*t.x-t.y*t.y;return u.x+=cn.dot(s,c),u.y+=cn.dot(a,c),u.z+=cn.dot(o,c),gn.scaleAndAdd(u,u,h,_),u},t.evaluate=function(t,e){for(var i=new gn(0,0,0),n=e.length,r=0;r<n;r++){var s=e[r];gn.scaleAndAdd(i,i,s,this.evaluateBasis(r,t))}return i},t.project=function(t,e){t.length>0&&(t.length,e.length);for(var i=this.getBasisCount(),n=t.length,r=1/($ct.uniformSpherePdf()*n),s=[],a=0;a<i;a++){for(var o=new gn(0,0,0),h=0;h<n;h++)gn.scaleAndAdd(o,o,e[h],this.evaluateBasis(a,t[h]));gn.multiplyScalar(o,o,r),s.push(o)}return s},t.convolveCosine=function(t){for(var e=[.8862268925,1.0233267546,.495415926],i=[],n=0;n<=this.LMAX;n++)for(var r=-n;r<=n;r++){var s=this.toIndex(n,r),a=new gn(0,0,0);gn.multiplyScalar(a,t[s],this.lambda(n)*e[n]),i.push(a)}return i},t.getBasisCount=function(){return 9},t.evaluateBasis=function(t,e){return this.getBasisCount(),(0,this.basisFunctions[t])(e)},t.reduceRinging=function(t,e){if(0!==e)for(var i=0;i<=this.LMAX;++i)for(var n=1/(1+e*i*i*(i+1)*(i+1)),r=-i;r<=i;++r){var s=this.toIndex(i,r);gn.multiplyScalar(t[s],t[s],n)}},t.lambda=function(t){return Math.sqrt(4*Math.PI/(2*t+1))},t.toIndex=function(t,e){return t*t+t+e},t}());t_t.LMAX=2,t_t.basisFunctions=[function(){return.282095},function(t){return.488603*t.y},function(t){return.488603*t.z},function(t){return.488603*t.x},function(t){return 1.09255*t.y*t.x},function(t){return 1.09255*t.y*t.z},function(t){return.946175*(t.z*t.z-1/3)},function(t){return 1.09255*t.z*t.x},function(t){return.546274*(t.x*t.x-t.y*t.y)}],t_t.basisOverPI=[.0897936,.155527,.155527,.155527,.347769,.347769,.301177,.347769,.173884],S.internal.SH=t_t;var e_t,i_t,n_t,r_t,s_t,a_t,o_t,h_t=function(){function t(){}return t.getQuadraticUniqueRoot=function(t,e,i){return 0!==t?-e/(2*t):0!==e?-i/e:0},t.getCubicUniqueRoot=function(t,e,i){var n=[],r=-t/3,s=e/3-t*t/9,a=i/2+t*t*t/27-t*e/6,o=s*s*s+a*a;if(o>0){var h=Math.sqrt(o);n.push(Math.cbrt(-a+h)+Math.cbrt(-a-h))}else if(o<0){var u=Math.acos(-a*Math.sqrt(-s)/(s*s))/3;n.push(2*Math.sqrt(-s)*Math.cos(u)),n.push(2*Math.sqrt(-s)*Math.cos(u+2*Math.PI/3)),n.push(2*Math.sqrt(-s)*Math.cos(u+4*Math.PI/3))}else if(0===a)n.push(0);else{var l=Math.cbrt(a);n.push(l),n.push(-2*l)}for(var c=0;c<n.length;c++)if(n[c]+r>=0)return n[c]+r;return 0},t}(),u_t=new gn(0,0,0),l_t=new gn(0,0,0),c_t=new gn(0,0,0),__t=new gn(0,0,0),f_t=new gn(0,0,0),d_t=new gn(0,0,0),p_t=new gn(0,0,0),m_t=new gn(0,0,0),g_t=new gn(0,0,0),v_t=new gn(0,0,0),y_t=new gn(0,0,0),S_t=new gn(0,0,0),T_t=new gn(0,0,0),A_t=new gn(0,0,0),b_t=new gn(0,0,0),E_t=t("eP",(e_t=eo("cc.LightProbesData"),i_t=Lo([Yct]),n_t=Lo([Zct]),e_t((s_t=function(){function t(){this._probes=a_t&&a_t(),this._tetrahedrons=o_t&&o_t()}var e=t.prototype;return e.empty=function(){return 0===this._probes.length||0===this._tetrahedrons.length},e.reset=function(){this._probes.length=0,this._tetrahedrons.length=0},e.updateProbes=function(t){this._probes.length=t.length;for(var e=this._probes.length,i=0;i<e;i++){var n=this._probes[i];if(n)n.position.set(t[i]);else{n=new Yct(t[i]);for(var r=0;r<t_t.getBasisCount();r++)n.coefficients[r]=gn.ZERO;this._probes[i]=n}}},e.updateTetrahedrons=function(){var t=new Jct(this._probes);this._tetrahedrons=t.build()},e.getInterpolationSHCoefficients=function(t,e,i){if(!this.hasCoefficients())return!1;var n=t_t.getBasisCount(),r=this._tetrahedrons[t],s=this._probes[r.vertex0].coefficients,a=this._probes[r.vertex1].coefficients,o=this._probes[r.vertex2].coefficients;if(r.vertex3>=0)for(var h=this._probes[r.vertex3].coefficients,u=0;u<n;u++)i[u]=new gn(0,0,0),gn.scaleAndAdd(i[u],i[u],s[u],e.x),gn.scaleAndAdd(i[u],i[u],a[u],e.y),gn.scaleAndAdd(i[u],i[u],o[u],e.z),gn.scaleAndAdd(i[u],i[u],h[u],e.w);else for(var l=0;l<n;l++)i[l]=new gn(0,0,0),gn.scaleAndAdd(i[l],i[l],s[l],e.x),gn.scaleAndAdd(i[l],i[l],a[l],e.y),gn.scaleAndAdd(i[l],i[l],o[l],e.z);return!0},e.getInterpolationWeights=function(t,e,i){var n=this._tetrahedrons.length;(e<0||e>=n)&&(e=0);for(var r=-1,s=-1,a=0;a<n;a++){var o=this._tetrahedrons[e];if(this.getBarycentricCoord(t,o,i),i.x>=0&&i.y>=0&&i.z>=0&&i.w>=0)break;if(r===(s=i.x<i.y&&i.x<i.z&&i.x<i.w?o.neighbours[0]:i.y<i.z&&i.y<i.w?o.neighbours[1]:i.z<i.w?o.neighbours[2]:o.neighbours[3]))break;r=e,e=s}return e},e.hasCoefficients=function(){return!this.empty()&&0!==this._probes[0].coefficients.length},t.getTriangleBarycentricCoord=function(t,e,i,n){if(gn.subtract(u_t,e,t),gn.subtract(l_t,i,t),gn.cross(c_t,u_t,l_t),c_t.lengthSqr()<=Oi)return new gn(0,0,0);var r=c_t.clone();r.normalize();var s=1/r.dot(c_t);gn.subtract(__t,t,n),gn.subtract(f_t,e,n),gn.subtract(d_t,i,n),gn.cross(p_t,f_t,d_t);var a=r.dot(p_t)*s;gn.cross(m_t,d_t,__t);var o=r.dot(m_t)*s;return new gn(a,o,1-a-o)},e.getBarycentricCoord=function(t,e,i){e.vertex3>=0?this.getTetrahedronBarycentricCoord(t,e,i):this.getOuterCellBarycentricCoord(t,e,i)},e.getTetrahedronBarycentricCoord=function(t,e,i){var n=new gn(0,0,0);gn.subtract(n,t,this._probes[e.vertex3].position),gn.transformMat3(n,n,e.matrix),i.set(n.x,n.y,n.z,1-n.x-n.y-n.z)},e.getOuterCellBarycentricCoord=function(e,i,n){var r=this._probes[i.vertex0].position,s=this._probes[i.vertex1].position,a=this._probes[i.vertex2].position;gn.subtract(v_t,s,r),gn.subtract(y_t,a,r),gn.cross(g_t,v_t,y_t),gn.subtract(S_t,e,r);var o=gn.dot(S_t,g_t);if(o<0)n.set(0,0,0,-1);else{var h=new gn(0,0,0);gn.transformMat3(h,e,i.matrix),gn.add(h,h,i.offset),o=-1===i.vertex3?h_t.getCubicUniqueRoot(h.x,h.y,h.z):h_t.getQuadraticUniqueRoot(h.x,h.y,h.z),gn.scaleAndAdd(T_t,r,this._probes[i.vertex0].normal,o),gn.scaleAndAdd(A_t,s,this._probes[i.vertex1].normal,o),gn.scaleAndAdd(b_t,a,this._probes[i.vertex2].normal,o);var u=t.getTriangleBarycentricCoord(T_t,A_t,b_t,e);n.set(u.x,u.y,u.z,0)}},n(t,[{key:"probes",get:function(){return this._probes}},{key:"tetrahedrons",get:function(){return this._tetrahedrons}}]),t}(),a_t=ja(s_t.prototype,"_probes",[lo,i_t],(function(){return[]})),o_t=ja(s_t.prototype,"_tetrahedrons",[lo,n_t],(function(){return[]})),r_t=s_t))||r_t));S.internal.LightProbesData=E_t;var C_t,x_t,w_t,R_t,I_t,D_t,B_t,M_t,P_t,O_t,L_t,N_t,F_t,k_t,G_t,V_t=t("eQ",function(){function t(){this._giScale=1,this._giSamples=1024,this._bounces=2,this._reduceRinging=0,this._showProbe=!0,this._showWireframe=!0,this._showConvex=!1,this._data=null,this._lightProbeSphereVolume=1}var e=t.prototype;return e.initialize=function(t){this._giScale=t.giScale,this._giSamples=t.giSamples,this._bounces=t.bounces,this._reduceRinging=t.reduceRinging,this._showProbe=t.showProbe,this._showWireframe=t.showWireframe,this._showConvex=t.showConvex,this._data=t.data,this._lightProbeSphereVolume=t.lightProbeSphereVolume},e.empty=function(){return!this._data||this._data.empty()},n(t,[{key:"giScale",get:function(){return this._giScale},set:function(t){this._giScale=t}},{key:"giSamples",get:function(){return this._giSamples},set:function(t){this._giSamples=t}},{key:"bounces",get:function(){return this._bounces},set:function(t){this._bounces=t}},{key:"reduceRinging",get:function(){return this._reduceRinging},set:function(t){this._reduceRinging=t}},{key:"showProbe",get:function(){return this._showProbe},set:function(t){this._showProbe=t}},{key:"showWireframe",get:function(){return this._showWireframe},set:function(t){this._showWireframe=t}},{key:"showConvex",get:function(){return this._showConvex},set:function(t){this._showConvex=t}},{key:"data",get:function(){return this._data},set:function(t){this._data=t}},{key:"lightProbeSphereVolume",get:function(){return this._lightProbeSphereVolume},set:function(t){this._lightProbeSphereVolume=t}}]),t}());S.internal.LightProbes=V_t,t("eR",(C_t=eo("cc.LightProbeGroup"),x_t=Lo([gn]),w_t=Lo(Lct),R_t=Lo(ii),I_t=Lo(ii),D_t=Lo(ii),C_t(B_t=ro((M_t=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._probes=P_t&&P_t(),e._method=O_t&&O_t(),e._minPos=L_t&&L_t(),e._maxPos=N_t&&N_t(),e._nProbesX=F_t&&F_t(),e._nProbesY=k_t&&k_t(),e._nProbesZ=G_t&&G_t(),e}s(e,t);var i=e.prototype;return i.onLoad=function(){},i.onEnable=function(){},i.onDisable=function(){},i.generateLightProbes=function(){this.node&&(this._probes=Nct.generate({method:this._method,nProbesX:this._nProbesX,nProbesY:this._nProbesY,nProbesZ:this._nProbesZ,minPos:this._minPos,maxPos:this._maxPos}),this.onProbeChanged())},i.onProbeChanged=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=!0),this.node.scene.globals.lightProbeInfo.syncData(this.node,this.probes),this.node.scene.globals.lightProbeInfo.update(t),e&&this.node.emit(vm.LIGHT_PROBE_CHANGED)},n(e,[{key:"probes",get:function(){return this._probes},set:function(t){this._probes=t}},{key:"method",get:function(){return this._method}},{key:"minPos",get:function(){return this._minPos},set:function(t){this._minPos=t}},{key:"maxPos",get:function(){return this._maxPos},set:function(t){this._maxPos=t}},{key:"nProbesX",get:function(){return this._nProbesX},set:function(t){this._nProbesX=t}},{key:"nProbesY",get:function(){return this._nProbesY},set:function(t){this._nProbesY=t}},{key:"nProbesZ",get:function(){return this._nProbesZ},set:function(t){this._nProbesZ=t}}]),e}(mp),P_t=ja(M_t.prototype,"_probes",[lo],(function(){return[]})),O_t=ja(M_t.prototype,"_method",[lo],(function(){return Lct.UNIFORM})),L_t=ja(M_t.prototype,"_minPos",[lo],(function(){return new gn(-5,-5,-5)})),N_t=ja(M_t.prototype,"_maxPos",[lo],(function(){return new gn(5,5,5)})),F_t=ja(M_t.prototype,"_nProbesX",[lo],(function(){return 3})),k_t=ja(M_t.prototype,"_nProbesY",[lo],(function(){return 3})),G_t=ja(M_t.prototype,"_nProbesZ",[lo],(function(){return 3})),m(M_t.prototype,"probes",[x_t],Object.getOwnPropertyDescriptor(M_t.prototype,"probes"),M_t.prototype),m(M_t.prototype,"method",[w_t],Object.getOwnPropertyDescriptor(M_t.prototype,"method"),M_t.prototype),m(M_t.prototype,"nProbesX",[R_t],Object.getOwnPropertyDescriptor(M_t.prototype,"nProbesX"),M_t.prototype),m(M_t.prototype,"nProbesY",[I_t],Object.getOwnPropertyDescriptor(M_t.prototype,"nProbesY"),M_t.prototype),m(M_t.prototype,"nProbesZ",[D_t],Object.getOwnPropertyDescriptor(M_t.prototype,"nProbesZ"),M_t.prototype),B_t=M_t))||B_t)||B_t));var U_t,z_t,H_t,W_t,X_t,j_t,Y_t,q_t,K_t,Q_t,Z_t,J_t,$_t,tft,eft,ift,nft,rft,sft,aft,oft,hft,uft,lft,cft,_ft,fft,dft,pft=t("eS",(U_t=eo("cc.Billboard"),z_t=Lo(lm),H_t=Lo(lm),U_t((X_t=function(t){s(i,t);var e=i.prototype;function i(){var e;return(e=t.call(this)||this)._texture=j_t&&j_t(),e._height=Y_t&&Y_t(),e._width=q_t&&q_t(),e._rotation=K_t&&K_t(),e._techIndex=Q_t&&Q_t(),e._model=null,e._mesh=null,e._material=null,e._uniform=new cn(1,1,0,0),e}return e.updateTexture=function(){this._material&&this._material.setProperty("mainTexture",this._texture)},e.updateHeight=function(){this._material&&(this._uniform.y=this._height,this._material.setProperty("cc_size_rotation",this._uniform))},e.updateWidth=function(){this._material&&(this._uniform.x=this._width,this._material.setProperty("cc_size_rotation",this._uniform))},e.updateRotation=function(){this._material&&(this._uniform.z=this._rotation,this._material.setProperty("cc_size_rotation",this._uniform))},e.updateTechnique=function(){this._model&&this._mesh&&this._material&&this._material.technique!==this._techIndex&&(this.detachFromScene(),this._model.destroy(),this._model=null,this._material.destroy(),this._material=null,this._mesh.destroy(),this._mesh=null,this.createModel(),this.updateWidth(),this.updateHeight(),this.updateRotation(),this.updateTexture(),this.enabled?(this.attachToScene(),this._model.enabled=!0):this._model.enabled=!1)},e.onLoad=function(){this.createModel()},e.onEnable=function(){this.attachToScene(),this._model.enabled=!0,this.updateWidth(),this.updateHeight(),this.updateRotation(),this.updateTexture(),this.updateTechnique()},e.onDisable=function(){this.detachFromScene()},e.attachToScene=function(){this._model&&this.node&&this.node.scene&&(this._model.scene&&this.detachFromScene(),this._getRenderScene().addModel(this._model))},e.detachFromScene=function(){this._model&&this._model.scene&&this._model.scene.removeModel(this._model)},e.createModel=function(){this._mesh=oM({primitiveMode:wc.TRIANGLE_LIST,positions:[0,0,0,0,0,0,0,0,0,0,0,0],uvs:[0,0,1,0,0,1,1,1],colors:[En.WHITE.r,En.WHITE.g,En.WHITE.b,En.WHITE.a,En.WHITE.r,En.WHITE.g,En.WHITE.b,En.WHITE.a,En.WHITE.r,En.WHITE.g,En.WHITE.b,En.WHITE.a,En.WHITE.r,En.WHITE.g,En.WHITE.b,En.WHITE.a],attributes:[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RG32F),new T_(Uc.ATTR_COLOR,ec.RGBA8UI,!0)],indices:[0,1,2,1,2,3]},void 0,{calculateBounds:!1});var t=this._model=S.director.root.createModel(RR,this.node);t.node=t.transform=this.node,null==this._material&&(this._material=new zT,this._material.copy(bT.get("default-billboard-material"),{technique:this._techIndex})),t.initSubModel(0,this._mesh.renderingSubMeshes[0],this._material)},n(i,[{key:"texture",get:function(){return this._texture},set:function(t){this._texture=t,this.updateTexture()}},{key:"height",get:function(){return this._height},set:function(t){this._height=t,this.updateHeight()}},{key:"width",get:function(){return this._width},set:function(t){this._width=t,this.updateWidth()}},{key:"rotation",get:function(){return Math.round(100*Ui(this._rotation))/100},set:function(t){this._rotation=Vi(t),this.updateRotation()}},{key:"technique",get:function(){return this._techIndex},set:function(t){var e,i;t=Math.floor(t);var n=null===(e=this._material)||void 0===e||null===(i=e.effectAsset)||void 0===i?void 0:i.techniques;n&&t>=n.length&&(t=n.length-1),t<0&&(t=0),this._techIndex=t,this.updateTechnique()}}]),i}(mp),j_t=ja(X_t.prototype,"_texture",[z_t],(function(){return null})),m(X_t.prototype,"texture",[H_t],Object.getOwnPropertyDescriptor(X_t.prototype,"texture"),X_t.prototype),Y_t=ja(X_t.prototype,"_height",[lo],(function(){return 0})),q_t=ja(X_t.prototype,"_width",[lo],(function(){return 0})),K_t=ja(X_t.prototype,"_rotation",[lo],(function(){return 0})),Q_t=ja(X_t.prototype,"_techIndex",[lo],(function(){return 0})),W_t=X_t))||W_t)),mft=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RGBA32F),new T_(Uc.ATTR_TEX_COORD1,ec.RGB32F),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0)],gft=new gn,vft=new gn,yft=function(t){function e(){var e;return(e=t.call(this)||this)._capacity=void 0,e._vertSize=0,e._vBuffer=null,e._vertAttrsFloatCount=0,e._vdataF32=null,e._vdataUint32=null,e._subMeshData=null,e._vertCount=0,e._indexCount=0,e._material=null,e._iaVertCount=0,e._iaIndexCount=0,e.type=vR.LINE,e._capacity=100,e}s(e,t);var i=e.prototype;return i.setCapacity=function(t){this._capacity=t,this.createBuffer()},i.createBuffer=function(){this._vertSize=0;for(var t=0,e=mft;t<e.length;t++){var i=e[t];i.offset=this._vertSize,this._vertSize+=j_[i.format].size}this._vertAttrsFloatCount=this._vertSize/4,this._vBuffer=this.createSubMeshData(),this._vdataF32=new Float32Array(this._vBuffer),this._vdataUint32=new Uint32Array(this._vBuffer)},i.updateMaterial=function(e){this._material=e,t.prototype.setSubModelMaterial.call(this,0,e)},i.createSubMeshData=function(){this._subMeshData&&this.destroySubMeshData(),this._vertCount=2,this._indexCount=6;var t=this._device.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,this._vertSize*this._capacity*this._vertCount,this._vertSize)),e=new ArrayBuffer(this._vertSize*this._capacity*this._vertCount);t.update(e);for(var i=new Uint16Array((this._capacity-1)*this._indexCount),n=0,r=0;r<this._capacity-1;++r){var s=2*r;i[n++]=s,i[n++]=s+1,i[n++]=s+2,i[n++]=s+3,i[n++]=s+2,i[n++]=s+1}var a=this._device.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,(this._capacity-1)*this._indexCount*Uint16Array.BYTES_PER_ELEMENT,Uint16Array.BYTES_PER_ELEMENT));return a.update(i),this._iaVertCount=this._capacity*this._vertCount,this._iaIndexCount=(this._capacity-1)*this._indexCount,this._subMeshData=new FD([t],mft,wc.TRIANGLE_LIST,a),this.initSubModel(0,this._subMeshData,this._material),e},i.addLineVertexData=function(t,e,i){if(t.length>1){var n=0;gn.subtract(gft,t[1],t[0]),this._vdataF32[n++]=t[0].x,this._vdataF32[n++]=t[0].y,this._vdataF32[n++]=t[0].z,this._vdataF32[n++]=0,this._vdataF32[n++]=e.evaluate(0,1),this._vdataF32[n++]=0,this._vdataF32[n++]=0,this._vdataF32[n++]=gft.x,this._vdataF32[n++]=gft.y,this._vdataF32[n++]=gft.z,this._vdataUint32[n++]=En.toUint32(i.evaluate(0,1)),this._vdataF32[n++]=t[0].x,this._vdataF32[n++]=t[0].y,this._vdataF32[n++]=t[0].z,this._vdataF32[n++]=1,this._vdataF32[n++]=e.evaluate(0,1),this._vdataF32[n++]=0,this._vdataF32[n++]=1,this._vdataF32[n++]=gft.x,this._vdataF32[n++]=gft.y,this._vdataF32[n++]=gft.z,this._vdataUint32[n++]=En.toUint32(i.evaluate(0,1));for(var r=1;r<t.length-1;r++){gn.subtract(gft,t[r-1],t[r]),gn.subtract(vft,t[r+1],t[r]),gn.subtract(vft,vft,gft);var s=r/t.length;this._vdataF32[n++]=t[r].x,this._vdataF32[n++]=t[r].y,this._vdataF32[n++]=t[r].z,this._vdataF32[n++]=0,this._vdataF32[n++]=e.evaluate(s,1),this._vdataF32[n++]=s,this._vdataF32[n++]=0,this._vdataF32[n++]=vft.x,this._vdataF32[n++]=vft.y,this._vdataF32[n++]=vft.z,this._vdataUint32[n++]=En.toUint32(i.evaluate(s,1)),this._vdataF32[n++]=t[r].x,this._vdataF32[n++]=t[r].y,this._vdataF32[n++]=t[r].z,this._vdataF32[n++]=1,this._vdataF32[n++]=e.evaluate(s,1),this._vdataF32[n++]=s,this._vdataF32[n++]=1,this._vdataF32[n++]=vft.x,this._vdataF32[n++]=vft.y,this._vdataF32[n++]=vft.z,this._vdataUint32[n++]=En.toUint32(i.evaluate(s,1))}gn.subtract(gft,t[t.length-1],t[t.length-2]),this._vdataF32[n++]=t[t.length-1].x,this._vdataF32[n++]=t[t.length-1].y,this._vdataF32[n++]=t[t.length-1].z,this._vdataF32[n++]=0,this._vdataF32[n++]=e.evaluate(1,1),this._vdataF32[n++]=1,this._vdataF32[n++]=0,this._vdataF32[n++]=gft.x,this._vdataF32[n++]=gft.y,this._vdataF32[n++]=gft.z,this._vdataUint32[n++]=En.toUint32(i.evaluate(1,1)),this._vdataF32[n++]=t[t.length-1].x,this._vdataF32[n++]=t[t.length-1].y,this._vdataF32[n++]=t[t.length-1].z,this._vdataF32[n++]=1,this._vdataF32[n++]=e.evaluate(1,1),this._vdataF32[n++]=1,this._vdataF32[n++]=1,this._vdataF32[n++]=gft.x,this._vdataF32[n++]=gft.y,this._vdataF32[n++]=gft.z,this._vdataUint32[n++]=En.toUint32(i.evaluate(1,1))}this.updateIA(Math.max(0,t.length-1))},i.updateIA=function(t){var e=this._subModels[0].inputAssembler;e.vertexBuffers[0].update(this._vdataF32),e.firstIndex=0,e.indexCount=this._indexCount*t,e.vertexCount=this._iaVertCount},i.destroySubMeshData=function(){this._subMeshData&&(this._subMeshData.destroy(),this._subMeshData=null)},e}(RR),Sft=Ci.Attr.setClassAttr,Tft=[["mode","constant","multiplier"],["mode","spline","multiplier"],["mode","splineMin","splineMax","multiplier"],["mode","constantMin","constantMax","multiplier"]],Aft=Ee({Constant:0,Curve:1,TwoCurves:2,TwoConstants:3}),bft=t("eW",eo("cc.CurveRange")(((J_t=function(){function t(){this.constant=0,this.constantMin=0,this.constantMax=0,this.multiplier=1,this._mode=Aft.Constant}var e=t.prototype;return e.evaluate=function(t,e){switch(this._mode){default:case Aft.Constant:return this.constant;case Aft.Curve:return this.spline.evaluate(t)*this.multiplier;case Aft.TwoCurves:return Gi(this.splineMin.evaluate(t),this.splineMax.evaluate(t),e)*this.multiplier;case Aft.TwoConstants:return Gi(this.constantMin,this.constantMax,e)}},e.getMax=function(){switch(this._mode){default:case Aft.Constant:return this.constant;case Aft.Curve:return this.multiplier;case Aft.TwoConstants:return this.constantMax;case Aft.TwoCurves:return this.multiplier}},e.isZero=function(){switch(this._mode){default:case Aft.Constant:return Ni(this.constant,0,Oi);case Aft.Curve:return Ni(this.multiplier,0,Oi);case Aft.TwoConstants:return Ni(Math.max(Math.abs(this.constantMax),Math.abs(this.constantMin)),0,Oi);case Aft.TwoCurves:return Ni(this.multiplier,0,Oi)}},e._onBeforeSerialize=function(){return Tft[this._mode]},n(t,[{key:"mode",get:function(){return this._mode},set:function(t){switch(this._mode=t,t){case Aft.Constant:case Aft.TwoConstants:break;case Aft.Curve:this.spline||(this.spline=fl());break;case Aft.TwoCurves:this.splineMax||(this.splineMax=fl()),this.splineMin||(this.splineMin=fl())}}},{key:"curve",get:function(){var t;return null!==(t=this._curve)&&void 0!==t?t:this._curve=new ll(this.spline)},set:function(t){this._curve=t,this.spline=t._internalCurve}},{key:"curveMin",get:function(){var t;return null!==(t=this._curveMin)&&void 0!==t?t:this._curveMin=new ll(this.splineMin)},set:function(t){this._curveMin=t,this.splineMin=t._internalCurve}},{key:"curveMax",get:function(){var t;return null!==(t=this._curveMax)&&void 0!==t?t:this._curveMax=new ll(this.splineMax)},set:function(t){this._curveMax=t,this.splineMax=t._internalCurve}}]),t}()).Mode=Aft,Z_t=J_t))||Z_t);function Eft(t,e,i){switch(t.mode){case Aft.Constant:return t.constant;case Aft.Curve:return t.spline.evaluate(e)*t.multiplier;case Aft.TwoCurves:return 0===i?t.splineMin.evaluate(e)*t.multiplier:t.splineMax.evaluate(e)*t.multiplier;case Aft.TwoConstants:return 0===i?t.constantMin:t.constantMax;default:return 0}}function Cft(t){switch(t.mode){case Aft.TwoConstants:case Aft.TwoCurves:return 2;default:return 1}}function xft(t,e,i,n){return null===t||i!==t.width||n!==t.height?(t&&t.destroy(),t=function(t,e,i){var n=new Vd({width:e,height:i,_data:t,_compressed:!1,format:yd.RGBA32F}),r=new lm;return r.setFilters(Td.NEAREST,Td.NEAREST),r.setMipFilter(Td.NONE),r.setWrapMode(Sd.CLAMP_TO_EDGE,Sd.CLAMP_TO_EDGE,Sd.CLAMP_TO_EDGE),r.image=n,r}(e,i,n)):t.uploadData(e),t}function wft(t,e,i,n,r,s,a){var o=Math.max(Cft(n),Cft(r),Cft(s)),h=i*o*4;null!==e&&e.length===h||(e=new Float32Array(i*o*4));for(var u=[n,r,s],l=1/(i-1),c=0;c<o;c++)for(var _=0;_<3;_++)for(var f=u[_],d=0,p=0,m=0;m<i;m++){var g=Eft(f,l*m,c);p=a?g:(d+=g)/(m+1),e[4*(c*i+m)+_]=p}return{texture:xft(t,e,i,o),texdata:e}}Ci.fastDefine("cc.CurveRange",bft,{multiplier:1,constantMax:0,constantMin:0,constant:0,mode:Aft.Constant,splineMax:Object.freeze(fl()),splineMin:Object.freeze(fl()),spline:Object.freeze(fl())}),Sft(bft,"multiplier","visible",!0),Sft(bft,"constantMax","visible",!0),Sft(bft,"constantMin","visible",!0),Sft(bft,"constant","visible",!0),mi(bft,"mode",Aft),Sft(bft,"mode","visible",!0),Sft(bft,"splineMax","type","Object"),Sft(bft,"splineMax","ctor",su),Sft(bft,"splineMax","visible",!0),Sft(bft,"splineMin","type","Object"),Sft(bft,"splineMin","ctor",su),Sft(bft,"splineMin","visible",!0),Sft(bft,"spline","type","Object"),Sft(bft,"spline","ctor",su),Sft(bft,"spline","visible",!0);var Rft,Ift,Dft,Bft,Mft,Pft,Oft,Lft,Nft,Fft,kft,Gft,Vft,Uft,zft,Hft,Wft,Xft,jft,Yft,qft=Ee({Color:0,Gradient:1,TwoColors:2,TwoGradients:3,RandomColor:4}),Kft=new En,Qft=new En,Zft=t("eX",($_t=eo("cc.GradientRange"),tft=Lo(qft),eft=Lo(rl),ift=Lo(rl),nft=Lo(rl),rft=Lo(qft),$_t(((dft=function(){function t(){this.color=oft&&oft(),this.colorMin=hft&&hft(),this.colorMax=uft&&uft(),this.gradient=lft&&lft(),this.gradientMin=cft&&cft(),this.gradientMax=_ft&&_ft(),this._mode=fft&&fft(),this._color=En.WHITE.clone()}var e=t.prototype;return e.evaluate=function(t,e){switch(this._mode){case qft.Color:return this.color;case qft.TwoColors:return En.lerp(this._color,this.colorMin,this.colorMax,e),this._color;case qft.RandomColor:return this.gradient.getRandomColor(this._color);case qft.Gradient:return this.gradient.evaluateFast(this._color,t);case qft.TwoGradients:return En.lerp(this._color,this.gradientMin.evaluateFast(Kft,t),this.gradientMax.evaluateFast(Qft,t),e),this._color;default:return this.color}},e._onBeforeSerialize=function(){return(!1)[this._mode]},n(t,[{key:"mode",get:function(){return this._mode},set:function(t){this._mode=t}}]),t}()).Mode=qft,m((aft=dft).prototype,"mode",[tft],Object.getOwnPropertyDescriptor(aft.prototype,"mode"),aft.prototype),oft=ja(aft.prototype,"color",[lo],(function(){return En.WHITE.clone()})),hft=ja(aft.prototype,"colorMin",[lo],(function(){return En.WHITE.clone()})),uft=ja(aft.prototype,"colorMax",[lo],(function(){return En.WHITE.clone()})),lft=ja(aft.prototype,"gradient",[eft],(function(){return new rl})),cft=ja(aft.prototype,"gradientMin",[ift],(function(){return new rl})),_ft=ja(aft.prototype,"gradientMax",[nft],(function(){return new rl})),fft=ja(aft.prototype,"_mode",[rft],(function(){return qft.Color})),sft=aft))||sft));function Jft(t,e,i){switch(t.mode){case qft.Color:return t.color;case qft.TwoColors:return 0===i?t.colorMin:t.colorMax;case qft.RandomColor:return t.gradient.getRandomColor(Kft);case qft.Gradient:return t.gradient.evaluateFast(Kft,e);case qft.TwoGradients:return 0===i?t.gradientMin.evaluateFast(Kft,e):t.gradientMax.evaluateFast(Kft,e);default:return t.color}}var $ft={CC_USE_WORLD_SPACE:!1,CC_USE_WORLD_SCALE:!0},tdt=t("eT",(Rft=eo("cc.Line"),Ift=Lo(lm),Dft=Lo(lm),Bft=Lo(zT),Mft=Lo([gn]),Pft=Lo([gn]),Oft=Lo(bft),Lft=Lo(Zft),Nft=Lo(jn),Fft=Lo(jn),Rft((Gft=function(t){function e(){var e;return(e=t.call(this)||this)._texture=Vft&&Vft(),e._material=Uft&&Uft(),e._worldSpace=zft&&zft(),e._positions=Hft&&Hft(),e._width=Wft&&Wft(),e._color=Xft&&Xft(),e._tile=jft&&jft(),e._tile_offset=new cn,e._offset=Yft&&Yft(),e}s(e,t);var i=e.prototype;return i.onLoad=function(){var t=S.director.root.createModel(yft);if(0===this._models.length?this._models.push(t):this._models[0]=t,t.node=t.transform=this.node,this._material&&(this.lineMaterial=this._material,this._material=null),null===this.lineMaterial){var e=bT.get("default-trail-material");this.material=e}var i=this.getMaterialInstance(0);i&&($ft.CC_USE_WORLD_SPACE=this.worldSpace,i.recompileShaders($ft),t.updateMaterial(i)),t.setCapacity(100)},i.onEnable=function(){t.prototype.onEnable.call(this),0!==this._models.length&&this._models[0]&&(this._attachToScene(),this.texture=this._texture,this.tile=this._tile,this.offset=this._offset,this._models[0].addLineVertexData(this._positions,this.width,this.color))},i.onDisable=function(){this._models.length>0&&this._models[0]&&this._detachFromScene()},i._attachToScene=function(){if(t.prototype._attachToScene.call(this),this._models.length>0&&this._models[0]&&this.node&&this.node.scene){var e=this._models[0];e.scene&&this._detachFromScene(),this._getRenderScene().addModel(e)}},i._detachFromScene=function(){if(t.prototype._detachFromScene.call(this),this._models.length>0&&this._models[0]){var e=this._models[0];e.scene&&e.scene.removeModel(e)}},i._onMaterialModified=function(e,i){t.prototype._onMaterialModified.call(this,e,i);var n=this.getMaterialInstance(0);n&&($ft.CC_USE_WORLD_SPACE=this.worldSpace,n.recompileShaders($ft),this._models[0]&&this._models[0].updateMaterial(n))},n(e,[{key:"texture",get:function(){return this._texture},set:function(t){this._texture=t,this.material&&this.material.setProperty("mainTexture",t)}},{key:"lineMaterial",get:function(){return this.getSharedMaterial(0)},set:function(t){this.setSharedMaterial(t,0)}},{key:"sharedMaterials",get:function(){return t.prototype.sharedMaterials},set:function(t){this.sharedMaterials=t}},{key:"worldSpace",get:function(){return this._worldSpace},set:function(t){this._worldSpace=t;var e=this.getMaterialInstance(0);e&&($ft.CC_USE_WORLD_SPACE=this.worldSpace,e.recompileShaders($ft),this._models[0]&&this._models[0].setSubModelMaterial(0,e))}},{key:"positions",get:function(){return this._positions},set:function(t){this._positions=t,this._models[0]&&this._models[0].addLineVertexData(this._positions,this.width,this.color)}},{key:"width",get:function(){return this._width},set:function(t){this._width=t,this._models[0]&&this._models[0].addLineVertexData(this._positions,this._width,this._color)}},{key:"color",get:function(){return this._color},set:function(t){this._color=t,this._models[0]&&this._models[0].addLineVertexData(this._positions,this._width,this._color)}},{key:"tile",get:function(){return this._tile},set:function(t){this._tile.set(t),this.material&&(this._tile_offset.x=this._tile.x,this._tile_offset.y=this._tile.y,this.material.setProperty("mainTiling_Offset",this._tile_offset))}},{key:"offset",get:function(){return this._offset},set:function(t){this._offset.set(t),this.material&&(this._tile_offset.z=this._offset.x,this._tile_offset.w=this._offset.y,this.material.setProperty("mainTiling_Offset",this._tile_offset))}}]),e}(EG),Vft=ja(Gft.prototype,"_texture",[Ift],(function(){return null})),m(Gft.prototype,"texture",[Dft],Object.getOwnPropertyDescriptor(Gft.prototype,"texture"),Gft.prototype),Uft=ja(Gft.prototype,"_material",[lo],(function(){return null})),m(Gft.prototype,"lineMaterial",[Bft],Object.getOwnPropertyDescriptor(Gft.prototype,"lineMaterial"),Gft.prototype),m(Gft.prototype,"sharedMaterials",[jo,lo],Object.getOwnPropertyDescriptor(Gft.prototype,"sharedMaterials"),Gft.prototype),zft=ja(Gft.prototype,"_worldSpace",[lo],(function(){return!1})),Hft=ja(Gft.prototype,"_positions",[Mft],(function(){return[]})),m(Gft.prototype,"positions",[Pft],Object.getOwnPropertyDescriptor(Gft.prototype,"positions"),Gft.prototype),m(Gft.prototype,"width",[Oft],Object.getOwnPropertyDescriptor(Gft.prototype,"width"),Gft.prototype),Wft=ja(Gft.prototype,"_width",[lo],(function(){return new bft})),m(Gft.prototype,"color",[Lft],Object.getOwnPropertyDescriptor(Gft.prototype,"color"),Gft.prototype),Xft=ja(Gft.prototype,"_color",[lo],(function(){return new Zft})),jft=ja(Gft.prototype,"_tile",[lo],(function(){return new jn(1,1)})),m(Gft.prototype,"tile",[Nft],Object.getOwnPropertyDescriptor(Gft.prototype,"tile"),Gft.prototype),Yft=ja(Gft.prototype,"_offset",[lo],(function(){return new jn(0,0)})),m(Gft.prototype,"offset",[Fft],Object.getOwnPropertyDescriptor(Gft.prototype,"offset"),Gft.prototype),kft=Gft))||kft)),edt=function(){function t(t){this.particleSystem=void 0,this.position=void 0,this.velocity=void 0,this.animatedVelocity=void 0,this.ultimateVelocity=void 0,this.angularVelocity=void 0,this.axisOfRotation=void 0,this.rotation=void 0,this.startEuler=void 0,this.startRotation=void 0,this.startRotated=void 0,this.deltaQuat=void 0,this.deltaMat=void 0,this.localMat=void 0,this.startSize=void 0,this.size=void 0,this.startColor=void 0,this.color=void 0,this.randomSeed=void 0,this.remainingLifetime=void 0,this.loopCount=void 0,this.lastLoop=void 0,this.trailDelay=void 0,this.startLifetime=void 0,this.emitAccumulator0=void 0,this.emitAccumulator1=void 0,this.frameIndex=void 0,this.startRow=void 0,this.particleSystem=t,this.position=new gn(0,0,0),this.velocity=new gn(0,0,0),this.animatedVelocity=new gn(0,0,0),this.ultimateVelocity=new gn(0,0,0),this.angularVelocity=new gn(0,0,0),this.axisOfRotation=new gn(0,0,0),this.rotation=new gn(0,0,0),this.startEuler=new gn(0,0,0),this.startRotation=new Bn,this.startRotated=!1,this.deltaQuat=new Bn,this.deltaMat=new Vn,this.localMat=new Vn,this.startSize=new gn(0,0,0),this.size=new gn(0,0,0),this.startColor=En.WHITE.clone(),this.color=En.WHITE.clone(),this.randomSeed=0,this.remainingLifetime=0,this.loopCount=0,this.lastLoop=0,this.trailDelay=0,this.startLifetime=0,this.emitAccumulator0=0,this.emitAccumulator1=0,this.frameIndex=0,this.startRow=0}return t.prototype.reset=function(){this.rotation.set(0,0,0),this.startEuler.set(0,0,0),this.startRotation.set(0,0,0,1),this.startRotated=!1,this.deltaQuat.set(0,0,0,1),this.deltaMat.identity(),this.localMat.identity()},t}();edt.INDENTIFY_NEG_QUAT=10,edt.R2D=180/Math.PI;var idt,ndt,rdt,sdt,adt,odt,hdt="colorModule",udt="rotationModule",ldt="sizeModule",cdt="textureModule",_dt="noiseModule",fdt=["sizeModule","colorModule","forceModule","velocityModule","limitModule","rotationModule","textureModule","noiseModule"],ddt=["_colorOverLifetimeModule","_shapeModule","_sizeOvertimeModule","_velocityOvertimeModule","_forceOvertimeModule","_limitVelocityOvertimeModule","_rotationOvertimeModule","_textureAnimationModule","_noiseModule","_trailModule"],pdt=function(){function t(){this.target=null,this.needUpdate=!1,this.needAnimate=!0,this.name=void 0}var e=t.prototype;return e.bindTarget=function(t){this.target=t},e.update=function(){},t}(),mdt=Ee({World:0,Local:1,Custom:2}),gdt=Ee({Pause:0,PauseAndCatchup:1,AlwaysSimulate:2}),vdt=Ee({World:0,Local:1,View:2}),ydt=Ee({Billboard:0,StrecthedBillboard:1,HorizontalBillboard:2,VerticalBillboard:3,Mesh:4}),Sdt=Ee({Box:0,Circle:1,Cone:2,Sphere:3,Hemisphere:4}),Tdt=Ee({Base:0,Edge:1,Shell:2,Volume:3}),Adt=Ee({Random:0,Loop:1,PingPong:2}),bdt=Ee({Particles:0}),Edt=Ee({Stretch:0}),Cdt=new gn(0,0,-1);function xdt(t,e,i,n){return e!==t?(t===mdt.World||Vn.invert(i,i),Vn.getRotation(n,i),!0):(Bn.set(n,0,0,0,1),!1)}function wdt(t,e){jn.set(t,Math.cos(e),Math.sin(e))}function Rdt(t){var e=Wi(-1,1),i=Wi(0,2*Math.PI),n=Math.sqrt(1-e*e),r=n*Math.cos(i),s=n*Math.sin(i);gn.set(t,r,s,e)}function Idt(t,e,i){Rdt(t),gn.multiplyScalar(t,t,e+(i-e)*zi())}function Ddt(t,e,i,n){wdt(t,n),t.z=0,gn.multiplyScalar(t,t,e+(i-e)*zi())}function Bdt(t){for(var e=0;e<t.length;e++){var i=e+Xi(0,t.length-e),n=t[i];t[i]=t[e],t[e]=n}}function Mdt(){var t=Wi(-1,1);return 0===t&&t++,E(t)}function Pdt(t){var e=bft.Mode;switch(t.mode){case e.TwoCurves:case e.TwoConstants:return!0;default:return!1}}var Odt,Ldt,Ndt,Fdt,kdt,Gdt,Vdt,Udt,zdt,Hdt,Wdt,Xdt,jdt,Ydt,qdt,Kdt,Qdt,Zdt,Jdt,$dt,tpt,ept,ipt,npt,rpt,spt,apt,opt,hpt,upt,lpt,cpt,_pt,fpt,dpt,ppt,mpt,gpt,vpt,ypt=(idt=eo("cc.ColorOvertimeModule"),ndt=Lo(Zft),idt((sdt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._enable=adt&&adt(),e.color=odt&&odt(),e.name=hdt,e}return s(e,t),e.prototype.animate=function(t){t.color.set(t.startColor);var e=function(t){var e=Zft.Mode;switch(t.mode){case e.TwoGradients:case e.TwoColors:return!0;default:return!1}}(this.color)?ji(t.randomSeed+91041):0;t.color.multiply(this.color.evaluate(1-t.remainingLifetime/t.startLifetime,e))},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable!==t&&(this._enable=t,this.target&&this.target.enableModule(this.name,t,this))}}]),e}(pdt),adt=ja(sdt.prototype,"_enable",[lo],(function(){return!1})),odt=ja(sdt.prototype,"color",[ndt,lo],(function(){return new Zft})),rdt=sdt))||rdt),Spt=212165,Tpt=new gn,Apt=(Odt=eo("cc.ForceOvertimeModule"),Ldt=Lo(bft),Ndt=Lo(bft),Fdt=Lo(bft),kdt=Lo(mdt),Odt((Vdt=function(t){function e(){var e;return(e=t.call(this)||this)._enable=Udt&&Udt(),e.x=zdt&&zdt(),e.y=Hdt&&Hdt(),e.z=Wdt&&Wdt(),e.space=Xdt&&Xdt(),e.randomized=!1,e.rotation=void 0,e.needTransform=void 0,e.name="forceModule",e.rotation=new Bn,e.needTransform=!1,e.needUpdate=!0,e}s(e,t);var i=e.prototype;return i.update=function(t,e){this.needTransform=xdt(t,this.space,e,this.rotation)},i.animate=function(t,e){var i=1-t.remainingLifetime/t.startLifetime,n=Pdt(this.x)?ji(t.randomSeed+Spt):0,r=Pdt(this.y)?ji(t.randomSeed+Spt):0,s=Pdt(this.z)?ji(t.randomSeed+Spt):0,a=gn.set(Tpt,this.x.evaluate(i,n),this.y.evaluate(i,r),this.z.evaluate(i,s));this.needTransform&&gn.transformQuat(a,a,this.rotation),gn.scaleAndAdd(t.velocity,t.velocity,a,e),gn.copy(t.ultimateVelocity,t.velocity)},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable!==t&&(this._enable=t,this.target&&this.target.enableModule(this.name,t,this))}}]),e}(pdt),Udt=ja(Vdt.prototype,"_enable",[lo],(function(){return!1})),zdt=ja(Vdt.prototype,"x",[Ldt,lo],(function(){return new bft})),Hdt=ja(Vdt.prototype,"y",[Ndt,lo],(function(){return new bft})),Wdt=ja(Vdt.prototype,"z",[Fdt,lo],(function(){return new bft})),Xdt=ja(Vdt.prototype,"space",[kdt,lo],(function(){return mdt.Local})),Gdt=Vdt))||Gdt),bpt=23541,Ept=new gn,Cpt=new gn,xpt=(jdt=eo("cc.LimitVelocityOvertimeModule"),Ydt=Lo(bft),qdt=Lo(bft),Kdt=Lo(bft),Qdt=Lo(bft),Zdt=Lo(mdt),jdt(($dt=function(t){function e(){var e;return(e=t.call(this)||this)._enable=tpt&&tpt(),e.limitX=ept&&ept(),e.limitY=ipt&&ipt(),e.limitZ=npt&&npt(),e.limit=rpt&&rpt(),e.dampen=spt&&spt(),e.separateAxes=apt&&apt(),e.space=opt&&opt(),e.drag=null,e.multiplyDragByParticleSize=!1,e.multiplyDragByParticleVelocity=!1,e.name="limitModule",e.rotation=void 0,e.needTransform=void 0,e.rotation=new Bn,e.needTransform=!1,e.needUpdate=!0,e}s(e,t);var i=e.prototype;return i.update=function(t,e){this.needTransform=xdt(t,this.space,e,this.rotation)},i.animate=function(t){var e=1-t.remainingLifetime/t.startLifetime,i=Ept;if(this.separateAxes){var n=Pdt(this.limitX)?ji(t.randomSeed+bpt):0,r=Pdt(this.limitY)?ji(t.randomSeed+bpt):0,s=Pdt(this.limitZ)?ji(t.randomSeed+bpt):0;gn.set(Cpt,this.limitX.evaluate(e,n),this.limitY.evaluate(e,r),this.limitZ.evaluate(e,s)),this.needTransform&&gn.transformQuat(Cpt,Cpt,this.rotation),gn.set(i,wpt(t.ultimateVelocity.x,Cpt.x,this.dampen),wpt(t.ultimateVelocity.y,Cpt.y,this.dampen),wpt(t.ultimateVelocity.z,Cpt.z,this.dampen))}else{gn.normalize(i,t.ultimateVelocity);var a=Pdt(this.limit)?ji(t.randomSeed+bpt):0;gn.multiplyScalar(i,i,wpt(t.ultimateVelocity.length(),this.limit.evaluate(e,a),this.dampen))}gn.copy(t.ultimateVelocity,i),gn.copy(t.velocity,t.ultimateVelocity)},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable!==t&&(this._enable=t,this.target&&this.target.enableModule(this.name,t,this))}}]),e}(pdt),tpt=ja($dt.prototype,"_enable",[lo],(function(){return!1})),ept=ja($dt.prototype,"limitX",[Ydt,lo],(function(){return new bft})),ipt=ja($dt.prototype,"limitY",[qdt,lo],(function(){return new bft})),npt=ja($dt.prototype,"limitZ",[Kdt,lo],(function(){return new bft})),rpt=ja($dt.prototype,"limit",[Qdt,lo],(function(){return new bft})),spt=ja($dt.prototype,"dampen",[lo],(function(){return 3})),apt=ja($dt.prototype,"separateAxes",[lo],(function(){return!1})),opt=ja($dt.prototype,"space",[Zdt,lo],(function(){return mdt.Local})),Jdt=$dt))||Jdt);function wpt(t,e,i){var n=Math.sign(t),r=Math.abs(t);if(r>e){var s=r-r*i;r=s>e?s:e}return r*n}var Rpt,Ipt,Dpt,Bpt,Mpt,Ppt,Opt,Lpt,Npt,Fpt,kpt,Gpt,Vpt,Upt,zpt,Hpt,Wpt,Xpt,jpt,Ypt,qpt,Kpt,Qpt,Zpt,Jpt,$pt,tmt,emt,imt,nmt,rmt,smt,amt,omt,hmt,umt,lmt,cmt,_mt,fmt,dmt,pmt,mmt,gmt,vmt,ymt,Smt,Tmt,Amt,bmt,Emt,Cmt,xmt,wmt,Rmt,Imt,Dmt,Bmt,Mmt,Pmt,Omt,Lmt,Nmt,Fmt,kmt,Gmt,Vmt,Umt,zmt,Hmt,Wmt,Xmt,jmt,Ymt,qmt,Kmt,Qmt,Zmt,Jmt,$mt,tgt,egt,igt,ngt,rgt,sgt,agt=125292,ogt=(hpt=eo("cc.RotationOvertimeModule"),upt=Lo(bft),lpt=Lo(bft),cpt=Lo(bft),hpt((fpt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._enable=dpt&&dpt(),e._separateAxes=ppt&&ppt(),e.x=mpt&&mpt(),e.y=gpt&&gpt(),e.z=vpt&&vpt(),e.name=udt,e._startMat=new Vn,e._matRot=new Vn,e._quatRot=new Bn,e._otherEuler=new gn,e}s(e,t);var i=e.prototype;return i._processRotation=function(t){var e=t.particleSystem.processor.getInfo().renderMode;e!==ydt.Mesh&&e===ydt.StrecthedBillboard&&this._quatRot.set(0,0,0,1),Bn.normalize(this._quatRot,this._quatRot),this._quatRot.w<0&&(this._quatRot.x+=edt.INDENTIFY_NEG_QUAT)},i.animate=function(t,e){var i=1-t.remainingLifetime/t.startLifetime,n=Pdt(this.z)?ji(t.randomSeed+agt):0,r=t.particleSystem.processor.getInfo().renderMode;if(this._separateAxes&&r!==ydt.VerticalBillboard&&r!==ydt.HorizontalBillboard){var s=Pdt(this.x)?ji(t.randomSeed+agt):0,a=Pdt(this.y)?ji(t.randomSeed+agt):0;Bn.fromEuler(t.deltaQuat,this.x.evaluate(i,s)*e*edt.R2D,this.y.evaluate(i,a)*e*edt.R2D,this.z.evaluate(i,n)*e*edt.R2D)}else Bn.fromEuler(t.deltaQuat,0,0,this.z.evaluate(i,n)*e*edt.R2D);t.deltaMat=Vn.fromQuat(t.deltaMat,t.deltaQuat),t.localMat=t.localMat.multiply(t.deltaMat),t.startRotated||(r!==ydt.Mesh&&(r===ydt.StrecthedBillboard?t.startEuler.set(0,0,0):r!==ydt.Billboard&&t.startEuler.set(0,0,t.startEuler.z)),Bn.fromEuler(t.startRotation,t.startEuler.x*edt.R2D,t.startEuler.y*edt.R2D,t.startEuler.z*edt.R2D),t.startRotated=!0),this._startMat=Vn.fromQuat(this._startMat,t.startRotation),this._matRot=this._startMat.multiply(t.localMat),Vn.getRotation(this._quatRot,this._matRot),this._processRotation(t,edt.R2D),t.rotation.set(this._quatRot.x,this._quatRot.y,this._quatRot.z)},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable!==t&&(this._enable=t,this.target&&this.target.enableModule(this.name,t,this))}},{key:"separateAxes",get:function(){return this._separateAxes},set:function(t){this._separateAxes=t}}]),e}(pdt),dpt=ja(fpt.prototype,"_enable",[lo],(function(){return!1})),ppt=ja(fpt.prototype,"_separateAxes",[lo],(function(){return!1})),mpt=ja(fpt.prototype,"x",[upt,lo],(function(){return new bft})),gpt=ja(fpt.prototype,"y",[lpt,lo],(function(){return new bft})),vpt=ja(fpt.prototype,"z",[cpt,lo],(function(){return new bft})),_pt=fpt))||_pt),hgt=39825,ugt=(Rpt=eo("cc.SizeOvertimeModule"),Ipt=Lo(bft),Dpt=Lo(bft),Bpt=Lo(bft),Mpt=Lo(bft),Rpt((Opt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._enable=Lpt&&Lpt(),e.separateAxes=Npt&&Npt(),e.size=Fpt&&Fpt(),e.x=kpt&&kpt(),e.y=Gpt&&Gpt(),e.z=Vpt&&Vpt(),e.name=ldt,e}return s(e,t),e.prototype.animate=function(t){if(this.separateAxes){var e=1-t.remainingLifetime/t.startLifetime,i=Pdt(this.x)?ji(t.randomSeed+hgt):0,n=Pdt(this.y)?ji(t.randomSeed+hgt):0,r=Pdt(this.z)?ji(t.randomSeed+hgt):0;t.size.x=t.startSize.x*this.x.evaluate(e,i),t.size.y=t.startSize.y*this.y.evaluate(e,n),t.size.z=t.startSize.z*this.z.evaluate(e,r)}else{var s=Pdt(this.size)?ji(t.randomSeed+hgt):0;gn.multiplyScalar(t.size,t.startSize,this.size.evaluate(1-t.remainingLifetime/t.startLifetime,s))}},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable!==t&&(this._enable=t,this.target&&this.target.enableModule(this.name,t,this))}}]),e}(pdt),Lpt=ja(Opt.prototype,"_enable",[lo],(function(){return!1})),Npt=ja(Opt.prototype,"separateAxes",[lo],(function(){return!1})),Fpt=ja(Opt.prototype,"size",[Ipt,lo],(function(){return new bft})),kpt=ja(Opt.prototype,"x",[Dpt,lo],(function(){return new bft})),Gpt=ja(Opt.prototype,"y",[Bpt,lo],(function(){return new bft})),Vpt=ja(Opt.prototype,"z",[Mpt,lo],(function(){return new bft})),Ppt=Opt))||Ppt),lgt=Ee({Grid:0}),cgt=Ee({WholeSheet:0,SingleRow:1}),_gt=(Upt=eo("cc.TextureAnimationModule"),zpt=co("numTilesX"),Hpt=co("numTilesY"),Wpt=Lo(lgt),Xpt=Lo(lgt),jpt=Lo(cgt),Ypt=Lo(bft),qpt=Lo(bft),Upt((Qpt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._enable=Zpt&&Zpt(),e._numTilesX=Jpt&&Jpt(),e._numTilesY=$pt&&$pt(),e._mode=tmt&&tmt(),e.animation=emt&&emt(),e.frameOverTime=imt&&imt(),e.startFrame=nmt&&nmt(),e.cycleCount=rmt&&rmt(),e._flipU=smt&&smt(),e._flipV=amt&&amt(),e._uvChannelMask=omt&&omt(),e.randomRow=hmt&&hmt(),e.rowIndex=umt&&umt(),e.name=cdt,e}s(e,t);var i=e.prototype;return i.init=function(t){t.startRow=Math.floor(zi()*this.numTilesY)},i.animate=function(t){var e=1-t.remainingLifetime/t.startLifetime,i=Pdt(this.startFrame)?ji(t.randomSeed+90794):0,n=Pdt(this.frameOverTime)?ji(t.randomSeed+90794):0,r=this.startFrame.evaluate(e,i)/(this.numTilesX*this.numTilesY);if(this.animation===cgt.WholeSheet)t.frameIndex=Qi(this.cycleCount*(this.frameOverTime.evaluate(e,n)+r),1);else if(this.animation===cgt.SingleRow){var s=1/this.numTilesY;if(this.randomRow){var a=Qi(this.cycleCount*(this.frameOverTime.evaluate(e,n)+r),1),o=t.startRow*s,h=o+s;t.frameIndex=Gi(o,h,a)}else{var u=this.rowIndex*s,l=u+s;t.frameIndex=Gi(u,l,Qi(this.cycleCount*(this.frameOverTime.evaluate(e,n)+r),1))}}},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable!==t&&(this._enable=t,this.target&&(this.target.updateMaterialParams(),this.target.enableModule(this.name,t,this)))}},{key:"mode",get:function(){return this._mode},set:function(t){t!==lgt.Grid&&H("particle texture animation's sprites is not supported!")}},{key:"numTilesX",get:function(){return this._numTilesX},set:function(t){this._numTilesX!==t&&(this._numTilesX=t,this.target.updateMaterialParams())}},{key:"numTilesY",get:function(){return this._numTilesY},set:function(t){this._numTilesY!==t&&(this._numTilesY=t,this.target.updateMaterialParams())}},{key:"flipU",get:function(){return this._flipU},set:function(){H("particle texture animation's flipU is not supported!")}},{key:"flipV",get:function(){return this._flipV},set:function(){H("particle texture animation's flipV is not supported!")}},{key:"uvChannelMask",get:function(){return this._uvChannelMask},set:function(){H("particle texture animation's uvChannelMask is not supported!")}}]),e}(pdt),Zpt=ja(Qpt.prototype,"_enable",[lo],(function(){return!1})),Jpt=ja(Qpt.prototype,"_numTilesX",[zpt],(function(){return 0})),$pt=ja(Qpt.prototype,"_numTilesY",[Hpt],(function(){return 0})),tmt=ja(Qpt.prototype,"_mode",[Wpt],(function(){return lgt.Grid})),m(Qpt.prototype,"mode",[Xpt],Object.getOwnPropertyDescriptor(Qpt.prototype,"mode"),Qpt.prototype),emt=ja(Qpt.prototype,"animation",[jpt,lo],(function(){return cgt.WholeSheet})),imt=ja(Qpt.prototype,"frameOverTime",[Ypt,lo],(function(){return new bft})),nmt=ja(Qpt.prototype,"startFrame",[qpt,lo],(function(){return new bft})),rmt=ja(Qpt.prototype,"cycleCount",[lo],(function(){return 0})),smt=ja(Qpt.prototype,"_flipU",[lo],(function(){return 0})),amt=ja(Qpt.prototype,"_flipV",[lo],(function(){return 0})),omt=ja(Qpt.prototype,"_uvChannelMask",[lo],(function(){return-1})),hmt=ja(Qpt.prototype,"randomRow",[lo],(function(){return!1})),umt=ja(Qpt.prototype,"rowIndex",[lo],(function(){return 0})),Kpt=Qpt))||Kpt),fgt=197866,dgt=new gn,pgt=(lmt=eo("cc.VelocityOvertimeModule"),cmt=Lo(bft),_mt=Lo(bft),fmt=Lo(bft),dmt=Lo(bft),pmt=Lo(mdt),lmt((gmt=function(t){function e(){var e;return(e=t.call(this)||this)._enable=vmt&&vmt(),e.x=ymt&&ymt(),e.y=Smt&&Smt(),e.z=Tmt&&Tmt(),e.speedModifier=Amt&&Amt(),e.space=bmt&&bmt(),e.rotation=void 0,e.needTransform=void 0,e.name="velocityModule",e.rotation=new Bn,e.speedModifier.constant=1,e.needTransform=!1,e.needUpdate=!0,e}s(e,t);var i=e.prototype;return i.update=function(t,e){this.needTransform=xdt(t,this.space,e,this.rotation)},i.animate=function(t){var e=1-t.remainingLifetime/t.startLifetime,i=Pdt(this.x)?ji(t.randomSeed^fgt):0,n=Pdt(this.y)?ji(156497^t.randomSeed):0,r=Pdt(this.z)?ji(984136^t.randomSeed):0,s=Pdt(this.speedModifier)?ji(t.randomSeed+fgt):0,a=gn.set(dgt,this.x.evaluate(e,i),this.y.evaluate(e,n),this.z.evaluate(e,r));this.needTransform&&gn.transformQuat(a,a,this.rotation),gn.add(t.animatedVelocity,t.animatedVelocity,a),gn.add(t.ultimateVelocity,t.velocity,t.animatedVelocity),gn.multiplyScalar(t.ultimateVelocity,t.ultimateVelocity,this.speedModifier.evaluate(1-t.remainingLifetime/t.startLifetime,s))},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable!==t&&(this._enable=t,this.target&&this.target.enableModule(this.name,t,this))}}]),e}(pdt),vmt=ja(gmt.prototype,"_enable",[lo],(function(){return!1})),ymt=ja(gmt.prototype,"x",[cmt,lo],(function(){return new bft})),Smt=ja(gmt.prototype,"y",[_mt,lo],(function(){return new bft})),Tmt=ja(gmt.prototype,"z",[fmt,lo],(function(){return new bft})),Amt=ja(gmt.prototype,"speedModifier",[dmt,lo],(function(){return new bft})),bmt=ja(gmt.prototype,"space",[pmt,lo],(function(){return mdt.Local})),mmt=gmt))||mmt),mgt=t("eY",(Emt=eo("cc.Burst"),Cmt=Lo(bft),Emt((wmt=function(){function t(){this._time=Rmt&&Rmt(),this._repeatCount=Imt&&Imt(),this.repeatInterval=Dmt&&Dmt(),this.count=Bmt&&Bmt(),this._remainingCount=void 0,this._curTime=void 0,this._remainingCount=0,this._curTime=0}var e=t.prototype;return e.update=function(t,e){if(0===this._remainingCount&&(this._remainingCount=this._repeatCount,this._curTime=this._time),this._remainingCount>0){var i=Qi(t.time-t.startDelay.evaluate(0,1),t.duration)-e;i=i>0?i:0;var n=Qi(t.time-t.startDelay.evaluate(0,1),t.duration);this._curTime>=i&&this._curTime<n&&(t.emit(this.count.evaluate(this._curTime/t.duration,1),e-(n-this._curTime)),this._curTime+=this.repeatInterval,--this._remainingCount)}},e.reset=function(){this._remainingCount=0,this._curTime=0},e.getMaxCount=function(t){return this.count.getMax()*Math.min(Math.ceil(t.duration/this.repeatInterval),this.repeatCount)},n(t,[{key:"time",get:function(){return this._time},set:function(t){this._time=t,this._curTime=t}},{key:"repeatCount",get:function(){return this._repeatCount},set:function(t){this._repeatCount=t,this._remainingCount=t}}]),t}(),Rmt=ja(wmt.prototype,"_time",[lo],(function(){return 0})),Imt=ja(wmt.prototype,"_repeatCount",[lo],(function(){return 1})),Dmt=ja(wmt.prototype,"repeatInterval",[lo],(function(){return 1})),Bmt=ja(wmt.prototype,"count",[Cmt,lo],(function(){return new bft})),xmt=wmt))||xmt)),ggt=new gn(0,0,0),vgt=[0,0,0],ygt=new gn(.5,.5,.5),Sgt=(Mmt=eo("cc.ShapeModule"),Pmt=Lo(Sdt),Omt=co("shapeType"),Lmt=Lo(Sdt),Nmt=Lo(Tdt),Fmt=Lo(Adt),kmt=Lo(bft),Mmt((Vmt=function(){function t(){this._enable=Umt&&Umt(),this._shapeType=zmt&&zmt(),this.emitFrom=Hmt&&Hmt(),this.alignToDirection=Wmt&&Wmt(),this.randomDirectionAmount=Xmt&&Xmt(),this.sphericalDirectionAmount=jmt&&jmt(),this.randomPositionAmount=Ymt&&Ymt(),this.radius=qmt&&qmt(),this.radiusThickness=Kmt&&Kmt(),this.arcMode=Qmt&&Qmt(),this.arcSpread=Zmt&&Zmt(),this.arcSpeed=Jmt&&Jmt(),this.length=$mt&&$mt(),this.boxThickness=tgt&&tgt(),this._position=egt&&egt(),this._rotation=igt&&igt(),this._scale=ngt&&ngt(),this._arc=rgt&&rgt(),this._angle=sgt&&sgt(),this.mat=new Vn,this.quat=new Bn,this.particleSystem=null,this.lastTime=0,this.totalAngle=0}var e=t.prototype;return e.onInit=function(t){this.particleSystem=t,this.constructMat(),this.lastTime=this.particleSystem.time},e.emit=function(t){switch(this.shapeType){case Sdt.Box:!function(t,e,i,n){switch(t){case Tdt.Volume:r=i,s=ygt,gn.set(r,Wi(-s.x,s.x),Wi(-s.y,s.y),Wi(-s.z,s.z));break;case Tdt.Shell:vgt[0]=Wi(-.5,.5),vgt[1]=Wi(-.5,.5),vgt[2]=.5*Mdt(),Bdt(vgt),Tgt(vgt,e),gn.set(i,vgt[0],vgt[1],vgt[2]);break;case Tdt.Edge:vgt[0]=Wi(-.5,.5),vgt[1]=.5*Mdt(),vgt[2]=.5*Mdt(),Bdt(vgt),Tgt(vgt,e),gn.set(i,vgt[0],vgt[1],vgt[2]);break;default:z(t+" is not supported for box emitter.")}var r,s;gn.copy(n,Cdt)}(this.emitFrom,this.boxThickness,t.position,t.velocity);break;case Sdt.Circle:!function(t,e,i,n,r){Ddt(n,t*(1-e),t,i),gn.normalize(r,n)}(this.radius,this.radiusThickness,this.generateArcAngle(),t.position,t.velocity);break;case Sdt.Cone:!function(t,e,i,n,r,s,a,o){switch(t){case Tdt.Base:Ddt(a,e*(1-i),e,n),jn.multiplyScalar(o,a,Math.sin(r)),o.z=-Math.cos(r)*e,gn.normalize(o,o),a.z=0;break;case Tdt.Shell:wdt(a,n),jn.multiplyScalar(o,a,Math.sin(r)),o.z=-Math.cos(r),gn.normalize(o,o),jn.multiplyScalar(a,a,e),a.z=0;break;case Tdt.Volume:Ddt(a,e*(1-i),e,n),jn.multiplyScalar(o,a,Math.sin(r)),o.z=-Math.cos(r)*e,gn.normalize(o,o),a.z=0,gn.add(a,a,gn.multiplyScalar(ggt,o,s*zi()/-o.z));break;default:z(t+" is not supported for cone emitter.")}}(this.emitFrom,this.radius,this.radiusThickness,this.generateArcAngle(),this._angle,this.length,t.position,t.velocity);break;case Sdt.Sphere:!function(t,e,i,n,r){switch(t){case Tdt.Volume:Idt(n,e*(1-i),e),gn.normalize(r,n);break;case Tdt.Shell:Rdt(n),gn.multiplyScalar(n,n,e),gn.normalize(r,n);break;default:z(t+" is not supported for sphere emitter.")}}(this.emitFrom,this.radius,this.radiusThickness,t.position,t.velocity);break;case Sdt.Hemisphere:!function(t,e,i,n,r){switch(t){case Tdt.Volume:Idt(n,e*(1-i),e),n.z>0&&(n.z*=-1),gn.normalize(r,n);break;case Tdt.Shell:Rdt(n),gn.multiplyScalar(n,n,e),n.z>0&&(n.z*=-1),gn.normalize(r,n);break;default:z(t+" is not supported for hemisphere emitter.")}}(this.emitFrom,this.radius,this.radiusThickness,t.position,t.velocity);break;default:z(this.shapeType+" shapeType is not supported by ShapeModule.")}if(this.randomPositionAmount>0&&(t.position.x+=Wi(-this.randomPositionAmount,this.randomPositionAmount),t.position.y+=Wi(-this.randomPositionAmount,this.randomPositionAmount),t.position.z+=Wi(-this.randomPositionAmount,this.randomPositionAmount)),gn.transformQuat(t.velocity,t.velocity,this.quat),gn.transformMat4(t.position,t.position,this.mat),this.sphericalDirectionAmount>0){var e=gn.normalize(ggt,t.position);gn.lerp(t.velocity,t.velocity,e,this.sphericalDirectionAmount)}this.lastTime=this.particleSystem.time},e.constructMat=function(){Bn.fromEuler(this.quat,this._rotation.x,this._rotation.y,this._rotation.z),Vn.fromRTS(this.mat,this.quat,this._position,this._scale)},e.generateArcAngle=function(){if(this.arcMode===Adt.Random)return Wi(0,this._arc);var t=this.totalAngle+2*Math.PI*this.arcSpeed.evaluate(this.particleSystem.time,1)*(this.particleSystem.time-this.lastTime);switch(this.totalAngle=t,0!==this.arcSpread&&(t=Math.floor(t/(this._arc*this.arcSpread))*this._arc*this.arcSpread),this.arcMode){case Adt.Loop:return Qi(t,this._arc);case Adt.PingPong:return Zi(t,this._arc);default:return Qi(t,this._arc)}},n(t,[{key:"position",get:function(){return this._position},set:function(t){this._position=t,this.constructMat()}},{key:"rotation",get:function(){return this._rotation},set:function(t){this._rotation=t,this.constructMat()}},{key:"scale",get:function(){return this._scale},set:function(t){this._scale=t,this.constructMat()}},{key:"arc",get:function(){return Ui(this._arc)},set:function(t){this._arc=Vi(t)}},{key:"angle",get:function(){return Math.round(100*Ui(this._angle))/100},set:function(t){this._angle=Vi(t)}},{key:"enable",get:function(){return this._enable},set:function(t){this._enable=t}},{key:"shapeType",get:function(){return this._shapeType},set:function(t){switch(this._shapeType=t,this._shapeType){case Sdt.Box:this.emitFrom===Tdt.Base&&(this.emitFrom=Tdt.Volume);break;case Sdt.Cone:this.emitFrom===Tdt.Edge&&(this.emitFrom=Tdt.Base);break;case Sdt.Sphere:case Sdt.Hemisphere:this.emitFrom!==Tdt.Base&&this.emitFrom!==Tdt.Edge||(this.emitFrom=Tdt.Volume)}}}]),t}(),Umt=ja(Vmt.prototype,"_enable",[lo],(function(){return!1})),zmt=ja(Vmt.prototype,"_shapeType",[Pmt,Omt],(function(){return Sdt.Cone})),m(Vmt.prototype,"shapeType",[Lmt],Object.getOwnPropertyDescriptor(Vmt.prototype,"shapeType"),Vmt.prototype),Hmt=ja(Vmt.prototype,"emitFrom",[Nmt,lo],(function(){return Tdt.Volume})),Wmt=ja(Vmt.prototype,"alignToDirection",[lo],(function(){return!1})),Xmt=ja(Vmt.prototype,"randomDirectionAmount",[lo],(function(){return 0})),jmt=ja(Vmt.prototype,"sphericalDirectionAmount",[lo],(function(){return 0})),Ymt=ja(Vmt.prototype,"randomPositionAmount",[lo],(function(){return 0})),qmt=ja(Vmt.prototype,"radius",[lo],(function(){return 1})),Kmt=ja(Vmt.prototype,"radiusThickness",[lo],(function(){return 1})),Qmt=ja(Vmt.prototype,"arcMode",[Fmt,lo],(function(){return Adt.Random})),Zmt=ja(Vmt.prototype,"arcSpread",[lo],(function(){return 0})),Jmt=ja(Vmt.prototype,"arcSpeed",[kmt,lo],(function(){return new bft})),$mt=ja(Vmt.prototype,"length",[lo],(function(){return 5})),tgt=ja(Vmt.prototype,"boxThickness",[lo],(function(){return new gn(0,0,0)})),egt=ja(Vmt.prototype,"_position",[lo],(function(){return new gn(0,0,0)})),igt=ja(Vmt.prototype,"_rotation",[lo],(function(){return new gn(0,0,0)})),ngt=ja(Vmt.prototype,"_scale",[lo],(function(){return new gn(1,1,1)})),rgt=ja(Vmt.prototype,"_arc",[lo],(function(){return Vi(360)})),sgt=ja(Vmt.prototype,"_angle",[lo],(function(){return Vi(25)})),Gmt=Vmt))||Gmt);function Tgt(t,e){e.x>0&&(t[0]+=.5*Wi(-e.x,e.x),t[0]=Fi(t[0],-.5,.5)),e.y>0&&(t[1]+=.5*Wi(-e.y,e.y),t[1]=Fi(t[1],-.5,.5)),e.z>0&&(t[2]+=.5*Wi(-e.z,e.z),t[2]=Fi(t[2],-.5,.5))}var Agt=[0,0,1,0,0,1,1,1],bgt=[0,0,0,1,0,0,0,1,0,1,1,0],Egt=function(t){function e(){var e;return(e=t.call(this)||this)._capacity=void 0,e._bufferSize=void 0,e._vertAttrs=void 0,e._vertAttribSize=void 0,e._vBuffer=void 0,e._vertAttrsFloatCount=void 0,e._vdataF32=void 0,e._vdataUint32=void 0,e._subMeshData=void 0,e._mesh=void 0,e._vertCount=0,e._indexCount=0,e._startTimeOffset=0,e._lifeTimeOffset=0,e._material=null,e._vertAttribSizeStatic=void 0,e._vertStaticAttrsFloatCount=void 0,e._insBuffers=void 0,e._insIndices=void 0,e._useInstance=void 0,e._iaVertCount=0,e._iaIndexCount=0,e.type=vR.PARTICLE_BATCH,e._capacity=0,e._bufferSize=16,e._vertAttrs=null,e._vertAttribSize=0,e._vBuffer=null,e._vertAttrsFloatCount=0,e._vdataF32=null,e._vdataUint32=null,e._vertAttribSizeStatic=0,e._vertStaticAttrsFloatCount=0,e._insBuffers=[],e._insIndices=null,Ff.gfxDevice.hasFeature(tc.INSTANCED_ARRAYS)?e._useInstance=!0:e._useInstance=!1,e._subMeshData=null,e._mesh=null,e}s(e,t);var i=e.prototype;return i.setCapacity=function(t){var e=this._capacity!==t;this._capacity=t,this._bufferSize=Math.max(this._capacity,16),this._subMeshData&&e&&this.rebuild()},i.setVertexAttributes=function(t,e){if(this._useInstance)this.setVertexAttributesIns(t,e);else{if(this._mesh===t&&this._vertAttrs===e)return;this._mesh=t,this._vertAttrs=e,this._vertAttribSize=0;for(var i,n=f(this._vertAttrs);!(i=n()).done;){var r=i.value;r.offset=this._vertAttribSize,this._vertAttribSize+=j_[r.format].size}this._vertAttrsFloatCount=this._vertAttribSize/4,this.rebuild()}},i.setVertexAttributesIns=function(t,e){if(this._mesh!==t||this._vertAttrs!==e){this._mesh=t,this._vertAttrs=e,this._vertAttribSize=0,this._vertAttribSizeStatic=0;for(var i,n=f(this._vertAttrs);!(i=n()).done;){var r=i.value;0===r.stream?(r.offset=this._vertAttribSize,this._vertAttribSize+=j_[r.format].size):1===r.stream&&(r.offset=this._vertAttribSizeStatic,this._vertAttribSizeStatic+=j_[r.format].size)}this._vertAttrsFloatCount=this._vertAttribSize/4,this._vertStaticAttrsFloatCount=this._vertAttribSizeStatic/4,this.rebuild()}},i.createSubMeshData=function(){this.destroySubMeshData(),this._vertCount=4,this._indexCount=6,this._mesh&&(this._vertCount=this._mesh.struct.vertexBundles[this._mesh.struct.primitives[0].vertexBundelIndices[0]].view.count,this._indexCount=this._mesh.struct.primitives[0].indexView.count);var t=this._device.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,this._vertAttribSize*this._bufferSize*this._vertCount,this._vertAttribSize)),e=new ArrayBuffer(this._vertAttribSize*this._bufferSize*this._vertCount);if(this._mesh&&this._capacity>0){var i=this._vertAttrs[this._vertAttrs.findIndex((function(t){return t.name===Uc.ATTR_TEX_COORD}))].offset;this._mesh.copyAttribute(0,Uc.ATTR_TEX_COORD,e,this._vertAttribSize,i);var n=this._vertAttrs.findIndex((function(t){return t.name===Uc.ATTR_TEX_COORD3}));if(i=this._vertAttrs[n++].offset,this._mesh.copyAttribute(0,Uc.ATTR_POSITION,e,this._vertAttribSize,i),i=this._vertAttrs[n++].offset,this._mesh.copyAttribute(0,Uc.ATTR_NORMAL,e,this._vertAttribSize,i),i=this._vertAttrs[n++].offset,!this._mesh.copyAttribute(0,Uc.ATTR_COLOR,e,this._vertAttribSize,i))for(var r=new Uint32Array(e),s=0;s<this._vertCount;++s)r[s*this._vertAttrsFloatCount+i/4]=En.toUint32(En.WHITE);for(var a=new Float32Array(e),o=1;o<this._capacity;o++)a.copyWithin(o*this._vertAttribSize*this._vertCount/4,0,this._vertAttribSize*this._vertCount/4)}t.update(e);var h=new Uint16Array(this._bufferSize*this._indexCount);if(this._mesh&&this._capacity>0){this._mesh.copyIndices(0,h);for(var u=1;u<this._capacity;u++)for(var l=0;l<this._indexCount;l++)h[u*this._indexCount+l]=h[l]+u*this._vertCount}else for(var c=0,_=0;_<this._capacity;++_){var f=4*_;h[c++]=f,h[c++]=f+1,h[c++]=f+2,h[c++]=f+3,h[c++]=f+2,h[c++]=f+1}var d=this._device.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,this._bufferSize*this._indexCount*Uint16Array.BYTES_PER_ELEMENT,Uint16Array.BYTES_PER_ELEMENT));return d.update(h),this._iaVertCount=this._capacity*this._vertCount,this._iaIndexCount=this._capacity*this._indexCount,this._subMeshData=new FD([t],this._vertAttrs,wc.TRIANGLE_LIST,d),this.initSubModel(0,this._subMeshData,this._material),e},i.createSubMeshDataInsDynamic=function(){this._insBuffers.length=0,this.destroySubMeshData();var t=this._device.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,this._vertAttribSize*this._bufferSize,this._vertAttribSize)),e=new ArrayBuffer(this._vertAttribSize*this._bufferSize);return t.update(e),this._insBuffers.push(t),e},i.createSubMeshDataInsStatic=function(){this._vertCount=4,this._indexCount=6,this._mesh&&(this._vertCount=this._mesh.struct.vertexBundles[this._mesh.struct.primitives[0].vertexBundelIndices[0]].view.count,this._indexCount=this._mesh.struct.primitives[0].indexView.count);var t=this._device.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,this._vertAttribSizeStatic*this._vertCount,this._vertAttribSizeStatic)),e=new ArrayBuffer(this._vertAttribSizeStatic*this._vertCount);if(this._mesh){var i=this._vertAttrs.findIndex((function(t){return t.name===Uc.ATTR_TEX_COORD})),n=this._vertAttrs[i].offset;if(this._mesh.copyAttribute(0,Uc.ATTR_TEX_COORD,e,this._vertAttribSizeStatic,n),i=this._vertAttrs.findIndex((function(t){return t.name===Uc.ATTR_TEX_COORD3})),n=this._vertAttrs[i++].offset,this._mesh.copyAttribute(0,Uc.ATTR_POSITION,e,this._vertAttribSizeStatic,n),n=this._vertAttrs[i++].offset,this._mesh.copyAttribute(0,Uc.ATTR_NORMAL,e,this._vertAttribSizeStatic,n),n=this._vertAttrs[i++].offset,!this._mesh.copyAttribute(0,Uc.ATTR_COLOR,e,this._vertAttribSizeStatic,n))for(var r=new Uint32Array(e),s=0;s<this._vertCount;++s)r[s*this._vertStaticAttrsFloatCount+n/4]=En.toUint32(En.WHITE)}else for(var a=new Float32Array(e),o=0;o<bgt.length;++o)a[o]=bgt[o];t.update(e);var h=new Uint16Array(this._indexCount);this._mesh?this._mesh.copyIndices(0,h):(h[0]=0,h[1]=1,h[2]=2,h[3]=3,h[4]=2,h[5]=1);var u=this._device.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,this._indexCount*Uint16Array.BYTES_PER_ELEMENT,Uint16Array.BYTES_PER_ELEMENT));u.update(h),this._insIndices=u,this._iaVertCount=this._vertCount,this._iaIndexCount=this._indexCount,this._insBuffers.push(t)},i.createInsSubmesh=function(){this._subMeshData=new FD(this._insBuffers,this._vertAttrs,wc.TRIANGLE_LIST,this._insIndices),this.initSubModel(0,this._subMeshData,this._material)},i.updateMaterial=function(t){this._material=t,this.setSubModelMaterial(0,t)},i.addParticleVertexData=function(t,e){if(this._useInstance)this.addParticleVertexDataIns(t,e);else if(this._mesh)for(var i=0;i<this._vertCount;i++){var n=(t*this._vertCount+i)*this._vertAttrsFloatCount;this._vdataF32[n++]=e.position.x,this._vdataF32[n++]=e.position.y,this._vdataF32[n++]=e.position.z,n+=2,this._vdataF32[n++]=e.texcoord.z,this._vdataF32[n++]=e.size.x,this._vdataF32[n++]=e.size.y,this._vdataF32[n++]=e.size.z,this._vdataF32[n++]=e.rotation.x,this._vdataF32[n++]=e.rotation.y,this._vdataF32[n++]=e.rotation.z,this._vdataUint32[n++]=e.color}else{var r=t*this._vertAttrsFloatCount;this._vdataF32[r++]=e.position.x,this._vdataF32[r++]=e.position.y,this._vdataF32[r++]=e.position.z,this._vdataF32[r++]=e.texcoord.x,this._vdataF32[r++]=e.texcoord.y,this._vdataF32[r++]=e.texcoord.z,this._vdataF32[r++]=e.size.x,this._vdataF32[r++]=e.size.y,this._vdataF32[r++]=e.size.z,this._vdataF32[r++]=e.rotation.x,this._vdataF32[r++]=e.rotation.y,this._vdataF32[r++]=e.rotation.z,this._vdataUint32[r++]=e.color,e.velocity&&(this._vdataF32[r++]=e.velocity.x,this._vdataF32[r++]=e.velocity.y,this._vdataF32[r++]=e.velocity.z)}},i.addParticleVertexDataIns=function(t,e){var i=t*this._vertAttrsFloatCount;this._mesh?(this._vdataF32[i++]=e.position.x,this._vdataF32[i++]=e.position.y,this._vdataF32[i++]=e.position.z,this._vdataF32[i++]=e.texcoord.z,this._vdataF32[i++]=e.size.x,this._vdataF32[i++]=e.size.y,this._vdataF32[i++]=e.size.z,this._vdataF32[i++]=e.rotation.x,this._vdataF32[i++]=e.rotation.y,this._vdataF32[i++]=e.rotation.z,this._vdataUint32[i++]=e.color):(this._vdataF32[i++]=e.position.x,this._vdataF32[i++]=e.position.y,this._vdataF32[i++]=e.position.z,this._vdataF32[i++]=e.texcoord.z,this._vdataF32[i++]=e.size.x,this._vdataF32[i++]=e.size.y,this._vdataF32[i++]=e.size.z,this._vdataF32[i++]=e.rotation.x,this._vdataF32[i++]=e.rotation.y,this._vdataF32[i++]=e.rotation.z,this._vdataUint32[i++]=e.color,e.velocity&&(this._vdataF32[i++]=e.velocity.x,this._vdataF32[i++]=e.velocity.y,this._vdataF32[i++]=e.velocity.z))},i.addGPUParticleVertexData=function(t,e,i){if(this._useInstance)this.addGPUParticleVertexDataIns(t,e,i);else for(var n=e*this._vertAttrsFloatCount*this._vertCount,r=0;r<this._vertCount;r++){var s=n;this._vdataF32[s++]=t.position.x,this._vdataF32[s++]=t.position.y,this._vdataF32[s++]=t.position.z,this._vdataF32[s++]=i,this._vdataF32[s++]=t.startSize.x,this._vdataF32[s++]=t.startSize.y,this._vdataF32[s++]=t.startSize.z,this._vdataF32[s++]=Agt[2*r],this._vdataF32[s++]=t.rotation.x,this._vdataF32[s++]=t.rotation.y,this._vdataF32[s++]=t.rotation.z,this._vdataF32[s++]=Agt[2*r+1],this._vdataF32[s++]=t.startColor.r/255,this._vdataF32[s++]=t.startColor.g/255,this._vdataF32[s++]=t.startColor.b/255,this._vdataF32[s++]=t.startColor.a/255,this._vdataF32[s++]=t.velocity.x,this._vdataF32[s++]=t.velocity.y,this._vdataF32[s++]=t.velocity.z,this._vdataF32[s++]=t.startLifetime,this._vdataF32[s++]=t.randomSeed,n+=this._vertAttrsFloatCount}},i.addGPUParticleVertexDataIns=function(t,e,i){var n=e*this._vertAttrsFloatCount,r=n;this._vdataF32[r++]=t.position.x,this._vdataF32[r++]=t.position.y,this._vdataF32[r++]=t.position.z,this._vdataF32[r++]=i,this._vdataF32[r++]=t.startSize.x,this._vdataF32[r++]=t.startSize.y,this._vdataF32[r++]=t.startSize.z,this._vdataF32[r++]=t.frameIndex,this._vdataF32[r++]=t.rotation.x,this._vdataF32[r++]=t.rotation.y,this._vdataF32[r++]=t.rotation.z,this._vdataF32[r++]=t.startColor.r/255,this._vdataF32[r++]=t.startColor.g/255,this._vdataF32[r++]=t.startColor.b/255,this._vdataF32[r++]=t.startColor.a/255,this._vdataF32[r++]=t.velocity.x,this._vdataF32[r++]=t.velocity.y,this._vdataF32[r++]=t.velocity.z,this._vdataF32[r++]=t.startLifetime,this._vdataF32[r++]=t.randomSeed,n+=this._vertAttrsFloatCount},i.updateGPUParticles=function(t,e,i){if(this._useInstance)return this.updateGPUParticlesIns(t,e,i);for(var n=this._vertAttrsFloatCount*this._vertCount,r=0,s=0,a=0,o=0;o<t;++o)r=o*n,s=this._vdataF32[r+this._startTimeOffset],this._vdataF32[r+this._lifeTimeOffset]-(e-s)<i&&(a=--t*n,this._vdataF32.copyWithin(r,a,a+n),o--);return t},i.updateGPUParticlesIns=function(t,e,i){for(var n=this._vertAttrsFloatCount,r=0,s=0,a=0,o=0;o<t;++o)r=o*n,s=this._vdataF32[r+this._startTimeOffset],this._vdataF32[r+this._lifeTimeOffset]-(e-s)<i&&(a=--t*n,this._vdataF32.copyWithin(r,a,a+n),o--);return t},i.constructAttributeIndex=function(){if(this._vertAttrs){var t=this._vertAttrs.findIndex((function(t){return"a_position_starttime"===t.name})),e=this._vertAttrs[t].offset;this._startTimeOffset=e/4+3,t=this._vertAttrs.findIndex((function(t){return"a_dir_life"===t.name})),e=this._vertAttrs[t].offset,this._lifeTimeOffset=e/4+3}},i.updateIA=function(t){if(this._useInstance)this.updateIAIns(t);else{if(t<=0)return;var e=this._subModels[0].inputAssembler;e.vertexBuffers[0].update(this._vdataF32),e.firstIndex=0,e.indexCount=this._indexCount*t,e.vertexCount=this._iaVertCount}},i.updateIAIns=function(t){if(!(t<=0)){var e=this._subModels[0].inputAssembler;e.vertexBuffers[0].update(this._vdataF32),e.instanceCount=t,e.firstIndex=0,e.indexCount=this._indexCount,e.instanceCount=t,e.vertexCount=this._iaVertCount}},i.clear=function(){this._useInstance?this.clearIns():this._subModels[0].inputAssembler.indexCount=0},i.clearIns=function(){this._subModels[0].inputAssembler.instanceCount=0},i.destroy=function(){t.prototype.destroy.call(this),this.doDestroy()},i.doDestroy=function(){this._vBuffer=null,this._vdataF32=null,this._vdataUint32=null,this._insBuffers=[],this._insIndices=null,this._vertAttrs=null,this._material=null,this._mesh=null,this.destroySubMeshData()},i.rebuild=function(){this._useInstance?this.rebuildIns():(this._vBuffer=this.createSubMeshData(),this._vdataF32=new Float32Array(this._vBuffer),this._vdataUint32=new Uint32Array(this._vBuffer))},i.rebuildIns=function(){this._vBuffer=this.createSubMeshDataInsDynamic(),this._vdataF32=new Float32Array(this._vBuffer),this._vdataUint32=new Uint32Array(this._vBuffer),this.createSubMeshDataInsStatic(),this.createInsSubmesh()},i.destroySubMeshData=function(){this._subMeshData&&(this._subMeshData.destroy(),this._subMeshData=null)},n(e,[{key:"useInstance",get:function(){return this._useInstance},set:function(t){this._useInstance!==t&&(this._useInstance=t)}}]),e}(RR),Cgt=function(){function t(t){this._particleSystem=null,this._model=null,this._renderInfo=null,this._vertAttrs=[],this._useInstance=void 0,this._renderInfo=t,Ff.gfxDevice.hasFeature(tc.INSTANCED_ARRAYS)?this._useInstance=!0:this._useInstance=!1}var e=t.prototype;return e.getUseInstance=function(){return this._useInstance},e.getInfo=function(){return this._renderInfo},e.onInit=function(t){this._particleSystem=t},e.onEnable=function(){if(this._particleSystem){this.attachToScene();var t=this._model;t&&(t.node=t.transform=this._particleSystem.node)}},e.onDisable=function(){this.detachFromScene()},e.onDestroy=function(){this._model&&(S.director.root.destroyModel(this._model),this._model=null)},e.attachToScene=function(){var t;this._model&&(this._model.scene&&this.detachFromScene(),null===(t=this._particleSystem)||void 0===t||t._getRenderScene().addModel(this._model))},e.detachFromScene=function(){this._model&&this._model.scene&&this._model.scene.removeModel(this._model)},e.setVertexAttributes=function(){this._model&&(this.updateVertexAttrib(),this._model.setVertexAttributes(this._renderInfo.renderMode===ydt.Mesh?this._renderInfo.mesh:null,this._vertAttrs))},e.clear=function(){this._model&&(this._model.enabled=!1)},e.getModel=function(){return this._model},e._initModel=function(){!this._model&&this._particleSystem&&(this._model=S.director.root.createModel(Egt),this._model.setCapacity(this._particleSystem.capacity),this._model.visFlags=this._particleSystem.visibility)},e.updateTrailMaterial=function(){},e.getDefaultTrailMaterial=function(){return null},n(t,[{key:"model",get:function(){return this._model}}]),t}(),xgt=function(){function t(t){this.permutation=[151,160,137,91,90,15,131,13,201,95,96,53,194,233,7,225,140,36,103,30,69,142,8,99,37,240,21,10,23,190,6,148,247,120,234,75,0,26,197,62,94,252,219,203,117,35,11,32,57,177,33,88,237,149,56,87,174,20,125,136,171,168,68,175,74,165,71,134,139,48,27,166,77,146,158,231,83,111,229,122,60,211,133,230,220,105,92,41,55,46,245,40,244,102,143,54,65,25,63,161,1,216,80,73,209,76,132,187,208,89,18,169,200,196,135,130,116,188,159,86,164,100,109,198,173,186,3,64,52,217,226,250,124,123,5,202,38,147,118,126,255,82,85,212,207,206,59,227,47,16,58,17,182,189,28,42,223,183,170,213,119,248,152,2,44,154,163,70,221,153,101,155,167,43,172,9,129,22,39,253,19,98,108,110,79,113,224,232,178,185,112,104,218,246,97,228,251,34,242,193,238,210,144,12,191,179,162,241,81,51,145,235,249,14,239,107,49,192,214,31,181,199,106,157,184,84,204,176,115,121,50,45,127,4,150,254,138,236,205,93,222,114,67,29,24,72,243,141,128,195,78,66,215,61,156,180],this.accSpeed=new gn,this.noiseSpeed=new gn,this.noiseFrequency=0,this.noiseAbs=new gn,this.noiseAmplitude=new gn,this.octaves=new gn,this.dt=0,this.point=new gn,this.result=new gn,this.mixOut=new jn,t&&(this.permutation=t)}var e=t.prototype;return e.noise=function(t,e,i,n,r){void 0===n&&(n=0),void 0===r&&(r=1);for(var s=new Array(512),a=0;a<256;a++)s[256+a]=s[a]=this.permutation[a];var o=255&Math.floor(t),h=255&Math.floor(e),u=255&Math.floor(i);t-=Math.floor(t),e-=Math.floor(e),i-=Math.floor(i);var l=this.fade(t),c=this.fade(e),_=this.fade(i),f=s[o]+h,d=s[f]+u,p=s[f+1]+u,m=s[o+1]+h,g=s[m]+u,v=s[m+1]+u;return n+this.scale(this.lerp(_,this.lerp(c,this.lerp(l,this.grad(s[d],t,e,i),this.grad(s[g],t-1,e,i)),this.lerp(l,this.grad(s[p],t,e-1,i),this.grad(s[v],t-1,e-1,i))),this.lerp(c,this.lerp(l,this.grad(s[d+1],t,e,i-1),this.grad(s[g+1],t-1,e,i-1)),this.lerp(l,this.grad(s[p+1],t,e-1,i-1),this.grad(s[v+1],t-1,e-1,i-1)))))*(r-n)},e.fade=function(t){return t*t*t*(t*(6*t-15)+10)},e.lerp=function(t,e,i){return e+t*(i-e)},e.grad=function(t,e,i,n){var r=15&t,s=r<8?e:i,a=r<4?i:12===r||14===r?e:n;return(0==(1&r)?s:-s)+(0==(2&r)?a:-a)},e.scale=function(t){return(1+t)/2},e.setSpeed=function(t,e,i){this.noiseSpeed.set(t,e,i)},e.setFrequency=function(t){this.noiseFrequency=t},e.setAbs=function(t,e,i){this.noiseAbs.set(t,e,i)},e.setAmplititude=function(t,e,i){this.noiseAmplitude.set(t,e,i)},e.setOctaves=function(t,e,i){this.octaves.set(t,e,i)},e.setTime=function(t){this.dt=t},e.setSamplePoint=function(t){this.point.set(t)},e.getResult=function(){return this.result},e.getNoise=function(t,e,i,n,r,s,a){var o=s,h=0;if(h+=this.noise(t*o,e*o,i*o,-1,1),1===a.x)return h;for(var u=1,l=1,c=1;c<a.x;++c)u*=a.y,o*=a.z,l+=u,h+=this.noise(t*o,e*o,i*o,-1,1)*u;return h/l},e.getNoiseMix=function(t,e,i,n,r,s){t.x=this.getNoise(e.x,e.y,e.z,i,n,r,s),t.y=this.getNoise(e.y,e.z,e.x,i,n,r,s)},e.getNoiseParticle=function(){this.accSpeed.set(this.noiseSpeed.x*this.dt,this.noiseSpeed.y*this.dt,this.noiseSpeed.z*this.dt);var t=this.getNoise(this.point.z+this.accSpeed.x,this.point.y,this.point.x,this.dt,this.accSpeed,this.noiseFrequency,this.octaves),e=this.getNoise(this.point.x+1e3,this.point.z+this.accSpeed.y,this.point.y,this.dt,this.accSpeed,this.noiseFrequency,this.octaves),i=this.getNoise(this.point.y,this.point.x+1e3,this.point.z+this.accSpeed.z,this.dt,this.accSpeed,this.noiseFrequency,this.octaves);this.result.set(t*this.noiseAmplitude.x,e*this.noiseAmplitude.y,i*this.noiseAmplitude.z)},e.getPreview=function(t,e,i){for(var n=0;n<i;++n)for(var r=0;r<e;++r){var s=(r-.5*e)/e+this.noiseSpeed.x*this.dt,a=(n-.5*i)/i+this.noiseSpeed.y*this.dt,o=this.getNoise(s,a,0,this.dt,this.accSpeed,this.noiseFrequency,this.octaves);t[n*e+r]=.5*(o+1)}},t}(),wgt=new cn,Rgt=new gn,Igt=new Vn,Dgt=new Vn,Bgt=new Bn;new gn;var Mgt=["_colorOverLifetimeModule","_sizeOvertimeModule","_velocityOvertimeModule","_forceOvertimeModule","_limitVelocityOvertimeModule","_rotationOvertimeModule","_textureAnimationModule","_noiseModule"],Pgt=[0,0,1,0,0,1,1,1],Ogt=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD1,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD2,ec.RGB32F),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0)],Lgt=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD1,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD2,ec.RGB32F),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0),new T_(Uc.ATTR_COLOR1,ec.RGB32F)],Ngt=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD1,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD2,ec.RGB32F),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0),new T_(Uc.ATTR_TEX_COORD3,ec.RGB32F),new T_(Uc.ATTR_NORMAL,ec.RGB32F),new T_(Uc.ATTR_COLOR1,ec.RGBA8,!0)],Fgt=[new T_(Uc.ATTR_TEX_COORD4,ec.RGBA32F,!1,0,!0),new T_(Uc.ATTR_TEX_COORD1,ec.RGB32F,!1,0,!0),new T_(Uc.ATTR_TEX_COORD2,ec.RGB32F,!1,0,!0),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0,0,!0),new T_(Uc.ATTR_TEX_COORD,ec.RGB32F,!1,1)],kgt=[new T_(Uc.ATTR_TEX_COORD4,ec.RGBA32F,!1,0,!0),new T_(Uc.ATTR_TEX_COORD1,ec.RGB32F,!1,0,!0),new T_(Uc.ATTR_TEX_COORD2,ec.RGB32F,!1,0,!0),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0,0,!0),new T_(Uc.ATTR_COLOR1,ec.RGB32F,!1,0,!0),new T_(Uc.ATTR_TEX_COORD,ec.RGB32F,!1,1)],Ggt=[new T_(Uc.ATTR_TEX_COORD4,ec.RGBA32F,!1,0,!0),new T_(Uc.ATTR_TEX_COORD1,ec.RGB32F,!1,0,!0),new T_(Uc.ATTR_TEX_COORD2,ec.RGB32F,!1,0,!0),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0,0,!0),new T_(Uc.ATTR_TEX_COORD,ec.RGB32F,!1,1),new T_(Uc.ATTR_TEX_COORD3,ec.RGB32F,!1,1),new T_(Uc.ATTR_NORMAL,ec.RGB32F,!1,1),new T_(Uc.ATTR_COLOR1,ec.RGBA8,!0,1)],Vgt={parent:null,owner:null,subModelIdx:0},Ugt=function(){this.position=void 0,this.texcoord=void 0,this.size=void 0,this.rotation=void 0,this.color=void 0,this.velocity=void 0,this.position=new gn,this.texcoord=new gn,this.size=new gn,this.rotation=new gn,this.color=0,this.velocity=null},zgt=function(t){function e(e){var i;return(i=t.call(this,e)||this)._defines=void 0,i._trailDefines=void 0,i._frameTile_velLenScale=void 0,i._tmp_velLenScale=void 0,i._defaultMat=null,i._node_scale=void 0,i._particleVertexData=void 0,i._particles=null,i._defaultTrailMat=null,i._updateList=new Map,i._animateList=new Map,i._runAnimateList=new Array,i._fillDataFunc=null,i._uScaleHandle=0,i._uLenHandle=0,i._uNodeRotHandle=0,i._alignSpace=vdt.View,i._inited=!1,i._localMat=new Vn,i._gravity=new cn,i.noise=new xgt,i._model=null,i._frameTile_velLenScale=new cn(1,1,0,0),i._tmp_velLenScale=i._frameTile_velLenScale.clone(),i._node_scale=new gn,i._particleVertexData=new Ugt,i._defines={CC_USE_WORLD_SPACE:!0,CC_USE_BILLBOARD:!0,CC_USE_STRETCHED_BILLBOARD:!1,CC_USE_HORIZONTAL_BILLBOARD:!1,CC_USE_VERTICAL_BILLBOARD:!1},i._trailDefines={CC_USE_WORLD_SPACE:!0},i}s(e,t);var i=e.prototype;return i.onInit=function(e){var i=this;t.prototype.onInit.call(this,e),this._particles=new Rs((function(){return new edt(i)}),16),this._setVertexAttrib(),this._setFillFunc(),this._initModuleList(),this._initModel(),this.updateMaterialParams(),this.updateTrailMaterial(),this.setVertexAttributes(),this._inited=!0},i.clear=function(){t.prototype.clear.call(this),this._particles.reset(),this._particleSystem&&this._particleSystem._trailModule&&this._particleSystem._trailModule.clear(),this.updateRenderData(),this._model.enabled=!1},i.updateRenderMode=function(){this._setVertexAttrib(),this._setFillFunc(),this.updateMaterialParams(),this.setVertexAttributes()},i.onDestroy=function(){var e;null===(e=this._particles)||void 0===e||e.destroy(),t.prototype.onDestroy.call(this)},i.getFreeParticle=function(){return this._particleSystem&&this._particles.length>=this._particleSystem.capacity?null:this._particles.add()},i.getDefaultTrailMaterial=function(){return this._defaultTrailMat},i.setNewParticle=function(){},i._initModuleList=function(){var t=this;Mgt.forEach((function(e){if(t._particleSystem){var i=t._particleSystem[e];i&&i.enable&&(i.needUpdate&&t._updateList.set(i.name,i),i.needAnimate&&t._animateList.set(i.name,i))}})),this._runAnimateList.length=0;for(var e=0,i=fdt.length;e<i;e++){var n=this._animateList.get(fdt[e]);n&&this._runAnimateList.push(n)}},i.enableModule=function(t,e,i){e?(i.needUpdate&&this._updateList.set(i.name,i),i.needAnimate&&this._animateList.set(i.name,i)):(this._animateList.delete(t),this._updateList.delete(t)),this._runAnimateList.length=0;for(var n=0,r=fdt.length;n<r;n++){var s=this._animateList.get(fdt[n]);s&&this._runAnimateList.push(s)}this.updateMaterialParams()},i.updateAlignSpace=function(t){this._alignSpace=t},i.getDefaultMaterial=function(){return this._defaultMat},i.updateRotation=function(t){t&&this.doUpdateRotation(t)},i.doUpdateRotation=function(t){if(this._renderInfo.renderMode===ydt.Mesh||this._alignSpace!==vdt.View){var e;if(this._alignSpace===vdt.Local)null===(e=this._particleSystem)||void 0===e||e.node.getRotation(Bgt);else if(this._alignSpace===vdt.World){var i;null===(i=this._particleSystem)||void 0===i||i.node.getWorldRotation(Bgt)}else if(this._alignSpace===vdt.View){var n,r;Bgt.set(0,0,0,1);var s=null===(n=this._particleSystem)||void 0===n||null===(r=n.node.scene.renderScene)||void 0===r?void 0:r.cameras;if(void 0!==s)for(var a=0;a<(null==s?void 0:s.length);++a){var o=s[a];if((o.visibility&this._particleSystem.node.layer)===this._particleSystem.node.layer){Bn.fromViewUp(Bgt,o.forward);break}}}else Bgt.set(0,0,0,1);t.setUniform(this._uNodeRotHandle,Bgt)}},i.updateScale=function(t){t&&this.doUpdateScale(t)},i.doUpdateScale=function(t){var e,i,n,r=this._node_scale;switch(null===(e=this._particleSystem)||void 0===e?void 0:e.scaleSpace){case mdt.Local:null===(i=this._particleSystem)||void 0===i||i.node.getScale(r);break;case mdt.World:null===(n=this._particleSystem)||void 0===n||n.node.getWorldScale(r)}t.setUniform(this._uScaleHandle,wgt.set(r.x,r.y,r.z))},i.updateParticles=function(t){var e=this,i=this._particleSystem;if(!i)return this._particles.length;i.node.getWorldMatrix(Igt);var n=(i.getMaterialInstance(0)||this._defaultMat).passes[0];this.doUpdateScale(n),this.doUpdateRotation(n),this._updateList.forEach((function(){}));var r=i._trailModule,s=r&&r.enable;s&&r.update();var a=!i.gravityModifier.isZero();if(a){if(i.simulationSpace===mdt.Local){var o=i.node.getRotation();Vn.fromQuat(this._localMat,o),this._localMat.transpose()}if(i.node.parent){var h=i.node.parent.getWorldRotation();Vn.fromQuat(Dgt,h),Dgt.transpose()}}for(var u=function(n){var o=e._particles.data[n];if(o.remainingLifetime-=t,gn.set(o.animatedVelocity,0,0,0),o.remainingLifetime<0)return s&&r.removeParticle(o),e._particles.removeAt(n),--n,l=n,1;if(a){var h=Pdt(i.gravityModifier)?ji(o.randomSeed):0;if(i.simulationSpace===mdt.Local){var u=1-o.remainingLifetime/o.startLifetime,c=9.8*-i.gravityModifier.evaluate(u,h)*t;e._gravity.x=0,e._gravity.y=c,e._gravity.z=0,e._gravity.w=1,Ni(c,0,Oi)||(i.node.parent&&(e._gravity=e._gravity.transformMat4(Dgt)),e._gravity=e._gravity.transformMat4(e._localMat),o.velocity.x+=e._gravity.x,o.velocity.y+=e._gravity.y,o.velocity.z+=e._gravity.z)}else o.velocity.y-=9.8*i.gravityModifier.evaluate(1-o.remainingLifetime/o.startLifetime,h)*t}gn.copy(o.ultimateVelocity,o.velocity),e._runAnimateList.forEach((function(e){e.animate(o,t)})),gn.scaleAndAdd(o.position,o.position,o.ultimateVelocity,t),s&&r.animate(o,t),l=n},l=0;l<this._particles.length;++l)u(l);return this._model.enabled=this._particles.length>0,this._particles.length},i.getNoisePreview=function(t,e,i){var n=this;this._runAnimateList.forEach((function(r){r.name===_dt&&r.getNoisePreview(t,n._particleSystem,e,i)}))},i.updateRenderData=function(){for(var t=0,e=0;e<this._particles.length;++e){var i=this._particles.data[e],n=0,r=this._particleSystem._textureAnimationModule;r&&r.enable&&(n=i.frameIndex),t=4*e,this._fillDataFunc(i,t,n)}},i.beforeRender=function(){this._model.updateIA(this._particles.length)},i.getParticleCount=function(){return this._particles.length},i.onMaterialModified=function(t){this._inited&&(0===t?this.updateMaterialParams():this.updateTrailMaterial())},i.onRebuildPSO=function(t,e){this._model&&0===t&&this._model.setSubModelMaterial(0,e);var i=this._particleSystem._trailModule,n=null==i?void 0:i.getModel();n&&1===t&&n.setSubModelMaterial(0,e)},i._setFillFunc=function(){this._renderInfo.renderMode===ydt.Mesh?this._fillDataFunc=this._fillMeshData:this._renderInfo.renderMode===ydt.StrecthedBillboard?this._fillDataFunc=this._fillStrecthedData:this._fillDataFunc=this._fillNormalData},i._fillMeshData=function(t,e,i){var n=e/4;gn.copy(this._particleVertexData.position,t.position),Rgt.z=i,gn.copy(this._particleVertexData.texcoord,Rgt),gn.copy(this._particleVertexData.size,t.size),gn.copy(this._particleVertexData.rotation,t.rotation),this._particleVertexData.color=En.toUint32(t.color),this._model.addParticleVertexData(n,this._particleVertexData)},i._fillStrecthedData=function(t,e,i){if(this._useInstance)this._fillStrecthedDataIns(t,e,i);else for(var n=0;n<4;++n)gn.copy(this._particleVertexData.position,t.position),Rgt.x=Pgt[2*n],Rgt.y=Pgt[2*n+1],Rgt.z=i,gn.copy(this._particleVertexData.texcoord,Rgt),gn.copy(this._particleVertexData.size,t.size),gn.copy(this._particleVertexData.rotation,t.rotation),this._particleVertexData.color=En.toUint32(t.color),this._particleVertexData.velocity=t.ultimateVelocity,this._model.addParticleVertexData(e++,this._particleVertexData)},i._fillStrecthedDataIns=function(t,e,i){var n=e/4;gn.copy(this._particleVertexData.position,t.position),Rgt.z=i,gn.copy(this._particleVertexData.texcoord,Rgt),gn.copy(this._particleVertexData.size,t.size),gn.copy(this._particleVertexData.rotation,t.rotation),this._particleVertexData.color=En.toUint32(t.color),this._particleVertexData.velocity=t.ultimateVelocity,this._model.addParticleVertexData(n,this._particleVertexData)},i._fillNormalData=function(t,e,i){if(this._useInstance)this._fillNormalDataIns(t,e,i);else for(var n=0;n<4;++n)gn.copy(this._particleVertexData.position,t.position),Rgt.x=Pgt[2*n],Rgt.y=Pgt[2*n+1],Rgt.z=i,gn.copy(this._particleVertexData.texcoord,Rgt),gn.copy(this._particleVertexData.size,t.size),gn.copy(this._particleVertexData.rotation,t.rotation),this._particleVertexData.color=En.toUint32(t.color),this._model.addParticleVertexData(e++,this._particleVertexData)},i._fillNormalDataIns=function(t,e,i){var n=e/4;gn.copy(this._particleVertexData.position,t.position),Rgt.z=i,gn.copy(this._particleVertexData.texcoord,Rgt),gn.copy(this._particleVertexData.size,t.size),gn.copy(this._particleVertexData.rotation,t.rotation),this._particleVertexData.color=En.toUint32(t.color),this._model.addParticleVertexData(n,this._particleVertexData)},i.updateVertexAttrib=function(){if(this._renderInfo.renderMode===ydt.Mesh&&this._renderInfo.mesh){var t=this._renderInfo.mesh.readAttributeFormat(0,Uc.ATTR_COLOR);if(t){for(var e=ec.RGBA8,i=0;i<j_.length;++i)if(j_[i].name===t.name){e=i;break}this._vertAttrs[7]=new T_(Uc.ATTR_COLOR1,e,!0,this._useInstance?1:0)}else{var n=ec.RGBA8;this._vertAttrs[7]=new T_(Uc.ATTR_COLOR1,n,!0,this._useInstance?1:0)}}},i._setVertexAttrib=function(){if(this._useInstance)this._setVertexAttribIns();else switch(this._renderInfo.renderMode){case ydt.StrecthedBillboard:this._vertAttrs=Lgt.slice();break;case ydt.Mesh:this._vertAttrs=Ngt.slice();break;default:this._vertAttrs=Ogt.slice()}},i._setVertexAttribIns=function(){switch(this._renderInfo.renderMode){case ydt.StrecthedBillboard:this._vertAttrs=kgt.slice();break;case ydt.Mesh:this._vertAttrs=Ggt.slice();break;default:this._vertAttrs=Fgt.slice()}},i.updateMaterialParams=function(){if(this._particleSystem){var t=this._particleSystem,e=t.sharedMaterial;null!=e&&(this._renderInfo.mainTexture=e.getProperty("mainTexture",0)),null==t.sharedMaterial&&null==this._defaultMat&&(Vgt.parent=bT.get("default-particle-material"),Vgt.owner=this._particleSystem,Vgt.subModelIdx=0,this._defaultMat=new ZT(Vgt),Vgt.parent=null,Vgt.owner=null,Vgt.subModelIdx=0,null!==this._renderInfo.mainTexture&&this._defaultMat.setProperty("mainTexture",this._renderInfo.mainTexture));var i=t.getMaterialInstance(0)||this._defaultMat;t.simulationSpace===mdt.World?this._defines.CC_USE_WORLD_SPACE=!0:this._defines.CC_USE_WORLD_SPACE=!1;var n=i.passes[0];this._uScaleHandle=n.getHandle("scale"),this._uLenHandle=n.getHandle("frameTile_velLenScale"),this._uNodeRotHandle=n.getHandle("nodeRotation");var r=this._renderInfo.renderMode,s=this._frameTile_velLenScale;r===ydt.Billboard?this._defines.CC_RENDER_MODE=0:r===ydt.StrecthedBillboard?(this._defines.CC_RENDER_MODE=1,s.z=this._renderInfo.velocityScale,s.w=this._renderInfo.lengthScale):r===ydt.HorizontalBillboard?this._defines.CC_RENDER_MODE=2:r===ydt.VerticalBillboard?this._defines.CC_RENDER_MODE=3:r===ydt.Mesh?this._defines.CC_RENDER_MODE=4:z("particle system renderMode "+r+" not support.");var a=t._textureAnimationModule;a&&a.enable?(cn.copy(this._tmp_velLenScale,s),jn.set(this._tmp_velLenScale,a.numTilesX,a.numTilesY),n.setUniform(this._uLenHandle,this._tmp_velLenScale)):n.setUniform(this._uLenHandle,s);var o,h=this._particleSystem._rotationOvertimeModule;o=!!h&&h.enable,this._defines.ROTATION_OVER_TIME_MODULE_ENABLE=o,this._defines.CC_INSTANCE_PARTICLE=this._useInstance,i.recompileShaders(this._defines),this._model&&this._model.updateMaterial(i)}},i.updateTrailMaterial=function(){if(this._particleSystem){var t=this._particleSystem,e=t._trailModule;if(e&&e.enable){t.simulationSpace===mdt.World||e.space===mdt.World?this._trailDefines.CC_USE_WORLD_SPACE=!0:this._trailDefines.CC_USE_WORLD_SPACE=!1;var i=t.getMaterialInstance(1);null===i&&null===this._defaultTrailMat&&(Vgt.parent=bT.get("default-trail-material"),Vgt.owner=this._particleSystem,Vgt.subModelIdx=1,this._defaultTrailMat=new ZT(Vgt),Vgt.parent=null,Vgt.owner=null,Vgt.subModelIdx=0),(i=i||this._defaultTrailMat).recompileShaders(this._trailDefines),e.updateMaterial()}}},i.setUseInstance=function(t){this._useInstance!==t&&(this._useInstance=t,this._model&&(this._model.useInstance=t,this._model.doDestroy()),this.updateRenderMode())},e}(Cgt),Hgt=new cn,Wgt=new Vn,Xgt=new cn,jgt=new Bn,Ygt=new Bn;new gn;var qgt,Kgt,Qgt,Zgt,Jgt,$gt,tvt,evt,ivt,nvt,rvt,svt,avt,ovt,hvt,uvt,lvt,cvt,_vt,fvt,dvt,pvt=32,mvt="a_position_starttime",gvt="a_size_uv",vvt="a_rotation_uv",yvt="a_color",Svt="a_dir_life",Tvt="a_rndSeed",Avt="a_size_fid",bvt="a_rotation",Evt=[new T_(mvt,ec.RGBA32F),new T_(gvt,ec.RGBA32F),new T_(vvt,ec.RGBA32F),new T_(yvt,ec.RGBA32F),new T_(Svt,ec.RGBA32F),new T_(Tvt,ec.R32F)],Cvt=[new T_(mvt,ec.RGBA32F),new T_(gvt,ec.RGBA32F),new T_(vvt,ec.RGBA32F),new T_(yvt,ec.RGBA32F),new T_(Svt,ec.RGBA32F),new T_(Tvt,ec.R32F),new T_(Uc.ATTR_TEX_COORD,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD3,ec.RGB32F),new T_(Uc.ATTR_NORMAL,ec.RGB32F),new T_(Uc.ATTR_COLOR1,ec.RGBA8,!0)],xvt=[new T_(mvt,ec.RGBA32F,!1,0,!0),new T_(Avt,ec.RGBA32F,!1,0,!0),new T_(bvt,ec.RGB32F,!1,0,!0),new T_(yvt,ec.RGBA32F,!1,0,!0),new T_(Svt,ec.RGBA32F,!1,0,!0),new T_(Tvt,ec.R32F,!1,0,!0),new T_("a_uv",ec.RGB32F,!1,1)],wvt=[new T_(mvt,ec.RGBA32F,!1,0,!0),new T_(Avt,ec.RGBA32F,!1,0,!0),new T_(bvt,ec.RGB32F,!1,0,!0),new T_(yvt,ec.RGBA32F,!1,0,!0),new T_(Svt,ec.RGBA32F,!1,0,!0),new T_(Tvt,ec.R32F,!1,0,!0),new T_(Uc.ATTR_TEX_COORD,ec.RGB32F,!1,1),new T_(Uc.ATTR_TEX_COORD3,ec.RGB32F,!1,1),new T_(Uc.ATTR_NORMAL,ec.RGB32F,!1,1),new T_(Uc.ATTR_COLOR1,ec.RGBA8,!0,1)],Rvt={parent:null,owner:null,subModelIdx:0},Ivt=function(t){function e(e){var i;return(i=t.call(this,e)||this)._defines=void 0,i._frameTile_velLenScale=void 0,i._unifrom_velLenScale=void 0,i._tmp_velLenScale=void 0,i._node_scale=void 0,i._vertAttrs=[],i._defaultMat=null,i._particleNum=0,i._tempParticle=null,i._colorTexture=null,i._forceTexture=null,i._velocityTexture=null,i._rotationTexture=null,i._sizeTexture=null,i._animTexture=null,i._colorData=null,i._forceData=null,i._velocityData=null,i._rotationData=null,i._sizeData=null,i._animData=null,i._uTimeHandle=0,i._uRotHandle=0,i._uNodeRotHandle=0,i._alignSpace=vdt.View,i._inited=!1,i._frameTile_velLenScale=new cn(1,1,0,0),i._unifrom_velLenScale=i._frameTile_velLenScale.clone(),i._tmp_velLenScale=i._frameTile_velLenScale.clone(),i._node_scale=new gn,i._defines={CC_USE_WORLD_SPACE:!0,CC_USE_BILLBOARD:!0,CC_USE_STRETCHED_BILLBOARD:!1,CC_USE_HORIZONTAL_BILLBOARD:!1,CC_USE_VERTICAL_BILLBOARD:!1,COLOR_OVER_TIME_MODULE_ENABLE:!1},i._tempParticle=new edt(null),i._particleNum=0,i}s(e,t);var i=e.prototype;return i.onInit=function(e){t.prototype.onInit.call(this,e),this._setVertexAttrib(),this._initModel(),this.updateMaterialParams(),this.setVertexAttributes(),this._inited=!0},i.updateRenderMode=function(){this._setVertexAttrib(),this.updateMaterialParams(),this.setVertexAttributes()},i.setVertexAttributes=function(){t.prototype.setVertexAttributes.call(this),this._model.constructAttributeIndex()},i.clear=function(){t.prototype.clear.call(this),this._particleNum=0,this.updateRenderData()},i.onDestroy=function(){t.prototype.onDestroy.call(this),this._forceTexture&&this._forceTexture.destroy(),this._velocityTexture&&this._velocityTexture.destroy(),this._colorTexture&&this._colorTexture.destroy(),this._sizeTexture&&this._sizeTexture.destroy(),this._rotationTexture&&this._rotationTexture.destroy(),this._animTexture&&this._animTexture.destroy(),this._forceData=null,this._velocityData=null,this._colorData=null,this._sizeData=null,this._rotationData=null,this._animData=null},i.enableModule=function(){var t,e=(null===(t=this._particleSystem)||void 0===t?void 0:t.getMaterialInstance(0))||this._defaultMat;e&&(this.initShaderUniform(e),e.recompileShaders(this._defines),this._model&&this._model.setSubModelMaterial(0,e))},i.getFreeParticle=function(){var t;return this._particleSystem&&this._particleNum>=(null===(t=this._particleSystem)||void 0===t?void 0:t.capacity)?null:this._tempParticle},i.setNewParticle=function(t){this._particleSystem&&(this._model.addGPUParticleVertexData(t,this._particleNum,this._particleSystem.time),this._particleNum++)},i.getDefaultMaterial=function(){return this._defaultMat},i.updateRotation=function(t){t&&this.doUpdateRotation(t)},i.doUpdateRotation=function(t){if(this._renderInfo.renderMode===ydt.Mesh||this._alignSpace!==vdt.View){var e;if(this._alignSpace===vdt.Local)null===(e=this._particleSystem)||void 0===e||e.node.getRotation(Ygt);else if(this._alignSpace===vdt.World){var i;null===(i=this._particleSystem)||void 0===i||i.node.getWorldRotation(Ygt)}else if(this._alignSpace===vdt.View){var n,r;Ygt.set(0,0,0,1);var s=null===(n=this._particleSystem)||void 0===n||null===(r=n.node.scene.renderScene)||void 0===r?void 0:r.cameras;if(void 0!==s&&this._particleSystem)for(var a=0;a<(null==s?void 0:s.length);++a){var o=s[a];if((o.visibility&this._particleSystem.node.layer)===this._particleSystem.node.layer){Bn.fromViewUp(Ygt,o.forward);break}}}else Ygt.set(0,0,0,1);t.setUniform(this._uNodeRotHandle,Ygt)}},i.updateScale=function(t){t&&this.doUpdateScale(t)},i.doUpdateScale=function(t){var e,i=this._node_scale;switch(null===(e=this._particleSystem)||void 0===e?void 0:e.scaleSpace){case mdt.Local:this._particleSystem.node.getScale(i);break;case mdt.World:this._particleSystem.node.getWorldScale(i)}t.setUniform(t.getHandle("scale"),Hgt.set(i.x,i.y,i.z))},i.updateParticles=function(t){return this._particleSystem?(this._particleNum=this._model.updateGPUParticles(this._particleNum,this._particleSystem.time,t),this.updateShaderUniform(t),this._model.enabled=this._particleNum>0,this._particleNum):this._particleNum},i.updateRenderData=function(){},i.beforeRender=function(){this._model.updateIA(this._particleNum)},i.updateAlignSpace=function(t){this._alignSpace=t},i.updateShaderUniform=function(t){if(this._particleSystem){var e=this._particleSystem.getMaterialInstance(0)||this._defaultMat;if(e){var i=e.passes[0];Xgt.x=this._particleSystem.time,Xgt.y=t,i.setUniform(this._uTimeHandle,Xgt),this._particleSystem.node.getWorldRotation(jgt),i.setUniform(this._uRotHandle,jgt),this.doUpdateRotation(i)}}},i.initShaderUniform=function(t){var e,i,n,r,s,a,o=t.passes[0];this._uTimeHandle=o.getHandle("u_timeDelta"),this._uRotHandle=o.getHandle("u_worldRot"),this._uNodeRotHandle=o.getHandle("nodeRotation"),this.doUpdateScale(o),o.setUniform(o.getHandle("frameTile_velLenScale"),this._unifrom_velLenScale),Xgt.x=pvt,Xgt.y=.03125,o.setUniform(o.getHandle("u_sampleInfo"),Xgt);var h=!1,u=null===(e=this._particleSystem)||void 0===e?void 0:e._forceOvertimeModule;if(h=!!u&&u.enable,this._defines.FORCE_OVER_TIME_MODULE_ENABLE=h,h){var l=wft(this._forceTexture,this._forceData,pvt,u.x,u.y,u.z);this._forceTexture=l.texture,this._forceData=l.texdata;var c=o.getHandle("force_over_time_tex0"),_=IT.getBindingFromHandle(c);o.bindSampler(_,this._forceTexture.getGFXSampler()),o.bindTexture(_,this._forceTexture.getGFXTexture());var f=o.getHandle("u_force_space");o.setUniform(f,u.space);var d=o.getHandle("u_force_mode");o.setUniform(d,this._forceTexture.height)}var p=null===(i=this._particleSystem)||void 0===i?void 0:i._velocityOvertimeModule;if(h=!!p&&p.enable,this._defines.VELOCITY_OVER_TIME_MODULE_ENABLE=h,h){var m=function(t,e,i,n,r,s,a){var o=Math.max(Cft(n),Cft(r),Cft(s),Cft(a)),h=i*o*4;null!==e&&e.length===h||(e=new Float32Array(i*o*4));for(var u=[n,r,s,a],l=0;l<o;l++)for(var c=0;c<4;c++)for(var _=u[c],f=0,d=0,p=0;p<i;p++){var m=Eft(_,.03225806451612903*p,l);d=(f+=m)/(p+1),e[4*(l*i+p)+c]=d}return{texture:xft(t,e,i,o),texdata:e}}(this._velocityTexture,this._velocityData,pvt,p.x,p.y,p.z,p.speedModifier);this._velocityTexture=m.texture,this._velocityData=m.texdata;var g=o.getHandle("velocity_over_time_tex0"),v=IT.getBindingFromHandle(g);o.bindSampler(v,this._velocityTexture.getGFXSampler()),o.bindTexture(v,this._velocityTexture.getGFXTexture());var y=o.getHandle("u_velocity_space");o.setUniform(y,p.space);var S=o.getHandle("u_velocity_mode");o.setUniform(S,this._velocityTexture.height)}var T=null===(n=this._particleSystem)||void 0===n?void 0:n._colorOverLifetimeModule;if(h=!!T&&T.enable,this._defines.COLOR_OVER_TIME_MODULE_ENABLE=h,h){var A=function(t,e,i,n){var r=function(t){switch(t.mode){case qft.TwoColors:case qft.TwoGradients:return 2;default:return 1}}(n),s=i*r*4;null!==e&&e.length===s||(e=new Uint8Array(i*r*4));for(var a=1/(i-1),o=0,h=0;h<r;h++)for(var u=0;u<i;u++){var l=Jft(n,a*u,h);e[o]=l.r,e[o+1]=l.g,e[o+2]=l.b,e[o+3]=l.a,o+=4}return null!==t&&i===t.width&&r===t.height||(t&&t.destroy(),(t=new lm).create(i,r,yd.RGBA8888),t.setFilters(Td.LINEAR,Td.LINEAR),t.setWrapMode(Sd.CLAMP_TO_EDGE,Sd.CLAMP_TO_EDGE)),t.uploadData(e),{texture:t,texdata:e}}(this._colorTexture,this._colorData,pvt,T.color);this._colorTexture=A.texture,this._colorData=A.texdata;var b=o.getHandle("color_over_time_tex0"),E=IT.getBindingFromHandle(b);o.bindSampler(E,this._colorTexture.getGFXSampler()),o.bindTexture(E,this._colorTexture.getGFXTexture());var C=o.getHandle("u_color_mode");o.setUniform(C,this._colorTexture.height)}var x,w=null===(r=this._particleSystem)||void 0===r?void 0:r._rotationOvertimeModule;if(h=!!w&&w.enable,this._defines.ROTATION_OVER_TIME_MODULE_ENABLE=h,h&&(x=w.separateAxes?wft(this._rotationTexture,this._rotationData,pvt,w.x,w.y,w.z):function(t,e,i,n){var r=Cft(n),s=128*r;null!==e&&e.length===s||(e=new Float32Array(128*r));for(var a=0,o=0;o<r;o++)for(var h=0;h<32;h++){var u=Eft(n,.03225806451612903*h,o);e[a+2]=u,a+=4}return{texture:xft(t,e,32,r),texdata:e}}(this._rotationTexture,this._rotationData,0,w.z),this._rotationTexture=x.texture,this._rotationData=x.texdata,this._rotationTexture)){var R=o.getHandle("rotation_over_time_tex0"),I=IT.getBindingFromHandle(R);o.bindSampler(I,this._rotationTexture.getGFXSampler()),o.bindTexture(I,this._rotationTexture.getGFXTexture());var D=o.getHandle("u_rotation_mode");o.setUniform(D,this._rotationTexture.height)}var B,M=null===(s=this._particleSystem)||void 0===s?void 0:s._sizeOvertimeModule;if(h=!!M&&M.enable,this._defines.SIZE_OVER_TIME_MODULE_ENABLE=h,h&&(B=M.separateAxes?wft(this._sizeTexture,this._sizeData,pvt,M.x,M.y,M.z,!0):function(t,e,i,n){var r=Cft(n),s=128*r;null!==e&&e.length===s||(e=new Float32Array(128*r));for(var a=0,o=0,h=0;h<r;h++){0;for(var u=0;u<32;u++){var l=Eft(n,.03225806451612903*u,h);a=l,e[o]=a,e[o+1]=a,e[o+2]=a,o+=4}}return{texture:xft(t,e,32,r),texdata:e}}(this._sizeTexture,this._sizeData,0,M.size),this._sizeTexture=B.texture,this._sizeData=B.texdata,this._sizeTexture)){var P=o.getHandle("size_over_time_tex0"),O=IT.getBindingFromHandle(P);o.bindSampler(O,this._sizeTexture.getGFXSampler()),o.bindTexture(O,this._sizeTexture.getGFXTexture());var L=o.getHandle("u_size_mode");o.setUniform(L,this._sizeTexture.height)}var N=null===(a=this._particleSystem)||void 0===a?void 0:a._textureAnimationModule;if(h=!!N&&N.enable,this._defines.TEXTURE_ANIMATION_MODULE_ENABLE=h,h){var F=function(t,e,i,n,r){var s=Math.max(Cft(n),Cft(r)),a=i*s*4;null!==e&&e.length===a||(e=new Float32Array(i*s*4));for(var o=[n,r],h=0;h<s;h++)for(var u=0;u<2;u++)for(var l=o[u],c=0,_=0;_<i;_++){var f=Eft(l,.03225806451612903*_,h);c=f,e[4*(h*i+_)+u]=c}return{texture:xft(t,e,i,s),texdata:e}}(this._animTexture,this._animData,pvt,N.startFrame,N.frameOverTime);this._animTexture=F.texture,this._animData=F.texdata;var k=o.getHandle("texture_animation_tex0"),G=IT.getBindingFromHandle(k);o.bindSampler(G,this._animTexture.getGFXSampler()),o.bindTexture(G,this._animTexture.getGFXTexture());var V=o.getHandle("u_anim_info");Xgt.x=this._animTexture.height,Xgt.y=N.numTilesX*N.numTilesY,Xgt.z=N.cycleCount,o.setUniform(V,Xgt)}this._defines.USE_VK_SHADER=Ff.gfxDevice.gfxAPI===Jl.VULKAN,this._defines.CC_INSTANCE_PARTICLE=this._useInstance},i.getParticleCount=function(){return this._particleNum},i.onMaterialModified=function(){this._inited&&this.updateMaterialParams()},i.onRebuildPSO=function(t,e){this._model&&0===t&&this._model.setSubModelMaterial(0,e)},i.updateVertexAttrib=function(){if(this._renderInfo.renderMode===ydt.Mesh&&this._renderInfo.mesh){var t=this._renderInfo.mesh.readAttributeFormat(0,Uc.ATTR_COLOR);if(t){for(var e=ec.RGBA8,i=0;i<j_.length;++i)if(j_[i].name===t.name){e=i;break}this._vertAttrs[9]=new T_(Uc.ATTR_COLOR1,e,!0,this._useInstance?1:0)}else{var n=ec.RGBA8;this._vertAttrs[9]=new T_(Uc.ATTR_COLOR1,n,!0,this._useInstance?1:0)}}},i._setVertexAttrib=function(){if(this._useInstance)this._setVertexAttribIns();else switch(this._renderInfo.renderMode){case ydt.StrecthedBillboard:this._vertAttrs=Evt.slice();break;case ydt.Mesh:this._vertAttrs=Cvt.slice();break;default:this._vertAttrs=Evt.slice()}},i._setVertexAttribIns=function(){switch(this._renderInfo.renderMode){case ydt.StrecthedBillboard:this._vertAttrs=xvt.slice();break;case ydt.Mesh:this._vertAttrs=wvt.slice();break;default:this._vertAttrs=xvt.slice()}},i.updateMaterialParams=function(){if(this._particleSystem){var t=this._particleSystem,e=t.sharedMaterial;null!==e&&(this._renderInfo.mainTexture=e.getProperty("mainTexture",0)),null==t.sharedMaterial&&null==this._defaultMat&&(Rvt.parent=bT.get("default-particle-gpu-material"),Rvt.owner=t,Rvt.subModelIdx=0,this._defaultMat=new ZT(Rvt),Rvt.parent=null,Rvt.owner=null,Rvt.subModelIdx=0,null!==this._renderInfo.mainTexture&&this._defaultMat.setProperty("mainTexture",this._renderInfo.mainTexture));var i=t.getMaterialInstance(0)||this._defaultMat;t.node.getWorldMatrix(Wgt),t.simulationSpace===mdt.World?this._defines.CC_USE_WORLD_SPACE=!0:this._defines.CC_USE_WORLD_SPACE=!1;var n=this._renderInfo.renderMode;n===ydt.Billboard?this._defines.CC_RENDER_MODE=0:n===ydt.StrecthedBillboard?(this._defines.CC_RENDER_MODE=1,this._frameTile_velLenScale.z=this._renderInfo.velocityScale,this._frameTile_velLenScale.w=this._renderInfo.lengthScale):n===ydt.HorizontalBillboard?this._defines.CC_RENDER_MODE=2:n===ydt.VerticalBillboard?this._defines.CC_RENDER_MODE=3:n===ydt.Mesh?this._defines.CC_RENDER_MODE=4:z("particle system renderMode "+n+" not support.");var r=t._textureAnimationModule;r&&r.enable?(jn.set(this._frameTile_velLenScale,r.numTilesX,r.numTilesY),cn.copy(this._unifrom_velLenScale,this._frameTile_velLenScale)):(this._tmp_velLenScale.z=this._frameTile_velLenScale.z,this._tmp_velLenScale.w=this._frameTile_velLenScale.w,cn.copy(this._unifrom_velLenScale,this._tmp_velLenScale)),this.initShaderUniform(i),i.recompileShaders(this._defines),this._model&&this._model.updateMaterial(i)}},i.setUseInstance=function(t){this._useInstance!==t&&(this._useInstance=t,this._model&&(this._model.useInstance=t,this._model.doDestroy()),this.updateRenderMode())},i.getNoisePreview=function(){},e}(Cgt);function Dvt(){var t=ID.root.device;return!!(t.capabilities.maxVertexTextureUnits>=8&&t.getFormatFeatures(ec.RGBA32F)&(cc.RENDER_TARGET|cc.SAMPLED_TEXTURE))||(S.warn("Maybe the device has restrictions on vertex textures or does not support float textures."),!1)}var Bvt,Mvt,Pvt,Ovt,Lvt,Nvt,Fvt,kvt,Gvt,Vvt,Uvt,zvt,Hvt,Wvt,Xvt,jvt,Yvt,qvt,Kvt,Qvt,Zvt,Jvt,$vt,tyt,eyt,iyt,nyt,ryt,syt,ayt,oyt,hyt,uyt,lyt,cyt,_yt,fyt,dyt,pyt,myt,gyt,vyt,yyt,Syt,Tyt,Ayt,byt,Eyt,Cyt,xyt,wyt,Ryt,Iyt,Dyt,Byt,Myt,Pyt,Oyt,Lyt,Nyt,Fyt,kyt,Gyt,Vyt,Uyt,zyt,Hyt,Wyt,Xyt,jyt,Yyt,qyt,Kyt,Qyt,Zyt,Jyt,$yt,tSt,eSt,iSt,nSt,rSt,sSt,aSt,oSt,hSt,uSt,lSt,cSt,_St,fSt,dSt,pSt,mSt,gSt,vSt,ySt,SSt,TSt,ASt,bSt,ESt,CSt,xSt,wSt,RSt,ISt,DSt,BSt,MSt,PSt,OSt,LSt,NSt,FSt,kSt,GSt,VSt,USt,zSt,HSt,WSt,XSt,jSt,YSt,qSt,KSt,QSt,ZSt,JSt,$St,tTt,eTt,iTt,nTt,rTt,sTt,aTt,oTt,hTt,uTt,lTt,cTt,_Tt,fTt,dTt=(qgt=eo("cc.ParticleSystemRenderer"),Kgt=Lo(ydt),Qgt=Lo(ydt),Zgt=Lo(ZB),Jgt=Lo(zT),$gt=Lo(zT),tvt=Lo(zT),evt=Lo(zT),ivt=Lo(vdt),qgt(((dvt=function(){function t(){this._renderMode=svt&&svt(),this._velocityScale=avt&&avt(),this._lengthScale=ovt&&ovt(),this._mesh=hvt&&hvt(),this._cpuMaterial=uvt&&uvt(),this._gpuMaterial=lvt&&lvt(),this._mainTexture=cvt&&cvt(),this._useGPU=_vt&&_vt(),this._alignSpace=fvt&&fvt(),this._particleSystem=null}var e=t.prototype;return e.create=function(t){null===this._particleSystem?this._particleSystem=t:this._particleSystem!==t&&it(6033)},e.onInit=function(t){this.create(t);var e=this._useGPU&&Dvt();this._particleSystem.processor?it(6034):(this._particleSystem.processor=e?new Ivt(this):new zgt(this),this._particleSystem.processor.updateAlignSpace(this.alignSpace),this._particleSystem.processor.onInit(t)),e?this.gpuMaterial=this.particleMaterial:(this.particleMaterial&&-1!==this.particleMaterial.effectName.indexOf("particle-gpu")&&(this.particleMaterial=null,tt(6035)),this.cpuMaterial=this.particleMaterial)},e._switchProcessor=function(){if(this._particleSystem){this._particleSystem.processor&&(this._particleSystem.processor.detachFromScene(),this._particleSystem.processor.clear(),this._particleSystem.processor=null);var t=this._useGPU&&Dvt();!t&&this.cpuMaterial&&(this.particleMaterial=this.cpuMaterial),t&&this.gpuMaterial&&(this.particleMaterial=this.gpuMaterial),this._particleSystem.processor=t?new Ivt(this):new zgt(this),this._particleSystem.processor.updateAlignSpace(this.alignSpace),this._particleSystem.processor.onInit(this._particleSystem),this._particleSystem.processor.onEnable(),this._particleSystem.bindModule()}},n(t,[{key:"renderMode",get:function(){return this._renderMode},set:function(t){this._renderMode!==t&&(this._renderMode=t,this._particleSystem&&this._particleSystem.processor.updateRenderMode())}},{key:"velocityScale",get:function(){return this._velocityScale},set:function(t){this._velocityScale=t,this._particleSystem&&this._particleSystem.processor.updateMaterialParams()}},{key:"lengthScale",get:function(){return this._lengthScale},set:function(t){this._lengthScale=t,this._particleSystem&&this._particleSystem.processor.updateMaterialParams()}},{key:"mesh",get:function(){return this._mesh},set:function(t){this._mesh=t,this._particleSystem&&this._particleSystem.processor.setVertexAttributes()}},{key:"particleMaterial",get:function(){return this._particleSystem?this._particleSystem.getSharedMaterial(0):null},set:function(t){this._particleSystem&&this._particleSystem.setSharedMaterial(t,0)}},{key:"cpuMaterial",get:function(){return this._cpuMaterial},set:function(t){if(null!==t){var e=t.effectName;-1!==e.indexOf("particle")&&-1===e.indexOf("particle-gpu")?(this._cpuMaterial=t,this.particleMaterial=this._cpuMaterial):tt(6035)}}},{key:"gpuMaterial",get:function(){return this._gpuMaterial},set:function(t){null!==t&&(-1!==t.effectName.indexOf("particle-gpu")?(this._gpuMaterial=t,this.particleMaterial=this._gpuMaterial):tt(6035))}},{key:"trailMaterial",get:function(){return this._particleSystem?this._particleSystem.getSharedMaterial(1):null},set:function(t){this._particleSystem&&this._particleSystem.setSharedMaterial(t,1)}},{key:"mainTexture",get:function(){return this._mainTexture},set:function(t){this._mainTexture=t}},{key:"useGPU",get:function(){return this._useGPU},set:function(t){this._useGPU!==t&&(Dvt()?this._useGPU=t:this._useGPU=!1,this._switchProcessor())}},{key:"alignSpace",get:function(){return this._alignSpace},set:function(t){this._alignSpace=t,this._particleSystem.processor.updateAlignSpace(this._alignSpace)}}]),t}()).AlignmentSpace=vdt,m((rvt=dvt).prototype,"renderMode",[Kgt],Object.getOwnPropertyDescriptor(rvt.prototype,"renderMode"),rvt.prototype),svt=ja(rvt.prototype,"_renderMode",[Qgt,lo],(function(){return ydt.Billboard})),avt=ja(rvt.prototype,"_velocityScale",[lo],(function(){return 1})),ovt=ja(rvt.prototype,"_lengthScale",[lo],(function(){return 1})),hvt=ja(rvt.prototype,"_mesh",[lo],(function(){return null})),m(rvt.prototype,"mesh",[Zgt],Object.getOwnPropertyDescriptor(rvt.prototype,"mesh"),rvt.prototype),m(rvt.prototype,"particleMaterial",[Jgt],Object.getOwnPropertyDescriptor(rvt.prototype,"particleMaterial"),rvt.prototype),m(rvt.prototype,"cpuMaterial",[$gt],Object.getOwnPropertyDescriptor(rvt.prototype,"cpuMaterial"),rvt.prototype),uvt=ja(rvt.prototype,"_cpuMaterial",[lo],(function(){return null})),m(rvt.prototype,"gpuMaterial",[tvt],Object.getOwnPropertyDescriptor(rvt.prototype,"gpuMaterial"),rvt.prototype),lvt=ja(rvt.prototype,"_gpuMaterial",[lo],(function(){return null})),m(rvt.prototype,"trailMaterial",[evt],Object.getOwnPropertyDescriptor(rvt.prototype,"trailMaterial"),rvt.prototype),cvt=ja(rvt.prototype,"_mainTexture",[lo],(function(){return null})),_vt=ja(rvt.prototype,"_useGPU",[lo],(function(){return!1})),m(rvt.prototype,"alignSpace",[ivt],Object.getOwnPropertyDescriptor(rvt.prototype,"alignSpace"),rvt.prototype),fvt=ja(rvt.prototype,"_alignSpace",[lo],(function(){return vdt.View})),nvt=rvt))||nvt),pTt=Math.cos(Vi(100)),mTt={position:new gn,velocity:new gn},gTt=new Bn,vTt=new gn,yTt=new gn,STt=new En,TTt=function(){function t(t){for(this.start=void 0,this.end=void 0,this.trailElements=void 0,this.start=-1,this.end=-1,this.trailElements=[];t--;)this.trailElements.push({position:new gn,lifetime:0,width:0,velocity:new gn,direction:0,color:new En})}var e=t.prototype;return e.getElement=function(t){return-1===this.start?null:(t<0&&(t=(t+this.trailElements.length)%this.trailElements.length),t>=this.trailElements.length&&(t%=this.trailElements.length),this.trailElements[t])},e.addElement=function(){if(0===this.trailElements.length)return null;if(-1===this.start)return this.start=0,this.end=1,this.trailElements[0];this.start===this.end&&(this.trailElements.splice(this.end,0,{position:new gn,lifetime:0,width:0,velocity:new gn,direction:0,color:new En}),this.start++,this.start%=this.trailElements.length);var t=this.end++;return this.end%=this.trailElements.length,this.trailElements[t]},e.iterateElement=function(t,e,i,n){for(var r=this.start>=this.end?this.end+this.trailElements.length:this.end,s=this.start;s<r;s++)e(t,this.trailElements[s%this.trailElements.length],i,n)&&(this.start++,this.start%=this.trailElements.length);this.start===r&&(this.start=-1,this.end=-1)},e.count=function(){return this.start<this.end?this.end-this.start:this.trailElements.length+this.end-this.start},e.clear=function(){this.start=-1,this.end=-1},t}(),ATt=(Bvt=eo("cc.TrailModule"),Mvt=Lo(bdt),Pvt=Lo(bft),Ovt=Lo(mdt),Lvt=Lo(Edt),Nvt=Lo(bft),Fvt=Lo(Zft),kvt=Lo(Zft),Gvt=Lo(mdt),Bvt((Uvt=function(){var t=e.prototype;function e(){this._enable=zvt&&zvt(),this.mode=Hvt&&Hvt(),this.lifeTime=Wvt&&Wvt(),this._minParticleDistance=Xvt&&Xvt(),this.existWithParticles=jvt&&jvt(),this.textureMode=Yvt&&Yvt(),this.widthFromParticle=qvt&&qvt(),this.widthRatio=Kvt&&Kvt(),this.colorFromParticle=Qvt&&Qvt(),this.colorOverTrail=Zvt&&Zvt(),this.colorOvertime=Jvt&&Jvt(),this._space=$vt&&$vt(),this._particleSystem=tyt&&tyt(),this._minSquaredDistance=0,this._vertSize=void 0,this._trailNum=0,this._trailLifetime=0,this.vbOffset=0,this.ibOffset=0,this._trailSegments=null,this._particleTrail=void 0,this._trailModel=null,this._subMeshData=null,this._vertAttrs=void 0,this._vbF32=null,this._vbUint32=null,this._iBuffer=null,this._needTransform=!1,this._material=null,this._psTransform=new Vn,this._iaVertCount=0,this._iaIndexCount=0,this._inited=void 0,this._vertAttrs=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RGBA32F),new T_(Uc.ATTR_TEX_COORD1,ec.RGB32F),new T_(Uc.ATTR_COLOR,ec.RGBA8,!0)],this._vertSize=0;for(var t,e=f(this._vertAttrs);!(t=e()).done;){var i=t.value;this._vertSize+=j_[i.format].size}this._particleTrail=new Map,this._inited=!1}return t.getModel=function(){return this._trailModel},t.onInit=function(t){this._particleSystem=t,this.minParticleDistance=this._minParticleDistance;for(var e=0,i=t.startLifetime.getMax(),n=t.rateOverTime.getMax(),r=t.duration,s=0,a=t.bursts.length;s<a;s++)e+=t.bursts[s].getMaxCount(t)*Math.ceil(i/r);this.lifeTime.getMax()<1&&tt(6036),this._trailNum=Math.ceil(i*Math.ceil(this.lifeTime.getMax())*60*(n*r+e)),this._trailSegments=new ws((function(){return new TTt(10)}),Math.ceil(n*r),(function(t){t.trailElements.length=0})),this._enable&&(this.enable=this._enable),this._inited=!0},t.onEnable=function(){this._attachToScene()},t.onDisable=function(){this._particleTrail.clear(),this._detachFromScene()},t._attachToScene=function(){this._trailModel&&(this._trailModel.scene&&this._detachFromScene(),this._particleSystem._getRenderScene().addModel(this._trailModel))},t._detachFromScene=function(){this._trailModel&&this._trailModel.scene&&this._trailModel.scene.removeModel(this._trailModel)},t.destroy=function(){this.destroySubMeshData(),this._trailModel&&(ID.root.destroyModel(this._trailModel),this._trailModel=null),this._trailSegments&&(this._trailSegments.destroy(),this._trailSegments=null)},t.play=function(){this._trailModel&&this._enable&&(this._trailModel.enabled=!0)},t.clear=function(){if(this.enable){for(var t=this._particleTrail.values(),e=t.next();!e.done;)e.value.clear(),e=t.next();this._particleTrail.clear(),this.updateRenderData(),this._trailModel&&(this._trailModel.enabled=!1)}},t.updateMaterial=function(){this._particleSystem&&(this._material=this._particleSystem.getMaterialInstance(1)||this._particleSystem.processor._defaultTrailMat,this._trailModel&&this._trailModel.setSubModelMaterial(0,this._material))},t.update=function(){this._trailLifetime=this.lifeTime.evaluate(this._particleSystem.time,1),this.space===mdt.World&&this._particleSystem.simulationSpace===mdt.Local?(this._needTransform=!0,this._particleSystem.node.getWorldMatrix(this._psTransform),this._particleSystem.node.getWorldRotation(gTt)):this._needTransform=!1},t.animate=function(t,e){if(this._trailSegments)if(t.loopCount>t.lastLoop)t.trailDelay>1?(t.lastLoop=t.loopCount,t.trailDelay=0):t.trailDelay++;else{var i=this._particleTrail.get(t);if(!i)return i=this._trailSegments.alloc(),void this._particleTrail.set(t,i);var n=i.getElement(i.end-1);if(this._needTransform?gn.transformMat4(vTt,t.position,this._psTransform):gn.copy(vTt,t.position),!(n&&(i.iterateElement(this,this._updateTrailElement,t,e),gn.squaredDistance(n.position,vTt)<this._minSquaredDistance))&&(n=i.addElement())){gn.copy(n.position,vTt),n.lifetime=0,this.widthFromParticle?n.width=t.size.x*this.widthRatio.evaluate(0,1):n.width=this.widthRatio.evaluate(0,1);var r=i.count();if(2===r){var s=i.getElement(i.end-2);gn.subtract(s.velocity,n.position,s.position)}else if(r>2){var a=i.getElement(i.end-2),o=i.getElement(i.end-3);gn.subtract(vTt,o.position,a.position),gn.subtract(yTt,n.position,a.position),gn.subtract(a.velocity,yTt,vTt),gn.equals(gn.ZERO,a.velocity)&&gn.copy(a.velocity,vTt),gn.normalize(a.velocity,a.velocity),this._checkDirectionReverse(a,o)}this.colorFromParticle?n.color.set(t.color):n.color.set(this.colorOvertime.evaluate(0,1))}}},t.removeParticle=function(t){var e=this._particleTrail.get(t);e&&this._trailSegments&&(e.clear(),this._trailSegments.free(e),this._particleTrail.delete(t))},t.updateRenderData=function(){this.vbOffset=0,this.ibOffset=0;for(var t,e=f(this._particleTrail.keys());!(t=e()).done;){var i=t.value,n=this._particleTrail.get(i);if(-1!==n.start){var r=4*this.vbOffset/this._vertSize,s=n.start>=n.end?n.end+n.trailElements.length:n.end,a=s-n.start,o=1/a,h=n.trailElements[n.start];this._fillVertexBuffer(h,this.colorOverTrail.evaluate(1,1),r,1,0,4);for(var u=n.start+1;u<s;u++){var l=n.trailElements[u%n.trailElements.length],c=u-n.start;this._fillVertexBuffer(l,this.colorOverTrail.evaluate(1-c/a,1),r,1-c*o,c,5)}this._needTransform?gn.transformMat4(mTt.position,i.position,this._psTransform):gn.copy(mTt.position,i.position);var _=this._trailModel;if(_&&_.node.invalidateChildren(mm.POSITION),1===a||2===a){var d=n.getElement(n.end-1);gn.subtract(d.velocity,mTt.position,d.position),this._vbF32[this.vbOffset-this._vertSize/4-4]=d.velocity.x,this._vbF32[this.vbOffset-this._vertSize/4-3]=d.velocity.y,this._vbF32[this.vbOffset-this._vertSize/4-2]=d.velocity.z,this._vbF32[this.vbOffset-4]=d.velocity.x,this._vbF32[this.vbOffset-3]=d.velocity.y,this._vbF32[this.vbOffset-2]=d.velocity.z,gn.subtract(mTt.velocity,mTt.position,d.position),this._checkDirectionReverse(mTt,d)}else if(a>2){var p=n.getElement(n.end-1),m=n.getElement(n.end-2);gn.subtract(vTt,m.position,p.position),gn.subtract(yTt,mTt.position,p.position),gn.normalize(vTt,vTt),gn.normalize(yTt,yTt),gn.subtract(p.velocity,yTt,vTt),gn.normalize(p.velocity,p.velocity),this._checkDirectionReverse(p,m),this.vbOffset-=this._vertSize/4*2,this.ibOffset-=6,this._fillVertexBuffer(p,this.colorOverTrail.evaluate(o,1),r,o,a-1,5),gn.subtract(mTt.velocity,mTt.position,p.position),gn.normalize(mTt.velocity,mTt.velocity),this._checkDirectionReverse(mTt,p)}this.widthFromParticle?mTt.width=i.size.x*this.widthRatio.evaluate(0,1):mTt.width=this.widthRatio.evaluate(0,1),mTt.color=i.color,gn.equals(mTt.velocity,gn.ZERO)?this.ibOffset-=3:this._fillVertexBuffer(mTt,this.colorOverTrail.evaluate(0,1),r,0,a,1)}}this._trailModel&&(this._trailModel.enabled=this.ibOffset>0)},t.updateIA=function(t){var e=this._trailModel&&this._trailModel.subModels;if(e&&e.length>0){var i=e[0];i.inputAssembler.vertexBuffers[0].update(this._vbF32),i.inputAssembler.indexBuffer.update(this._iBuffer),i.inputAssembler.firstIndex=0,i.inputAssembler.indexCount=t,i.inputAssembler.vertexCount=this._iaVertCount}},t.beforeRender=function(){this.updateIA(this.ibOffset)},t._createModel=function(){this._trailModel||(this._trailModel=S.director.root.createModel(RR))},t.rebuild=function(){var t=ID.root.device,e=t.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,this._vertSize*(this._trailNum+1)*2,this._vertSize)),i=new ArrayBuffer(this._vertSize*(this._trailNum+1)*2);this._vbF32=new Float32Array(i),this._vbUint32=new Uint32Array(i),e.update(i);var n=t.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.HOST|oc.DEVICE,6*Math.max(1,this._trailNum)*Uint16Array.BYTES_PER_ELEMENT,Uint16Array.BYTES_PER_ELEMENT));this._iBuffer=new Uint16Array(6*Math.max(1,this._trailNum)),n.update(this._iBuffer),this._iaVertCount=2*(this._trailNum+1),this._iaIndexCount=6*this._trailNum,this._subMeshData=new FD([e],this._vertAttrs,wc.TRIANGLE_LIST,n);var r=this._trailModel;r&&this._material&&(r.node=r.transform=this._particleSystem.node,r.visFlags=this._particleSystem.visibility,r.initSubModel(0,this._subMeshData,this._material),r.enabled=!0)},t._updateTrailElement=function(t,e,i,n){return e.lifetime+=n,t.colorFromParticle?(e.color.set(i.color),e.color.multiply(t.colorOvertime.evaluate(1-i.remainingLifetime/i.startLifetime,1))):e.color.set(t.colorOvertime.evaluate(1-i.remainingLifetime/i.startLifetime,1)),t.widthFromParticle?e.width=i.size.x*t.widthRatio.evaluate(e.lifetime/t._trailLifetime,1):e.width=t.widthRatio.evaluate(e.lifetime/t._trailLifetime,1),e.lifetime>t._trailLifetime},t._fillVertexBuffer=function(t,e,i,n,r,s){this._vbF32[this.vbOffset++]=t.position.x,this._vbF32[this.vbOffset++]=t.position.y,this._vbF32[this.vbOffset++]=t.position.z,this._vbF32[this.vbOffset++]=t.direction,this._vbF32[this.vbOffset++]=t.width,this._vbF32[this.vbOffset++]=n,this._vbF32[this.vbOffset++]=0,this._vbF32[this.vbOffset++]=t.velocity.x,this._vbF32[this.vbOffset++]=t.velocity.y,this._vbF32[this.vbOffset++]=t.velocity.z,STt.set(t.color),STt.multiply(e),this._vbUint32[this.vbOffset++]=En.toUint32(STt),this._vbF32[this.vbOffset++]=t.position.x,this._vbF32[this.vbOffset++]=t.position.y,this._vbF32[this.vbOffset++]=t.position.z,this._vbF32[this.vbOffset++]=1-t.direction,this._vbF32[this.vbOffset++]=t.width,this._vbF32[this.vbOffset++]=n,this._vbF32[this.vbOffset++]=1,this._vbF32[this.vbOffset++]=t.velocity.x,this._vbF32[this.vbOffset++]=t.velocity.y,this._vbF32[this.vbOffset++]=t.velocity.z,this._vbUint32[this.vbOffset++]=En.toUint32(STt),1&s&&(this._iBuffer[this.ibOffset++]=i+2*r,this._iBuffer[this.ibOffset++]=i+2*r-1,this._iBuffer[this.ibOffset++]=i+2*r+1),4&s&&(this._iBuffer[this.ibOffset++]=i+2*r,this._iBuffer[this.ibOffset++]=i+2*r+1,this._iBuffer[this.ibOffset++]=i+2*r+2)},t._checkDirectionReverse=function(t,e){gn.dot(t.velocity,e.velocity)<pTt?t.direction=1-e.direction:t.direction=e.direction},t.destroySubMeshData=function(){this._subMeshData&&(this._subMeshData.destroy(),this._subMeshData=null)},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){t===this._enable&&this._trailModel||(t&&!this._enable&&(this._enable=t,this._particleSystem.processor&&this._particleSystem.processor.updateTrailMaterial()),t&&!this._trailModel&&(this._createModel(),this.rebuild()),this._enable=t,this._trailModel&&(this._trailModel.enabled=t),t?this.onEnable():this.onDisable())}},{key:"minParticleDistance",get:function(){return this._minParticleDistance},set:function(t){this._minParticleDistance=t,this._minSquaredDistance=t*t}},{key:"space",get:function(){return this._space},set:function(t){this._space=t;var e=this._particleSystem;e&&e.processor&&e.processor.updateTrailMaterial()}},{key:"inited",get:function(){return this._inited}}]),e}(),zvt=ja(Uvt.prototype,"_enable",[lo],(function(){return!1})),Hvt=ja(Uvt.prototype,"mode",[Mvt,lo],(function(){return bdt.Particles})),Wvt=ja(Uvt.prototype,"lifeTime",[Pvt,lo],(function(){return new bft})),Xvt=ja(Uvt.prototype,"_minParticleDistance",[lo],(function(){return.1})),m(Uvt.prototype,"space",[Ovt],Object.getOwnPropertyDescriptor(Uvt.prototype,"space"),Uvt.prototype),jvt=ja(Uvt.prototype,"existWithParticles",[lo],(function(){return!0})),Yvt=ja(Uvt.prototype,"textureMode",[Lvt,lo],(function(){return Edt.Stretch})),qvt=ja(Uvt.prototype,"widthFromParticle",[lo],(function(){return!0})),Kvt=ja(Uvt.prototype,"widthRatio",[Nvt,lo],(function(){return new bft})),Qvt=ja(Uvt.prototype,"colorFromParticle",[lo],(function(){return!1})),Zvt=ja(Uvt.prototype,"colorOverTrail",[Fvt,lo],(function(){return new Zft})),Jvt=ja(Uvt.prototype,"colorOvertime",[kvt,lo],(function(){return new Zft})),$vt=ja(Uvt.prototype,"_space",[Gvt],(function(){return mdt.World})),tyt=ja(Uvt.prototype,"_particleSystem",[lo],(function(){return null})),Vvt=Uvt))||Vvt),bTt=new Vn,ETt=new Vn,CTt=new Bn,xTt=new gn,wTt=["_colorOverLifetimeModule","_sizeOvertimeModule","_velocityOvertimeModule","_forceOvertimeModule","_limitVelocityOvertimeModule","_rotationOvertimeModule","_textureAnimationModule"],RTt=function(){function t(t){this._particleSystem=void 0,this._processor=void 0,this._node=void 0,this._particlesAll=void 0,this._updateList=new Map,this._animateList=new Map,this._runAnimateList=new Array,this._localMat=new Vn,this._gravity=new cn,this.minPos=new gn,this.maxPos=new gn,this._nodePos=new gn,this._nodeSize=new gn,this._particleSystem=t,this._processor=this._particleSystem.processor,this._node=t.node,this._particlesAll=[],this._initModuleList()}var e=t.prototype;return e._updateBoundingNode=function(){this._nodeSize.set(this.maxPos.x-this.minPos.x,this.maxPos.y-this.minPos.y,this.maxPos.z-this.minPos.z),this._nodePos.set(this.minPos.x+.5*this._nodeSize.x,this.minPos.y+.5*this._nodeSize.y,this.minPos.z+.5*this._nodeSize.z)},e.setBoundingBoxSize=function(t){this.maxPos.x=this._nodePos.x+t.x,this.maxPos.y=this._nodePos.y+t.y,this.maxPos.z=this._nodePos.z+t.z,this.minPos.x=this._nodePos.x-t.x,this.minPos.y=this._nodePos.y-t.y,this.minPos.z=this._nodePos.z-t.z,this._updateBoundingNode()},e.setBoundingBoxCenter=function(t,e,i){this.maxPos.x=t+.5*this._nodeSize.x,this.maxPos.y=e+.5*this._nodeSize.y,this.maxPos.z=i+.5*this._nodeSize.z,this.minPos.x=t-.5*this._nodeSize.x,this.minPos.y=e-.5*this._nodeSize.y,this.minPos.z=i-.5*this._nodeSize.z,this._updateBoundingNode()},e._initModuleList=function(){var t=this;wTt.forEach((function(e){var i=t._particleSystem[e];i&&i.enable&&(i.needUpdate&&t._updateList.set(i.name,i),i.needAnimate&&t._animateList.set(i.name,i))})),this._runAnimateList.length=0;for(var e=0,i=fdt.length;e<i;e++){var n=this._animateList.get(fdt[e]);n&&this._runAnimateList.push(n)}},e._emit=function(t,e,i){var n=this._particleSystem,r=this._node,s=n.time%n.duration/n.duration;r.invalidateChildren(mm.POSITION),n.simulationSpace===mdt.World&&(r.getWorldMatrix(bTt),r.getWorldRotation(CTt));for(var a=0;a<t;++a){var o=new edt(n);o.particleSystem=n,o.reset();var h=ji(Xi(0,b));n._shapeModule&&n._shapeModule.enable?n._shapeModule.emit(o):(gn.set(o.position,0,0,0),gn.copy(o.velocity,Cdt)),n._textureAnimationModule&&n._textureAnimationModule.enable&&n._textureAnimationModule.init(o);var u=n.startSpeed.evaluate(s,h);gn.multiplyScalar(o.velocity,o.velocity,u),n.simulationSpace===mdt.World&&(gn.transformMat4(o.position,o.position,bTt),gn.transformQuat(o.velocity,o.velocity,CTt)),gn.copy(o.ultimateVelocity,o.velocity),gn.set(o.rotation,0,0,0),n.startSize3D?gn.set(o.startSize,n.startSizeX.evaluate(s,h),n.startSizeY.evaluate(s,h),n.startSizeZ.evaluate(s,h)):(gn.set(o.startSize,n.startSizeX.evaluate(s,h),1,1),o.startSize.y=o.startSize.x),gn.copy(o.size,o.startSize),o.startLifetime=n.startLifetime.evaluate(s,h)+e,o.remainingLifetime=o.startLifetime,i.push(o)}},e._updateParticles=function(t,e){var i=this,n=this._particleSystem;switch(n.node.getWorldMatrix(bTt),n.scaleSpace){case mdt.Local:n.node.getScale(xTt);break;case mdt.World:n.node.getWorldScale(xTt)}if(this._updateList.forEach((function(){})),n.simulationSpace===mdt.Local){var r=n.node.getRotation();Vn.fromQuat(this._localMat,r),this._localMat.transpose()}n.node.parent&&(n.node.parent.getWorldMatrix(ETt),ETt.invert());for(var s=function(){var r=e[a];if(r.remainingLifetime-=t,gn.set(r.animatedVelocity,0,0,0),n.gravityModifier.mode!==Aft.Constant||0!==n.gravityModifier.constant){var s=Pdt(n.gravityModifier)?ji(r.randomSeed):0;if(n.simulationSpace===mdt.Local){var o=9.8*-n.gravityModifier.evaluate(1-r.remainingLifetime/r.startLifetime,s)*t;i._gravity.x=0,i._gravity.y=o,i._gravity.z=0,i._gravity.w=1,Ni(o,0,Oi)||(n.node.parent&&(i._gravity=i._gravity.transformMat4(ETt)),i._gravity=i._gravity.transformMat4(i._localMat),r.velocity.x+=i._gravity.x,r.velocity.y+=i._gravity.y,r.velocity.z+=i._gravity.z)}else r.velocity.y-=9.8*n.gravityModifier.evaluate(1-r.remainingLifetime/r.startLifetime,s)*t}gn.copy(r.ultimateVelocity,r.velocity),i._runAnimateList.forEach((function(e){e.animate(r,t)})),gn.scaleAndAdd(r.position,r.position,r.ultimateVelocity,t)},a=0;a<e.length;++a)s()},e._calculateBounding=function(t){var e=new gn,i=new gn,n=new gn,r=new gn,s=new gn(1,1,1);if(this._processor.getInfo().renderMode===ydt.Mesh){var a=this._processor.getInfo().mesh;if(a&&a.struct.minPosition&&a.struct.maxPosition){var o=new Ra;Ra.fromPoints(o,a.struct.minPosition,a.struct.maxPosition);var h=Math.max(o.halfExtents.x,o.halfExtents.y,o.halfExtents.z);s.set(h,h,h)}}for(var u=this._particleSystem.node.worldMatrix,l=0;l<this._particlesAll.length;++l){var c=this._particlesAll[l];gn.multiply(e,xTt,c.size),gn.multiply(e,e,s),i.set(c.position),this._particleSystem.simulationSpace!==mdt.World&&gn.transformMat4(i,i,u),t&&0===l?(gn.subtract(this.minPos,i,e),gn.add(this.maxPos,i,e)):(gn.subtract(n,i,e),gn.add(r,i,e),gn.min(this.minPos,this.minPos,n),gn.max(this.maxPos,this.maxPos,r))}},e.calculatePositions=function(){this._emit(this._particleSystem.capacity,0,this._particlesAll);var t=Pdt(this._particleSystem.startLifetime)?ji(Xi(0,b)):0;this._updateParticles(0,this._particlesAll),this._calculateBounding(!0),this._updateParticles(this._particleSystem.startLifetime.evaluate(0,t),this._particlesAll),this._calculateBounding(!1),this._updateBoundingNode()},e.clear=function(){this._particlesAll.length=0},e.destroy=function(){},t}(),ITt=lo,DTt=Lo,BTt=(eyt=eo("cc.NoiseModule"),iyt=DTt(ni),nyt=DTt(ni),ryt=DTt(ni),syt=DTt(ni),ayt=DTt(ni),oyt=DTt(ni),hyt=DTt(ni),uyt=DTt(ni),lyt=DTt(ni),cyt=DTt(ni),_yt=DTt(ii),fyt=DTt(ni),dyt=DTt(ni),eyt((myt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._enable=gyt&&gyt(),e._strengthX=vyt&&vyt(),e._strengthY=yyt&&yyt(),e._strengthZ=Syt&&Syt(),e._noiseSpeedX=Tyt&&Tyt(),e._noiseSpeedY=Ayt&&Ayt(),e._noiseSpeedZ=byt&&byt(),e._noiseFrequency=Eyt&&Eyt(),e._remapX=Cyt&&Cyt(),e._remapY=xyt&&xyt(),e._remapZ=wyt&&wyt(),e._octaves=Ryt&&Ryt(),e._octaveMultiplier=Iyt&&Iyt(),e._octaveScale=Dyt&&Dyt(),e.name=_dt,e.noise=new xgt,e.samplePosition=new gn,e}s(e,t);var i=e.prototype;return i.animate=function(t,e){this.noise.setTime(t.particleSystem.time),this.noise.setSpeed(this.noiseSpeedX,this.noiseSpeedY,this.noiseSpeedZ),this.noise.setFrequency(this.noiseFrequency),this.noise.setAbs(this.remapX,this.remapY,this.remapZ),this.noise.setAmplititude(this.strengthX,this.strengthY,this.strengthZ),this.noise.setOctaves(this.octaves,this.octaveMultiplier,this.octaveScale),this.samplePosition.set(t.position),this.samplePosition.add3f(1*zi(),1*zi(),1*zi()),this.noise.setSamplePoint(this.samplePosition),this.noise.getNoiseParticle();var i=this.noise.getResult();i.multiply3f(zi(),zi(),zi()),gn.add(t.position,t.position,i.multiplyScalar(e))},i.getNoisePreview=function(t,e,i,n){this.noise.setTime(e.time),this.noise.setSpeed(this.noiseSpeedX,this.noiseSpeedY,this.noiseSpeedZ),this.noise.setFrequency(this.noiseFrequency),this.noise.setAbs(this.remapX,this.remapY,this.remapZ),this.noise.setAmplititude(this.strengthX,this.strengthY,this.strengthZ),this.noise.setOctaves(this.octaves,this.octaveMultiplier,this.octaveScale),this.noise.getNoiseParticle(),this.noise.getPreview(t,i,n)},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable!==t&&(this._enable=t,this.target&&this.target.enableModule(this.name,t,this))}},{key:"strengthX",get:function(){return this._strengthX},set:function(t){this._strengthX=t}},{key:"strengthY",get:function(){return this._strengthY},set:function(t){this._strengthY=t}},{key:"strengthZ",get:function(){return this._strengthZ},set:function(t){this._strengthZ=t}},{key:"noiseSpeedX",get:function(){return this._noiseSpeedX},set:function(t){this._noiseSpeedX=t}},{key:"noiseSpeedY",get:function(){return this._noiseSpeedY},set:function(t){this._noiseSpeedY=t}},{key:"noiseSpeedZ",get:function(){return this._noiseSpeedZ},set:function(t){this._noiseSpeedZ=t}},{key:"noiseFrequency",get:function(){return this._noiseFrequency},set:function(t){this._noiseFrequency=t}},{key:"remapX",get:function(){return this._remapX},set:function(t){this._remapX=t}},{key:"remapY",get:function(){return this._remapY},set:function(t){this._remapY=t}},{key:"remapZ",get:function(){return this._remapZ},set:function(t){this._remapZ=t}},{key:"octaves",get:function(){return this._octaves},set:function(t){this._octaves=t}},{key:"octaveMultiplier",get:function(){return this._octaveMultiplier},set:function(t){this._octaveMultiplier=t}},{key:"octaveScale",get:function(){return this._octaveScale},set:function(t){this._octaveScale=t}}]),e}(pdt),gyt=ja(myt.prototype,"_enable",[ITt],(function(){return!1})),m(myt.prototype,"strengthX",[iyt],Object.getOwnPropertyDescriptor(myt.prototype,"strengthX"),myt.prototype),vyt=ja(myt.prototype,"_strengthX",[ITt],(function(){return 10})),m(myt.prototype,"strengthY",[nyt],Object.getOwnPropertyDescriptor(myt.prototype,"strengthY"),myt.prototype),yyt=ja(myt.prototype,"_strengthY",[ITt],(function(){return 10})),m(myt.prototype,"strengthZ",[ryt],Object.getOwnPropertyDescriptor(myt.prototype,"strengthZ"),myt.prototype),Syt=ja(myt.prototype,"_strengthZ",[ITt],(function(){return 10})),m(myt.prototype,"noiseSpeedX",[syt],Object.getOwnPropertyDescriptor(myt.prototype,"noiseSpeedX"),myt.prototype),Tyt=ja(myt.prototype,"_noiseSpeedX",[ITt],(function(){return 0})),m(myt.prototype,"noiseSpeedY",[ayt],Object.getOwnPropertyDescriptor(myt.prototype,"noiseSpeedY"),myt.prototype),Ayt=ja(myt.prototype,"_noiseSpeedY",[ITt],(function(){return 0})),m(myt.prototype,"noiseSpeedZ",[oyt],Object.getOwnPropertyDescriptor(myt.prototype,"noiseSpeedZ"),myt.prototype),byt=ja(myt.prototype,"_noiseSpeedZ",[ITt],(function(){return 0})),m(myt.prototype,"noiseFrequency",[hyt],Object.getOwnPropertyDescriptor(myt.prototype,"noiseFrequency"),myt.prototype),Eyt=ja(myt.prototype,"_noiseFrequency",[ITt],(function(){return 1})),m(myt.prototype,"remapX",[uyt],Object.getOwnPropertyDescriptor(myt.prototype,"remapX"),myt.prototype),Cyt=ja(myt.prototype,"_remapX",[ITt],(function(){return 0})),m(myt.prototype,"remapY",[lyt],Object.getOwnPropertyDescriptor(myt.prototype,"remapY"),myt.prototype),xyt=ja(myt.prototype,"_remapY",[ITt],(function(){return 0})),m(myt.prototype,"remapZ",[cyt],Object.getOwnPropertyDescriptor(myt.prototype,"remapZ"),myt.prototype),wyt=ja(myt.prototype,"_remapZ",[ITt],(function(){return 0})),m(myt.prototype,"octaves",[_yt],Object.getOwnPropertyDescriptor(myt.prototype,"octaves"),myt.prototype),Ryt=ja(myt.prototype,"_octaves",[ITt],(function(){return 1})),m(myt.prototype,"octaveMultiplier",[fyt],Object.getOwnPropertyDescriptor(myt.prototype,"octaveMultiplier"),myt.prototype),Iyt=ja(myt.prototype,"_octaveMultiplier",[ITt],(function(){return.5})),m(myt.prototype,"octaveScale",[dyt],Object.getOwnPropertyDescriptor(myt.prototype,"octaveScale"),myt.prototype),Dyt=ja(myt.prototype,"_octaveScale",[ITt],(function(){return 2})),pyt=myt))||pyt),MTt=new Vn,PTt=new Bn,OTt=Object.getOwnPropertyDescriptor(WO.prototype,"sharedMaterials"),LTt=t("eU",(Byt=eo("cc.ParticleSystem"),Myt=no(99),Pyt=Lo(Zft),Oyt=Lo(mdt),Lyt=co("startSize"),Nyt=Lo(bft),Fyt=Lo(bft),kyt=Lo(bft),Gyt=Lo(bft),Vyt=Lo(bft),Uyt=Lo(bft),zyt=Lo(bft),Hyt=co("startRotation"),Wyt=Lo(bft),Xyt=Lo(bft),jyt=Lo(mdt),Yyt=Lo(bft),qyt=Lo(bft),Kyt=Lo(bft),Qyt=Lo([mgt]),Zyt=Lo(ri),Jyt=Lo(gdt),$yt=Lo(ni),tSt=Lo(ni),eSt=Lo(ni),iSt=co("enableCulling"),nSt=Lo(ypt),rSt=Lo(ypt),sSt=Lo(Sgt),aSt=Lo(Sgt),oSt=Lo(ugt),hSt=Lo(ugt),uSt=Lo(pgt),lSt=Lo(pgt),cSt=Lo(Apt),_St=Lo(Apt),fSt=Lo(xpt),dSt=Lo(xpt),pSt=Lo(ogt),mSt=Lo(ogt),gSt=Lo(_gt),vSt=Lo(_gt),ySt=Lo(BTt),SSt=Lo(BTt),TSt=Lo(ATt),ASt=Lo(ATt),bSt=Lo(dTt),Byt(ESt=Myt(((fTt=function(t){function e(){var e;return(e=t.call(this)||this).startColor=xSt&&xSt(),e.scaleSpace=wSt&&wSt(),e.startSize3D=RSt&&RSt(),e.startSizeX=ISt&&ISt(),e.startSizeY=DSt&&DSt(),e.startSizeZ=BSt&&BSt(),e.startSpeed=MSt&&MSt(),e.startRotation3D=PSt&&PSt(),e.startRotationX=OSt&&OSt(),e.startRotationY=LSt&&LSt(),e.startRotationZ=NSt&&NSt(),e.startDelay=FSt&&FSt(),e.startLifetime=kSt&&kSt(),e.duration=GSt&&GSt(),e.loop=VSt&&VSt(),e.simulationSpeed=USt&&USt(),e.playOnAwake=zSt&&zSt(),e.gravityModifier=HSt&&HSt(),e.rateOverTime=WSt&&WSt(),e.rateOverDistance=XSt&&XSt(),e.bursts=jSt&&jSt(),e._renderCulling=YSt&&YSt(),e._cullingMode=qSt&&qSt(),e._aabbHalfX=KSt&&KSt(),e._aabbHalfY=QSt&&QSt(),e._aabbHalfZ=ZSt&&ZSt(),e._dataCulling=JSt&&JSt(),e._colorOverLifetimeModule=$St&&$St(),e._shapeModule=tTt&&tTt(),e._sizeOvertimeModule=eTt&&eTt(),e._velocityOvertimeModule=iTt&&iTt(),e._forceOvertimeModule=nTt&&nTt(),e._limitVelocityOvertimeModule=rTt&&rTt(),e._rotationOvertimeModule=sTt&&sTt(),e._textureAnimationModule=aTt&&aTt(),e._noiseModule=oTt&&oTt(),e._trailModule=hTt&&hTt(),e.renderer=uTt&&uTt(),e._isPlaying=void 0,e._isPaused=void 0,e._isStopped=void 0,e._isEmitting=void 0,e._needToRestart=void 0,e._needRefresh=void 0,e._time=void 0,e._emitRateTimeCounter=void 0,e._emitRateDistanceCounter=void 0,e._oldWPos=void 0,e._curWPos=void 0,e._boundingBox=void 0,e._culler=void 0,e._oldPos=void 0,e._curPos=void 0,e._isCulled=void 0,e._isSimulating=void 0,e._customData1=void 0,e._customData2=void 0,e._subEmitters=void 0,e._needAttach=void 0,e._prewarm=lTt&&lTt(),e._capacity=cTt&&cTt(),e._simulationSpace=_Tt&&_Tt(),e.processor=null,e.rateOverTime.constant=10,e.startLifetime.constant=5,e.startSizeX.constant=1,e.startSpeed.constant=5,e._isPlaying=!1,e._isPaused=!1,e._isStopped=!0,e._isEmitting=!1,e._needToRestart=!1,e._needRefresh=!0,e._needAttach=!1,e._time=0,e._emitRateTimeCounter=0,e._emitRateDistanceCounter=0,e._oldWPos=new gn,e._curWPos=new gn,e._boundingBox=null,e._culler=null,e._oldPos=null,e._curPos=null,e._isCulled=!1,e._isSimulating=!0,e._customData1=new jn,e._customData2=new jn,e._subEmitters=[],e}s(e,t);var i=e.prototype;return i.onFocusInEditor=function(){this.renderer.create(this)},i.onLoad=function(){this.renderer.onInit(this),this._shapeModule&&this._shapeModule.onInit(this),this._trailModule&&!this.renderer.useGPU&&this._trailModule.enable&&this._trailModule.onInit(this),this.bindModule(),this._resetPosition()},i._onMaterialModified=function(t,e){null!==this.processor&&this.processor.onMaterialModified(t,e)},i._onRebuildPSO=function(t,e){this.processor.onRebuildPSO(t,e)},i._collectModels=function(){return this._models.length=0,this._models.push(this.processor.model),this._trailModule&&this._trailModule.enable&&this._trailModule.getModel()&&this._models.push(this._trailModule.getModel()),this._models},i._attachToScene=function(){this.processor.attachToScene(),this._trailModule&&this._trailModule.enable&&this._trailModule._attachToScene()},i._detachFromScene=function(){this.processor.detachFromScene(),this._trailModule&&this._trailModule.enable&&this._trailModule._detachFromScene(),this._boundingBox&&(this._boundingBox=null),this._culler&&(this._culler.clear(),this._culler.destroy(),this._culler=null)},i.bindModule=function(){this._colorOverLifetimeModule&&this._colorOverLifetimeModule.bindTarget(this.processor),this._sizeOvertimeModule&&this._sizeOvertimeModule.bindTarget(this.processor),this._rotationOvertimeModule&&this._rotationOvertimeModule.bindTarget(this.processor),this._forceOvertimeModule&&this._forceOvertimeModule.bindTarget(this.processor),this._limitVelocityOvertimeModule&&this._limitVelocityOvertimeModule.bindTarget(this.processor),this._velocityOvertimeModule&&this._velocityOvertimeModule.bindTarget(this.processor),this._textureAnimationModule&&this._textureAnimationModule.bindTarget(this.processor),this._noiseModule&&this._noiseModule.bindTarget(this.processor)},i.play=function(){if(this._needToRestart&&(this.reset(),this._needToRestart=!1),this._isPaused&&(this._isPaused=!1),this._isStopped&&(this._isStopped=!1),this._isPlaying=!0,this._isEmitting=!0,this._resetPosition(),this._prewarm&&this._prewarmSystem(),this._trailModule&&this._trailModule.play(),this.processor){var t=this.processor.getModel();t&&(t.enabled=this.enabledInHierarchy)}},i.pause=function(){this._isStopped?z("pause(): particle system is already stopped."):(this._isPlaying&&(this._isPlaying=!1),this._isPaused=!0)},i.stopEmitting=function(){this._isEmitting=!1,this._needToRestart=!0},i.stop=function(){(this._isPlaying||this._isPaused)&&this.clear(),this._isPlaying&&(this._isPlaying=!1),this._isPaused&&(this._isPaused=!1),this._isEmitting&&(this._isEmitting=!1),this._isStopped=!0,this._needRefresh=!0,this.reset()},i.reset=function(){this._time=0,this._emitRateTimeCounter=0,this._emitRateDistanceCounter=0,this._resetPosition();for(var t,e=f(this.bursts);!(t=e()).done;)t.value.reset()},i.clear=function(){this.enabledInHierarchy&&(this.processor.clear(),this._trailModule&&this._trailModule.clear()),this._calculateBounding(!1)},i.getParticleCount=function(){return this.processor?this.processor.getParticleCount():0},i.setCustomData1=function(t,e){jn.set(this._customData1,t,e)},i.setCustomData2=function(t,e){jn.set(this._customData2,t,e)},i.onDestroy=function(){var t;this.stop(),null!==(t=this.processor.getModel())&&void 0!==t&&t.scene&&(this.processor.detachFromScene(),this._trailModule&&this._trailModule.enable&&this._trailModule._detachFromScene()),S.director.off(S.Director.EVENT_BEFORE_COMMIT,this.beforeRender,this),this.processor.onDestroy(),this._trailModule&&this._trailModule.destroy(),this._culler&&(this._culler.clear(),this._culler.destroy(),this._culler=null)},i.onEnable=function(){t.prototype.onEnable.call(this),S.director.on(S.Director.EVENT_BEFORE_COMMIT,this.beforeRender,this),this.playOnAwake&&this.play(),this.processor.onEnable(),this._trailModule&&this._trailModule.onEnable()},i.onDisable=function(){S.director.off(S.Director.EVENT_BEFORE_COMMIT,this.beforeRender,this),this.processor.onDisable(),this._trailModule&&this._trailModule.onDisable(),this._boundingBox&&(this._boundingBox=null),this._oldPos=null,this._culler&&(this._culler.clear(),this._culler.destroy(),this._culler=null)},i._calculateBounding=function(t){this._boundingBox&&(this._culler||(this._culler=new RTt(this)),this._culler.calculatePositions(),Ra.fromPoints(this._boundingBox,this._culler.minPos,this._culler.maxPos),t?(this.aabbHalfX=this._boundingBox.halfExtents.x,this.aabbHalfY=this._boundingBox.halfExtents.y,this.aabbHalfZ=this._boundingBox.halfExtents.z):(this.aabbHalfX?this.setBoundingX(this.aabbHalfX):this.aabbHalfX=this._boundingBox.halfExtents.x,this.aabbHalfY?this.setBoundingY(this.aabbHalfY):this.aabbHalfY=this._boundingBox.halfExtents.y,this.aabbHalfZ?this.setBoundingZ(this.aabbHalfZ):this.aabbHalfZ=this._boundingBox.halfExtents.z),this._culler.clear())},i.update=function(t){var e,i,n=t*this.simulationSpeed;if(this.renderCulling){var r;if(this._boundingBox||(this._boundingBox=new Ra,this._calculateBounding(!1)),this._curPos||(this._curPos=new gn),this.node.getWorldPosition(this._curPos),this._oldPos||(this._oldPos=new gn,this._oldPos.set(this._curPos)),!this._curPos.equals(this._oldPos)&&this._boundingBox&&this._culler){var s=this._curPos.x-this._oldPos.x,a=this._curPos.y-this._oldPos.y,o=this._curPos.z-this._oldPos.z,h=this._boundingBox.center;h.x+=s,h.y+=a,h.z+=o,this._culler.setBoundingBoxCenter(h.x,h.y,h.z),this._oldPos.set(this._curPos)}var u=null===(r=this.node.scene.renderScene)||void 0===r?void 0:r.cameras,l=!0;if(void 0!==u&&this._boundingBox)for(var c=0;c<u.length;++c){var _=u[c];if((_.visibility&this.node.layer)===this.node.layer&&vs.aabbFrustum(this._boundingBox,_.frustum)){l=!1;break}}if(l){if(this._cullingMode!==gdt.AlwaysSimulate&&(this._isSimulating=!1),this._isCulled||(this.processor.detachFromScene(),this._isCulled=!0),this._trailModule&&this._trailModule.enable&&this._trailModule._detachFromScene(),this._cullingMode===gdt.PauseAndCatchup&&(this._time+=n),this._cullingMode!==gdt.AlwaysSimulate)return}else this._isCulled&&(this._attachToScene(),this._isCulled=!1),this._isSimulating||(this._isSimulating=!0);if(!this._isSimulating)return}else this._boundingBox&&(this._boundingBox=null),this._culler&&(this._culler.clear(),this._culler.destroy(),this._culler=null),this._isSimulating=!0;if(this._isPlaying)this._time+=n,this._emit(n),0!==this.processor.updateParticles(n)||this._isEmitting||this.stop();else{var f=(this.getMaterialInstance(0)||this.processor.getDefaultMaterial()).passes[0];this.processor.updateRotation(f),this.processor.updateScale(f)}this._needAttach&&this.getParticleCount()>0&&!this._isCulled&&(null!==(e=this.processor.getModel())&&void 0!==e&&e.scene||this.processor.attachToScene(),this._trailModule&&this._trailModule.enable&&(null!==(i=this._trailModule.getModel())&&void 0!==i&&i.scene||this._trailModule._attachToScene()),this._needAttach=!1);!this.renderer.useGPU&&this._trailModule&&this._trailModule.enable&&(this._trailModule.inited||(this._trailModule.clear(),this._trailModule.destroy(),this._trailModule.onInit(this),this._trailModule.enable=!1,this._trailModule.enable=!0))},i.beforeRender=function(){var t,e;this.getParticleCount()<=0?null!==(e=this.processor.getModel())&&void 0!==e&&e.scene&&(this.processor.detachFromScene(),this._trailModule&&this._trailModule.enable&&this._trailModule._detachFromScene(),this._needAttach=!1):null!==(t=this.processor.getModel())&&void 0!==t&&t.scene||(this._needAttach=!0),this._isPlaying&&(this.processor.updateRenderData(),this.processor.beforeRender(),this._trailModule&&this._trailModule.enable&&(this._trailModule.updateRenderData(),this._trailModule.beforeRender()))},i._onVisibilityChange=function(t){this.processor.model&&(this.processor.model.visFlags=t)},i.emit=function(t,e){var i=this._time%this.duration/this.duration;this._needRefresh&&(this.node.invalidateChildren(mm.POSITION),this._needRefresh=!1),this._simulationSpace===mdt.World&&(this.node.getWorldMatrix(MTt),this.node.getWorldRotation(PTt));for(var n=0;n<t;++n){var r=this.processor.getFreeParticle();if(null===r)return;r.particleSystem=this,r.reset();var s=ji(Xi(0,b));this._shapeModule&&this._shapeModule.enable?this._shapeModule.emit(r):(gn.set(r.position,0,0,0),gn.copy(r.velocity,Cdt)),this._textureAnimationModule&&this._textureAnimationModule.enable&&this._textureAnimationModule.init(r);var a=this.startSpeed.evaluate(i,s);gn.multiplyScalar(r.velocity,r.velocity,a),this._simulationSpace===mdt.World&&(gn.transformMat4(r.position,r.position,MTt),gn.transformQuat(r.velocity,r.velocity,PTt)),gn.copy(r.ultimateVelocity,r.velocity),this.startRotation3D?r.startEuler.set(this.startRotationX.evaluate(i,s),this.startRotationY.evaluate(i,s),this.startRotationZ.evaluate(i,s)):r.startEuler.set(0,0,this.startRotationZ.evaluate(i,s)),r.rotation.set(r.startEuler),this.startSize3D?gn.set(r.startSize,this.startSizeX.evaluate(i,s),this.startSizeY.evaluate(i,s),this.startSizeZ.evaluate(i,s)):(gn.set(r.startSize,this.startSizeX.evaluate(i,s),1,1),r.startSize.y=r.startSize.x),gn.copy(r.size,r.startSize),r.startColor.set(this.startColor.evaluate(i,s)),r.color.set(r.startColor),r.startLifetime=this.startLifetime.evaluate(i,s)+e,r.remainingLifetime=r.startLifetime,r.randomSeed=Xi(0,233280),r.loopCount++,this.processor.setNewParticle(r)}},i._prewarmSystem=function(){this.startDelay.mode=Aft.Constant,this.startDelay.constant=0;for(var t=this.duration/1,e=0;e<t;++e)this._time+=1,this._emit(1),this.processor.updateParticles(1)},i._emit=function(t){var e=this.startDelay.evaluate(0,1);if(this._time>e){if(this._time>this.duration+e&&(this.loop||(this._isEmitting=!1)),!this._isEmitting)return;if(this._emitRateTimeCounter+=this.rateOverTime.evaluate(this._time/this.duration,1)*t,this._emitRateTimeCounter>1){var i=Math.floor(this._emitRateTimeCounter);this._emitRateTimeCounter-=i,this.emit(i,t)}var n=this.rateOverDistance.evaluate(this._time/this.duration,1);if(n>0){gn.copy(this._oldWPos,this._curWPos),this.node.getWorldPosition(this._curWPos);var r=gn.distance(this._curWPos,this._oldWPos);this._emitRateDistanceCounter+=r*n}if(this._emitRateDistanceCounter>1){var s=Math.floor(this._emitRateDistanceCounter);this._emitRateDistanceCounter-=s,this.emit(s,t)}for(var a,o=f(this.bursts);!(a=o()).done;)a.value.update(this,t)}},i._resetPosition=function(){this.node.getWorldPosition(this._oldWPos),gn.copy(this._curWPos,this._oldWPos)},i.addSubEmitter=function(t){this._subEmitters.push(t)},i.removeSubEmitter=function(t){this._subEmitters.splice(this._subEmitters.indexOf(t),1)},i.addBurst=function(t){this.bursts.push(t)},i.removeBurst=function(t){var e=this.bursts.indexOf(t);e>-1&&this.bursts.splice(e,1)},i.getBoundingX=function(){return this._aabbHalfX},i.getBoundingY=function(){return this._aabbHalfY},i.getBoundingZ=function(){return this._aabbHalfZ},i.setBoundingX=function(t){this._boundingBox&&this._culler&&(this._boundingBox.halfExtents.x=t,this._culler.setBoundingBoxSize(this._boundingBox.halfExtents),this._aabbHalfX=t)},i.setBoundingY=function(t){this._boundingBox&&this._culler&&(this._boundingBox.halfExtents.y=t,this._culler.setBoundingBoxSize(this._boundingBox.halfExtents),this._aabbHalfY=t)},i.setBoundingZ=function(t){this._boundingBox&&this._culler&&(this._boundingBox.halfExtents.z=t,this._culler.setBoundingBoxSize(this._boundingBox.halfExtents),this._aabbHalfZ=t)},i._onBeforeSerialize=function(t){var e=this;return this.dataCulling?t.filter((function(t){return!ddt.includes(t)||e[t]&&e[t].enable})):t},i.getNoisePreview=function(t,e){var i=[];return this.processor&&this.processor.getNoisePreview(i,t,e),i},n(e,[{key:"capacity",get:function(){return this._capacity},set:function(t){this._capacity=Math.floor(t>0?t:0),this.processor&&this.processor.model&&this.processor.model.setCapacity(this._capacity)}},{key:"prewarm",get:function(){return this._prewarm},set:function(t){!0===t&&this.loop,this._prewarm=t}},{key:"simulationSpace",get:function(){return this._simulationSpace},set:function(t){t!==this._simulationSpace&&(this._simulationSpace=t,this.processor&&(this.processor.updateMaterialParams(),this.processor.updateTrailMaterial()))}},{key:"renderCulling",get:function(){return this._renderCulling},set:function(t){this._renderCulling=t,t&&(this._boundingBox||(this._boundingBox=new Ra,this._calculateBounding(!1)))}},{key:"cullingMode",get:function(){return this._cullingMode},set:function(t){this._cullingMode=t}},{key:"aabbHalfX",get:function(){return this.getBoundingX()||0},set:function(t){this.setBoundingX(t)}},{key:"aabbHalfY",get:function(){return this.getBoundingY()||0},set:function(t){this.setBoundingY(t)}},{key:"aabbHalfZ",get:function(){return this.getBoundingZ()||0},set:function(t){this.setBoundingZ(t)}},{key:"dataCulling",get:function(){return this._dataCulling},set:function(t){this._dataCulling=t}},{key:"sharedMaterials",get:function(){return OTt.get.call(this)},set:function(t){OTt.set.call(this,t)}},{key:"colorOverLifetimeModule",get:function(){return this._colorOverLifetimeModule},set:function(t){t&&(this._colorOverLifetimeModule=t)}},{key:"shapeModule",get:function(){return this._shapeModule},set:function(t){t&&(this._shapeModule=t)}},{key:"sizeOvertimeModule",get:function(){return this._sizeOvertimeModule},set:function(t){t&&(this._sizeOvertimeModule=t)}},{key:"velocityOvertimeModule",get:function(){return this._velocityOvertimeModule},set:function(t){t&&(this._velocityOvertimeModule=t)}},{key:"forceOvertimeModule",get:function(){return this._forceOvertimeModule},set:function(t){t&&(this._forceOvertimeModule=t)}},{key:"limitVelocityOvertimeModule",get:function(){return this._limitVelocityOvertimeModule},set:function(t){t&&(this._limitVelocityOvertimeModule=t)}},{key:"rotationOvertimeModule",get:function(){return this._rotationOvertimeModule},set:function(t){t&&(this._rotationOvertimeModule=t)}},{key:"textureAnimationModule",get:function(){return this._textureAnimationModule},set:function(t){t&&(this._textureAnimationModule=t)}},{key:"noiseModule",get:function(){return this._noiseModule},set:function(t){t&&(this._noiseModule=t)}},{key:"trailModule",get:function(){return this._trailModule},set:function(t){t&&(this._trailModule=t)}},{key:"isPlaying",get:function(){return this._isPlaying}},{key:"isPaused",get:function(){return this._isPaused}},{key:"isStopped",get:function(){return this._isStopped}},{key:"isEmitting",get:function(){return this._isEmitting}},{key:"time",get:function(){return this._time}}]),e}(EG)).CullingMode=gdt,xSt=ja((CSt=fTt).prototype,"startColor",[Pyt,lo],(function(){return new Zft})),wSt=ja(CSt.prototype,"scaleSpace",[Oyt,lo],(function(){return mdt.Local})),RSt=ja(CSt.prototype,"startSize3D",[lo],(function(){return!1})),ISt=ja(CSt.prototype,"startSizeX",[Lyt,Nyt],(function(){return new bft})),DSt=ja(CSt.prototype,"startSizeY",[Fyt,lo],(function(){return new bft})),BSt=ja(CSt.prototype,"startSizeZ",[kyt,lo],(function(){return new bft})),MSt=ja(CSt.prototype,"startSpeed",[Gyt,lo],(function(){return new bft})),PSt=ja(CSt.prototype,"startRotation3D",[lo],(function(){return!1})),OSt=ja(CSt.prototype,"startRotationX",[Vyt,lo],(function(){return new bft})),LSt=ja(CSt.prototype,"startRotationY",[Uyt,lo],(function(){return new bft})),NSt=ja(CSt.prototype,"startRotationZ",[zyt,Hyt],(function(){return new bft})),FSt=ja(CSt.prototype,"startDelay",[Wyt,lo],(function(){return new bft})),kSt=ja(CSt.prototype,"startLifetime",[Xyt,lo],(function(){return new bft})),GSt=ja(CSt.prototype,"duration",[lo],(function(){return 5})),VSt=ja(CSt.prototype,"loop",[lo],(function(){return!0})),m(CSt.prototype,"simulationSpace",[jyt,lo],Object.getOwnPropertyDescriptor(CSt.prototype,"simulationSpace"),CSt.prototype),USt=ja(CSt.prototype,"simulationSpeed",[lo],(function(){return 1})),zSt=ja(CSt.prototype,"playOnAwake",[lo],(function(){return!0})),HSt=ja(CSt.prototype,"gravityModifier",[Yyt,lo],(function(){return new bft})),WSt=ja(CSt.prototype,"rateOverTime",[qyt,lo],(function(){return new bft})),XSt=ja(CSt.prototype,"rateOverDistance",[Kyt,lo],(function(){return new bft})),jSt=ja(CSt.prototype,"bursts",[Qyt,lo],(function(){return[]})),m(CSt.prototype,"renderCulling",[Zyt],Object.getOwnPropertyDescriptor(CSt.prototype,"renderCulling"),CSt.prototype),YSt=ja(CSt.prototype,"_renderCulling",[lo],(function(){return!1})),m(CSt.prototype,"cullingMode",[Jyt],Object.getOwnPropertyDescriptor(CSt.prototype,"cullingMode"),CSt.prototype),qSt=ja(CSt.prototype,"_cullingMode",[lo],(function(){return gdt.Pause})),m(CSt.prototype,"aabbHalfX",[$yt],Object.getOwnPropertyDescriptor(CSt.prototype,"aabbHalfX"),CSt.prototype),KSt=ja(CSt.prototype,"_aabbHalfX",[lo],(function(){return 0})),m(CSt.prototype,"aabbHalfY",[tSt],Object.getOwnPropertyDescriptor(CSt.prototype,"aabbHalfY"),CSt.prototype),QSt=ja(CSt.prototype,"_aabbHalfY",[lo],(function(){return 0})),m(CSt.prototype,"aabbHalfZ",[eSt],Object.getOwnPropertyDescriptor(CSt.prototype,"aabbHalfZ"),CSt.prototype),ZSt=ja(CSt.prototype,"_aabbHalfZ",[lo],(function(){return 0})),JSt=ja(CSt.prototype,"_dataCulling",[lo,iSt],(function(){return!1})),m(CSt.prototype,"sharedMaterials",[jo,lo],Object.getOwnPropertyDescriptor(CSt.prototype,"sharedMaterials"),CSt.prototype),$St=ja(CSt.prototype,"_colorOverLifetimeModule",[nSt],(function(){return null})),m(CSt.prototype,"colorOverLifetimeModule",[rSt],Object.getOwnPropertyDescriptor(CSt.prototype,"colorOverLifetimeModule"),CSt.prototype),tTt=ja(CSt.prototype,"_shapeModule",[sSt],(function(){return null})),m(CSt.prototype,"shapeModule",[aSt],Object.getOwnPropertyDescriptor(CSt.prototype,"shapeModule"),CSt.prototype),eTt=ja(CSt.prototype,"_sizeOvertimeModule",[oSt],(function(){return null})),m(CSt.prototype,"sizeOvertimeModule",[hSt],Object.getOwnPropertyDescriptor(CSt.prototype,"sizeOvertimeModule"),CSt.prototype),iTt=ja(CSt.prototype,"_velocityOvertimeModule",[uSt],(function(){return null})),m(CSt.prototype,"velocityOvertimeModule",[lSt],Object.getOwnPropertyDescriptor(CSt.prototype,"velocityOvertimeModule"),CSt.prototype),nTt=ja(CSt.prototype,"_forceOvertimeModule",[cSt],(function(){return null})),m(CSt.prototype,"forceOvertimeModule",[_St],Object.getOwnPropertyDescriptor(CSt.prototype,"forceOvertimeModule"),CSt.prototype),rTt=ja(CSt.prototype,"_limitVelocityOvertimeModule",[fSt],(function(){return null})),m(CSt.prototype,"limitVelocityOvertimeModule",[dSt],Object.getOwnPropertyDescriptor(CSt.prototype,"limitVelocityOvertimeModule"),CSt.prototype),sTt=ja(CSt.prototype,"_rotationOvertimeModule",[pSt],(function(){return null})),m(CSt.prototype,"rotationOvertimeModule",[mSt],Object.getOwnPropertyDescriptor(CSt.prototype,"rotationOvertimeModule"),CSt.prototype),aTt=ja(CSt.prototype,"_textureAnimationModule",[gSt],(function(){return null})),m(CSt.prototype,"textureAnimationModule",[vSt],Object.getOwnPropertyDescriptor(CSt.prototype,"textureAnimationModule"),CSt.prototype),oTt=ja(CSt.prototype,"_noiseModule",[ySt],(function(){return null})),m(CSt.prototype,"noiseModule",[SSt],Object.getOwnPropertyDescriptor(CSt.prototype,"noiseModule"),CSt.prototype),hTt=ja(CSt.prototype,"_trailModule",[TSt],(function(){return null})),m(CSt.prototype,"trailModule",[ASt],Object.getOwnPropertyDescriptor(CSt.prototype,"trailModule"),CSt.prototype),uTt=ja(CSt.prototype,"renderer",[bSt,lo],(function(){return new dTt})),lTt=ja(CSt.prototype,"_prewarm",[lo],(function(){return!1})),cTt=ja(CSt.prototype,"_capacity",[lo],(function(){return 100})),_Tt=ja(CSt.prototype,"_simulationSpace",[lo],(function(){return mdt.Local})),ESt=CSt))||ESt)||ESt)),NTt=t("eV",function(){function t(){}return t.instantiate=function(t){this.registeredSceneEvent||(ID.on(wD.EVENT_BEFORE_SCENE_LAUNCH,this.onSceneUnload,this),this.registeredSceneEvent=!0);var e=t._uuid;if(!this.particleSystemPool.has(e)){var i=new ws((function(){return fJ(t)||new hg}),1,(function(t){return t.destroy()}));this.particleSystemPool.set(e,i)}return this.particleSystemPool.get(e).alloc()},t.destroy=function(t){var e,i,n=null===(e=t.prefab)||void 0===e||null===(i=e.asset)||void 0===i?void 0:i.uuid;n&&this.particleSystemPool.has(n)&&(this.stop(t),this.particleSystemPool.get(n).free(t))},t.play=function(t){for(var e,i=f(t.getComponentsInChildren(LTt));!(e=i()).done;)e.value.play()},t.stop=function(t){for(var e,i=f(t.getComponentsInChildren(LTt));!(e=i()).done;)e.value.stop()},t.onSceneUnload=function(){this.particleSystemPool.forEach((function(t){return t.destroy()})),this.particleSystemPool.clear()},t}());NTt.particleSystemPool=new Map,NTt.registeredSceneEvent=!1,lt(mgt.prototype,"Burst.prototype",[{name:"minCount"},{name:"maxCount"}]),ut(LTt.prototype,"ParticleSystem.prototype",[{name:"enableCulling",newName:"dataCulling"}]),S.ParticleSystemComponent=LTt,ne(LTt,"cc.ParticleSystemComponent"),S.BillboardComponent=pft,ne(pft,"cc.BillboardComponent"),S.LineComponent=tdt,ne(tdt,"cc.LineComponent"),S.ParticleUtils=NTt;var FTt,kTt,GTt,VTt=Ee({GRAVITY:0,RADIUS:1}),UTt=Ee({FREE:0,RELATIVE:1,GROUPED:2}),zTt=new jn(0,0),HTt=new jn,WTt=new jn,XTt=new jn,jTt=new jn,YTt=new cn,qTt=FP(PP),KTt=function(){this.pos=new jn(0,0),this.startPos=new jn(0,0),this.color=new En(0,0,0,255),this.deltaColor={r:0,g:0,b:0,a:255},this.size=0,this.deltaSize=0,this.rotation=0,this.deltaRotation=0,this.timeToLive=0,this.drawPos=new jn(0,0),this.aspectRatio=1,this.dir=new jn(0,0),this.radialAccel=0,this.tangentialAccel=0,this.angle=0,this.degreesPerSecond=0,this.radius=0,this.deltaRadius=0},QTt=new(function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.prototype.get=function(){return this._get()||new KTt},e}(le))((function(t){t.pos.set(zTt),t.startPos.set(zTt),t.color.set(0,0,0,255),t.deltaColor.r=t.deltaColor.g=t.deltaColor.b=0,t.deltaColor.a=255,t.size=0,t.deltaSize=0,t.rotation=0,t.deltaRotation=0,t.timeToLive=0,t.drawPos.set(zTt),t.aspectRatio=1,t.dir.set(zTt),t.radialAccel=0,t.tangentialAccel=0,t.angle=0,t.degreesPerSecond=0,t.radius=0,t.deltaRadius=0}),1024),ZTt=function(){function t(t){this.particles=[],this.active=!1,this.uvFilled=0,this.finished=!1,this.readyToPlay=!0,this.elapsed=0,this.emitCounter=0,this._worldRotation=0,this.sys=t,this.particles=[],this.active=!1,this.readyToPlay=!0,this.finished=!1,this.elapsed=0,this.emitCounter=0,this.uvFilled=0,this._worldRotation=0}var e=t.prototype;return e.stop=function(){this.active=!1,this.readyToPlay=!1,this.elapsed=this.sys.duration,this.emitCounter=0},e.reset=function(){this.active=!0,this.readyToPlay=!0,this.elapsed=0,this.emitCounter=0,this.finished=!1;for(var t=this.particles,e=0;e<t.length;++e)QTt.put(t[e]);t.length=0,this.renderData&&this.renderData.resize(0,0)},e.emitParticle=function(t){var e=this.sys,i=QTt.get();this.particles.push(i),i.timeToLive=e.life+e.lifeVar*(zi()-.5)*2;var n=i.timeToLive=Math.max(0,i.timeToLive);i.pos.x=e.sourcePos.x+e.posVar.x*(zi()-.5)*2,i.pos.y=e.sourcePos.y+e.posVar.y*(zi()-.5)*2;var r,s,a,o,h=e.startColor,u=e.startColorVar,l=e.endColor,c=e.endColorVar;i.color.r=r=je(h.r+u.r*(zi()-.5)*2,0,255),i.color.g=s=je(h.g+u.g*(zi()-.5)*2,0,255),i.color.b=a=je(h.b+u.b*(zi()-.5)*2,0,255),i.color.a=o=je(h.a+u.a*(zi()-.5)*2,0,255),i.deltaColor.r=(je(l.r+c.r*(zi()-.5)*2,0,255)-r)/n,i.deltaColor.g=(je(l.g+c.g*(zi()-.5)*2,0,255)-s)/n,i.deltaColor.b=(je(l.b+c.b*(zi()-.5)*2,0,255)-a)/n,i.deltaColor.a=(je(l.a+c.a*(zi()-.5)*2,0,255)-o)/n;var _=e.startSize+e.startSizeVar*(zi()-.5)*2;if(_=Math.max(0,_),i.size=_,-1===e.endSize)i.deltaSize=0;else{var f=e.endSize+e.endSizeVar*(zi()-.5)*2;f=Math.max(0,f),i.deltaSize=(f-_)/n}var d=e.startSpin+e.startSpinVar*(zi()-.5)*2,p=e.endSpin+e.endSpinVar*(zi()-.5)*2;i.rotation=d,i.deltaRotation=(p-d)/n,i.startPos.x=t.x,i.startPos.y=t.y,i.aspectRatio=e.aspectRatio||1;var m=Ye(e.angle+this._worldRotation+e.angleVar*(zi()-.5)*2);if(e.emitterMode===VTt.GRAVITY){var g=e.speed+e.speedVar*(zi()-.5)*2;i.dir.x=Math.cos(m),i.dir.y=Math.sin(m),i.dir.multiplyScalar(g),i.radialAccel=e.radialAccel+e.radialAccelVar*(zi()-.5)*2,i.tangentialAccel=e.tangentialAccel+e.tangentialAccelVar*(zi()-.5)*2,e.rotationIsDir&&(i.rotation=-qe(Math.atan2(i.dir.y,i.dir.x)))}else{var v=e.startRadius+e.startRadiusVar*(zi()-.5)*2,y=e.endRadius+e.endRadiusVar*(zi()-.5)*2;i.radius=v,i.deltaRadius=-1===e.endRadius?0:(y-v)/n,i.angle=m,i.degreesPerSecond=Ye(e.rotatePerS+e.rotatePerSVar*(zi()-.5)*2)}},e.updateUVs=function(t){var e=this.renderData;if(e&&this.sys._renderSpriteFrame){for(var i=e.vData,n=this.sys._renderSpriteFrame.uv,r=t?0:this.uvFilled,s=this.particles.length,a=r;a<s;a++){var o=a*qTt*4;i[o+3]=n[0],i[o+4]=n[1],i[o+12]=n[2],i[o+13]=n[3],i[o+21]=n[4],i[o+22]=n[5],i[o+30]=n[6],i[o+31]=n[7]}this.uvFilled=s}},e.updateParticleBuffer=function(t,e,i,n){var r=i.vData,s=e.x,a=e.y,o=t.size,h=o,u=t.aspectRatio;u>1?h=o/u:o=h*u;var l=o/2,c=h/2;if(t.rotation){var _=-l,f=-c,d=l,p=c,m=-Ye(t.rotation),g=Math.cos(m),v=Math.sin(m);r[n]=_*g-f*v+s,r[n+1]=_*v+f*g+a,r[n+2]=0,r[n+9]=d*g-f*v+s,r[n+10]=d*v+f*g+a,r[n+11]=0,r[n+18]=_*g-p*v+s,r[n+19]=_*v+p*g+a,r[n+20]=0,r[n+27]=d*g-p*v+s,r[n+28]=d*v+p*g+a,r[n+29]=0}else r[n]=s-l,r[n+1]=a-c,r[n+2]=0,r[n+9]=s+l,r[n+10]=a-c,r[n+11]=0,r[n+18]=s-l,r[n+19]=a+c,r[n+20]=0,r[n+27]=s+l,r[n+28]=a+c,r[n+29]=0;var y=t.color;YTt.x=y.r/255,YTt.y=y.g/255,YTt.z=y.b/255,YTt.w=y.a/255,cn.toArray(r,YTt,n+5),cn.toArray(r,YTt,n+14),cn.toArray(r,YTt,n+23),cn.toArray(r,YTt,n+32)},e.step=function(t){var e=this.sys.assembler,i=this.sys,n=i.node,r=this.particles;if(t=t>e.maxParticleDeltaTime?e.maxParticleDeltaTime:t,n.updateWorldTransform(),i.positionType===UTt.FREE){this._worldRotation=function(t){for(var e=0,i=t;i;)e+=i.eulerAngles.z,i=i.parent;return e}(n);var s=n.worldMatrix;HTt.x=s.m12,HTt.y=s.m13}else i.positionType===UTt.RELATIVE?(this._worldRotation=n.eulerAngles.z,HTt.x=n.position.x,HTt.y=n.position.y):this._worldRotation=0;if(this.active&&i.emissionRate){var a=1/i.emissionRate;for(r.length<i.totalParticles&&(this.emitCounter+=t);r.length<i.totalParticles&&this.emitCounter>a;)this.emitParticle(HTt),this.emitCounter-=a;this.elapsed+=t,-1!==i.duration&&i.duration<this.elapsed&&i.stopSystem()}var o=this.renderData,h=r.length;o.reset(),this.requestData(4*h,6*h),h>this.uvFilled&&this.updateUVs();for(var u=0;u<r.length;){WTt.x=WTt.y=XTt.x=XTt.y=jTt.x=jTt.y=0;var l=r[u];if(l.timeToLive-=t,l.timeToLive>0){if(i.emitterMode===VTt.GRAVITY){var c=jTt,_=WTt,f=XTt;(l.pos.x||l.pos.y)&&(_.set(l.pos),_.normalize()),f.set(_),_.multiplyScalar(l.radialAccel);var d=f.x;f.x=-f.y,f.y=d,f.multiplyScalar(l.tangentialAccel),c.set(_),c.add(f),c.add(i.gravity),c.multiplyScalar(t),l.dir.add(c),c.set(l.dir),c.multiplyScalar(t),l.pos.add(c)}else l.angle+=l.degreesPerSecond*t,l.radius+=l.deltaRadius*t,l.pos.x=-Math.cos(l.angle)*l.radius,l.pos.y=-Math.sin(l.angle)*l.radius;l.color.r+=l.deltaColor.r*t,l.color.g+=l.deltaColor.g*t,l.color.b+=l.deltaColor.b*t,l.color.a+=l.deltaColor.a*t,l.size+=l.deltaSize*t,l.size<0&&(l.size=0),l.rotation+=l.deltaRotation*t;var p=WTt;p.set(l.pos),i.positionType!==UTt.GROUPED&&p.add(l.startPos);var m=qTt*u*4;this.updateParticleBuffer(l,p,o,m),++u}else{var g=r[u];u!==r.length-1&&(r[u]=r[r.length-1]),QTt.put(g),r.length--,o.resize(o.vertexCount-4,o.indexCount-6)}}this.renderData.material=this.sys.getRenderMaterial(0),this.renderData.frame=this.sys._renderSpriteFrame,o.setRenderDrawInfoAttributes(),0!==r.length||this.active||this.readyToPlay||(this.finished=!0,i._finishedSimulation())},e.requestData=function(t,e){var i=this.renderData.indexCount;this.renderData.request(t,e);for(var n=this.renderData.indexCount/6,r=this.renderData.iData,s=i;s<n;s++){var a=4*s;r[i++]=a,r[i++]=a+1,r[i++]=a+2,r[i++]=a+1,r[i++]=a+3,r[i++]=a+2}},e.initDrawInfo=function(){this.renderData.setRenderDrawInfoAttributes()},t}(),JTt=lo,$Tt=t("f1",eo("cc.ParticleAsset")((kTt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).spriteFrame=GTt&>t(),e}return s(e,t),e}(vd),GTt=ja(kTt.prototype,"spriteFrame",[JTt],(function(){return null})),FTt=kTt))||FTt);S.ParticleAsset=$Tt;for(var tAt=function(){function t(t){var e,i=this;this.pos=8,this.palette=[],this.imgData=[],this.text={},this.width=0,this.height=0,this.bits=0,this.colorType=0,this.compressionMethod=0,this.filterMethod=0,this.interlaceMethod=0,this.colors=0,this.hasAlphaChannel=!1,this.pixelBitlength=0,this.data=t,this.transparency={indexed:[],rgb:0,grayscale:0};for(var n=0,r=0,s=0;;){s=this.readUInt32();var a=function(){var t=[];for(n=0;n<4;++n)t.push(String.fromCharCode(i.data[i.pos++]));return t}.call(this).join("");switch(a){case"IHDR":this.width=this.readUInt32(),this.height=this.readUInt32(),this.bits=this.data[this.pos++],this.colorType=this.data[this.pos++],this.compressionMethod=this.data[this.pos++],this.filterMethod=this.data[this.pos++],this.interlaceMethod=this.data[this.pos++];break;case"acTL":this.animation={numFrames:this.readUInt32(),numPlays:this.readUInt32()||1/0,frames:[]};break;case"PLTE":this.palette=this.read(s);break;case"fcTL":e&&this.animation.frames.push(e),this.pos+=4,e={width:this.readUInt32(),height:this.readUInt32(),xOffset:this.readUInt32(),yOffset:this.readUInt32()};var o=this.readUInt16(),h=this.readUInt16()||100;e.delay=1e3*o/h,e.disposeOp=this.data[this.pos++],e.blendOp=this.data[this.pos++],e.data=[];break;case"IDAT":case"fdAT":for("fdAT"===a&&(this.pos+=4,s-=4),t=(null!=e?e.data:void 0)||this.imgData,n=0;s>=0?n<s:n>s;s>=0?++n:--n)t.push(this.data[this.pos++]);break;case"tRNS":switch(this.transparency={},this.colorType){case 3:this.transparency.indexed=this.read(s);var u=255-this.transparency.indexed.length;if(u>0)for(r=0;u>=0?r<u:r>u;u>=0?++r:--r)this.transparency.indexed.push(255);break;case 0:this.transparency.grayscale=this.read(s)[0];break;case 2:this.transparency.rgb=this.read(s)}break;case"tEXt":var l=this.read(s),c=l.indexOf(0),_=String.fromCharCode.apply(String,l.slice(0,c));this.text[_]=String.fromCharCode.apply(String,l.slice(c+1));break;case"IEND":e&&this.animation.frames.push(e),this.colors=function(){switch(i.colorType){case 0:case 3:case 4:return 1;case 2:case 6:return 3}}.call(this);var f=this.colorType;this.hasAlphaChannel=4===f||6===f;var d=this.colors+(this.hasAlphaChannel?1:0);return this.pixelBitlength=this.bits*d,this.colorSpace=function(){switch(i.colors){case 1:return"DeviceGray";case 3:return"DeviceRGB"}}.call(this),void(this.imgData instanceof Uint8Array||(this.imgData=new Uint8Array(this.imgData)));default:this.pos+=s}if(this.pos+=4,this.pos>this.data.length)throw new Error(at(6017))}}var e=t.prototype;return e.read=function(t){var e=0,i=[];for(e=0;t>=0?e<t:e>t;t>=0?++e:--e)i.push(this.data[this.pos++]);return i},e.readUInt32=function(){return this.data[this.pos++]<<24|this.data[this.pos++]<<16|this.data[this.pos++]<<8|this.data[this.pos++]},e.readUInt16=function(){return this.data[this.pos++]<<8|this.data[this.pos++]},e.decodePixels=function(t){if(null==t&&(t=this.imgData),0===t.length)return new Uint8Array(0);t=new jB.Inflate(t,{index:0,verify:!1}).decompress();for(var e=this.pixelBitlength/8,i=e*this.width,n=new Uint8Array(i*this.height),r=t.length,s=0,a=0,o=0,h=0,u=0,l=0,c=0,_=0,f=0,d=0,p=0,m=0,g=0,v=0,y=0,S=0,T=0,A=0,b=0;a<r;){switch(t[a++]){case 0:for(l=c=0;c<i;l=c+=1)n[o++]=t[a++];break;case 1:for(l=_=0;_<i;l=_+=1)h=t[a++],m=l<e?0:n[o-e],n[o++]=(h+m)%256;break;case 2:for(l=f=0;f<i;l=f+=1)h=t[a++],u=(l-l%e)/e,A=s&&n[(s-1)*i+u*e+l%e],n[o++]=(A+h)%256;break;case 3:for(l=d=0;d<i;l=d+=1)h=t[a++],u=(l-l%e)/e,m=l<e?0:n[o-e],A=s&&n[(s-1)*i+u*e+l%e],n[o++]=(h+Math.floor((m+A)/2))%256;break;case 4:for(l=p=0;p<i;l=p+=1)h=t[a++],u=(l-l%e)/e,m=l<e?0:n[o-e],0===s?A=b=0:(A=n[(s-1)*i+u*e+l%e],b=u&&n[(s-1)*i+(u-1)*e+l%e]),g=m+A-b,v=Math.abs(g-m),S=Math.abs(g-A),T=Math.abs(g-b),y=v<=S&&v<=T?m:S<=T?A:b,n[o++]=(h+y)%256;break;default:throw new Error(at(6018,t[a-1]))}s++}return n},e.copyToImageData=function(t,e){var i,n=this.hasAlphaChannel,r=this.colors;this.palette.length&&(i=null!=this._decodedPalette?this._decodedPalette:this._decodedPalette=this.decodePalette(),r=4,n=!0);var s=t.data||t,a=s.length,o=i||e,h=0,u=0,l=0,c=0;if(1===r)for(;h<a;)l=i?4*e[h/4]:u,c=o[l++],s[h++]=c,s[h++]=c,s[h++]=c,s[h++]=n?o[l++]:255,u=l;else for(;h<a;)l=i?4*e[h/4]:u,s[h++]=o[l++],s[h++]=o[l++],s[h++]=o[l++],s[h++]=n?o[l++]:255,u=l},e.decodePalette=function(){for(var t=this.palette,e=this.transparency.indexed||[],i=new Uint8Array((e.length||0)+t.length),n=0,r=0,s=0,a=0,o=0,h=t.length;o<h;a=o+=3)i[n++]=t[a],i[n++]=t[a+1],i[n++]=t[a+2],s=e[r++],i[n++]=null!=s?s:255;return i},e.render=function(t){t.width=this.width,t.height=this.height;var e=t.getContext("2d"),i=e.createImageData(this.width,this.height);return this.copyToImageData(i,this.decodePixels(null)),e.putImageData(i,0,0)},t}(),eAt=function(){function t(){this._littleEndian=!1,this._tiffData=[],this._fileDirectories=[]}var e=t.prototype;return e.getUint8=function(t){return this._tiffData[t]},e.getUint16=function(t){return this._littleEndian?this._tiffData[t+1]<<8|this._tiffData[t]:this._tiffData[t]<<8|this._tiffData[t+1]},e.getUint32=function(t){var e=this._tiffData;return this._littleEndian?e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]:e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]},e.checkLittleEndian=function(){var t=this.getUint16(0);if(18761===t)this._littleEndian=!0;else{if(19789!==t)throw console.log(t),TypeError(at(6019));this._littleEndian=!1}return this._littleEndian},e.hasTowel=function(){if(42!==this.getUint16(2))throw RangeError(at(6020));return!0},e.getFieldTypeName=function(t){return t in nAt?nAt[t]:null},e.getFieldTagName=function(t){return t in iAt?iAt[t]:(Q(6021,t),"Tag"+t)},e.getFieldTypeLength=function(t){return-1!==["BYTE","ASCII","SBYTE","UNDEFINED"].indexOf(t)?1:-1!==["SHORT","SSHORT"].indexOf(t)?2:-1!==["LONG","SLONG","FLOAT"].indexOf(t)?4:-1!==["RATIONAL","SRATIONAL","DOUBLE"].indexOf(t)?8:0},e.getFieldValues=function(t,e,i,n){var r=[],s=this.getFieldTypeLength(e);if(s*i<=4)!1===this._littleEndian?r.push(n>>>8*(4-s)):r.push(n);else for(var a=0;a<i;a++){var o=s*a;s>=8?-1!==["RATIONAL","SRATIONAL"].indexOf(e)?(r.push(this.getUint32(n+o)),r.push(this.getUint32(n+o+4))):Q(8e3):r.push(this.getBytes(s,n+o))}return"ASCII"===e&&r.forEach((function(t,e,i){i[e]=String.fromCharCode(t)})),r},e.getBytes=function(t,e){if(t<=0)Q(8001);else{if(t<=1)return this.getUint8(e);if(t<=2)return this.getUint16(e);if(t<=3)return this.getUint32(e)>>>8;if(t<=4)return this.getUint32(e);Q(8002)}return 0},e.getBits=function(t,e,i){i=i||0;var n=e+Math.floor(i/8),r=i+t,s=32-t,a=0,o=0;return r<=0?Q(6023):r<=8?(a=24+i,o=this.getUint8(n)):r<=16?(a=16+i,o=this.getUint16(n)):r<=32?(a=i,o=this.getUint32(n)):Q(6022),{bits:o<<a>>>s,byteOffset:n+Math.floor(r/8),bitOffset:r%8}},e.parseFileDirectory=function(t){var e=this.getUint16(t),i=[],n=0,r=0;for(n=t+2,r=0;r<e;n+=12,r++){var s=this.getUint16(n),a=this.getUint16(n+2),o=this.getUint32(n+4),h=this.getUint32(n+8),u=this.getFieldTagName(s),l=this.getFieldTypeName(a),c=this.getFieldValues(u,l,o,h);i[u]={type:l,values:c}}this._fileDirectories.push(i);var _=this.getUint32(n);0!==_&&this.parseFileDirectory(_)},e.clampColorSample=function(t,e){var i=Math.pow(2,8-e);return Math.floor(t*i+(i-1))},e.parseTIFF=function(t,e){var i=this;if(e=e||A.document.createElement("canvas"),this._tiffData=t,this._canvas=e,this.checkLittleEndian(),this.hasTowel()){var n=this.getUint32(4);this._fileDirectories.length=0,this.parseFileDirectory(n);var r=this._fileDirectories[0],s=r.ImageWidth.values[0],a=r.ImageLength.values[0];this._canvas.width=s,this._canvas.height=a;var o=[],h=r.Compression?r.Compression.values[0]:1,u=r.SamplesPerPixel.values[0],l=[],c=0,_=!1;r.BitsPerSample.values.forEach((function(t,e){l[e]={bitsPerSample:t,hasBytesPerSample:!1,bytesPerSample:void 0},t%8==0&&(l[e].hasBytesPerSample=!0,l[e].bytesPerSample=t/8),c+=t}),this);var f=0;c%8==0&&(_=!0,f=c/8);var d,p=r.StripOffsets.values,m=p.length;if(r.StripByteCounts)d=r.StripByteCounts.values;else{if(Q(8003),1!==m)throw Error(at(6024));d=[Math.ceil(s*a*c/8)]}for(var g=1,v=1,y=0;y<m;y++){var S=p[y];o[y]=[];for(var T=d[y],b=0,E=0,C=1,x=!0,w=[],R=0,I=0,D=0;b<T;b+=C)switch(h){case 1:w=[];for(var B=0;B<u;B++){var M=l[B];if(!M.hasBytesPerSample){var P=this.getBits(M.bitsPerSample,S+b,E);throw w.push(P.bits),b=P.byteOffset-S,E=P.bitOffset,RangeError(at(6025))}var O=M.bytesPerSample*B;w.push(this.getBytes(M.bytesPerSample,S+b+O))}if(o[y].push(w),!_)throw C=0,RangeError(at(6026));C=f;break;case 2:case 3:case 4:case 5:case 6:case 7:break;case 32773:if(x){x=!1;var L=this.getUint8(S+b);L>=0&&L<=127?g=L+1:L>=-127&&L<=-1?v=1-L:x=!0}else{for(var N=this.getUint8(S+b),F=0;F<v;F++){var k=l[I];if(!k.hasBytesPerSample)throw RangeError(at(6025));D=D<<8*R|N,++R===k.bytesPerSample&&(w.push(D),D=R=0,I++),I===u&&(o[y].push(w),w=[],I=0)}0==--g&&(x=!0)}C=1}}if(e.getContext){var G=this._canvas.getContext("2d");G.fillStyle="rgba(255, 255, 255, 0)";var V=r.RowsPerStrip?r.RowsPerStrip.values[0]:a,U=o.length,z=a%V,H=0===z?V:z,W=V,X=0,j=r.PhotometricInterpretation.values[0],Y=[],q=0;r.ExtraSamples&&(Y=r.ExtraSamples.values,q=Y.length);var K=[],Z=0;r.ColorMap&&(K=r.ColorMap.values,Z=Math.pow(2,l[0].bitsPerSample));for(var J=0;J<U;J++){J+1===U&&(W=H);for(var $=o[J].length,tt=X*J,et=0,it=0;et<W&&it<$;et++)for(var nt=function(){var t=o[J][it],e=0,n=0,r=0,s=1;if(q>0)for(var a=0;a<q;a++)if(1===Y[a]||2===Y[a]){s=t[3+a]/256;break}switch(j){case 0:var h=0;l[0].hasBytesPerSample&&(h=Math.pow(16,2*l[0].bytesPerSample)),t.forEach((function(t,e,i){i[e]=h-t}));case 1:e=n=r=i.clampColorSample(t[0],l[0].bitsPerSample);break;case 2:e=i.clampColorSample(t[0],l[0].bitsPerSample),n=i.clampColorSample(t[1],l[1].bitsPerSample),r=i.clampColorSample(t[2],l[2].bitsPerSample);break;case 3:if(void 0===K)throw Error(at(6027));var u=t[0];e=i.clampColorSample(K[u],16),n=i.clampColorSample(K[Z+u],16),r=i.clampColorSample(K[2*Z+u],16);break;default:throw RangeError(at(6028,j))}G.fillStyle="rgba("+e+", "+n+", "+r+", "+s+")",G.fillRect(rt,tt+et,1,1)},rt=0;rt<s;rt++,it++)nt();X=W}}return this._canvas}},t}(),iAt={315:"Artist",258:"BitsPerSample",265:"CellLength",264:"CellWidth",320:"ColorMap",259:"Compression",33432:"Copyright",306:"DateTime",338:"ExtraSamples",266:"FillOrder",289:"FreeByteCounts",288:"FreeOffsets",291:"GrayResponseCurve",290:"GrayResponseUnit",316:"HostComputer",270:"ImageDescription",257:"ImageLength",256:"ImageWidth",271:"Make",281:"MaxSampleValue",280:"MinSampleValue",272:"Model",254:"NewSubfileType",274:"Orientation",262:"PhotometricInterpretation",284:"PlanarConfiguration",296:"ResolutionUnit",278:"RowsPerStrip",277:"SamplesPerPixel",305:"Software",279:"StripByteCounts",273:"StripOffsets",255:"SubfileType",263:"Threshholding",282:"XResolution",283:"YResolution",326:"BadFaxLines",327:"CleanFaxData",343:"ClipPath",328:"ConsecutiveBadFaxLines",433:"Decode",434:"DefaultImageColor",269:"DocumentName",336:"DotRange",321:"HalftoneHints",346:"Indexed",347:"JPEGTables",285:"PageName",297:"PageNumber",317:"Predictor",319:"PrimaryChromaticities",532:"ReferenceBlackWhite",339:"SampleFormat",559:"StripRowCounts",330:"SubIFDs",292:"T4Options",293:"T6Options",325:"TileByteCounts",323:"TileLength",324:"TileOffsets",322:"TileWidth",301:"TransferFunction",318:"WhitePoint",344:"XClipPathUnits",286:"XPosition",529:"YCbCrCoefficients",531:"YCbCrPositioning",530:"YCbCrSubSampling",345:"YClipPathUnits",287:"YPosition",37378:"ApertureValue",40961:"ColorSpace",36868:"DateTimeDigitized",36867:"DateTimeOriginal",34665:"Exif IFD",36864:"ExifVersion",33434:"ExposureTime",41728:"FileSource",37385:"Flash",40960:"FlashpixVersion",33437:"FNumber",42016:"ImageUniqueID",37384:"LightSource",37500:"MakerNote",37377:"ShutterSpeedValue",37510:"UserComment",33723:"IPTC",34675:"ICC Profile",700:"XMP",42112:"GDAL_METADATA",42113:"GDAL_NODATA",34377:"Photoshop"},nAt={1:"BYTE",2:"ASCII",3:"SHORT",4:"LONG",5:"RATIONAL",6:"SBYTE",7:"UNDEFINED",8:"SSHORT",9:"SLONG",10:"SRATIONAL",11:"FLOAT",12:"DOUBLE"},rAt=new Array(123),sAt=0;sAt<123;++sAt)rAt[sAt]=64;for(var aAt=0;aAt<64;++aAt)rAt["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charCodeAt(aAt)]=aAt;var oAt={name:"Jacob__Codec__Base64",decode:function(t){var e,i,n,r,s,a,o=[],h=0;for(t=t.replace(/[^A-Za-z0-9\+\/\=]/g,"");h<t.length;)e=rAt[t.charCodeAt(h++)]<<2|(r=rAt[t.charCodeAt(h++)])>>4,i=(15&r)<<4|(s=rAt[t.charCodeAt(h++)])>>2,n=(3&s)<<6|(a=rAt[t.charCodeAt(h++)]),o.push(String.fromCharCode(e)),64!==s&&o.push(String.fromCharCode(i)),64!==a&&o.push(String.fromCharCode(n));return o.join("")},decodeAsArray:function(t,e){var i,n,r,s=this.decode(t),a=[];for(i=0,r=s.length/e;i<r;i++)for(a[i]=0,n=e-1;n>=0;--n)a[i]+=s.charCodeAt(i*e+n)<<8*n;return a}},hAt=function(t){this.data=t,this.debug=!1,this.gpflags=void 0,this.files=0,this.unzipped=[],this.buf32k=new Array(32768),this.bIdx=0,this.modeZIP=!1,this.bytepos=0,this.bb=1,this.bits=0,this.nameBuf=[],this.fileout=void 0,this.literalTree=new Array(hAt.LITERALS),this.distanceTree=new Array(32),this.treepos=0,this.Places=null,this.len=0,this.fpos=new Array(17),this.fpos[0]=0,this.flens=void 0,this.fmax=void 0};hAt.gunzip=function(t){return t.constructor===Array||t.constructor,new hAt(t).gunzip()[0][0]},hAt.HufNode=function(){this.b0=0,this.b1=0,this.jump=null,this.jumppos=-1},hAt.LITERALS=288,hAt.NAMEMAX=256,hAt.bitReverse=[0,128,64,192,32,160,96,224,16,144,80,208,48,176,112,240,8,136,72,200,40,168,104,232,24,152,88,216,56,184,120,248,4,132,68,196,36,164,100,228,20,148,84,212,52,180,116,244,12,140,76,204,44,172,108,236,28,156,92,220,60,188,124,252,2,130,66,194,34,162,98,226,18,146,82,210,50,178,114,242,10,138,74,202,42,170,106,234,26,154,90,218,58,186,122,250,6,134,70,198,38,166,102,230,22,150,86,214,54,182,118,246,14,142,78,206,46,174,110,238,30,158,94,222,62,190,126,254,1,129,65,193,33,161,97,225,17,145,81,209,49,177,113,241,9,137,73,201,41,169,105,233,25,153,89,217,57,185,121,249,5,133,69,197,37,165,101,229,21,149,85,213,53,181,117,245,13,141,77,205,45,173,109,237,29,157,93,221,61,189,125,253,3,131,67,195,35,163,99,227,19,147,83,211,51,179,115,243,11,139,75,203,43,171,107,235,27,155,91,219,59,187,123,251,7,135,71,199,39,167,103,231,23,151,87,215,55,183,119,247,15,143,79,207,47,175,111,239,31,159,95,223,63,191,127,255],hAt.cplens=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0],hAt.cplext=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,99,99],hAt.cpdist=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],hAt.cpdext=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],hAt.border=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],hAt.prototype.gunzip=function(){return this.outputArr=[],this.nextFile(),this.unzipped},hAt.prototype.readByte=function(){return this.bits+=8,this.bytepos<this.data.length?this.data.charCodeAt(this.bytepos++):-1},hAt.prototype.byteAlign=function(){this.bb=1},hAt.prototype.readBit=function(){var t;return this.bits++,t=1&this.bb,this.bb>>=1,0===this.bb&&(this.bb=this.readByte(),t=1&this.bb,this.bb=this.bb>>1|128),t},hAt.prototype.readBits=function(t){for(var e=0,i=t;i--;)e=e<<1|this.readBit();return t&&(e=hAt.bitReverse[e]>>8-t),e},hAt.prototype.flushBuffer=function(){this.bIdx=0},hAt.prototype.addBuffer=function(t){this.buf32k[this.bIdx++]=t,this.outputArr.push(String.fromCharCode(t)),32768===this.bIdx&&(this.bIdx=0)},hAt.prototype.IsPat=function(){for(;;){if(this.fpos[this.len]>=this.fmax)return-1;if(this.flens[this.fpos[this.len]]===this.len)return this.fpos[this.len]++;this.fpos[this.len]++}},hAt.prototype.Rec=function(){var t,e=this.Places[this.treepos];if(17===this.len)return-1;if(this.treepos++,this.len++,(t=this.IsPat())>=0)e.b0=t;else if(e.b0=32768,this.Rec())return-1;if((t=this.IsPat())>=0)e.b1=t,e.jump=null;else if(e.b1=32768,e.jump=this.Places[this.treepos],e.jumppos=this.treepos,this.Rec())return-1;return this.len--,0},hAt.prototype.CreateTree=function(t,e,i){var n;for(this.Places=t,this.treepos=0,this.flens=i,this.fmax=e,n=0;n<17;n++)this.fpos[n]=0;return this.len=0,this.Rec()?-1:0},hAt.prototype.DecodeValue=function(t){for(var e,i,n=0,r=t[n];;)if(this.readBit()){if(!(32768&r.b1))return r.b1;for(r=r.jump,e=t.length,i=0;i<e;i++)if(t[i]===r){n=i;break}}else{if(!(32768&r.b0))return r.b0;r=t[++n]}return-1},hAt.prototype.DeflateLoop=function(){var t,e,i;do{var n,r;if(t=this.readBit(),0===(e=this.readBits(2)))for(this.byteAlign(),n=this.readByte(),n|=this.readByte()<<8,r=this.readByte(),65535&(n^~(r|=this.readByte()<<8))&&document.write("BlockLen checksum mismatch\n");n--;)s=this.readByte(),this.addBuffer(s);else if(1===e)for(;;)if((a=hAt.bitReverse[this.readBits(7)]>>1)>23?(a=a<<1|this.readBit())>199?a=(a-=128)<<1|this.readBit():(a-=48)>143&&(a+=136):a+=256,a<256)this.addBuffer(a);else{if(256===a)break;for(a-=257,d=this.readBits(hAt.cplext[a])+hAt.cplens[a],a=hAt.bitReverse[this.readBits(5)]>>3,hAt.cpdext[a]>8?(p=this.readBits(8),p|=this.readBits(hAt.cpdext[a]-8)<<8):p=this.readBits(hAt.cpdext[a]),p+=hAt.cpdist[a],a=0;a<d;a++){var s=this.buf32k[this.bIdx-p&32767];this.addBuffer(s)}}else if(2===e){var a,o,h,u,l,c=new Array(320);for(h=257+this.readBits(5),u=1+this.readBits(5),l=4+this.readBits(4),a=0;a<19;a++)c[a]=0;for(a=0;a<l;a++)c[hAt.border[a]]=this.readBits(3);for(d=this.distanceTree.length,i=0;i<d;i++)this.distanceTree[i]=new hAt.HufNode;if(this.CreateTree(this.distanceTree,19,c,0))return this.flushBuffer(),1;for(o=h+u,i=0;i<o;)if((a=this.DecodeValue(this.distanceTree))<16)c[i++]=a;else if(16===a){var _;if(i+(a=3+this.readBits(2))>o)return this.flushBuffer(),1;for(_=i?c[i-1]:0;a--;)c[i++]=_}else{if(i+(a=17===a?3+this.readBits(3):11+this.readBits(7))>o)return this.flushBuffer(),1;for(;a--;)c[i++]=0}for(d=this.literalTree.length,i=0;i<d;i++)this.literalTree[i]=new hAt.HufNode;if(this.CreateTree(this.literalTree,h,c,0))return this.flushBuffer(),1;for(d=this.literalTree.length,i=0;i<d;i++)this.distanceTree[i]=new hAt.HufNode;var f=new Array;for(i=h;i<c.length;i++)f[i-h]=c[i];if(this.CreateTree(this.distanceTree,u,f,0))return this.flushBuffer(),1;for(;;)if((a=this.DecodeValue(this.literalTree))>=256){var d,p;if(0==(a-=256))break;for(a--,d=this.readBits(hAt.cplext[a])+hAt.cplens[a],a=this.DecodeValue(this.distanceTree),hAt.cpdext[a]>8?(p=this.readBits(8),p|=this.readBits(hAt.cpdext[a]-8)<<8):p=this.readBits(hAt.cpdext[a]),p+=hAt.cpdist[a];d--;)s=this.buf32k[this.bIdx-p&32767],this.addBuffer(s)}else this.addBuffer(a)}}while(!t);return this.flushBuffer(),this.byteAlign(),0},hAt.prototype.unzipFile=function(t){var e;for(this.gunzip(),e=0;e<this.unzipped.length;e++)if(this.unzipped[e][1]===t)return this.unzipped[e][0]},hAt.prototype.nextFile=function(){this.outputArr=[],this.modeZIP=!1;var t=[];if(t[0]=this.readByte(),t[1]=this.readByte(),120===t[0]&&218===t[1]&&(this.DeflateLoop(),this.unzipped[this.files]=[this.outputArr.join(""),"geonext.gxt"],this.files++),31===t[0]&&139===t[1]&&(this.skipdir(),this.unzipped[this.files]=[this.outputArr.join(""),"file"],this.files++),80===t[0]&&75===t[1]&&(this.modeZIP=!0,t[2]=this.readByte(),t[3]=this.readByte(),3===t[2]&&4===t[3])){t[0]=this.readByte(),t[1]=this.readByte(),this.gpflags=this.readByte(),this.gpflags|=this.readByte()<<8;var e=this.readByte();e|=this.readByte()<<8,this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte();var i=this.readByte();i|=this.readByte()<<8;var n=this.readByte();for(n|=this.readByte()<<8,s=0,this.nameBuf=[];i--;){var r=this.readByte();"/"===r|":"===r?s=0:s<hAt.NAMEMAX-1&&(this.nameBuf[s++]=String.fromCharCode(r))}this.fileout||(this.fileout=this.nameBuf);for(var s=0;s<n;)r=this.readByte(),s++;8===e&&(this.DeflateLoop(),this.unzipped[this.files]=[this.outputArr.join(""),this.nameBuf.join("")],this.files++),this.skipdir()}},hAt.prototype.skipdir=function(){var t,e,i=[];if(8&this.gpflags&&(i[0]=this.readByte(),i[1]=this.readByte(),i[2]=this.readByte(),i[3]=this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte()),this.modeZIP&&this.nextFile(),i[0]=this.readByte(),8!==i[0])return 0;if(this.gpflags=this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),4&this.gpflags)for(i[0]=this.readByte(),i[2]=this.readByte(),this.len=i[0]+256*i[1],t=0;t<this.len;t++)this.readByte();if(8&this.gpflags)for(t=0,this.nameBuf=[];e=this.readByte();)"7"!==e&&":"!==e||(t=0),t<hAt.NAMEMAX-1&&(this.nameBuf[t++]=e);if(16&this.gpflags)for(;e=this.readByte(););2&this.gpflags&&(this.readByte(),this.readByte()),this.DeflateLoop(),this.readByte(),this.readByte(),this.readByte(),this.readByte(),this.modeZIP&&this.nextFile()};var uAt,lAt,cAt,_At,fAt,dAt,pAt,mAt,gAt,vAt,yAt,SAt,TAt,AAt,bAt,EAt,CAt,xAt,wAt,RAt,IAt,DAt,BAt,MAt,PAt,OAt,LAt,NAt,FAt,kAt,GAt,VAt,UAt,zAt,HAt,WAt,XAt,jAt,YAt,qAt,KAt,QAt,ZAt,JAt,$At,tbt,ebt,ibt,nbt,rbt,sbt,abt,obt,hbt={name:"Jacob__Codec"};function ubt(t){var e=t.parent,i=t.getComponent(Tbt);return e&&i?ubt(e):t.getComponentsInChildren(Tbt)}hbt.Base64=oAt,hbt.GZip=hAt,hbt.unzip=function(){return hbt.GZip.gunzip.apply(hbt.GZip,arguments)},hbt.unzipBase64=function(){var t=hbt.Base64.decode.apply(hbt.Base64,arguments);try{return hbt.GZip.gunzip.call(hbt.GZip,t)}catch(e){return t.slice(7)}},hbt.unzipBase64AsArray=function(t,e){e=e||1;var i,n,r,s=this.unzipBase64(t),a=[];for(i=0,r=s.length/e;i<r;i++)for(a[i]=0,n=e-1;n>=0;--n)a[i]+=s.charCodeAt(i*e+n)<<8*n;return a},hbt.unzipAsArray=function(t,e){e=e||1;var i,n,r,s=this.unzip(t),a=[];for(i=0,r=s.length/e;i<r;i++)for(a[i]=0,n=e-1;n>=0;--n)a[i]+=s.charCodeAt(i*e+n)<<8*n;return a},function(t){t[t.JPG=0]="JPG",t[t.PNG=1]="PNG",t[t.TIFF=2]="TIFF",t[t.WEBP=3]="WEBP",t[t.PVR=4]="PVR",t[t.ETC=5]="ETC",t[t.S3TC=6]="S3TC",t[t.ATITC=7]="ATITC",t[t.TGA=8]="TGA",t[t.RAWDATA=9]="RAWDATA",t[t.UNKNOWN=10]="UNKNOWN"}(obt||(obt={}));var lbt,cbt,_bt,fbt,dbt,pbt,mbt,gbt,vbt,ybt,Sbt,Tbt=t("eZ",(uAt=eo("cc.ParticleSystem2D"),lAt=Lo($Tt),cAt=Lo(SM),_At=Lo(UTt),fAt=Lo(VTt),dAt=co("preview"),uAt(((abt=function(t){function e(){var e;return(e=t.call(this)||this).duration=gAt&&gAt(),e.emissionRate=vAt&&vAt(),e.life=yAt&&yAt(),e.lifeVar=SAt&&SAt(),e.angle=TAt&&TAt(),e.angleVar=AAt&&AAt(),e.startSize=bAt&&bAt(),e.startSizeVar=EAt&&EAt(),e.endSize=CAt&&CAt(),e.endSizeVar=xAt&&xAt(),e.startSpin=wAt&&wAt(),e.startSpinVar=RAt&&RAt(),e.endSpin=IAt&&IAt(),e.endSpinVar=DAt&&DAt(),e.sourcePos=BAt&&BAt(),e.posVar=MAt&&MAt(),e.emitterMode=PAt&&PAt(),e.gravity=OAt&&OAt(),e.speed=LAt&&LAt(),e.speedVar=NAt&&NAt(),e.tangentialAccel=FAt&&FAt(),e.tangentialAccelVar=kAt&&kAt(),e.radialAccel=GAt&&GAt(),e.radialAccelVar=VAt&&VAt(),e.rotationIsDir=UAt&&UAt(),e.startRadius=zAt&&zAt(),e.startRadiusVar=HAt&&HAt(),e.endRadius=WAt&&WAt(),e.endRadiusVar=XAt&&XAt(),e.rotatePerS=jAt&&jAt(),e.rotatePerSVar=YAt&&YAt(),e.aspectRatio=1,e.playOnLoad=qAt&&qAt(),e.autoRemoveOnFinish=KAt&&KAt(),e._preview=QAt&&QAt(),e._custom=ZAt&&ZAt(),e._file=JAt&&JAt(),e._spriteFrame=$At&&$At(),e._totalParticles=tbt&&tbt(),e._startColor=ebt&&ebt(),e._startColorVar=ibt&&ibt(),e._endColor=nbt&&nbt(),e._endColorVar=rbt&&rbt(),e._positionType=sbt&&sbt(),e._stopped=!0,e._useFile=void 0,e.initProperties(),e._useFile=!1,e}s(e,t);var i=e.prototype;return i.onEnable=function(){t.prototype.onEnable.call(this),this._updateMaterial(),this._updatePositionType()},i.onDestroy=function(){t.prototype.onDestroy.call(this),this.autoRemoveOnFinish&&(this.autoRemoveOnFinish=!1),this._simulator.uvFilled=0,this._simulator.renderData&&this._assembler&&this._assembler.removeData(this._simulator.renderData)},i.initProperties=function(){this._previewTimer=null,this._focused=!1,this.aspectRatio=1,this._simulator=new ZTt(this)},i.onFocusInEditor=function(){this._focused=!0;for(var t=ubt(this.node),e=0;e<t.length;++e)t[e]._startPreview()},i.onLostFocusInEditor=function(){this._focused=!1;for(var t=ubt(this.node),e=0;e<t.length;++e)t[e]._stopPreview()},i._startPreview=function(){this._preview&&this.resetSystem()},i._stopPreview=function(){this._preview&&(this.resetSystem(),this.stopSystem()),this._previewTimer&&clearInterval(this._previewTimer)},i.__preload=function(){t.prototype.__preload.call(this),this._custom&&this.spriteFrame&&!this._renderSpriteFrame?this._applySpriteFrame():this._file&&(this._custom?!this._getTexture()&&this._applyFile():this._applyFile()),this.playOnLoad&&this.resetSystem()},i._flushAssembler=function(){var t=e.Assembler.getAssembler(this);this._assembler!==t&&(this._assembler=t),this._assembler&&this._assembler.createData&&(this._simulator.renderData=this._assembler.createData(this),this._simulator.renderData.particleInitRenderDrawInfo(this.renderEntity),this._simulator.initDrawInfo())},i.lateUpdate=function(t){this._simulator.finished||this._simulator.step(t)},i.addParticle=function(){},i.stopSystem=function(){this._stopped=!0,this._simulator.stop()},i.resetSystem=function(){this._stopped=!1,this._simulator.reset(),this.markForUpdateRenderData()},i.isFull=function(){return this.particleCount>=this.totalParticles},i._applyFile=function(){var t=this._file;if(t){if(!t)return void it(6029);if(!this.isValid)return;this._plistFile=t.nativeUrl,this._custom||(this._spriteFrame!==t.spriteFrame&&(this.spriteFrame=t.spriteFrame),this._initWithDictionary(t._nativeAsset)),this._spriteFrame?!this._renderSpriteFrame&&this._spriteFrame&&this._applySpriteFrame():t.spriteFrame?this.spriteFrame=t.spriteFrame:this._custom&&this._initTextureWithDictionary(t._nativeAsset)}},i._initTextureWithDictionary=function(t){var e,i=this;if(t.spriteFrameUuid){var n=t.spriteFrameUuid;vT.loadAny(n,(function(e,n){e?(t.spriteFrameUuid=void 0,i._initTextureWithDictionary(t),H(e)):i.spriteFrame=n}))}else{var r=oa(this._plistFile,t.textureFileName||"");if(t.textureFileName)vT.loadRemote(r,(function(e,n){e?(t.textureFileName=void 0,i._initTextureWithDictionary(t),H(e)):i.spriteFrame=n?SM.createWithImage(n):SM.createWithImage(bT.get("white-texture"))}));else if(t.textureImageData){var s=t.textureImageData;if(!(s&&s.length>0))return!1;var a=r;this.file&&(a+="-"+this.file.uuid);var o=vT.assets.get(a);if(!o){var h=hbt.unzipBase64AsArray(s,1);if(!h)return tt(6030,this._file.name),!1;var u=(e=h).length>8&&137===e[0]&&80===e[1]&&78===e[2]&&71===e[3]&&13===e[4]&&10===e[5]&&26===e[6]&&10===e[7]?obt.PNG:e.length>2&&(73===e[0]&&73===e[1]||77===e[0]&&77===e[1]||255===e[0]&&216===e[1])?obt.TIFF:obt.UNKNOWN;if(u!==obt.TIFF&&u!==obt.PNG)return tt(6031,this._file.name),!1;var l=A.document.createElement("canvas");u===obt.PNG?new tAt(h).render(l):(this._tiffReader||(this._tiffReader=new eAt),this._tiffReader.parseTIFF(h,l)),o=new Vd(l),vT.assets.add(a,o)}o||tt(6032,this._file.name),this.spriteFrame=o?SM.createWithImage(o):SM.createWithImage(bT.get("white-texture"))}}return!0},i._initWithDictionary=function(t){this._useFile=!0,this.totalParticles=parseInt(t.maxParticles||0),this.life=parseFloat(t.particleLifespan||0),this.lifeVar=parseFloat(t.particleLifespanVariance||0);var e=t.emissionRate;this.emissionRate=e||Math.min(this.totalParticles/this.life,Number.MAX_VALUE),this.duration=parseFloat(t.duration||0),this._srcBlendFactor=parseInt(t.blendFuncSource||vc.SRC_ALPHA),this._dstBlendFactor=parseInt(t.blendFuncDestination||vc.ONE_MINUS_SRC_ALPHA);var i=this._startColor;i.r=255*parseFloat(t.startColorRed||0),i.g=255*parseFloat(t.startColorGreen||0),i.b=255*parseFloat(t.startColorBlue||0),i.a=255*parseFloat(t.startColorAlpha||0);var n=this._startColorVar;n.r=255*parseFloat(t.startColorVarianceRed||0),n.g=255*parseFloat(t.startColorVarianceGreen||0),n.b=255*parseFloat(t.startColorVarianceBlue||0),n.a=255*parseFloat(t.startColorVarianceAlpha||0);var r=this._endColor;r.r=255*parseFloat(t.finishColorRed||0),r.g=255*parseFloat(t.finishColorGreen||0),r.b=255*parseFloat(t.finishColorBlue||0),r.a=255*parseFloat(t.finishColorAlpha||0);var s=this._endColorVar;if(s.r=255*parseFloat(t.finishColorVarianceRed||0),s.g=255*parseFloat(t.finishColorVarianceGreen||0),s.b=255*parseFloat(t.finishColorVarianceBlue||0),s.a=255*parseFloat(t.finishColorVarianceAlpha||0),this.startSize=parseFloat(t.startParticleSize||0),this.startSizeVar=parseFloat(t.startParticleSizeVariance||0),this.endSize=parseFloat(t.finishParticleSize||0),this.endSizeVar=parseFloat(t.finishParticleSizeVariance||0),this.positionType=parseFloat(void 0!==t.positionType?t.positionType:UTt.FREE),this.sourcePos.set(0,0),this.posVar.set(parseFloat(t.sourcePositionVariancex||0),parseFloat(t.sourcePositionVariancey||0)),this.angle=parseFloat(t.angle||0),this.angleVar=parseFloat(t.angleVariance||0),this.startSpin=parseFloat(t.rotationStart||0),this.startSpinVar=parseFloat(t.rotationStartVariance||0),this.endSpin=parseFloat(t.rotationEnd||0),this.endSpinVar=parseFloat(t.rotationEndVariance||0),this.emitterMode=parseInt(t.emitterType||VTt.GRAVITY),this.emitterMode===VTt.GRAVITY){this.gravity.set(parseFloat(t.gravityx||0),parseFloat(t.gravityy||0)),this.speed=parseFloat(t.speed||0),this.speedVar=parseFloat(t.speedVariance||0),this.radialAccel=parseFloat(t.radialAcceleration||0),this.radialAccelVar=parseFloat(t.radialAccelVariance||0),this.tangentialAccel=parseFloat(t.tangentialAcceleration||0),this.tangentialAccelVar=parseFloat(t.tangentialAccelVariance||0);var a=t.rotationIsDir||"";null!==a?(a=a.toString().toLowerCase(),this.rotationIsDir="true"===a||"1"===a):this.rotationIsDir=!1}else{if(this.emitterMode!==VTt.RADIUS)return tt(6009),!1;this.startRadius=parseFloat(t.maxRadius||0),this.startRadiusVar=parseFloat(t.maxRadiusVariance||0),this.endRadius=parseFloat(t.minRadius||0),this.endRadiusVar=parseFloat(t.minRadiusVariance||0),this.rotatePerS=parseFloat(t.rotatePerSecond||0),this.rotatePerSVar=parseFloat(t.rotatePerSecondVariance||0)}return this._initTextureWithDictionary(t),!0},i._syncAspect=function(){if(this._renderSpriteFrame){var t=this._renderSpriteFrame.rect;this.aspectRatio=t.width/t.height}},i._applySpriteFrame=function(){this._renderSpriteFrame=this._renderSpriteFrame||this._spriteFrame,this._renderSpriteFrame?this._renderSpriteFrame.texture&&(this._simulator&&this._simulator.updateUVs(!0),this._syncAspect(),this._updateMaterial(),this._stopped=!1,this.markForUpdateRenderData()):this.resetSystem()},i._getTexture=function(){return this._renderSpriteFrame&&this._renderSpriteFrame.texture},i._updateMaterial=function(){if(this._customMaterial){this.setSharedMaterial(this._customMaterial,0);var t=this.getRenderMaterial(0).passes[0].blendState.targets[0];this._dstBlendFactor=t.blendDst,this._srcBlendFactor=t.blendSrc}var e=this.getMaterialInstance(0);e&&e.recompileShaders({USE_LOCAL:this._positionType!==UTt.FREE}),e&&e.passes.length>0&&this._updateBlendFunc()},i._finishedSimulation=function(){this.resetSystem(),this.stopSystem(),this.markForUpdateRenderData(),this.autoRemoveOnFinish&&this._stopped&&this.node.destroy()},i._canRender=function(){return t.prototype._canRender.call(this)&&!this._stopped&&null!==this._renderSpriteFrame&&void 0!==this._renderSpriteFrame},i._render=function(t){this._positionType===UTt.RELATIVE?t.commitComp(this,this._simulator.renderData,this._renderSpriteFrame,this._assembler,this.node.parent):this.positionType===UTt.GROUPED?t.commitComp(this,this._simulator.renderData,this._renderSpriteFrame,this._assembler,this.node):t.commitComp(this,this._simulator.renderData,this._renderSpriteFrame,this._assembler,null)},i._updatePositionType=function(){this._positionType===UTt.RELATIVE?(this._renderEntity.setRenderTransform(this.node.parent),this._renderEntity.setUseLocal(!0)):this.positionType===UTt.GROUPED?(this._renderEntity.setRenderTransform(this.node),this._renderEntity.setUseLocal(!0)):(this._renderEntity.setRenderTransform(null),this._renderEntity.setUseLocal(!1))},n(e,[{key:"custom",get:function(){return this._custom},set:function(t){this._custom!==t&&(this._custom=t,this._applyFile(),this._updateMaterial())}},{key:"file",get:function(){return this._file},set:function(t){this._file!==t&&(this._file=t,t?this._applyFile():this.custom=!0)}},{key:"spriteFrame",get:function(){return this._spriteFrame},set:function(t){this._renderSpriteFrame!==t&&(this._renderSpriteFrame=t,t&&!t._uuid||(this._spriteFrame=t),this._applySpriteFrame())}},{key:"particleCount",get:function(){return this._simulator.particles.length}},{key:"totalParticles",get:function(){return this._totalParticles},set:function(t){this._totalParticles!==t&&(this._totalParticles=t)}},{key:"startColor",get:function(){return this._startColor},set:function(t){this._startColor.r=t.r,this._startColor.g=t.g,this._startColor.b=t.b,this._startColor.a=t.a}},{key:"startColorVar",get:function(){return this._startColorVar},set:function(t){this._startColorVar.r=t.r,this._startColorVar.g=t.g,this._startColorVar.b=t.b,this._startColorVar.a=t.a}},{key:"color",get:function(){return this._color},set:function(){}},{key:"endColor",get:function(){return this._endColor},set:function(t){this._endColor.r=t.r,this._endColor.g=t.g,this._endColor.b=t.b,this._endColor.a=t.a}},{key:"endColorVar",get:function(){return this._endColorVar},set:function(t){this._endColorVar.r=t.r,this._endColorVar.g=t.g,this._endColorVar.b=t.b,this._endColorVar.a=t.a}},{key:"positionType",get:function(){return this._positionType},set:function(t){this._positionType=t,this._updateMaterial(),this._updatePositionType()}},{key:"preview",get:function(){return this._preview},set:function(t){t?this._startPreview():this._stopPreview(),this._preview=t}},{key:"stopped",get:function(){return this._stopped}},{key:"active",get:function(){return this._simulator.active}},{key:"assembler",get:function(){return this._assembler}}]),e}(XO)).EmitterMode=VTt,abt.PositionType=UTt,abt.DURATION_INFINITY=-1,abt.START_SIZE_EQUAL_TO_END_SIZE=-1,abt.START_RADIUS_EQUAL_TO_END_RADIUS=-1,m((mAt=abt).prototype,"file",[lAt],Object.getOwnPropertyDescriptor(mAt.prototype,"file"),mAt.prototype),m(mAt.prototype,"spriteFrame",[cAt],Object.getOwnPropertyDescriptor(mAt.prototype,"spriteFrame"),mAt.prototype),gAt=ja(mAt.prototype,"duration",[lo],(function(){return-1})),vAt=ja(mAt.prototype,"emissionRate",[lo],(function(){return 10})),yAt=ja(mAt.prototype,"life",[lo],(function(){return 1})),SAt=ja(mAt.prototype,"lifeVar",[lo],(function(){return 0})),m(mAt.prototype,"color",[jo],Object.getOwnPropertyDescriptor(mAt.prototype,"color"),mAt.prototype),TAt=ja(mAt.prototype,"angle",[lo],(function(){return 90})),AAt=ja(mAt.prototype,"angleVar",[lo],(function(){return 20})),bAt=ja(mAt.prototype,"startSize",[lo],(function(){return 50})),EAt=ja(mAt.prototype,"startSizeVar",[lo],(function(){return 0})),CAt=ja(mAt.prototype,"endSize",[lo],(function(){return 0})),xAt=ja(mAt.prototype,"endSizeVar",[lo],(function(){return 0})),wAt=ja(mAt.prototype,"startSpin",[lo],(function(){return 0})),RAt=ja(mAt.prototype,"startSpinVar",[lo],(function(){return 0})),IAt=ja(mAt.prototype,"endSpin",[lo],(function(){return 0})),DAt=ja(mAt.prototype,"endSpinVar",[lo],(function(){return 0})),BAt=ja(mAt.prototype,"sourcePos",[lo],(function(){return jn.ZERO.clone()})),MAt=ja(mAt.prototype,"posVar",[lo],(function(){return jn.ZERO.clone()})),m(mAt.prototype,"positionType",[_At],Object.getOwnPropertyDescriptor(mAt.prototype,"positionType"),mAt.prototype),PAt=ja(mAt.prototype,"emitterMode",[lo,fAt],(function(){return VTt.GRAVITY})),OAt=ja(mAt.prototype,"gravity",[lo],(function(){return jn.ZERO.clone()})),LAt=ja(mAt.prototype,"speed",[lo],(function(){return 180})),NAt=ja(mAt.prototype,"speedVar",[lo],(function(){return 50})),FAt=ja(mAt.prototype,"tangentialAccel",[lo],(function(){return 80})),kAt=ja(mAt.prototype,"tangentialAccelVar",[lo],(function(){return 0})),GAt=ja(mAt.prototype,"radialAccel",[lo],(function(){return 0})),VAt=ja(mAt.prototype,"radialAccelVar",[lo],(function(){return 0})),UAt=ja(mAt.prototype,"rotationIsDir",[lo],(function(){return!1})),zAt=ja(mAt.prototype,"startRadius",[lo],(function(){return 0})),HAt=ja(mAt.prototype,"startRadiusVar",[lo],(function(){return 0})),WAt=ja(mAt.prototype,"endRadius",[lo],(function(){return 0})),XAt=ja(mAt.prototype,"endRadiusVar",[lo],(function(){return 0})),jAt=ja(mAt.prototype,"rotatePerS",[lo],(function(){return 0})),YAt=ja(mAt.prototype,"rotatePerSVar",[lo],(function(){return 0})),qAt=ja(mAt.prototype,"playOnLoad",[lo],(function(){return!0})),KAt=ja(mAt.prototype,"autoRemoveOnFinish",[lo],(function(){return!1})),QAt=ja(mAt.prototype,"_preview",[dAt],(function(){return!0})),ZAt=ja(mAt.prototype,"_custom",[lo],(function(){return!1})),JAt=ja(mAt.prototype,"_file",[lo],(function(){return null})),$At=ja(mAt.prototype,"_spriteFrame",[lo],(function(){return null})),tbt=ja(mAt.prototype,"_totalParticles",[lo],(function(){return 150})),ebt=ja(mAt.prototype,"_startColor",[lo],(function(){return new En(255,255,255,255)})),ibt=ja(mAt.prototype,"_startColorVar",[lo],(function(){return new En(0,0,0,0)})),nbt=ja(mAt.prototype,"_endColor",[lo],(function(){return new En(255,255,255,0)})),rbt=ja(mAt.prototype,"_endColorVar",[lo],(function(){return new En(0,0,0,0)})),sbt=ja(mAt.prototype,"_positionType",[lo],(function(){return UTt.FREE})),pAt=mAt))||pAt)),Abt=function(){function t(t,e){this.point=new jn,this.dir=new jn,this.distance=0,this.time=0,t&&this.point.set(t),e&&this.dir.set(e)}var e=t.prototype;return e.setPoint=function(t,e){this.point.x=t,this.point.y=e},e.setDir=function(t,e){this.dir.x=t,this.dir.y=e},t}(),bbt=t("e_",(lbt=eo("cc.MotionStreak"),cbt=Lo(lm),lbt(((Sbt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._preview=dbt&&dbt(),e._fadeTime=pbt&&pbt(),e._minSeg=mbt&&mbt(),e._stroke=gbt&&gbt(),e._texture=vbt&&vbt(),e._fastMode=ybt&&ybt(),e._points=[],e}s(e,t);var i=e.prototype;return i.onEnable=function(){t.prototype.onEnable.call(this),this.reset()},i._flushAssembler=function(){var t=e.Assembler.getAssembler(this);this._assembler!==t&&(this._assembler=t),this._renderData||this._assembler&&this._assembler.createData&&(this._renderData=this._assembler.createData(this),this._renderData.material=this.material,this._updateColor())},i.onFocusInEditor=function(){this._preview&&this.reset()},i.onLostFocusInEditor=function(){this._preview&&this.reset()},i.reset=function(){this._points.length=0,this._renderData&&this._renderData.clear()},i.lateUpdate=function(t){this._assembler&&this._assembler.update(this,t)},i._render=function(t){t.commitComp(this,this._renderData,this._texture,this._assembler,null)},n(e,[{key:"preview",get:function(){return this._preview},set:function(t){this._preview=t,this.reset()}},{key:"fadeTime",get:function(){return this._fadeTime},set:function(t){this._fadeTime=t,this.reset()}},{key:"minSeg",get:function(){return this._minSeg},set:function(t){this._minSeg=t}},{key:"stroke",get:function(){return this._stroke},set:function(t){this._stroke=t}},{key:"texture",get:function(){return this._texture},set:function(t){this._texture!==t&&(this._texture=t)}},{key:"fastMode",get:function(){return this._fastMode},set:function(t){this._fastMode=t}},{key:"points",get:function(){return this._points}}]),e}(XO)).Point=Abt,m((fbt=Sbt).prototype,"texture",[cbt],Object.getOwnPropertyDescriptor(fbt.prototype,"texture"),fbt.prototype),dbt=ja(fbt.prototype,"_preview",[lo],(function(){return!1})),pbt=ja(fbt.prototype,"_fadeTime",[lo],(function(){return 1})),mbt=ja(fbt.prototype,"_minSeg",[lo],(function(){return 1})),gbt=ja(fbt.prototype,"_stroke",[lo],(function(){return 64})),vbt=ja(fbt.prototype,"_texture",[lo],(function(){return null})),ybt=ja(fbt.prototype,"_fastMode",[lo],(function(){return!1})),_bt=fbt))||_bt));new jn;var Ebt,Cbt=new jn,xbt=new jn;function wbt(t,e){return t.x=-e.y,t.y=e.x,t}var Rbt={createData:function(t){var e=t.requestRenderData();return e.dataLength=4,e.resize(16,42),e},update:function(t,e){var i,n=t.stroke/2,r=t.node.worldMatrix,s=r.m12,a=r.m13,o=t.points;if(o.length>1){var h=o[0],u=h.point.x-s,l=h.point.y-a;u*u+l*l<t.minSeg&&(i=h)}i||(i=new bbt.Point,o.unshift(i)),i.setPoint(s,a),i.time=t.fadeTime+e;var c,_=0;if(!(o.length<2)){var f=t.renderData;this.updateRenderDataCache(t,f);var d=t.color,p=d.r,m=d.g,g=d.b,v=d.a,y=o[1];y.distance=jn.subtract(xbt,i.point,y.point).length(),xbt.normalize(),y.setDir(xbt.x,xbt.y),i.setDir(xbt.x,xbt.y),f.dataLength=2*o.length;for(var S=f.data,T=t.fadeTime,A=!1,b=o.length-1;b>=0;b--){var E=o[b],C=E.point,x=E.dir;if(E.time-=e,E.time<0)o.splice(b,1);else{var w=E.time/T,R=o[b-1];if(!A){if(!R){o.splice(b,1);continue}C.x=R.point.x-x.x*w,C.y=R.point.y-x.y*w}A=!0,wbt(Cbt,x);var I=w*v,D=_;S[D].x=C.x+Cbt.x*n,S[D].y=C.y+Cbt.y*n,S[D].u=1,S[D].v=w,S[D].color.set(p,m,g,I),S[D+=1].x=C.x-Cbt.x*n,S[D].y=C.y-Cbt.y*n,S[D].u=0,S[D].v=w,S[D].color.set(p,m,g,I),_+=2}}c=_<=2?0:3*(_-2),f.resize(_,c)}},updateWorldVertexAllData:function(t){for(var e=t.renderData,i=e.floatStride,n=e.data,r=e.chunk.vb,s=0;s<n.length;s++){var a=s*i;r[a+0]=n[s].x,r[a+1]=n[s].y,r[a+2]=n[s].z,r[a+3]=n[s].u,r[a+4]=n[s].v,En.toArray(r,n[s].color,a+5)}},createQuadIndices:function(t,e){var i=t.renderData.chunk.meshBuffer.indexOffset;Ebt=null,Ebt=new Uint16Array(e);for(var n=0,r=e;n<r;n+=2){var s=0+n;Ebt[i++]=s,Ebt[i++]=s+2,Ebt[i++]=s+1,Ebt[i++]=s+1,Ebt[i++]=s+2,Ebt[i++]=s+3}},updateRenderDataCache:function(t,e){e.passDirty&&e.updatePass(t),e.nodeDirty&&e.updateNode(t),e.textureDirty&&t.texture&&(e.updateTexture(t.texture),e.material=t.getRenderMaterial(0)),e.hashDirty&&e.updateHash()},updateRenderData:function(){},updateColor:function(){},fillBuffers:function(t){for(var e=t.renderData,i=e.chunk,n=e.data,r=e.vertexCount,s=e.indexCount,a=i.vb,o=0,h=0;h<r;h++){var u=n[h];a[o++]=u.x,a[o++]=u.y,a[o++]=u.z,a[o++]=u.u,a[o++]=u.v,En.toArray(a,u.color,o),o+=4}i.bufferId;for(var l=i.vertexOffset,c=i.meshBuffer,_=i.meshBuffer.iData,f=c.indexOffset,d=0,p=s;d<p;d+=2){var m=l+d;_[f++]=m,_[f++]=m+2,_[f++]=m+1,_[f++]=m+1,_[f++]=m+2,_[f++]=m+3}c.indexOffset+=e.indexCount,c.setDirty()}},Ibt=t("e$",{getAssembler:function(){return Rbt}});bbt.Assembler=Ibt;var Dbt,Bbt,Mbt,Pbt,Obt,Lbt={maxParticleDeltaTime:0,createData:function(){return vO.add()},removeData:function(t){vO.remove(t)},updateRenderData:function(){},fillBuffers:function(){}},Nbt=t("f0",{getAssembler:function(){return Lbt.maxParticleDeltaTime||(Lbt.maxParticleDeltaTime=S.game.frameTime/1e3*2),Lbt}});Tbt.Assembler=Nbt,t("f4",Dbt),function(t){t[t.Static=0]="Static",t[t.Kinematic=1]="Kinematic",t[t.Dynamic=2]="Dynamic",t[t.Animated=3]="Animated"}(Dbt||t("f4",Dbt={})),Ee(Dbt),t("f5",Bbt),function(t){t[t.None=0]="None",t[t.BOX=1]="BOX",t[t.CIRCLE=2]="CIRCLE",t[t.POLYGON=3]="POLYGON"}(Bbt||t("f5",Bbt={})),Ee(Bbt),t("f6",Mbt),function(t){t[t.None=0]="None",t[t.DISTANCE=1]="DISTANCE",t[t.SPRING=2]="SPRING",t[t.WHEEL=3]="WHEEL",t[t.MOUSE=4]="MOUSE",t[t.FIXED=5]="FIXED",t[t.SLIDER=6]="SLIDER",t[t.RELATIVE=7]="RELATIVE",t[t.HINGE=8]="HINGE"}(Mbt||t("f6",Mbt={})),Ee(Mbt),t("f7",Pbt),function(t){t[t.DEFAULT=1]="DEFAULT"}(Pbt||t("f7",Pbt={})),Ee(Pbt),t("f8",Obt),function(t){t[t.Closest=0]="Closest",t[t.Any=1]="Any",t[t.AllClosest=2]="AllClosest",t[t.All=3]="All"}(Obt||t("f8",Obt={}));var Fbt,kbt=t("f9",{None:"none-contact",BEGIN_CONTACT:"begin-contact",END_CONTACT:"end-contact",PRE_SOLVE:"pre-solve",POST_SOLVE:"post-solve"});t("fa",Fbt),function(t){t[t.None=0]="None",t[t.Shape=1]="Shape",t[t.Joint=2]="Joint",t[t.Aabb=4]="Aabb",t[t.Pair=8]="Pair",t[t.CenterOfMass=16]="CenterOfMass",t[t.Particle=32]="Particle",t[t.Controller=64]="Controller",t[t.All=63]="All"}(Fbt||t("fa",Fbt={}));var Gbt=t("fb",32),Vbt=t("f3",{id:"",switchTo:function(t){var e=Vbt;Vbt.physicsWorld&&t!==Vbt.id&&null!=Vbt.backend[t]?(U("[PHYSICS2D]: switch from "+Vbt.id+" to "+t+"."),e.id=t,e.wrapper=Vbt.backend[t],e.physicsWorld=zbt()):(U("[PHYSICS2D]: using "+e.id+"."),e.physicsWorld=zbt())},register:function(t,e){if(U("[PHYSICS2D]: register "+t+"."),Vbt.backend[t]=e,!Vbt.physicsWorld||Vbt.id===t){var i=Vbt;i.id=t,i.wrapper=e}},wrapper:{},backend:{},physicsWorld:null,runInEditor:!0}),Ubt=function(){return 0};function zbt(){return new Vbt.wrapper.PhysicsWorld}var Hbt={impl:null,rigidBody:null,isAwake:!1,isSleeping:!1,initialize:Ubt,setType:Ubt,setLinearDamping:Ubt,setAngularDamping:Ubt,setGravityScale:Ubt,setFixedRotation:Ubt,setAllowSleep:Ubt,isActive:Ubt,setActive:Ubt,wakeUp:Ubt,sleep:Ubt,getMass:Ubt,getInertia:Ubt,getLinearVelocity:Ubt,setLinearVelocity:Ubt,getLinearVelocityFromWorldPoint:Ubt,getAngularVelocity:Ubt,setAngularVelocity:Ubt,getLocalVector:Ubt,getWorldVector:Ubt,getLocalPoint:Ubt,getWorldPoint:Ubt,getLocalCenter:Ubt,getWorldCenter:Ubt,applyForce:Ubt,applyForceToCenter:Ubt,applyTorque:Ubt,applyLinearImpulse:Ubt,applyLinearImpulseToCenter:Ubt,applyAngularImpulse:Ubt,onEnable:Ubt,onDisable:Ubt,onDestroy:Ubt},Wbt={INITED:!1};var Xbt={INITED:!1},jbt={impl:null,initialize:Ubt,apply:Ubt,setDampingRatio:Ubt,setFrequency:Ubt,setMaxForce:Ubt,setTarget:Ubt,setDistance:Ubt,setAngularOffset:Ubt,setCorrectionFactor:Ubt,setLinearOffset:Ubt,setMaxLength:Ubt,setMaxTorque:Ubt,setLowerLimit:Ubt,setUpperLimit:Ubt,setMaxMotorForce:Ubt,setMaxMotorTorque:Ubt,setMotorSpeed:Ubt,enableLimit:Ubt,enableMotor:Ubt,setLowerAngle:Ubt,setUpperAngle:Ubt};function Ybt(t,e){return t(e={exports:{}},e.exports),e.exports}"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var qbt,Kbt=Ybt((function(t,e){!function(t){function e(t,e){return void 0!==t?t:e}var i=1e37,r=1e-5,a=r*r,o=3.14159265359,h=.1,l=.008,c=2/180*o,_=.016,d=.2,p=8/180*o,m=.5*o,g=2.4674011002726646,v=-1,y=.75,S=.25,T=256,A=.01,b=2/180*o;var E=function(){function t(t,e,i){void 0===t&&(t=0),void 0===e&&(e=0),void 0===i&&(i=0),this.major=0,this.minor=0,this.revision=0,this.major=t,this.minor=e,this.revision=i}return t.prototype.toString=function(){return this.major+"."+this.minor+"."+this.revision},t}(),C=new E(2,3,2);function x(t,e){for(var i=new Array(t),n=0;n<t;++n)i[n]=e(n);return i}function w(t,e){void 0===e&&(e=0);for(var i=new Array(t),n=0;n<t;++n)i[n]=e;return i}var R=o/180,I=180/o,D=2*o,B=Math.abs;function M(t,e){return t<e?t:e}function P(t,e){return t>e?t:e}function O(t,e,i){return t<e?e:t>i?i:t}var L=isFinite;function N(t){return t*t}function F(t){return 1/Math.sqrt(t)}var k=Math.sqrt,G=Math.pow;var V=Math.cos,U=Math.sin,z=Math.acos,H=Math.asin,W=Math.atan2;var X=function(){function t(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];if(e[0]instanceof Float32Array){if(2!==e[0].length)throw new Error;this.data=e[0]}else{var n="number"==typeof e[0]?e[0]:0,r="number"==typeof e[1]?e[1]:0;this.data=new Float32Array([n,r])}}var e=t.prototype;return e.Clone=function(){return new t(this.x,this.y)},e.SetZero=function(){return this.x=0,this.y=0,this},e.Set=function(t,e){return this.x=t,this.y=e,this},e.Copy=function(t){return this.x=t.x,this.y=t.y,this},e.SelfAdd=function(t){return this.x+=t.x,this.y+=t.y,this},e.SelfAddXY=function(t,e){return this.x+=t,this.y+=e,this},e.SelfSub=function(t){return this.x-=t.x,this.y-=t.y,this},e.SelfSubXY=function(t,e){return this.x-=t,this.y-=e,this},e.SelfMul=function(t){return this.x*=t,this.y*=t,this},e.SelfMulAdd=function(t,e){return this.x+=t*e.x,this.y+=t*e.y,this},e.SelfMulSub=function(t,e){return this.x-=t*e.x,this.y-=t*e.y,this},e.Dot=function(t){return this.x*t.x+this.y*t.y},e.Cross=function(t){return this.x*t.y-this.y*t.x},e.Length=function(){var t=this.x,e=this.y;return Math.sqrt(t*t+e*e)},e.LengthSquared=function(){var t=this.x,e=this.y;return t*t+e*e},e.Normalize=function(){var t=this.Length();if(t>=r){var e=1/t;this.x*=e,this.y*=e}return t},e.SelfNormalize=function(){var t=this.Length();if(t>=r){var e=1/t;this.x*=e,this.y*=e}return this},e.SelfRotate=function(t){var e=Math.cos(t),i=Math.sin(t),n=this.x;return this.x=e*n-i*this.y,this.y=i*n+e*this.y,this},e.SelfRotateCosSin=function(t,e){var i=this.x;return this.x=t*i-e*this.y,this.y=e*i+t*this.y,this},e.IsValid=function(){return isFinite(this.x)&&isFinite(this.y)},e.SelfCrossVS=function(t){var e=this.x;return this.x=t*this.y,this.y=-t*e,this},e.SelfCrossSV=function(t){var e=this.x;return this.x=-t*this.y,this.y=t*e,this},e.SelfMinV=function(t){return this.x=M(this.x,t.x),this.y=M(this.y,t.y),this},e.SelfMaxV=function(t){return this.x=P(this.x,t.x),this.y=P(this.y,t.y),this},e.SelfAbs=function(){return this.x=B(this.x),this.y=B(this.y),this},e.SelfNeg=function(){return this.x=-this.x,this.y=-this.y,this},e.SelfSkew=function(){var t=this.x;return this.x=-this.y,this.y=t,this},t.MakeArray=function(e){return x(e,(function(){return new t}))},t.AbsV=function(t,e){return e.x=B(t.x),e.y=B(t.y),e},t.MinV=function(t,e,i){return i.x=M(t.x,e.x),i.y=M(t.y,e.y),i},t.MaxV=function(t,e,i){return i.x=P(t.x,e.x),i.y=P(t.y,e.y),i},t.ClampV=function(t,e,i,n){return n.x=O(t.x,e.x,i.x),n.y=O(t.y,e.y,i.y),n},t.RotateV=function(t,e,i){var n=t.x,r=t.y,s=Math.cos(e),a=Math.sin(e);return i.x=s*n-a*r,i.y=a*n+s*r,i},t.DotVV=function(t,e){return t.x*e.x+t.y*e.y},t.CrossVV=function(t,e){return t.x*e.y-t.y*e.x},t.CrossVS=function(t,e,i){var n=t.x;return i.x=e*t.y,i.y=-e*n,i},t.CrossVOne=function(t,e){var i=t.x;return e.x=t.y,e.y=-i,e},t.CrossSV=function(t,e,i){var n=e.x;return i.x=-t*e.y,i.y=t*n,i},t.CrossOneV=function(t,e){var i=t.x;return e.x=-t.y,e.y=i,e},t.AddVV=function(t,e,i){return i.x=t.x+e.x,i.y=t.y+e.y,i},t.SubVV=function(t,e,i){return i.x=t.x-e.x,i.y=t.y-e.y,i},t.MulSV=function(t,e,i){return i.x=e.x*t,i.y=e.y*t,i},t.MulVS=function(t,e,i){return i.x=t.x*e,i.y=t.y*e,i},t.AddVMulSV=function(t,e,i,n){return n.x=t.x+e*i.x,n.y=t.y+e*i.y,n},t.SubVMulSV=function(t,e,i,n){return n.x=t.x-e*i.x,n.y=t.y-e*i.y,n},t.AddVCrossSV=function(t,e,i,n){var r=i.x;return n.x=t.x-e*i.y,n.y=t.y+e*r,n},t.MidVV=function(t,e,i){return i.x=.5*(t.x+e.x),i.y=.5*(t.y+e.y),i},t.ExtVV=function(t,e,i){return i.x=.5*(e.x-t.x),i.y=.5*(e.y-t.y),i},t.IsEqualToV=function(t,e){return t.x===e.x&&t.y===e.y},t.DistanceVV=function(t,e){var i=t.x-e.x,n=t.y-e.y;return Math.sqrt(i*i+n*n)},t.DistanceSquaredVV=function(t,e){var i=t.x-e.x,n=t.y-e.y;return i*i+n*n},t.NegV=function(t,e){return e.x=-t.x,e.y=-t.y,e},n(t,[{key:"x",get:function(){return this.data[0]},set:function(t){this.data[0]=t}},{key:"y",get:function(){return this.data[1]},set:function(t){this.data[1]=t}}]),t}();X.ZERO=new X(0,0),X.UNITX=new X(1,0),X.UNITY=new X(0,1),X.s_t0=new X,X.s_t1=new X,X.s_t2=new X,X.s_t3=new X;var j=new X(0,0),Y=function(){function t(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];if(e[0]instanceof Float32Array){if(3!==e[0].length)throw new Error;this.data=e[0]}else{var n="number"==typeof e[0]?e[0]:0,r="number"==typeof e[1]?e[1]:0,s="number"==typeof e[2]?e[2]:0;this.data=new Float32Array([n,r,s])}}var e=t.prototype;return e.Clone=function(){return new t(this.x,this.y,this.z)},e.SetZero=function(){return this.x=0,this.y=0,this.z=0,this},e.SetXYZ=function(t,e,i){return this.x=t,this.y=e,this.z=i,this},e.Copy=function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},e.SelfNeg=function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},e.SelfAdd=function(t){return this.x+=t.x,this.y+=t.y,this.z+=t.z,this},e.SelfAddXYZ=function(t,e,i){return this.x+=t,this.y+=e,this.z+=i,this},e.SelfSub=function(t){return this.x-=t.x,this.y-=t.y,this.z-=t.z,this},e.SelfSubXYZ=function(t,e,i){return this.x-=t,this.y-=e,this.z-=i,this},e.SelfMul=function(t){return this.x*=t,this.y*=t,this.z*=t,this},t.DotV3V3=function(t,e){return t.x*e.x+t.y*e.y+t.z*e.z},t.CrossV3V3=function(t,e,i){var n=t.x,r=t.y,s=t.z,a=e.x,o=e.y,h=e.z;return i.x=r*h-s*o,i.y=s*a-n*h,i.z=n*o-r*a,i},n(t,[{key:"x",get:function(){return this.data[0]},set:function(t){this.data[0]=t}},{key:"y",get:function(){return this.data[1]},set:function(t){this.data[1]=t}},{key:"z",get:function(){return this.data[2]},set:function(t){this.data[2]=t}}]),t}();Y.ZERO=new Y(0,0,0),Y.s_t0=new Y;var q=function(){function t(){this.data=new Float32Array([1,0,0,1]),this.ex=new X(this.data.subarray(0,2)),this.ey=new X(this.data.subarray(2,4))}var e=t.prototype;return e.Clone=function(){return(new t).Copy(this)},t.FromVV=function(e,i){return(new t).SetVV(e,i)},t.FromSSSS=function(e,i,n,r){return(new t).SetSSSS(e,i,n,r)},t.FromAngle=function(e){return(new t).SetAngle(e)},e.SetSSSS=function(t,e,i,n){return this.ex.Set(t,i),this.ey.Set(e,n),this},e.SetVV=function(t,e){return this.ex.Copy(t),this.ey.Copy(e),this},e.SetAngle=function(t){var e=Math.cos(t),i=Math.sin(t);return this.ex.Set(e,i),this.ey.Set(-i,e),this},e.Copy=function(t){return this.ex.Copy(t.ex),this.ey.Copy(t.ey),this},e.SetIdentity=function(){return this.ex.Set(1,0),this.ey.Set(0,1),this},e.SetZero=function(){return this.ex.SetZero(),this.ey.SetZero(),this},e.GetAngle=function(){return Math.atan2(this.ex.y,this.ex.x)},e.GetInverse=function(t){var e=this.ex.x,i=this.ey.x,n=this.ex.y,r=this.ey.y,s=e*r-i*n;return 0!==s&&(s=1/s),t.ex.x=s*r,t.ey.x=-s*i,t.ex.y=-s*n,t.ey.y=s*e,t},e.Solve=function(t,e,i){var n=this.ex.x,r=this.ey.x,s=this.ex.y,a=this.ey.y,o=n*a-r*s;return 0!==o&&(o=1/o),i.x=o*(a*t-r*e),i.y=o*(n*e-s*t),i},e.SelfAbs=function(){return this.ex.SelfAbs(),this.ey.SelfAbs(),this},e.SelfInv=function(){return this.GetInverse(this),this},e.SelfAddM=function(t){return this.ex.SelfAdd(t.ex),this.ey.SelfAdd(t.ey),this},e.SelfSubM=function(t){return this.ex.SelfSub(t.ex),this.ey.SelfSub(t.ey),this},t.AbsM=function(t,e){var i=t.ex,n=t.ey;return e.ex.x=B(i.x),e.ex.y=B(i.y),e.ey.x=B(n.x),e.ey.y=B(n.y),e},t.MulMV=function(t,e,i){var n=t.ex,r=t.ey,s=e.x,a=e.y;return i.x=n.x*s+r.x*a,i.y=n.y*s+r.y*a,i},t.MulTMV=function(t,e,i){var n=t.ex,r=t.ey,s=e.x,a=e.y;return i.x=n.x*s+n.y*a,i.y=r.x*s+r.y*a,i},t.AddMM=function(t,e,i){var n=t.ex,r=t.ey,s=e.ex,a=e.ey;return i.ex.x=n.x+s.x,i.ex.y=n.y+s.y,i.ey.x=r.x+a.x,i.ey.y=r.y+a.y,i},t.MulMM=function(t,e,i){var n=t.ex.x,r=t.ex.y,s=t.ey.x,a=t.ey.y,o=e.ex.x,h=e.ex.y,u=e.ey.x,l=e.ey.y;return i.ex.x=n*o+s*h,i.ex.y=r*o+a*h,i.ey.x=n*u+s*l,i.ey.y=r*u+a*l,i},t.MulTMM=function(t,e,i){var n=t.ex.x,r=t.ex.y,s=t.ey.x,a=t.ey.y,o=e.ex.x,h=e.ex.y,u=e.ey.x,l=e.ey.y;return i.ex.x=n*o+r*h,i.ex.y=s*o+a*h,i.ey.x=n*u+r*l,i.ey.y=s*u+a*l,i},t}();q.IDENTITY=new q;var K=function(){function t(){this.data=new Float32Array([1,0,0,0,1,0,0,0,1]),this.ex=new Y(this.data.subarray(0,3)),this.ey=new Y(this.data.subarray(3,6)),this.ez=new Y(this.data.subarray(6,9))}var e=t.prototype;return e.Clone=function(){return(new t).Copy(this)},e.SetVVV=function(t,e,i){return this.ex.Copy(t),this.ey.Copy(e),this.ez.Copy(i),this},e.Copy=function(t){return this.ex.Copy(t.ex),this.ey.Copy(t.ey),this.ez.Copy(t.ez),this},e.SetIdentity=function(){return this.ex.SetXYZ(1,0,0),this.ey.SetXYZ(0,1,0),this.ez.SetXYZ(0,0,1),this},e.SetZero=function(){return this.ex.SetZero(),this.ey.SetZero(),this.ez.SetZero(),this},e.SelfAddM=function(t){return this.ex.SelfAdd(t.ex),this.ey.SelfAdd(t.ey),this.ez.SelfAdd(t.ez),this},e.Solve33=function(t,e,i,n){var r=this.ex.x,s=this.ex.y,a=this.ex.z,o=this.ey.x,h=this.ey.y,u=this.ey.z,l=this.ez.x,c=this.ez.y,_=this.ez.z,f=r*(h*_-u*c)+s*(u*l-o*_)+a*(o*c-h*l);return 0!==f&&(f=1/f),n.x=f*(t*(h*_-u*c)+e*(u*l-o*_)+i*(o*c-h*l)),n.y=f*(r*(e*_-i*c)+s*(i*l-t*_)+a*(t*c-e*l)),n.z=f*(r*(h*i-u*e)+s*(u*t-o*i)+a*(o*e-h*t)),n},e.Solve22=function(t,e,i){var n=this.ex.x,r=this.ey.x,s=this.ex.y,a=this.ey.y,o=n*a-r*s;return 0!==o&&(o=1/o),i.x=o*(a*t-r*e),i.y=o*(n*e-s*t),i},e.GetInverse22=function(t){var e=this.ex.x,i=this.ey.x,n=this.ex.y,r=this.ey.y,s=e*r-i*n;0!==s&&(s=1/s),t.ex.x=s*r,t.ey.x=-s*i,t.ex.z=0,t.ex.y=-s*n,t.ey.y=s*e,t.ey.z=0,t.ez.x=0,t.ez.y=0,t.ez.z=0},e.GetSymInverse33=function(t){var e=Y.DotV3V3(this.ex,Y.CrossV3V3(this.ey,this.ez,Y.s_t0));0!==e&&(e=1/e);var i=this.ex.x,n=this.ey.x,r=this.ez.x,s=this.ey.y,a=this.ez.y,o=this.ez.z;t.ex.x=e*(s*o-a*a),t.ex.y=e*(r*a-n*o),t.ex.z=e*(n*a-r*s),t.ey.x=t.ex.y,t.ey.y=e*(i*o-r*r),t.ey.z=e*(r*n-i*a),t.ez.x=t.ex.z,t.ez.y=t.ey.z,t.ez.z=e*(i*s-n*n)},t.MulM33V3=function(t,e,i){var n=e.x,r=e.y,s=e.z;return i.x=t.ex.x*n+t.ey.x*r+t.ez.x*s,i.y=t.ex.y*n+t.ey.y*r+t.ez.y*s,i.z=t.ex.z*n+t.ey.z*r+t.ez.z*s,i},t.MulM33XYZ=function(t,e,i,n,r){return r.x=t.ex.x*e+t.ey.x*i+t.ez.x*n,r.y=t.ex.y*e+t.ey.y*i+t.ez.y*n,r.z=t.ex.z*e+t.ey.z*i+t.ez.z*n,r},t.MulM33V2=function(t,e,i){var n=e.x,r=e.y;return i.x=t.ex.x*n+t.ey.x*r,i.y=t.ex.y*n+t.ey.y*r,i},t.MulM33XY=function(t,e,i,n){return n.x=t.ex.x*e+t.ey.x*i,n.y=t.ex.y*e+t.ey.y*i,n},t}();K.IDENTITY=new K;var Q=function(){function t(t){void 0===t&&(t=0),this.s=0,this.c=1,t&&(this.s=Math.sin(t),this.c=Math.cos(t))}var e=t.prototype;return e.Clone=function(){return(new t).Copy(this)},e.Copy=function(t){return this.s=t.s,this.c=t.c,this},e.SetAngle=function(t){return this.s=Math.sin(t),this.c=Math.cos(t),this},e.SetIdentity=function(){return this.s=0,this.c=1,this},e.GetAngle=function(){return Math.atan2(this.s,this.c)},e.GetXAxis=function(t){return t.x=this.c,t.y=this.s,t},e.GetYAxis=function(t){return t.x=-this.s,t.y=this.c,t},t.MulRR=function(t,e,i){var n=t.c,r=t.s,s=e.c,a=e.s;return i.s=r*s+n*a,i.c=n*s-r*a,i},t.MulTRR=function(t,e,i){var n=t.c,r=t.s,s=e.c,a=e.s;return i.s=n*a-r*s,i.c=n*s+r*a,i},t.MulRV=function(t,e,i){var n=t.c,r=t.s,s=e.x,a=e.y;return i.x=n*s-r*a,i.y=r*s+n*a,i},t.MulTRV=function(t,e,i){var n=t.c,r=t.s,s=e.x,a=e.y;return i.x=n*s+r*a,i.y=-r*s+n*a,i},t}();Q.IDENTITY=new Q;var Z=function(){function t(){this.p=new X,this.q=new Q}var e=t.prototype;return e.Clone=function(){return(new t).Copy(this)},e.Copy=function(t){return this.p.Copy(t.p),this.q.Copy(t.q),this},e.SetIdentity=function(){return this.p.SetZero(),this.q.SetIdentity(),this},e.SetPositionRotation=function(t,e){return this.p.Copy(t),this.q.Copy(e),this},e.SetPositionAngle=function(t,e){return this.p.Copy(t),this.q.SetAngle(e),this},e.SetPosition=function(t){return this.p.Copy(t),this},e.SetPositionXY=function(t,e){return this.p.Set(t,e),this},e.SetRotation=function(t){return this.q.Copy(t),this},e.SetRotationAngle=function(t){return this.q.SetAngle(t),this},e.GetPosition=function(){return this.p},e.GetRotation=function(){return this.q},e.GetRotationAngle=function(){return this.q.GetAngle()},e.GetAngle=function(){return this.q.GetAngle()},t.MulXV=function(t,e,i){var n=t.q.c,r=t.q.s,s=e.x,a=e.y;return i.x=n*s-r*a+t.p.x,i.y=r*s+n*a+t.p.y,i},t.MulTXV=function(t,e,i){var n=t.q.c,r=t.q.s,s=e.x-t.p.x,a=e.y-t.p.y;return i.x=n*s+r*a,i.y=-r*s+n*a,i},t.MulXX=function(t,e,i){return Q.MulRR(t.q,e.q,i.q),X.AddVV(Q.MulRV(t.q,e.p,i.p),t.p,i.p),i},t.MulTXX=function(t,e,i){return Q.MulTRR(t.q,e.q,i.q),Q.MulTRV(t.q,X.SubVV(e.p,t.p,i.p),i.p),i},t}();Z.IDENTITY=new Z;var J,$=function(){function t(){this.localCenter=new X,this.c0=new X,this.c=new X,this.a0=0,this.a=0,this.alpha0=0}var e=t.prototype;return e.Clone=function(){return(new t).Copy(this)},e.Copy=function(t){return this.localCenter.Copy(t.localCenter),this.c0.Copy(t.c0),this.c.Copy(t.c),this.a0=t.a0,this.a=t.a,this.alpha0=t.alpha0,this},e.GetTransform=function(t,e){var i=1-e;t.p.x=i*this.c0.x+e*this.c.x,t.p.y=i*this.c0.y+e*this.c.y;var n=i*this.a0+e*this.a;return t.q.SetAngle(n),t.p.SelfSub(Q.MulRV(t.q,this.localCenter,X.s_t0)),t},e.Advance=function(t){var e=(t-this.alpha0)/(1-this.alpha0),i=1-e;this.c0.x=i*this.c0.x+e*this.c.x,this.c0.y=i*this.c0.y+e*this.c.y,this.a0=i*this.a0+e*this.a,this.alpha0=t},e.Normalize=function(){var t=D*Math.floor(this.a0/D);this.a0-=t,this.a-=t},t}(),tt=function(){function t(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];if(e[0]instanceof Float32Array){if(4!==e[0].length)throw new Error;this.data=e[0]}else{var n="number"==typeof e[0]?e[0]:.5,r="number"==typeof e[1]?e[1]:.5,s="number"==typeof e[2]?e[2]:.5,a="number"==typeof e[3]?e[3]:1;this.data=new Float32Array([n,r,s,a])}}var e=t.prototype;return e.Clone=function(){return(new t).Copy(this)},e.Copy=function(t){return this.r=t.r,this.g=t.g,this.b=t.b,this.a=t.a,this},e.IsEqual=function(t){return this.r===t.r&&this.g===t.g&&this.b===t.b&&this.a===t.a},e.IsZero=function(){return 0===this.r&&0===this.g&&0===this.b&&0===this.a},e.Set=function(t,e,i,n){void 0===n&&(n=this.a),this.SetRGBA(t,e,i,n)},e.SetByteRGB=function(t,e,i){return this.r=t/255,this.g=e/255,this.b=i/255,this},e.SetByteRGBA=function(t,e,i,n){return this.r=t/255,this.g=e/255,this.b=i/255,this.a=n/255,this},e.SetRGB=function(t,e,i){return this.r=t,this.g=e,this.b=i,this},e.SetRGBA=function(t,e,i,n){return this.r=t,this.g=e,this.b=i,this.a=n,this},e.SelfAdd=function(t){return this.r+=t.r,this.g+=t.g,this.b+=t.b,this.a+=t.a,this},e.Add=function(t,e){return e.r=this.r+t.r,e.g=this.g+t.g,e.b=this.b+t.b,e.a=this.a+t.a,e},e.SelfSub=function(t){return this.r-=t.r,this.g-=t.g,this.b-=t.b,this.a-=t.a,this},e.Sub=function(t,e){return e.r=this.r-t.r,e.g=this.g-t.g,e.b=this.b-t.b,e.a=this.a-t.a,e},e.SelfMul=function(t){return this.r*=t,this.g*=t,this.b*=t,this.a*=t,this},e.Mul=function(t,e){return e.r=this.r*t,e.g=this.g*t,e.b=this.b*t,e.a=this.a*t,e},e.Mix=function(e,i){t.MixColors(this,e,i)},t.MixColors=function(t,e,i){var n=i*(e.r-t.r),r=i*(e.g-t.g),s=i*(e.b-t.b),a=i*(e.a-t.a);t.r+=n,t.g+=r,t.b+=s,t.a+=a,e.r-=n,e.g-=r,e.b-=s,e.a-=a},e.MakeStyleString=function(e){return void 0===e&&(e=this.a),t.MakeStyleString(this.r,this.g,this.b,e)},t.MakeStyleString=function(t,e,i,n){return void 0===n&&(n=1),t*=255,e*=255,i*=255,n<1?"rgba("+t+","+e+","+i+","+n+")":"rgb("+t+","+e+","+i+")"},n(t,[{key:"r",get:function(){return this.data[0]},set:function(t){this.data[0]=t}},{key:"g",get:function(){return this.data[1]},set:function(t){this.data[1]=t}},{key:"b",get:function(){return this.data[2]},set:function(t){this.data[2]=t}},{key:"a",get:function(){return this.data[3]},set:function(t){this.data[3]=t}}]),t}();tt.ZERO=new tt(0,0,0,0),tt.RED=new tt(1,0,0),tt.GREEN=new tt(0,1,0),tt.BLUE=new tt(0,0,1),(J=t.b2DrawFlags||(t.b2DrawFlags={}))[J.e_none=0]="e_none",J[J.e_shapeBit=1]="e_shapeBit",J[J.e_jointBit=2]="e_jointBit",J[J.e_aabbBit=4]="e_aabbBit",J[J.e_pairBit=8]="e_pairBit",J[J.e_centerOfMassBit=16]="e_centerOfMassBit",J[J.e_particleBit=32]="e_particleBit",J[J.e_controllerBit=64]="e_controllerBit",J[J.e_all=63]="e_all";var et=function(){function t(){this.m_drawFlags=0}var e=t.prototype;return e.SetFlags=function(t){this.m_drawFlags=t},e.GetFlags=function(){return this.m_drawFlags},e.AppendFlags=function(t){this.m_drawFlags|=t},e.ClearFlags=function(t){this.m_drawFlags&=~t},t}(),it=function(){function t(){this.m_start=Date.now()}var e=t.prototype;return e.Reset=function(){return this.m_start=Date.now(),this},e.GetMilliseconds=function(){return Date.now()-this.m_start},t}(),nt=function(){function t(){this.m_count=0,this.m_min_count=0,this.m_max_count=0}var e=t.prototype;return e.GetCount=function(){return this.m_count},e.GetMinCount=function(){return this.m_min_count},e.GetMaxCount=function(){return this.m_max_count},e.ResetCount=function(){var t=this.m_count;return this.m_count=0,t},e.ResetMinCount=function(){this.m_min_count=0},e.ResetMaxCount=function(){this.m_max_count=0},e.Increment=function(){this.m_count++,this.m_max_count<this.m_count&&(this.m_max_count=this.m_count)},e.Decrement=function(){this.m_count--,this.m_min_count>this.m_count&&(this.m_min_count=this.m_count)},t}(),rt=function(){function t(t){this.m_stack=[],this.m_count=0,this.m_stack=x(t,(function(){return null})),this.m_count=0}var e=t.prototype;return e.Reset=function(){return this.m_count=0,this},e.Push=function(t){this.m_stack[this.m_count]=t,this.m_count++},e.Pop=function(){this.m_count--;var t=this.m_stack[this.m_count];if(this.m_stack[this.m_count]=null,null===t)throw new Error;return t},e.GetCount=function(){return this.m_count},t}(),st=function(){function t(){this.m_buffer=X.MakeArray(2),this.m_vertices=this.m_buffer,this.m_count=0,this.m_radius=0}var e=t.prototype;return e.Copy=function(t){return t.m_vertices===t.m_buffer?(this.m_vertices=this.m_buffer,this.m_buffer[0].Copy(t.m_buffer[0]),this.m_buffer[1].Copy(t.m_buffer[1])):this.m_vertices=t.m_vertices,this.m_count=t.m_count,this.m_radius=t.m_radius,this},e.Reset=function(){return this.m_vertices=this.m_buffer,this.m_count=0,this.m_radius=0,this},e.SetShape=function(t,e){t.SetupDistanceProxy(this,e)},e.SetVerticesRadius=function(t,e,i){this.m_vertices=t,this.m_count=e,this.m_radius=i},e.GetSupport=function(t){for(var e=0,i=X.DotVV(this.m_vertices[0],t),n=1;n<this.m_count;++n){var r=X.DotVV(this.m_vertices[n],t);r>i&&(e=n,i=r)}return e},e.GetSupportVertex=function(t){for(var e=0,i=X.DotVV(this.m_vertices[0],t),n=1;n<this.m_count;++n){var r=X.DotVV(this.m_vertices[n],t);r>i&&(e=n,i=r)}return this.m_vertices[e]},e.GetVertexCount=function(){return this.m_count},e.GetVertex=function(t){return this.m_vertices[t]},t}(),at=function(){function t(){this.metric=0,this.count=0,this.indexA=[0,0,0],this.indexB=[0,0,0]}return t.prototype.Reset=function(){return this.metric=0,this.count=0,this},t}(),ot=function(){function t(){this.proxyA=new st,this.proxyB=new st,this.transformA=new Z,this.transformB=new Z,this.useRadii=!1}return t.prototype.Reset=function(){return this.proxyA.Reset(),this.proxyB.Reset(),this.transformA.SetIdentity(),this.transformB.SetIdentity(),this.useRadii=!1,this},t}(),ht=function(){function t(){this.pointA=new X,this.pointB=new X,this.distance=0,this.iterations=0}return t.prototype.Reset=function(){return this.pointA.SetZero(),this.pointB.SetZero(),this.distance=0,this.iterations=0,this},t}();t.b2_gjkCalls=0,t.b2_gjkIters=0,t.b2_gjkMaxIters=0;var ut=function(){function t(){this.wA=new X,this.wB=new X,this.w=new X,this.a=0,this.indexA=0,this.indexB=0}return t.prototype.Copy=function(t){return this.wA.Copy(t.wA),this.wB.Copy(t.wB),this.w.Copy(t.w),this.a=t.a,this.indexA=t.indexA,this.indexB=t.indexB,this},t}(),lt=function(){function t(){this.m_v1=new ut,this.m_v2=new ut,this.m_v3=new ut,this.m_vertices=[],this.m_count=0,this.m_vertices[0]=this.m_v1,this.m_vertices[1]=this.m_v2,this.m_vertices[2]=this.m_v3}var e=t.prototype;return e.ReadCache=function(t,e,i,n,s){this.m_count=t.count;for(var a=this.m_vertices,o=0;o<this.m_count;++o){var h=a[o];h.indexA=t.indexA[o],h.indexB=t.indexB[o];var u=e.GetVertex(h.indexA),l=n.GetVertex(h.indexB);Z.MulXV(i,u,h.wA),Z.MulXV(s,l,h.wB),X.SubVV(h.wB,h.wA,h.w),h.a=0}if(this.m_count>1){var c=t.metric,_=this.GetMetric();(_<.5*c||2*c<_||_<r)&&(this.m_count=0)}if(0===this.m_count){var f=a[0];f.indexA=0,f.indexB=0;var d=e.GetVertex(0),p=n.GetVertex(0);Z.MulXV(i,d,f.wA),Z.MulXV(s,p,f.wB),X.SubVV(f.wB,f.wA,f.w),f.a=1,this.m_count=1}},e.WriteCache=function(t){t.metric=this.GetMetric(),t.count=this.m_count;for(var e=this.m_vertices,i=0;i<this.m_count;++i)t.indexA[i]=e[i].indexA,t.indexB[i]=e[i].indexB},e.GetSearchDirection=function(t){switch(this.m_count){case 1:return X.NegV(this.m_v1.w,t);case 2:var e=X.SubVV(this.m_v2.w,this.m_v1.w,t);return X.CrossVV(e,X.NegV(this.m_v1.w,X.s_t0))>0?X.CrossOneV(e,t):X.CrossVOne(e,t);default:return t.SetZero()}},e.GetClosestPoint=function(t){switch(this.m_count){case 0:return t.SetZero();case 1:return t.Copy(this.m_v1.w);case 2:return t.Set(this.m_v1.a*this.m_v1.w.x+this.m_v2.a*this.m_v2.w.x,this.m_v1.a*this.m_v1.w.y+this.m_v2.a*this.m_v2.w.y);case 3:default:return t.SetZero()}},e.GetWitnessPoints=function(t,e){switch(this.m_count){case 0:break;case 1:t.Copy(this.m_v1.wA),e.Copy(this.m_v1.wB);break;case 2:t.x=this.m_v1.a*this.m_v1.wA.x+this.m_v2.a*this.m_v2.wA.x,t.y=this.m_v1.a*this.m_v1.wA.y+this.m_v2.a*this.m_v2.wA.y,e.x=this.m_v1.a*this.m_v1.wB.x+this.m_v2.a*this.m_v2.wB.x,e.y=this.m_v1.a*this.m_v1.wB.y+this.m_v2.a*this.m_v2.wB.y;break;case 3:e.x=t.x=this.m_v1.a*this.m_v1.wA.x+this.m_v2.a*this.m_v2.wA.x+this.m_v3.a*this.m_v3.wA.x,e.y=t.y=this.m_v1.a*this.m_v1.wA.y+this.m_v2.a*this.m_v2.wA.y+this.m_v3.a*this.m_v3.wA.y}},e.GetMetric=function(){switch(this.m_count){case 0:case 1:return 0;case 2:return X.DistanceVV(this.m_v1.w,this.m_v2.w);case 3:return X.CrossVV(X.SubVV(this.m_v2.w,this.m_v1.w,X.s_t0),X.SubVV(this.m_v3.w,this.m_v1.w,X.s_t1));default:return 0}},e.Solve2=function(){var e=this.m_v1.w,i=this.m_v2.w,n=X.SubVV(i,e,t.s_e12),r=-X.DotVV(e,n);if(r<=0)return this.m_v1.a=1,void(this.m_count=1);var s=X.DotVV(i,n);if(s<=0)return this.m_v2.a=1,this.m_count=1,void this.m_v1.Copy(this.m_v2);var a=1/(s+r);this.m_v1.a=s*a,this.m_v2.a=r*a,this.m_count=2},e.Solve3=function(){var e=this.m_v1.w,i=this.m_v2.w,n=this.m_v3.w,r=X.SubVV(i,e,t.s_e12),s=X.DotVV(e,r),a=X.DotVV(i,r),o=-s,h=X.SubVV(n,e,t.s_e13),u=X.DotVV(e,h),l=X.DotVV(n,h),c=-u,_=X.SubVV(n,i,t.s_e23),f=X.DotVV(i,_),d=X.DotVV(n,_),p=-f,m=X.CrossVV(r,h),g=m*X.CrossVV(i,n),v=m*X.CrossVV(n,e),y=m*X.CrossVV(e,i);if(o<=0&&c<=0)return this.m_v1.a=1,void(this.m_count=1);if(a>0&&o>0&&y<=0){var S=1/(a+o);return this.m_v1.a=a*S,this.m_v2.a=o*S,void(this.m_count=2)}if(l>0&&c>0&&v<=0){var T=1/(l+c);return this.m_v1.a=l*T,this.m_v3.a=c*T,this.m_count=2,void this.m_v2.Copy(this.m_v3)}if(a<=0&&p<=0)return this.m_v2.a=1,this.m_count=1,void this.m_v1.Copy(this.m_v2);if(l<=0&&d<=0)return this.m_v3.a=1,this.m_count=1,void this.m_v1.Copy(this.m_v3);if(d>0&&p>0&&g<=0){var A=1/(d+p);return this.m_v2.a=d*A,this.m_v3.a=p*A,this.m_count=2,void this.m_v1.Copy(this.m_v3)}var b=1/(g+v+y);this.m_v1.a=g*b,this.m_v2.a=v*b,this.m_v3.a=y*b,this.m_count=3},t}();lt.s_e12=new X,lt.s_e13=new X,lt.s_e23=new X;var ct=new lt,_t=[0,0,0],ft=[0,0,0],dt=new X,pt=new X,mt=new X,gt=new X,vt=new X;function yt(e,i,n){++t.b2_gjkCalls;var s=n.proxyA,o=n.proxyB,h=n.transformA,u=n.transformB,l=ct;l.ReadCache(i,s,h,o,u);for(var c=l.m_vertices,_=_t,f=ft,d=0,p=0;p<20;){d=l.m_count;for(var m=0;m<d;++m)_[m]=c[m].indexA,f[m]=c[m].indexB;switch(l.m_count){case 1:break;case 2:l.Solve2();break;case 3:l.Solve3()}if(3===l.m_count)break;var g=l.GetSearchDirection(pt);if(g.LengthSquared()<a)break;var v=c[l.m_count];v.indexA=s.GetSupport(Q.MulTRV(h.q,X.NegV(g,X.s_t0),gt)),Z.MulXV(h,s.GetVertex(v.indexA),v.wA),v.indexB=o.GetSupport(Q.MulTRV(u.q,g,vt)),Z.MulXV(u,o.GetVertex(v.indexB),v.wB),X.SubVV(v.wB,v.wA,v.w),++p,++t.b2_gjkIters;for(var y=!1,S=0;S<d;++S)if(v.indexA===_[S]&&v.indexB===f[S]){y=!0;break}if(y)break;++l.m_count}if(t.b2_gjkMaxIters=P(t.b2_gjkMaxIters,p),l.GetWitnessPoints(e.pointA,e.pointB),e.distance=X.DistanceVV(e.pointA,e.pointB),e.iterations=p,l.WriteCache(i),n.useRadii){var T=s.m_radius,A=o.m_radius;if(e.distance>T+A&&e.distance>r){e.distance-=T+A;var b=X.SubVV(e.pointB,e.pointA,mt);b.Normalize(),e.pointA.SelfMulAdd(T,b),e.pointB.SelfMulSub(A,b)}else{var E=X.MidVV(e.pointA,e.pointB,dt);e.pointA.Copy(E),e.pointB.Copy(E),e.distance=0}}}var St,Tt=new X,At=new lt,bt=new X,Et=new X,Ct=new X,xt=new X,wt=new X,Rt=new X;(St=t.b2ContactFeatureType||(t.b2ContactFeatureType={}))[St.e_vertex=0]="e_vertex",St[St.e_face=1]="e_face";var It,Dt=function(){function t(){this._key=0,this._key_invalid=!1,this._indexA=0,this._indexB=0,this._typeA=0,this._typeB=0}return n(t,[{key:"key",get:function(){return this._key_invalid&&(this._key_invalid=!1,this._key=this._indexA|this._indexB<<8|this._typeA<<16|this._typeB<<24),this._key},set:function(t){this._key=t,this._key_invalid=!1,this._indexA=255&this._key,this._indexB=this._key>>8&255,this._typeA=this._key>>16&255,this._typeB=this._key>>24&255}},{key:"indexA",get:function(){return this._indexA},set:function(t){this._indexA=t,this._key_invalid=!0}},{key:"indexB",get:function(){return this._indexB},set:function(t){this._indexB=t,this._key_invalid=!0}},{key:"typeA",get:function(){return this._typeA},set:function(t){this._typeA=t,this._key_invalid=!0}},{key:"typeB",get:function(){return this._typeB},set:function(t){this._typeB=t,this._key_invalid=!0}}]),t}(),Bt=function(){function t(){this.cf=new Dt}var e=t.prototype;return e.Copy=function(t){return this.key=t.key,this},e.Clone=function(){return(new t).Copy(this)},n(t,[{key:"key",get:function(){return this.cf.key},set:function(t){this.cf.key=t}}]),t}(),Mt=function(){function t(){this.localPoint=new X,this.normalImpulse=0,this.tangentImpulse=0,this.id=new Bt}t.MakeArray=function(e){return x(e,(function(){return new t}))};var e=t.prototype;return e.Reset=function(){this.localPoint.SetZero(),this.normalImpulse=0,this.tangentImpulse=0,this.id.key=0},e.Copy=function(t){return this.localPoint.Copy(t.localPoint),this.normalImpulse=t.normalImpulse,this.tangentImpulse=t.tangentImpulse,this.id.Copy(t.id),this},t}();(It=t.b2ManifoldType||(t.b2ManifoldType={}))[It.e_unknown=-1]="e_unknown",It[It.e_circles=0]="e_circles",It[It.e_faceA=1]="e_faceA",It[It.e_faceB=2]="e_faceB";var Pt,Ot=function(){function e(){this.points=Mt.MakeArray(2),this.localNormal=new X,this.localPoint=new X,this.type=t.b2ManifoldType.e_unknown,this.pointCount=0}var i=e.prototype;return i.Reset=function(){for(var e=0;e<2;++e)this.points[e].Reset();this.localNormal.SetZero(),this.localPoint.SetZero(),this.type=t.b2ManifoldType.e_unknown,this.pointCount=0},i.Copy=function(t){this.pointCount=t.pointCount;for(var e=0;e<2;++e)this.points[e].Copy(t.points[e]);return this.localNormal.Copy(t.localNormal),this.localPoint.Copy(t.localPoint),this.type=t.type,this},i.Clone=function(){return(new e).Copy(this)},e}(),Lt=function(){function e(){this.normal=new X,this.points=X.MakeArray(2),this.separations=w(2)}return e.prototype.Initialize=function(i,n,r,s,o){if(0!==i.pointCount)switch(i.type){case t.b2ManifoldType.e_circles:this.normal.Set(1,0);var h=Z.MulXV(n,i.localPoint,e.Initialize_s_pointA),u=Z.MulXV(s,i.points[0].localPoint,e.Initialize_s_pointB);X.DistanceSquaredVV(h,u)>a&&X.SubVV(u,h,this.normal).SelfNormalize();var l=X.AddVMulSV(h,r,this.normal,e.Initialize_s_cA),c=X.SubVMulSV(u,o,this.normal,e.Initialize_s_cB);X.MidVV(l,c,this.points[0]),this.separations[0]=X.DotVV(X.SubVV(c,l,X.s_t0),this.normal);break;case t.b2ManifoldType.e_faceA:Q.MulRV(n.q,i.localNormal,this.normal);for(var _=Z.MulXV(n,i.localPoint,e.Initialize_s_planePoint),f=0;f<i.pointCount;++f){var d=Z.MulXV(s,i.points[f].localPoint,e.Initialize_s_clipPoint),p=r-X.DotVV(X.SubVV(d,_,X.s_t0),this.normal),m=X.AddVMulSV(d,p,this.normal,e.Initialize_s_cA),g=X.SubVMulSV(d,o,this.normal,e.Initialize_s_cB);X.MidVV(m,g,this.points[f]),this.separations[f]=X.DotVV(X.SubVV(g,m,X.s_t0),this.normal)}break;case t.b2ManifoldType.e_faceB:Q.MulRV(s.q,i.localNormal,this.normal);for(var v=Z.MulXV(s,i.localPoint,e.Initialize_s_planePoint),y=0;y<i.pointCount;++y){var S=Z.MulXV(n,i.points[y].localPoint,e.Initialize_s_clipPoint),T=o-X.DotVV(X.SubVV(S,v,X.s_t0),this.normal),A=X.AddVMulSV(S,T,this.normal,e.Initialize_s_cB),b=X.SubVMulSV(S,r,this.normal,e.Initialize_s_cA);X.MidVV(b,A,this.points[y]),this.separations[y]=X.DotVV(X.SubVV(b,A,X.s_t0),this.normal)}this.normal.SelfNeg()}},e}();Lt.Initialize_s_pointA=new X,Lt.Initialize_s_pointB=new X,Lt.Initialize_s_cA=new X,Lt.Initialize_s_cB=new X,Lt.Initialize_s_planePoint=new X,Lt.Initialize_s_clipPoint=new X,(Pt=t.b2PointState||(t.b2PointState={}))[Pt.b2_nullState=0]="b2_nullState",Pt[Pt.b2_addState=1]="b2_addState",Pt[Pt.b2_persistState=2]="b2_persistState",Pt[Pt.b2_removeState=3]="b2_removeState";var Nt=function(){function t(){this.v=new X,this.id=new Bt}return t.MakeArray=function(e){return x(e,(function(){return new t}))},t.prototype.Copy=function(t){return this.v.Copy(t.v),this.id.Copy(t.id),this},t}(),Ft=function(){function t(){this.p1=new X,this.p2=new X,this.maxFraction=1}return t.prototype.Copy=function(t){return this.p1.Copy(t.p1),this.p2.Copy(t.p2),this.maxFraction=t.maxFraction,this},t}(),kt=function(){function t(){this.normal=new X,this.fraction=0}return t.prototype.Copy=function(t){return this.normal.Copy(t.normal),this.fraction=t.fraction,this},t}(),Gt=function(){function t(){this.lowerBound=new X,this.upperBound=new X,this.m_cache_center=new X,this.m_cache_extent=new X}var e=t.prototype;return e.Copy=function(t){return this.lowerBound.Copy(t.lowerBound),this.upperBound.Copy(t.upperBound),this},e.IsValid=function(){return!(!this.lowerBound.IsValid()||!this.upperBound.IsValid()||this.upperBound.x<this.lowerBound.x||this.upperBound.y<this.lowerBound.y)},e.GetCenter=function(){return X.MidVV(this.lowerBound,this.upperBound,this.m_cache_center)},e.GetExtents=function(){return X.ExtVV(this.lowerBound,this.upperBound,this.m_cache_extent)},e.GetPerimeter=function(){return 2*(this.upperBound.x-this.lowerBound.x+(this.upperBound.y-this.lowerBound.y))},e.Combine1=function(t){return this.lowerBound.x=M(this.lowerBound.x,t.lowerBound.x),this.lowerBound.y=M(this.lowerBound.y,t.lowerBound.y),this.upperBound.x=P(this.upperBound.x,t.upperBound.x),this.upperBound.y=P(this.upperBound.y,t.upperBound.y),this},e.Combine2=function(t,e){return this.lowerBound.x=M(t.lowerBound.x,e.lowerBound.x),this.lowerBound.y=M(t.lowerBound.y,e.lowerBound.y),this.upperBound.x=P(t.upperBound.x,e.upperBound.x),this.upperBound.y=P(t.upperBound.y,e.upperBound.y),this},t.Combine=function(t,e,i){return i.Combine2(t,e),i},e.Contains=function(t){return!(this.lowerBound.x<=t.lowerBound.x||this.lowerBound.y<=t.lowerBound.y||t.upperBound.x<=this.upperBound.x||t.upperBound.y<=this.upperBound.y)},e.RayCast=function(t,e){var n=-i,s=i,a=e.p1.x,o=e.p1.y,h=e.p2.x-e.p1.x,u=e.p2.y-e.p1.y,l=B(h),c=B(u),_=t.normal;if(l<r){if(a<this.lowerBound.x||this.upperBound.x<a)return!1}else{var f=1/h,d=(this.lowerBound.x-a)*f,p=(this.upperBound.x-a)*f,m=-1;if(d>p){var g=d;d=p,p=g,m=1}if(d>n&&(_.x=m,_.y=0,n=d),n>(s=M(s,p)))return!1}if(c<r){if(o<this.lowerBound.y||this.upperBound.y<o)return!1}else{var v=1/u,y=(this.lowerBound.y-o)*v,S=(this.upperBound.y-o)*v,T=-1;if(y>S){var A=y;y=S,S=A,T=1}if(y>n&&(_.x=0,_.y=T,n=y),n>(s=M(s,S)))return!1}return!(n<0||e.maxFraction<n||(t.fraction=n,0))},e.TestContain=function(t){return!(t.x<this.lowerBound.x||this.upperBound.x<t.x||t.y<this.lowerBound.y||this.upperBound.y<t.y)},e.TestOverlap=function(t){return!(this.upperBound.x<t.lowerBound.x||this.upperBound.y<t.lowerBound.y||t.upperBound.x<this.lowerBound.x||t.upperBound.y<this.lowerBound.y)},t}();function Vt(t,e){return!(t.upperBound.x<e.lowerBound.x||t.upperBound.y<e.lowerBound.y||e.upperBound.x<t.lowerBound.x||e.upperBound.y<t.lowerBound.y)}function Ut(e,i,n,r,s){var a=0,o=i[0],h=i[1],u=X.DotVV(n,o.v)-r,l=X.DotVV(n,h.v)-r;if(u<=0&&e[a++].Copy(o),l<=0&&e[a++].Copy(h),u*l<0){var c=u/(u-l),_=e[a].v;_.x=o.v.x+c*(h.v.x-o.v.x),_.y=o.v.y+c*(h.v.y-o.v.y);var f=e[a].id;f.cf.indexA=s,f.cf.indexB=o.id.cf.indexB,f.cf.typeA=t.b2ContactFeatureType.e_vertex,f.cf.typeB=t.b2ContactFeatureType.e_face,++a}return a}var zt=new ot,Ht=new at,Wt=new ht;function Xt(t,e,i,n,r,s){var a=zt.Reset();a.proxyA.SetShape(t,e),a.proxyB.SetShape(i,n),a.transformA.Copy(r),a.transformB.Copy(s),a.useRadii=!0;var o=Ht.Reset();o.count=0;var h=Wt.Reset();return yt(h,o,a),h.distance<1e-4}function jt(t){if(null===t)throw new Error;return t}var Yt=function(){function t(t){void 0===t&&(t=0),this.m_id=0,this.aabb=new Gt,this._userData=null,this.parent=null,this.child1=null,this.child2=null,this.height=0,this.m_id=t}var e=t.prototype;return e.Reset=function(){this._userData=null},e.IsLeaf=function(){return null===this.child1},n(t,[{key:"userData",get:function(){if(null===this._userData)throw new Error;return this._userData},set:function(t){if(null!==this._userData)throw new Error;this._userData=t}}]),t}(),qt=function(){function t(){this.m_root=null,this.m_freeList=null,this.m_path=0,this.m_insertionCount=0,this.m_stack=new rt(256)}var e=t.prototype;return e.Query=function(t,e){var i=this.m_stack.Reset();for(i.Push(this.m_root);i.GetCount()>0;){var n=i.Pop();if(null!==n&&n.aabb.TestOverlap(t))if(n.IsLeaf()){if(!e(n))return}else i.Push(n.child1),i.Push(n.child2)}},e.QueryPoint=function(t,e){var i=this.m_stack.Reset();for(i.Push(this.m_root);i.GetCount()>0;){var n=i.Pop();if(null!==n&&n.aabb.TestContain(t))if(n.IsLeaf()){if(!e(n))return}else i.Push(n.child1),i.Push(n.child2)}},e.RayCast=function(e,i){var n=e.p1,r=e.p2,s=X.SubVV(r,n,t.s_r);s.Normalize();var a=X.CrossOneV(s,t.s_v),o=X.AbsV(a,t.s_abs_v),h=e.maxFraction,u=t.s_segmentAABB,l=n.x+h*(r.x-n.x),c=n.y+h*(r.y-n.y);u.lowerBound.x=M(n.x,l),u.lowerBound.y=M(n.y,c),u.upperBound.x=P(n.x,l),u.upperBound.y=P(n.y,c);var _=this.m_stack.Reset();for(_.Push(this.m_root);_.GetCount()>0;){var f=_.Pop();if(null!==f&&Vt(f.aabb,u)){var d=f.aabb.GetCenter(),p=f.aabb.GetExtents();if(!(B(X.DotVV(a,X.SubVV(n,d,X.s_t0)))-X.DotVV(o,p)>0))if(f.IsLeaf()){var m=t.s_subInput;m.p1.Copy(e.p1),m.p2.Copy(e.p2),m.maxFraction=h;var g=i(m,f);if(0===g)return;g>0&&(h=g,l=n.x+h*(r.x-n.x),c=n.y+h*(r.y-n.y),u.lowerBound.x=M(n.x,l),u.lowerBound.y=M(n.y,c),u.upperBound.x=P(n.x,l),u.upperBound.y=P(n.y,c))}else _.Push(f.child1),_.Push(f.child2)}}},e.AllocateNode=function(){if(null!==this.m_freeList){var e=this.m_freeList;return this.m_freeList=e.parent,e.parent=null,e.child1=null,e.child2=null,e.height=0,e}return new Yt(t.s_node_id++)},e.FreeNode=function(t){t.parent=this.m_freeList,t.child1=null,t.child2=null,t.height=-1,t.Reset(),this.m_freeList=t},e.CreateProxy=function(t,e){var i=this.AllocateNode();return i.aabb.lowerBound.x=t.lowerBound.x-.1,i.aabb.lowerBound.y=t.lowerBound.y-.1,i.aabb.upperBound.x=t.upperBound.x+.1,i.aabb.upperBound.y=t.upperBound.y+.1,i.userData=e,i.height=0,this.InsertLeaf(i),i},e.DestroyProxy=function(t){this.RemoveLeaf(t),this.FreeNode(t)},e.MoveProxy=function(t,e,i){if(t.aabb.Contains(e))return!1;this.RemoveLeaf(t);t.aabb.lowerBound.x=e.lowerBound.x-.1,t.aabb.lowerBound.y=e.lowerBound.y-.1,t.aabb.upperBound.x=e.upperBound.x+.1,t.aabb.upperBound.y=e.upperBound.y+.1;var n=2*i.x,r=2*i.y;return n<0?t.aabb.lowerBound.x+=n:t.aabb.upperBound.x+=n,r<0?t.aabb.lowerBound.y+=r:t.aabb.upperBound.y+=r,this.InsertLeaf(t),!0},e.InsertLeaf=function(e){if(++this.m_insertionCount,null===this.m_root)return this.m_root=e,void(this.m_root.parent=null);for(var i=e.aabb,n=this.m_root;!n.IsLeaf();){var r=jt(n.child1),s=jt(n.child2),a=n.aabb.GetPerimeter(),o=t.s_combinedAABB;o.Combine2(n.aabb,i);var h=o.GetPerimeter(),u=2*h,l=2*(h-a),c=void 0,_=t.s_aabb,f=void 0;r.IsLeaf()?(_.Combine2(i,r.aabb),c=_.GetPerimeter()+l):(_.Combine2(i,r.aabb),f=r.aabb.GetPerimeter(),c=_.GetPerimeter()-f+l);var d=void 0;if(s.IsLeaf()?(_.Combine2(i,s.aabb),d=_.GetPerimeter()+l):(_.Combine2(i,s.aabb),f=s.aabb.GetPerimeter(),d=_.GetPerimeter()-f+l),u<c&&u<d)break;n=c<d?r:s}var p=n.parent,m=this.AllocateNode();m.parent=p,m.aabb.Combine2(i,n.aabb),m.height=n.height+1,null!==p?(p.child1===n?p.child1=m:p.child2=m,m.child1=n,m.child2=e,n.parent=m,e.parent=m):(m.child1=n,m.child2=e,n.parent=m,e.parent=m,this.m_root=m);for(var g=e.parent;null!==g;){var v=jt((g=this.Balance(g)).child1),y=jt(g.child2);g.height=1+P(v.height,y.height),g.aabb.Combine2(v.aabb,y.aabb),g=g.parent}},e.RemoveLeaf=function(t){if(t!==this.m_root){var e=jt(t.parent),i=e&&e.parent,n=jt(e.child1===t?e.child2:e.child1);if(null!==i){i.child1===e?i.child1=n:i.child2=n,n.parent=i,this.FreeNode(e);for(var r=i;null!==r;){var s=jt((r=this.Balance(r)).child1),a=jt(r.child2);r.aabb.Combine2(s.aabb,a.aabb),r.height=1+P(s.height,a.height),r=r.parent}}else this.m_root=n,n.parent=null,this.FreeNode(e)}else this.m_root=null},e.Balance=function(t){if(t.IsLeaf()||t.height<2)return t;var e=jt(t.child1),i=jt(t.child2),n=i.height-e.height;if(n>1){var r=jt(i.child1),s=jt(i.child2);return i.child1=t,i.parent=t.parent,t.parent=i,null!==i.parent?i.parent.child1===t?i.parent.child1=i:i.parent.child2=i:this.m_root=i,r.height>s.height?(i.child2=r,t.child2=s,s.parent=t,t.aabb.Combine2(e.aabb,s.aabb),i.aabb.Combine2(t.aabb,r.aabb),t.height=1+P(e.height,s.height),i.height=1+P(t.height,r.height)):(i.child2=s,t.child2=r,r.parent=t,t.aabb.Combine2(e.aabb,r.aabb),i.aabb.Combine2(t.aabb,s.aabb),t.height=1+P(e.height,r.height),i.height=1+P(t.height,s.height)),i}if(n<-1){var a=jt(e.child1),o=jt(e.child2);return e.child1=t,e.parent=t.parent,t.parent=e,null!==e.parent?e.parent.child1===t?e.parent.child1=e:e.parent.child2=e:this.m_root=e,a.height>o.height?(e.child2=a,t.child1=o,o.parent=t,t.aabb.Combine2(i.aabb,o.aabb),e.aabb.Combine2(t.aabb,a.aabb),t.height=1+P(i.height,o.height),e.height=1+P(t.height,a.height)):(e.child2=o,t.child1=a,a.parent=t,t.aabb.Combine2(i.aabb,a.aabb),e.aabb.Combine2(t.aabb,o.aabb),t.height=1+P(i.height,a.height),e.height=1+P(t.height,o.height)),e}return t},e.GetHeight=function(){return null===this.m_root?0:this.m_root.height},t.GetAreaNode=function(e){if(null===e)return 0;if(e.IsLeaf())return 0;var i=e.aabb.GetPerimeter();return(i+=t.GetAreaNode(e.child1))+t.GetAreaNode(e.child2)},e.GetAreaRatio=function(){if(null===this.m_root)return 0;var e=this.m_root.aabb.GetPerimeter();return t.GetAreaNode(this.m_root)/e},t.ComputeHeightNode=function(e){return null===e||e.IsLeaf()?0:1+P(t.ComputeHeightNode(e.child1),t.ComputeHeightNode(e.child2))},e.ComputeHeight=function(){return t.ComputeHeightNode(this.m_root)},e.ValidateStructure=function(t){if(null!==t&&(this.m_root,!t.IsLeaf())){var e=jt(t.child1),i=jt(t.child2);this.ValidateStructure(e),this.ValidateStructure(i)}},e.ValidateMetrics=function(e){if(null!==e&&!e.IsLeaf()){var i=jt(e.child1),n=jt(e.child2);t.s_aabb.Combine2(i.aabb,n.aabb),this.ValidateMetrics(i),this.ValidateMetrics(n)}},e.Validate=function(){},t.GetMaxBalanceNode=function(t,e){if(null===t)return e;if(t.height<=1)return e;var i=jt(t.child1),n=jt(t.child2);return P(e,B(n.height-i.height))},e.GetMaxBalance=function(){return t.GetMaxBalanceNode(this.m_root,0)},e.RebuildBottomUp=function(){this.Validate()},t.ShiftOriginNode=function(e,i){if(null!==e&&!(e.height<=1)){var n=e.child1,r=e.child2;t.ShiftOriginNode(n,i),t.ShiftOriginNode(r,i),e.aabb.lowerBound.SelfSub(i),e.aabb.upperBound.SelfSub(i)}},e.ShiftOrigin=function(e){t.ShiftOriginNode(this.m_root,e)},t}();function Kt(t,e,i){var n=t[e];t[e]=t[i],t[i]=n}function Qt(t,e){return t<e}qt.s_r=new X,qt.s_v=new X,qt.s_abs_v=new X,qt.s_segmentAABB=new Gt,qt.s_subInput=new Ft,qt.s_combinedAABB=new Gt,qt.s_aabb=new Gt,qt.s_node_id=0;var Zt=function(t,e){this.proxyA=t,this.proxyB=e},Jt=function(){function t(){this.m_tree=new qt,this.m_proxyCount=0,this.m_moveCount=0,this.m_moveBuffer=[],this.m_pairCount=0,this.m_pairBuffer=[]}var e=t.prototype;return e.CreateProxy=function(t,e){var i=this.m_tree.CreateProxy(t,e);return++this.m_proxyCount,this.BufferMove(i),i},e.DestroyProxy=function(t){this.UnBufferMove(t),--this.m_proxyCount,this.m_tree.DestroyProxy(t)},e.MoveProxy=function(t,e,i){this.m_tree.MoveProxy(t,e,i)&&this.BufferMove(t)},e.TouchProxy=function(t){this.BufferMove(t)},e.GetProxyCount=function(){return this.m_proxyCount},e.UpdatePairs=function(t){var e=this;this.m_pairCount=0;for(var i=function(){var t=e.m_moveBuffer[n];if(null===t)return 1;var i=t.aabb;e.m_tree.Query(i,(function(i){if(i.m_id===t.m_id)return!0;var n,r;if(i.m_id<t.m_id?(n=i,r=t):(n=t,r=i),e.m_pairCount===e.m_pairBuffer.length)e.m_pairBuffer[e.m_pairCount]=new Zt(n,r);else{var s=e.m_pairBuffer[e.m_pairCount];s.proxyA=n,s.proxyB=r}return++e.m_pairCount,!0}))},n=0;n<this.m_moveCount;++n)i();this.m_moveCount=0,function(t,e,i,n){void 0===e&&(e=0),void 0===i&&(i=t.length-e),void 0===n&&(n=Qt);for(var r=e,s=[],a=0;;){for(;r+1<i;i++){var o=t[r+Math.floor(Math.random()*(i-r))];s[a++]=i;for(var h=r-1;;){for(;n(t[++h],o););for(;n(o,t[--i]););if(h>=i)break;Kt(t,h,i)}}if(0===a)break;r=i,i=s[--a]}}(this.m_pairBuffer,0,this.m_pairCount,$t);for(var r=0;r<this.m_pairCount;){var s=this.m_pairBuffer[r];for(t(s.proxyA.userData,s.proxyB.userData),++r;r<this.m_pairCount;){var a=this.m_pairBuffer[r];if(a.proxyA.m_id!==s.proxyA.m_id||a.proxyB.m_id!==s.proxyB.m_id)break;++r}}},e.Query=function(t,e){this.m_tree.Query(t,e)},e.QueryPoint=function(t,e){this.m_tree.QueryPoint(t,e)},e.RayCast=function(t,e){this.m_tree.RayCast(t,e)},e.GetTreeHeight=function(){return this.m_tree.GetHeight()},e.GetTreeBalance=function(){return this.m_tree.GetMaxBalance()},e.GetTreeQuality=function(){return this.m_tree.GetAreaRatio()},e.ShiftOrigin=function(t){this.m_tree.ShiftOrigin(t)},e.BufferMove=function(t){this.m_moveBuffer[this.m_moveCount]=t,++this.m_moveCount},e.UnBufferMove=function(t){var e=this.m_moveBuffer.indexOf(t);this.m_moveBuffer[e]=null},t}();function $t(t,e){return t.proxyA.m_id<e.proxyA.m_id||t.proxyA.m_id===e.proxyA.m_id&&t.proxyB.m_id<e.proxyB.m_id}t.b2_toiTime=0,t.b2_toiMaxTime=0,t.b2_toiCalls=0,t.b2_toiIters=0,t.b2_toiMaxIters=0,t.b2_toiRootIters=0,t.b2_toiMaxRootIters=0;var te,ee=new Z,ie=new Z,ne=new X,re=new X,se=new X,ae=new X,oe=new X,he=function(){this.proxyA=new st,this.proxyB=new st,this.sweepA=new $,this.sweepB=new $,this.tMax=0};(te=t.b2TOIOutputState||(t.b2TOIOutputState={}))[te.e_unknown=0]="e_unknown",te[te.e_failed=1]="e_failed",te[te.e_overlapped=2]="e_overlapped",te[te.e_touching=3]="e_touching",te[te.e_separated=4]="e_separated";var ue,le=function(){this.state=t.b2TOIOutputState.e_unknown,this.t=0};(ue=t.b2SeparationFunctionType||(t.b2SeparationFunctionType={}))[ue.e_unknown=-1]="e_unknown",ue[ue.e_points=0]="e_points",ue[ue.e_faceA=1]="e_faceA",ue[ue.e_faceB=2]="e_faceB";var ce=function(){function e(){this.m_sweepA=new $,this.m_sweepB=new $,this.m_type=t.b2SeparationFunctionType.e_unknown,this.m_localPoint=new X,this.m_axis=new X}var i=e.prototype;return i.Initialize=function(e,i,n,r,s,a){this.m_proxyA=i,this.m_proxyB=r;var o=e.count;this.m_sweepA.Copy(n),this.m_sweepB.Copy(s);var h=ee,u=ie;if(this.m_sweepA.GetTransform(h,a),this.m_sweepB.GetTransform(u,a),1===o){this.m_type=t.b2SeparationFunctionType.e_points;var l=this.m_proxyA.GetVertex(e.indexA[0]),c=this.m_proxyB.GetVertex(e.indexB[0]),_=Z.MulXV(h,l,ne),f=Z.MulXV(u,c,re);X.SubVV(f,_,this.m_axis);var d=this.m_axis.Normalize();return this.m_localPoint.SetZero(),d}if(e.indexA[0]===e.indexA[1]){this.m_type=t.b2SeparationFunctionType.e_faceB;var p=this.m_proxyB.GetVertex(e.indexB[0]),m=this.m_proxyB.GetVertex(e.indexB[1]);X.CrossVOne(X.SubVV(m,p,X.s_t0),this.m_axis).SelfNormalize();var g=Q.MulRV(u.q,this.m_axis,se);X.MidVV(p,m,this.m_localPoint);var v=Z.MulXV(u,this.m_localPoint,re),y=this.m_proxyA.GetVertex(e.indexA[0]),S=Z.MulXV(h,y,ne),T=X.DotVV(X.SubVV(S,v,X.s_t0),g);return T<0&&(this.m_axis.SelfNeg(),T=-T),T}this.m_type=t.b2SeparationFunctionType.e_faceA;var A=this.m_proxyA.GetVertex(e.indexA[0]),b=this.m_proxyA.GetVertex(e.indexA[1]);X.CrossVOne(X.SubVV(b,A,X.s_t0),this.m_axis).SelfNormalize();var E=Q.MulRV(h.q,this.m_axis,se);X.MidVV(A,b,this.m_localPoint);var C=Z.MulXV(h,this.m_localPoint,ne),x=this.m_proxyB.GetVertex(e.indexB[0]),w=Z.MulXV(u,x,re),R=X.DotVV(X.SubVV(w,C,X.s_t0),E);return R<0&&(this.m_axis.SelfNeg(),R=-R),R},i.FindMinSeparation=function(e,i,n){var r=ee,s=ie;switch(this.m_sweepA.GetTransform(r,n),this.m_sweepB.GetTransform(s,n),this.m_type){case t.b2SeparationFunctionType.e_points:var a=Q.MulTRV(r.q,this.m_axis,ae),o=Q.MulTRV(s.q,X.NegV(this.m_axis,X.s_t0),oe);e[0]=this.m_proxyA.GetSupport(a),i[0]=this.m_proxyB.GetSupport(o);var h=this.m_proxyA.GetVertex(e[0]),u=this.m_proxyB.GetVertex(i[0]),l=Z.MulXV(r,h,ne),c=Z.MulXV(s,u,re);return X.DotVV(X.SubVV(c,l,X.s_t0),this.m_axis);case t.b2SeparationFunctionType.e_faceA:var _=Q.MulRV(r.q,this.m_axis,se),f=Z.MulXV(r,this.m_localPoint,ne),d=Q.MulTRV(s.q,X.NegV(_,X.s_t0),oe);e[0]=-1,i[0]=this.m_proxyB.GetSupport(d);var p=this.m_proxyB.GetVertex(i[0]),m=Z.MulXV(s,p,re);return X.DotVV(X.SubVV(m,f,X.s_t0),_);case t.b2SeparationFunctionType.e_faceB:var g=Q.MulRV(s.q,this.m_axis,se),v=Z.MulXV(s,this.m_localPoint,re),y=Q.MulTRV(r.q,X.NegV(g,X.s_t0),ae);i[0]=-1,e[0]=this.m_proxyA.GetSupport(y);var S=this.m_proxyA.GetVertex(e[0]),T=Z.MulXV(r,S,ne);return X.DotVV(X.SubVV(T,v,X.s_t0),g);default:return e[0]=-1,i[0]=-1,0}},i.Evaluate=function(e,i,n){var r=ee,s=ie;switch(this.m_sweepA.GetTransform(r,n),this.m_sweepB.GetTransform(s,n),this.m_type){case t.b2SeparationFunctionType.e_points:var a=this.m_proxyA.GetVertex(e),o=this.m_proxyB.GetVertex(i),h=Z.MulXV(r,a,ne),u=Z.MulXV(s,o,re);return X.DotVV(X.SubVV(u,h,X.s_t0),this.m_axis);case t.b2SeparationFunctionType.e_faceA:var l=Q.MulRV(r.q,this.m_axis,se),c=Z.MulXV(r,this.m_localPoint,ne),_=this.m_proxyB.GetVertex(i),f=Z.MulXV(s,_,re);return X.DotVV(X.SubVV(f,c,X.s_t0),l);case t.b2SeparationFunctionType.e_faceB:var d=Q.MulRV(s.q,this.m_axis,se),p=Z.MulXV(s,this.m_localPoint,re),m=this.m_proxyA.GetVertex(e),g=Z.MulXV(r,m,ne);return X.DotVV(X.SubVV(g,p,X.s_t0),d);default:return 0}},e}(),_e=new it,fe=new at,de=new ot,pe=new ht,me=new ce,ge=[0],ve=[0],ye=new $,Se=new $;function Te(e,i){var n=_e.Reset();++t.b2_toiCalls,e.state=t.b2TOIOutputState.e_unknown,e.t=i.tMax;var r=i.proxyA,s=i.proxyB,a=P(8,P(r.m_count,s.m_count)),o=ye.Copy(i.sweepA),h=Se.Copy(i.sweepB);o.Normalize(),h.Normalize();var u=i.tMax,c=r.m_radius+s.m_radius,_=P(l,c-.024),f=.002,d=0,p=0,m=fe;m.count=0;var g=de;for(g.proxyA.Copy(i.proxyA),g.proxyB.Copy(i.proxyB),g.useRadii=!1;;){var v=ee,y=ie;o.GetTransform(v,d),h.GetTransform(y,d),g.transformA.Copy(v),g.transformB.Copy(y);var S=pe;if(yt(S,m,g),S.distance<=0){e.state=t.b2TOIOutputState.e_overlapped,e.t=0;break}if(S.distance<_+f){e.state=t.b2TOIOutputState.e_touching,e.t=d;break}var T=me;T.Initialize(m,r,o,s,h,d);for(var A=!1,b=u,E=0;;){var C=ge,x=ve,w=T.FindMinSeparation(C,x,b);if(w>_+f){e.state=t.b2TOIOutputState.e_separated,e.t=u,A=!0;break}if(w>_-f){d=b;break}var R=T.Evaluate(C[0],x[0],d);if(R<_-f){e.state=t.b2TOIOutputState.e_failed,e.t=d,A=!0;break}if(R<=_+f){e.state=t.b2TOIOutputState.e_touching,e.t=d,A=!0;break}for(var I=0,D=d,M=b;;){var O;O=1&I?D+(_-R)*(M-D)/(w-R):.5*(D+M),++I,++t.b2_toiRootIters;var L=T.Evaluate(C[0],x[0],O);if(B(L-_)<f){b=O;break}if(L>_?(D=O,R=L):(M=O,w=L),50===I)break}if(t.b2_toiMaxRootIters=P(t.b2_toiMaxRootIters,I),++E===a)break}if(++p,++t.b2_toiIters,A)break;if(20===p){e.state=t.b2TOIOutputState.e_failed,e.t=d;break}}t.b2_toiMaxIters=P(t.b2_toiMaxIters,p);var N=n.GetMilliseconds();t.b2_toiMaxTime=P(t.b2_toiMaxTime,N),t.b2_toiTime+=N}var Ae=new X,be=new X;function Ee(e,i,n,r,s){e.pointCount=0;var a=Z.MulXV(n,i.m_p,Ae),o=Z.MulXV(s,r.m_p,be),h=X.DistanceSquaredVV(a,o),u=i.m_radius+r.m_radius;h>u*u||(e.type=t.b2ManifoldType.e_circles,e.localPoint.Copy(i.m_p),e.localNormal.SetZero(),e.pointCount=1,e.points[0].localPoint.Copy(r.m_p),e.points[0].id.key=0)}var Ce=new X,xe=new X,we=new X;function Re(e,n,s,a,o){e.pointCount=0;for(var h=Z.MulXV(o,a.m_p,Ce),u=Z.MulTXV(s,h,xe),l=0,c=-i,_=n.m_radius+a.m_radius,f=n.m_count,d=n.m_vertices,p=n.m_normals,m=0;m<f;++m){var g=X.DotVV(p[m],X.SubVV(u,d[m],X.s_t0));if(g>_)return;g>c&&(c=g,l=m)}var v=l,y=(v+1)%f,S=d[v],T=d[y];if(c<r)return e.pointCount=1,e.type=t.b2ManifoldType.e_faceA,e.localNormal.Copy(p[l]),X.MidVV(S,T,e.localPoint),e.points[0].localPoint.Copy(a.m_p),void(e.points[0].id.key=0);var A=X.DotVV(X.SubVV(u,S,X.s_t0),X.SubVV(T,S,X.s_t1)),b=X.DotVV(X.SubVV(u,T,X.s_t0),X.SubVV(S,T,X.s_t1));if(A<=0){if(X.DistanceSquaredVV(u,S)>_*_)return;e.pointCount=1,e.type=t.b2ManifoldType.e_faceA,X.SubVV(u,S,e.localNormal).SelfNormalize(),e.localPoint.Copy(S),e.points[0].localPoint.Copy(a.m_p),e.points[0].id.key=0}else if(b<=0){if(X.DistanceSquaredVV(u,T)>_*_)return;e.pointCount=1,e.type=t.b2ManifoldType.e_faceA,X.SubVV(u,T,e.localNormal).SelfNormalize(),e.localPoint.Copy(T),e.points[0].localPoint.Copy(a.m_p),e.points[0].id.key=0}else{var E=X.MidVV(S,T,we);if(X.DotVV(X.SubVV(u,E,X.s_t1),p[v])>_)return;e.pointCount=1,e.type=t.b2ManifoldType.e_faceA,e.localNormal.Copy(p[v]).SelfNormalize(),e.localPoint.Copy(E),e.points[0].localPoint.Copy(a.m_p),e.points[0].id.key=0}}var Ie=new X,De=new X,Be=new X,Me=new X;function Pe(t,e,n,r,s){for(var a=t.m_vertices,o=t.m_normals,h=r.m_count,u=r.m_vertices,l=Q.MulRV(e.q,o[n],Ie),c=Q.MulTRV(s.q,l,De),_=0,f=i,d=0;d<h;++d){var p=X.DotVV(u[d],c);p<f&&(f=p,_=d)}var m=Z.MulXV(e,a[n],Be),g=Z.MulXV(s,u[_],Me);return X.DotVV(X.SubVV(g,m,X.s_t0),l)}var Oe=new X,Le=new X;function Ne(t,e,n,r,s){for(var a=e.m_count,o=e.m_normals,h=X.SubVV(Z.MulXV(s,r.m_centroid,X.s_t0),Z.MulXV(n,e.m_centroid,X.s_t1),Oe),u=Q.MulTRV(n.q,h,Le),l=0,c=-i,_=0;_<a;++_){var f=X.DotVV(o[_],u);f>c&&(c=f,l=_)}var d=Pe(e,n,l,r,s),p=(l+a-1)%a,m=Pe(e,n,p,r,s),g=(l+1)%a,v=Pe(e,n,g,r,s),y=0,S=0,T=0;if(m>d&&m>v)T=-1,y=p,S=m;else{if(!(v>d))return t[0]=l,d;T=1,y=g,S=v}for(;(d=Pe(e,n,l=-1===T?(y+a-1)%a:(y+1)%a,r,s))>S;)y=l,S=d;return t[0]=y,S}var Fe=new X;var ke=Nt.MakeArray(2),Ge=Nt.MakeArray(2),Ve=Nt.MakeArray(2),Ue=[0],ze=[0],He=new X,We=new X,Xe=new X,je=new X,Ye=new X,qe=new X,Ke=new X,Qe=new X;function Ze(e,n,r,s,a){e.pointCount=0;var o=n.m_radius+s.m_radius,h=Ue;h[0]=0;var u=Ne(h,n,r,s,a);if(!(u>o)){var l=ze;l[0]=0;var c=Ne(l,s,a,n,r);if(!(c>o)){var _,f,d,p,m=0,g=0;c>.98*u+.001?(_=s,f=n,d=a,p=r,m=l[0],e.type=t.b2ManifoldType.e_faceB,g=1):(_=n,f=s,d=r,p=a,m=h[0],e.type=t.b2ManifoldType.e_faceA,g=0);var v=ke;!function(e,n,r,s,a,o){for(var h=n.m_normals,u=a.m_count,l=a.m_vertices,c=a.m_normals,_=Q.MulTRV(o.q,Q.MulRV(r.q,h[s],X.s_t0),Fe),f=0,d=i,p=0;p<u;++p){var m=X.DotVV(_,c[p]);m<d&&(d=m,f=p)}var g=f,v=(g+1)%u,y=e[0];Z.MulXV(o,l[g],y.v);var S=y.id.cf;S.indexA=s,S.indexB=g,S.typeA=t.b2ContactFeatureType.e_face,S.typeB=t.b2ContactFeatureType.e_vertex;var T=e[1];Z.MulXV(o,l[v],T.v);var A=T.id.cf;A.indexA=s,A.indexB=v,A.typeA=t.b2ContactFeatureType.e_face,A.typeB=t.b2ContactFeatureType.e_vertex}(v,_,d,m,f,p);var y=_.m_count,S=_.m_vertices,T=m,A=(m+1)%y,b=S[T],E=S[A],C=X.SubVV(E,b,He);C.Normalize();var x=X.CrossVOne(C,We),w=X.MidVV(b,E,Xe),R=Q.MulRV(d.q,C,Ye),I=X.CrossVOne(R,je),D=Z.MulXV(d,b,Ke),B=Z.MulXV(d,E,Qe),M=X.DotVV(I,D),P=-X.DotVV(R,D)+o,O=X.DotVV(R,B)+o,L=Ge,N=Ve;if(!(Ut(L,v,X.NegV(R,qe),P,T)<2||Ut(N,L,R,O,A)<2)){e.localNormal.Copy(x),e.localPoint.Copy(w);for(var F=0,k=0;k<2;++k){var G=N[k];if(X.DotVV(I,G.v)-M<=o){var V=e.points[F];if(Z.MulTXV(p,G.v,V.localPoint),V.id.Copy(G.id),g){var U=V.id.cf;V.id.cf.indexA=U.indexB,V.id.cf.indexB=U.indexA,V.id.cf.typeA=U.typeB,V.id.cf.typeB=U.typeA}++F}}e.pointCount=F}}}}var Je,$e=new X,ti=new X,ei=new X,ii=new X,ni=new X,ri=new X,si=new X,ai=new Bt;function oi(e,i,n,r,s){e.pointCount=0;var a=Z.MulTXV(n,Z.MulXV(s,r.m_p,X.s_t0),$e),o=i.m_vertex1,h=i.m_vertex2,u=X.SubVV(h,o,ti),l=X.DotVV(u,X.SubVV(h,a,X.s_t0)),c=X.DotVV(u,X.SubVV(a,o,X.s_t0)),_=i.m_radius+r.m_radius,f=ai;if(f.cf.indexB=0,f.cf.typeB=t.b2ContactFeatureType.e_vertex,c<=0){var d=o,p=X.SubVV(a,d,ei);if(X.DotVV(p,p)>_*_)return;if(i.m_hasVertex0){var m=i.m_vertex0,g=o,v=X.SubVV(g,m,ii);if(X.DotVV(v,X.SubVV(g,a,X.s_t0))>0)return}return f.cf.indexA=0,f.cf.typeA=t.b2ContactFeatureType.e_vertex,e.pointCount=1,e.type=t.b2ManifoldType.e_circles,e.localNormal.SetZero(),e.localPoint.Copy(d),e.points[0].id.Copy(f),void e.points[0].localPoint.Copy(r.m_p)}if(l<=0){var y=h,S=X.SubVV(a,y,ei);if(X.DotVV(S,S)>_*_)return;if(i.m_hasVertex3){var T=i.m_vertex3,A=h,b=X.SubVV(T,A,ni);if(X.DotVV(b,X.SubVV(a,A,X.s_t0))>0)return}return f.cf.indexA=1,f.cf.typeA=t.b2ContactFeatureType.e_vertex,e.pointCount=1,e.type=t.b2ManifoldType.e_circles,e.localNormal.SetZero(),e.localPoint.Copy(y),e.points[0].id.Copy(f),void e.points[0].localPoint.Copy(r.m_p)}var E=X.DotVV(u,u),C=ri;C.x=1/E*(l*o.x+c*h.x),C.y=1/E*(l*o.y+c*h.y);var x=X.SubVV(a,C,ei);if(!(X.DotVV(x,x)>_*_)){var w=si.Set(-u.y,u.x);X.DotVV(w,X.SubVV(a,o,X.s_t0))<0&&w.Set(-w.x,-w.y),w.Normalize(),f.cf.indexA=0,f.cf.typeA=t.b2ContactFeatureType.e_face,e.pointCount=1,e.type=t.b2ManifoldType.e_faceA,e.localNormal.Copy(w),e.localPoint.Copy(o),e.points[0].id.Copy(f),e.points[0].localPoint.Copy(r.m_p)}}!function(t){t[t.e_unknown=0]="e_unknown",t[t.e_edgeA=1]="e_edgeA",t[t.e_edgeB=2]="e_edgeB"}(Je||(Je={}));var hi,ui=function(){this.type=Je.e_unknown,this.index=0,this.separation=0},li=function(){this.vertices=[],this.normals=[],this.count=0};!function(t){t[t.e_isolated=0]="e_isolated",t[t.e_concave=1]="e_concave",t[t.e_convex=2]="e_convex"}(hi||(hi={}));var ci=function(){function e(){this.m_polygonB=new li,this.m_xf=new Z,this.m_centroidB=new X,this.m_v0=new X,this.m_v1=new X,this.m_v2=new X,this.m_v3=new X,this.m_normal0=new X,this.m_normal1=new X,this.m_normal2=new X,this.m_normal=new X,this.m_type1=hi.e_isolated,this.m_type2=hi.e_isolated,this.m_lowerLimit=new X,this.m_upperLimit=new X,this.m_radius=0,this.m_front=!1}var n=e.prototype;return n.Collide=function(i,n,r,s,a){Z.MulTXX(r,a,this.m_xf),Z.MulXV(this.m_xf,s.m_centroid,this.m_centroidB),this.m_v0.Copy(n.m_vertex0),this.m_v1.Copy(n.m_vertex1),this.m_v2.Copy(n.m_vertex2),this.m_v3.Copy(n.m_vertex3);var o=n.m_hasVertex0,h=n.m_hasVertex3,u=X.SubVV(this.m_v2,this.m_v1,e.s_edge1);u.Normalize(),this.m_normal1.Set(u.y,-u.x);var l=X.DotVV(this.m_normal1,X.SubVV(this.m_centroidB,this.m_v1,X.s_t0)),c=0,_=0,f=!1,d=!1;if(o){var p=X.SubVV(this.m_v1,this.m_v0,e.s_edge0);p.Normalize(),this.m_normal0.Set(p.y,-p.x),f=X.CrossVV(p,u)>=0,c=X.DotVV(this.m_normal0,X.SubVV(this.m_centroidB,this.m_v0,X.s_t0))}if(h){var m=X.SubVV(this.m_v3,this.m_v2,e.s_edge2);m.Normalize(),this.m_normal2.Set(m.y,-m.x),d=X.CrossVV(u,m)>0,_=X.DotVV(this.m_normal2,X.SubVV(this.m_centroidB,this.m_v2,X.s_t0))}o&&h?f&&d?(this.m_front=c>=0||l>=0||_>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal0),this.m_upperLimit.Copy(this.m_normal2)):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal1).SelfNeg(),this.m_upperLimit.Copy(this.m_normal1).SelfNeg())):f?(this.m_front=c>=0||l>=0&&_>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal0),this.m_upperLimit.Copy(this.m_normal1)):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal2).SelfNeg(),this.m_upperLimit.Copy(this.m_normal1).SelfNeg())):d?(this.m_front=_>=0||c>=0&&l>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal1),this.m_upperLimit.Copy(this.m_normal2)):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal1).SelfNeg(),this.m_upperLimit.Copy(this.m_normal0).SelfNeg())):(this.m_front=c>=0&&l>=0&&_>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal1),this.m_upperLimit.Copy(this.m_normal1)):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal2).SelfNeg(),this.m_upperLimit.Copy(this.m_normal0).SelfNeg())):o?f?(this.m_front=c>=0||l>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal0),this.m_upperLimit.Copy(this.m_normal1).SelfNeg()):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal1),this.m_upperLimit.Copy(this.m_normal1).SelfNeg())):(this.m_front=c>=0&&l>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal1),this.m_upperLimit.Copy(this.m_normal1).SelfNeg()):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal1),this.m_upperLimit.Copy(this.m_normal0).SelfNeg())):h?d?(this.m_front=l>=0||_>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal1).SelfNeg(),this.m_upperLimit.Copy(this.m_normal2)):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal1).SelfNeg(),this.m_upperLimit.Copy(this.m_normal1))):(this.m_front=l>=0&&_>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal1).SelfNeg(),this.m_upperLimit.Copy(this.m_normal1)):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal2).SelfNeg(),this.m_upperLimit.Copy(this.m_normal1))):(this.m_front=l>=0,this.m_front?(this.m_normal.Copy(this.m_normal1),this.m_lowerLimit.Copy(this.m_normal1).SelfNeg(),this.m_upperLimit.Copy(this.m_normal1).SelfNeg()):(this.m_normal.Copy(this.m_normal1).SelfNeg(),this.m_lowerLimit.Copy(this.m_normal1),this.m_upperLimit.Copy(this.m_normal1))),this.m_polygonB.count=s.m_count;for(var g=0;g<s.m_count;++g)this.m_polygonB.vertices.length<=g&&this.m_polygonB.vertices.push(new X),this.m_polygonB.normals.length<=g&&this.m_polygonB.normals.push(new X),Z.MulXV(this.m_xf,s.m_vertices[g],this.m_polygonB.vertices[g]),Q.MulRV(this.m_xf.q,s.m_normals[g],this.m_polygonB.normals[g]);this.m_radius=s.m_radius+n.m_radius,i.pointCount=0;var v=this.ComputeEdgeSeparation(e.s_edgeAxis);if(v.type!==Je.e_unknown&&!(v.separation>this.m_radius)){var y=this.ComputePolygonSeparation(e.s_polygonAxis);if(!(y.type!==Je.e_unknown&&y.separation>this.m_radius)){var S;S=y.type===Je.e_unknown?v:y.separation>.98*v.separation+.001?y:v;var T=e.s_ie,A=e.s_rf;if(S.type===Je.e_edgeA){i.type=t.b2ManifoldType.e_faceA;for(var b=0,E=X.DotVV(this.m_normal,this.m_polygonB.normals[0]),C=1;C<this.m_polygonB.count;++C){var x=X.DotVV(this.m_normal,this.m_polygonB.normals[C]);x<E&&(E=x,b=C)}var w=b,R=(w+1)%this.m_polygonB.count,I=T[0];I.v.Copy(this.m_polygonB.vertices[w]),I.id.cf.indexA=0,I.id.cf.indexB=w,I.id.cf.typeA=t.b2ContactFeatureType.e_face,I.id.cf.typeB=t.b2ContactFeatureType.e_vertex;var D=T[1];D.v.Copy(this.m_polygonB.vertices[R]),D.id.cf.indexA=0,D.id.cf.indexB=R,D.id.cf.typeA=t.b2ContactFeatureType.e_face,D.id.cf.typeB=t.b2ContactFeatureType.e_vertex,this.m_front?(A.i1=0,A.i2=1,A.v1.Copy(this.m_v1),A.v2.Copy(this.m_v2),A.normal.Copy(this.m_normal1)):(A.i1=1,A.i2=0,A.v1.Copy(this.m_v2),A.v2.Copy(this.m_v1),A.normal.Copy(this.m_normal1).SelfNeg())}else{i.type=t.b2ManifoldType.e_faceB;var B=T[0];B.v.Copy(this.m_v1),B.id.cf.indexA=0,B.id.cf.indexB=S.index,B.id.cf.typeA=t.b2ContactFeatureType.e_vertex,B.id.cf.typeB=t.b2ContactFeatureType.e_face;var M=T[1];M.v.Copy(this.m_v2),M.id.cf.indexA=0,M.id.cf.indexB=S.index,M.id.cf.typeA=t.b2ContactFeatureType.e_vertex,M.id.cf.typeB=t.b2ContactFeatureType.e_face,A.i1=S.index,A.i2=(A.i1+1)%this.m_polygonB.count,A.v1.Copy(this.m_polygonB.vertices[A.i1]),A.v2.Copy(this.m_polygonB.vertices[A.i2]),A.normal.Copy(this.m_polygonB.normals[A.i1])}A.sideNormal1.Set(A.normal.y,-A.normal.x),A.sideNormal2.Copy(A.sideNormal1).SelfNeg(),A.sideOffset1=X.DotVV(A.sideNormal1,A.v1),A.sideOffset2=X.DotVV(A.sideNormal2,A.v2);var P=e.s_clipPoints1,O=e.s_clipPoints2;if(!(Ut(P,T,A.sideNormal1,A.sideOffset1,A.i1)<2||Ut(O,P,A.sideNormal2,A.sideOffset2,A.i2)<2)){S.type===Je.e_edgeA?(i.localNormal.Copy(A.normal),i.localPoint.Copy(A.v1)):(i.localNormal.Copy(s.m_normals[A.i1]),i.localPoint.Copy(s.m_vertices[A.i1]));for(var L=0,N=0;N<2;++N)if(X.DotVV(A.normal,X.SubVV(O[N].v,A.v1,X.s_t0))<=this.m_radius){var F=i.points[L];S.type===Je.e_edgeA?(Z.MulTXV(this.m_xf,O[N].v,F.localPoint),F.id.Copy(O[N].id)):(F.localPoint.Copy(O[N].v),F.id.cf.typeA=O[N].id.cf.typeB,F.id.cf.typeB=O[N].id.cf.typeA,F.id.cf.indexA=O[N].id.cf.indexB,F.id.cf.indexB=O[N].id.cf.indexA),++L}i.pointCount=L}}}},n.ComputeEdgeSeparation=function(t){var e=t;e.type=Je.e_edgeA,e.index=this.m_front?0:1,e.separation=i;for(var n=0;n<this.m_polygonB.count;++n){var r=X.DotVV(this.m_normal,X.SubVV(this.m_polygonB.vertices[n],this.m_v1,X.s_t0));r<e.separation&&(e.separation=r)}return e},n.ComputePolygonSeparation=function(t){var n=t;n.type=Je.e_unknown,n.index=-1,n.separation=-i;for(var r=e.s_perp.Set(-this.m_normal.y,this.m_normal.x),s=0;s<this.m_polygonB.count;++s){var a=X.NegV(this.m_polygonB.normals[s],e.s_n),o=M(X.DotVV(a,X.SubVV(this.m_polygonB.vertices[s],this.m_v1,X.s_t0)),X.DotVV(a,X.SubVV(this.m_polygonB.vertices[s],this.m_v2,X.s_t0)));if(o>this.m_radius)return n.type=Je.e_edgeB,n.index=s,n.separation=o,n;if(X.DotVV(a,r)>=0){if(X.DotVV(X.SubVV(a,this.m_upperLimit,X.s_t0),this.m_normal)<-c)continue}else if(X.DotVV(X.SubVV(a,this.m_lowerLimit,X.s_t0),this.m_normal)<-c)continue;o>n.separation&&(n.type=Je.e_edgeB,n.index=s,n.separation=o)}return n},e}();ci.s_edge1=new X,ci.s_edge0=new X,ci.s_edge2=new X,ci.s_ie=Nt.MakeArray(2),ci.s_rf=new function(){this.i1=0,this.i2=0,this.v1=new X,this.v2=new X,this.normal=new X,this.sideNormal1=new X,this.sideOffset1=0,this.sideNormal2=new X,this.sideOffset2=0},ci.s_clipPoints1=Nt.MakeArray(2),ci.s_clipPoints2=Nt.MakeArray(2),ci.s_edgeAxis=new ui,ci.s_polygonAxis=new ui,ci.s_n=new X,ci.s_perp=new X;var _i=new ci;function fi(t,e,i,n,r){_i.Collide(t,e,i,n,r)}var di,pi=function(){this.mass=0,this.center=new X(0,0),this.I=0};(di=t.b2ShapeType||(t.b2ShapeType={}))[di.e_unknown=-1]="e_unknown",di[di.e_circleShape=0]="e_circleShape",di[di.e_edgeShape=1]="e_edgeShape",di[di.e_polygonShape=2]="e_polygonShape",di[di.e_chainShape=3]="e_chainShape",di[di.e_shapeTypeCount=4]="e_shapeTypeCount";var mi=function(){function e(e,i){this.m_type=t.b2ShapeType.e_unknown,this.m_radius=0,this.m_type=e,this.m_radius=i}var i=e.prototype;return i.Copy=function(t){return this.m_radius=t.m_radius,this},i.GetType=function(){return this.m_type},e}(),gi=function(e){function i(i){var n;return void 0===i&&(i=0),(n=e.call(this,t.b2ShapeType.e_circleShape,i)||this).m_p=new X,n}s(i,e);var n=i.prototype;return n.Set=function(t,e){return void 0===e&&(e=this.m_radius),this.m_p.Copy(t),this.m_radius=e,this},n.Clone=function(){return(new i).Copy(this)},n.Copy=function(t){return e.prototype.Copy.call(this,t),this.m_p.Copy(t.m_p),this},n.GetChildCount=function(){return 1},n.TestPoint=function(t,e){var n=Z.MulXV(t,this.m_p,i.TestPoint_s_center),r=X.SubVV(e,n,i.TestPoint_s_d);return X.DotVV(r,r)<=N(this.m_radius)},n.ComputeDistance=function(t,e,n){var r=Z.MulXV(t,this.m_p,i.ComputeDistance_s_center);return X.SubVV(e,r,n),n.Normalize()-this.m_radius},n.RayCast=function(t,e,n){var s=Z.MulXV(n,this.m_p,i.RayCast_s_position),a=X.SubVV(e.p1,s,i.RayCast_s_s),o=X.DotVV(a,a)-N(this.m_radius),h=X.SubVV(e.p2,e.p1,i.RayCast_s_r),u=X.DotVV(a,h),l=X.DotVV(h,h),c=u*u-l*o;if(c<0||l<r)return!1;var _=-(u+k(c));return 0<=_&&_<=e.maxFraction*l&&(_/=l,t.fraction=_,X.AddVMulSV(a,_,h,t.normal).SelfNormalize(),!0)},n.ComputeAABB=function(t,e){var n=Z.MulXV(e,this.m_p,i.ComputeAABB_s_p);t.lowerBound.Set(n.x-this.m_radius,n.y-this.m_radius),t.upperBound.Set(n.x+this.m_radius,n.y+this.m_radius)},n.ComputeMass=function(t,e){var i=N(this.m_radius);t.mass=e*o*i,t.center.Copy(this.m_p),t.I=t.mass*(.5*i+X.DotVV(this.m_p,this.m_p))},n.SetupDistanceProxy=function(t){t.m_vertices=t.m_buffer,t.m_vertices[0].Copy(this.m_p),t.m_count=1,t.m_radius=this.m_radius},n.ComputeSubmergedArea=function(t,e,i,n){var s=Z.MulXV(i,this.m_p,new X),a=-(X.DotVV(t,s)-e);if(a<-this.m_radius+r)return 0;if(a>this.m_radius)return n.Copy(s),o*this.m_radius*this.m_radius;var h=this.m_radius*this.m_radius,u=a*a,l=h*(H(a/this.m_radius)+o/2)+a*k(h-u),c=-2/3*G(h-u,1.5)/l;return n.x=s.x+t.x*c,n.y=s.y+t.y*c,l},n.Dump=function(t){t(" const shape: b2CircleShape = new b2CircleShape();\n"),t(" shape.m_radius = %.15f;\n",this.m_radius),t(" shape.m_p.Set(%.15f, %.15f);\n",this.m_p.x,this.m_p.y)},i}(mi);gi.TestPoint_s_center=new X,gi.TestPoint_s_d=new X,gi.ComputeDistance_s_center=new X,gi.RayCast_s_position=new X,gi.RayCast_s_s=new X,gi.RayCast_s_r=new X,gi.ComputeAABB_s_p=new X;var vi=function(e){function n(){var i;return(i=e.call(this,t.b2ShapeType.e_polygonShape,_)||this).m_centroid=new X(0,0),i.m_vertices=[],i.m_normals=[],i.m_count=0,i}s(n,e);var r=n.prototype;return r.Clone=function(){return(new n).Copy(this)},r.Copy=function(t){e.prototype.Copy.call(this,t),this.m_centroid.Copy(t.m_centroid),this.m_count=t.m_count,this.m_vertices=X.MakeArray(this.m_count),this.m_normals=X.MakeArray(this.m_count);for(var i=0;i<this.m_count;++i)this.m_vertices[i].Copy(t.m_vertices[i]),this.m_normals[i].Copy(t.m_normals[i]);return this},r.GetChildCount=function(){return 1},r.Set=function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];if("number"==typeof e[0][0]){var n=e[0];if(n.length%2!=0)throw new Error;return this._Set((function(t){return{x:n[2*t],y:n[2*t+1]}}),n.length/2)}var r=e[0],s=e[1]||r.length;return this._Set((function(t){return r[t]}),s)},r._Set=function(t,e){if(e<3)return this.SetAsBox(1,1);for(var i=e,r=[],s=0;s<i;++s){for(var a=t(s),o=!0,h=0;h<r.length;++h)if(X.DistanceSquaredVV(a,r[h])<16e-6){o=!1;break}o&&r.push(a)}if((i=r.length)<3)return this.SetAsBox(1,1);for(var u=0,l=r[0].x,c=1;c<i;++c){var _=r[c].x;(_>l||_===l&&r[c].y<r[u].y)&&(u=c,l=_)}for(var f=[],d=0,p=u;;){f[d]=p;for(var m=0,g=1;g<i;++g)if(m!==p){var v=X.SubVV(r[m],r[f[d]],n.Set_s_r),y=X.SubVV(r[g],r[f[d]],n.Set_s_v),S=X.CrossVV(v,y);S<0&&(m=g),0===S&&y.LengthSquared()>v.LengthSquared()&&(m=g)}else m=g;if(++d,p=m,m===u)break}this.m_count=d,this.m_vertices=X.MakeArray(this.m_count),this.m_normals=X.MakeArray(this.m_count);for(var T=0;T<d;++T)this.m_vertices[T].Copy(r[f[T]]);for(var A=0;A<d;++A){var b=this.m_vertices[A],E=this.m_vertices[(A+1)%d],C=X.SubVV(E,b,X.s_t0);X.CrossVOne(C,this.m_normals[A]).SelfNormalize()}return n.ComputeCentroid(this.m_vertices,d,this.m_centroid),this},r.SetAsBox=function(t,e,i,n){if(void 0===n&&(n=0),this.m_count=4,this.m_vertices=X.MakeArray(this.m_count),this.m_normals=X.MakeArray(this.m_count),this.m_vertices[0].Set(-t,-e),this.m_vertices[1].Set(t,-e),this.m_vertices[2].Set(t,e),this.m_vertices[3].Set(-t,e),this.m_normals[0].Set(0,-1),this.m_normals[1].Set(1,0),this.m_normals[2].Set(0,1),this.m_normals[3].Set(-1,0),this.m_centroid.SetZero(),i){this.m_centroid.Copy(i);var r=new Z;r.SetPosition(i),r.SetRotationAngle(n);for(var s=0;s<this.m_count;++s)Z.MulXV(r,this.m_vertices[s],this.m_vertices[s]),Q.MulRV(r.q,this.m_normals[s],this.m_normals[s])}return this},r.TestPoint=function(t,e){for(var i=Z.MulTXV(t,e,n.TestPoint_s_pLocal),r=0;r<this.m_count;++r)if(X.DotVV(this.m_normals[r],X.SubVV(i,this.m_vertices[r],X.s_t0))>0)return!1;return!0},r.ComputeDistance=function(t,e,r){for(var s=Z.MulTXV(t,e,n.ComputeDistance_s_pLocal),a=-i,o=n.ComputeDistance_s_normalForMaxDistance.Copy(s),h=0;h<this.m_count;++h){var u=X.DotVV(this.m_normals[h],X.SubVV(s,this.m_vertices[h],X.s_t0));u>a&&(a=u,o.Copy(this.m_normals[h]))}if(a>0){for(var l=n.ComputeDistance_s_minDistance.Copy(o),c=a*a,_=0;_<this.m_count;++_){var f=X.SubVV(s,this.m_vertices[_],n.ComputeDistance_s_distance),d=f.LengthSquared();c>d&&(l.Copy(f),c=d)}return Q.MulRV(t.q,l,r),r.Normalize(),Math.sqrt(c)}return Q.MulRV(t.q,o,r),a},r.RayCast=function(t,e,i){for(var r=Z.MulTXV(i,e.p1,n.RayCast_s_p1),s=Z.MulTXV(i,e.p2,n.RayCast_s_p2),a=X.SubVV(s,r,n.RayCast_s_d),o=0,h=e.maxFraction,u=-1,l=0;l<this.m_count;++l){var c=X.DotVV(this.m_normals[l],X.SubVV(this.m_vertices[l],r,X.s_t0)),_=X.DotVV(this.m_normals[l],a);if(0===_){if(c<0)return!1}else _<0&&c<o*_?(o=c/_,u=l):_>0&&c<h*_&&(h=c/_);if(h<o)return!1}return u>=0&&(t.fraction=o,Q.MulRV(i.q,this.m_normals[u],t.normal),!0)},r.ComputeAABB=function(t,e){for(var i=Z.MulXV(e,this.m_vertices[0],t.lowerBound),r=t.upperBound.Copy(i),s=0;s<this.m_count;++s){var a=Z.MulXV(e,this.m_vertices[s],n.ComputeAABB_s_v);X.MinV(a,i,i),X.MaxV(a,r,r)}var o=this.m_radius;i.SelfSubXY(o,o),r.SelfAddXY(o,o)},r.ComputeMass=function(t,e){for(var i=n.ComputeMass_s_center.SetZero(),r=0,s=0,a=n.ComputeMass_s_s.SetZero(),o=0;o<this.m_count;++o)a.SelfAdd(this.m_vertices[o]);a.SelfMul(1/this.m_count);for(var h=1/3,u=0;u<this.m_count;++u){var l=X.SubVV(this.m_vertices[u],a,n.ComputeMass_s_e1),c=X.SubVV(this.m_vertices[(u+1)%this.m_count],a,n.ComputeMass_s_e2),_=X.CrossVV(l,c),f=.5*_;r+=f,i.SelfAdd(X.MulSV(f*h,X.AddVV(l,c,X.s_t0),X.s_t1));var d=l.x,p=l.y,m=c.x,g=c.y;s+=.25*h*_*(d*d+m*d+m*m+p*p+g*p+g*g)}t.mass=e*r,i.SelfMul(1/r),X.AddVV(i,a,t.center),t.I=e*s,t.I+=t.mass*(X.DotVV(t.center,t.center)-X.DotVV(i,i))},r.Validate=function(){for(var t=0;t<this.m_count;++t)for(var e=t,i=(t+1)%this.m_count,r=this.m_vertices[e],s=X.SubVV(this.m_vertices[i],r,n.Validate_s_e),a=0;a<this.m_count;++a)if(a!==e&&a!==i){var o=X.SubVV(this.m_vertices[a],r,n.Validate_s_v);if(X.CrossVV(s,o)<0)return!1}return!0},r.SetupDistanceProxy=function(t){t.m_vertices=this.m_vertices,t.m_count=this.m_count,t.m_radius=this.m_radius},r.ComputeSubmergedArea=function(t,e,i,r){for(var s=Q.MulTRV(i.q,t,n.ComputeSubmergedArea_s_normalL),a=e-X.DotVV(t,i.p),o=[],h=0,u=-1,l=-1,c=!1,_=0;_<this.m_count;++_){o[_]=X.DotVV(s,this.m_vertices[_])-a;var f=o[_]<-1e-5;_>0&&(f?c||(u=_-1,h++):c&&(l=_-1,h++)),c=f}switch(h){case 0:if(c){var d=n.ComputeSubmergedArea_s_md;return this.ComputeMass(d,1),Z.MulXV(i,d.center,r),d.mass}return 0;case 1:-1===u?u=this.m_count-1:l=this.m_count-1}for(var p,m=(u+1)%this.m_count,g=(l+1)%this.m_count,v=(0-o[u])/(o[m]-o[u]),y=(0-o[l])/(o[g]-o[l]),S=n.ComputeSubmergedArea_s_intoVec.Set(this.m_vertices[u].x*(1-v)+this.m_vertices[m].x*v,this.m_vertices[u].y*(1-v)+this.m_vertices[m].y*v),T=n.ComputeSubmergedArea_s_outoVec.Set(this.m_vertices[l].x*(1-y)+this.m_vertices[g].x*y,this.m_vertices[l].y*(1-y)+this.m_vertices[g].y*y),A=0,b=n.ComputeSubmergedArea_s_center.SetZero(),E=this.m_vertices[m],C=m;C!==g;){p=(C=(C+1)%this.m_count)===g?T:this.m_vertices[C];var x=.5*((E.x-S.x)*(p.y-S.y)-(E.y-S.y)*(p.x-S.x));A+=x,b.x+=x*(S.x+E.x+p.x)/3,b.y+=x*(S.y+E.y+p.y)/3,E=p}return b.SelfMul(1/A),Z.MulXV(i,b,r),A},r.Dump=function(t){t(" const shape: b2PolygonShape = new b2PolygonShape();\n"),t(" const vs: b2Vec2[] = [];\n");for(var e=0;e<this.m_count;++e)t(" vs[%d] = new b2Vec2(%.15f, %.15f);\n",e,this.m_vertices[e].x,this.m_vertices[e].y);t(" shape.Set(vs, %d);\n",this.m_count)},n.ComputeCentroid=function(t,e,i){var r=i;r.SetZero();for(var s=0,a=n.ComputeCentroid_s_pRef.SetZero(),o=1/3,h=0;h<e;++h){var u=a,l=t[h],c=t[(h+1)%e],_=X.SubVV(l,u,n.ComputeCentroid_s_e1),f=X.SubVV(c,u,n.ComputeCentroid_s_e2),d=.5*X.CrossVV(_,f);s+=d,r.x+=d*o*(u.x+l.x+c.x),r.y+=d*o*(u.y+l.y+c.y)}return r.SelfMul(1/s),r},n}(mi);vi.Set_s_r=new X,vi.Set_s_v=new X,vi.TestPoint_s_pLocal=new X,vi.ComputeDistance_s_pLocal=new X,vi.ComputeDistance_s_normalForMaxDistance=new X,vi.ComputeDistance_s_minDistance=new X,vi.ComputeDistance_s_distance=new X,vi.RayCast_s_p1=new X,vi.RayCast_s_p2=new X,vi.RayCast_s_d=new X,vi.ComputeAABB_s_v=new X,vi.ComputeMass_s_center=new X,vi.ComputeMass_s_s=new X,vi.ComputeMass_s_e1=new X,vi.ComputeMass_s_e2=new X,vi.Validate_s_e=new X,vi.Validate_s_v=new X,vi.ComputeSubmergedArea_s_normalL=new X,vi.ComputeSubmergedArea_s_md=new pi,vi.ComputeSubmergedArea_s_intoVec=new X,vi.ComputeSubmergedArea_s_outoVec=new X,vi.ComputeSubmergedArea_s_center=new X,vi.ComputeCentroid_s_pRef=new X,vi.ComputeCentroid_s_e1=new X,vi.ComputeCentroid_s_e2=new X;var yi=function(e){function i(){var i;return(i=e.call(this,t.b2ShapeType.e_edgeShape,_)||this).m_vertex1=new X,i.m_vertex2=new X,i.m_vertex0=new X,i.m_vertex3=new X,i.m_hasVertex0=!1,i.m_hasVertex3=!1,i}s(i,e);var n=i.prototype;return n.Set=function(t,e){return this.m_vertex1.Copy(t),this.m_vertex2.Copy(e),this.m_hasVertex0=!1,this.m_hasVertex3=!1,this},n.Clone=function(){return(new i).Copy(this)},n.Copy=function(t){return e.prototype.Copy.call(this,t),this.m_vertex1.Copy(t.m_vertex1),this.m_vertex2.Copy(t.m_vertex2),this.m_vertex0.Copy(t.m_vertex0),this.m_vertex3.Copy(t.m_vertex3),this.m_hasVertex0=t.m_hasVertex0,this.m_hasVertex3=t.m_hasVertex3,this},n.GetChildCount=function(){return 1},n.TestPoint=function(){return!1},n.ComputeDistance=function(t,e,n){var r=Z.MulXV(t,this.m_vertex1,i.ComputeDistance_s_v1),s=Z.MulXV(t,this.m_vertex2,i.ComputeDistance_s_v2),a=X.SubVV(e,r,i.ComputeDistance_s_d),o=X.SubVV(s,r,i.ComputeDistance_s_s),h=X.DotVV(a,o);if(h>0){var u=X.DotVV(o,o);h>u?X.SubVV(e,s,a):a.SelfMulSub(h/u,o)}return n.Copy(a),n.Normalize()},n.RayCast=function(t,e,n){var r=Z.MulTXV(n,e.p1,i.RayCast_s_p1),s=Z.MulTXV(n,e.p2,i.RayCast_s_p2),a=X.SubVV(s,r,i.RayCast_s_d),o=this.m_vertex1,h=this.m_vertex2,u=X.SubVV(h,o,i.RayCast_s_e),l=t.normal.Set(u.y,-u.x).SelfNormalize(),c=X.DotVV(l,X.SubVV(o,r,X.s_t0)),_=X.DotVV(l,a);if(0===_)return!1;var f=c/_;if(f<0||e.maxFraction<f)return!1;var d=X.AddVMulSV(r,f,a,i.RayCast_s_q),p=X.SubVV(h,o,i.RayCast_s_r),m=X.DotVV(p,p);if(0===m)return!1;var g=X.DotVV(X.SubVV(d,o,X.s_t0),p)/m;return!(g<0||1<g||(t.fraction=f,Q.MulRV(n.q,t.normal,t.normal),c>0&&t.normal.SelfNeg(),0))},n.ComputeAABB=function(t,e){var n=Z.MulXV(e,this.m_vertex1,i.ComputeAABB_s_v1),r=Z.MulXV(e,this.m_vertex2,i.ComputeAABB_s_v2);X.MinV(n,r,t.lowerBound),X.MaxV(n,r,t.upperBound);var s=this.m_radius;t.lowerBound.SelfSubXY(s,s),t.upperBound.SelfAddXY(s,s)},n.ComputeMass=function(t){t.mass=0,X.MidVV(this.m_vertex1,this.m_vertex2,t.center),t.I=0},n.SetupDistanceProxy=function(t){t.m_vertices=t.m_buffer,t.m_vertices[0].Copy(this.m_vertex1),t.m_vertices[1].Copy(this.m_vertex2),t.m_count=2,t.m_radius=this.m_radius},n.ComputeSubmergedArea=function(t,e,i,n){return n.SetZero(),0},n.Dump=function(t){t(" const shape: b2EdgeShape = new b2EdgeShape();\n"),t(" shape.m_radius = %.15f;\n",this.m_radius),t(" shape.m_vertex0.Set(%.15f, %.15f);\n",this.m_vertex0.x,this.m_vertex0.y),t(" shape.m_vertex1.Set(%.15f, %.15f);\n",this.m_vertex1.x,this.m_vertex1.y),t(" shape.m_vertex2.Set(%.15f, %.15f);\n",this.m_vertex2.x,this.m_vertex2.y),t(" shape.m_vertex3.Set(%.15f, %.15f);\n",this.m_vertex3.x,this.m_vertex3.y),t(" shape.m_hasVertex0 = %s;\n",this.m_hasVertex0),t(" shape.m_hasVertex3 = %s;\n",this.m_hasVertex3)},i}(mi);yi.ComputeDistance_s_v1=new X,yi.ComputeDistance_s_v2=new X,yi.ComputeDistance_s_d=new X,yi.ComputeDistance_s_s=new X,yi.RayCast_s_p1=new X,yi.RayCast_s_p2=new X,yi.RayCast_s_d=new X,yi.RayCast_s_e=new X,yi.RayCast_s_q=new X,yi.RayCast_s_r=new X,yi.ComputeAABB_s_v1=new X,yi.ComputeAABB_s_v2=new X;var Si=function(e){function i(){var i;return(i=e.call(this,t.b2ShapeType.e_chainShape,_)||this).m_vertices=[],i.m_count=0,i.m_prevVertex=new X,i.m_nextVertex=new X,i.m_hasPrevVertex=!1,i.m_hasNextVertex=!1,i}s(i,e);var n=i.prototype;return n.CreateLoop=function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];if("number"==typeof e[0][0]){var n=e[0];if(n.length%2!=0)throw new Error;return this._CreateLoop((function(t){return{x:n[2*t],y:n[2*t+1]}}),n.length/2)}var r=e[0],s=e[1]||r.length;return this._CreateLoop((function(t){return r[t]}),s)},n._CreateLoop=function(t,e){if(e<3)return this;this.m_count=e+1,this.m_vertices=X.MakeArray(this.m_count);for(var i=0;i<e;++i)this.m_vertices[i].Copy(t(i));return this.m_vertices[e].Copy(this.m_vertices[0]),this.m_prevVertex.Copy(this.m_vertices[this.m_count-2]),this.m_nextVertex.Copy(this.m_vertices[1]),this.m_hasPrevVertex=!0,this.m_hasNextVertex=!0,this},n.CreateChain=function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];if("number"==typeof e[0][0]){var n=e[0];if(n.length%2!=0)throw new Error;return this._CreateChain((function(t){return{x:n[2*t],y:n[2*t+1]}}),n.length/2)}var r=e[0],s=e[1]||r.length;return this._CreateChain((function(t){return r[t]}),s)},n._CreateChain=function(t,e){this.m_count=e,this.m_vertices=X.MakeArray(e);for(var i=0;i<e;++i)this.m_vertices[i].Copy(t(i));return this.m_hasPrevVertex=!1,this.m_hasNextVertex=!1,this.m_prevVertex.SetZero(),this.m_nextVertex.SetZero(),this},n.SetPrevVertex=function(t){return this.m_prevVertex.Copy(t),this.m_hasPrevVertex=!0,this},n.SetNextVertex=function(t){return this.m_nextVertex.Copy(t),this.m_hasNextVertex=!0,this},n.Clone=function(){return(new i).Copy(this)},n.Copy=function(t){return e.prototype.Copy.call(this,t),this._CreateChain((function(e){return t.m_vertices[e]}),t.m_count),this.m_prevVertex.Copy(t.m_prevVertex),this.m_nextVertex.Copy(t.m_nextVertex),this.m_hasPrevVertex=t.m_hasPrevVertex,this.m_hasNextVertex=t.m_hasNextVertex,this},n.GetChildCount=function(){return this.m_count-1},n.GetChildEdge=function(t,e){t.m_radius=this.m_radius,t.m_vertex1.Copy(this.m_vertices[e]),t.m_vertex2.Copy(this.m_vertices[e+1]),e>0?(t.m_vertex0.Copy(this.m_vertices[e-1]),t.m_hasVertex0=!0):(t.m_vertex0.Copy(this.m_prevVertex),t.m_hasVertex0=this.m_hasPrevVertex),e<this.m_count-2?(t.m_vertex3.Copy(this.m_vertices[e+2]),t.m_hasVertex3=!0):(t.m_vertex3.Copy(this.m_nextVertex),t.m_hasVertex3=this.m_hasNextVertex)},n.TestPoint=function(){return!1},n.ComputeDistance=function(t,e,n,r){var s=i.ComputeDistance_s_edgeShape;return this.GetChildEdge(s,r),s.ComputeDistance(t,e,n,0)},n.RayCast=function(t,e,n,r){var s=i.RayCast_s_edgeShape;return s.m_vertex1.Copy(this.m_vertices[r]),s.m_vertex2.Copy(this.m_vertices[(r+1)%this.m_count]),s.RayCast(t,e,n,0)},n.ComputeAABB=function(t,e,n){var r=this.m_vertices[n],s=this.m_vertices[(n+1)%this.m_count],a=Z.MulXV(e,r,i.ComputeAABB_s_v1),o=Z.MulXV(e,s,i.ComputeAABB_s_v2);X.MinV(a,o,t.lowerBound),X.MaxV(a,o,t.upperBound)},n.ComputeMass=function(t){t.mass=0,t.center.SetZero(),t.I=0},n.SetupDistanceProxy=function(t,e){t.m_vertices=t.m_buffer,t.m_vertices[0].Copy(this.m_vertices[e]),e+1<this.m_count?t.m_vertices[1].Copy(this.m_vertices[e+1]):t.m_vertices[1].Copy(this.m_vertices[0]),t.m_count=2,t.m_radius=this.m_radius},n.ComputeSubmergedArea=function(t,e,i,n){return n.SetZero(),0},n.Dump=function(t){t(" const shape: b2ChainShape = new b2ChainShape();\n"),t(" const vs: b2Vec2[] = [];\n");for(var e=0;e<this.m_count;++e)t(" vs[%d] = new bVec2(%.15f, %.15f);\n",e,this.m_vertices[e].x,this.m_vertices[e].y);t(" shape.CreateChain(vs, %d);\n",this.m_count),t(" shape.m_prevVertex.Set(%.15f, %.15f);\n",this.m_prevVertex.x,this.m_prevVertex.y),t(" shape.m_nextVertex.Set(%.15f, %.15f);\n",this.m_nextVertex.x,this.m_nextVertex.y),t(" shape.m_hasPrevVertex = %s;\n",this.m_hasPrevVertex?"true":"false"),t(" shape.m_hasNextVertex = %s;\n",this.m_hasNextVertex?"true":"false")},i}(mi);Si.ComputeDistance_s_edgeShape=new yi,Si.RayCast_s_edgeShape=new yi,Si.ComputeAABB_s_v1=new X,Si.ComputeAABB_s_v2=new X;var Ti=function(){function t(){this.categoryBits=1,this.maskBits=65535,this.groupIndex=0}var e=t.prototype;return e.Clone=function(){return(new t).Copy(this)},e.Copy=function(t){return this.categoryBits=t.categoryBits,this.maskBits=t.maskBits,this.groupIndex=t.groupIndex||0,this},t}();Ti.DEFAULT=new Ti;var Ai=function(){this.userData=null,this.friction=.2,this.restitution=0,this.density=0,this.isSensor=!1,this.filter=new Ti},bi=function(){function t(t,e){this.aabb=new Gt,this.childIndex=0,this.fixture=t,this.childIndex=e,this.fixture.m_shape.ComputeAABB(this.aabb,this.fixture.m_body.GetTransform(),e),this.treeNode=this.fixture.m_body.m_world.m_contactManager.m_broadPhase.CreateProxy(this.aabb,this)}var e=t.prototype;return e.Reset=function(){this.fixture.m_body.m_world.m_contactManager.m_broadPhase.DestroyProxy(this.treeNode)},e.Touch=function(){this.fixture.m_body.m_world.m_contactManager.m_broadPhase.TouchProxy(this.treeNode)},e.Synchronize=function(e,i,n){if(e===i)this.fixture.m_shape.ComputeAABB(this.aabb,e,this.childIndex),this.fixture.m_body.m_world.m_contactManager.m_broadPhase.MoveProxy(this.treeNode,this.aabb,n);else{var r=t.Synchronize_s_aabb1,s=t.Synchronize_s_aabb2;this.fixture.m_shape.ComputeAABB(r,e,this.childIndex),this.fixture.m_shape.ComputeAABB(s,i,this.childIndex),this.aabb.Combine2(r,s),this.fixture.m_body.m_world.m_contactManager.m_broadPhase.MoveProxy(this.treeNode,this.aabb,n)}},t}();bi.Synchronize_s_aabb1=new Gt,bi.Synchronize_s_aabb2=new Gt;var Ei,Ci=function(){function t(t,i){this.m_density=0,this.m_next=null,this.m_friction=0,this.m_restitution=0,this.m_proxies=[],this.m_filter=new Ti,this.m_isSensor=!1,this.m_userData=null,this.m_body=t,this.m_shape=i.shape.Clone(),this.m_userData=e(i.userData,null),this.m_friction=e(i.friction,.2),this.m_restitution=e(i.restitution,0),this.m_filter.Copy(e(i.filter,Ti.DEFAULT)),this.m_isSensor=e(i.isSensor,!1),this.m_density=e(i.density,0)}var i=t.prototype;return i.Reset=function(){},i.GetType=function(){return this.m_shape.GetType()},i.GetShape=function(){return this.m_shape},i.SetSensor=function(t){t!==this.m_isSensor&&(this.m_body.SetAwake(!0),this.m_isSensor=t)},i.IsSensor=function(){return this.m_isSensor},i.SetFilterData=function(t){this.m_filter.Copy(t),this.Refilter()},i.GetFilterData=function(){return this.m_filter},i.Refilter=function(){for(var t=this.m_body.GetContactList();t;){var e=t.contact,i=e.GetFixtureA(),n=e.GetFixtureB();i!==this&&n!==this||e.FlagForFiltering(),t=t.next}this.TouchProxies()},i.GetBody=function(){return this.m_body},i.GetNext=function(){return this.m_next},i.GetUserData=function(){return this.m_userData},i.SetUserData=function(t){this.m_userData=t},i.TestPoint=function(t){return this.m_shape.TestPoint(this.m_body.GetTransform(),t)},i.ComputeDistance=function(t,e,i){return this.m_shape.ComputeDistance(this.m_body.GetTransform(),t,e,i)},i.RayCast=function(t,e,i){return this.m_shape.RayCast(t,e,this.m_body.GetTransform(),i)},i.GetMassData=function(t){return void 0===t&&(t=new pi),this.m_shape.ComputeMass(t,this.m_density),t},i.SetDensity=function(t){this.m_density=t},i.GetDensity=function(){return this.m_density},i.GetFriction=function(){return this.m_friction},i.SetFriction=function(t){this.m_friction=t},i.GetRestitution=function(){return this.m_restitution},i.SetRestitution=function(t){this.m_restitution=t},i.GetAABB=function(t){return this.m_proxies[t].aabb},i.Dump=function(t,e){t(" const fd: b2FixtureDef = new b2FixtureDef();\n"),t(" fd.friction = %.15f;\n",this.m_friction),t(" fd.restitution = %.15f;\n",this.m_restitution),t(" fd.density = %.15f;\n",this.m_density),t(" fd.isSensor = %s;\n",this.m_isSensor?"true":"false"),t(" fd.filter.categoryBits = %d;\n",this.m_filter.categoryBits),t(" fd.filter.maskBits = %d;\n",this.m_filter.maskBits),t(" fd.filter.groupIndex = %d;\n",this.m_filter.groupIndex),this.m_shape.Dump(t),t("\n"),t(" fd.shape = shape;\n"),t("\n"),t(" bodies[%d].CreateFixture(fd);\n",e)},i.CreateProxies=function(){if(0!==this.m_proxies.length)throw new Error;for(var t=0;t<this.m_shape.GetChildCount();++t)this.m_proxies[t]=new bi(this,t)},i.DestroyProxies=function(){for(var t,e=f(this.m_proxies);!(t=e()).done;)t.value.Reset();this.m_proxies.length=0},i.TouchProxies=function(){for(var t,e=f(this.m_proxies);!(t=e()).done;)t.value.Touch()},i.SynchronizeProxies=function(t,e,i){for(var n,r=f(this.m_proxies);!(n=r()).done;)n.value.Synchronize(t,e,i)},n(t,[{key:"m_proxyCount",get:function(){return this.m_proxies.length}}]),t}();(Ei=t.b2BodyType||(t.b2BodyType={}))[Ei.b2_unknown=-1]="b2_unknown",Ei[Ei.b2_staticBody=0]="b2_staticBody",Ei[Ei.b2_kinematicBody=1]="b2_kinematicBody",Ei[Ei.b2_dynamicBody=2]="b2_dynamicBody";var xi,wi,Ri=function(){function i(i,n){this.m_type=t.b2BodyType.b2_staticBody,this.m_islandFlag=!1,this.m_awakeFlag=!1,this.m_autoSleepFlag=!1,this.m_bulletFlag=!1,this.m_fixedRotationFlag=!1,this.m_activeFlag=!1,this.m_toiFlag=!1,this.m_islandIndex=0,this.m_xf=new Z,this.m_xf0=new Z,this.m_sweep=new $,this.m_linearVelocity=new X,this.m_angularVelocity=0,this.m_force=new X,this.m_torque=0,this.m_prev=null,this.m_next=null,this.m_fixtureList=null,this.m_fixtureCount=0,this.m_jointList=null,this.m_contactList=null,this.m_mass=1,this.m_invMass=1,this.m_I=0,this.m_invI=0,this.m_linearDamping=0,this.m_angularDamping=0,this.m_gravityScale=1,this.m_sleepTime=0,this.m_userData=null,this.m_controllerList=null,this.m_controllerCount=0,this.m_bulletFlag=e(i.bullet,!1),this.m_fixedRotationFlag=e(i.fixedRotation,!1),this.m_autoSleepFlag=e(i.allowSleep,!0),this.m_awakeFlag=e(i.awake,!0),this.m_activeFlag=e(i.active,!0),this.m_world=n,this.m_xf.p.Copy(e(i.position,X.ZERO)),this.m_xf.q.SetAngle(e(i.angle,0)),this.m_xf0.Copy(this.m_xf),this.m_sweep.localCenter.SetZero(),this.m_sweep.c0.Copy(this.m_xf.p),this.m_sweep.c.Copy(this.m_xf.p),this.m_sweep.a0=this.m_sweep.a=this.m_xf.q.GetAngle(),this.m_sweep.alpha0=0,this.m_linearVelocity.Copy(e(i.linearVelocity,X.ZERO)),this.m_angularVelocity=e(i.angularVelocity,0),this.m_linearDamping=e(i.linearDamping,0),this.m_angularDamping=e(i.angularDamping,0),this.m_gravityScale=e(i.gravityScale,1),this.m_force.SetZero(),this.m_torque=0,this.m_sleepTime=0,this.m_type=e(i.type,t.b2BodyType.b2_staticBody),i.type===t.b2BodyType.b2_dynamicBody?(this.m_mass=1,this.m_invMass=1):(this.m_mass=0,this.m_invMass=0),this.m_I=0,this.m_invI=0,this.m_userData=i.userData,this.m_fixtureList=null,this.m_fixtureCount=0,this.m_controllerList=null,this.m_controllerCount=0}var n=i.prototype;return n.CreateFixture=function(t,e){return void 0===e&&(e=0),t instanceof mi?this.CreateFixtureShapeDensity(t,e):this.CreateFixtureDef(t)},n.CreateFixtureDef=function(t){if(this.m_world.IsLocked())throw new Error;var e=new Ci(this,t);return this.m_activeFlag&&e.CreateProxies(),e.m_next=this.m_fixtureList,this.m_fixtureList=e,++this.m_fixtureCount,e.m_density>0&&this.ResetMassData(),this.m_world.m_newFixture=!0,e},n.CreateFixtureShapeDensity=function(t,e){void 0===e&&(e=0);var n=i.CreateFixtureShapeDensity_s_def;return n.shape=t,n.density=e,this.CreateFixtureDef(n)},n.DestroyFixture=function(t){if(this.m_world.IsLocked())throw new Error;for(var e=this.m_fixtureList,i=null;null!==e;){if(e===t){i?i.m_next=t.m_next:this.m_fixtureList=t.m_next;break}i=e,e=e.m_next}for(var n=this.m_contactList;n;){var r=n.contact;n=n.next;var s=r.GetFixtureA(),a=r.GetFixtureB();t!==s&&t!==a||this.m_world.m_contactManager.Destroy(r)}this.m_activeFlag&&t.DestroyProxies(),t.m_next=null,t.Reset(),--this.m_fixtureCount,this.ResetMassData()},n.SetTransformVec=function(t,e){this.SetTransformXY(t.x,t.y,e)},n.SetTransformXY=function(t,e,i){if(this.m_world.IsLocked())throw new Error;this.m_xf.q.SetAngle(i),this.m_xf.p.Set(t,e),this.m_xf0.Copy(this.m_xf),Z.MulXV(this.m_xf,this.m_sweep.localCenter,this.m_sweep.c),this.m_sweep.a=i,this.m_sweep.c0.Copy(this.m_sweep.c),this.m_sweep.a0=i;for(var n=this.m_fixtureList;n;n=n.m_next)n.SynchronizeProxies(this.m_xf,this.m_xf,X.ZERO);this.m_world.m_contactManager.FindNewContacts()},n.SetTransform=function(t){this.SetTransformVec(t.p,t.GetAngle())},n.GetTransform=function(){return this.m_xf},n.GetPosition=function(){return this.m_xf.p},n.SetPosition=function(t){this.SetTransformVec(t,this.GetAngle())},n.SetPositionXY=function(t,e){this.SetTransformXY(t,e,this.GetAngle())},n.GetAngle=function(){return this.m_sweep.a},n.SetAngle=function(t){this.SetTransformVec(this.GetPosition(),t)},n.GetWorldCenter=function(){return this.m_sweep.c},n.GetLocalCenter=function(){return this.m_sweep.localCenter},n.SetLinearVelocity=function(e){this.m_type!==t.b2BodyType.b2_staticBody&&(X.DotVV(e,e)>0&&this.SetAwake(!0),this.m_linearVelocity.Copy(e))},n.GetLinearVelocity=function(){return this.m_linearVelocity},n.SetAngularVelocity=function(e){this.m_type!==t.b2BodyType.b2_staticBody&&(e*e>0&&this.SetAwake(!0),this.m_angularVelocity=e)},n.GetAngularVelocity=function(){return this.m_angularVelocity},n.GetDefinition=function(t){return t.type=this.GetType(),t.allowSleep=this.m_autoSleepFlag,t.angle=this.GetAngle(),t.angularDamping=this.m_angularDamping,t.gravityScale=this.m_gravityScale,t.angularVelocity=this.m_angularVelocity,t.fixedRotation=this.m_fixedRotationFlag,t.bullet=this.m_bulletFlag,t.awake=this.m_awakeFlag,t.linearDamping=this.m_linearDamping,t.linearVelocity.Copy(this.GetLinearVelocity()),t.position.Copy(this.GetPosition()),t.userData=this.GetUserData(),t},n.ApplyForce=function(e,i,n){void 0===n&&(n=!0),this.m_type===t.b2BodyType.b2_dynamicBody&&(n&&!this.m_awakeFlag&&this.SetAwake(!0),this.m_awakeFlag&&(this.m_force.x+=e.x,this.m_force.y+=e.y,this.m_torque+=(i.x-this.m_sweep.c.x)*e.y-(i.y-this.m_sweep.c.y)*e.x))},n.ApplyForceToCenter=function(e,i){void 0===i&&(i=!0),this.m_type===t.b2BodyType.b2_dynamicBody&&(i&&!this.m_awakeFlag&&this.SetAwake(!0),this.m_awakeFlag&&(this.m_force.x+=e.x,this.m_force.y+=e.y))},n.ApplyTorque=function(e,i){void 0===i&&(i=!0),this.m_type===t.b2BodyType.b2_dynamicBody&&(i&&!this.m_awakeFlag&&this.SetAwake(!0),this.m_awakeFlag&&(this.m_torque+=e))},n.ApplyLinearImpulse=function(e,i,n){void 0===n&&(n=!0),this.m_type===t.b2BodyType.b2_dynamicBody&&(n&&!this.m_awakeFlag&&this.SetAwake(!0),this.m_awakeFlag&&(this.m_linearVelocity.x+=this.m_invMass*e.x,this.m_linearVelocity.y+=this.m_invMass*e.y,this.m_angularVelocity+=this.m_invI*((i.x-this.m_sweep.c.x)*e.y-(i.y-this.m_sweep.c.y)*e.x)))},n.ApplyLinearImpulseToCenter=function(e,i){void 0===i&&(i=!0),this.m_type===t.b2BodyType.b2_dynamicBody&&(i&&!this.m_awakeFlag&&this.SetAwake(!0),this.m_awakeFlag&&(this.m_linearVelocity.x+=this.m_invMass*e.x,this.m_linearVelocity.y+=this.m_invMass*e.y))},n.ApplyAngularImpulse=function(e,i){void 0===i&&(i=!0),this.m_type===t.b2BodyType.b2_dynamicBody&&(i&&!this.m_awakeFlag&&this.SetAwake(!0),this.m_awakeFlag&&(this.m_angularVelocity+=this.m_invI*e))},n.GetMass=function(){return this.m_mass},n.GetInertia=function(){return this.m_I+this.m_mass*X.DotVV(this.m_sweep.localCenter,this.m_sweep.localCenter)},n.GetMassData=function(t){return t.mass=this.m_mass,t.I=this.m_I+this.m_mass*X.DotVV(this.m_sweep.localCenter,this.m_sweep.localCenter),t.center.Copy(this.m_sweep.localCenter),t},n.SetMassData=function(e){if(this.m_world.IsLocked())throw new Error;if(this.m_type===t.b2BodyType.b2_dynamicBody){this.m_invMass=0,this.m_I=0,this.m_invI=0,this.m_mass=e.mass,this.m_mass<=0&&(this.m_mass=1),this.m_invMass=1/this.m_mass,e.I>0&&!this.m_fixedRotationFlag&&(this.m_I=e.I-this.m_mass*X.DotVV(e.center,e.center),this.m_invI=1/this.m_I);var n=i.SetMassData_s_oldCenter.Copy(this.m_sweep.c);this.m_sweep.localCenter.Copy(e.center),Z.MulXV(this.m_xf,this.m_sweep.localCenter,this.m_sweep.c),this.m_sweep.c0.Copy(this.m_sweep.c),X.AddVCrossSV(this.m_linearVelocity,this.m_angularVelocity,X.SubVV(this.m_sweep.c,n,X.s_t0),this.m_linearVelocity)}},n.ResetMassData=function(){if(this.m_mass=0,this.m_invMass=0,this.m_I=0,this.m_invI=0,this.m_sweep.localCenter.SetZero(),this.m_type===t.b2BodyType.b2_staticBody||this.m_type===t.b2BodyType.b2_kinematicBody)return this.m_sweep.c0.Copy(this.m_xf.p),this.m_sweep.c.Copy(this.m_xf.p),void(this.m_sweep.a0=this.m_sweep.a);for(var e=i.ResetMassData_s_localCenter.SetZero(),n=this.m_fixtureList;n;n=n.m_next)if(0!==n.m_density){var r=n.GetMassData(i.ResetMassData_s_massData);this.m_mass+=r.mass,e.x+=r.center.x*r.mass,e.y+=r.center.y*r.mass,this.m_I+=r.I}this.m_mass>0?(this.m_invMass=1/this.m_mass,e.x*=this.m_invMass,e.y*=this.m_invMass):(this.m_mass=1,this.m_invMass=1),this.m_I>0&&!this.m_fixedRotationFlag?(this.m_I-=this.m_mass*X.DotVV(e,e),this.m_invI=1/this.m_I):(this.m_I=0,this.m_invI=0);var s=i.ResetMassData_s_oldCenter.Copy(this.m_sweep.c);this.m_sweep.localCenter.Copy(e),Z.MulXV(this.m_xf,this.m_sweep.localCenter,this.m_sweep.c),this.m_sweep.c0.Copy(this.m_sweep.c),X.AddVCrossSV(this.m_linearVelocity,this.m_angularVelocity,X.SubVV(this.m_sweep.c,s,X.s_t0),this.m_linearVelocity)},n.GetWorldPoint=function(t,e){return Z.MulXV(this.m_xf,t,e)},n.GetWorldVector=function(t,e){return Q.MulRV(this.m_xf.q,t,e)},n.GetLocalPoint=function(t,e){return Z.MulTXV(this.m_xf,t,e)},n.GetLocalVector=function(t,e){return Q.MulTRV(this.m_xf.q,t,e)},n.GetLinearVelocityFromWorldPoint=function(t,e){return X.AddVCrossSV(this.m_linearVelocity,this.m_angularVelocity,X.SubVV(t,this.m_sweep.c,X.s_t0),e)},n.GetLinearVelocityFromLocalPoint=function(t,e){return this.GetLinearVelocityFromWorldPoint(this.GetWorldPoint(t,e),e)},n.GetLinearDamping=function(){return this.m_linearDamping},n.SetLinearDamping=function(t){this.m_linearDamping=t},n.GetAngularDamping=function(){return this.m_angularDamping},n.SetAngularDamping=function(t){this.m_angularDamping=t},n.GetGravityScale=function(){return this.m_gravityScale},n.SetGravityScale=function(t){this.m_gravityScale=t},n.SetType=function(e){if(this.m_world.IsLocked())throw new Error;if(this.m_type!==e){this.m_type=e,this.ResetMassData(),this.m_type===t.b2BodyType.b2_staticBody&&(this.m_linearVelocity.SetZero(),this.m_angularVelocity=0,this.m_sweep.a0=this.m_sweep.a,this.m_sweep.c0.Copy(this.m_sweep.c),this.SynchronizeFixtures()),this.SetAwake(!0),this.m_force.SetZero(),this.m_torque=0;for(var i=this.m_contactList;i;){var n=i;i=i.next,this.m_world.m_contactManager.Destroy(n.contact)}this.m_contactList=null;for(var r=this.m_fixtureList;r;r=r.m_next)r.TouchProxies()}},n.GetType=function(){return this.m_type},n.SetBullet=function(t){this.m_bulletFlag=t},n.IsBullet=function(){return this.m_bulletFlag},n.SetSleepingAllowed=function(t){this.m_autoSleepFlag=t,t||this.SetAwake(!0)},n.IsSleepingAllowed=function(){return this.m_autoSleepFlag},n.SetAwake=function(t){t?(this.m_awakeFlag=!0,this.m_sleepTime=0):(this.m_awakeFlag=!1,this.m_sleepTime=0,this.m_linearVelocity.SetZero(),this.m_angularVelocity=0,this.m_force.SetZero(),this.m_torque=0)},n.IsAwake=function(){return this.m_awakeFlag},n.SetActive=function(t){if(this.m_world.IsLocked())throw new Error;if(t!==this.IsActive())if(this.m_activeFlag=t,t)for(var e=this.m_fixtureList;e;e=e.m_next)e.CreateProxies();else{for(var i=this.m_fixtureList;i;i=i.m_next)i.DestroyProxies();for(var n=this.m_contactList;n;){var r=n;n=n.next,this.m_world.m_contactManager.Destroy(r.contact)}this.m_contactList=null}},n.IsActive=function(){return this.m_activeFlag},n.SetFixedRotation=function(t){this.m_fixedRotationFlag!==t&&(this.m_fixedRotationFlag=t,this.m_angularVelocity=0,this.ResetMassData())},n.IsFixedRotation=function(){return this.m_fixedRotationFlag},n.GetFixtureList=function(){return this.m_fixtureList},n.GetJointList=function(){return this.m_jointList},n.GetContactList=function(){return this.m_contactList},n.GetNext=function(){return this.m_next},n.GetUserData=function(){return this.m_userData},n.SetUserData=function(t){this.m_userData=t},n.GetWorld=function(){return this.m_world},n.Dump=function(e){var i=this.m_islandIndex;e("{\n"),e(" const bd: b2BodyDef = new b2BodyDef();\n");var n="";switch(this.m_type){case t.b2BodyType.b2_staticBody:n="b2BodyType.b2_staticBody";break;case t.b2BodyType.b2_kinematicBody:n="b2BodyType.b2_kinematicBody";break;case t.b2BodyType.b2_dynamicBody:n="b2BodyType.b2_dynamicBody"}e(" bd.type = %s;\n",n),e(" bd.position.Set(%.15f, %.15f);\n",this.m_xf.p.x,this.m_xf.p.y),e(" bd.angle = %.15f;\n",this.m_sweep.a),e(" bd.linearVelocity.Set(%.15f, %.15f);\n",this.m_linearVelocity.x,this.m_linearVelocity.y),e(" bd.angularVelocity = %.15f;\n",this.m_angularVelocity),e(" bd.linearDamping = %.15f;\n",this.m_linearDamping),e(" bd.angularDamping = %.15f;\n",this.m_angularDamping),e(" bd.allowSleep = %s;\n",this.m_autoSleepFlag?"true":"false"),e(" bd.awake = %s;\n",this.m_awakeFlag?"true":"false"),e(" bd.fixedRotation = %s;\n",this.m_fixedRotationFlag?"true":"false"),e(" bd.bullet = %s;\n",this.m_bulletFlag?"true":"false"),e(" bd.active = %s;\n",this.m_activeFlag?"true":"false"),e(" bd.gravityScale = %.15f;\n",this.m_gravityScale),e("\n"),e(" bodies[%d] = this.m_world.CreateBody(bd);\n",this.m_islandIndex),e("\n");for(var r=this.m_fixtureList;r;r=r.m_next)e(" {\n"),r.Dump(e,i),e(" }\n");e("}\n")},n.SynchronizeFixtures=function(){var t=i.SynchronizeFixtures_s_xf1;t.q.SetAngle(this.m_sweep.a0),Q.MulRV(t.q,this.m_sweep.localCenter,t.p),X.SubVV(this.m_sweep.c0,t.p,t.p);for(var e=X.SubVV(this.m_sweep.c,this.m_sweep.c0,i.SynchronizeFixtures_s_displacement),n=this.m_fixtureList;n;n=n.m_next)n.SynchronizeProxies(t,this.m_xf,e)},n.SynchronizeTransform=function(){this.m_xf.q.SetAngle(this.m_sweep.a),Q.MulRV(this.m_xf.q,this.m_sweep.localCenter,this.m_xf.p),X.SubVV(this.m_sweep.c,this.m_xf.p,this.m_xf.p)},n.ShouldCollide=function(e){return(this.m_type!==t.b2BodyType.b2_staticBody||e.m_type!==t.b2BodyType.b2_staticBody)&&this.ShouldCollideConnected(e)},n.ShouldCollideConnected=function(t){for(var e=this.m_jointList;e;e=e.next)if(e.other===t&&!e.joint.m_collideConnected)return!1;return!0},n.Advance=function(t){this.m_sweep.Advance(t),this.m_sweep.c.Copy(this.m_sweep.c0),this.m_sweep.a=this.m_sweep.a0,this.m_xf.q.SetAngle(this.m_sweep.a),Q.MulRV(this.m_xf.q,this.m_sweep.localCenter,this.m_xf.p),X.SubVV(this.m_sweep.c,this.m_xf.p,this.m_xf.p)},n.GetControllerList=function(){return this.m_controllerList},n.GetControllerCount=function(){return this.m_controllerCount},i}();Ri.CreateFixtureShapeDensity_s_def=new Ai,Ri.SetMassData_s_oldCenter=new X,Ri.ResetMassData_s_localCenter=new X,Ri.ResetMassData_s_oldCenter=new X,Ri.ResetMassData_s_massData=new pi,Ri.SynchronizeFixtures_s_xf1=new Z,Ri.SynchronizeFixtures_s_displacement=new X,(wi=t.b2JointType||(t.b2JointType={}))[wi.e_unknownJoint=0]="e_unknownJoint",wi[wi.e_revoluteJoint=1]="e_revoluteJoint",wi[wi.e_prismaticJoint=2]="e_prismaticJoint",wi[wi.e_distanceJoint=3]="e_distanceJoint",wi[wi.e_pulleyJoint=4]="e_pulleyJoint",wi[wi.e_mouseJoint=5]="e_mouseJoint",wi[wi.e_gearJoint=6]="e_gearJoint",wi[wi.e_wheelJoint=7]="e_wheelJoint",wi[wi.e_weldJoint=8]="e_weldJoint",wi[wi.e_frictionJoint=9]="e_frictionJoint",wi[wi.e_ropeJoint=10]="e_ropeJoint",wi[wi.e_motorJoint=11]="e_motorJoint",wi[wi.e_areaJoint=12]="e_areaJoint",(xi=t.b2LimitState||(t.b2LimitState={}))[xi.e_inactiveLimit=0]="e_inactiveLimit",xi[xi.e_atLowerLimit=1]="e_atLowerLimit",xi[xi.e_atUpperLimit=2]="e_atUpperLimit",xi[xi.e_equalLimits=3]="e_equalLimits";var Ii=function(){function t(){this.linear=new X,this.angularA=0,this.angularB=0}var e=t.prototype;return e.SetZero=function(){return this.linear.SetZero(),this.angularA=0,this.angularB=0,this},e.Set=function(t,e,i){return this.linear.Copy(t),this.angularA=e,this.angularB=i,this},t}(),Di=function(){function t(t){this._other=null,this.prev=null,this.next=null,this.joint=t}return t.prototype.Reset=function(){this._other=null,this.prev=null,this.next=null},n(t,[{key:"other",get:function(){if(null===this._other)throw new Error;return this._other},set:function(t){if(null!==this._other)throw new Error;this._other=t}}]),t}(),Bi=function(e){this.type=t.b2JointType.e_unknownJoint,this.userData=null,this.collideConnected=!1,this.type=e},Mi=function(){function i(i){this.m_type=t.b2JointType.e_unknownJoint,this.m_prev=null,this.m_next=null,this.m_edgeA=new Di(this),this.m_edgeB=new Di(this),this.m_index=0,this.m_islandFlag=!1,this.m_collideConnected=!1,this.m_userData=null,this.m_type=i.type,this.m_edgeA.other=i.bodyB,this.m_edgeB.other=i.bodyA,this.m_bodyA=i.bodyA,this.m_bodyB=i.bodyB,this.m_collideConnected=e(i.collideConnected,!1),this.m_userData=e(i.userData,null)}var n=i.prototype;return n.GetType=function(){return this.m_type},n.GetBodyA=function(){return this.m_bodyA},n.GetBodyB=function(){return this.m_bodyB},n.GetNext=function(){return this.m_next},n.GetUserData=function(){return this.m_userData},n.SetUserData=function(t){this.m_userData=t},n.IsActive=function(){return this.m_bodyA.IsActive()&&this.m_bodyB.IsActive()},n.GetCollideConnected=function(){return this.m_collideConnected},n.Dump=function(t){t("// Dump is not supported for this joint type.\n")},n.ShiftOrigin=function(){},i}(),Pi=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_distanceJoint)||this).localAnchorA=new X,i.localAnchorB=new X,i.length=1,i.frequencyHz=0,i.dampingRatio=0,i}return s(i,e),i.prototype.Initialize=function(t,e,i,n){this.bodyA=t,this.bodyB=e,this.bodyA.GetLocalPoint(i,this.localAnchorA),this.bodyB.GetLocalPoint(n,this.localAnchorB),this.length=X.DistanceVV(i,n),this.frequencyHz=0,this.dampingRatio=0},i}(Bi),Oi=function(t){function i(i){var n;return(n=t.call(this,i)||this).m_frequencyHz=0,n.m_dampingRatio=0,n.m_bias=0,n.m_localAnchorA=new X,n.m_localAnchorB=new X,n.m_gamma=0,n.m_impulse=0,n.m_length=0,n.m_indexA=0,n.m_indexB=0,n.m_u=new X,n.m_rA=new X,n.m_rB=new X,n.m_localCenterA=new X,n.m_localCenterB=new X,n.m_invMassA=0,n.m_invMassB=0,n.m_invIA=0,n.m_invIB=0,n.m_mass=0,n.m_qA=new Q,n.m_qB=new Q,n.m_lalcA=new X,n.m_lalcB=new X,n.m_frequencyHz=e(i.frequencyHz,0),n.m_dampingRatio=e(i.dampingRatio,0),n.m_localAnchorA.Copy(i.localAnchorA),n.m_localAnchorB.Copy(i.localAnchorB),n.m_length=i.length,n}s(i,t);var n=i.prototype;return n.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},n.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},n.GetReactionForce=function(t,e){return e.x=t*this.m_impulse*this.m_u.x,e.y=t*this.m_impulse*this.m_u.y,e},n.GetReactionTorque=function(){return 0},n.GetLocalAnchorA=function(){return this.m_localAnchorA},n.GetLocalAnchorB=function(){return this.m_localAnchorB},n.SetLength=function(t){this.m_length=t},n.Length=function(){return this.m_length},n.SetFrequency=function(t){this.m_frequencyHz=t},n.GetFrequency=function(){return this.m_frequencyHz},n.SetDampingRatio=function(t){this.m_dampingRatio=t},n.GetDampingRatio=function(){return this.m_dampingRatio},n.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2DistanceJointDef = new b2DistanceJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.localAnchorA.Set(%.15f, %.15f);\n",this.m_localAnchorA.x,this.m_localAnchorA.y),t(" jd.localAnchorB.Set(%.15f, %.15f);\n",this.m_localAnchorB.x,this.m_localAnchorB.y),t(" jd.length = %.15f;\n",this.m_length),t(" jd.frequencyHz = %.15f;\n",this.m_frequencyHz),t(" jd.dampingRatio = %.15f;\n",this.m_dampingRatio),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},n.InitVelocityConstraints=function(t){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var e=t.positions[this.m_indexA].c,n=t.positions[this.m_indexA].a,r=t.velocities[this.m_indexA].v,s=t.velocities[this.m_indexA].w,a=t.positions[this.m_indexB].c,h=t.positions[this.m_indexB].a,u=t.velocities[this.m_indexB].v,c=t.velocities[this.m_indexB].w,_=this.m_qA.SetAngle(n),f=this.m_qB.SetAngle(h);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA),Q.MulRV(_,this.m_lalcA,this.m_rA),X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB),Q.MulRV(f,this.m_lalcB,this.m_rB),this.m_u.x=a.x+this.m_rB.x-e.x-this.m_rA.x,this.m_u.y=a.y+this.m_rB.y-e.y-this.m_rA.y;var d=this.m_u.Length();d>l?this.m_u.SelfMul(1/d):this.m_u.SetZero();var p=X.CrossVV(this.m_rA,this.m_u),m=X.CrossVV(this.m_rB,this.m_u),g=this.m_invMassA+this.m_invIA*p*p+this.m_invMassB+this.m_invIB*m*m;if(this.m_mass=0!==g?1/g:0,this.m_frequencyHz>0){var v=d-this.m_length,y=2*o*this.m_frequencyHz,S=2*this.m_mass*this.m_dampingRatio*y,T=this.m_mass*y*y,A=t.step.dt;this.m_gamma=A*(S+A*T),this.m_gamma=0!==this.m_gamma?1/this.m_gamma:0,this.m_bias=v*A*T*this.m_gamma,g+=this.m_gamma,this.m_mass=0!==g?1/g:0}else this.m_gamma=0,this.m_bias=0;if(t.step.warmStarting){this.m_impulse*=t.step.dtRatio;var b=X.MulSV(this.m_impulse,this.m_u,i.InitVelocityConstraints_s_P);r.SelfMulSub(this.m_invMassA,b),s-=this.m_invIA*X.CrossVV(this.m_rA,b),u.SelfMulAdd(this.m_invMassB,b),c+=this.m_invIB*X.CrossVV(this.m_rB,b)}else this.m_impulse=0;t.velocities[this.m_indexA].w=s,t.velocities[this.m_indexB].w=c},n.SolveVelocityConstraints=function(t){var e=t.velocities[this.m_indexA].v,n=t.velocities[this.m_indexA].w,r=t.velocities[this.m_indexB].v,s=t.velocities[this.m_indexB].w,a=X.AddVCrossSV(e,n,this.m_rA,i.SolveVelocityConstraints_s_vpA),o=X.AddVCrossSV(r,s,this.m_rB,i.SolveVelocityConstraints_s_vpB),h=X.DotVV(this.m_u,X.SubVV(o,a,X.s_t0)),u=-this.m_mass*(h+this.m_bias+this.m_gamma*this.m_impulse);this.m_impulse+=u;var l=X.MulSV(u,this.m_u,i.SolveVelocityConstraints_s_P);e.SelfMulSub(this.m_invMassA,l),n-=this.m_invIA*X.CrossVV(this.m_rA,l),r.SelfMulAdd(this.m_invMassB,l),s+=this.m_invIB*X.CrossVV(this.m_rB,l),t.velocities[this.m_indexA].w=n,t.velocities[this.m_indexB].w=s},n.SolvePositionConstraints=function(t){if(this.m_frequencyHz>0)return!0;var e=t.positions[this.m_indexA].c,n=t.positions[this.m_indexA].a,r=t.positions[this.m_indexB].c,s=t.positions[this.m_indexB].a,a=this.m_qA.SetAngle(n),o=this.m_qB.SetAngle(s),h=Q.MulRV(a,this.m_lalcA,this.m_rA),u=Q.MulRV(o,this.m_lalcB,this.m_rB),c=this.m_u;c.x=r.x+u.x-e.x-h.x,c.y=r.y+u.y-e.y-h.y;var _=this.m_u.Normalize()-this.m_length;_=O(_,-.2,d);var f=-this.m_mass*_,p=X.MulSV(f,c,i.SolvePositionConstraints_s_P);return e.SelfMulSub(this.m_invMassA,p),n-=this.m_invIA*X.CrossVV(h,p),r.SelfMulAdd(this.m_invMassB,p),s+=this.m_invIB*X.CrossVV(u,p),t.positions[this.m_indexA].a=n,t.positions[this.m_indexB].a=s,B(_)<l},i}(Mi);Oi.InitVelocityConstraints_s_P=new X,Oi.SolveVelocityConstraints_s_vpA=new X,Oi.SolveVelocityConstraints_s_vpB=new X,Oi.SolveVelocityConstraints_s_P=new X,Oi.SolvePositionConstraints_s_P=new X;var Li=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_areaJoint)||this).bodies=[],i.frequencyHz=0,i.dampingRatio=0,i}return s(i,e),i.prototype.AddBody=function(t){this.bodies.push(t),1===this.bodies.length?this.bodyA=t:2===this.bodies.length&&(this.bodyB=t)},i}(Bi),Ni=function(t){function i(i){var n;(n=t.call(this,i)||this).m_frequencyHz=0,n.m_dampingRatio=0,n.m_impulse=0,n.m_targetArea=0,n.m_delta=new X,n.m_bodies=i.bodies,n.m_frequencyHz=e(i.frequencyHz,0),n.m_dampingRatio=e(i.dampingRatio,0),n.m_targetLengths=w(i.bodies.length),n.m_normals=X.MakeArray(i.bodies.length),n.m_joints=[],n.m_deltas=X.MakeArray(i.bodies.length);var r=new Pi;r.frequencyHz=n.m_frequencyHz,r.dampingRatio=n.m_dampingRatio,n.m_targetArea=0;for(var s=0;s<n.m_bodies.length;++s){var a=n.m_bodies[s],o=n.m_bodies[(s+1)%n.m_bodies.length],h=a.GetWorldCenter(),u=o.GetWorldCenter();n.m_targetLengths[s]=X.DistanceVV(h,u),n.m_targetArea+=X.CrossVV(h,u),r.Initialize(a,o,h,u),n.m_joints[s]=a.GetWorld().CreateJoint(r)}return n.m_targetArea*=.5,n}s(i,t);var n=i.prototype;return n.GetAnchorA=function(t){return t},n.GetAnchorB=function(t){return t},n.GetReactionForce=function(t,e){return e},n.GetReactionTorque=function(){return 0},n.SetFrequency=function(t){this.m_frequencyHz=t;for(var e=0;e<this.m_joints.length;++e)this.m_joints[e].SetFrequency(t)},n.GetFrequency=function(){return this.m_frequencyHz},n.SetDampingRatio=function(t){this.m_dampingRatio=t;for(var e=0;e<this.m_joints.length;++e)this.m_joints[e].SetDampingRatio(t)},n.GetDampingRatio=function(){return this.m_dampingRatio},n.Dump=function(t){t("Area joint dumping is not supported.\n")},n.InitVelocityConstraints=function(t){for(var e=0;e<this.m_bodies.length;++e){var i=this.m_bodies[(e+this.m_bodies.length-1)%this.m_bodies.length],n=this.m_bodies[(e+1)%this.m_bodies.length],r=t.positions[i.m_islandIndex].c,s=t.positions[n.m_islandIndex].c,a=this.m_deltas[e];X.SubVV(s,r,a)}if(t.step.warmStarting){this.m_impulse*=t.step.dtRatio;for(var o=0;o<this.m_bodies.length;++o){var h=this.m_bodies[o],u=t.velocities[h.m_islandIndex].v,l=this.m_deltas[o];u.x+=h.m_invMass*l.y*.5*this.m_impulse,u.y+=h.m_invMass*-l.x*.5*this.m_impulse}}else this.m_impulse=0},n.SolveVelocityConstraints=function(t){for(var e=0,i=0,n=0;n<this.m_bodies.length;++n){var r=this.m_bodies[n],s=t.velocities[r.m_islandIndex].v,a=this.m_deltas[n];e+=a.LengthSquared()/r.GetMass(),i+=X.CrossVV(s,a)}var o=-2*i/e;this.m_impulse+=o;for(var h=0;h<this.m_bodies.length;++h){var u=this.m_bodies[h],l=t.velocities[u.m_islandIndex].v,c=this.m_deltas[h];l.x+=u.m_invMass*c.y*.5*o,l.y+=u.m_invMass*-c.x*.5*o}},n.SolvePositionConstraints=function(t){for(var e=0,i=0,n=0;n<this.m_bodies.length;++n){var s=this.m_bodies[n],a=this.m_bodies[(n+1)%this.m_bodies.length],o=t.positions[s.m_islandIndex].c,h=t.positions[a.m_islandIndex].c,u=X.SubVV(h,o,this.m_delta),c=u.Length();c<r&&(c=1),this.m_normals[n].x=u.y/c,this.m_normals[n].y=-u.x/c,e+=c,i+=X.CrossVV(o,h)}i*=.5;for(var _=.5*(this.m_targetArea-i)/e,f=!0,p=0;p<this.m_bodies.length;++p){var m=this.m_bodies[p],g=t.positions[m.m_islandIndex].c,v=(p+1)%this.m_bodies.length,y=X.AddVV(this.m_normals[p],this.m_normals[v],this.m_delta);y.SelfMul(_);var S=y.LengthSquared();S>N(d)&&y.SelfMul(d/k(S)),S>N(l)&&(f=!1),g.x+=y.x,g.y+=y.y}return f},i}(Mi),Fi=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_frictionJoint)||this).localAnchorA=new X,i.localAnchorB=new X,i.maxForce=0,i.maxTorque=0,i}return s(i,e),i.prototype.Initialize=function(t,e,i){this.bodyA=t,this.bodyB=e,this.bodyA.GetLocalPoint(i,this.localAnchorA),this.bodyB.GetLocalPoint(i,this.localAnchorB)},i}(Bi),ki=function(t){function i(i){var n;return(n=t.call(this,i)||this).m_localAnchorA=new X,n.m_localAnchorB=new X,n.m_linearImpulse=new X,n.m_angularImpulse=0,n.m_maxForce=0,n.m_maxTorque=0,n.m_indexA=0,n.m_indexB=0,n.m_rA=new X,n.m_rB=new X,n.m_localCenterA=new X,n.m_localCenterB=new X,n.m_invMassA=0,n.m_invMassB=0,n.m_invIA=0,n.m_invIB=0,n.m_linearMass=new q,n.m_angularMass=0,n.m_qA=new Q,n.m_qB=new Q,n.m_lalcA=new X,n.m_lalcB=new X,n.m_K=new q,n.m_localAnchorA.Copy(i.localAnchorA),n.m_localAnchorB.Copy(i.localAnchorB),n.m_linearImpulse.SetZero(),n.m_maxForce=e(i.maxForce,0),n.m_maxTorque=e(i.maxTorque,0),n.m_linearMass.SetZero(),n}s(i,t);var n=i.prototype;return n.InitVelocityConstraints=function(t){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var e=t.positions[this.m_indexA].a,i=t.velocities[this.m_indexA].v,n=t.velocities[this.m_indexA].w,r=t.positions[this.m_indexB].a,s=t.velocities[this.m_indexB].v,a=t.velocities[this.m_indexB].w,o=this.m_qA.SetAngle(e),h=this.m_qB.SetAngle(r);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA);var u=Q.MulRV(o,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB);var l=Q.MulRV(h,this.m_lalcB,this.m_rB),c=this.m_invMassA,_=this.m_invMassB,f=this.m_invIA,d=this.m_invIB,p=this.m_K;if(p.ex.x=c+_+f*u.y*u.y+d*l.y*l.y,p.ex.y=-f*u.x*u.y-d*l.x*l.y,p.ey.x=p.ex.y,p.ey.y=c+_+f*u.x*u.x+d*l.x*l.x,p.GetInverse(this.m_linearMass),this.m_angularMass=f+d,this.m_angularMass>0&&(this.m_angularMass=1/this.m_angularMass),t.step.warmStarting){this.m_linearImpulse.SelfMul(t.step.dtRatio),this.m_angularImpulse*=t.step.dtRatio;var m=this.m_linearImpulse;i.SelfMulSub(c,m),n-=f*(X.CrossVV(this.m_rA,m)+this.m_angularImpulse),s.SelfMulAdd(_,m),a+=d*(X.CrossVV(this.m_rB,m)+this.m_angularImpulse)}else this.m_linearImpulse.SetZero(),this.m_angularImpulse=0;t.velocities[this.m_indexA].w=n,t.velocities[this.m_indexB].w=a},n.SolveVelocityConstraints=function(t){var e=t.velocities[this.m_indexA].v,n=t.velocities[this.m_indexA].w,r=t.velocities[this.m_indexB].v,s=t.velocities[this.m_indexB].w,a=this.m_invMassA,o=this.m_invMassB,h=this.m_invIA,u=this.m_invIB,l=t.step.dt,c=s-n,_=-this.m_angularMass*c,f=this.m_angularImpulse,d=l*this.m_maxTorque;this.m_angularImpulse=O(this.m_angularImpulse+_,-d,d),n-=h*(_=this.m_angularImpulse-f),s+=u*_;var p=X.SubVV(X.AddVCrossSV(r,s,this.m_rB,X.s_t0),X.AddVCrossSV(e,n,this.m_rA,X.s_t1),i.SolveVelocityConstraints_s_Cdot_v2),m=q.MulMV(this.m_linearMass,p,i.SolveVelocityConstraints_s_impulseV).SelfNeg(),g=i.SolveVelocityConstraints_s_oldImpulseV.Copy(this.m_linearImpulse);this.m_linearImpulse.SelfAdd(m);var v=l*this.m_maxForce;this.m_linearImpulse.LengthSquared()>v*v&&(this.m_linearImpulse.Normalize(),this.m_linearImpulse.SelfMul(v)),X.SubVV(this.m_linearImpulse,g,m),e.SelfMulSub(a,m),n-=h*X.CrossVV(this.m_rA,m),r.SelfMulAdd(o,m),s+=u*X.CrossVV(this.m_rB,m),t.velocities[this.m_indexA].w=n,t.velocities[this.m_indexB].w=s},n.SolvePositionConstraints=function(){return!0},n.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},n.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},n.GetReactionForce=function(t,e){return e.x=t*this.m_linearImpulse.x,e.y=t*this.m_linearImpulse.y,e},n.GetReactionTorque=function(t){return t*this.m_angularImpulse},n.GetLocalAnchorA=function(){return this.m_localAnchorA},n.GetLocalAnchorB=function(){return this.m_localAnchorB},n.SetMaxForce=function(t){this.m_maxForce=t},n.GetMaxForce=function(){return this.m_maxForce},n.SetMaxTorque=function(t){this.m_maxTorque=t},n.GetMaxTorque=function(){return this.m_maxTorque},n.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2FrictionJointDef = new b2FrictionJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.localAnchorA.Set(%.15f, %.15f);\n",this.m_localAnchorA.x,this.m_localAnchorA.y),t(" jd.localAnchorB.Set(%.15f, %.15f);\n",this.m_localAnchorB.x,this.m_localAnchorB.y),t(" jd.maxForce = %.15f;\n",this.m_maxForce),t(" jd.maxTorque = %.15f;\n",this.m_maxTorque),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},i}(Mi);ki.SolveVelocityConstraints_s_Cdot_v2=new X,ki.SolveVelocityConstraints_s_impulseV=new X,ki.SolveVelocityConstraints_s_oldImpulseV=new X;var Gi=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_gearJoint)||this).ratio=1,i}return s(i,e),i}(Bi),Vi=function(i){function n(n){var r,s,a;(r=i.call(this,n)||this).m_typeA=t.b2JointType.e_unknownJoint,r.m_typeB=t.b2JointType.e_unknownJoint,r.m_localAnchorA=new X,r.m_localAnchorB=new X,r.m_localAnchorC=new X,r.m_localAnchorD=new X,r.m_localAxisC=new X,r.m_localAxisD=new X,r.m_referenceAngleA=0,r.m_referenceAngleB=0,r.m_constant=0,r.m_ratio=0,r.m_impulse=0,r.m_indexA=0,r.m_indexB=0,r.m_indexC=0,r.m_indexD=0,r.m_lcA=new X,r.m_lcB=new X,r.m_lcC=new X,r.m_lcD=new X,r.m_mA=0,r.m_mB=0,r.m_mC=0,r.m_mD=0,r.m_iA=0,r.m_iB=0,r.m_iC=0,r.m_iD=0,r.m_JvAC=new X,r.m_JvBD=new X,r.m_JwA=0,r.m_JwB=0,r.m_JwC=0,r.m_JwD=0,r.m_mass=0,r.m_qA=new Q,r.m_qB=new Q,r.m_qC=new Q,r.m_qD=new Q,r.m_lalcA=new X,r.m_lalcB=new X,r.m_lalcC=new X,r.m_lalcD=new X,r.m_joint1=n.joint1,r.m_joint2=n.joint2,r.m_typeA=r.m_joint1.GetType(),r.m_typeB=r.m_joint2.GetType(),r.m_bodyC=r.m_joint1.GetBodyA(),r.m_bodyA=r.m_joint1.GetBodyB();var o=r.m_bodyA.m_xf,h=r.m_bodyA.m_sweep.a,u=r.m_bodyC.m_xf,l=r.m_bodyC.m_sweep.a;if(r.m_typeA===t.b2JointType.e_revoluteJoint){var c=n.joint1;r.m_localAnchorC.Copy(c.m_localAnchorA),r.m_localAnchorA.Copy(c.m_localAnchorB),r.m_referenceAngleA=c.m_referenceAngle,r.m_localAxisC.SetZero(),s=h-l-r.m_referenceAngleA}else{var _=n.joint1;r.m_localAnchorC.Copy(_.m_localAnchorA),r.m_localAnchorA.Copy(_.m_localAnchorB),r.m_referenceAngleA=_.m_referenceAngle,r.m_localAxisC.Copy(_.m_localXAxisA);var f=r.m_localAnchorC,d=Q.MulTRV(u.q,X.AddVV(Q.MulRV(o.q,r.m_localAnchorA,X.s_t0),X.SubVV(o.p,u.p,X.s_t1),X.s_t0),X.s_t0);s=X.DotVV(X.SubVV(d,f,X.s_t0),r.m_localAxisC)}r.m_bodyD=r.m_joint2.GetBodyA(),r.m_bodyB=r.m_joint2.GetBodyB();var p=r.m_bodyB.m_xf,m=r.m_bodyB.m_sweep.a,g=r.m_bodyD.m_xf,v=r.m_bodyD.m_sweep.a;if(r.m_typeB===t.b2JointType.e_revoluteJoint){var y=n.joint2;r.m_localAnchorD.Copy(y.m_localAnchorA),r.m_localAnchorB.Copy(y.m_localAnchorB),r.m_referenceAngleB=y.m_referenceAngle,r.m_localAxisD.SetZero(),a=m-v-r.m_referenceAngleB}else{var S=n.joint2;r.m_localAnchorD.Copy(S.m_localAnchorA),r.m_localAnchorB.Copy(S.m_localAnchorB),r.m_referenceAngleB=S.m_referenceAngle,r.m_localAxisD.Copy(S.m_localXAxisA);var T=r.m_localAnchorD,A=Q.MulTRV(g.q,X.AddVV(Q.MulRV(p.q,r.m_localAnchorB,X.s_t0),X.SubVV(p.p,g.p,X.s_t1),X.s_t0),X.s_t0);a=X.DotVV(X.SubVV(A,T,X.s_t0),r.m_localAxisD)}return r.m_ratio=e(n.ratio,1),r.m_constant=s+r.m_ratio*a,r.m_impulse=0,r}s(n,i);var r=n.prototype;return r.InitVelocityConstraints=function(e){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_indexC=this.m_bodyC.m_islandIndex,this.m_indexD=this.m_bodyD.m_islandIndex,this.m_lcA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_lcB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_lcC.Copy(this.m_bodyC.m_sweep.localCenter),this.m_lcD.Copy(this.m_bodyD.m_sweep.localCenter),this.m_mA=this.m_bodyA.m_invMass,this.m_mB=this.m_bodyB.m_invMass,this.m_mC=this.m_bodyC.m_invMass,this.m_mD=this.m_bodyD.m_invMass,this.m_iA=this.m_bodyA.m_invI,this.m_iB=this.m_bodyB.m_invI,this.m_iC=this.m_bodyC.m_invI,this.m_iD=this.m_bodyD.m_invI;var i=e.positions[this.m_indexA].a,r=e.velocities[this.m_indexA].v,s=e.velocities[this.m_indexA].w,a=e.positions[this.m_indexB].a,o=e.velocities[this.m_indexB].v,h=e.velocities[this.m_indexB].w,u=e.positions[this.m_indexC].a,l=e.velocities[this.m_indexC].v,c=e.velocities[this.m_indexC].w,_=e.positions[this.m_indexD].a,f=e.velocities[this.m_indexD].v,d=e.velocities[this.m_indexD].w,p=this.m_qA.SetAngle(i),m=this.m_qB.SetAngle(a),g=this.m_qC.SetAngle(u),v=this.m_qD.SetAngle(_);if(this.m_mass=0,this.m_typeA===t.b2JointType.e_revoluteJoint)this.m_JvAC.SetZero(),this.m_JwA=1,this.m_JwC=1,this.m_mass+=this.m_iA+this.m_iC;else{var y=Q.MulRV(g,this.m_localAxisC,n.InitVelocityConstraints_s_u);X.SubVV(this.m_localAnchorC,this.m_lcC,this.m_lalcC);var S=Q.MulRV(g,this.m_lalcC,n.InitVelocityConstraints_s_rC);X.SubVV(this.m_localAnchorA,this.m_lcA,this.m_lalcA);var T=Q.MulRV(p,this.m_lalcA,n.InitVelocityConstraints_s_rA);this.m_JvAC.Copy(y),this.m_JwC=X.CrossVV(S,y),this.m_JwA=X.CrossVV(T,y),this.m_mass+=this.m_mC+this.m_mA+this.m_iC*this.m_JwC*this.m_JwC+this.m_iA*this.m_JwA*this.m_JwA}if(this.m_typeB===t.b2JointType.e_revoluteJoint)this.m_JvBD.SetZero(),this.m_JwB=this.m_ratio,this.m_JwD=this.m_ratio,this.m_mass+=this.m_ratio*this.m_ratio*(this.m_iB+this.m_iD);else{var A=Q.MulRV(v,this.m_localAxisD,n.InitVelocityConstraints_s_u);X.SubVV(this.m_localAnchorD,this.m_lcD,this.m_lalcD);var b=Q.MulRV(v,this.m_lalcD,n.InitVelocityConstraints_s_rD);X.SubVV(this.m_localAnchorB,this.m_lcB,this.m_lalcB);var E=Q.MulRV(m,this.m_lalcB,n.InitVelocityConstraints_s_rB);X.MulSV(this.m_ratio,A,this.m_JvBD),this.m_JwD=this.m_ratio*X.CrossVV(b,A),this.m_JwB=this.m_ratio*X.CrossVV(E,A),this.m_mass+=this.m_ratio*this.m_ratio*(this.m_mD+this.m_mB)+this.m_iD*this.m_JwD*this.m_JwD+this.m_iB*this.m_JwB*this.m_JwB}this.m_mass=this.m_mass>0?1/this.m_mass:0,e.step.warmStarting?(r.SelfMulAdd(this.m_mA*this.m_impulse,this.m_JvAC),s+=this.m_iA*this.m_impulse*this.m_JwA,o.SelfMulAdd(this.m_mB*this.m_impulse,this.m_JvBD),h+=this.m_iB*this.m_impulse*this.m_JwB,l.SelfMulSub(this.m_mC*this.m_impulse,this.m_JvAC),c-=this.m_iC*this.m_impulse*this.m_JwC,f.SelfMulSub(this.m_mD*this.m_impulse,this.m_JvBD),d-=this.m_iD*this.m_impulse*this.m_JwD):this.m_impulse=0,e.velocities[this.m_indexA].w=s,e.velocities[this.m_indexB].w=h,e.velocities[this.m_indexC].w=c,e.velocities[this.m_indexD].w=d},r.SolveVelocityConstraints=function(t){var e=t.velocities[this.m_indexA].v,i=t.velocities[this.m_indexA].w,n=t.velocities[this.m_indexB].v,r=t.velocities[this.m_indexB].w,s=t.velocities[this.m_indexC].v,a=t.velocities[this.m_indexC].w,o=t.velocities[this.m_indexD].v,h=t.velocities[this.m_indexD].w,u=X.DotVV(this.m_JvAC,X.SubVV(e,s,X.s_t0))+X.DotVV(this.m_JvBD,X.SubVV(n,o,X.s_t0));u+=this.m_JwA*i-this.m_JwC*a+(this.m_JwB*r-this.m_JwD*h);var l=-this.m_mass*u;this.m_impulse+=l,e.SelfMulAdd(this.m_mA*l,this.m_JvAC),i+=this.m_iA*l*this.m_JwA,n.SelfMulAdd(this.m_mB*l,this.m_JvBD),r+=this.m_iB*l*this.m_JwB,s.SelfMulSub(this.m_mC*l,this.m_JvAC),a-=this.m_iC*l*this.m_JwC,o.SelfMulSub(this.m_mD*l,this.m_JvBD),h-=this.m_iD*l*this.m_JwD,t.velocities[this.m_indexA].w=i,t.velocities[this.m_indexB].w=r,t.velocities[this.m_indexC].w=a,t.velocities[this.m_indexD].w=h},r.SolvePositionConstraints=function(e){var i,r,s,a,o,h,u=e.positions[this.m_indexA].c,l=e.positions[this.m_indexA].a,c=e.positions[this.m_indexB].c,_=e.positions[this.m_indexB].a,f=e.positions[this.m_indexC].c,d=e.positions[this.m_indexC].a,p=e.positions[this.m_indexD].c,m=e.positions[this.m_indexD].a,g=this.m_qA.SetAngle(l),v=this.m_qB.SetAngle(_),y=this.m_qC.SetAngle(d),S=this.m_qD.SetAngle(m),T=this.m_JvAC,A=this.m_JvBD,b=0;if(this.m_typeA===t.b2JointType.e_revoluteJoint)T.SetZero(),s=1,o=1,b+=this.m_iA+this.m_iC,i=l-d-this.m_referenceAngleA;else{var E=Q.MulRV(y,this.m_localAxisC,n.SolvePositionConstraints_s_u),C=Q.MulRV(y,this.m_lalcC,n.SolvePositionConstraints_s_rC),x=Q.MulRV(g,this.m_lalcA,n.SolvePositionConstraints_s_rA);T.Copy(E),o=X.CrossVV(C,E),s=X.CrossVV(x,E),b+=this.m_mC+this.m_mA+this.m_iC*o*o+this.m_iA*s*s;var w=this.m_lalcC,R=Q.MulTRV(y,X.AddVV(x,X.SubVV(u,f,X.s_t0),X.s_t0),X.s_t0);i=X.DotVV(X.SubVV(R,w,X.s_t0),this.m_localAxisC)}if(this.m_typeB===t.b2JointType.e_revoluteJoint)A.SetZero(),a=this.m_ratio,h=this.m_ratio,b+=this.m_ratio*this.m_ratio*(this.m_iB+this.m_iD),r=_-m-this.m_referenceAngleB;else{var I=Q.MulRV(S,this.m_localAxisD,n.SolvePositionConstraints_s_u),D=Q.MulRV(S,this.m_lalcD,n.SolvePositionConstraints_s_rD),B=Q.MulRV(v,this.m_lalcB,n.SolvePositionConstraints_s_rB);X.MulSV(this.m_ratio,I,A),h=this.m_ratio*X.CrossVV(D,I),a=this.m_ratio*X.CrossVV(B,I),b+=this.m_ratio*this.m_ratio*(this.m_mD+this.m_mB)+this.m_iD*h*h+this.m_iB*a*a;var M=this.m_lalcD,P=Q.MulTRV(S,X.AddVV(B,X.SubVV(c,p,X.s_t0),X.s_t0),X.s_t0);r=X.DotVV(X.SubVV(P,M,X.s_t0),this.m_localAxisD)}var O=i+this.m_ratio*r-this.m_constant,L=0;return b>0&&(L=-O/b),u.SelfMulAdd(this.m_mA*L,T),l+=this.m_iA*L*s,c.SelfMulAdd(this.m_mB*L,A),_+=this.m_iB*L*a,f.SelfMulSub(this.m_mC*L,T),d-=this.m_iC*L*o,p.SelfMulSub(this.m_mD*L,A),m-=this.m_iD*L*h,e.positions[this.m_indexA].a=l,e.positions[this.m_indexB].a=_,e.positions[this.m_indexC].a=d,e.positions[this.m_indexD].a=m,!0},r.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},r.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},r.GetReactionForce=function(t,e){return X.MulSV(t*this.m_impulse,this.m_JvAC,e)},r.GetReactionTorque=function(t){return t*this.m_impulse*this.m_JwA},r.GetJoint1=function(){return this.m_joint1},r.GetJoint2=function(){return this.m_joint2},r.GetRatio=function(){return this.m_ratio},r.SetRatio=function(t){this.m_ratio=t},r.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex,n=this.m_joint1.m_index,r=this.m_joint2.m_index;t(" const jd: b2GearJointDef = new b2GearJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.joint1 = joints[%d];\n",n),t(" jd.joint2 = joints[%d];\n",r),t(" jd.ratio = %.15f;\n",this.m_ratio),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},n}(Mi);Vi.InitVelocityConstraints_s_u=new X,Vi.InitVelocityConstraints_s_rA=new X,Vi.InitVelocityConstraints_s_rB=new X,Vi.InitVelocityConstraints_s_rC=new X,Vi.InitVelocityConstraints_s_rD=new X,Vi.SolvePositionConstraints_s_u=new X,Vi.SolvePositionConstraints_s_rA=new X,Vi.SolvePositionConstraints_s_rB=new X,Vi.SolvePositionConstraints_s_rC=new X,Vi.SolvePositionConstraints_s_rD=new X;var Ui=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_motorJoint)||this).linearOffset=new X(0,0),i.angularOffset=0,i.maxForce=1,i.maxTorque=1,i.correctionFactor=.3,i}return s(i,e),i.prototype.Initialize=function(t,e){this.bodyA=t,this.bodyB=e,this.bodyA.GetLocalPoint(this.bodyB.GetPosition(),this.linearOffset);var i=this.bodyA.GetAngle(),n=this.bodyB.GetAngle();this.angularOffset=n-i},i}(Bi),zi=function(t){function i(i){var n;return(n=t.call(this,i)||this).m_linearOffset=new X,n.m_angularOffset=0,n.m_linearImpulse=new X,n.m_angularImpulse=0,n.m_maxForce=0,n.m_maxTorque=0,n.m_correctionFactor=.3,n.m_indexA=0,n.m_indexB=0,n.m_rA=new X,n.m_rB=new X,n.m_localCenterA=new X,n.m_localCenterB=new X,n.m_linearError=new X,n.m_angularError=0,n.m_invMassA=0,n.m_invMassB=0,n.m_invIA=0,n.m_invIB=0,n.m_linearMass=new q,n.m_angularMass=0,n.m_qA=new Q,n.m_qB=new Q,n.m_K=new q,n.m_linearOffset.Copy(e(i.linearOffset,X.ZERO)),n.m_linearImpulse.SetZero(),n.m_maxForce=e(i.maxForce,0),n.m_maxTorque=e(i.maxTorque,0),n.m_correctionFactor=e(i.correctionFactor,.3),n}s(i,t);var n=i.prototype;return n.GetAnchorA=function(t){var e=this.m_bodyA.GetPosition();return t.x=e.x,t.y=e.y,t},n.GetAnchorB=function(t){var e=this.m_bodyB.GetPosition();return t.x=e.x,t.y=e.y,t},n.GetReactionForce=function(t,e){return X.MulSV(t,this.m_linearImpulse,e)},n.GetReactionTorque=function(t){return t*this.m_angularImpulse},n.SetLinearOffset=function(t){X.IsEqualToV(t,this.m_linearOffset)||(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_linearOffset.Copy(t))},n.GetLinearOffset=function(){return this.m_linearOffset},n.SetAngularOffset=function(t){t!==this.m_angularOffset&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_angularOffset=t)},n.GetAngularOffset=function(){return this.m_angularOffset},n.SetMaxForce=function(t){this.m_maxForce=t},n.GetMaxForce=function(){return this.m_maxForce},n.SetMaxTorque=function(t){this.m_maxTorque=t},n.GetMaxTorque=function(){return this.m_maxTorque},n.InitVelocityConstraints=function(t){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var e=t.positions[this.m_indexA].c,i=t.positions[this.m_indexA].a,n=t.velocities[this.m_indexA].v,r=t.velocities[this.m_indexA].w,s=t.positions[this.m_indexB].c,a=t.positions[this.m_indexB].a,o=t.velocities[this.m_indexB].v,h=t.velocities[this.m_indexB].w,u=this.m_qA.SetAngle(i),l=this.m_qB.SetAngle(a),c=Q.MulRV(u,X.SubVV(this.m_linearOffset,this.m_localCenterA,X.s_t0),this.m_rA),_=Q.MulRV(l,X.NegV(this.m_localCenterB,X.s_t0),this.m_rB),f=this.m_invMassA,d=this.m_invMassB,p=this.m_invIA,m=this.m_invIB,g=this.m_K;if(g.ex.x=f+d+p*c.y*c.y+m*_.y*_.y,g.ex.y=-p*c.x*c.y-m*_.x*_.y,g.ey.x=g.ex.y,g.ey.y=f+d+p*c.x*c.x+m*_.x*_.x,g.GetInverse(this.m_linearMass),this.m_angularMass=p+m,this.m_angularMass>0&&(this.m_angularMass=1/this.m_angularMass),X.SubVV(X.AddVV(s,_,X.s_t0),X.AddVV(e,c,X.s_t1),this.m_linearError),this.m_angularError=a-i-this.m_angularOffset,t.step.warmStarting){this.m_linearImpulse.SelfMul(t.step.dtRatio),this.m_angularImpulse*=t.step.dtRatio;var v=this.m_linearImpulse;n.SelfMulSub(f,v),r-=p*(X.CrossVV(c,v)+this.m_angularImpulse),o.SelfMulAdd(d,v),h+=m*(X.CrossVV(_,v)+this.m_angularImpulse)}else this.m_linearImpulse.SetZero(),this.m_angularImpulse=0;t.velocities[this.m_indexA].w=r,t.velocities[this.m_indexB].w=h},n.SolveVelocityConstraints=function(t){var e=t.velocities[this.m_indexA].v,n=t.velocities[this.m_indexA].w,r=t.velocities[this.m_indexB].v,s=t.velocities[this.m_indexB].w,a=this.m_invMassA,o=this.m_invMassB,h=this.m_invIA,u=this.m_invIB,l=t.step.dt,c=t.step.inv_dt,_=s-n+c*this.m_correctionFactor*this.m_angularError,f=-this.m_angularMass*_,d=this.m_angularImpulse,p=l*this.m_maxTorque;this.m_angularImpulse=O(this.m_angularImpulse+f,-p,p),n-=h*(f=this.m_angularImpulse-d),s+=u*f;var m=this.m_rA,g=this.m_rB,v=X.AddVV(X.SubVV(X.AddVV(r,X.CrossSV(s,g,X.s_t0),X.s_t0),X.AddVV(e,X.CrossSV(n,m,X.s_t1),X.s_t1),X.s_t2),X.MulSV(c*this.m_correctionFactor,this.m_linearError,X.s_t3),i.SolveVelocityConstraints_s_Cdot_v2),y=q.MulMV(this.m_linearMass,v,i.SolveVelocityConstraints_s_impulse_v2).SelfNeg(),S=i.SolveVelocityConstraints_s_oldImpulse_v2.Copy(this.m_linearImpulse);this.m_linearImpulse.SelfAdd(y);var T=l*this.m_maxForce;this.m_linearImpulse.LengthSquared()>T*T&&(this.m_linearImpulse.Normalize(),this.m_linearImpulse.SelfMul(T)),X.SubVV(this.m_linearImpulse,S,y),e.SelfMulSub(a,y),n-=h*X.CrossVV(m,y),r.SelfMulAdd(o,y),s+=u*X.CrossVV(g,y),t.velocities[this.m_indexA].w=n,t.velocities[this.m_indexB].w=s},n.SolvePositionConstraints=function(){return!0},n.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2MotorJointDef = new b2MotorJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.linearOffset.Set(%.15f, %.15f);\n",this.m_linearOffset.x,this.m_linearOffset.y),t(" jd.angularOffset = %.15f;\n",this.m_angularOffset),t(" jd.maxForce = %.15f;\n",this.m_maxForce),t(" jd.maxTorque = %.15f;\n",this.m_maxTorque),t(" jd.correctionFactor = %.15f;\n",this.m_correctionFactor),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},i}(Mi);zi.SolveVelocityConstraints_s_Cdot_v2=new X,zi.SolveVelocityConstraints_s_impulse_v2=new X,zi.SolveVelocityConstraints_s_oldImpulse_v2=new X;var Hi=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_mouseJoint)||this).target=new X,i.maxForce=0,i.frequencyHz=5,i.dampingRatio=.7,i}return s(i,e),i}(Bi),Wi=function(t){function i(i){var n;return(n=t.call(this,i)||this).m_localAnchorB=new X,n.m_targetA=new X,n.m_frequencyHz=0,n.m_dampingRatio=0,n.m_beta=0,n.m_impulse=new X,n.m_maxForce=0,n.m_gamma=0,n.m_indexA=0,n.m_indexB=0,n.m_rB=new X,n.m_localCenterB=new X,n.m_invMassB=0,n.m_invIB=0,n.m_mass=new q,n.m_C=new X,n.m_qB=new Q,n.m_lalcB=new X,n.m_K=new q,n.m_targetA.Copy(e(i.target,X.ZERO)),Z.MulTXV(n.m_bodyB.GetTransform(),n.m_targetA,n.m_localAnchorB),n.m_maxForce=e(i.maxForce,0),n.m_impulse.SetZero(),n.m_frequencyHz=e(i.frequencyHz,0),n.m_dampingRatio=e(i.dampingRatio,0),n.m_beta=0,n.m_gamma=0,n}s(i,t);var n=i.prototype;return n.SetTarget=function(t){this.m_bodyB.IsAwake()||this.m_bodyB.SetAwake(!0),this.m_targetA.Copy(t)},n.GetTarget=function(){return this.m_targetA},n.SetMaxForce=function(t){this.m_maxForce=t},n.GetMaxForce=function(){return this.m_maxForce},n.SetFrequency=function(t){this.m_frequencyHz=t},n.GetFrequency=function(){return this.m_frequencyHz},n.SetDampingRatio=function(t){this.m_dampingRatio=t},n.GetDampingRatio=function(){return this.m_dampingRatio},n.InitVelocityConstraints=function(t){this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIB=this.m_bodyB.m_invI;var e=t.positions[this.m_indexB].c,i=t.positions[this.m_indexB].a,n=t.velocities[this.m_indexB].v,r=t.velocities[this.m_indexB].w,s=this.m_qB.SetAngle(i),a=this.m_bodyB.GetMass(),h=2*o*this.m_frequencyHz,u=2*a*this.m_dampingRatio*h,l=a*h*h,c=t.step.dt;this.m_gamma=c*(u+c*l),0!==this.m_gamma&&(this.m_gamma=1/this.m_gamma),this.m_beta=c*l*this.m_gamma,X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB),Q.MulRV(s,this.m_lalcB,this.m_rB);var _=this.m_K;_.ex.x=this.m_invMassB+this.m_invIB*this.m_rB.y*this.m_rB.y+this.m_gamma,_.ex.y=-this.m_invIB*this.m_rB.x*this.m_rB.y,_.ey.x=_.ex.y,_.ey.y=this.m_invMassB+this.m_invIB*this.m_rB.x*this.m_rB.x+this.m_gamma,_.GetInverse(this.m_mass),this.m_C.x=e.x+this.m_rB.x-this.m_targetA.x,this.m_C.y=e.y+this.m_rB.y-this.m_targetA.y,this.m_C.SelfMul(this.m_beta),r*=.98,t.step.warmStarting?(this.m_impulse.SelfMul(t.step.dtRatio),n.x+=this.m_invMassB*this.m_impulse.x,n.y+=this.m_invMassB*this.m_impulse.y,r+=this.m_invIB*X.CrossVV(this.m_rB,this.m_impulse)):this.m_impulse.SetZero(),t.velocities[this.m_indexB].w=r},n.SolveVelocityConstraints=function(t){var e=t.velocities[this.m_indexB].v,n=t.velocities[this.m_indexB].w,r=X.AddVCrossSV(e,n,this.m_rB,i.SolveVelocityConstraints_s_Cdot),s=q.MulMV(this.m_mass,X.AddVV(r,X.AddVV(this.m_C,X.MulSV(this.m_gamma,this.m_impulse,X.s_t0),X.s_t0),X.s_t0).SelfNeg(),i.SolveVelocityConstraints_s_impulse),a=i.SolveVelocityConstraints_s_oldImpulse.Copy(this.m_impulse);this.m_impulse.SelfAdd(s);var o=t.step.dt*this.m_maxForce;this.m_impulse.LengthSquared()>o*o&&this.m_impulse.SelfMul(o/this.m_impulse.Length()),X.SubVV(this.m_impulse,a,s),e.SelfMulAdd(this.m_invMassB,s),n+=this.m_invIB*X.CrossVV(this.m_rB,s),t.velocities[this.m_indexB].w=n},n.SolvePositionConstraints=function(){return!0},n.GetAnchorA=function(t){return t.x=this.m_targetA.x,t.y=this.m_targetA.y,t},n.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},n.GetReactionForce=function(t,e){return X.MulSV(t,this.m_impulse,e)},n.GetReactionTorque=function(){return 0},n.Dump=function(t){t("Mouse joint dumping is not supported.\n")},n.ShiftOrigin=function(t){this.m_targetA.SelfSub(t)},i}(Mi);Wi.SolveVelocityConstraints_s_Cdot=new X,Wi.SolveVelocityConstraints_s_impulse=new X,Wi.SolveVelocityConstraints_s_oldImpulse=new X;var Xi=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_prismaticJoint)||this).localAnchorA=new X,i.localAnchorB=new X,i.localAxisA=new X(1,0),i.referenceAngle=0,i.enableLimit=!1,i.lowerTranslation=0,i.upperTranslation=0,i.enableMotor=!1,i.maxMotorForce=0,i.motorSpeed=0,i}return s(i,e),i.prototype.Initialize=function(t,e,i,n){this.bodyA=t,this.bodyB=e,this.bodyA.GetLocalPoint(i,this.localAnchorA),this.bodyB.GetLocalPoint(i,this.localAnchorB),this.bodyA.GetLocalVector(n,this.localAxisA),this.referenceAngle=this.bodyB.GetAngle()-this.bodyA.GetAngle()},i}(Bi),ji=function(i){function n(n){var r;return(r=i.call(this,n)||this).m_localAnchorA=new X,r.m_localAnchorB=new X,r.m_localXAxisA=new X,r.m_localYAxisA=new X,r.m_referenceAngle=0,r.m_impulse=new Y(0,0,0),r.m_motorImpulse=0,r.m_lowerTranslation=0,r.m_upperTranslation=0,r.m_maxMotorForce=0,r.m_motorSpeed=0,r.m_enableLimit=!1,r.m_enableMotor=!1,r.m_limitState=t.b2LimitState.e_inactiveLimit,r.m_indexA=0,r.m_indexB=0,r.m_localCenterA=new X,r.m_localCenterB=new X,r.m_invMassA=0,r.m_invMassB=0,r.m_invIA=0,r.m_invIB=0,r.m_axis=new X(0,0),r.m_perp=new X(0,0),r.m_s1=0,r.m_s2=0,r.m_a1=0,r.m_a2=0,r.m_K=new K,r.m_K3=new K,r.m_K2=new q,r.m_motorMass=0,r.m_qA=new Q,r.m_qB=new Q,r.m_lalcA=new X,r.m_lalcB=new X,r.m_rA=new X,r.m_rB=new X,r.m_localAnchorA.Copy(e(n.localAnchorA,X.ZERO)),r.m_localAnchorB.Copy(e(n.localAnchorB,X.ZERO)),r.m_localXAxisA.Copy(e(n.localAxisA,new X(1,0))).SelfNormalize(),X.CrossOneV(r.m_localXAxisA,r.m_localYAxisA),r.m_referenceAngle=e(n.referenceAngle,0),r.m_lowerTranslation=e(n.lowerTranslation,0),r.m_upperTranslation=e(n.upperTranslation,0),r.m_maxMotorForce=e(n.maxMotorForce,0),r.m_motorSpeed=e(n.motorSpeed,0),r.m_enableLimit=e(n.enableLimit,!1),r.m_enableMotor=e(n.enableMotor,!1),r}s(n,i);var r=n.prototype;return r.InitVelocityConstraints=function(e){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var i=e.positions[this.m_indexA].c,r=e.positions[this.m_indexA].a,s=e.velocities[this.m_indexA].v,a=e.velocities[this.m_indexA].w,o=e.positions[this.m_indexB].c,h=e.positions[this.m_indexB].a,u=e.velocities[this.m_indexB].v,l=e.velocities[this.m_indexB].w,c=this.m_qA.SetAngle(r),_=this.m_qB.SetAngle(h);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA);var f=Q.MulRV(c,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB);var d=Q.MulRV(_,this.m_lalcB,this.m_rB),p=X.AddVV(X.SubVV(o,i,X.s_t0),X.SubVV(d,f,X.s_t1),n.InitVelocityConstraints_s_d),m=this.m_invMassA,g=this.m_invMassB,v=this.m_invIA,y=this.m_invIB;if(Q.MulRV(c,this.m_localXAxisA,this.m_axis),this.m_a1=X.CrossVV(X.AddVV(p,f,X.s_t0),this.m_axis),this.m_a2=X.CrossVV(d,this.m_axis),this.m_motorMass=m+g+v*this.m_a1*this.m_a1+y*this.m_a2*this.m_a2,this.m_motorMass>0&&(this.m_motorMass=1/this.m_motorMass),Q.MulRV(c,this.m_localYAxisA,this.m_perp),this.m_s1=X.CrossVV(X.AddVV(p,f,X.s_t0),this.m_perp),this.m_s2=X.CrossVV(d,this.m_perp),this.m_K.ex.x=m+g+v*this.m_s1*this.m_s1+y*this.m_s2*this.m_s2,this.m_K.ex.y=v*this.m_s1+y*this.m_s2,this.m_K.ex.z=v*this.m_s1*this.m_a1+y*this.m_s2*this.m_a2,this.m_K.ey.x=this.m_K.ex.y,this.m_K.ey.y=v+y,0===this.m_K.ey.y&&(this.m_K.ey.y=1),this.m_K.ey.z=v*this.m_a1+y*this.m_a2,this.m_K.ez.x=this.m_K.ex.z,this.m_K.ez.y=this.m_K.ey.z,this.m_K.ez.z=m+g+v*this.m_a1*this.m_a1+y*this.m_a2*this.m_a2,this.m_enableLimit){var S=X.DotVV(this.m_axis,p);B(this.m_upperTranslation-this.m_lowerTranslation)<.016?this.m_limitState=t.b2LimitState.e_equalLimits:S<=this.m_lowerTranslation?this.m_limitState!==t.b2LimitState.e_atLowerLimit&&(this.m_limitState=t.b2LimitState.e_atLowerLimit,this.m_impulse.z=0):S>=this.m_upperTranslation?this.m_limitState!==t.b2LimitState.e_atUpperLimit&&(this.m_limitState=t.b2LimitState.e_atUpperLimit,this.m_impulse.z=0):(this.m_limitState=t.b2LimitState.e_inactiveLimit,this.m_impulse.z=0)}else this.m_limitState=t.b2LimitState.e_inactiveLimit,this.m_impulse.z=0;if(this.m_enableMotor||(this.m_motorImpulse=0),e.step.warmStarting){this.m_impulse.SelfMul(e.step.dtRatio),this.m_motorImpulse*=e.step.dtRatio;var T=X.AddVV(X.MulSV(this.m_impulse.x,this.m_perp,X.s_t0),X.MulSV(this.m_motorImpulse+this.m_impulse.z,this.m_axis,X.s_t1),n.InitVelocityConstraints_s_P),A=this.m_impulse.x*this.m_s1+this.m_impulse.y+(this.m_motorImpulse+this.m_impulse.z)*this.m_a1,b=this.m_impulse.x*this.m_s2+this.m_impulse.y+(this.m_motorImpulse+this.m_impulse.z)*this.m_a2;s.SelfMulSub(m,T),a-=v*A,u.SelfMulAdd(g,T),l+=y*b}else this.m_impulse.SetZero(),this.m_motorImpulse=0;e.velocities[this.m_indexA].w=a,e.velocities[this.m_indexB].w=l},r.SolveVelocityConstraints=function(e){var i=e.velocities[this.m_indexA].v,r=e.velocities[this.m_indexA].w,s=e.velocities[this.m_indexB].v,a=e.velocities[this.m_indexB].w,o=this.m_invMassA,h=this.m_invMassB,u=this.m_invIA,l=this.m_invIB;if(this.m_enableMotor&&this.m_limitState!==t.b2LimitState.e_equalLimits){var c=X.DotVV(this.m_axis,X.SubVV(s,i,X.s_t0))+this.m_a2*a-this.m_a1*r,_=this.m_motorMass*(this.m_motorSpeed-c),f=this.m_motorImpulse,d=e.step.dt*this.m_maxMotorForce;this.m_motorImpulse=O(this.m_motorImpulse+_,-d,d),_=this.m_motorImpulse-f;var p=X.MulSV(_,this.m_axis,n.SolveVelocityConstraints_s_P),m=_*this.m_a1,g=_*this.m_a2;i.SelfMulSub(o,p),r-=u*m,s.SelfMulAdd(h,p),a+=l*g}var v=X.DotVV(this.m_perp,X.SubVV(s,i,X.s_t0))+this.m_s2*a-this.m_s1*r,y=a-r;if(this.m_enableLimit&&this.m_limitState!==t.b2LimitState.e_inactiveLimit){var S=X.DotVV(this.m_axis,X.SubVV(s,i,X.s_t0))+this.m_a2*a-this.m_a1*r,T=n.SolveVelocityConstraints_s_f1.Copy(this.m_impulse),A=this.m_K.Solve33(-v,-y,-S,n.SolveVelocityConstraints_s_df3);this.m_impulse.SelfAdd(A),this.m_limitState===t.b2LimitState.e_atLowerLimit?this.m_impulse.z=P(this.m_impulse.z,0):this.m_limitState===t.b2LimitState.e_atUpperLimit&&(this.m_impulse.z=M(this.m_impulse.z,0));var b=-v-(this.m_impulse.z-T.z)*this.m_K.ez.x,E=-y-(this.m_impulse.z-T.z)*this.m_K.ez.y,C=this.m_K.Solve22(b,E,n.SolveVelocityConstraints_s_f2r);C.x+=T.x,C.y+=T.y,this.m_impulse.x=C.x,this.m_impulse.y=C.y,A.x=this.m_impulse.x-T.x,A.y=this.m_impulse.y-T.y,A.z=this.m_impulse.z-T.z;var x=X.AddVV(X.MulSV(A.x,this.m_perp,X.s_t0),X.MulSV(A.z,this.m_axis,X.s_t1),n.SolveVelocityConstraints_s_P),w=A.x*this.m_s1+A.y+A.z*this.m_a1,R=A.x*this.m_s2+A.y+A.z*this.m_a2;i.SelfMulSub(o,x),r-=u*w,s.SelfMulAdd(h,x),a+=l*R}else{var I=this.m_K.Solve22(-v,-y,n.SolveVelocityConstraints_s_df2);this.m_impulse.x+=I.x,this.m_impulse.y+=I.y;var D=X.MulSV(I.x,this.m_perp,n.SolveVelocityConstraints_s_P),B=I.x*this.m_s1+I.y,L=I.x*this.m_s2+I.y;i.SelfMulSub(o,D),r-=u*B,s.SelfMulAdd(h,D),a+=l*L}e.velocities[this.m_indexA].w=r,e.velocities[this.m_indexB].w=a},r.SolvePositionConstraints=function(t){var e=t.positions[this.m_indexA].c,i=t.positions[this.m_indexA].a,r=t.positions[this.m_indexB].c,s=t.positions[this.m_indexB].a,a=this.m_qA.SetAngle(i),o=this.m_qB.SetAngle(s),h=this.m_invMassA,u=this.m_invMassB,_=this.m_invIA,f=this.m_invIB,p=Q.MulRV(a,this.m_lalcA,this.m_rA),m=Q.MulRV(o,this.m_lalcB,this.m_rB),g=X.SubVV(X.AddVV(r,m,X.s_t0),X.AddVV(e,p,X.s_t1),n.SolvePositionConstraints_s_d),v=Q.MulRV(a,this.m_localXAxisA,this.m_axis),y=X.CrossVV(X.AddVV(g,p,X.s_t0),v),S=X.CrossVV(m,v),T=Q.MulRV(a,this.m_localYAxisA,this.m_perp),A=X.CrossVV(X.AddVV(g,p,X.s_t0),T),b=X.CrossVV(m,T),E=n.SolvePositionConstraints_s_impulse,C=X.DotVV(T,g),x=s-i-this.m_referenceAngle,w=B(C),R=B(x),I=!1,D=0;if(this.m_enableLimit){var M=X.DotVV(v,g);B(this.m_upperTranslation-this.m_lowerTranslation)<.016?(D=O(M,-.2,d),w=P(w,B(M)),I=!0):M<=this.m_lowerTranslation?(D=O(M-this.m_lowerTranslation+l,-.2,0),w=P(w,this.m_lowerTranslation-M),I=!0):M>=this.m_upperTranslation&&(D=O(M-this.m_upperTranslation-l,0,d),w=P(w,M-this.m_upperTranslation),I=!0)}if(I){var L=h+u+_*A*A+f*b*b,N=_*A+f*b,F=_*A*y+f*b*S,k=_+f;0===k&&(k=1);var G=_*y+f*S,V=h+u+_*y*y+f*S*S,U=this.m_K3;U.ex.SetXYZ(L,N,F),U.ey.SetXYZ(N,k,G),U.ez.SetXYZ(F,G,V),E=U.Solve33(-C,-x,-D,E)}else{var z=h+u+_*A*A+f*b*b,H=_*A+f*b,W=_+f;0===W&&(W=1);var j=this.m_K2;j.ex.Set(z,H),j.ey.Set(H,W);var Y=j.Solve(-C,-x,n.SolvePositionConstraints_s_impulse1);E.x=Y.x,E.y=Y.y,E.z=0}var q=X.AddVV(X.MulSV(E.x,T,X.s_t0),X.MulSV(E.z,v,X.s_t1),n.SolvePositionConstraints_s_P),K=E.x*A+E.y+E.z*y,Z=E.x*b+E.y+E.z*S;return e.SelfMulSub(h,q),i-=_*K,r.SelfMulAdd(u,q),s+=f*Z,t.positions[this.m_indexA].a=i,t.positions[this.m_indexB].a=s,w<=l&&R<=c},r.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},r.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},r.GetReactionForce=function(t,e){return e.x=t*(this.m_impulse.x*this.m_perp.x+(this.m_motorImpulse+this.m_impulse.z)*this.m_axis.x),e.y=t*(this.m_impulse.x*this.m_perp.y+(this.m_motorImpulse+this.m_impulse.z)*this.m_axis.y),e},r.GetReactionTorque=function(t){return t*this.m_impulse.y},r.GetLocalAnchorA=function(){return this.m_localAnchorA},r.GetLocalAnchorB=function(){return this.m_localAnchorB},r.GetLocalAxisA=function(){return this.m_localXAxisA},r.GetReferenceAngle=function(){return this.m_referenceAngle},r.GetJointTranslation=function(){var t=this.m_bodyA.GetWorldPoint(this.m_localAnchorA,n.GetJointTranslation_s_pA),e=this.m_bodyB.GetWorldPoint(this.m_localAnchorB,n.GetJointTranslation_s_pB),i=X.SubVV(e,t,n.GetJointTranslation_s_d),r=this.m_bodyA.GetWorldVector(this.m_localXAxisA,n.GetJointTranslation_s_axis);return X.DotVV(i,r)},r.GetJointSpeed=function(){var t=this.m_bodyA,e=this.m_bodyB;X.SubVV(this.m_localAnchorA,t.m_sweep.localCenter,this.m_lalcA);var i=Q.MulRV(t.m_xf.q,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,e.m_sweep.localCenter,this.m_lalcB);var n=Q.MulRV(e.m_xf.q,this.m_lalcB,this.m_rB),r=X.AddVV(t.m_sweep.c,i,X.s_t0),s=X.AddVV(e.m_sweep.c,n,X.s_t1),a=X.SubVV(s,r,X.s_t2),o=t.GetWorldVector(this.m_localXAxisA,this.m_axis),h=t.m_linearVelocity,u=e.m_linearVelocity,l=t.m_angularVelocity,c=e.m_angularVelocity;return X.DotVV(a,X.CrossSV(l,o,X.s_t0))+X.DotVV(o,X.SubVV(X.AddVCrossSV(u,c,n,X.s_t0),X.AddVCrossSV(h,l,i,X.s_t1),X.s_t0))},r.IsLimitEnabled=function(){return this.m_enableLimit},r.EnableLimit=function(t){t!==this.m_enableLimit&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_enableLimit=t,this.m_impulse.z=0)},r.GetLowerLimit=function(){return this.m_lowerTranslation},r.GetUpperLimit=function(){return this.m_upperTranslation},r.SetLimits=function(t,e){t===this.m_lowerTranslation&&e===this.m_upperTranslation||(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_lowerTranslation=t,this.m_upperTranslation=e,this.m_impulse.z=0)},r.IsMotorEnabled=function(){return this.m_enableMotor},r.EnableMotor=function(t){t!==this.m_enableMotor&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_enableMotor=t)},r.SetMotorSpeed=function(t){t!==this.m_motorSpeed&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_motorSpeed=t)},r.GetMotorSpeed=function(){return this.m_motorSpeed},r.SetMaxMotorForce=function(t){t!==this.m_maxMotorForce&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_maxMotorForce=t)},r.GetMaxMotorForce=function(){return this.m_maxMotorForce},r.GetMotorForce=function(t){return t*this.m_motorImpulse},r.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2PrismaticJointDef = new b2PrismaticJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.localAnchorA.Set(%.15f, %.15f);\n",this.m_localAnchorA.x,this.m_localAnchorA.y),t(" jd.localAnchorB.Set(%.15f, %.15f);\n",this.m_localAnchorB.x,this.m_localAnchorB.y),t(" jd.localAxisA.Set(%.15f, %.15f);\n",this.m_localXAxisA.x,this.m_localXAxisA.y),t(" jd.referenceAngle = %.15f;\n",this.m_referenceAngle),t(" jd.enableLimit = %s;\n",this.m_enableLimit?"true":"false"),t(" jd.lowerTranslation = %.15f;\n",this.m_lowerTranslation),t(" jd.upperTranslation = %.15f;\n",this.m_upperTranslation),t(" jd.enableMotor = %s;\n",this.m_enableMotor?"true":"false"),t(" jd.motorSpeed = %.15f;\n",this.m_motorSpeed),t(" jd.maxMotorForce = %.15f;\n",this.m_maxMotorForce),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},n}(Mi);ji.InitVelocityConstraints_s_d=new X,ji.InitVelocityConstraints_s_P=new X,ji.SolveVelocityConstraints_s_P=new X,ji.SolveVelocityConstraints_s_f2r=new X,ji.SolveVelocityConstraints_s_f1=new Y,ji.SolveVelocityConstraints_s_df3=new Y,ji.SolveVelocityConstraints_s_df2=new X,ji.SolvePositionConstraints_s_d=new X,ji.SolvePositionConstraints_s_impulse=new Y,ji.SolvePositionConstraints_s_impulse1=new X,ji.SolvePositionConstraints_s_P=new X,ji.GetJointTranslation_s_pA=new X,ji.GetJointTranslation_s_pB=new X,ji.GetJointTranslation_s_d=new X,ji.GetJointTranslation_s_axis=new X;var Yi=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_pulleyJoint)||this).groundAnchorA=new X(-1,1),i.groundAnchorB=new X(1,1),i.localAnchorA=new X(-1,0),i.localAnchorB=new X(1,0),i.lengthA=0,i.lengthB=0,i.ratio=1,i.collideConnected=!0,i}return s(i,e),i.prototype.Initialize=function(t,e,i,n,r,s,a){this.bodyA=t,this.bodyB=e,this.groundAnchorA.Copy(i),this.groundAnchorB.Copy(n),this.bodyA.GetLocalPoint(r,this.localAnchorA),this.bodyB.GetLocalPoint(s,this.localAnchorB),this.lengthA=X.DistanceVV(r,i),this.lengthB=X.DistanceVV(s,n),this.ratio=a},i}(Bi),qi=function(t){function i(i){var n;return(n=t.call(this,i)||this).m_groundAnchorA=new X,n.m_groundAnchorB=new X,n.m_lengthA=0,n.m_lengthB=0,n.m_localAnchorA=new X,n.m_localAnchorB=new X,n.m_constant=0,n.m_ratio=0,n.m_impulse=0,n.m_indexA=0,n.m_indexB=0,n.m_uA=new X,n.m_uB=new X,n.m_rA=new X,n.m_rB=new X,n.m_localCenterA=new X,n.m_localCenterB=new X,n.m_invMassA=0,n.m_invMassB=0,n.m_invIA=0,n.m_invIB=0,n.m_mass=0,n.m_qA=new Q,n.m_qB=new Q,n.m_lalcA=new X,n.m_lalcB=new X,n.m_groundAnchorA.Copy(e(i.groundAnchorA,new X(-1,1))),n.m_groundAnchorB.Copy(e(i.groundAnchorB,new X(1,0))),n.m_localAnchorA.Copy(e(i.localAnchorA,new X(-1,0))),n.m_localAnchorB.Copy(e(i.localAnchorB,new X(1,0))),n.m_lengthA=e(i.lengthA,0),n.m_lengthB=e(i.lengthB,0),n.m_ratio=e(i.ratio,1),n.m_constant=e(i.lengthA,0)+n.m_ratio*e(i.lengthB,0),n.m_impulse=0,n}s(i,t);var n=i.prototype;return n.InitVelocityConstraints=function(t){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var e=t.positions[this.m_indexA].c,n=t.positions[this.m_indexA].a,r=t.velocities[this.m_indexA].v,s=t.velocities[this.m_indexA].w,a=t.positions[this.m_indexB].c,o=t.positions[this.m_indexB].a,h=t.velocities[this.m_indexB].v,u=t.velocities[this.m_indexB].w,l=this.m_qA.SetAngle(n),c=this.m_qB.SetAngle(o);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA),Q.MulRV(l,this.m_lalcA,this.m_rA),X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB),Q.MulRV(c,this.m_lalcB,this.m_rB),this.m_uA.Copy(e).SelfAdd(this.m_rA).SelfSub(this.m_groundAnchorA),this.m_uB.Copy(a).SelfAdd(this.m_rB).SelfSub(this.m_groundAnchorB);var _=this.m_uA.Length(),f=this.m_uB.Length();_>.08?this.m_uA.SelfMul(1/_):this.m_uA.SetZero(),f>.08?this.m_uB.SelfMul(1/f):this.m_uB.SetZero();var d=X.CrossVV(this.m_rA,this.m_uA),p=X.CrossVV(this.m_rB,this.m_uB),m=this.m_invMassA+this.m_invIA*d*d,g=this.m_invMassB+this.m_invIB*p*p;if(this.m_mass=m+this.m_ratio*this.m_ratio*g,this.m_mass>0&&(this.m_mass=1/this.m_mass),t.step.warmStarting){this.m_impulse*=t.step.dtRatio;var v=X.MulSV(-this.m_impulse,this.m_uA,i.InitVelocityConstraints_s_PA),y=X.MulSV(-this.m_ratio*this.m_impulse,this.m_uB,i.InitVelocityConstraints_s_PB);r.SelfMulAdd(this.m_invMassA,v),s+=this.m_invIA*X.CrossVV(this.m_rA,v),h.SelfMulAdd(this.m_invMassB,y),u+=this.m_invIB*X.CrossVV(this.m_rB,y)}else this.m_impulse=0;t.velocities[this.m_indexA].w=s,t.velocities[this.m_indexB].w=u},n.SolveVelocityConstraints=function(t){var e=t.velocities[this.m_indexA].v,n=t.velocities[this.m_indexA].w,r=t.velocities[this.m_indexB].v,s=t.velocities[this.m_indexB].w,a=X.AddVCrossSV(e,n,this.m_rA,i.SolveVelocityConstraints_s_vpA),o=X.AddVCrossSV(r,s,this.m_rB,i.SolveVelocityConstraints_s_vpB),h=-X.DotVV(this.m_uA,a)-this.m_ratio*X.DotVV(this.m_uB,o),u=-this.m_mass*h;this.m_impulse+=u;var l=X.MulSV(-u,this.m_uA,i.SolveVelocityConstraints_s_PA),c=X.MulSV(-this.m_ratio*u,this.m_uB,i.SolveVelocityConstraints_s_PB);e.SelfMulAdd(this.m_invMassA,l),n+=this.m_invIA*X.CrossVV(this.m_rA,l),r.SelfMulAdd(this.m_invMassB,c),s+=this.m_invIB*X.CrossVV(this.m_rB,c),t.velocities[this.m_indexA].w=n,t.velocities[this.m_indexB].w=s},n.SolvePositionConstraints=function(t){var e=t.positions[this.m_indexA].c,n=t.positions[this.m_indexA].a,r=t.positions[this.m_indexB].c,s=t.positions[this.m_indexB].a,a=this.m_qA.SetAngle(n),o=this.m_qB.SetAngle(s);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA);var h=Q.MulRV(a,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB);var u=Q.MulRV(o,this.m_lalcB,this.m_rB),c=this.m_uA.Copy(e).SelfAdd(h).SelfSub(this.m_groundAnchorA),_=this.m_uB.Copy(r).SelfAdd(u).SelfSub(this.m_groundAnchorB),f=c.Length(),d=_.Length();f>.08?c.SelfMul(1/f):c.SetZero(),d>.08?_.SelfMul(1/d):_.SetZero();var p=X.CrossVV(h,c),m=X.CrossVV(u,_),g=this.m_invMassA+this.m_invIA*p*p,v=this.m_invMassB+this.m_invIB*m*m,y=g+this.m_ratio*this.m_ratio*v;y>0&&(y=1/y);var S=this.m_constant-f-this.m_ratio*d,T=B(S),A=-y*S,b=X.MulSV(-A,c,i.SolvePositionConstraints_s_PA),E=X.MulSV(-this.m_ratio*A,_,i.SolvePositionConstraints_s_PB);return e.SelfMulAdd(this.m_invMassA,b),n+=this.m_invIA*X.CrossVV(h,b),r.SelfMulAdd(this.m_invMassB,E),s+=this.m_invIB*X.CrossVV(u,E),t.positions[this.m_indexA].a=n,t.positions[this.m_indexB].a=s,T<l},n.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},n.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},n.GetReactionForce=function(t,e){return e.x=t*this.m_impulse*this.m_uB.x,e.y=t*this.m_impulse*this.m_uB.y,e},n.GetReactionTorque=function(){return 0},n.GetGroundAnchorA=function(){return this.m_groundAnchorA},n.GetGroundAnchorB=function(){return this.m_groundAnchorB},n.GetLengthA=function(){return this.m_lengthA},n.GetLengthB=function(){return this.m_lengthB},n.GetRatio=function(){return this.m_ratio},n.GetCurrentLengthA=function(){var t=this.m_bodyA.GetWorldPoint(this.m_localAnchorA,i.GetCurrentLengthA_s_p),e=this.m_groundAnchorA;return X.DistanceVV(t,e)},n.GetCurrentLengthB=function(){var t=this.m_bodyB.GetWorldPoint(this.m_localAnchorB,i.GetCurrentLengthB_s_p),e=this.m_groundAnchorB;return X.DistanceVV(t,e)},n.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2PulleyJointDef = new b2PulleyJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.groundAnchorA.Set(%.15f, %.15f);\n",this.m_groundAnchorA.x,this.m_groundAnchorA.y),t(" jd.groundAnchorB.Set(%.15f, %.15f);\n",this.m_groundAnchorB.x,this.m_groundAnchorB.y),t(" jd.localAnchorA.Set(%.15f, %.15f);\n",this.m_localAnchorA.x,this.m_localAnchorA.y),t(" jd.localAnchorB.Set(%.15f, %.15f);\n",this.m_localAnchorB.x,this.m_localAnchorB.y),t(" jd.lengthA = %.15f;\n",this.m_lengthA),t(" jd.lengthB = %.15f;\n",this.m_lengthB),t(" jd.ratio = %.15f;\n",this.m_ratio),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},n.ShiftOrigin=function(t){this.m_groundAnchorA.SelfSub(t),this.m_groundAnchorB.SelfSub(t)},i}(Mi);qi.InitVelocityConstraints_s_PA=new X,qi.InitVelocityConstraints_s_PB=new X,qi.SolveVelocityConstraints_s_vpA=new X,qi.SolveVelocityConstraints_s_vpB=new X,qi.SolveVelocityConstraints_s_PA=new X,qi.SolveVelocityConstraints_s_PB=new X,qi.SolvePositionConstraints_s_PA=new X,qi.SolvePositionConstraints_s_PB=new X,qi.GetCurrentLengthA_s_p=new X,qi.GetCurrentLengthB_s_p=new X;var Ki=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_revoluteJoint)||this).localAnchorA=new X(0,0),i.localAnchorB=new X(0,0),i.referenceAngle=0,i.enableLimit=!1,i.lowerAngle=0,i.upperAngle=0,i.enableMotor=!1,i.motorSpeed=0,i.maxMotorTorque=0,i}return s(i,e),i.prototype.Initialize=function(t,e,i){this.bodyA=t,this.bodyB=e,this.bodyA.GetLocalPoint(i,this.localAnchorA),this.bodyB.GetLocalPoint(i,this.localAnchorB),this.referenceAngle=this.bodyB.GetAngle()-this.bodyA.GetAngle()},i}(Bi),Qi=function(i){function n(n){var r;return(r=i.call(this,n)||this).m_localAnchorA=new X,r.m_localAnchorB=new X,r.m_impulse=new Y,r.m_motorImpulse=0,r.m_enableMotor=!1,r.m_maxMotorTorque=0,r.m_motorSpeed=0,r.m_enableLimit=!1,r.m_referenceAngle=0,r.m_lowerAngle=0,r.m_upperAngle=0,r.m_indexA=0,r.m_indexB=0,r.m_rA=new X,r.m_rB=new X,r.m_localCenterA=new X,r.m_localCenterB=new X,r.m_invMassA=0,r.m_invMassB=0,r.m_invIA=0,r.m_invIB=0,r.m_mass=new K,r.m_motorMass=0,r.m_limitState=t.b2LimitState.e_inactiveLimit,r.m_qA=new Q,r.m_qB=new Q,r.m_lalcA=new X,r.m_lalcB=new X,r.m_K=new q,r.m_localAnchorA.Copy(e(n.localAnchorA,X.ZERO)),r.m_localAnchorB.Copy(e(n.localAnchorB,X.ZERO)),r.m_referenceAngle=e(n.referenceAngle,0),r.m_impulse.SetZero(),r.m_motorImpulse=0,r.m_lowerAngle=e(n.lowerAngle,0),r.m_upperAngle=e(n.upperAngle,0),r.m_maxMotorTorque=e(n.maxMotorTorque,0),r.m_motorSpeed=e(n.motorSpeed,0),r.m_enableLimit=e(n.enableLimit,!1),r.m_enableMotor=e(n.enableMotor,!1),r.m_limitState=t.b2LimitState.e_inactiveLimit,r}s(n,i);var r=n.prototype;return r.InitVelocityConstraints=function(e){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var i=e.positions[this.m_indexA].a,r=e.velocities[this.m_indexA].v,s=e.velocities[this.m_indexA].w,a=e.positions[this.m_indexB].a,o=e.velocities[this.m_indexB].v,h=e.velocities[this.m_indexB].w,u=this.m_qA.SetAngle(i),l=this.m_qB.SetAngle(a);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA),Q.MulRV(u,this.m_lalcA,this.m_rA),X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB),Q.MulRV(l,this.m_lalcB,this.m_rB);var _=this.m_invMassA,f=this.m_invMassB,d=this.m_invIA,p=this.m_invIB,m=d+p===0;if(this.m_mass.ex.x=_+f+this.m_rA.y*this.m_rA.y*d+this.m_rB.y*this.m_rB.y*p,this.m_mass.ey.x=-this.m_rA.y*this.m_rA.x*d-this.m_rB.y*this.m_rB.x*p,this.m_mass.ez.x=-this.m_rA.y*d-this.m_rB.y*p,this.m_mass.ex.y=this.m_mass.ey.x,this.m_mass.ey.y=_+f+this.m_rA.x*this.m_rA.x*d+this.m_rB.x*this.m_rB.x*p,this.m_mass.ez.y=this.m_rA.x*d+this.m_rB.x*p,this.m_mass.ex.z=this.m_mass.ez.x,this.m_mass.ey.z=this.m_mass.ez.y,this.m_mass.ez.z=d+p,this.m_motorMass=d+p,this.m_motorMass>0&&(this.m_motorMass=1/this.m_motorMass),this.m_enableMotor&&!m||(this.m_motorImpulse=0),this.m_enableLimit&&!m){var g=a-i-this.m_referenceAngle;B(this.m_upperAngle-this.m_lowerAngle)<2*c?this.m_limitState=t.b2LimitState.e_equalLimits:g<=this.m_lowerAngle?(this.m_limitState!==t.b2LimitState.e_atLowerLimit&&(this.m_impulse.z=0),this.m_limitState=t.b2LimitState.e_atLowerLimit):g>=this.m_upperAngle?(this.m_limitState!==t.b2LimitState.e_atUpperLimit&&(this.m_impulse.z=0),this.m_limitState=t.b2LimitState.e_atUpperLimit):(this.m_limitState=t.b2LimitState.e_inactiveLimit,this.m_impulse.z=0)}else this.m_limitState=t.b2LimitState.e_inactiveLimit;if(e.step.warmStarting){this.m_impulse.SelfMul(e.step.dtRatio),this.m_motorImpulse*=e.step.dtRatio;var v=n.InitVelocityConstraints_s_P.Set(this.m_impulse.x,this.m_impulse.y);r.SelfMulSub(_,v),s-=d*(X.CrossVV(this.m_rA,v)+this.m_motorImpulse+this.m_impulse.z),o.SelfMulAdd(f,v),h+=p*(X.CrossVV(this.m_rB,v)+this.m_motorImpulse+this.m_impulse.z)}else this.m_impulse.SetZero(),this.m_motorImpulse=0;e.velocities[this.m_indexA].w=s,e.velocities[this.m_indexB].w=h},r.SolveVelocityConstraints=function(e){var i=e.velocities[this.m_indexA].v,r=e.velocities[this.m_indexA].w,s=e.velocities[this.m_indexB].v,a=e.velocities[this.m_indexB].w,o=this.m_invMassA,h=this.m_invMassB,u=this.m_invIA,l=this.m_invIB,c=u+l===0;if(this.m_enableMotor&&this.m_limitState!==t.b2LimitState.e_equalLimits&&!c){var _=a-r-this.m_motorSpeed,f=-this.m_motorMass*_,d=this.m_motorImpulse,p=e.step.dt*this.m_maxMotorTorque;this.m_motorImpulse=O(this.m_motorImpulse+f,-p,p),r-=u*(f=this.m_motorImpulse-d),a+=l*f}if(this.m_enableLimit&&this.m_limitState!==t.b2LimitState.e_inactiveLimit&&!c){var m=X.SubVV(X.AddVCrossSV(s,a,this.m_rB,X.s_t0),X.AddVCrossSV(i,r,this.m_rA,X.s_t1),n.SolveVelocityConstraints_s_Cdot1),g=a-r,v=this.m_mass.Solve33(m.x,m.y,g,n.SolveVelocityConstraints_s_impulse_v3).SelfNeg();if(this.m_limitState===t.b2LimitState.e_equalLimits)this.m_impulse.SelfAdd(v);else if(this.m_limitState===t.b2LimitState.e_atLowerLimit)if(this.m_impulse.z+v.z<0){var y=-m.x+this.m_impulse.z*this.m_mass.ez.x,S=-m.y+this.m_impulse.z*this.m_mass.ez.y,T=this.m_mass.Solve22(y,S,n.SolveVelocityConstraints_s_reduced_v2);v.x=T.x,v.y=T.y,v.z=-this.m_impulse.z,this.m_impulse.x+=T.x,this.m_impulse.y+=T.y,this.m_impulse.z=0}else this.m_impulse.SelfAdd(v);else if(this.m_limitState===t.b2LimitState.e_atUpperLimit)if(this.m_impulse.z+v.z>0){var A=-m.x+this.m_impulse.z*this.m_mass.ez.x,b=-m.y+this.m_impulse.z*this.m_mass.ez.y,E=this.m_mass.Solve22(A,b,n.SolveVelocityConstraints_s_reduced_v2);v.x=E.x,v.y=E.y,v.z=-this.m_impulse.z,this.m_impulse.x+=E.x,this.m_impulse.y+=E.y,this.m_impulse.z=0}else this.m_impulse.SelfAdd(v);var C=n.SolveVelocityConstraints_s_P.Set(v.x,v.y);i.SelfMulSub(o,C),r-=u*(X.CrossVV(this.m_rA,C)+v.z),s.SelfMulAdd(h,C),a+=l*(X.CrossVV(this.m_rB,C)+v.z)}else{var x=X.SubVV(X.AddVCrossSV(s,a,this.m_rB,X.s_t0),X.AddVCrossSV(i,r,this.m_rA,X.s_t1),n.SolveVelocityConstraints_s_Cdot_v2),w=this.m_mass.Solve22(-x.x,-x.y,n.SolveVelocityConstraints_s_impulse_v2);this.m_impulse.x+=w.x,this.m_impulse.y+=w.y,i.SelfMulSub(o,w),r-=u*X.CrossVV(this.m_rA,w),s.SelfMulAdd(h,w),a+=l*X.CrossVV(this.m_rB,w)}e.velocities[this.m_indexA].w=r,e.velocities[this.m_indexB].w=a},r.SolvePositionConstraints=function(e){var i,r=e.positions[this.m_indexA].c,s=e.positions[this.m_indexA].a,a=e.positions[this.m_indexB].c,o=e.positions[this.m_indexB].a,h=this.m_qA.SetAngle(s),u=this.m_qB.SetAngle(o),_=0,f=this.m_invIA+this.m_invIB===0;if(this.m_enableLimit&&this.m_limitState!==t.b2LimitState.e_inactiveLimit&&!f){var d=o-s-this.m_referenceAngle,m=0;if(this.m_limitState===t.b2LimitState.e_equalLimits){var g=O(d-this.m_lowerAngle,-.13962634015955555,p);m=-this.m_motorMass*g,_=B(g)}else if(this.m_limitState===t.b2LimitState.e_atLowerLimit){var v=d-this.m_lowerAngle;_=-v,v=O(v+c,-.13962634015955555,0),m=-this.m_motorMass*v}else if(this.m_limitState===t.b2LimitState.e_atUpperLimit){var y=d-this.m_upperAngle;_=y,y=O(y-c,0,p),m=-this.m_motorMass*y}s-=this.m_invIA*m,o+=this.m_invIB*m}h.SetAngle(s),u.SetAngle(o),X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA);var S=Q.MulRV(h,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB);var T=Q.MulRV(u,this.m_lalcB,this.m_rB),A=X.SubVV(X.AddVV(a,T,X.s_t0),X.AddVV(r,S,X.s_t1),n.SolvePositionConstraints_s_C_v2);i=A.Length();var b=this.m_invMassA,E=this.m_invMassB,C=this.m_invIA,x=this.m_invIB,w=this.m_K;w.ex.x=b+E+C*S.y*S.y+x*T.y*T.y,w.ex.y=-C*S.x*S.y-x*T.x*T.y,w.ey.x=w.ex.y,w.ey.y=b+E+C*S.x*S.x+x*T.x*T.x;var R=w.Solve(A.x,A.y,n.SolvePositionConstraints_s_impulse).SelfNeg();return r.SelfMulSub(b,R),s-=C*X.CrossVV(S,R),a.SelfMulAdd(E,R),o+=x*X.CrossVV(T,R),e.positions[this.m_indexA].a=s,e.positions[this.m_indexB].a=o,i<=l&&_<=c},r.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},r.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},r.GetReactionForce=function(t,e){return e.x=t*this.m_impulse.x,e.y=t*this.m_impulse.y,e},r.GetReactionTorque=function(t){return t*this.m_impulse.z},r.GetLocalAnchorA=function(){return this.m_localAnchorA},r.GetLocalAnchorB=function(){return this.m_localAnchorB},r.GetReferenceAngle=function(){return this.m_referenceAngle},r.GetJointAngle=function(){return this.m_bodyB.m_sweep.a-this.m_bodyA.m_sweep.a-this.m_referenceAngle},r.GetJointSpeed=function(){return this.m_bodyB.m_angularVelocity-this.m_bodyA.m_angularVelocity},r.IsMotorEnabled=function(){return this.m_enableMotor},r.EnableMotor=function(t){t!==this.m_enableMotor&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_enableMotor=t)},r.GetMotorTorque=function(t){return t*this.m_motorImpulse},r.GetMotorSpeed=function(){return this.m_motorSpeed},r.SetMaxMotorTorque=function(t){t!==this.m_maxMotorTorque&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_maxMotorTorque=t)},r.GetMaxMotorTorque=function(){return this.m_maxMotorTorque},r.IsLimitEnabled=function(){return this.m_enableLimit},r.EnableLimit=function(t){t!==this.m_enableLimit&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_enableLimit=t,this.m_impulse.z=0)},r.GetLowerLimit=function(){return this.m_lowerAngle},r.GetUpperLimit=function(){return this.m_upperAngle},r.SetLimits=function(t,e){t===this.m_lowerAngle&&e===this.m_upperAngle||(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_impulse.z=0,this.m_lowerAngle=t,this.m_upperAngle=e)},r.SetMotorSpeed=function(t){t!==this.m_motorSpeed&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_motorSpeed=t)},r.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2RevoluteJointDef = new b2RevoluteJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.localAnchorA.Set(%.15f, %.15f);\n",this.m_localAnchorA.x,this.m_localAnchorA.y),t(" jd.localAnchorB.Set(%.15f, %.15f);\n",this.m_localAnchorB.x,this.m_localAnchorB.y),t(" jd.referenceAngle = %.15f;\n",this.m_referenceAngle),t(" jd.enableLimit = %s;\n",this.m_enableLimit?"true":"false"),t(" jd.lowerAngle = %.15f;\n",this.m_lowerAngle),t(" jd.upperAngle = %.15f;\n",this.m_upperAngle),t(" jd.enableMotor = %s;\n",this.m_enableMotor?"true":"false"),t(" jd.motorSpeed = %.15f;\n",this.m_motorSpeed),t(" jd.maxMotorTorque = %.15f;\n",this.m_maxMotorTorque),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},n}(Mi);Qi.InitVelocityConstraints_s_P=new X,Qi.SolveVelocityConstraints_s_P=new X,Qi.SolveVelocityConstraints_s_Cdot_v2=new X,Qi.SolveVelocityConstraints_s_Cdot1=new X,Qi.SolveVelocityConstraints_s_impulse_v3=new Y,Qi.SolveVelocityConstraints_s_reduced_v2=new X,Qi.SolveVelocityConstraints_s_impulse_v2=new X,Qi.SolvePositionConstraints_s_C_v2=new X,Qi.SolvePositionConstraints_s_impulse=new X;var Zi=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_ropeJoint)||this).localAnchorA=new X(-1,0),i.localAnchorB=new X(1,0),i.maxLength=0,i}return s(i,e),i}(Bi),Ji=function(i){function n(n){var r;return(r=i.call(this,n)||this).m_localAnchorA=new X,r.m_localAnchorB=new X,r.m_maxLength=0,r.m_length=0,r.m_impulse=0,r.m_indexA=0,r.m_indexB=0,r.m_u=new X,r.m_rA=new X,r.m_rB=new X,r.m_localCenterA=new X,r.m_localCenterB=new X,r.m_invMassA=0,r.m_invMassB=0,r.m_invIA=0,r.m_invIB=0,r.m_mass=0,r.m_state=t.b2LimitState.e_inactiveLimit,r.m_qA=new Q,r.m_qB=new Q,r.m_lalcA=new X,r.m_lalcB=new X,r.m_localAnchorA.Copy(e(n.localAnchorA,new X(-1,0))),r.m_localAnchorB.Copy(e(n.localAnchorB,new X(1,0))),r.m_maxLength=e(n.maxLength,0),r}s(n,i);var r=n.prototype;return r.InitVelocityConstraints=function(e){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var i=e.positions[this.m_indexA].c,r=e.positions[this.m_indexA].a,s=e.velocities[this.m_indexA].v,a=e.velocities[this.m_indexA].w,o=e.positions[this.m_indexB].c,h=e.positions[this.m_indexB].a,u=e.velocities[this.m_indexB].v,c=e.velocities[this.m_indexB].w,_=this.m_qA.SetAngle(r),f=this.m_qB.SetAngle(h);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA),Q.MulRV(_,this.m_lalcA,this.m_rA),X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB),Q.MulRV(f,this.m_lalcB,this.m_rB),this.m_u.Copy(o).SelfAdd(this.m_rB).SelfSub(i).SelfSub(this.m_rA),this.m_length=this.m_u.Length();var d=this.m_length-this.m_maxLength;if(this.m_state=d>0?t.b2LimitState.e_atUpperLimit:t.b2LimitState.e_inactiveLimit,!(this.m_length>l))return this.m_u.SetZero(),this.m_mass=0,void(this.m_impulse=0);this.m_u.SelfMul(1/this.m_length);var p=X.CrossVV(this.m_rA,this.m_u),m=X.CrossVV(this.m_rB,this.m_u),g=this.m_invMassA+this.m_invIA*p*p+this.m_invMassB+this.m_invIB*m*m;if(this.m_mass=0!==g?1/g:0,e.step.warmStarting){this.m_impulse*=e.step.dtRatio;var v=X.MulSV(this.m_impulse,this.m_u,n.InitVelocityConstraints_s_P);s.SelfMulSub(this.m_invMassA,v),a-=this.m_invIA*X.CrossVV(this.m_rA,v),u.SelfMulAdd(this.m_invMassB,v),c+=this.m_invIB*X.CrossVV(this.m_rB,v)}else this.m_impulse=0;e.velocities[this.m_indexA].w=a,e.velocities[this.m_indexB].w=c},r.SolveVelocityConstraints=function(t){var e=t.velocities[this.m_indexA].v,i=t.velocities[this.m_indexA].w,r=t.velocities[this.m_indexB].v,s=t.velocities[this.m_indexB].w,a=X.AddVCrossSV(e,i,this.m_rA,n.SolveVelocityConstraints_s_vpA),o=X.AddVCrossSV(r,s,this.m_rB,n.SolveVelocityConstraints_s_vpB),h=this.m_length-this.m_maxLength,u=X.DotVV(this.m_u,X.SubVV(o,a,X.s_t0));h<0&&(u+=t.step.inv_dt*h);var l=-this.m_mass*u,c=this.m_impulse;this.m_impulse=M(0,this.m_impulse+l),l=this.m_impulse-c;var _=X.MulSV(l,this.m_u,n.SolveVelocityConstraints_s_P);e.SelfMulSub(this.m_invMassA,_),i-=this.m_invIA*X.CrossVV(this.m_rA,_),r.SelfMulAdd(this.m_invMassB,_),s+=this.m_invIB*X.CrossVV(this.m_rB,_),t.velocities[this.m_indexA].w=i,t.velocities[this.m_indexB].w=s},r.SolvePositionConstraints=function(t){var e=t.positions[this.m_indexA].c,i=t.positions[this.m_indexA].a,r=t.positions[this.m_indexB].c,s=t.positions[this.m_indexB].a,a=this.m_qA.SetAngle(i),o=this.m_qB.SetAngle(s);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA);var h=Q.MulRV(a,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB);var u=Q.MulRV(o,this.m_lalcB,this.m_rB),c=this.m_u.Copy(r).SelfAdd(u).SelfSub(e).SelfSub(h),_=c.Normalize(),f=_-this.m_maxLength;f=O(f,0,d);var p=-this.m_mass*f,m=X.MulSV(p,c,n.SolvePositionConstraints_s_P);return e.SelfMulSub(this.m_invMassA,m),i-=this.m_invIA*X.CrossVV(h,m),r.SelfMulAdd(this.m_invMassB,m),s+=this.m_invIB*X.CrossVV(u,m),t.positions[this.m_indexA].a=i,t.positions[this.m_indexB].a=s,_-this.m_maxLength<l},r.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},r.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},r.GetReactionForce=function(t,e){return X.MulSV(t*this.m_impulse,this.m_u,e)},r.GetReactionTorque=function(){return 0},r.GetLocalAnchorA=function(){return this.m_localAnchorA},r.GetLocalAnchorB=function(){return this.m_localAnchorB},r.SetMaxLength=function(t){this.m_maxLength=t},r.GetMaxLength=function(){return this.m_maxLength},r.GetLimitState=function(){return this.m_state},r.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2RopeJointDef = new b2RopeJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.localAnchorA.Set(%.15f, %.15f);\n",this.m_localAnchorA.x,this.m_localAnchorA.y),t(" jd.localAnchorB.Set(%.15f, %.15f);\n",this.m_localAnchorB.x,this.m_localAnchorB.y),t(" jd.maxLength = %.15f;\n",this.m_maxLength),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},n}(Mi);Ji.InitVelocityConstraints_s_P=new X,Ji.SolveVelocityConstraints_s_vpA=new X,Ji.SolveVelocityConstraints_s_vpB=new X,Ji.SolveVelocityConstraints_s_P=new X,Ji.SolvePositionConstraints_s_P=new X;var $i=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_weldJoint)||this).localAnchorA=new X,i.localAnchorB=new X,i.referenceAngle=0,i.frequencyHz=0,i.dampingRatio=0,i}return s(i,e),i.prototype.Initialize=function(t,e,i){this.bodyA=t,this.bodyB=e,this.bodyA.GetLocalPoint(i,this.localAnchorA),this.bodyB.GetLocalPoint(i,this.localAnchorB),this.referenceAngle=this.bodyB.GetAngle()-this.bodyA.GetAngle()},i}(Bi),tn=function(t){function i(i){var n;return(n=t.call(this,i)||this).m_frequencyHz=0,n.m_dampingRatio=0,n.m_bias=0,n.m_localAnchorA=new X,n.m_localAnchorB=new X,n.m_referenceAngle=0,n.m_gamma=0,n.m_impulse=new Y(0,0,0),n.m_indexA=0,n.m_indexB=0,n.m_rA=new X,n.m_rB=new X,n.m_localCenterA=new X,n.m_localCenterB=new X,n.m_invMassA=0,n.m_invMassB=0,n.m_invIA=0,n.m_invIB=0,n.m_mass=new K,n.m_qA=new Q,n.m_qB=new Q,n.m_lalcA=new X,n.m_lalcB=new X,n.m_K=new K,n.m_frequencyHz=e(i.frequencyHz,0),n.m_dampingRatio=e(i.dampingRatio,0),n.m_localAnchorA.Copy(e(i.localAnchorA,X.ZERO)),n.m_localAnchorB.Copy(e(i.localAnchorB,X.ZERO)),n.m_referenceAngle=e(i.referenceAngle,0),n.m_impulse.SetZero(),n}s(i,t);var n=i.prototype;return n.InitVelocityConstraints=function(t){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var e=t.positions[this.m_indexA].a,n=t.velocities[this.m_indexA].v,r=t.velocities[this.m_indexA].w,s=t.positions[this.m_indexB].a,a=t.velocities[this.m_indexB].v,h=t.velocities[this.m_indexB].w,u=this.m_qA.SetAngle(e),l=this.m_qB.SetAngle(s);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA),Q.MulRV(u,this.m_lalcA,this.m_rA),X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB),Q.MulRV(l,this.m_lalcB,this.m_rB);var c=this.m_invMassA,_=this.m_invMassB,f=this.m_invIA,d=this.m_invIB,p=this.m_K;if(p.ex.x=c+_+this.m_rA.y*this.m_rA.y*f+this.m_rB.y*this.m_rB.y*d,p.ey.x=-this.m_rA.y*this.m_rA.x*f-this.m_rB.y*this.m_rB.x*d,p.ez.x=-this.m_rA.y*f-this.m_rB.y*d,p.ex.y=p.ey.x,p.ey.y=c+_+this.m_rA.x*this.m_rA.x*f+this.m_rB.x*this.m_rB.x*d,p.ez.y=this.m_rA.x*f+this.m_rB.x*d,p.ex.z=p.ez.x,p.ey.z=p.ez.y,p.ez.z=f+d,this.m_frequencyHz>0){p.GetInverse22(this.m_mass);var m=f+d,g=m>0?1/m:0,v=s-e-this.m_referenceAngle,y=2*o*this.m_frequencyHz,S=2*g*this.m_dampingRatio*y,T=g*y*y,A=t.step.dt;this.m_gamma=A*(S+A*T),this.m_gamma=0!==this.m_gamma?1/this.m_gamma:0,this.m_bias=v*A*T*this.m_gamma,m+=this.m_gamma,this.m_mass.ez.z=0!==m?1/m:0}else p.GetSymInverse33(this.m_mass),this.m_gamma=0,this.m_bias=0;if(t.step.warmStarting){this.m_impulse.SelfMul(t.step.dtRatio);var b=i.InitVelocityConstraints_s_P.Set(this.m_impulse.x,this.m_impulse.y);n.SelfMulSub(c,b),r-=f*(X.CrossVV(this.m_rA,b)+this.m_impulse.z),a.SelfMulAdd(_,b),h+=d*(X.CrossVV(this.m_rB,b)+this.m_impulse.z)}else this.m_impulse.SetZero();t.velocities[this.m_indexA].w=r,t.velocities[this.m_indexB].w=h},n.SolveVelocityConstraints=function(t){var e=t.velocities[this.m_indexA].v,n=t.velocities[this.m_indexA].w,r=t.velocities[this.m_indexB].v,s=t.velocities[this.m_indexB].w,a=this.m_invMassA,o=this.m_invMassB,h=this.m_invIA,u=this.m_invIB;if(this.m_frequencyHz>0){var l=s-n,c=-this.m_mass.ez.z*(l+this.m_bias+this.m_gamma*this.m_impulse.z);this.m_impulse.z+=c,n-=h*c,s+=u*c;var _=X.SubVV(X.AddVCrossSV(r,s,this.m_rB,X.s_t0),X.AddVCrossSV(e,n,this.m_rA,X.s_t1),i.SolveVelocityConstraints_s_Cdot1),f=K.MulM33XY(this.m_mass,_.x,_.y,i.SolveVelocityConstraints_s_impulse1).SelfNeg();this.m_impulse.x+=f.x,this.m_impulse.y+=f.y;var d=f;e.SelfMulSub(a,d),n-=h*X.CrossVV(this.m_rA,d),r.SelfMulAdd(o,d),s+=u*X.CrossVV(this.m_rB,d)}else{var p=X.SubVV(X.AddVCrossSV(r,s,this.m_rB,X.s_t0),X.AddVCrossSV(e,n,this.m_rA,X.s_t1),i.SolveVelocityConstraints_s_Cdot1),m=s-n,g=K.MulM33XYZ(this.m_mass,p.x,p.y,m,i.SolveVelocityConstraints_s_impulse).SelfNeg();this.m_impulse.SelfAdd(g);var v=i.SolveVelocityConstraints_s_P.Set(g.x,g.y);e.SelfMulSub(a,v),n-=h*(X.CrossVV(this.m_rA,v)+g.z),r.SelfMulAdd(o,v),s+=u*(X.CrossVV(this.m_rB,v)+g.z)}t.velocities[this.m_indexA].w=n,t.velocities[this.m_indexB].w=s},n.SolvePositionConstraints=function(t){var e=t.positions[this.m_indexA].c,n=t.positions[this.m_indexA].a,r=t.positions[this.m_indexB].c,s=t.positions[this.m_indexB].a,a=this.m_qA.SetAngle(n),o=this.m_qB.SetAngle(s),h=this.m_invMassA,u=this.m_invMassB,_=this.m_invIA,f=this.m_invIB;X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA);var d=Q.MulRV(a,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB);var p,m,g=Q.MulRV(o,this.m_lalcB,this.m_rB),v=this.m_K;if(v.ex.x=h+u+d.y*d.y*_+g.y*g.y*f,v.ey.x=-d.y*d.x*_-g.y*g.x*f,v.ez.x=-d.y*_-g.y*f,v.ex.y=v.ey.x,v.ey.y=h+u+d.x*d.x*_+g.x*g.x*f,v.ez.y=d.x*_+g.x*f,v.ex.z=v.ez.x,v.ey.z=v.ez.y,v.ez.z=_+f,this.m_frequencyHz>0){var y=X.SubVV(X.AddVV(r,g,X.s_t0),X.AddVV(e,d,X.s_t1),i.SolvePositionConstraints_s_C1);p=y.Length(),m=0;var S=v.Solve22(y.x,y.y,i.SolvePositionConstraints_s_P).SelfNeg();e.SelfMulSub(h,S),n-=_*X.CrossVV(d,S),r.SelfMulAdd(u,S),s+=f*X.CrossVV(g,S)}else{var T=X.SubVV(X.AddVV(r,g,X.s_t0),X.AddVV(e,d,X.s_t1),i.SolvePositionConstraints_s_C1),A=s-n-this.m_referenceAngle;p=T.Length(),m=B(A);var b=v.Solve33(T.x,T.y,A,i.SolvePositionConstraints_s_impulse).SelfNeg(),E=i.SolvePositionConstraints_s_P.Set(b.x,b.y);e.SelfMulSub(h,E),n-=_*(X.CrossVV(this.m_rA,E)+b.z),r.SelfMulAdd(u,E),s+=f*(X.CrossVV(this.m_rB,E)+b.z)}return t.positions[this.m_indexA].a=n,t.positions[this.m_indexB].a=s,p<=l&&m<=c},n.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},n.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},n.GetReactionForce=function(t,e){return e.x=t*this.m_impulse.x,e.y=t*this.m_impulse.y,e},n.GetReactionTorque=function(t){return t*this.m_impulse.z},n.GetLocalAnchorA=function(){return this.m_localAnchorA},n.GetLocalAnchorB=function(){return this.m_localAnchorB},n.GetReferenceAngle=function(){return this.m_referenceAngle},n.SetFrequency=function(t){this.m_frequencyHz=t},n.GetFrequency=function(){return this.m_frequencyHz},n.SetDampingRatio=function(t){this.m_dampingRatio=t},n.GetDampingRatio=function(){return this.m_dampingRatio},n.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2WeldJointDef = new b2WeldJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.localAnchorA.Set(%.15f, %.15f);\n",this.m_localAnchorA.x,this.m_localAnchorA.y),t(" jd.localAnchorB.Set(%.15f, %.15f);\n",this.m_localAnchorB.x,this.m_localAnchorB.y),t(" jd.referenceAngle = %.15f;\n",this.m_referenceAngle),t(" jd.frequencyHz = %.15f;\n",this.m_frequencyHz),t(" jd.dampingRatio = %.15f;\n",this.m_dampingRatio),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},i}(Mi);tn.InitVelocityConstraints_s_P=new X,tn.SolveVelocityConstraints_s_Cdot1=new X,tn.SolveVelocityConstraints_s_impulse1=new X,tn.SolveVelocityConstraints_s_impulse=new Y,tn.SolveVelocityConstraints_s_P=new X,tn.SolvePositionConstraints_s_C1=new X,tn.SolvePositionConstraints_s_P=new X,tn.SolvePositionConstraints_s_impulse=new Y;var en=function(e){function i(){var i;return(i=e.call(this,t.b2JointType.e_wheelJoint)||this).localAnchorA=new X(0,0),i.localAnchorB=new X(0,0),i.localAxisA=new X(1,0),i.enableMotor=!1,i.maxMotorTorque=0,i.motorSpeed=0,i.frequencyHz=2,i.dampingRatio=.7,i}return s(i,e),i.prototype.Initialize=function(t,e,i,n){this.bodyA=t,this.bodyB=e,this.bodyA.GetLocalPoint(i,this.localAnchorA),this.bodyB.GetLocalPoint(i,this.localAnchorB),this.bodyA.GetLocalVector(n,this.localAxisA)},i}(Bi),nn=function(t){function i(i){var n;return(n=t.call(this,i)||this).m_frequencyHz=0,n.m_dampingRatio=0,n.m_localAnchorA=new X,n.m_localAnchorB=new X,n.m_localXAxisA=new X,n.m_localYAxisA=new X,n.m_impulse=0,n.m_motorImpulse=0,n.m_springImpulse=0,n.m_maxMotorTorque=0,n.m_motorSpeed=0,n.m_enableMotor=!1,n.m_indexA=0,n.m_indexB=0,n.m_localCenterA=new X,n.m_localCenterB=new X,n.m_invMassA=0,n.m_invMassB=0,n.m_invIA=0,n.m_invIB=0,n.m_ax=new X,n.m_ay=new X,n.m_sAx=0,n.m_sBx=0,n.m_sAy=0,n.m_sBy=0,n.m_mass=0,n.m_motorMass=0,n.m_springMass=0,n.m_bias=0,n.m_gamma=0,n.m_qA=new Q,n.m_qB=new Q,n.m_lalcA=new X,n.m_lalcB=new X,n.m_rA=new X,n.m_rB=new X,n.m_frequencyHz=e(i.frequencyHz,2),n.m_dampingRatio=e(i.dampingRatio,.7),n.m_localAnchorA.Copy(e(i.localAnchorA,X.ZERO)),n.m_localAnchorB.Copy(e(i.localAnchorB,X.ZERO)),n.m_localXAxisA.Copy(e(i.localAxisA,X.UNITX)),X.CrossOneV(n.m_localXAxisA,n.m_localYAxisA),n.m_maxMotorTorque=e(i.maxMotorTorque,0),n.m_motorSpeed=e(i.motorSpeed,0),n.m_enableMotor=e(i.enableMotor,!1),n.m_ax.SetZero(),n.m_ay.SetZero(),n}s(i,t);var n=i.prototype;return n.GetMotorSpeed=function(){return this.m_motorSpeed},n.GetMaxMotorTorque=function(){return this.m_maxMotorTorque},n.SetSpringFrequencyHz=function(t){this.m_frequencyHz=t},n.GetSpringFrequencyHz=function(){return this.m_frequencyHz},n.SetSpringDampingRatio=function(t){this.m_dampingRatio=t},n.GetSpringDampingRatio=function(){return this.m_dampingRatio},n.InitVelocityConstraints=function(t){this.m_indexA=this.m_bodyA.m_islandIndex,this.m_indexB=this.m_bodyB.m_islandIndex,this.m_localCenterA.Copy(this.m_bodyA.m_sweep.localCenter),this.m_localCenterB.Copy(this.m_bodyB.m_sweep.localCenter),this.m_invMassA=this.m_bodyA.m_invMass,this.m_invMassB=this.m_bodyB.m_invMass,this.m_invIA=this.m_bodyA.m_invI,this.m_invIB=this.m_bodyB.m_invI;var e=this.m_invMassA,n=this.m_invMassB,r=this.m_invIA,s=this.m_invIB,a=t.positions[this.m_indexA].c,h=t.positions[this.m_indexA].a,u=t.velocities[this.m_indexA].v,l=t.velocities[this.m_indexA].w,c=t.positions[this.m_indexB].c,_=t.positions[this.m_indexB].a,f=t.velocities[this.m_indexB].v,d=t.velocities[this.m_indexB].w,p=this.m_qA.SetAngle(h),m=this.m_qB.SetAngle(_);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA);var g=Q.MulRV(p,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB);var v=Q.MulRV(m,this.m_lalcB,this.m_rB),y=X.SubVV(X.AddVV(c,v,X.s_t0),X.AddVV(a,g,X.s_t1),i.InitVelocityConstraints_s_d);if(Q.MulRV(p,this.m_localYAxisA,this.m_ay),this.m_sAy=X.CrossVV(X.AddVV(y,g,X.s_t0),this.m_ay),this.m_sBy=X.CrossVV(v,this.m_ay),this.m_mass=e+n+r*this.m_sAy*this.m_sAy+s*this.m_sBy*this.m_sBy,this.m_mass>0&&(this.m_mass=1/this.m_mass),this.m_springMass=0,this.m_bias=0,this.m_gamma=0,this.m_frequencyHz>0){Q.MulRV(p,this.m_localXAxisA,this.m_ax),this.m_sAx=X.CrossVV(X.AddVV(y,g,X.s_t0),this.m_ax),this.m_sBx=X.CrossVV(v,this.m_ax);var S=e+n+r*this.m_sAx*this.m_sAx+s*this.m_sBx*this.m_sBx;if(S>0){this.m_springMass=1/S;var T=X.DotVV(y,this.m_ax),A=2*o*this.m_frequencyHz,b=2*this.m_springMass*this.m_dampingRatio*A,E=this.m_springMass*A*A,C=t.step.dt;this.m_gamma=C*(b+C*E),this.m_gamma>0&&(this.m_gamma=1/this.m_gamma),this.m_bias=T*C*E*this.m_gamma,this.m_springMass=S+this.m_gamma,this.m_springMass>0&&(this.m_springMass=1/this.m_springMass)}}else this.m_springImpulse=0;if(this.m_enableMotor?(this.m_motorMass=r+s,this.m_motorMass>0&&(this.m_motorMass=1/this.m_motorMass)):(this.m_motorMass=0,this.m_motorImpulse=0),t.step.warmStarting){this.m_impulse*=t.step.dtRatio,this.m_springImpulse*=t.step.dtRatio,this.m_motorImpulse*=t.step.dtRatio;var x=X.AddVV(X.MulSV(this.m_impulse,this.m_ay,X.s_t0),X.MulSV(this.m_springImpulse,this.m_ax,X.s_t1),i.InitVelocityConstraints_s_P),w=this.m_impulse*this.m_sAy+this.m_springImpulse*this.m_sAx+this.m_motorImpulse,R=this.m_impulse*this.m_sBy+this.m_springImpulse*this.m_sBx+this.m_motorImpulse;u.SelfMulSub(this.m_invMassA,x),l-=this.m_invIA*w,f.SelfMulAdd(this.m_invMassB,x),d+=this.m_invIB*R}else this.m_impulse=0,this.m_springImpulse=0,this.m_motorImpulse=0;t.velocities[this.m_indexA].w=l,t.velocities[this.m_indexB].w=d},n.SolveVelocityConstraints=function(t){var e=this.m_invMassA,n=this.m_invMassB,r=this.m_invIA,s=this.m_invIB,a=t.velocities[this.m_indexA].v,o=t.velocities[this.m_indexA].w,h=t.velocities[this.m_indexB].v,u=t.velocities[this.m_indexB].w,l=X.DotVV(this.m_ax,X.SubVV(h,a,X.s_t0))+this.m_sBx*u-this.m_sAx*o,c=-this.m_springMass*(l+this.m_bias+this.m_gamma*this.m_springImpulse);this.m_springImpulse+=c;var _=X.MulSV(c,this.m_ax,i.SolveVelocityConstraints_s_P),f=c*this.m_sAx,d=c*this.m_sBx;a.SelfMulSub(e,_),o-=r*f,h.SelfMulAdd(n,_);var p=(u+=s*d)-o-this.m_motorSpeed,m=-this.m_motorMass*p,g=this.m_motorImpulse,v=t.step.dt*this.m_maxMotorTorque;this.m_motorImpulse=O(this.m_motorImpulse+m,-v,v),o-=r*(m=this.m_motorImpulse-g),u+=s*m;var y=X.DotVV(this.m_ay,X.SubVV(h,a,X.s_t0))+this.m_sBy*u-this.m_sAy*o,S=-this.m_mass*y;this.m_impulse+=S;var T=X.MulSV(S,this.m_ay,i.SolveVelocityConstraints_s_P),A=S*this.m_sAy,b=S*this.m_sBy;a.SelfMulSub(e,T),o-=r*A,h.SelfMulAdd(n,T),u+=s*b,t.velocities[this.m_indexA].w=o,t.velocities[this.m_indexB].w=u},n.SolvePositionConstraints=function(t){var e=t.positions[this.m_indexA].c,n=t.positions[this.m_indexA].a,r=t.positions[this.m_indexB].c,s=t.positions[this.m_indexB].a,a=this.m_qA.SetAngle(n),o=this.m_qB.SetAngle(s);X.SubVV(this.m_localAnchorA,this.m_localCenterA,this.m_lalcA);var h=Q.MulRV(a,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,this.m_localCenterB,this.m_lalcB);var u,c=Q.MulRV(o,this.m_lalcB,this.m_rB),_=X.AddVV(X.SubVV(r,e,X.s_t0),X.SubVV(c,h,X.s_t1),i.SolvePositionConstraints_s_d),f=Q.MulRV(a,this.m_localYAxisA,this.m_ay),d=X.CrossVV(X.AddVV(_,h,X.s_t0),f),p=X.CrossVV(c,f),m=X.DotVV(_,this.m_ay),g=this.m_invMassA+this.m_invMassB+this.m_invIA*this.m_sAy*this.m_sAy+this.m_invIB*this.m_sBy*this.m_sBy;u=0!==g?-m/g:0;var v=X.MulSV(u,f,i.SolvePositionConstraints_s_P),y=u*d,S=u*p;return e.SelfMulSub(this.m_invMassA,v),n-=this.m_invIA*y,r.SelfMulAdd(this.m_invMassB,v),s+=this.m_invIB*S,t.positions[this.m_indexA].a=n,t.positions[this.m_indexB].a=s,B(m)<=l},n.GetDefinition=function(t){return t},n.GetAnchorA=function(t){return this.m_bodyA.GetWorldPoint(this.m_localAnchorA,t)},n.GetAnchorB=function(t){return this.m_bodyB.GetWorldPoint(this.m_localAnchorB,t)},n.GetReactionForce=function(t,e){return e.x=t*(this.m_impulse*this.m_ay.x+this.m_springImpulse*this.m_ax.x),e.y=t*(this.m_impulse*this.m_ay.y+this.m_springImpulse*this.m_ax.y),e},n.GetReactionTorque=function(t){return t*this.m_motorImpulse},n.GetLocalAnchorA=function(){return this.m_localAnchorA},n.GetLocalAnchorB=function(){return this.m_localAnchorB},n.GetLocalAxisA=function(){return this.m_localXAxisA},n.GetJointTranslation=function(){return this.GetPrismaticJointTranslation()},n.GetJointLinearSpeed=function(){return this.GetPrismaticJointSpeed()},n.GetJointAngle=function(){return this.GetRevoluteJointAngle()},n.GetJointAngularSpeed=function(){return this.GetRevoluteJointSpeed()},n.GetPrismaticJointTranslation=function(){var t=this.m_bodyA,e=this.m_bodyB,i=t.GetWorldPoint(this.m_localAnchorA,new X),n=e.GetWorldPoint(this.m_localAnchorB,new X),r=X.SubVV(n,i,new X),s=t.GetWorldVector(this.m_localXAxisA,new X);return X.DotVV(r,s)},n.GetPrismaticJointSpeed=function(){var t=this.m_bodyA,e=this.m_bodyB;X.SubVV(this.m_localAnchorA,t.m_sweep.localCenter,this.m_lalcA);var i=Q.MulRV(t.m_xf.q,this.m_lalcA,this.m_rA);X.SubVV(this.m_localAnchorB,e.m_sweep.localCenter,this.m_lalcB);var n=Q.MulRV(e.m_xf.q,this.m_lalcB,this.m_rB),r=X.AddVV(t.m_sweep.c,i,X.s_t0),s=X.AddVV(e.m_sweep.c,n,X.s_t1),a=X.SubVV(s,r,X.s_t2),o=t.GetWorldVector(this.m_localXAxisA,new X),h=t.m_linearVelocity,u=e.m_linearVelocity,l=t.m_angularVelocity,c=e.m_angularVelocity;return X.DotVV(a,X.CrossSV(l,o,X.s_t0))+X.DotVV(o,X.SubVV(X.AddVCrossSV(u,c,n,X.s_t0),X.AddVCrossSV(h,l,i,X.s_t1),X.s_t0))},n.GetRevoluteJointAngle=function(){return this.m_bodyB.m_sweep.a-this.m_bodyA.m_sweep.a},n.GetRevoluteJointSpeed=function(){var t=this.m_bodyA.m_angularVelocity;return this.m_bodyB.m_angularVelocity-t},n.IsMotorEnabled=function(){return this.m_enableMotor},n.EnableMotor=function(t){t!==this.m_enableMotor&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_enableMotor=t)},n.SetMotorSpeed=function(t){t!==this.m_motorSpeed&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_motorSpeed=t)},n.SetMaxMotorTorque=function(t){t!==this.m_maxMotorTorque&&(this.m_bodyA.SetAwake(!0),this.m_bodyB.SetAwake(!0),this.m_maxMotorTorque=t)},n.GetMotorTorque=function(t){return t*this.m_motorImpulse},n.Dump=function(t){var e=this.m_bodyA.m_islandIndex,i=this.m_bodyB.m_islandIndex;t(" const jd: b2WheelJointDef = new b2WheelJointDef();\n"),t(" jd.bodyA = bodies[%d];\n",e),t(" jd.bodyB = bodies[%d];\n",i),t(" jd.collideConnected = %s;\n",this.m_collideConnected?"true":"false"),t(" jd.localAnchorA.Set(%.15f, %.15f);\n",this.m_localAnchorA.x,this.m_localAnchorA.y),t(" jd.localAnchorB.Set(%.15f, %.15f);\n",this.m_localAnchorB.x,this.m_localAnchorB.y),t(" jd.localAxisA.Set(%.15f, %.15f);\n",this.m_localXAxisA.x,this.m_localXAxisA.y),t(" jd.enableMotor = %s;\n",this.m_enableMotor?"true":"false"),t(" jd.motorSpeed = %.15f;\n",this.m_motorSpeed),t(" jd.maxMotorTorque = %.15f;\n",this.m_maxMotorTorque),t(" jd.frequencyHz = %.15f;\n",this.m_frequencyHz),t(" jd.dampingRatio = %.15f;\n",this.m_dampingRatio),t(" joints[%d] = this.m_world.CreateJoint(jd);\n",this.m_index)},i}(Mi);function rn(t,e){return k(t*e)}function sn(t,e){return t>e?t:e}nn.InitVelocityConstraints_s_d=new X,nn.InitVelocityConstraints_s_P=new X,nn.SolveVelocityConstraints_s_P=new X,nn.SolvePositionConstraints_s_d=new X,nn.SolvePositionConstraints_s_P=new X;var an=function(){function t(t){this._other=null,this.prev=null,this.next=null,this.contact=t}return t.prototype.Reset=function(){this._other=null,this.prev=null,this.next=null},n(t,[{key:"other",get:function(){if(null===this._other)throw new Error;return this._other},set:function(t){if(null!==this._other)throw new Error;this._other=t}}]),t}(),on=function(){function t(){this.m_islandFlag=!1,this.m_touchingFlag=!1,this.m_enabledFlag=!1,this.m_filterFlag=!1,this.m_bulletHitFlag=!1,this.m_toiFlag=!1,this.m_prev=null,this.m_next=null,this.m_nodeA=new an(this),this.m_nodeB=new an(this),this.m_indexA=0,this.m_indexB=0,this.m_manifold=new Ot,this.m_toiCount=0,this.m_toi=0,this.m_friction=0,this.m_restitution=0,this.m_tangentSpeed=0,this.m_oldManifold=new Ot}var e=t.prototype;return e.GetManifold=function(){return this.m_manifold},e.GetWorldManifold=function(t){var e=this.m_fixtureA.GetBody(),i=this.m_fixtureB.GetBody(),n=this.GetShapeA(),r=this.GetShapeB();t.Initialize(this.m_manifold,e.GetTransform(),n.m_radius,i.GetTransform(),r.m_radius)},e.IsTouching=function(){return this.m_touchingFlag},e.SetEnabled=function(t){this.m_enabledFlag=t},e.IsEnabled=function(){return this.m_enabledFlag},e.GetNext=function(){return this.m_next},e.GetFixtureA=function(){return this.m_fixtureA},e.GetChildIndexA=function(){return this.m_indexA},e.GetShapeA=function(){return this.m_fixtureA.GetShape()},e.GetFixtureB=function(){return this.m_fixtureB},e.GetChildIndexB=function(){return this.m_indexB},e.GetShapeB=function(){return this.m_fixtureB.GetShape()},e.FlagForFiltering=function(){this.m_filterFlag=!0},e.SetFriction=function(t){this.m_friction=t},e.GetFriction=function(){return this.m_friction},e.ResetFriction=function(){this.m_friction=rn(this.m_fixtureA.m_friction,this.m_fixtureB.m_friction)},e.SetRestitution=function(t){this.m_restitution=t},e.GetRestitution=function(){return this.m_restitution},e.ResetRestitution=function(){this.m_restitution=sn(this.m_fixtureA.m_restitution,this.m_fixtureB.m_restitution)},e.SetTangentSpeed=function(t){this.m_tangentSpeed=t},e.GetTangentSpeed=function(){return this.m_tangentSpeed},e.Reset=function(t,e,i,n){this.m_islandFlag=!1,this.m_touchingFlag=!1,this.m_enabledFlag=!0,this.m_filterFlag=!1,this.m_bulletHitFlag=!1,this.m_toiFlag=!1,this.m_fixtureA=t,this.m_fixtureB=i,this.m_indexA=e,this.m_indexB=n,this.m_manifold.pointCount=0,this.m_prev=null,this.m_next=null,this.m_nodeA.Reset(),this.m_nodeB.Reset(),this.m_toiCount=0,this.m_friction=rn(this.m_fixtureA.m_friction,this.m_fixtureB.m_friction),this.m_restitution=sn(this.m_fixtureA.m_restitution,this.m_fixtureB.m_restitution)},e.Update=function(t){var e=this.m_oldManifold;this.m_oldManifold=this.m_manifold,this.m_manifold=e,this.m_enabledFlag=!0;var i=!1,n=this.m_touchingFlag,r=this.m_fixtureA.IsSensor(),s=this.m_fixtureB.IsSensor(),a=r||s,o=this.m_fixtureA.GetBody(),h=this.m_fixtureB.GetBody(),u=o.GetTransform(),l=h.GetTransform();if(a){var c=this.GetShapeA(),_=this.GetShapeB();i=Xt(c,this.m_indexA,_,this.m_indexB,u,l),this.m_manifold.pointCount=0}else{this.Evaluate(this.m_manifold,u,l),i=this.m_manifold.pointCount>0;for(var f=0;f<this.m_manifold.pointCount;++f){var d=this.m_manifold.points[f];d.normalImpulse=0,d.tangentImpulse=0;for(var p=d.id,m=0;m<this.m_oldManifold.pointCount;++m){var g=this.m_oldManifold.points[m];if(g.id.key===p.key){d.normalImpulse=g.normalImpulse,d.tangentImpulse=g.tangentImpulse;break}}}i!==n&&(o.SetAwake(!0),h.SetAwake(!0))}this.m_touchingFlag=i,!n&&i&&t&&t.BeginContact(this),n&&!i&&t&&t.EndContact(this),!a&&i&&t&&t.PreSolve(this,this.m_oldManifold)},e.ComputeTOI=function(e,i){var n=t.ComputeTOI_s_input;n.proxyA.SetShape(this.GetShapeA(),this.m_indexA),n.proxyB.SetShape(this.GetShapeB(),this.m_indexB),n.sweepA.Copy(e),n.sweepB.Copy(i),n.tMax=l;var r=t.ComputeTOI_s_output;return Te(r,n),r.t},t}();on.ComputeTOI_s_input=new he,on.ComputeTOI_s_output=new le;var hn=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.Create=function(){return new e},e.Destroy=function(){},e.prototype.Evaluate=function(t,e,i){Ee(t,this.GetShapeA(),e,this.GetShapeB(),i)},e}(on),un=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.Create=function(){return new e},e.Destroy=function(){},e.prototype.Evaluate=function(t,e,i){Ze(t,this.GetShapeA(),e,this.GetShapeB(),i)},e}(on),ln=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.Create=function(){return new e},e.Destroy=function(){},e.prototype.Evaluate=function(t,e,i){Re(t,this.GetShapeA(),e,this.GetShapeB(),i)},e}(on),cn=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.Create=function(){return new e},e.Destroy=function(){},e.prototype.Evaluate=function(t,e,i){oi(t,this.GetShapeA(),e,this.GetShapeB(),i)},e}(on),_n=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.Create=function(){return new e},e.Destroy=function(){},e.prototype.Evaluate=function(t,e,i){fi(t,this.GetShapeA(),e,this.GetShapeB(),i)},e}(on),fn=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.Create=function(){return new e},e.Destroy=function(){},e.prototype.Evaluate=function(t,i,n){var r=e.Evaluate_s_edge;this.GetShapeA().GetChildEdge(r,this.m_indexA),oi(t,r,i,this.GetShapeB(),n)},e}(on);fn.Evaluate_s_edge=new yi;var dn=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e.Create=function(){return new e},e.Destroy=function(){},e.prototype.Evaluate=function(t,i,n){var r=e.Evaluate_s_edge;this.GetShapeA().GetChildEdge(r,this.m_indexA),fi(t,r,i,this.GetShapeB(),n)},e}(on);dn.Evaluate_s_edge=new yi;var pn=function(){this.pool=[],this.createFcn=null,this.destroyFcn=null,this.primary=!1},mn=function(){function e(){this.m_registers=[],this.InitializeRegisters()}var i=e.prototype;return i.AddType=function(t,e,i,n){var r=[];function s(){return r.pop()||t()}function a(t){r.push(t)}this.m_registers[i][n].pool=r,this.m_registers[i][n].createFcn=s,this.m_registers[i][n].destroyFcn=a,this.m_registers[i][n].primary=!0,i!==n&&(this.m_registers[n][i].pool=r,this.m_registers[n][i].createFcn=s,this.m_registers[n][i].destroyFcn=a,this.m_registers[n][i].primary=!1)},i.InitializeRegisters=function(){for(var e=0;e<t.b2ShapeType.e_shapeTypeCount;e++){this.m_registers[e]=[];for(var i=0;i<t.b2ShapeType.e_shapeTypeCount;i++)this.m_registers[e][i]=new pn}this.AddType(hn.Create,hn.Destroy,t.b2ShapeType.e_circleShape,t.b2ShapeType.e_circleShape),this.AddType(ln.Create,ln.Destroy,t.b2ShapeType.e_polygonShape,t.b2ShapeType.e_circleShape),this.AddType(un.Create,un.Destroy,t.b2ShapeType.e_polygonShape,t.b2ShapeType.e_polygonShape),this.AddType(cn.Create,cn.Destroy,t.b2ShapeType.e_edgeShape,t.b2ShapeType.e_circleShape),this.AddType(_n.Create,_n.Destroy,t.b2ShapeType.e_edgeShape,t.b2ShapeType.e_polygonShape),this.AddType(fn.Create,fn.Destroy,t.b2ShapeType.e_chainShape,t.b2ShapeType.e_circleShape),this.AddType(dn.Create,dn.Destroy,t.b2ShapeType.e_chainShape,t.b2ShapeType.e_polygonShape)},i.Create=function(t,e,i,n){var r=t.GetType(),s=i.GetType(),a=this.m_registers[r][s];if(a.createFcn){var o=a.createFcn();return a.primary?o.Reset(t,e,i,n):o.Reset(i,n,t,e),o}return null},i.Destroy=function(t){var e=t.m_fixtureA.GetType(),i=t.m_fixtureB.GetType(),n=this.m_registers[e][i];n.destroyFcn&&n.destroyFcn(t)},e}(),gn=function(){function t(){}var e=t.prototype;return e.SayGoodbyeJoint=function(){},e.SayGoodbyeFixture=function(){},e.SayGoodbyeParticleGroup=function(){},e.SayGoodbyeParticle=function(){},t}(),vn=function(){function e(){}var i=e.prototype;return i.ShouldCollide=function(e,i){var n=e.GetBody(),r=i.GetBody();if(r.GetType()===t.b2BodyType.b2_staticBody&&n.GetType()===t.b2BodyType.b2_staticBody)return!1;if(!r.ShouldCollideConnected(n))return!1;var s=e.GetFilterData(),a=i.GetFilterData();return s.groupIndex===a.groupIndex&&0!==s.groupIndex?s.groupIndex>0:0!=(s.maskBits&a.categoryBits)&&0!=(s.categoryBits&a.maskBits)},i.ShouldCollideFixtureParticle=function(){return!0},i.ShouldCollideParticleParticle=function(){return!0},e}();vn.b2_defaultFilter=new vn;var yn=function(){this.normalImpulses=w(2),this.tangentImpulses=w(2),this.count=0},Sn=function(){function t(){}var e=t.prototype;return e.BeginContact=function(){},e.EndContact=function(){},e.BeginContactFixtureParticle=function(){},e.EndContactFixtureParticle=function(){},e.BeginContactParticleParticle=function(){},e.EndContactParticleParticle=function(){},e.PreSolve=function(){},e.PostSolve=function(){},t}();Sn.b2_defaultListener=new Sn;var Tn=function(){function t(){}var e=t.prototype;return e.ReportFixture=function(){return!0},e.ReportParticle=function(){return!1},e.ShouldQueryParticleSystem=function(){return!0},t}(),An=function(){function t(){}var e=t.prototype;return e.ReportFixture=function(t,e,i,n){return n},e.ReportParticle=function(){return 0},e.ShouldQueryParticleSystem=function(){return!0},t}(),bn=function(){function e(){this.m_broadPhase=new Jt,this.m_contactList=null,this.m_contactCount=0,this.m_contactFilter=vn.b2_defaultFilter,this.m_contactListener=Sn.b2_defaultListener,this.m_contactFactory=new mn}var i=e.prototype;return i.AddPair=function(t,e){var i=t.fixture,n=e.fixture,r=t.childIndex,s=e.childIndex,a=i.GetBody(),o=n.GetBody();if(a!==o){for(var h=o.GetContactList();h;){if(h.other===a){var u=h.contact.GetFixtureA(),l=h.contact.GetFixtureB(),c=h.contact.GetChildIndexA(),_=h.contact.GetChildIndexB();if(u===i&&l===n&&c===r&&_===s)return;if(u===n&&l===i&&c===s&&_===r)return}h=h.next}if(!this.m_contactFilter||this.m_contactFilter.ShouldCollide(i,n)){var f=this.m_contactFactory.Create(i,r,n,s);null!==f&&(i=f.GetFixtureA(),n=f.GetFixtureB(),r=f.GetChildIndexA(),s=f.GetChildIndexB(),a=i.m_body,o=n.m_body,f.m_prev=null,f.m_next=this.m_contactList,null!==this.m_contactList&&(this.m_contactList.m_prev=f),this.m_contactList=f,f.m_nodeA.other=o,f.m_nodeA.prev=null,f.m_nodeA.next=a.m_contactList,null!==a.m_contactList&&(a.m_contactList.prev=f.m_nodeA),a.m_contactList=f.m_nodeA,f.m_nodeB.other=a,f.m_nodeB.prev=null,f.m_nodeB.next=o.m_contactList,null!==o.m_contactList&&(o.m_contactList.prev=f.m_nodeB),o.m_contactList=f.m_nodeB,i.IsSensor()||n.IsSensor()||(a.SetAwake(!0),o.SetAwake(!0)),++this.m_contactCount)}}},i.FindNewContacts=function(){var t=this;this.m_broadPhase.UpdatePairs((function(e,i){t.AddPair(e,i)}))},i.Destroy=function(t){var e=t.GetFixtureA(),i=t.GetFixtureB(),n=e.GetBody(),r=i.GetBody();this.m_contactListener&&t.IsTouching()&&this.m_contactListener.EndContact(t),t.m_prev&&(t.m_prev.m_next=t.m_next),t.m_next&&(t.m_next.m_prev=t.m_prev),t===this.m_contactList&&(this.m_contactList=t.m_next),t.m_nodeA.prev&&(t.m_nodeA.prev.next=t.m_nodeA.next),t.m_nodeA.next&&(t.m_nodeA.next.prev=t.m_nodeA.prev),t.m_nodeA===n.m_contactList&&(n.m_contactList=t.m_nodeA.next),t.m_nodeB.prev&&(t.m_nodeB.prev.next=t.m_nodeB.next),t.m_nodeB.next&&(t.m_nodeB.next.prev=t.m_nodeB.prev),t.m_nodeB===r.m_contactList&&(r.m_contactList=t.m_nodeB.next),t.m_manifold.pointCount>0&&!e.IsSensor()&&!i.IsSensor()&&(e.GetBody().SetAwake(!0),i.GetBody().SetAwake(!0)),this.m_contactFactory.Destroy(t),--this.m_contactCount},i.Collide=function(){for(var e=this.m_contactList;e;){var i=e.GetFixtureA(),n=e.GetFixtureB(),r=e.GetChildIndexA(),s=e.GetChildIndexB(),a=i.GetBody(),o=n.GetBody();if(e.m_filterFlag){if(this.m_contactFilter&&!this.m_contactFilter.ShouldCollide(i,n)){var h=e;e=h.m_next,this.Destroy(h);continue}e.m_filterFlag=!1}var u=a.IsAwake()&&a.m_type!==t.b2BodyType.b2_staticBody,l=o.IsAwake()&&o.m_type!==t.b2BodyType.b2_staticBody;if(u||l){var c=i.m_proxies[r].treeNode,_=n.m_proxies[s].treeNode;if(Vt(c.aabb,_.aabb))e.Update(this.m_contactListener),e=e.m_next;else{var f=e;e=f.m_next,this.Destroy(f)}}else e=e.m_next}},e}(),En=function(){function t(){this.step=0,this.collide=0,this.solve=0,this.solveInit=0,this.solveVelocity=0,this.solvePosition=0,this.broadphase=0,this.solveTOI=0}return t.prototype.Reset=function(){return this.step=0,this.collide=0,this.solve=0,this.solveInit=0,this.solveVelocity=0,this.solvePosition=0,this.broadphase=0,this.solveTOI=0,this},t}(),Cn=function(){function t(){this.dt=0,this.inv_dt=0,this.dtRatio=0,this.velocityIterations=0,this.positionIterations=0,this.particleIterations=0,this.warmStarting=!1}return t.prototype.Copy=function(t){return this.dt=t.dt,this.inv_dt=t.inv_dt,this.dtRatio=t.dtRatio,this.positionIterations=t.positionIterations,this.velocityIterations=t.velocityIterations,this.particleIterations=t.particleIterations,this.warmStarting=t.warmStarting,this},t}(),xn=function(){function t(){this.c=new X,this.a=0}return t.MakeArray=function(e){return x(e,(function(){return new t}))},t}(),wn=function(){function t(){this.v=new X,this.w=0}return t.MakeArray=function(e){return x(e,(function(){return new t}))},t}(),Rn=function(){this.step=new Cn},In=!1,Dn=function(){function t(){this.rA=new X,this.rB=new X,this.normalImpulse=0,this.tangentImpulse=0,this.normalMass=0,this.tangentMass=0,this.velocityBias=0}return t.MakeArray=function(e){return x(e,(function(){return new t}))},t}(),Bn=function(){function t(){this.points=Dn.MakeArray(2),this.normal=new X,this.tangent=new X,this.normalMass=new q,this.K=new q,this.indexA=0,this.indexB=0,this.invMassA=0,this.invMassB=0,this.invIA=0,this.invIB=0,this.friction=0,this.restitution=0,this.tangentSpeed=0,this.pointCount=0,this.contactIndex=0}return t.MakeArray=function(e){return x(e,(function(){return new t}))},t}(),Mn=function(){function e(){this.localPoints=X.MakeArray(2),this.localNormal=new X,this.localPoint=new X,this.indexA=0,this.indexB=0,this.invMassA=0,this.invMassB=0,this.localCenterA=new X,this.localCenterB=new X,this.invIA=0,this.invIB=0,this.type=t.b2ManifoldType.e_unknown,this.radiusA=0,this.radiusB=0,this.pointCount=0}return e.MakeArray=function(t){return x(t,(function(){return new e}))},e}(),Pn=function(){this.step=new Cn,this.count=0},On=function(){function e(){this.normal=new X,this.point=new X,this.separation=0}return e.prototype.Initialize=function(i,n,r,s){var a=e.Initialize_s_pointA,o=e.Initialize_s_pointB,h=e.Initialize_s_planePoint,u=e.Initialize_s_clipPoint;switch(i.type){case t.b2ManifoldType.e_circles:Z.MulXV(n,i.localPoint,a),Z.MulXV(r,i.localPoints[0],o),X.SubVV(o,a,this.normal).SelfNormalize(),X.MidVV(a,o,this.point),this.separation=X.DotVV(X.SubVV(o,a,X.s_t0),this.normal)-i.radiusA-i.radiusB;break;case t.b2ManifoldType.e_faceA:Q.MulRV(n.q,i.localNormal,this.normal),Z.MulXV(n,i.localPoint,h),Z.MulXV(r,i.localPoints[s],u),this.separation=X.DotVV(X.SubVV(u,h,X.s_t0),this.normal)-i.radiusA-i.radiusB,this.point.Copy(u);break;case t.b2ManifoldType.e_faceB:Q.MulRV(r.q,i.localNormal,this.normal),Z.MulXV(r,i.localPoint,h),Z.MulXV(n,i.localPoints[s],u),this.separation=X.DotVV(X.SubVV(u,h,X.s_t0),this.normal)-i.radiusA-i.radiusB,this.point.Copy(u),this.normal.SelfNeg()}},e}();On.Initialize_s_pointA=new X,On.Initialize_s_pointB=new X,On.Initialize_s_planePoint=new X,On.Initialize_s_clipPoint=new X;var Ln=function(){function t(){this.m_step=new Cn,this.m_positionConstraints=Mn.MakeArray(1024),this.m_velocityConstraints=Bn.MakeArray(1024),this.m_count=0}var e=t.prototype;return e.Initialize=function(t){if(this.m_step.Copy(t.step),this.m_count=t.count,this.m_positionConstraints.length<this.m_count)for(var e=P(2*this.m_positionConstraints.length,this.m_count);this.m_positionConstraints.length<e;)this.m_positionConstraints[this.m_positionConstraints.length]=new Mn;if(this.m_velocityConstraints.length<this.m_count)for(var i=P(2*this.m_velocityConstraints.length,this.m_count);this.m_velocityConstraints.length<i;)this.m_velocityConstraints[this.m_velocityConstraints.length]=new Bn;this.m_positions=t.positions,this.m_velocities=t.velocities,this.m_contacts=t.contacts;for(var n=0;n<this.m_count;++n){var r=this.m_contacts[n],s=r.m_fixtureA,a=r.m_fixtureB,o=s.GetShape(),h=a.GetShape(),u=o.m_radius,l=h.m_radius,c=s.GetBody(),_=a.GetBody(),f=r.GetManifold(),d=f.pointCount,p=this.m_velocityConstraints[n];p.friction=r.m_friction,p.restitution=r.m_restitution,p.tangentSpeed=r.m_tangentSpeed,p.indexA=c.m_islandIndex,p.indexB=_.m_islandIndex,p.invMassA=c.m_invMass,p.invMassB=_.m_invMass,p.invIA=c.m_invI,p.invIB=_.m_invI,p.contactIndex=n,p.pointCount=d,p.K.SetZero(),p.normalMass.SetZero();var m=this.m_positionConstraints[n];m.indexA=c.m_islandIndex,m.indexB=_.m_islandIndex,m.invMassA=c.m_invMass,m.invMassB=_.m_invMass,m.localCenterA.Copy(c.m_sweep.localCenter),m.localCenterB.Copy(_.m_sweep.localCenter),m.invIA=c.m_invI,m.invIB=_.m_invI,m.localNormal.Copy(f.localNormal),m.localPoint.Copy(f.localPoint),m.pointCount=d,m.radiusA=u,m.radiusB=l,m.type=f.type;for(var g=0;g<d;++g){var v=f.points[g],y=p.points[g];this.m_step.warmStarting?(y.normalImpulse=this.m_step.dtRatio*v.normalImpulse,y.tangentImpulse=this.m_step.dtRatio*v.tangentImpulse):(y.normalImpulse=0,y.tangentImpulse=0),y.rA.SetZero(),y.rB.SetZero(),y.normalMass=0,y.tangentMass=0,y.velocityBias=0,m.localPoints[g].Copy(v.localPoint)}}return this},e.InitializeVelocityConstraints=function(){for(var e=t.InitializeVelocityConstraints_s_xfA,i=t.InitializeVelocityConstraints_s_xfB,n=t.InitializeVelocityConstraints_s_worldManifold,r=0;r<this.m_count;++r){var s=this.m_velocityConstraints[r],a=this.m_positionConstraints[r],o=a.radiusA,h=a.radiusB,u=this.m_contacts[s.contactIndex].GetManifold(),l=s.indexA,c=s.indexB,_=s.invMassA,f=s.invMassB,d=s.invIA,p=s.invIB,m=a.localCenterA,g=a.localCenterB,v=this.m_positions[l].c,y=this.m_positions[l].a,S=this.m_velocities[l].v,T=this.m_velocities[l].w,A=this.m_positions[c].c,b=this.m_positions[c].a,E=this.m_velocities[c].v,C=this.m_velocities[c].w;e.q.SetAngle(y),i.q.SetAngle(b),X.SubVV(v,Q.MulRV(e.q,m,X.s_t0),e.p),X.SubVV(A,Q.MulRV(i.q,g,X.s_t0),i.p),n.Initialize(u,e,o,i,h),s.normal.Copy(n.normal),X.CrossVOne(s.normal,s.tangent);for(var x=s.pointCount,w=0;w<x;++w){var R=s.points[w];X.SubVV(n.points[w],v,R.rA),X.SubVV(n.points[w],A,R.rB);var I=X.CrossVV(R.rA,s.normal),D=X.CrossVV(R.rB,s.normal),B=_+f+d*I*I+p*D*D;R.normalMass=B>0?1/B:0;var M=s.tangent,P=X.CrossVV(R.rA,M),O=X.CrossVV(R.rB,M),L=_+f+d*P*P+p*O*O;R.tangentMass=L>0?1/L:0,R.velocityBias=0;var N=X.DotVV(s.normal,X.SubVV(X.AddVCrossSV(E,C,R.rB,X.s_t0),X.AddVCrossSV(S,T,R.rA,X.s_t1),X.s_t0));N<-1&&(R.velocityBias+=-s.restitution*N)}s.pointCount}},e.WarmStart=function(){for(var e=t.WarmStart_s_P,i=0;i<this.m_count;++i){for(var n=this.m_velocityConstraints[i],r=n.indexA,s=n.indexB,a=n.invMassA,o=n.invIA,h=n.invMassB,u=n.invIB,l=n.pointCount,c=this.m_velocities[r].v,_=this.m_velocities[r].w,f=this.m_velocities[s].v,d=this.m_velocities[s].w,p=n.normal,m=n.tangent,g=0;g<l;++g){var v=n.points[g];X.AddVV(X.MulSV(v.normalImpulse,p,X.s_t0),X.MulSV(v.tangentImpulse,m,X.s_t1),e),_-=o*X.CrossVV(v.rA,e),c.SelfMulSub(a,e),d+=u*X.CrossVV(v.rB,e),f.SelfMulAdd(h,e)}this.m_velocities[r].w=_,this.m_velocities[s].w=d}},e.SolveVelocityConstraints=function(){for(var e=t.SolveVelocityConstraints_s_dv,i=(t.SolveVelocityConstraints_s_dv1,t.SolveVelocityConstraints_s_dv2,t.SolveVelocityConstraints_s_P),n=(t.SolveVelocityConstraints_s_a,t.SolveVelocityConstraints_s_b,t.SolveVelocityConstraints_s_x,t.SolveVelocityConstraints_s_d,t.SolveVelocityConstraints_s_P1,t.SolveVelocityConstraints_s_P2,t.SolveVelocityConstraints_s_P1P2,0);n<this.m_count;++n){for(var r=this.m_velocityConstraints[n],s=r.indexA,a=r.indexB,o=r.invMassA,h=r.invIA,u=r.invMassB,l=r.invIB,c=r.pointCount,_=this.m_velocities[s].v,f=this.m_velocities[s].w,d=this.m_velocities[a].v,p=this.m_velocities[a].w,m=r.normal,g=r.tangent,v=r.friction,y=0;y<c;++y){var S=r.points[y];X.SubVV(X.AddVCrossSV(d,p,S.rB,X.s_t0),X.AddVCrossSV(_,f,S.rA,X.s_t1),e);var T=X.DotVV(e,g)-r.tangentSpeed,A=S.tangentMass*-T,b=v*S.normalImpulse,E=O(S.tangentImpulse+A,-b,b);A=E-S.tangentImpulse,S.tangentImpulse=E,X.MulSV(A,g,i),_.SelfMulSub(o,i),f-=h*X.CrossVV(S.rA,i),d.SelfMulAdd(u,i),p+=l*X.CrossVV(S.rB,i)}r.pointCount;for(var C=0;C<c;++C){var x=r.points[C];X.SubVV(X.AddVCrossSV(d,p,x.rB,X.s_t0),X.AddVCrossSV(_,f,x.rA,X.s_t1),e);var w=X.DotVV(e,m),R=-x.normalMass*(w-x.velocityBias),I=P(x.normalImpulse+R,0);R=I-x.normalImpulse,x.normalImpulse=I,X.MulSV(R,m,i),_.SelfMulSub(o,i),f-=h*X.CrossVV(x.rA,i),d.SelfMulAdd(u,i),p+=l*X.CrossVV(x.rB,i)}this.m_velocities[s].w=f,this.m_velocities[a].w=p}},e.StoreImpulses=function(){for(var t=0;t<this.m_count;++t)for(var e=this.m_velocityConstraints[t],i=this.m_contacts[e.contactIndex].GetManifold(),n=0;n<e.pointCount;++n)i.points[n].normalImpulse=e.points[n].normalImpulse,i.points[n].tangentImpulse=e.points[n].tangentImpulse},e.SolvePositionConstraints=function(){for(var e=t.SolvePositionConstraints_s_xfA,i=t.SolvePositionConstraints_s_xfB,n=t.SolvePositionConstraints_s_psm,r=t.SolvePositionConstraints_s_rA,s=t.SolvePositionConstraints_s_rB,a=t.SolvePositionConstraints_s_P,o=0,h=0;h<this.m_count;++h){for(var u=this.m_positionConstraints[h],c=u.indexA,_=u.indexB,f=u.localCenterA,d=u.invMassA,p=u.invIA,m=u.localCenterB,g=u.invMassB,v=u.invIB,y=u.pointCount,S=this.m_positions[c].c,T=this.m_positions[c].a,A=this.m_positions[_].c,b=this.m_positions[_].a,E=0;E<y;++E){e.q.SetAngle(T),i.q.SetAngle(b),X.SubVV(S,Q.MulRV(e.q,f,X.s_t0),e.p),X.SubVV(A,Q.MulRV(i.q,m,X.s_t0),i.p),n.Initialize(u,e,i,E);var C=n.normal,x=n.point,w=n.separation;X.SubVV(x,S,r),X.SubVV(x,A,s),o=M(o,w);var R=O(.2*(w+l),-.2,0),I=X.CrossVV(r,C),D=X.CrossVV(s,C),B=d+g+p*I*I+v*D*D,P=B>0?-R/B:0;X.MulSV(P,C,a),S.SelfMulSub(d,a),T-=p*X.CrossVV(r,a),A.SelfMulAdd(g,a),b+=v*X.CrossVV(s,a)}this.m_positions[c].a=T,this.m_positions[_].a=b}return o>-.024},e.SolveTOIPositionConstraints=function(e,i){for(var n=t.SolveTOIPositionConstraints_s_xfA,r=t.SolveTOIPositionConstraints_s_xfB,s=t.SolveTOIPositionConstraints_s_psm,a=t.SolveTOIPositionConstraints_s_rA,o=t.SolveTOIPositionConstraints_s_rB,h=t.SolveTOIPositionConstraints_s_P,u=0,c=0;c<this.m_count;++c){var _=this.m_positionConstraints[c],f=_.indexA,d=_.indexB,p=_.localCenterA,m=_.localCenterB,g=_.pointCount,v=0,y=0;f!==e&&f!==i||(v=_.invMassA,y=_.invIA);var S=0,T=0;d!==e&&d!==i||(S=_.invMassB,T=_.invIB);for(var A=this.m_positions[f].c,b=this.m_positions[f].a,E=this.m_positions[d].c,C=this.m_positions[d].a,x=0;x<g;++x){n.q.SetAngle(b),r.q.SetAngle(C),X.SubVV(A,Q.MulRV(n.q,p,X.s_t0),n.p),X.SubVV(E,Q.MulRV(r.q,m,X.s_t0),r.p),s.Initialize(_,n,r,x);var w=s.normal,R=s.point,I=s.separation;X.SubVV(R,A,a),X.SubVV(R,E,o),u=M(u,I);var D=O(.75*(I+l),-.2,0),B=X.CrossVV(a,w),P=X.CrossVV(o,w),L=v+S+y*B*B+T*P*P,N=L>0?-D/L:0;X.MulSV(N,w,h),A.SelfMulSub(v,h),b-=y*X.CrossVV(a,h),E.SelfMulAdd(S,h),C+=T*X.CrossVV(o,h)}this.m_positions[f].a=b,this.m_positions[d].a=C}return u>=-.012},t}();Ln.InitializeVelocityConstraints_s_xfA=new Z,Ln.InitializeVelocityConstraints_s_xfB=new Z,Ln.InitializeVelocityConstraints_s_worldManifold=new Lt,Ln.WarmStart_s_P=new X,Ln.SolveVelocityConstraints_s_dv=new X,Ln.SolveVelocityConstraints_s_dv1=new X,Ln.SolveVelocityConstraints_s_dv2=new X,Ln.SolveVelocityConstraints_s_P=new X,Ln.SolveVelocityConstraints_s_a=new X,Ln.SolveVelocityConstraints_s_b=new X,Ln.SolveVelocityConstraints_s_x=new X,Ln.SolveVelocityConstraints_s_d=new X,Ln.SolveVelocityConstraints_s_P1=new X,Ln.SolveVelocityConstraints_s_P2=new X,Ln.SolveVelocityConstraints_s_P1P2=new X,Ln.SolvePositionConstraints_s_xfA=new Z,Ln.SolvePositionConstraints_s_xfB=new Z,Ln.SolvePositionConstraints_s_psm=new On,Ln.SolvePositionConstraints_s_rA=new X,Ln.SolvePositionConstraints_s_rB=new X,Ln.SolvePositionConstraints_s_P=new X,Ln.SolveTOIPositionConstraints_s_xfA=new Z,Ln.SolveTOIPositionConstraints_s_xfB=new Z,Ln.SolveTOIPositionConstraints_s_psm=new On,Ln.SolveTOIPositionConstraints_s_rA=new X,Ln.SolveTOIPositionConstraints_s_rB=new X,Ln.SolveTOIPositionConstraints_s_P=new X;var Nn,Fn=function(){function e(){this.m_bodies=[],this.m_contacts=[],this.m_joints=[],this.m_positions=xn.MakeArray(1024),this.m_velocities=wn.MakeArray(1024),this.m_bodyCount=0,this.m_jointCount=0,this.m_contactCount=0,this.m_bodyCapacity=0,this.m_contactCapacity=0,this.m_jointCapacity=0}var n=e.prototype;return n.Initialize=function(t,e,i,n){if(this.m_bodyCapacity=t,this.m_contactCapacity=e,this.m_jointCapacity=i,this.m_bodyCount=0,this.m_contactCount=0,this.m_jointCount=0,this.m_listener=n,this.m_positions.length<t)for(var r=P(2*this.m_positions.length,t);this.m_positions.length<r;)this.m_positions[this.m_positions.length]=new xn;if(this.m_velocities.length<t)for(var s=P(2*this.m_velocities.length,t);this.m_velocities.length<s;)this.m_velocities[this.m_velocities.length]=new wn},n.Clear=function(){this.m_bodyCount=0,this.m_contactCount=0,this.m_jointCount=0},n.AddBody=function(t){t.m_islandIndex=this.m_bodyCount,this.m_bodies[this.m_bodyCount++]=t},n.AddContact=function(t){this.m_contacts[this.m_contactCount++]=t},n.AddJoint=function(t){this.m_joints[this.m_jointCount++]=t},n.Solve=function(n,r,s,a){for(var o=e.s_timer.Reset(),h=r.dt,u=0;u<this.m_bodyCount;++u){var l=this.m_bodies[u];this.m_positions[u].c.Copy(l.m_sweep.c);var c=l.m_sweep.a,_=this.m_velocities[u].v.Copy(l.m_linearVelocity),f=l.m_angularVelocity;l.m_sweep.c0.Copy(l.m_sweep.c),l.m_sweep.a0=l.m_sweep.a,l.m_type===t.b2BodyType.b2_dynamicBody&&(_.x+=h*(l.m_gravityScale*s.x+l.m_invMass*l.m_force.x),_.y+=h*(l.m_gravityScale*s.y+l.m_invMass*l.m_force.y),f+=h*l.m_invI*l.m_torque,_.SelfMul(1/(1+h*l.m_linearDamping)),f*=1/(1+h*l.m_angularDamping)),this.m_positions[u].a=c,this.m_velocities[u].w=f}o.Reset();var d=e.s_solverData;d.step.Copy(r),d.positions=this.m_positions,d.velocities=this.m_velocities;var p=e.s_contactSolverDef;p.step.Copy(r),p.contacts=this.m_contacts,p.count=this.m_contactCount,p.positions=this.m_positions,p.velocities=this.m_velocities;var v=e.s_contactSolver.Initialize(p);v.InitializeVelocityConstraints(),r.warmStarting&&v.WarmStart();for(var y=0;y<this.m_jointCount;++y)this.m_joints[y].InitVelocityConstraints(d);n.solveInit=o.GetMilliseconds(),o.Reset();for(var S=0;S<r.velocityIterations;++S){for(var T=0;T<this.m_jointCount;++T)this.m_joints[T].SolveVelocityConstraints(d);v.SolveVelocityConstraints()}v.StoreImpulses(),n.solveVelocity=o.GetMilliseconds();for(var A=0;A<this.m_bodyCount;++A){var b=this.m_positions[A].c,E=this.m_positions[A].a,C=this.m_velocities[A].v,x=this.m_velocities[A].w,w=X.MulSV(h,C,e.s_translation);if(X.DotVV(w,w)>4){var R=2/w.Length();C.SelfMul(R)}var I=h*x;I*I>g&&(x*=m/B(I)),b.x+=h*C.x,b.y+=h*C.y,E+=h*x,this.m_positions[A].a=E,this.m_velocities[A].w=x}o.Reset();for(var D=!1,P=0;P<r.positionIterations;++P){for(var O=v.SolvePositionConstraints(),L=!0,N=0;N<this.m_jointCount;++N){var F=this.m_joints[N].SolvePositionConstraints(d);L=L&&F}if(O&&L){D=!0;break}}for(var k=0;k<this.m_bodyCount;++k){var G=this.m_bodies[k];G.m_sweep.c.Copy(this.m_positions[k].c),G.m_sweep.a=this.m_positions[k].a,G.m_linearVelocity.Copy(this.m_velocities[k].v),G.m_angularVelocity=this.m_velocities[k].w,G.SynchronizeTransform()}if(n.solvePosition=o.GetMilliseconds(),this.Report(v.m_velocityConstraints),a){for(var V=i,U=0;U<this.m_bodyCount;++U){var z=this.m_bodies[U];z.GetType()!==t.b2BodyType.b2_staticBody&&(!z.m_autoSleepFlag||z.m_angularVelocity*z.m_angularVelocity>.0012184696791469947||X.DotVV(z.m_linearVelocity,z.m_linearVelocity)>1e-4?(z.m_sleepTime=0,V=0):(z.m_sleepTime+=h,V=M(V,z.m_sleepTime)))}if(V>=.5&&D)for(var H=0;H<this.m_bodyCount;++H)this.m_bodies[H].SetAwake(!1)}},n.SolveTOI=function(t,i,n){for(var r=0;r<this.m_bodyCount;++r){var s=this.m_bodies[r];this.m_positions[r].c.Copy(s.m_sweep.c),this.m_positions[r].a=s.m_sweep.a,this.m_velocities[r].v.Copy(s.m_linearVelocity),this.m_velocities[r].w=s.m_angularVelocity}var a=e.s_contactSolverDef;a.contacts=this.m_contacts,a.count=this.m_contactCount,a.step.Copy(t),a.positions=this.m_positions,a.velocities=this.m_velocities;for(var o=e.s_contactSolver.Initialize(a),h=0;h<t.positionIterations&&!o.SolveTOIPositionConstraints(i,n);++h);this.m_bodies[i].m_sweep.c0.Copy(this.m_positions[i].c),this.m_bodies[i].m_sweep.a0=this.m_positions[i].a,this.m_bodies[n].m_sweep.c0.Copy(this.m_positions[n].c),this.m_bodies[n].m_sweep.a0=this.m_positions[n].a,o.InitializeVelocityConstraints();for(var u=0;u<t.velocityIterations;++u)o.SolveVelocityConstraints();for(var l=t.dt,c=0;c<this.m_bodyCount;++c){var _=this.m_positions[c].c,f=this.m_positions[c].a,d=this.m_velocities[c].v,p=this.m_velocities[c].w,v=X.MulSV(l,d,e.s_translation);if(X.DotVV(v,v)>4){var y=2/v.Length();d.SelfMul(y)}var S=l*p;S*S>g&&(p*=m/B(S)),_.SelfMulAdd(l,d),f+=l*p,this.m_positions[c].a=f,this.m_velocities[c].w=p;var T=this.m_bodies[c];T.m_sweep.c.Copy(_),T.m_sweep.a=f,T.m_linearVelocity.Copy(d),T.m_angularVelocity=p,T.SynchronizeTransform()}this.Report(o.m_velocityConstraints)},n.Report=function(t){if(null!==this.m_listener)for(var i=0;i<this.m_contactCount;++i){var n=this.m_contacts[i];if(n){var r=t[i],s=e.s_impulse;s.count=r.pointCount;for(var a=0;a<r.pointCount;++a)s.normalImpulses[a]=r.points[a].normalImpulse,s.tangentImpulses[a]=r.points[a].tangentImpulse;this.m_listener.PostSolve(n,s)}}},e}();Fn.s_timer=new it,Fn.s_solverData=new Rn,Fn.s_contactSolverDef=new Pn,Fn.s_contactSolver=new Ln,Fn.s_translation=new X,Fn.s_impulse=new yn,(Nn=t.b2ParticleFlag||(t.b2ParticleFlag={}))[Nn.b2_waterParticle=0]="b2_waterParticle",Nn[Nn.b2_zombieParticle=2]="b2_zombieParticle",Nn[Nn.b2_wallParticle=4]="b2_wallParticle",Nn[Nn.b2_springParticle=8]="b2_springParticle",Nn[Nn.b2_elasticParticle=16]="b2_elasticParticle",Nn[Nn.b2_viscousParticle=32]="b2_viscousParticle",Nn[Nn.b2_powderParticle=64]="b2_powderParticle",Nn[Nn.b2_tensileParticle=128]="b2_tensileParticle",Nn[Nn.b2_colorMixingParticle=256]="b2_colorMixingParticle",Nn[Nn.b2_destructionListenerParticle=512]="b2_destructionListenerParticle",Nn[Nn.b2_barrierParticle=1024]="b2_barrierParticle",Nn[Nn.b2_staticPressureParticle=2048]="b2_staticPressureParticle",Nn[Nn.b2_reactiveParticle=4096]="b2_reactiveParticle",Nn[Nn.b2_repulsiveParticle=8192]="b2_repulsiveParticle",Nn[Nn.b2_fixtureContactListenerParticle=16384]="b2_fixtureContactListenerParticle",Nn[Nn.b2_particleContactListenerParticle=32768]="b2_particleContactListenerParticle",Nn[Nn.b2_fixtureContactFilterParticle=65536]="b2_fixtureContactFilterParticle",Nn[Nn.b2_particleContactFilterParticle=131072]="b2_particleContactFilterParticle";var kn=function(){this.flags=0,this.position=new X,this.velocity=new X,this.color=new tt(0,0,0,0),this.lifetime=0,this.userData=null,this.group=null};function Gn(t,e,i){return O(Math.ceil(Math.sqrt(t/(.01*e))*i),1,8)}var Vn,Un=function(){function t(){this.m_index=v}var e=t.prototype;return e.GetIndex=function(){return this.m_index},e.SetIndex=function(t){this.m_index=t},t}();(Vn=t.b2ParticleGroupFlag||(t.b2ParticleGroupFlag={}))[Vn.b2_solidParticleGroup=1]="b2_solidParticleGroup",Vn[Vn.b2_rigidParticleGroup=2]="b2_rigidParticleGroup",Vn[Vn.b2_particleGroupCanBeEmpty=4]="b2_particleGroupCanBeEmpty",Vn[Vn.b2_particleGroupWillBeDestroyed=8]="b2_particleGroupWillBeDestroyed",Vn[Vn.b2_particleGroupNeedsUpdateDepth=16]="b2_particleGroupNeedsUpdateDepth",Vn[Vn.b2_particleGroupInternalMask=24]="b2_particleGroupInternalMask";var zn=function(){this.flags=0,this.groupFlags=0,this.position=new X,this.angle=0,this.linearVelocity=new X,this.angularVelocity=0,this.color=new tt,this.strength=1,this.shapeCount=0,this.stride=0,this.particleCount=0,this.lifetime=0,this.userData=null,this.group=null},Hn=function(){function e(t){this.m_firstIndex=0,this.m_lastIndex=0,this.m_groupFlags=0,this.m_strength=1,this.m_prev=null,this.m_next=null,this.m_timestamp=-1,this.m_mass=0,this.m_inertia=0,this.m_center=new X,this.m_linearVelocity=new X,this.m_angularVelocity=0,this.m_transform=new Z,this.m_userData=null,this.m_system=t}var i=e.prototype;return i.GetNext=function(){return this.m_next},i.GetParticleSystem=function(){return this.m_system},i.GetParticleCount=function(){return this.m_lastIndex-this.m_firstIndex},i.GetBufferIndex=function(){return this.m_firstIndex},i.ContainsParticle=function(t){return this.m_firstIndex<=t&&t<this.m_lastIndex},i.GetAllParticleFlags=function(){if(!this.m_system.m_flagsBuffer.data)throw new Error;for(var t=0,e=this.m_firstIndex;e<this.m_lastIndex;e++)t|=this.m_system.m_flagsBuffer.data[e];return t},i.GetGroupFlags=function(){return this.m_groupFlags},i.SetGroupFlags=function(e){e|=this.m_groupFlags&t.b2ParticleGroupFlag.b2_particleGroupInternalMask,this.m_system.SetGroupFlags(this,e)},i.GetMass=function(){return this.UpdateStatistics(),this.m_mass},i.GetInertia=function(){return this.UpdateStatistics(),this.m_inertia},i.GetCenter=function(){return this.UpdateStatistics(),this.m_center},i.GetLinearVelocity=function(){return this.UpdateStatistics(),this.m_linearVelocity},i.GetAngularVelocity=function(){return this.UpdateStatistics(),this.m_angularVelocity},i.GetTransform=function(){return this.m_transform},i.GetPosition=function(){return this.m_transform.p},i.GetAngle=function(){return this.m_transform.q.GetAngle()},i.GetLinearVelocityFromWorldPoint=function(t,i){var n=e.GetLinearVelocityFromWorldPoint_s_t0;return this.UpdateStatistics(),X.AddVCrossSV(this.m_linearVelocity,this.m_angularVelocity,X.SubVV(t,this.m_center,n),i)},i.GetUserData=function(){return this.m_userData},i.SetUserData=function(t){this.m_userData=t},i.ApplyForce=function(t){this.m_system.ApplyForce(this.m_firstIndex,this.m_lastIndex,t)},i.ApplyLinearImpulse=function(t){this.m_system.ApplyLinearImpulse(this.m_firstIndex,this.m_lastIndex,t)},i.DestroyParticles=function(t){if(this.m_system.m_world.IsLocked())throw new Error;for(var e=this.m_firstIndex;e<this.m_lastIndex;e++)this.m_system.DestroyParticle(e,t)},i.UpdateStatistics=function(){if(!this.m_system.m_positionBuffer.data)throw new Error;if(!this.m_system.m_velocityBuffer.data)throw new Error;var t=new X,e=new X;if(this.m_timestamp!==this.m_system.m_timestamp){var i=this.m_system.GetParticleMass();this.m_mass=i*(this.m_lastIndex-this.m_firstIndex),this.m_center.SetZero(),this.m_linearVelocity.SetZero();for(var n=this.m_firstIndex;n<this.m_lastIndex;n++)this.m_center.SelfMulAdd(i,this.m_system.m_positionBuffer.data[n]),this.m_linearVelocity.SelfMulAdd(i,this.m_system.m_velocityBuffer.data[n]);if(this.m_mass>0){var r=1/this.m_mass;this.m_center.SelfMul(r),this.m_linearVelocity.SelfMul(r)}this.m_inertia=0,this.m_angularVelocity=0;for(var s=this.m_firstIndex;s<this.m_lastIndex;s++)X.SubVV(this.m_system.m_positionBuffer.data[s],this.m_center,t),X.SubVV(this.m_system.m_velocityBuffer.data[s],this.m_linearVelocity,e),this.m_inertia+=i*X.DotVV(t,t),this.m_angularVelocity+=i*X.CrossVV(t,e);this.m_inertia>0&&(this.m_angularVelocity*=1/this.m_inertia),this.m_timestamp=this.m_system.m_timestamp}},e}();Hn.GetLinearVelocityFromWorldPoint_s_t0=new X;var Wn=function(){function t(t){this.m_buffer=[],this.m_front=0,this.m_back=0,this.m_buffer.fill(null,0,t)}var e=t.prototype;return e.Push=function(t){if(this.m_back>=this.m_capacity){for(var e=this.m_front;e<this.m_back;e++)this.m_buffer[e-this.m_front]=this.m_buffer[e];this.m_back-=this.m_front,this.m_front=0}this.m_buffer[this.m_back]=t,this.m_back++},e.Pop=function(){this.m_buffer[this.m_front]=null,this.m_front++},e.Empty=function(){return this.m_front===this.m_back},e.Front=function(){var t=this.m_buffer[this.m_front];if(!t)throw new Error;return t},n(t,[{key:"m_capacity",get:function(){return this.m_buffer.length}}]),t}(),Xn=function(){function t(t){this.m_generatorCapacity=0,this.m_generatorCount=0,this.m_countX=0,this.m_countY=0,this.m_diagram=[],this.m_generatorBuffer=x(t,(function(){return new jn})),this.m_generatorCapacity=t}var e=t.prototype;return e.AddGenerator=function(t,e,i){var n=this.m_generatorBuffer[this.m_generatorCount++];n.center.Copy(t),n.tag=e,n.necessary=i},e.Generate=function(t,e){for(var n=1/t,r=new X(+i,+i),s=new X(-i,-i),a=0,o=0;o<this.m_generatorCount;o++){var h=this.m_generatorBuffer[o];h.necessary&&(X.MinV(r,h.center,r),X.MaxV(s,h.center,s),++a)}if(0===a)return this.m_countX=0,void(this.m_countY=0);r.x-=e,r.y-=e,s.x+=e,s.y+=e,this.m_countX=1+Math.floor(n*(s.x-r.x)),this.m_countY=1+Math.floor(n*(s.y-r.y)),this.m_diagram=[];for(var u=new Wn(4*this.m_countX*this.m_countY),l=0;l<this.m_generatorCount;l++){var c=this.m_generatorBuffer[l];c.center.SelfSub(r).SelfMul(n);var _=Math.floor(c.center.x),f=Math.floor(c.center.y);_>=0&&f>=0&&_<this.m_countX&&f<this.m_countY&&u.Push(new Yn(_,f,_+f*this.m_countX,c))}for(;!u.Empty();){var d=u.Front(),p=d.m_x,m=d.m_y,g=d.m_i,v=d.m_generator;u.Pop(),this.m_diagram[g]||(this.m_diagram[g]=v,p>0&&u.Push(new Yn(p-1,m,g-1,v)),m>0&&u.Push(new Yn(p,m-1,g-this.m_countX,v)),p<this.m_countX-1&&u.Push(new Yn(p+1,m,g+1,v)),m<this.m_countY-1&&u.Push(new Yn(p,m+1,g+this.m_countX,v)))}for(var y=0;y<this.m_countY;y++)for(var S=0;S<this.m_countX-1;S++){var T=S+y*this.m_countX,A=this.m_diagram[T],b=this.m_diagram[T+1];A!==b&&(u.Push(new Yn(S,y,T,b)),u.Push(new Yn(S+1,y,T+1,A)))}for(var E=0;E<this.m_countY-1;E++)for(var C=0;C<this.m_countX;C++){var x=C+E*this.m_countX,w=this.m_diagram[x],R=this.m_diagram[x+this.m_countX];w!==R&&(u.Push(new Yn(C,E,x,R)),u.Push(new Yn(C,E+1,x+this.m_countX,w)))}for(;!u.Empty();){var I=u.Front(),D=I.m_x,B=I.m_y,M=I.m_i,P=I.m_generator;u.Pop();var O=this.m_diagram[M],L=P;if(O!==L){var N=O.center.x-D,F=O.center.y-B,k=L.center.x-D,G=L.center.y-B;N*N+F*F>k*k+G*G&&(this.m_diagram[M]=L,D>0&&u.Push(new Yn(D-1,B,M-1,L)),B>0&&u.Push(new Yn(D,B-1,M-this.m_countX,L)),D<this.m_countX-1&&u.Push(new Yn(D+1,B,M+1,L)),B<this.m_countY-1&&u.Push(new Yn(D,B+1,M+this.m_countX,L)))}}},e.GetNodes=function(t){for(var e=0;e<this.m_countY-1;e++)for(var i=0;i<this.m_countX-1;i++){var n=i+e*this.m_countX,r=this.m_diagram[n],s=this.m_diagram[n+1],a=this.m_diagram[n+this.m_countX],o=this.m_diagram[n+1+this.m_countX];s!==a&&(r!==s&&r!==a&&(r.necessary||s.necessary||a.necessary)&&t(r.tag,s.tag,a.tag),o!==s&&o!==a&&(r.necessary||s.necessary||a.necessary)&&t(s.tag,o.tag,a.tag))}},t}(),jn=function(){this.center=new X,this.tag=0,this.necessary=!1},Yn=function(t,e,i,n){this.m_x=t,this.m_y=e,this.m_i=i,this.m_generator=n};function qn(t,e,i){var n=t[e];t[e]=t[i],t[i]=n}function Kn(t,e){return t<e}function Qn(t,e,i,n){void 0===e&&(e=0),void 0===i&&(i=t.length-e),void 0===n&&(n=Kn);for(var r=e,s=[],a=0;;){for(;r+1<i;i++){var o=t[r+Math.floor(Math.random()*(i-r))];s[a++]=i;for(var h=r-1;;){for(;n(t[++h],o););for(;n(o,t[--i]););if(h>=i)break;qn(t,h,i)}}if(0===a)break;r=i,i=s[--a]}return t}function Zn(t,e,i,n){return void 0===e&&(e=0),void 0===i&&(i=t.length-e),void 0===n&&(n=Kn),Qn(t,e,i,n)}function Jn(t,e,i){void 0===i&&(i=t.length);for(var n=0,r=0;r<i;++r)e(t[r])||(r!==n?qn(t,n++,r):++n);return n}function $n(t,e,i,n,r){for(var s=i-e;s>0;){var a=Math.floor(s/2),o=e+a;r(t[o],n)?(e=++o,s-=a+1):s=a}return e}function tr(t,e,i,n,r){for(var s=i-e;s>0;){var a=Math.floor(s/2),o=e+a;r(n,t[o])?s=a:(e=++o,s-=a+1)}return e}function er(t,e,i,n){for(var r=i;e!==r;)qn(t,e++,r++),r===n?r=i:e===i&&(i=r)}var ir=function(){function t(t){this.data=[],this.count=0,this.capacity=0,this.allocator=t}var e=t.prototype;return e.Append=function(){return this.count>=this.capacity&&this.Grow(),this.count++},e.Reserve=function(t){if(!(this.capacity>=t)){for(var e=this.capacity;e<t;++e)this.data[e]=this.allocator();this.capacity=t}},e.Grow=function(){var t=this.capacity?2*this.capacity:T;this.Reserve(t)},e.Free=function(){0!==this.data.length&&(this.data=[],this.capacity=0,this.count=0)},e.Shorten=function(){},e.Data=function(){return this.data},e.GetCount=function(){return this.count},e.SetCount=function(t){this.count=t},e.GetCapacity=function(){return this.capacity},e.RemoveIf=function(t){this.count=Jn(this.data,t,this.count)},e.Unique=function(t){this.count=function(t,e,i,n){if(e===i)return i;for(var r=e;++e!==i;)n(t[r],t[e])||qn(t,++r,e);return++r}(this.data,0,this.count,t)},t}(),nr=function(t){function e(e){var i;return(i=t.call(this)||this).m_system=e,i}s(e,t);var i=e.prototype;return i.ShouldQueryParticleSystem=function(){return!1},i.ReportFixture=function(t){if(t.IsSensor())return!0;for(var e=t.GetShape().GetChildCount(),i=0;i<e;i++)for(var n=t.GetAABB(i),r=this.m_system.GetInsideBoundsEnumerator(n),s=void 0;(s=r.GetNext())>=0;)this.ReportFixtureAndParticle(t,i,s);return!0},i.ReportParticle=function(){return!1},i.ReportFixtureAndParticle=function(){},e}(Tn),rr=function(){function t(){this.indexA=0,this.indexB=0,this.weight=0,this.normal=new X,this.flags=0}var e=t.prototype;return e.SetIndices=function(t,e){this.indexA=t,this.indexB=e},e.SetWeight=function(t){this.weight=t},e.SetNormal=function(t){this.normal.Copy(t)},e.SetFlags=function(t){this.flags=t},e.GetIndexA=function(){return this.indexA},e.GetIndexB=function(){return this.indexB},e.GetWeight=function(){return this.weight},e.GetNormal=function(){return this.normal},e.GetFlags=function(){return this.flags},e.IsEqual=function(t){return this.indexA===t.indexA&&this.indexB===t.indexB&&this.flags===t.flags&&this.weight===t.weight&&this.normal.x===t.normal.x&&this.normal.y===t.normal.y},e.IsNotEqual=function(t){return!this.IsEqual(t)},e.ApproximatelyEqual=function(t){return this.indexA===t.indexA&&this.indexB===t.indexB&&this.flags===t.flags&&B(this.weight-t.weight)<.01&&X.DistanceSquaredVV(this.normal,t.normal)<1e-4},t}(),sr=function(){this.index=0,this.weight=0,this.normal=new X,this.mass=0},ar=function(){this.indexA=0,this.indexB=0,this.flags=0,this.strength=0,this.distance=0},or=function(){this.indexA=0,this.indexB=0,this.indexC=0,this.flags=0,this.strength=0,this.pa=new X(0,0),this.pb=new X(0,0),this.pc=new X(0,0),this.ka=0,this.kb=0,this.kc=0,this.s=0},hr=function(){function t(){this.strictContactCheck=!1,this.density=1,this.gravityScale=1,this.radius=1,this.maxCount=0,this.pressureStrength=.005,this.dampingStrength=1,this.elasticStrength=.25,this.springStrength=.25,this.viscousStrength=.25,this.surfaceTensionPressureStrength=.2,this.surfaceTensionNormalStrength=.2,this.repulsiveStrength=1,this.powderStrength=.5,this.ejectionStrength=.5,this.staticPressureStrength=.2,this.staticPressureRelaxation=.2,this.staticPressureIterations=8,this.colorMixingStrength=.5,this.destroyByAge=!0,this.lifetimeGranularity=1/60}var e=t.prototype;return e.Copy=function(t){return this.strictContactCheck=t.strictContactCheck,this.density=t.density,this.gravityScale=t.gravityScale,this.radius=t.radius,this.maxCount=t.maxCount,this.pressureStrength=t.pressureStrength,this.dampingStrength=t.dampingStrength,this.elasticStrength=t.elasticStrength,this.springStrength=t.springStrength,this.viscousStrength=t.viscousStrength,this.surfaceTensionPressureStrength=t.surfaceTensionPressureStrength,this.surfaceTensionNormalStrength=t.surfaceTensionNormalStrength,this.repulsiveStrength=t.repulsiveStrength,this.powderStrength=t.powderStrength,this.ejectionStrength=t.ejectionStrength,this.staticPressureStrength=t.staticPressureStrength,this.staticPressureRelaxation=t.staticPressureRelaxation,this.staticPressureIterations=t.staticPressureIterations,this.colorMixingStrength=t.colorMixingStrength,this.destroyByAge=t.destroyByAge,this.lifetimeGranularity=t.lifetimeGranularity,this},e.Clone=function(){return(new t).Copy(this)},t}(),ur=function(){function n(t,e){this.m_paused=!1,this.m_timestamp=0,this.m_allParticleFlags=0,this.m_needsUpdateAllParticleFlags=!1,this.m_allGroupFlags=0,this.m_needsUpdateAllGroupFlags=!1,this.m_hasForce=!1,this.m_iterationIndex=0,this.m_inverseDensity=0,this.m_particleDiameter=0,this.m_inverseDiameter=0,this.m_squaredDiameter=0,this.m_count=0,this.m_internalAllocatedCapacity=0,this.m_handleIndexBuffer=new lr,this.m_flagsBuffer=new lr,this.m_positionBuffer=new lr,this.m_velocityBuffer=new lr,this.m_forceBuffer=[],this.m_weightBuffer=[],this.m_staticPressureBuffer=[],this.m_accumulationBuffer=[],this.m_accumulation2Buffer=[],this.m_depthBuffer=[],this.m_colorBuffer=new lr,this.m_groupBuffer=[],this.m_userDataBuffer=new lr,this.m_stuckThreshold=0,this.m_lastBodyContactStepBuffer=new lr,this.m_bodyContactCountBuffer=new lr,this.m_consecutiveContactStepsBuffer=new lr,this.m_stuckParticleBuffer=new ir((function(){return 0})),this.m_proxyBuffer=new ir((function(){return new cr})),this.m_contactBuffer=new ir((function(){return new rr})),this.m_bodyContactBuffer=new ir((function(){return new sr})),this.m_pairBuffer=new ir((function(){return new ar})),this.m_triadBuffer=new ir((function(){return new or})),this.m_expirationTimeBuffer=new lr,this.m_indexByExpirationTimeBuffer=new lr,this.m_timeElapsed=0,this.m_expirationTimeBufferRequiresSorting=!1,this.m_groupCount=0,this.m_groupList=null,this.m_def=new hr,this.m_prev=null,this.m_next=null,this.UpdateBodyContacts_callback=null,this.SolveCollision_callback=null,this.SetStrictContactCheck(t.strictContactCheck),this.SetDensity(t.density),this.SetGravityScale(t.gravityScale),this.SetRadius(t.radius),this.SetMaxParticleCount(t.maxCount),this.m_def=t.Clone(),this.m_world=e,this.SetDestructionByAge(this.m_def.destroyByAge)}n.computeTag=function(t,e){return(e+n.yOffset>>>0<<n.yShift)+(n.xScale*t+n.xOffset>>>0)>>>0},n.computeRelativeTag=function(t,e,i){return t+(i<<n.yShift)+(e<<n.xShift)>>>0};var r=n.prototype;return r.Drop=function(){for(;this.m_groupList;)this.DestroyParticleGroup(this.m_groupList);this.FreeUserOverridableBuffer(this.m_handleIndexBuffer),this.FreeUserOverridableBuffer(this.m_flagsBuffer),this.FreeUserOverridableBuffer(this.m_lastBodyContactStepBuffer),this.FreeUserOverridableBuffer(this.m_bodyContactCountBuffer),this.FreeUserOverridableBuffer(this.m_consecutiveContactStepsBuffer),this.FreeUserOverridableBuffer(this.m_positionBuffer),this.FreeUserOverridableBuffer(this.m_velocityBuffer),this.FreeUserOverridableBuffer(this.m_colorBuffer),this.FreeUserOverridableBuffer(this.m_userDataBuffer),this.FreeUserOverridableBuffer(this.m_expirationTimeBuffer),this.FreeUserOverridableBuffer(this.m_indexByExpirationTimeBuffer),this.FreeBuffer(this.m_forceBuffer,this.m_internalAllocatedCapacity),this.FreeBuffer(this.m_weightBuffer,this.m_internalAllocatedCapacity),this.FreeBuffer(this.m_staticPressureBuffer,this.m_internalAllocatedCapacity),this.FreeBuffer(this.m_accumulationBuffer,this.m_internalAllocatedCapacity),this.FreeBuffer(this.m_accumulation2Buffer,this.m_internalAllocatedCapacity),this.FreeBuffer(this.m_depthBuffer,this.m_internalAllocatedCapacity),this.FreeBuffer(this.m_groupBuffer,this.m_internalAllocatedCapacity)},r.CreateParticle=function(t){if(this.m_world.IsLocked())throw new Error;if(this.m_count>=this.m_internalAllocatedCapacity){var i=this.m_count?2*this.m_count:T;this.ReallocateInternalAllocatedBuffers(i)}if(this.m_count>=this.m_internalAllocatedCapacity){if(!this.m_def.destroyByAge)return v;this.DestroyOldestParticle(0,!1),this.SolveZombie()}var n=this.m_count++;this.m_flagsBuffer.data[n]=0,this.m_lastBodyContactStepBuffer.data&&(this.m_lastBodyContactStepBuffer.data[n]=0),this.m_bodyContactCountBuffer.data&&(this.m_bodyContactCountBuffer.data[n]=0),this.m_consecutiveContactStepsBuffer.data&&(this.m_consecutiveContactStepsBuffer.data[n]=0),this.m_positionBuffer.data[n]=(this.m_positionBuffer.data[n]||new X).Copy(e(t.position,X.ZERO)),this.m_velocityBuffer.data[n]=(this.m_velocityBuffer.data[n]||new X).Copy(e(t.velocity,X.ZERO)),this.m_weightBuffer[n]=0,this.m_forceBuffer[n]=(this.m_forceBuffer[n]||new X).SetZero(),this.m_staticPressureBuffer&&(this.m_staticPressureBuffer[n]=0),this.m_depthBuffer&&(this.m_depthBuffer[n]=0);var r=(new tt).Copy(e(t.color,tt.ZERO));!this.m_colorBuffer.data&&r.IsZero()||(this.m_colorBuffer.data=this.RequestBuffer(this.m_colorBuffer.data),this.m_colorBuffer.data[n]=(this.m_colorBuffer.data[n]||new tt).Copy(r)),(this.m_userDataBuffer.data||t.userData)&&(this.m_userDataBuffer.data=this.RequestBuffer(this.m_userDataBuffer.data),this.m_userDataBuffer.data[n]=t.userData),this.m_handleIndexBuffer.data&&(this.m_handleIndexBuffer.data[n]=null);var s=this.m_proxyBuffer.data[this.m_proxyBuffer.Append()],a=e(t.lifetime,0),o=a>0;(this.m_expirationTimeBuffer.data||o)&&(this.SetParticleLifetime(n,o?a:this.ExpirationTimeToLifetime(-this.GetQuantizedTimeElapsed())),this.m_indexByExpirationTimeBuffer.data[n]=n),s.index=n;var h=e(t.group,null);return this.m_groupBuffer[n]=h,h&&(h.m_firstIndex<h.m_lastIndex?(this.RotateBuffer(h.m_firstIndex,h.m_lastIndex,n),h.m_lastIndex=n+1):(h.m_firstIndex=n,h.m_lastIndex=n+1)),this.SetParticleFlags(n,e(t.flags,0)),n},r.GetParticleHandleFromIndex=function(t){this.m_handleIndexBuffer.data=this.RequestBuffer(this.m_handleIndexBuffer.data);var e=this.m_handleIndexBuffer.data[t];return e||((e=new Un).SetIndex(t),this.m_handleIndexBuffer.data[t]=e,e)},r.DestroyParticle=function(e,i){void 0===i&&(i=!1);var n=t.b2ParticleFlag.b2_zombieParticle;i&&(n|=t.b2ParticleFlag.b2_destructionListenerParticle),this.SetParticleFlags(e,this.m_flagsBuffer.data[e]|n)},r.DestroyOldestParticle=function(t,e){void 0===e&&(e=!1);var i=this.GetParticleCount(),n=this.m_indexByExpirationTimeBuffer.data[i-(t+1)],r=this.m_indexByExpirationTimeBuffer.data[t];this.DestroyParticle(this.m_expirationTimeBuffer.data[n]>0?n:r,e)},r.DestroyParticlesInShape=function(t,e,i){void 0===i&&(i=!1);var r=n.DestroyParticlesInShape_s_aabb;if(this.m_world.IsLocked())throw new Error;var s=new vr(this,t,e,i),a=r;return t.ComputeAABB(a,e,0),this.m_world.QueryAABB(s,a),s.Destroyed()},r.CreateParticleGroup=function(t){var i=n.CreateParticleGroup_s_transform;if(this.m_world.IsLocked())throw new Error;var r=i;r.SetPositionAngle(e(t.position,X.ZERO),e(t.angle,0));var s=this.m_count;if(t.shape&&this.CreateParticlesWithShapeForGroup(t.shape,t,r),t.shapes&&this.CreateParticlesWithShapesForGroup(t.shapes,e(t.shapeCount,t.shapes.length),t,r),t.positionData)for(var a=e(t.particleCount,t.positionData.length),o=0;o<a;o++){var h=t.positionData[o];this.CreateParticleForGroup(t,r,h)}var u=this.m_count,l=new Hn(this);l.m_firstIndex=s,l.m_lastIndex=u,l.m_strength=e(t.strength,1),l.m_userData=t.userData,l.m_transform.Copy(r),l.m_prev=null,l.m_next=this.m_groupList,this.m_groupList&&(this.m_groupList.m_prev=l),this.m_groupList=l,++this.m_groupCount;for(var c=s;c<u;c++)this.m_groupBuffer[c]=l;this.SetGroupFlags(l,e(t.groupFlags,0));var _=new gr;return this.UpdateContacts(!0),this.UpdatePairsAndTriads(s,u,_),t.group&&(this.JoinParticleGroups(t.group,l),l=t.group),l},r.JoinParticleGroups=function(t,e){if(this.m_world.IsLocked())throw new Error;this.RotateBuffer(e.m_firstIndex,e.m_lastIndex,this.m_count),this.RotateBuffer(t.m_firstIndex,t.m_lastIndex,e.m_firstIndex);var i=new yr(e.m_firstIndex);this.UpdateContacts(!0),this.UpdatePairsAndTriads(t.m_firstIndex,e.m_lastIndex,i);for(var n=e.m_firstIndex;n<e.m_lastIndex;n++)this.m_groupBuffer[n]=t;var r=t.m_groupFlags|e.m_groupFlags;this.SetGroupFlags(t,r),t.m_lastIndex=e.m_lastIndex,e.m_firstIndex=e.m_lastIndex,this.DestroyParticleGroup(e)},r.SplitParticleGroup=function(t){this.UpdateContacts(!0);var e=x(t.GetParticleCount(),(function(){return new fr}));n.InitializeParticleLists(t,e),this.MergeParticleListsInContact(t,e);var i=n.FindLongestParticleList(t,e);this.MergeZombieParticleListNodes(t,e,i),this.CreateParticleGroupsFromParticleList(t,e,i),this.UpdatePairsAndTriadsWithParticleList(t,e)},r.GetParticleGroupList=function(){return this.m_groupList},r.GetParticleGroupCount=function(){return this.m_groupCount},r.GetParticleCount=function(){return this.m_count},r.GetMaxParticleCount=function(){return this.m_def.maxCount},r.SetMaxParticleCount=function(t){this.m_def.maxCount=t},r.GetAllParticleFlags=function(){return this.m_allParticleFlags},r.GetAllGroupFlags=function(){return this.m_allGroupFlags},r.SetPaused=function(t){this.m_paused=t},r.GetPaused=function(){return this.m_paused},r.SetDensity=function(t){this.m_def.density=t,this.m_inverseDensity=1/this.m_def.density},r.GetDensity=function(){return this.m_def.density},r.SetGravityScale=function(t){this.m_def.gravityScale=t},r.GetGravityScale=function(){return this.m_def.gravityScale},r.SetDamping=function(t){this.m_def.dampingStrength=t},r.GetDamping=function(){return this.m_def.dampingStrength},r.SetStaticPressureIterations=function(t){this.m_def.staticPressureIterations=t},r.GetStaticPressureIterations=function(){return this.m_def.staticPressureIterations},r.SetRadius=function(t){this.m_particleDiameter=2*t,this.m_squaredDiameter=this.m_particleDiameter*this.m_particleDiameter,this.m_inverseDiameter=1/this.m_particleDiameter},r.GetRadius=function(){return this.m_particleDiameter/2},r.GetPositionBuffer=function(){return this.m_positionBuffer.data},r.GetVelocityBuffer=function(){return this.m_velocityBuffer.data},r.GetColorBuffer=function(){return this.m_colorBuffer.data=this.RequestBuffer(this.m_colorBuffer.data),this.m_colorBuffer.data},r.GetGroupBuffer=function(){return this.m_groupBuffer},r.GetWeightBuffer=function(){return this.m_weightBuffer},r.GetUserDataBuffer=function(){return this.m_userDataBuffer.data=this.RequestBuffer(this.m_userDataBuffer.data),this.m_userDataBuffer.data},r.GetFlagsBuffer=function(){return this.m_flagsBuffer.data},r.SetParticleFlags=function(e,i){this.m_flagsBuffer.data[e]&~i&&(this.m_needsUpdateAllParticleFlags=!0),~this.m_allParticleFlags&i&&(i&t.b2ParticleFlag.b2_tensileParticle&&(this.m_accumulation2Buffer=this.RequestBuffer(this.m_accumulation2Buffer)),i&t.b2ParticleFlag.b2_colorMixingParticle&&(this.m_colorBuffer.data=this.RequestBuffer(this.m_colorBuffer.data)),this.m_allParticleFlags|=i),this.m_flagsBuffer.data[e]=i},r.GetParticleFlags=function(t){return this.m_flagsBuffer.data[t]},r.SetFlagsBuffer=function(t){this.SetUserOverridableBuffer(this.m_flagsBuffer,t)},r.SetPositionBuffer=function(t){if(t instanceof Float32Array){if(t.length%2!=0)throw new Error;for(var e=t.length/2,i=new Array(e),n=0;n<e;++n)i[n]=new X(t.subarray(2*n,2*n+2));t=i}this.SetUserOverridableBuffer(this.m_positionBuffer,t)},r.SetVelocityBuffer=function(t){if(t instanceof Float32Array){if(t.length%2!=0)throw new Error;for(var e=t.length/2,i=new Array(e),n=0;n<e;++n)i[n]=new X(t.subarray(2*n,2*n+2));t=i}this.SetUserOverridableBuffer(this.m_velocityBuffer,t)},r.SetColorBuffer=function(t){if(t instanceof Float32Array){if(t.length%4!=0)throw new Error;for(var e=t.length/4,i=new Array(e),n=0;n<e;++n)i[n]=new tt(t.subarray(4*n,4*n+4));t=i}this.SetUserOverridableBuffer(this.m_colorBuffer,t)},r.SetUserDataBuffer=function(t){this.SetUserOverridableBuffer(this.m_userDataBuffer,t)},r.GetContacts=function(){return this.m_contactBuffer.data},r.GetContactCount=function(){return this.m_contactBuffer.count},r.GetBodyContacts=function(){return this.m_bodyContactBuffer.data},r.GetBodyContactCount=function(){return this.m_bodyContactBuffer.count},r.GetPairs=function(){return this.m_pairBuffer.data},r.GetPairCount=function(){return this.m_pairBuffer.count},r.GetTriads=function(){return this.m_triadBuffer.data},r.GetTriadCount=function(){return this.m_triadBuffer.count},r.SetStuckThreshold=function(t){this.m_stuckThreshold=t,t>0&&(this.m_lastBodyContactStepBuffer.data=this.RequestBuffer(this.m_lastBodyContactStepBuffer.data),this.m_bodyContactCountBuffer.data=this.RequestBuffer(this.m_bodyContactCountBuffer.data),this.m_consecutiveContactStepsBuffer.data=this.RequestBuffer(this.m_consecutiveContactStepsBuffer.data))},r.GetStuckCandidates=function(){return this.m_stuckParticleBuffer.Data()},r.GetStuckCandidateCount=function(){return this.m_stuckParticleBuffer.GetCount()},r.ComputeCollisionEnergy=function(){for(var t=n.ComputeCollisionEnergy_s_v,e=this.m_velocityBuffer.data,i=0,r=0;r<this.m_contactBuffer.count;r++){var s=this.m_contactBuffer.data[r],a=s.indexA,o=s.indexB,h=s.normal,u=X.SubVV(e[o],e[a],t),l=X.DotVV(u,h);l<0&&(i+=l*l)}return.5*this.GetParticleMass()*i},r.SetStrictContactCheck=function(t){this.m_def.strictContactCheck=t},r.GetStrictContactCheck=function(){return this.m_def.strictContactCheck},r.SetParticleLifetime=function(t,e){var i=null===this.m_indexByExpirationTimeBuffer.data;if(this.m_expirationTimeBuffer.data=this.RequestBuffer(this.m_expirationTimeBuffer.data),this.m_indexByExpirationTimeBuffer.data=this.RequestBuffer(this.m_indexByExpirationTimeBuffer.data),i)for(var n=this.GetParticleCount(),r=0;r<n;++r)this.m_indexByExpirationTimeBuffer.data[r]=r;var s=e/this.m_def.lifetimeGranularity,a=s>0?this.GetQuantizedTimeElapsed()+s:s;a!==this.m_expirationTimeBuffer.data[t]&&(this.m_expirationTimeBuffer.data[t]=a,this.m_expirationTimeBufferRequiresSorting=!0)},r.GetParticleLifetime=function(t){return this.ExpirationTimeToLifetime(this.GetExpirationTimeBuffer()[t])},r.SetDestructionByAge=function(t){t&&this.GetExpirationTimeBuffer(),this.m_def.destroyByAge=t},r.GetDestructionByAge=function(){return this.m_def.destroyByAge},r.GetExpirationTimeBuffer=function(){return this.m_expirationTimeBuffer.data=this.RequestBuffer(this.m_expirationTimeBuffer.data),this.m_expirationTimeBuffer.data},r.ExpirationTimeToLifetime=function(t){return(t>0?t-this.GetQuantizedTimeElapsed():t)*this.m_def.lifetimeGranularity},r.GetIndexByExpirationTimeBuffer=function(){return this.GetParticleCount()?this.SetParticleLifetime(0,this.GetParticleLifetime(0)):this.m_indexByExpirationTimeBuffer.data=this.RequestBuffer(this.m_indexByExpirationTimeBuffer.data),this.m_indexByExpirationTimeBuffer.data},r.ParticleApplyLinearImpulse=function(t,e){this.ApplyLinearImpulse(t,t+1,e)},r.ApplyLinearImpulse=function(t,e,i){for(var n=this.m_velocityBuffer.data,r=(e-t)*this.GetParticleMass(),s=(new X).Copy(i).SelfMul(1/r),a=t;a<e;a++)n[a].SelfAdd(s)},n.IsSignificantForce=function(t){return 0!==t.x||0!==t.y},r.ParticleApplyForce=function(t,e){n.IsSignificantForce(e)&&this.ForceCanBeApplied(this.m_flagsBuffer.data[t])&&(this.PrepareForceBuffer(),this.m_forceBuffer[t].SelfAdd(e))},r.ApplyForce=function(t,e,i){var r=(new X).Copy(i).SelfMul(1/(e-t));if(n.IsSignificantForce(r)){this.PrepareForceBuffer();for(var s=t;s<e;s++)this.m_forceBuffer[s].SelfAdd(r)}},r.GetNext=function(){return this.m_next},r.QueryAABB=function(t,e){if(0!==this.m_proxyBuffer.count)for(var i=this.m_proxyBuffer.count,r=$n(this.m_proxyBuffer.data,0,i,n.computeTag(this.m_inverseDiameter*e.lowerBound.x,this.m_inverseDiameter*e.lowerBound.y),cr.CompareProxyTag),s=tr(this.m_proxyBuffer.data,r,i,n.computeTag(this.m_inverseDiameter*e.upperBound.x,this.m_inverseDiameter*e.upperBound.y),cr.CompareTagProxy),a=this.m_positionBuffer.data,o=r;o<s;++o){var h=this.m_proxyBuffer.data[o].index,u=a[h];if(e.lowerBound.x<u.x&&u.x<e.upperBound.x&&e.lowerBound.y<u.y&&u.y<e.upperBound.y&&!t.ReportParticle(this,h))break}},r.QueryShapeAABB=function(t,e,i,r){void 0===r&&(r=0);var s=n.QueryShapeAABB_s_aabb;e.ComputeAABB(s,i,r),this.QueryAABB(t,s)},r.QueryPointAABB=function(t,e,i){void 0===i&&(i=l);var r=n.QueryPointAABB_s_aabb;r.lowerBound.Set(e.x-i,e.y-i),r.upperBound.Set(e.x+i,e.y+i),this.QueryAABB(t,r)},r.RayCast=function(t,e,i){var r=n.RayCast_s_aabb,s=n.RayCast_s_p,a=n.RayCast_s_v,o=n.RayCast_s_n,h=n.RayCast_s_point;if(0!==this.m_proxyBuffer.count){var u=this.m_positionBuffer.data,l=r;X.MinV(e,i,l.lowerBound),X.MaxV(e,i,l.upperBound);for(var c,_=1,f=X.SubVV(i,e,a),d=X.DotVV(f,f),p=this.GetInsideBoundsEnumerator(l);(c=p.GetNext())>=0;){var m=X.SubVV(e,u[c],s),g=X.DotVV(m,f),v=g*g-d*(X.DotVV(m,m)-this.m_squaredDiameter);if(v>=0){var y=k(v),S=(-g-y)/d;if(S>_)continue;if(S<0&&((S=(-g+y)/d)<0||S>_))continue;var T=X.AddVMulSV(m,S,f,o);if(T.Normalize(),(_=M(_,t.ReportParticle(this,c,X.AddVMulSV(e,S,f,h),T,S)))<=0)break}}}},r.ComputeAABB=function(t){var e=this.GetParticleCount();t.lowerBound.x=+i,t.lowerBound.y=+i,t.upperBound.x=-i,t.upperBound.y=-i;for(var n=this.m_positionBuffer.data,r=0;r<e;r++){var s=n[r];X.MinV(t.lowerBound,s,t.lowerBound),X.MaxV(t.upperBound,s,t.upperBound)}t.lowerBound.x-=this.m_particleDiameter,t.lowerBound.y-=this.m_particleDiameter,t.upperBound.x+=this.m_particleDiameter,t.upperBound.y+=this.m_particleDiameter},r.FreeBuffer=function(t){null!==t&&(t.length=0)},r.FreeUserOverridableBuffer=function(t){0===t.userSuppliedCapacity&&this.FreeBuffer(t.data,this.m_internalAllocatedCapacity)},r.ReallocateBuffer3=function(t,e,i){if(i<=e)throw new Error;var n=t?t.slice():[];return n.length=i,n},r.ReallocateBuffer5=function(t,e,i,n,r){if(n<=i)throw new Error;if(e&&!(n<=e))throw new Error;return r&&!t||e||(t=this.ReallocateBuffer3(t,i,n)),t},r.ReallocateBuffer4=function(t,e,i,n){return this.ReallocateBuffer5(t.data,t.userSuppliedCapacity,e,i,n)},r.RequestBuffer=function(t){return t||(0===this.m_internalAllocatedCapacity&&this.ReallocateInternalAllocatedBuffers(T),(t=[]).length=this.m_internalAllocatedCapacity),t},r.ReallocateHandleBuffers=function(t){this.m_handleIndexBuffer.data=this.ReallocateBuffer4(this.m_handleIndexBuffer,this.m_internalAllocatedCapacity,t,!0)},r.ReallocateInternalAllocatedBuffers=function(t){function e(t,e){return e&&t>e?e:t}if(t=e(t,this.m_def.maxCount),t=e(t,this.m_flagsBuffer.userSuppliedCapacity),t=e(t,this.m_positionBuffer.userSuppliedCapacity),t=e(t,this.m_velocityBuffer.userSuppliedCapacity),t=e(t,this.m_colorBuffer.userSuppliedCapacity),t=e(t,this.m_userDataBuffer.userSuppliedCapacity),this.m_internalAllocatedCapacity<t){this.ReallocateHandleBuffers(t),this.m_flagsBuffer.data=this.ReallocateBuffer4(this.m_flagsBuffer,this.m_internalAllocatedCapacity,t,!1);var i=this.m_stuckThreshold>0;this.m_lastBodyContactStepBuffer.data=this.ReallocateBuffer4(this.m_lastBodyContactStepBuffer,this.m_internalAllocatedCapacity,t,i),this.m_bodyContactCountBuffer.data=this.ReallocateBuffer4(this.m_bodyContactCountBuffer,this.m_internalAllocatedCapacity,t,i),this.m_consecutiveContactStepsBuffer.data=this.ReallocateBuffer4(this.m_consecutiveContactStepsBuffer,this.m_internalAllocatedCapacity,t,i),this.m_positionBuffer.data=this.ReallocateBuffer4(this.m_positionBuffer,this.m_internalAllocatedCapacity,t,!1),this.m_velocityBuffer.data=this.ReallocateBuffer4(this.m_velocityBuffer,this.m_internalAllocatedCapacity,t,!1),this.m_forceBuffer=this.ReallocateBuffer5(this.m_forceBuffer,0,this.m_internalAllocatedCapacity,t,!1),this.m_weightBuffer=this.ReallocateBuffer5(this.m_weightBuffer,0,this.m_internalAllocatedCapacity,t,!1),this.m_staticPressureBuffer=this.ReallocateBuffer5(this.m_staticPressureBuffer,0,this.m_internalAllocatedCapacity,t,!0),this.m_accumulationBuffer=this.ReallocateBuffer5(this.m_accumulationBuffer,0,this.m_internalAllocatedCapacity,t,!1),this.m_accumulation2Buffer=this.ReallocateBuffer5(this.m_accumulation2Buffer,0,this.m_internalAllocatedCapacity,t,!0),this.m_depthBuffer=this.ReallocateBuffer5(this.m_depthBuffer,0,this.m_internalAllocatedCapacity,t,!0),this.m_colorBuffer.data=this.ReallocateBuffer4(this.m_colorBuffer,this.m_internalAllocatedCapacity,t,!0),this.m_groupBuffer=this.ReallocateBuffer5(this.m_groupBuffer,0,this.m_internalAllocatedCapacity,t,!1),this.m_userDataBuffer.data=this.ReallocateBuffer4(this.m_userDataBuffer,this.m_internalAllocatedCapacity,t,!0),this.m_expirationTimeBuffer.data=this.ReallocateBuffer4(this.m_expirationTimeBuffer,this.m_internalAllocatedCapacity,t,!0),this.m_indexByExpirationTimeBuffer.data=this.ReallocateBuffer4(this.m_indexByExpirationTimeBuffer,this.m_internalAllocatedCapacity,t,!1),this.m_internalAllocatedCapacity=t}},r.CreateParticleForGroup=function(t,i,n){var r=new kn;r.flags=e(t.flags,0),Z.MulXV(i,n,r.position),X.AddVV(e(t.linearVelocity,X.ZERO),X.CrossSV(e(t.angularVelocity,0),X.SubVV(r.position,e(t.position,X.ZERO),X.s_t0),X.s_t0),r.velocity),r.color.Copy(e(t.color,tt.ZERO)),r.lifetime=e(t.lifetime,0),r.userData=t.userData,this.CreateParticle(r)},r.CreateParticlesStrokeShapeForGroup=function(i,r,s){var a=n.CreateParticlesStrokeShapeForGroup_s_edge,o=n.CreateParticlesStrokeShapeForGroup_s_d,h=n.CreateParticlesStrokeShapeForGroup_s_p,u=e(r.stride,0);0===u&&(u=this.GetParticleStride());for(var l=0,c=i.GetChildCount(),_=0;_<c;_++){var f=null;i.GetType()===t.b2ShapeType.e_edgeShape?f=i:(f=a,i.GetChildEdge(f,_));for(var d=X.SubVV(f.m_vertex2,f.m_vertex1,o),p=d.Length();l<p;){var m=X.AddVMulSV(f.m_vertex1,l/p,d,h);this.CreateParticleForGroup(r,s,m),l+=u}l-=p}},r.CreateParticlesFillShapeForGroup=function(t,i,r){var s=n.CreateParticlesFillShapeForGroup_s_aabb,a=n.CreateParticlesFillShapeForGroup_s_p,o=e(i.stride,0);0===o&&(o=this.GetParticleStride());var h=Z.IDENTITY,u=s;t.ComputeAABB(u,h,0);for(var l=Math.floor(u.lowerBound.y/o)*o;l<u.upperBound.y;l+=o)for(var c=Math.floor(u.lowerBound.x/o)*o;c<u.upperBound.x;c+=o){var _=a.Set(c,l);t.TestPoint(h,_)&&this.CreateParticleForGroup(i,r,_)}},r.CreateParticlesWithShapeForGroup=function(e,i,n){switch(e.GetType()){case t.b2ShapeType.e_edgeShape:case t.b2ShapeType.e_chainShape:this.CreateParticlesStrokeShapeForGroup(e,i,n);break;case t.b2ShapeType.e_polygonShape:case t.b2ShapeType.e_circleShape:this.CreateParticlesFillShapeForGroup(e,i,n)}},r.CreateParticlesWithShapesForGroup=function(t,e,i,n){var r=new Sr(t,e);this.CreateParticlesFillShapeForGroup(r,i,n)},r.CloneParticle=function(t,e){var i=new kn;i.flags=this.m_flagsBuffer.data[t],i.position.Copy(this.m_positionBuffer.data[t]),i.velocity.Copy(this.m_velocityBuffer.data[t]),this.m_colorBuffer.data&&i.color.Copy(this.m_colorBuffer.data[t]),this.m_userDataBuffer.data&&(i.userData=this.m_userDataBuffer.data[t]),i.group=e;var n=this.CreateParticle(i);if(this.m_handleIndexBuffer.data){var r=this.m_handleIndexBuffer.data[t];r&&r.SetIndex(n),this.m_handleIndexBuffer.data[n]=r,this.m_handleIndexBuffer.data[t]=null}return this.m_lastBodyContactStepBuffer.data&&(this.m_lastBodyContactStepBuffer.data[n]=this.m_lastBodyContactStepBuffer.data[t]),this.m_bodyContactCountBuffer.data&&(this.m_bodyContactCountBuffer.data[n]=this.m_bodyContactCountBuffer.data[t]),this.m_consecutiveContactStepsBuffer.data&&(this.m_consecutiveContactStepsBuffer.data[n]=this.m_consecutiveContactStepsBuffer.data[t]),this.m_hasForce&&this.m_forceBuffer[n].Copy(this.m_forceBuffer[t]),this.m_staticPressureBuffer&&(this.m_staticPressureBuffer[n]=this.m_staticPressureBuffer[t]),this.m_depthBuffer&&(this.m_depthBuffer[n]=this.m_depthBuffer[t]),this.m_expirationTimeBuffer.data&&(this.m_expirationTimeBuffer.data[n]=this.m_expirationTimeBuffer.data[t]),n},r.DestroyParticlesInGroup=function(t,e){void 0===e&&(e=!1);for(var i=t.m_firstIndex;i<t.m_lastIndex;i++)this.DestroyParticle(i,e)},r.DestroyParticleGroup=function(t){this.m_world.m_destructionListener&&this.m_world.m_destructionListener.SayGoodbyeParticleGroup(t),this.SetGroupFlags(t,0);for(var e=t.m_firstIndex;e<t.m_lastIndex;e++)this.m_groupBuffer[e]=null;t.m_prev&&(t.m_prev.m_next=t.m_next),t.m_next&&(t.m_next.m_prev=t.m_prev),t===this.m_groupList&&(this.m_groupList=t.m_next),--this.m_groupCount},n.ParticleCanBeConnected=function(e,i){return 0!=(e&(t.b2ParticleFlag.b2_wallParticle|t.b2ParticleFlag.b2_springParticle|t.b2ParticleFlag.b2_elasticParticle))||null!==i&&0!=(i.GetGroupFlags()&t.b2ParticleGroupFlag.b2_rigidParticleGroup)},r.UpdatePairsAndTriads=function(e,i,r){for(var s=n.UpdatePairsAndTriads_s_dab,a=n.UpdatePairsAndTriads_s_dbc,o=n.UpdatePairsAndTriads_s_dca,h=this.m_positionBuffer.data,u=0,l=e;l<i;l++)u|=this.m_flagsBuffer.data[l];if(u&n.k_pairFlags)for(var c=0;c<this.m_contactBuffer.count;c++){var _=this.m_contactBuffer.data[c],f=_.indexA,d=_.indexB,p=this.m_flagsBuffer.data[f],m=this.m_flagsBuffer.data[d],g=this.m_groupBuffer[f],v=this.m_groupBuffer[d];if(f>=e&&f<i&&d>=e&&d<i&&!((p|m)&t.b2ParticleFlag.b2_zombieParticle)&&(p|m)&n.k_pairFlags&&(r.IsNecessary(f)||r.IsNecessary(d))&&n.ParticleCanBeConnected(p,g)&&n.ParticleCanBeConnected(m,v)&&r.ShouldCreatePair(f,d)){var y=this.m_pairBuffer.data[this.m_pairBuffer.Append()];y.indexA=f,y.indexB=d,y.flags=_.flags,y.strength=M(g?g.m_strength:1,v?v.m_strength:1),y.distance=X.DistanceVV(h[f],h[d])}Zn(this.m_pairBuffer.data,0,this.m_pairBuffer.count,n.ComparePairIndices),this.m_pairBuffer.Unique(n.MatchPairIndices)}if(u&n.k_triadFlags){for(var S=new Xn(i-e),T=e;T<i;T++){var A=this.m_flagsBuffer.data[T],b=this.m_groupBuffer[T];A&t.b2ParticleFlag.b2_zombieParticle||!n.ParticleCanBeConnected(A,b)||S.AddGenerator(h[T],T,r.IsNecessary(T))}var E=this.GetParticleStride();S.Generate(E/2,2*E);var C=this;S.GetNodes((function(t,e,i){var u=C.m_flagsBuffer.data[t],l=C.m_flagsBuffer.data[e],c=C.m_flagsBuffer.data[i];if((u|l|c)&n.k_triadFlags&&r.ShouldCreateTriad(t,e,i)){var _=h[t],f=h[e],d=h[i],p=X.SubVV(_,f,s),m=X.SubVV(f,d,a),g=X.SubVV(d,_,o),v=4*C.m_squaredDiameter;if(X.DotVV(p,p)>v||X.DotVV(m,m)>v||X.DotVV(g,g)>v)return;var y=C.m_groupBuffer[t],S=C.m_groupBuffer[e],T=C.m_groupBuffer[i],A=C.m_triadBuffer.data[C.m_triadBuffer.Append()];A.indexA=t,A.indexB=e,A.indexC=i,A.flags=u|l|c,A.strength=M(M(y?y.m_strength:1,S?S.m_strength:1),T?T.m_strength:1);var b=(_.x+f.x+d.x)/3,E=(_.y+f.y+d.y)/3;A.pa.x=_.x-b,A.pa.y=_.y-E,A.pb.x=f.x-b,A.pb.y=f.y-E,A.pc.x=d.x-b,A.pc.y=d.y-E,A.ka=-X.DotVV(g,p),A.kb=-X.DotVV(p,m),A.kc=-X.DotVV(m,g),A.s=X.CrossVV(_,f)+X.CrossVV(f,d)+X.CrossVV(d,_)}})),Zn(this.m_triadBuffer.data,0,this.m_triadBuffer.count,n.CompareTriadIndices),this.m_triadBuffer.Unique(n.MatchTriadIndices)}},r.UpdatePairsAndTriadsWithReactiveParticles=function(){var e=new Tr(this.m_flagsBuffer);this.UpdatePairsAndTriads(0,this.m_count,e);for(var i=0;i<this.m_count;i++)this.m_flagsBuffer.data[i]&=~t.b2ParticleFlag.b2_reactiveParticle;this.m_allParticleFlags&=~t.b2ParticleFlag.b2_reactiveParticle},n.ComparePairIndices=function(t,e){var i=t.indexA-e.indexA;return 0!==i?i<0:t.indexB<e.indexB},n.MatchPairIndices=function(t,e){return t.indexA===e.indexA&&t.indexB===e.indexB},n.CompareTriadIndices=function(t,e){var i=t.indexA-e.indexA;if(0!==i)return i<0;var n=t.indexB-e.indexB;return 0!==n?n<0:t.indexC<e.indexC},n.MatchTriadIndices=function(t,e){return t.indexA===e.indexA&&t.indexB===e.indexB&&t.indexC===e.indexC},n.InitializeParticleLists=function(t,e){for(var i=t.GetBufferIndex(),n=t.GetParticleCount(),r=0;r<n;r++){var s=e[r];s.list=s,s.next=null,s.count=1,s.index=r+i}},r.MergeParticleListsInContact=function(t,e){for(var i=t.GetBufferIndex(),r=0;r<this.m_contactBuffer.count;r++){var s=this.m_contactBuffer.data[r],a=s.indexA,o=s.indexB;if(t.ContainsParticle(a)&&t.ContainsParticle(o)){var h=e[a-i].list,u=e[o-i].list;if(h!==u){if(h.count<u.count){var l=h;h=u,u=l}n.MergeParticleLists(h,u)}}}},n.MergeParticleLists=function(t,e){for(var i=e;;){i.list=t;var n=i.next;if(!n){i.next=t.next;break}i=n}t.next=e,t.count+=e.count,e.count=0},n.FindLongestParticleList=function(t,e){for(var i=t.GetParticleCount(),n=e[0],r=0;r<i;r++){var s=e[r];n.count<s.count&&(n=s)}return n},r.MergeZombieParticleListNodes=function(e,i,r){for(var s=e.GetParticleCount(),a=0;a<s;a++){var o=i[a];o!==r&&this.m_flagsBuffer.data[o.index]&t.b2ParticleFlag.b2_zombieParticle&&n.MergeParticleListAndNode(r,o)}},n.MergeParticleListAndNode=function(t,e){e.list=t,e.next=t.next,t.next=e,t.count++,e.count=0},r.CreateParticleGroupsFromParticleList=function(e,i,n){var r=e.GetParticleCount(),s=new zn;s.groupFlags=e.GetGroupFlags(),s.userData=e.GetUserData();for(var a=0;a<r;a++){var o=i[a];if(o.count&&o!==n)for(var h=this.CreateParticleGroup(s),u=o;u;u=u.next){var l=u.index,c=this.CloneParticle(l,h);this.m_flagsBuffer.data[l]|=t.b2ParticleFlag.b2_zombieParticle,u.index=c}}},r.UpdatePairsAndTriadsWithParticleList=function(t,e){for(var i=t.GetBufferIndex(),n=0;n<this.m_pairBuffer.count;n++){var r=this.m_pairBuffer.data[n],s=r.indexA,a=r.indexB;t.ContainsParticle(s)&&(r.indexA=e[s-i].index),t.ContainsParticle(a)&&(r.indexB=e[a-i].index)}for(var o=0;o<this.m_triadBuffer.count;o++){var h=this.m_triadBuffer.data[o],u=h.indexA,l=h.indexB,c=h.indexC;t.ContainsParticle(u)&&(h.indexA=e[u-i].index),t.ContainsParticle(l)&&(h.indexB=e[l-i].index),t.ContainsParticle(c)&&(h.indexC=e[c-i].index)}},r.ComputeDepth=function(){for(var e=[],n=0,r=0;r<this.m_contactBuffer.count;r++){var s=this.m_contactBuffer.data[r],a=s.indexA,o=s.indexB,h=this.m_groupBuffer[a],u=this.m_groupBuffer[o];h&&h===u&&h.m_groupFlags&t.b2ParticleGroupFlag.b2_particleGroupNeedsUpdateDepth&&(e[n++]=s)}for(var l=[],c=0,_=this.m_groupList;_;_=_.GetNext())if(_.m_groupFlags&t.b2ParticleGroupFlag.b2_particleGroupNeedsUpdateDepth){l[c++]=_,this.SetGroupFlags(_,_.m_groupFlags&~t.b2ParticleGroupFlag.b2_particleGroupNeedsUpdateDepth);for(var f=_.m_firstIndex;f<_.m_lastIndex;f++)this.m_accumulationBuffer[f]=0}for(var d=0;d<n;d++){var p=e[d],m=p.indexA,g=p.indexB,v=p.weight;this.m_accumulationBuffer[m]+=v,this.m_accumulationBuffer[g]+=v}for(var y=0;y<c;y++)for(var S=l[y],T=S.m_firstIndex;T<S.m_lastIndex;T++){var A=this.m_accumulationBuffer[T];this.m_depthBuffer[T]=A<.8?0:i}for(var b=k(this.m_count)>>0,E=0;E<b;E++){for(var C=!1,x=0;x<n;x++){var w=e[x],R=w.indexA,I=w.indexB,D=1-w.weight,B=this.m_depthBuffer[R],M=this.m_depthBuffer[I],P=M+D,O=B+D;B>P&&(this.m_depthBuffer[R]=P,C=!0),M>O&&(this.m_depthBuffer[I]=O,C=!0)}if(!C)break}for(var L=0;L<c;L++)for(var N=l[L],F=N.m_firstIndex;F<N.m_lastIndex;F++)this.m_depthBuffer[F]<i?this.m_depthBuffer[F]*=this.m_particleDiameter:this.m_depthBuffer[F]=0},r.GetInsideBoundsEnumerator=function(t){var e=n.computeTag(this.m_inverseDiameter*t.lowerBound.x-1,this.m_inverseDiameter*t.lowerBound.y-1),i=n.computeTag(this.m_inverseDiameter*t.upperBound.x+1,this.m_inverseDiameter*t.upperBound.y+1),r=this.m_proxyBuffer.count,s=$n(this.m_proxyBuffer.data,0,r,e,cr.CompareProxyTag),a=tr(this.m_proxyBuffer.data,0,r,i,cr.CompareTagProxy);return new _r(this,e,i,s,a)},r.UpdateAllParticleFlags=function(){this.m_allParticleFlags=0;for(var t=0;t<this.m_count;t++)this.m_allParticleFlags|=this.m_flagsBuffer.data[t];this.m_needsUpdateAllParticleFlags=!1},r.UpdateAllGroupFlags=function(){this.m_allGroupFlags=0;for(var t=this.m_groupList;t;t=t.GetNext())this.m_allGroupFlags|=t.m_groupFlags;this.m_needsUpdateAllGroupFlags=!1},r.AddContact=function(t,e){var i=this.m_flagsBuffer.data,r=this.m_positionBuffer.data,s=X.SubVV(r[e],r[t],n.AddContact_s_d),a=X.DotVV(s,s);if(0<a&&a<this.m_squaredDiameter){var o=F(a),h=this.m_contactBuffer.data[this.m_contactBuffer.Append()];h.indexA=t,h.indexB=e,h.flags=i[t]|i[e],h.weight=1-a*o*this.m_inverseDiameter,h.normal.x=o*s.x,h.normal.y=o*s.y}},r.FindContacts_Reference=function(){var t=this.m_proxyBuffer.count;this.m_contactBuffer.count=0;for(var e=0,i=0;e<t;e++){for(var r=n.computeRelativeTag(this.m_proxyBuffer.data[e].tag,1,0),s=e+1;s<t&&!(r<this.m_proxyBuffer.data[s].tag);s++)this.AddContact(this.m_proxyBuffer.data[e].index,this.m_proxyBuffer.data[s].index,this.m_contactBuffer);for(var a=n.computeRelativeTag(this.m_proxyBuffer.data[e].tag,-1,1);i<t&&!(a<=this.m_proxyBuffer.data[i].tag);i++);for(var o=n.computeRelativeTag(this.m_proxyBuffer.data[e].tag,1,1),h=i;h<t&&!(o<this.m_proxyBuffer.data[h].tag);h++)this.AddContact(this.m_proxyBuffer.data[e].index,this.m_proxyBuffer.data[h].index,this.m_contactBuffer)}},r.FindContacts=function(t){this.FindContacts_Reference(t)},r.UpdateProxies_Reference=function(){for(var t=this.m_positionBuffer.data,e=this.m_inverseDiameter,i=0;i<this.m_proxyBuffer.count;++i){var r=this.m_proxyBuffer.data[i],s=t[r.index];r.tag=n.computeTag(e*s.x,e*s.y)}},r.UpdateProxies=function(t){this.UpdateProxies_Reference(t)},r.SortProxies=function(){Qn(this.m_proxyBuffer.data,0,this.m_proxyBuffer.count,cr.CompareProxyProxy)},r.FilterContacts=function(){var e=this.GetParticleContactFilter();if(null!==e){var i=this;this.m_contactBuffer.RemoveIf((function(n){return 0!=(n.flags&t.b2ParticleFlag.b2_particleContactFilterParticle)&&!e.ShouldCollideParticleParticle(i,n.indexA,n.indexB)}))}},r.NotifyContactListenerPreContact=function(t){if(null!==this.GetParticleContactListener())throw t.Initialize(this.m_contactBuffer,this.m_flagsBuffer),new Error},r.NotifyContactListenerPostContact=function(){var t=this.GetParticleContactListener();if(null!==t){for(var e=0;e<this.m_contactBuffer.count;++e){var i=this.m_contactBuffer.data[e];t.BeginContactParticleParticle(this,i)}throw new Error}},n.b2ParticleContactIsZombie=function(e){return(e.flags&t.b2ParticleFlag.b2_zombieParticle)===t.b2ParticleFlag.b2_zombieParticle},r.UpdateContacts=function(t){this.UpdateProxies(this.m_proxyBuffer),this.SortProxies(this.m_proxyBuffer);var e=new mr;this.NotifyContactListenerPreContact(e),this.FindContacts(this.m_contactBuffer),this.FilterContacts(this.m_contactBuffer),this.NotifyContactListenerPostContact(e),t&&this.m_contactBuffer.RemoveIf(n.b2ParticleContactIsZombie)},r.NotifyBodyContactListenerPreContact=function(t){if(null!==this.GetFixtureContactListener())throw t.Initialize(this.m_bodyContactBuffer,this.m_flagsBuffer),new Error},r.NotifyBodyContactListenerPostContact=function(){var t=this.GetFixtureContactListener();if(null!==t){for(var e=0;e<this.m_bodyContactBuffer.count;e++){var i=this.m_bodyContactBuffer.data[e];t.BeginContactFixtureParticle(this,i)}throw new Error}},r.UpdateBodyContacts=function(){var t=n.UpdateBodyContacts_s_aabb,e=new pr;if(this.NotifyBodyContactListenerPreContact(e),this.m_stuckThreshold>0)for(var i=this.GetParticleCount(),r=0;r<i;r++)this.m_bodyContactCountBuffer.data[r]=0,this.m_timestamp>this.m_lastBodyContactStepBuffer.data[r]+1&&(this.m_consecutiveContactStepsBuffer.data[r]=0);this.m_bodyContactBuffer.SetCount(0),this.m_stuckParticleBuffer.SetCount(0);var s=t;this.ComputeAABB(s),null===this.UpdateBodyContacts_callback&&(this.UpdateBodyContacts_callback=new Ar(this));var a=this.UpdateBodyContacts_callback;a.m_contactFilter=this.GetFixtureContactFilter(),this.m_world.QueryAABB(a,s),this.m_def.strictContactCheck&&this.RemoveSpuriousBodyContacts(),this.NotifyBodyContactListenerPostContact(e)},r.Solve=function(e){var i=n.Solve_s_subStep;if(0!==this.m_count&&(this.m_expirationTimeBuffer.data&&this.SolveLifetimes(e),this.m_allParticleFlags&t.b2ParticleFlag.b2_zombieParticle&&this.SolveZombie(),this.m_needsUpdateAllParticleFlags&&this.UpdateAllParticleFlags(),this.m_needsUpdateAllGroupFlags&&this.UpdateAllGroupFlags(),!this.m_paused))for(this.m_iterationIndex=0;this.m_iterationIndex<e.particleIterations;this.m_iterationIndex++){++this.m_timestamp;var r=i.Copy(e);r.dt/=e.particleIterations,r.inv_dt*=e.particleIterations,this.UpdateContacts(!1),this.UpdateBodyContacts(),this.ComputeWeight(),this.m_allGroupFlags&t.b2ParticleGroupFlag.b2_particleGroupNeedsUpdateDepth&&this.ComputeDepth(),this.m_allParticleFlags&t.b2ParticleFlag.b2_reactiveParticle&&this.UpdatePairsAndTriadsWithReactiveParticles(),this.m_hasForce&&this.SolveForce(r),this.m_allParticleFlags&t.b2ParticleFlag.b2_viscousParticle&&this.SolveViscous(),this.m_allParticleFlags&t.b2ParticleFlag.b2_repulsiveParticle&&this.SolveRepulsive(r),this.m_allParticleFlags&t.b2ParticleFlag.b2_powderParticle&&this.SolvePowder(r),this.m_allParticleFlags&t.b2ParticleFlag.b2_tensileParticle&&this.SolveTensile(r),this.m_allGroupFlags&t.b2ParticleGroupFlag.b2_solidParticleGroup&&this.SolveSolid(r),this.m_allParticleFlags&t.b2ParticleFlag.b2_colorMixingParticle&&this.SolveColorMixing(),this.SolveGravity(r),this.m_allParticleFlags&t.b2ParticleFlag.b2_staticPressureParticle&&this.SolveStaticPressure(r),this.SolvePressure(r),this.SolveDamping(r),this.m_allParticleFlags&n.k_extraDampingFlags&&this.SolveExtraDamping(),this.m_allParticleFlags&t.b2ParticleFlag.b2_elasticParticle&&this.SolveElastic(r),this.m_allParticleFlags&t.b2ParticleFlag.b2_springParticle&&this.SolveSpring(r),this.LimitVelocity(r),this.m_allGroupFlags&t.b2ParticleGroupFlag.b2_rigidParticleGroup&&this.SolveRigidDamping(),this.m_allParticleFlags&t.b2ParticleFlag.b2_barrierParticle&&this.SolveBarrier(r),this.SolveCollision(r),this.m_allGroupFlags&t.b2ParticleGroupFlag.b2_rigidParticleGroup&&this.SolveRigid(r),this.m_allParticleFlags&t.b2ParticleFlag.b2_wallParticle&&this.SolveWall();for(var s=0;s<this.m_count;s++)this.m_positionBuffer.data[s].SelfMulAdd(r.dt,this.m_velocityBuffer.data[s])}},r.SolveCollision=function(t){var e=n.SolveCollision_s_aabb,r=this.m_positionBuffer.data,s=this.m_velocityBuffer.data,a=e;a.lowerBound.x=+i,a.lowerBound.y=+i,a.upperBound.x=-i,a.upperBound.y=-i;for(var o=0;o<this.m_count;o++){var h=s[o],u=r[o],l=u.x+t.dt*h.x,c=u.y+t.dt*h.y;a.lowerBound.x=M(a.lowerBound.x,M(u.x,l)),a.lowerBound.y=M(a.lowerBound.y,M(u.y,c)),a.upperBound.x=P(a.upperBound.x,P(u.x,l)),a.upperBound.y=P(a.upperBound.y,P(u.y,c))}null===this.SolveCollision_callback&&(this.SolveCollision_callback=new br(this,t));var _=this.SolveCollision_callback;_.m_step=t,this.m_world.QueryAABB(_,a)},r.LimitVelocity=function(t){for(var e=this.m_velocityBuffer.data,i=this.GetCriticalVelocitySquared(t),n=0;n<this.m_count;n++){var r=e[n],s=X.DotVV(r,r);s>i&&r.SelfMul(k(i/s))}},r.SolveGravity=function(t){for(var e=n.SolveGravity_s_gravity,i=this.m_velocityBuffer.data,r=X.MulSV(t.dt*this.m_def.gravityScale,this.m_world.GetGravity(),e),s=0;s<this.m_count;s++)i[s].SelfAdd(r)},r.SolveBarrier=function(e){for(var i=n.SolveBarrier_s_aabb,r=n.SolveBarrier_s_va,s=n.SolveBarrier_s_vb,a=n.SolveBarrier_s_pba,o=n.SolveBarrier_s_vba,h=n.SolveBarrier_s_vc,u=n.SolveBarrier_s_pca,l=n.SolveBarrier_s_vca,c=n.SolveBarrier_s_qba,_=n.SolveBarrier_s_qca,f=n.SolveBarrier_s_dv,d=n.SolveBarrier_s_f,p=this.m_positionBuffer.data,m=this.m_velocityBuffer.data,g=0;g<this.m_count;g++)0!=(this.m_flagsBuffer.data[g]&n.k_barrierWallFlags)&&m[g].SetZero();for(var v=2.5*e.dt,y=this.GetParticleMass(),S=0;S<this.m_pairBuffer.count;S++){var T=this.m_pairBuffer.data[S];if(T.flags&t.b2ParticleFlag.b2_barrierParticle){var A=T.indexA,b=T.indexB,E=p[A],C=p[b],x=i;X.MinV(E,C,x.lowerBound),X.MaxV(E,C,x.upperBound);for(var w=this.m_groupBuffer[A],R=this.m_groupBuffer[b],I=this.GetLinearVelocity(w,A,E,r),D=this.GetLinearVelocity(R,b,C,s),B=X.SubVV(C,E,a),M=X.SubVV(D,I,o),P=this.GetInsideBoundsEnumerator(x),O=void 0;(O=P.GetNext())>=0;){var L=p[O],N=this.m_groupBuffer[O];if(w!==N&&R!==N){var F=this.GetLinearVelocity(N,O,L,h),G=X.SubVV(L,E,u),V=X.SubVV(F,I,l),U=X.CrossVV(M,V),z=X.CrossVV(B,V)-X.CrossVV(G,M),H=X.CrossVV(B,G),W=void 0,j=void 0,Y=c,q=_;if(0===U){if(0===z)continue;if(!((j=-H/z)>=0&&j<v))continue;if(X.AddVMulSV(B,j,M,Y),X.AddVMulSV(G,j,V,q),!((W=X.DotVV(Y,q)/X.DotVV(Y,Y))>=0&&W<=1))continue}else{var K=z*z-4*H*U;if(K<0)continue;var Q=k(K),Z=(-z-Q)/(2*U),J=(-z+Q)/(2*U);if(Z>J){var $=Z;Z=J,J=$}if(j=Z,X.AddVMulSV(B,j,M,Y),X.AddVMulSV(G,j,V,q),W=X.DotVV(Y,q)/X.DotVV(Y,Y),!(j>=0&&j<v&&W>=0&&W<=1)){if(!((j=J)>=0&&j<v))continue;if(X.AddVMulSV(B,j,M,Y),X.AddVMulSV(G,j,V,q),!((W=X.DotVV(Y,q)/X.DotVV(Y,Y))>=0&&W<=1))continue}}var tt=f;tt.x=I.x+W*M.x-F.x,tt.y=I.y+W*M.y-F.y;var et=X.MulSV(y,tt,d);if(N&&this.IsRigidGroup(N)){var it=N.GetMass(),nt=N.GetInertia();it>0&&N.m_linearVelocity.SelfMulAdd(1/it,et),nt>0&&(N.m_angularVelocity+=X.CrossVV(X.SubVV(L,N.GetCenter(),X.s_t0),et)/nt)}else m[O].SelfAdd(tt);this.ParticleApplyForce(O,et.SelfMul(-e.inv_dt))}}}}},r.SolveStaticPressure=function(e){this.m_staticPressureBuffer=this.RequestBuffer(this.m_staticPressureBuffer);for(var i=this.GetCriticalPressure(e),n=this.m_def.staticPressureStrength*i,r=S*i,s=this.m_def.staticPressureRelaxation,a=0;a<this.m_def.staticPressureIterations;a++){for(var o=0;o<this.m_count;o++)this.m_accumulationBuffer[o]=0;for(var h=0;h<this.m_contactBuffer.count;h++){var u=this.m_contactBuffer.data[h];if(u.flags&t.b2ParticleFlag.b2_staticPressureParticle){var l=u.indexA,c=u.indexB,_=u.weight;this.m_accumulationBuffer[l]+=_*this.m_staticPressureBuffer[c],this.m_accumulationBuffer[c]+=_*this.m_staticPressureBuffer[l]}}for(var f=0;f<this.m_count;f++){var d=this.m_weightBuffer[f];if(this.m_flagsBuffer.data[f]&t.b2ParticleFlag.b2_staticPressureParticle){var p=(this.m_accumulationBuffer[f]+n*(d-1))/(d+s);this.m_staticPressureBuffer[f]=O(p,0,r)}else this.m_staticPressureBuffer[f]=0}}},r.ComputeWeight=function(){for(var t=0;t<this.m_count;t++)this.m_weightBuffer[t]=0;for(var e=0;e<this.m_bodyContactBuffer.count;e++){var i=this.m_bodyContactBuffer.data[e],n=i.index,r=i.weight;this.m_weightBuffer[n]+=r}for(var s=0;s<this.m_contactBuffer.count;s++){var a=this.m_contactBuffer.data[s],o=a.indexA,h=a.indexB,u=a.weight;this.m_weightBuffer[o]+=u,this.m_weightBuffer[h]+=u}},r.SolvePressure=function(e){for(var i=n.SolvePressure_s_f,r=this.m_positionBuffer.data,s=this.m_velocityBuffer.data,a=this.GetCriticalPressure(e),o=this.m_def.pressureStrength*a,h=S*a,u=0;u<this.m_count;u++){var l=o*P(0,this.m_weightBuffer[u]-1);this.m_accumulationBuffer[u]=M(l,h)}if(this.m_allParticleFlags&n.k_noPressureFlags)for(var c=0;c<this.m_count;c++)this.m_flagsBuffer.data[c]&n.k_noPressureFlags&&(this.m_accumulationBuffer[c]=0);if(this.m_allParticleFlags&t.b2ParticleFlag.b2_staticPressureParticle)for(var _=0;_<this.m_count;_++)this.m_flagsBuffer.data[_]&t.b2ParticleFlag.b2_staticPressureParticle&&(this.m_accumulationBuffer[_]+=this.m_staticPressureBuffer[_]);for(var f=e.dt/(this.m_def.density*this.m_particleDiameter),d=this.GetParticleInvMass(),p=0;p<this.m_bodyContactBuffer.count;p++){var m=this.m_bodyContactBuffer.data[p],g=m.index,v=m.body,y=m.weight,T=m.mass,A=m.normal,b=r[g],E=this.m_accumulationBuffer[g]+o*y,C=X.MulSV(f*y*T*E,A,i);s[g].SelfMulSub(d,C),v.ApplyLinearImpulse(C,b,!0)}for(var x=0;x<this.m_contactBuffer.count;x++){var w=this.m_contactBuffer.data[x],R=w.indexA,I=w.indexB,D=w.weight,B=w.normal,O=this.m_accumulationBuffer[R]+this.m_accumulationBuffer[I],L=X.MulSV(f*D*O,B,i);s[R].SelfSub(L),s[I].SelfAdd(L)}},r.SolveDamping=function(t){for(var e=n.SolveDamping_s_v,i=n.SolveDamping_s_f,r=this.m_positionBuffer.data,s=this.m_velocityBuffer.data,a=this.m_def.dampingStrength,o=1/this.GetCriticalVelocity(t),h=this.GetParticleInvMass(),u=0;u<this.m_bodyContactBuffer.count;u++){var l=this.m_bodyContactBuffer.data[u],c=l.index,_=l.body,f=l.weight,d=l.mass,p=l.normal,m=r[c],g=X.SubVV(_.GetLinearVelocityFromWorldPoint(m,X.s_t0),s[c],e),v=X.DotVV(g,p);if(v<0){var y=P(a*f,M(-o*v,.5)),S=X.MulSV(y*d*v,p,i);s[c].SelfMulAdd(h,S),_.ApplyLinearImpulse(S.SelfNeg(),m,!0)}}for(var T=0;T<this.m_contactBuffer.count;T++){var A=this.m_contactBuffer.data[T],b=A.indexA,E=A.indexB,C=A.weight,x=A.normal,w=X.SubVV(s[E],s[b],e),R=X.DotVV(w,x);if(R<0){var I=P(a*C,M(-o*R,.5)),D=X.MulSV(I*R,x,i);s[b].SelfAdd(D),s[E].SelfSub(D)}}},r.SolveRigidDamping=function(){for(var t=n.SolveRigidDamping_s_t0,e=n.SolveRigidDamping_s_t1,i=n.SolveRigidDamping_s_p,r=n.SolveRigidDamping_s_v,s=[0],a=[0],o=[0],h=[0],u=[0],l=[0],c=this.m_positionBuffer.data,_=this.m_def.dampingStrength,f=0;f<this.m_bodyContactBuffer.count;f++){var d=this.m_bodyContactBuffer.data[f],p=d.index,m=this.m_groupBuffer[p];if(m&&this.IsRigidGroup(m)){var g=d.body,v=d.normal,y=d.weight,S=c[p],T=X.SubVV(g.GetLinearVelocityFromWorldPoint(S,t),m.GetLinearVelocityFromWorldPoint(S,e),r),A=X.DotVV(T,v);if(A<0){this.InitDampingParameterWithRigidGroupOrParticle(s,a,o,!0,m,p,S,v),this.InitDampingParameter(h,u,l,g.GetMass(),g.GetInertia()-g.GetMass()*g.GetLocalCenter().LengthSquared(),g.GetWorldCenter(),S,v);var b=_*M(y,1)*this.ComputeDampingImpulse(s[0],a[0],o[0],h[0],u[0],l[0],A);this.ApplyDamping(s[0],a[0],o[0],!0,m,p,b,v),g.ApplyLinearImpulse(X.MulSV(-b,v,X.s_t0),S,!0)}}}for(var E=0;E<this.m_contactBuffer.count;E++){var C=this.m_contactBuffer.data[E],x=C.indexA,w=C.indexB,R=C.normal,I=C.weight,D=this.m_groupBuffer[x],B=this.m_groupBuffer[w],P=this.IsRigidGroup(D),O=this.IsRigidGroup(B);if(D!==B&&(P||O)){var L=X.MidVV(c[x],c[w],i),N=X.SubVV(this.GetLinearVelocity(B,w,L,t),this.GetLinearVelocity(D,x,L,e),r),F=X.DotVV(N,R);if(F<0){this.InitDampingParameterWithRigidGroupOrParticle(s,a,o,P,D,x,L,R),this.InitDampingParameterWithRigidGroupOrParticle(h,u,l,O,B,w,L,R);var k=_*I*this.ComputeDampingImpulse(s[0],a[0],o[0],h[0],u[0],l[0],F);this.ApplyDamping(s[0],a[0],o[0],P,D,x,k,R),this.ApplyDamping(h[0],u[0],l[0],O,B,w,-k,R)}}}},r.SolveExtraDamping=function(){for(var t=n.SolveExtraDamping_s_v,e=n.SolveExtraDamping_s_f,i=this.m_velocityBuffer.data,r=this.m_positionBuffer.data,s=this.GetParticleInvMass(),a=0;a<this.m_bodyContactBuffer.count;a++){var o=this.m_bodyContactBuffer.data[a],h=o.index;if(this.m_flagsBuffer.data[h]&n.k_extraDampingFlags){var u=o.body,l=o.mass,c=o.normal,_=r[h],f=X.SubVV(u.GetLinearVelocityFromWorldPoint(_,X.s_t0),i[h],t),d=X.DotVV(f,c);if(d<0){var p=X.MulSV(.5*l*d,c,e);i[h].SelfMulAdd(s,p),u.ApplyLinearImpulse(p.SelfNeg(),_,!0)}}}},r.SolveWall=function(){for(var e=this.m_velocityBuffer.data,i=0;i<this.m_count;i++)this.m_flagsBuffer.data[i]&t.b2ParticleFlag.b2_wallParticle&&e[i].SetZero()},r.SolveRigid=function(e){for(var i=n.SolveRigid_s_position,r=n.SolveRigid_s_rotation,s=n.SolveRigid_s_transform,a=n.SolveRigid_s_velocityTransform,o=this.m_positionBuffer.data,h=this.m_velocityBuffer.data,u=this.m_groupList;u;u=u.GetNext())if(u.m_groupFlags&t.b2ParticleGroupFlag.b2_rigidParticleGroup){u.UpdateStatistics();var l=r;l.SetAngle(e.dt*u.m_angularVelocity);var c=X.AddVV(u.m_center,X.SubVV(X.MulSV(e.dt,u.m_linearVelocity,X.s_t0),Q.MulRV(l,u.m_center,X.s_t1),X.s_t0),i),_=s;_.SetPositionRotation(c,l),Z.MulXX(_,u.m_transform,u.m_transform);var f=a;f.p.x=e.inv_dt*_.p.x,f.p.y=e.inv_dt*_.p.y,f.q.s=e.inv_dt*_.q.s,f.q.c=e.inv_dt*(_.q.c-1);for(var d=u.m_firstIndex;d<u.m_lastIndex;d++)Z.MulXV(f,o[d],h[d])}},r.SolveElastic=function(e){for(var i=n.SolveElastic_s_pa,r=n.SolveElastic_s_pb,s=n.SolveElastic_s_pc,a=n.SolveElastic_s_r,o=n.SolveElastic_s_t0,h=this.m_positionBuffer.data,u=this.m_velocityBuffer.data,l=e.inv_dt*this.m_def.elasticStrength,c=0;c<this.m_triadBuffer.count;c++){var _=this.m_triadBuffer.data[c];if(_.flags&t.b2ParticleFlag.b2_elasticParticle){var f=_.indexA,d=_.indexB,p=_.indexC,m=_.pa,g=_.pb,v=_.pc,y=i.Copy(h[f]),S=r.Copy(h[d]),T=s.Copy(h[p]),A=u[f],b=u[d],E=u[p];y.SelfMulAdd(e.dt,A),S.SelfMulAdd(e.dt,b),T.SelfMulAdd(e.dt,E);var C=(y.x+S.x+T.x)/3,x=(y.y+S.y+T.y)/3;y.x-=C,y.y-=x,S.x-=C,S.y-=x,T.x-=C,T.y-=x;var w=a;w.s=X.CrossVV(m,y)+X.CrossVV(g,S)+X.CrossVV(v,T),w.c=X.DotVV(m,y)+X.DotVV(g,S)+X.DotVV(v,T);var R=F(w.s*w.s+w.c*w.c);isFinite(R)||(R=198177537e11),w.s*=R,w.c*=R;var I=l*_.strength;Q.MulRV(w,m,o),X.SubVV(o,y,o),X.MulSV(I,o,o),A.SelfAdd(o),Q.MulRV(w,g,o),X.SubVV(o,S,o),X.MulSV(I,o,o),b.SelfAdd(o),Q.MulRV(w,v,o),X.SubVV(o,T,o),X.MulSV(I,o,o),E.SelfAdd(o)}}},r.SolveSpring=function(e){for(var i=n.SolveSpring_s_pa,r=n.SolveSpring_s_pb,s=n.SolveSpring_s_d,a=n.SolveSpring_s_f,o=this.m_positionBuffer.data,h=this.m_velocityBuffer.data,u=e.inv_dt*this.m_def.springStrength,l=0;l<this.m_pairBuffer.count;l++){var c=this.m_pairBuffer.data[l];if(c.flags&t.b2ParticleFlag.b2_springParticle){var _=c.indexA,f=c.indexB,d=i.Copy(o[_]),p=r.Copy(o[f]),m=h[_],g=h[f];d.SelfMulAdd(e.dt,m),p.SelfMulAdd(e.dt,g);var v=X.SubVV(p,d,s),y=c.distance,S=v.Length(),T=u*c.strength,A=X.MulSV(T*(y-S)/S,v,a);m.SelfSub(A),g.SelfAdd(A)}}},r.SolveTensile=function(e){for(var i=n.SolveTensile_s_weightedNormal,r=n.SolveTensile_s_s,s=n.SolveTensile_s_f,a=this.m_velocityBuffer.data,o=0;o<this.m_count;o++)this.m_accumulation2Buffer[o]=new X,this.m_accumulation2Buffer[o].SetZero();for(var h=0;h<this.m_contactBuffer.count;h++){var u=this.m_contactBuffer.data[h];if(u.flags&t.b2ParticleFlag.b2_tensileParticle){var l=u.indexA,c=u.indexB,_=u.weight,f=u.normal,d=X.MulSV((1-_)*_,f,i);this.m_accumulation2Buffer[l].SelfSub(d),this.m_accumulation2Buffer[c].SelfAdd(d)}}for(var p=this.GetCriticalVelocity(e),m=this.m_def.surfaceTensionPressureStrength*p,g=this.m_def.surfaceTensionNormalStrength*p,v=.5*p,y=0;y<this.m_contactBuffer.count;y++){var S=this.m_contactBuffer.data[y];if(S.flags&t.b2ParticleFlag.b2_tensileParticle){var T=S.indexA,A=S.indexB,b=S.weight,E=S.normal,C=this.m_weightBuffer[T]+this.m_weightBuffer[A],x=X.SubVV(this.m_accumulation2Buffer[A],this.m_accumulation2Buffer[T],r),w=M(m*(C-2)+g*X.DotVV(x,E),v)*b,R=X.MulSV(w,E,s);a[T].SelfSub(R),a[A].SelfAdd(R)}}},r.SolveViscous=function(){for(var e=n.SolveViscous_s_v,i=n.SolveViscous_s_f,r=this.m_positionBuffer.data,s=this.m_velocityBuffer.data,a=this.m_def.viscousStrength,o=this.GetParticleInvMass(),h=0;h<this.m_bodyContactBuffer.count;h++){var u=this.m_bodyContactBuffer.data[h],l=u.index;if(this.m_flagsBuffer.data[l]&t.b2ParticleFlag.b2_viscousParticle){var c=u.body,_=u.weight,f=u.mass,d=r[l],p=X.SubVV(c.GetLinearVelocityFromWorldPoint(d,X.s_t0),s[l],e),m=X.MulSV(a*f*_,p,i);s[l].SelfMulAdd(o,m),c.ApplyLinearImpulse(m.SelfNeg(),d,!0)}}for(var g=0;g<this.m_contactBuffer.count;g++){var v=this.m_contactBuffer.data[g];if(v.flags&t.b2ParticleFlag.b2_viscousParticle){var y=v.indexA,S=v.indexB,T=v.weight,A=X.SubVV(s[S],s[y],e),b=X.MulSV(a*T,A,i);s[y].SelfAdd(b),s[S].SelfSub(b)}}},r.SolveRepulsive=function(e){for(var i=n.SolveRepulsive_s_f,r=this.m_velocityBuffer.data,s=this.m_def.repulsiveStrength*this.GetCriticalVelocity(e),a=0;a<this.m_contactBuffer.count;a++){var o=this.m_contactBuffer.data[a];if(o.flags&t.b2ParticleFlag.b2_repulsiveParticle){var h=o.indexA,u=o.indexB;if(this.m_groupBuffer[h]!==this.m_groupBuffer[u]){var l=o.weight,c=o.normal,_=X.MulSV(s*l,c,i);r[h].SelfSub(_),r[u].SelfAdd(_)}}}},r.SolvePowder=function(e){for(var i=n.SolvePowder_s_f,r=this.m_positionBuffer.data,s=this.m_velocityBuffer.data,a=this.m_def.powderStrength*this.GetCriticalVelocity(e),o=.25,h=this.GetParticleInvMass(),u=0;u<this.m_bodyContactBuffer.count;u++){var l=this.m_bodyContactBuffer.data[u],c=l.index;if(this.m_flagsBuffer.data[c]&t.b2ParticleFlag.b2_powderParticle){var _=l.weight;if(_>o){var f=l.body,d=l.mass,p=r[c],m=l.normal,g=X.MulSV(a*d*(_-o),m,i);s[c].SelfMulSub(h,g),f.ApplyLinearImpulse(g,p,!0)}}}for(var v=0;v<this.m_contactBuffer.count;v++){var y=this.m_contactBuffer.data[v];if(y.flags&t.b2ParticleFlag.b2_powderParticle){var S=y.weight;if(S>o){var T=y.indexA,A=y.indexB,b=y.normal,E=X.MulSV(a*(S-o),b,i);s[T].SelfSub(E),s[A].SelfAdd(E)}}}},r.SolveSolid=function(t){var e=n.SolveSolid_s_f,i=this.m_velocityBuffer.data;this.m_depthBuffer=this.RequestBuffer(this.m_depthBuffer);for(var r=t.inv_dt*this.m_def.ejectionStrength,s=0;s<this.m_contactBuffer.count;s++){var a=this.m_contactBuffer.data[s],o=a.indexA,h=a.indexB;if(this.m_groupBuffer[o]!==this.m_groupBuffer[h]){var u=a.weight,l=a.normal,c=this.m_depthBuffer[o]+this.m_depthBuffer[h],_=X.MulSV(r*c*u,l,e);i[o].SelfSub(_),i[h].SelfAdd(_)}}},r.SolveForce=function(t){for(var e=this.m_velocityBuffer.data,i=t.dt*this.GetParticleInvMass(),n=0;n<this.m_count;n++)e[n].SelfMulAdd(i,this.m_forceBuffer[n]);this.m_hasForce=!1},r.SolveColorMixing=function(){var e=.5*this.m_def.colorMixingStrength;if(e)for(var i=0;i<this.m_contactBuffer.count;i++){var n=this.m_contactBuffer.data[i],r=n.indexA,s=n.indexB;if(this.m_flagsBuffer.data[r]&this.m_flagsBuffer.data[s]&t.b2ParticleFlag.b2_colorMixingParticle){var a=this.m_colorBuffer.data[r],o=this.m_colorBuffer.data[s];tt.MixColors(a,o,e)}}},r.SolveZombie=function(){for(var e=0,i=[],n=0;n<this.m_count;n++)i[n]=v;for(var r=0,s=0;s<this.m_count;s++){var a=this.m_flagsBuffer.data[s];if(a&t.b2ParticleFlag.b2_zombieParticle){var o=this.m_world.m_destructionListener;if(a&t.b2ParticleFlag.b2_destructionListenerParticle&&o&&o.SayGoodbyeParticle(this,s),this.m_handleIndexBuffer.data){var h=this.m_handleIndexBuffer.data[s];h&&(h.SetIndex(v),this.m_handleIndexBuffer.data[s]=null)}i[s]=v}else{if(i[s]=e,s!==e){if(this.m_handleIndexBuffer.data){var u=this.m_handleIndexBuffer.data[s];u&&u.SetIndex(e),this.m_handleIndexBuffer.data[e]=u}this.m_flagsBuffer.data[e]=this.m_flagsBuffer.data[s],this.m_lastBodyContactStepBuffer.data&&(this.m_lastBodyContactStepBuffer.data[e]=this.m_lastBodyContactStepBuffer.data[s]),this.m_bodyContactCountBuffer.data&&(this.m_bodyContactCountBuffer.data[e]=this.m_bodyContactCountBuffer.data[s]),this.m_consecutiveContactStepsBuffer.data&&(this.m_consecutiveContactStepsBuffer.data[e]=this.m_consecutiveContactStepsBuffer.data[s]),this.m_positionBuffer.data[e].Copy(this.m_positionBuffer.data[s]),this.m_velocityBuffer.data[e].Copy(this.m_velocityBuffer.data[s]),this.m_groupBuffer[e]=this.m_groupBuffer[s],this.m_hasForce&&this.m_forceBuffer[e].Copy(this.m_forceBuffer[s]),this.m_staticPressureBuffer&&(this.m_staticPressureBuffer[e]=this.m_staticPressureBuffer[s]),this.m_depthBuffer&&(this.m_depthBuffer[e]=this.m_depthBuffer[s]),this.m_colorBuffer.data&&this.m_colorBuffer.data[e].Copy(this.m_colorBuffer.data[s]),this.m_userDataBuffer.data&&(this.m_userDataBuffer.data[e]=this.m_userDataBuffer.data[s]),this.m_expirationTimeBuffer.data&&(this.m_expirationTimeBuffer.data[e]=this.m_expirationTimeBuffer.data[s])}e++,r|=a}}for(var l={IsProxyInvalid:function(t){return t.index<0},IsContactInvalid:function(t){return t.indexA<0||t.indexB<0},IsBodyContactInvalid:function(t){return t.index<0},IsPairInvalid:function(t){return t.indexA<0||t.indexB<0},IsTriadInvalid:function(t){return t.indexA<0||t.indexB<0||t.indexC<0}},c=0;c<this.m_proxyBuffer.count;c++){var _=this.m_proxyBuffer.data[c];_.index=i[_.index]}this.m_proxyBuffer.RemoveIf(l.IsProxyInvalid);for(var f=0;f<this.m_contactBuffer.count;f++){var d=this.m_contactBuffer.data[f];d.indexA=i[d.indexA],d.indexB=i[d.indexB]}this.m_contactBuffer.RemoveIf(l.IsContactInvalid);for(var p=0;p<this.m_bodyContactBuffer.count;p++){var m=this.m_bodyContactBuffer.data[p];m.index=i[m.index]}this.m_bodyContactBuffer.RemoveIf(l.IsBodyContactInvalid);for(var g=0;g<this.m_pairBuffer.count;g++){var y=this.m_pairBuffer.data[g];y.indexA=i[y.indexA],y.indexB=i[y.indexB]}this.m_pairBuffer.RemoveIf(l.IsPairInvalid);for(var S=0;S<this.m_triadBuffer.count;S++){var T=this.m_triadBuffer.data[S];T.indexA=i[T.indexA],T.indexB=i[T.indexB],T.indexC=i[T.indexC]}if(this.m_triadBuffer.RemoveIf(l.IsTriadInvalid),this.m_indexByExpirationTimeBuffer.data)for(var A=0,b=0;b<this.m_count;b++){var E=i[this.m_indexByExpirationTimeBuffer.data[b]];E!==v&&(this.m_indexByExpirationTimeBuffer.data[A++]=E)}for(var C=this.m_groupList;C;C=C.GetNext()){for(var x=e,w=0,R=!1,I=C.m_firstIndex;I<C.m_lastIndex;I++){var D=i[I];D>=0?(x=M(x,D),w=P(w,D+1)):R=!0}x<w?(C.m_firstIndex=x,C.m_lastIndex=w,R&&C.m_groupFlags&t.b2ParticleGroupFlag.b2_solidParticleGroup&&this.SetGroupFlags(C,C.m_groupFlags|t.b2ParticleGroupFlag.b2_particleGroupNeedsUpdateDepth)):(C.m_firstIndex=0,C.m_lastIndex=0,C.m_groupFlags&t.b2ParticleGroupFlag.b2_particleGroupCanBeEmpty||this.SetGroupFlags(C,C.m_groupFlags|t.b2ParticleGroupFlag.b2_particleGroupWillBeDestroyed))}this.m_count=e,this.m_allParticleFlags=r,this.m_needsUpdateAllParticleFlags=!1;for(var B=this.m_groupList;B;){var O=B.GetNext();B.m_groupFlags&t.b2ParticleGroupFlag.b2_particleGroupWillBeDestroyed&&this.DestroyParticleGroup(B),B=O}},r.SolveLifetimes=function(t){this.m_timeElapsed=this.LifetimeToExpirationTime(t.dt);var e=this.GetQuantizedTimeElapsed(),i=this.m_expirationTimeBuffer.data,n=this.m_indexByExpirationTimeBuffer.data,r=this.GetParticleCount();this.m_expirationTimeBufferRequiresSorting&&(Qn(n,0,r,(function(t,e){var n=i[t],r=i[e],s=n<=0;return s===r<=0?n>r:s})),this.m_expirationTimeBufferRequiresSorting=!1);for(var s=r-1;s>=0;--s){var a=n[s],o=i[a];if(e<o||o<=0)break;this.DestroyParticle(a)}},r.RotateBuffer=function(t,e,i){if(t!==e&&e!==i){if(er(this.m_flagsBuffer.data,t,e,i),this.m_lastBodyContactStepBuffer.data&&er(this.m_lastBodyContactStepBuffer.data,t,e,i),this.m_bodyContactCountBuffer.data&&er(this.m_bodyContactCountBuffer.data,t,e,i),this.m_consecutiveContactStepsBuffer.data&&er(this.m_consecutiveContactStepsBuffer.data,t,e,i),er(this.m_positionBuffer.data,t,e,i),er(this.m_velocityBuffer.data,t,e,i),er(this.m_groupBuffer,t,e,i),this.m_hasForce&&er(this.m_forceBuffer,t,e,i),this.m_staticPressureBuffer&&er(this.m_staticPressureBuffer,t,e,i),this.m_depthBuffer&&er(this.m_depthBuffer,t,e,i),this.m_colorBuffer.data&&er(this.m_colorBuffer.data,t,e,i),this.m_userDataBuffer.data&&er(this.m_userDataBuffer.data,t,e,i),this.m_handleIndexBuffer.data){er(this.m_handleIndexBuffer.data,t,e,i);for(var n=t;n<i;++n){var r=this.m_handleIndexBuffer.data[n];r&&r.SetIndex(y(r.GetIndex()))}}if(this.m_expirationTimeBuffer.data){er(this.m_expirationTimeBuffer.data,t,e,i);for(var s=this.GetParticleCount(),a=this.m_indexByExpirationTimeBuffer.data,o=0;o<s;++o)a[o]=y(a[o])}for(var h=0;h<this.m_proxyBuffer.count;h++){var u=this.m_proxyBuffer.data[h];u.index=y(u.index)}for(var l=0;l<this.m_contactBuffer.count;l++){var c=this.m_contactBuffer.data[l];c.indexA=y(c.indexA),c.indexB=y(c.indexB)}for(var _=0;_<this.m_bodyContactBuffer.count;_++){var f=this.m_bodyContactBuffer.data[_];f.index=y(f.index)}for(var d=0;d<this.m_pairBuffer.count;d++){var p=this.m_pairBuffer.data[d];p.indexA=y(p.indexA),p.indexB=y(p.indexB)}for(var m=0;m<this.m_triadBuffer.count;m++){var g=this.m_triadBuffer.data[m];g.indexA=y(g.indexA),g.indexB=y(g.indexB),g.indexC=y(g.indexC)}for(var v=this.m_groupList;v;v=v.GetNext())v.m_firstIndex=y(v.m_firstIndex),v.m_lastIndex=y(v.m_lastIndex-1)+1}function y(n){return n<t?n:n<e?n+i-e:n<i?n+t-e:n}},r.GetCriticalVelocity=function(t){return this.m_particleDiameter*t.inv_dt},r.GetCriticalVelocitySquared=function(t){var e=this.GetCriticalVelocity(t);return e*e},r.GetCriticalPressure=function(t){return this.m_def.density*this.GetCriticalVelocitySquared(t)},r.GetParticleStride=function(){return y*this.m_particleDiameter},r.GetParticleMass=function(){var t=this.GetParticleStride();return this.m_def.density*t*t},r.GetParticleInvMass=function(){var t=1.3333333333333333*this.m_inverseDiameter;return this.m_inverseDensity*t*t},r.GetFixtureContactFilter=function(){return this.m_allParticleFlags&t.b2ParticleFlag.b2_fixtureContactFilterParticle?this.m_world.m_contactManager.m_contactFilter:null},r.GetParticleContactFilter=function(){return this.m_allParticleFlags&t.b2ParticleFlag.b2_particleContactFilterParticle?this.m_world.m_contactManager.m_contactFilter:null},r.GetFixtureContactListener=function(){return this.m_allParticleFlags&t.b2ParticleFlag.b2_fixtureContactListenerParticle?this.m_world.m_contactManager.m_contactListener:null},r.GetParticleContactListener=function(){return this.m_allParticleFlags&t.b2ParticleFlag.b2_particleContactListenerParticle?this.m_world.m_contactManager.m_contactListener:null},r.SetUserOverridableBuffer=function(t,e){t.data=e,t.userSuppliedCapacity=e.length},r.SetGroupFlags=function(e,i){var n=e.m_groupFlags;(n^i)&t.b2ParticleGroupFlag.b2_solidParticleGroup&&(i|=t.b2ParticleGroupFlag.b2_particleGroupNeedsUpdateDepth),n&~i&&(this.m_needsUpdateAllGroupFlags=!0),~this.m_allGroupFlags&i&&(i&t.b2ParticleGroupFlag.b2_solidParticleGroup&&(this.m_depthBuffer=this.RequestBuffer(this.m_depthBuffer)),this.m_allGroupFlags|=i),e.m_groupFlags=i},n.BodyContactCompare=function(t,e){return t.index===e.index?t.weight>e.weight:t.index<e.index},r.RemoveSpuriousBodyContacts=function(){Qn(this.m_bodyContactBuffer.data,0,this.m_bodyContactBuffer.count,n.BodyContactCompare);var t=n.RemoveSpuriousBodyContacts_s_n,e=n.RemoveSpuriousBodyContacts_s_pos,i=n.RemoveSpuriousBodyContacts_s_normal,r=this,s=-1,a=0;this.m_bodyContactBuffer.count=Jn(this.m_bodyContactBuffer.data,(function(n){if(n.index!==s&&(a=0,s=n.index),a++>3)return!0;var o=t.Copy(n.normal);o.SelfMul(r.m_particleDiameter*(1-n.weight));var h=X.AddVV(r.m_positionBuffer.data[n.index],o,e);if(!n.fixture.TestPoint(h)){for(var u=n.fixture.GetShape().GetChildCount(),c=0;c<u;c++){var _=i;if(n.fixture.ComputeDistance(h,_,c)<l)return!1}return!0}return!1}),this.m_bodyContactBuffer.count)},r.DetectStuckParticle=function(t){this.m_stuckThreshold<=0||(++this.m_bodyContactCountBuffer.data[t],2===this.m_bodyContactCountBuffer.data[t]&&(++this.m_consecutiveContactStepsBuffer.data[t],this.m_consecutiveContactStepsBuffer.data[t]>this.m_stuckThreshold&&(this.m_stuckParticleBuffer.data[this.m_stuckParticleBuffer.Append()]=t)),this.m_lastBodyContactStepBuffer.data[t]=this.m_timestamp)},r.ValidateParticleIndex=function(t){return t>=0&&t<this.GetParticleCount()&&t!==v},r.GetQuantizedTimeElapsed=function(){return Math.floor(this.m_timeElapsed/4294967296)},r.LifetimeToExpirationTime=function(t){return this.m_timeElapsed+Math.floor(t/this.m_def.lifetimeGranularity*4294967296)},r.ForceCanBeApplied=function(e){return!(e&t.b2ParticleFlag.b2_wallParticle)},r.PrepareForceBuffer=function(){if(!this.m_hasForce){for(var t=0;t<this.m_count;t++)this.m_forceBuffer[t].SetZero();this.m_hasForce=!0}},r.IsRigidGroup=function(e){return null!==e&&0!=(e.m_groupFlags&t.b2ParticleGroupFlag.b2_rigidParticleGroup)},r.GetLinearVelocity=function(t,e,i,n){return t&&this.IsRigidGroup(t)?t.GetLinearVelocityFromWorldPoint(i,n):n.Copy(this.m_velocityBuffer.data[e])},r.InitDampingParameter=function(t,e,i,n,r,s,a,o){t[0]=n>0?1/n:0,e[0]=r>0?1/r:0,i[0]=X.CrossVV(X.SubVV(a,s,X.s_t0),o)},r.InitDampingParameterWithRigidGroupOrParticle=function(e,i,n,r,s,a,o,h){if(s&&r)this.InitDampingParameter(e,i,n,s.GetMass(),s.GetInertia(),s.GetCenter(),o,h);else{var u=this.m_flagsBuffer.data[a];this.InitDampingParameter(e,i,n,u&t.b2ParticleFlag.b2_wallParticle?0:this.GetParticleMass(),0,o,o,h)}},r.ComputeDampingImpulse=function(t,e,i,n,r,s,a){var o=t+e*i*i+n+r*s*s;return o>0?a/o:0},r.ApplyDamping=function(t,e,i,n,r,s,a,o){r&&n?(r.m_linearVelocity.SelfMulAdd(a*t,o),r.m_angularVelocity+=a*i*e):this.m_velocityBuffer.data[s].SelfMulAdd(a*t,o)},n}();ur.xTruncBits=12,ur.yTruncBits=12,ur.tagBits=32,ur.yOffset=1<<ur.yTruncBits-1,ur.yShift=ur.tagBits-ur.yTruncBits,ur.xShift=ur.tagBits-ur.yTruncBits-ur.xTruncBits,ur.xScale=1<<ur.xShift,ur.xOffset=ur.xScale*(1<<ur.xTruncBits-1),ur.yMask=(1<<ur.yTruncBits)-1<<ur.yShift,ur.xMask=~ur.yMask,ur.DestroyParticlesInShape_s_aabb=new Gt,ur.CreateParticleGroup_s_transform=new Z,ur.ComputeCollisionEnergy_s_v=new X,ur.QueryShapeAABB_s_aabb=new Gt,ur.QueryPointAABB_s_aabb=new Gt,ur.RayCast_s_aabb=new Gt,ur.RayCast_s_p=new X,ur.RayCast_s_v=new X,ur.RayCast_s_n=new X,ur.RayCast_s_point=new X,ur.k_pairFlags=t.b2ParticleFlag.b2_springParticle,ur.k_triadFlags=t.b2ParticleFlag.b2_elasticParticle,ur.k_noPressureFlags=t.b2ParticleFlag.b2_powderParticle|t.b2ParticleFlag.b2_tensileParticle,ur.k_extraDampingFlags=t.b2ParticleFlag.b2_staticPressureParticle,ur.k_barrierWallFlags=t.b2ParticleFlag.b2_barrierParticle|t.b2ParticleFlag.b2_wallParticle,ur.CreateParticlesStrokeShapeForGroup_s_edge=new yi,ur.CreateParticlesStrokeShapeForGroup_s_d=new X,ur.CreateParticlesStrokeShapeForGroup_s_p=new X,ur.CreateParticlesFillShapeForGroup_s_aabb=new Gt,ur.CreateParticlesFillShapeForGroup_s_p=new X,ur.UpdatePairsAndTriads_s_dab=new X,ur.UpdatePairsAndTriads_s_dbc=new X,ur.UpdatePairsAndTriads_s_dca=new X,ur.AddContact_s_d=new X,ur.UpdateBodyContacts_s_aabb=new Gt,ur.Solve_s_subStep=new Cn,ur.SolveCollision_s_aabb=new Gt,ur.SolveGravity_s_gravity=new X,ur.SolveBarrier_s_aabb=new Gt,ur.SolveBarrier_s_va=new X,ur.SolveBarrier_s_vb=new X,ur.SolveBarrier_s_pba=new X,ur.SolveBarrier_s_vba=new X,ur.SolveBarrier_s_vc=new X,ur.SolveBarrier_s_pca=new X,ur.SolveBarrier_s_vca=new X,ur.SolveBarrier_s_qba=new X,ur.SolveBarrier_s_qca=new X,ur.SolveBarrier_s_dv=new X,ur.SolveBarrier_s_f=new X,ur.SolvePressure_s_f=new X,ur.SolveDamping_s_v=new X,ur.SolveDamping_s_f=new X,ur.SolveRigidDamping_s_t0=new X,ur.SolveRigidDamping_s_t1=new X,ur.SolveRigidDamping_s_p=new X,ur.SolveRigidDamping_s_v=new X,ur.SolveExtraDamping_s_v=new X,ur.SolveExtraDamping_s_f=new X,ur.SolveRigid_s_position=new X,ur.SolveRigid_s_rotation=new Q,ur.SolveRigid_s_transform=new Z,ur.SolveRigid_s_velocityTransform=new Z,ur.SolveElastic_s_pa=new X,ur.SolveElastic_s_pb=new X,ur.SolveElastic_s_pc=new X,ur.SolveElastic_s_r=new Q,ur.SolveElastic_s_t0=new X,ur.SolveSpring_s_pa=new X,ur.SolveSpring_s_pb=new X,ur.SolveSpring_s_d=new X,ur.SolveSpring_s_f=new X,ur.SolveTensile_s_weightedNormal=new X,ur.SolveTensile_s_s=new X,ur.SolveTensile_s_f=new X,ur.SolveViscous_s_v=new X,ur.SolveViscous_s_f=new X,ur.SolveRepulsive_s_f=new X,ur.SolvePowder_s_f=new X,ur.SolveSolid_s_f=new X,ur.RemoveSpuriousBodyContacts_s_n=new X,ur.RemoveSpuriousBodyContacts_s_pos=new X,ur.RemoveSpuriousBodyContacts_s_normal=new X;var lr=function(){function t(){this._data=null,this.userSuppliedCapacity=0}return n(t,[{key:"data",get:function(){return this._data},set:function(t){this._data=t}}]),t}(),cr=function(){function t(){this.index=v,this.tag=0}return t.CompareProxyProxy=function(t,e){return t.tag<e.tag},t.CompareTagProxy=function(t,e){return t<e.tag},t.CompareProxyTag=function(t,e){return t.tag<e},t}(),_r=function(){function t(t,e,i,n,r){this.m_system=t,this.m_xLower=(e&ur.xMask)>>>0,this.m_xUpper=(i&ur.xMask)>>>0,this.m_yLower=(e&ur.yMask)>>>0,this.m_yUpper=(i&ur.yMask)>>>0,this.m_first=n,this.m_last=r}return t.prototype.GetNext=function(){for(;this.m_first<this.m_last;){var t=(this.m_system.m_proxyBuffer.data[this.m_first].tag&ur.xMask)>>>0;if(t>=this.m_xLower&&t<=this.m_xUpper)return this.m_system.m_proxyBuffer.data[this.m_first++].index;this.m_first++}return v},t}(),fr=function(){this.next=null,this.count=0,this.index=0},dr=function(){function t(){}var e=t.prototype;return e.Allocate=function(t,e){return e},e.Clear=function(){},e.GetCount=function(){return 0},e.Invalidate=function(){},e.GetValidBuffer=function(){return[]},e.GetBuffer=function(){return[]},e.SetCount=function(){},t}(),pr=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.Initialize=function(){},i.Find=function(){return v},e}(dr),mr=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.Initialize=function(){},i.Find=function(){return v},e}(dr),gr=function(){function t(){}var e=t.prototype;return e.IsNecessary=function(){return!0},e.ShouldCreatePair=function(){return!0},e.ShouldCreateTriad=function(){return!0},t}(),vr=function(t){function e(e,i,n,r){var s;return(s=t.call(this)||this).m_callDestructionListener=!1,s.m_destroyed=0,s.m_system=e,s.m_shape=i,s.m_xf=n,s.m_callDestructionListener=r,s.m_destroyed=0,s}s(e,t);var i=e.prototype;return i.ReportFixture=function(){return!1},i.ReportParticle=function(t,e){return t===this.m_system&&(this.m_shape.TestPoint(this.m_xf,this.m_system.m_positionBuffer.data[e])&&(this.m_system.DestroyParticle(e,this.m_callDestructionListener),this.m_destroyed++),!0)},i.Destroyed=function(){return this.m_destroyed},e}(Tn),yr=function(t){function e(e){var i;return(i=t.call(this)||this).m_threshold=0,i.m_threshold=e,i}s(e,t);var i=e.prototype;return i.ShouldCreatePair=function(t,e){return t<this.m_threshold&&this.m_threshold<=e||e<this.m_threshold&&this.m_threshold<=t},i.ShouldCreateTriad=function(t,e,i){return(t<this.m_threshold||e<this.m_threshold||i<this.m_threshold)&&(this.m_threshold<=t||this.m_threshold<=e||this.m_threshold<=i)},e}(gr),Sr=function(e){function n(i,n){var r;return void 0===n&&(n=i.length),(r=e.call(this,t.b2ShapeType.e_unknown,0)||this).m_shapeCount=0,r.m_shapes=i,r.m_shapeCount=n,r}s(n,e);var r=n.prototype;return r.Clone=function(){throw new Error},r.GetChildCount=function(){return 1},r.TestPoint=function(t,e){for(var i=0;i<this.m_shapeCount;i++)if(this.m_shapes[i].TestPoint(t,e))return!0;return!1},r.ComputeDistance=function(){return 0},r.RayCast=function(){return!1},r.ComputeAABB=function(t,e){var n=new Gt;t.lowerBound.x=+i,t.lowerBound.y=+i,t.upperBound.x=-i,t.upperBound.y=-i;for(var r=0;r<this.m_shapeCount;r++)for(var s=this.m_shapes[r].GetChildCount(),a=0;a<s;a++){var o=n;this.m_shapes[r].ComputeAABB(o,e,a),t.Combine1(o)}},r.ComputeMass=function(){},r.SetupDistanceProxy=function(){},r.ComputeSubmergedArea=function(){return 0},r.Dump=function(){},n}(mi),Tr=function(e){function i(t){var i;return(i=e.call(this)||this).m_flagsBuffer=t,i}return s(i,e),i.prototype.IsNecessary=function(e){return 0!=(this.m_flagsBuffer.data[e]&t.b2ParticleFlag.b2_reactiveParticle)},i}(gr),Ar=function(e){function i(t,i){var n;return void 0===i&&(i=null),(n=e.call(this,t)||this).m_contactFilter=null,n.m_contactFilter=i,n}s(i,e);var n=i.prototype;return n.ShouldCollideFixtureParticle=function(e,i,n){return!(this.m_contactFilter&&this.m_system.GetFlagsBuffer()[n]&t.b2ParticleFlag.b2_fixtureContactFilterParticle)||this.m_contactFilter.ShouldCollideFixtureParticle(e,this.m_system,n)},n.ReportFixtureAndParticle=function(e,n,r){var s=i.ReportFixtureAndParticle_s_n,a=i.ReportFixtureAndParticle_s_rp,o=this.m_system.m_positionBuffer.data[r],h=s,u=e.ComputeDistance(o,h,n);if(u<this.m_system.m_particleDiameter&&this.ShouldCollideFixtureParticle(e,this.m_system,r)){var l=e.GetBody(),c=l.GetWorldCenter(),_=l.GetMass(),f=l.GetInertia()-_*l.GetLocalCenter().LengthSquared(),d=_>0?1/_:0,p=f>0?1/f:0,m=this.m_system.m_flagsBuffer.data[r]&t.b2ParticleFlag.b2_wallParticle?0:this.m_system.GetParticleInvMass(),g=X.SubVV(o,c,a),v=X.CrossVV(g,h),y=m+d+p*v*v,S=this.m_system.m_bodyContactBuffer.data[this.m_system.m_bodyContactBuffer.Append()];S.index=r,S.body=l,S.fixture=e,S.weight=1-u*this.m_system.m_inverseDiameter,S.normal.Copy(h.SelfNeg()),S.mass=y>0?1/y:0,this.m_system.DetectStuckParticle(r)}},i}(nr);Ar.ReportFixtureAndParticle_s_n=new X,Ar.ReportFixtureAndParticle_s_rp=new X;var br=function(e){function i(t,i){var n;return(n=e.call(this,t)||this).m_step=i,n}s(i,e);var n=i.prototype;return n.ReportFixtureAndParticle=function(e,n,r){var s=i.ReportFixtureAndParticle_s_p1,a=i.ReportFixtureAndParticle_s_output,o=i.ReportFixtureAndParticle_s_input,h=i.ReportFixtureAndParticle_s_p,u=i.ReportFixtureAndParticle_s_v,c=i.ReportFixtureAndParticle_s_f,_=e.GetBody(),f=this.m_system.m_positionBuffer.data[r],d=this.m_system.m_velocityBuffer.data[r],p=a,m=o;if(0===this.m_system.m_iterationIndex){var g=Z.MulTXV(_.m_xf0,f,s);e.GetShape().GetType()===t.b2ShapeType.e_circleShape&&(g.SelfSub(_.GetLocalCenter()),Q.MulRV(_.m_xf0.q,g,g),Q.MulTRV(_.m_xf.q,g,g),g.SelfAdd(_.GetLocalCenter())),Z.MulXV(_.m_xf,g,m.p1)}else m.p1.Copy(f);if(X.AddVMulSV(f,this.m_step.dt,d,m.p2),m.maxFraction=1,e.RayCast(p,m,n)){var v=p.normal,y=h;y.x=(1-p.fraction)*m.p1.x+p.fraction*m.p2.x+l*v.x,y.y=(1-p.fraction)*m.p1.y+p.fraction*m.p2.y+l*v.y;var S=u;S.x=this.m_step.inv_dt*(y.x-f.x),S.y=this.m_step.inv_dt*(y.y-f.y),this.m_system.m_velocityBuffer.data[r].Copy(S);var T=c;T.x=this.m_step.inv_dt*this.m_system.GetParticleMass()*(d.x-S.x),T.y=this.m_step.inv_dt*this.m_system.GetParticleMass()*(d.y-S.y),this.m_system.ParticleApplyForce(r,T)}},n.ReportParticle=function(){return!1},i}(nr);br.ReportFixtureAndParticle_s_p1=new X,br.ReportFixtureAndParticle_s_output=new kt,br.ReportFixtureAndParticle_s_input=new Ft,br.ReportFixtureAndParticle_s_p=new X,br.ReportFixtureAndParticle_s_v=new X,br.ReportFixtureAndParticle_s_f=new X;var Er=function(){function e(t){this.m_newFixture=!1,this.m_locked=!1,this.m_clearForces=!0,this.m_contactManager=new bn,this.m_bodyList=null,this.m_jointList=null,this.m_particleSystemList=null,this.m_bodyCount=0,this.m_jointCount=0,this.m_gravity=new X,this.m_allowSleep=!0,this.m_destructionListener=null,this.m_debugDraw=null,this.m_inv_dt0=0,this.m_warmStarting=!0,this.m_continuousPhysics=!0,this.m_subStepping=!1,this.m_stepComplete=!0,this.m_profile=new En,this.m_island=new Fn,this.s_stack=[],this.m_controllerList=null,this.m_controllerCount=0,this.m_gravity.Copy(t)}var n=e.prototype;return n.SetDestructionListener=function(t){this.m_destructionListener=t},n.SetContactFilter=function(t){this.m_contactManager.m_contactFilter=t},n.SetContactListener=function(t){this.m_contactManager.m_contactListener=t},n.SetDebugDraw=function(t){this.m_debugDraw=t},n.CreateBody=function(t){if(void 0===t&&(t={}),this.IsLocked())throw new Error;var e=new Ri(t,this);return e.m_prev=null,e.m_next=this.m_bodyList,this.m_bodyList&&(this.m_bodyList.m_prev=e),this.m_bodyList=e,++this.m_bodyCount,e},n.DestroyBody=function(t){if(this.IsLocked())throw new Error;for(var e=t.m_jointList;e;){var i=e;e=e.next,this.m_destructionListener&&this.m_destructionListener.SayGoodbyeJoint(i.joint),this.DestroyJoint(i.joint),t.m_jointList=e}t.m_jointList=null;for(var n=t.m_controllerList;n;){var r=n;n=n.nextController,r.controller.RemoveBody(t)}for(var s=t.m_contactList;s;){var a=s;s=s.next,this.m_contactManager.Destroy(a.contact)}t.m_contactList=null;for(var o=t.m_fixtureList;o;){var h=o;o=o.m_next,this.m_destructionListener&&this.m_destructionListener.SayGoodbyeFixture(h),h.DestroyProxies(),h.Reset(),t.m_fixtureList=o,t.m_fixtureCount-=1}t.m_fixtureList=null,t.m_fixtureCount=0,t.m_prev&&(t.m_prev.m_next=t.m_next),t.m_next&&(t.m_next.m_prev=t.m_prev),t===this.m_bodyList&&(this.m_bodyList=t.m_next),--this.m_bodyCount},e._Joint_Create=function(e){switch(e.type){case t.b2JointType.e_distanceJoint:return new Oi(e);case t.b2JointType.e_mouseJoint:return new Wi(e);case t.b2JointType.e_prismaticJoint:return new ji(e);case t.b2JointType.e_revoluteJoint:return new Qi(e);case t.b2JointType.e_pulleyJoint:return new qi(e);case t.b2JointType.e_gearJoint:return new Vi(e);case t.b2JointType.e_wheelJoint:return new nn(e);case t.b2JointType.e_weldJoint:return new tn(e);case t.b2JointType.e_frictionJoint:return new ki(e);case t.b2JointType.e_ropeJoint:return new Ji(e);case t.b2JointType.e_motorJoint:return new zi(e);case t.b2JointType.e_areaJoint:return new Ni(e)}throw new Error},e._Joint_Destroy=function(){},n.CreateJoint=function(t){if(this.IsLocked())throw new Error;var i=e._Joint_Create(t);i.m_prev=null,i.m_next=this.m_jointList,this.m_jointList&&(this.m_jointList.m_prev=i),this.m_jointList=i,++this.m_jointCount,i.m_edgeA.prev=null,i.m_edgeA.next=i.m_bodyA.m_jointList,i.m_bodyA.m_jointList&&(i.m_bodyA.m_jointList.prev=i.m_edgeA),i.m_bodyA.m_jointList=i.m_edgeA,i.m_edgeB.prev=null,i.m_edgeB.next=i.m_bodyB.m_jointList,i.m_bodyB.m_jointList&&(i.m_bodyB.m_jointList.prev=i.m_edgeB),i.m_bodyB.m_jointList=i.m_edgeB;var n=i.m_bodyA,r=i.m_bodyB;if(!i.m_collideConnected)for(var s=r.GetContactList();s;)s.other===n&&s.contact.FlagForFiltering(),s=s.next;return i},n.DestroyJoint=function(t){if(this.IsLocked())throw new Error;t.m_prev&&(t.m_prev.m_next=t.m_next),t.m_next&&(t.m_next.m_prev=t.m_prev),t===this.m_jointList&&(this.m_jointList=t.m_next);var i=t.m_bodyA,n=t.m_bodyB,r=t.m_collideConnected;if(i.SetAwake(!0),n.SetAwake(!0),t.m_edgeA.prev&&(t.m_edgeA.prev.next=t.m_edgeA.next),t.m_edgeA.next&&(t.m_edgeA.next.prev=t.m_edgeA.prev),t.m_edgeA===i.m_jointList&&(i.m_jointList=t.m_edgeA.next),t.m_edgeA.Reset(),t.m_edgeB.prev&&(t.m_edgeB.prev.next=t.m_edgeB.next),t.m_edgeB.next&&(t.m_edgeB.next.prev=t.m_edgeB.prev),t.m_edgeB===n.m_jointList&&(n.m_jointList=t.m_edgeB.next),t.m_edgeB.Reset(),e._Joint_Destroy(t),--this.m_jointCount,!r)for(var s=n.GetContactList();s;)s.other===i&&s.contact.FlagForFiltering(),s=s.next},n.CreateParticleSystem=function(t){if(this.IsLocked())throw new Error;var e=new ur(t,this);return e.m_prev=null,e.m_next=this.m_particleSystemList,this.m_particleSystemList&&(this.m_particleSystemList.m_prev=e),this.m_particleSystemList=e,e},n.DestroyParticleSystem=function(t){if(this.IsLocked())throw new Error;t.m_prev&&(t.m_prev.m_next=t.m_next),t.m_next&&(t.m_next.m_prev=t.m_prev),t===this.m_particleSystemList&&(this.m_particleSystemList=t.m_next)},n.CalculateReasonableParticleIterations=function(t){if(null===this.m_particleSystemList)return 1;return Gn(this.m_gravity.Length(),function(t){for(var e=i,n=t.GetParticleSystemList();null!==n;n=n.m_next)e=M(e,n.GetRadius());return e}(this),t)},n.Step=function(t,i,n,r){void 0===r&&(r=this.CalculateReasonableParticleIterations(t));var s=e.Step_s_stepTimer.Reset();this.m_newFixture&&(this.m_contactManager.FindNewContacts(),this.m_newFixture=!1),this.m_locked=!0;var a=e.Step_s_step;a.dt=t,a.velocityIterations=i,a.positionIterations=n,a.particleIterations=r,a.inv_dt=t>0?1/t:0,a.dtRatio=this.m_inv_dt0*t,a.warmStarting=this.m_warmStarting;var o=e.Step_s_timer.Reset();if(this.m_contactManager.Collide(),this.m_profile.collide=o.GetMilliseconds(),this.m_stepComplete&&a.dt>0){for(var h=e.Step_s_timer.Reset(),u=this.m_particleSystemList;u;u=u.m_next)u.Solve(a);this.Solve(a),this.m_profile.solve=h.GetMilliseconds()}if(this.m_continuousPhysics&&a.dt>0){var l=e.Step_s_timer.Reset();this.SolveTOI(a),this.m_profile.solveTOI=l.GetMilliseconds()}a.dt>0&&(this.m_inv_dt0=a.inv_dt),this.m_clearForces&&this.ClearForces(),this.m_locked=!1,this.m_profile.step=s.GetMilliseconds()},n.ClearForces=function(){for(var t=this.m_bodyList;t;t=t.m_next)t.m_force.SetZero(),t.m_torque=0},n.DrawParticleSystem=function(t){if(null!==this.m_debugDraw){var e=t.GetParticleCount();if(e){var i=t.GetRadius(),n=t.GetPositionBuffer();if(t.m_colorBuffer.data){var r=t.GetColorBuffer();this.m_debugDraw.DrawParticles(n,i,r,e)}else this.m_debugDraw.DrawParticles(n,i,null,e)}}},n.DrawDebugData=function(){if(null!==this.m_debugDraw){var i=this.m_debugDraw.GetFlags(),n=e.DrawDebugData_s_color.SetRGB(0,0,0);if(i&t.b2DrawFlags.e_shapeBit)for(var r=this.m_bodyList;r;r=r.m_next){var s=r.m_xf;this.m_debugDraw.PushTransform(s);for(var a=r.GetFixtureList();a;a=a.m_next)r.IsActive()?r.GetType()===t.b2BodyType.b2_staticBody?(n.SetRGB(.5,.9,.5),this.DrawShape(a,n)):r.GetType()===t.b2BodyType.b2_kinematicBody?(n.SetRGB(.5,.5,.9),this.DrawShape(a,n)):r.IsAwake()?(n.SetRGB(.9,.7,.7),this.DrawShape(a,n)):(n.SetRGB(.6,.6,.6),this.DrawShape(a,n)):(n.SetRGB(.5,.5,.3),this.DrawShape(a,n));this.m_debugDraw.PopTransform(s)}if(i&t.b2DrawFlags.e_particleBit)for(var o=this.m_particleSystemList;o;o=o.m_next)this.DrawParticleSystem(o);if(i&t.b2DrawFlags.e_jointBit)for(var h=this.m_jointList;h;h=h.m_next)this.DrawJoint(h);if(i&t.b2DrawFlags.e_aabbBit){n.SetRGB(.9,.3,.9);for(var u=e.DrawDebugData_s_vs,l=this.m_bodyList;l;l=l.m_next)if(l.IsActive())for(var c=l.GetFixtureList();c;c=c.m_next)for(var _=0;_<c.m_proxyCount;++_){var f=c.m_proxies[_].treeNode.aabb;u[0].Set(f.lowerBound.x,f.lowerBound.y),u[1].Set(f.upperBound.x,f.lowerBound.y),u[2].Set(f.upperBound.x,f.upperBound.y),u[3].Set(f.lowerBound.x,f.upperBound.y),this.m_debugDraw.DrawPolygon(u,4,n)}}if(i&t.b2DrawFlags.e_centerOfMassBit)for(var d=this.m_bodyList;d;d=d.m_next){var p=e.DrawDebugData_s_xf;p.q.Copy(d.m_xf.q),p.p.Copy(d.GetWorldCenter()),this.m_debugDraw.DrawTransform(p)}if(i&t.b2DrawFlags.e_controllerBit)for(var m=this.m_controllerList;m;m=m.m_next)m.Draw(this.m_debugDraw)}},n.QueryAABB=function(){(arguments.length<=0?void 0:arguments[0])instanceof Tn?this._QueryAABB(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1]):this._QueryAABB(null,arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1])},n._QueryAABB=function(t,e,i){if(this.m_contactManager.m_broadPhase.Query(e,(function(e){var n=e.userData.fixture;return t?t.ReportFixture(n):!i||i(n)})),t instanceof Tn)for(var n=this.m_particleSystemList;n;n=n.m_next)t.ShouldQueryParticleSystem(n)&&n.QueryAABB(t,e)},n.QueryAllAABB=function(t,e){return void 0===e&&(e=[]),this.QueryAABB(t,(function(t){return e.push(t),!0})),e},n.QueryPointAABB=function(){(arguments.length<=0?void 0:arguments[0])instanceof Tn?this._QueryPointAABB(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1]):this._QueryPointAABB(null,arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1])},n._QueryPointAABB=function(t,e,i){if(this.m_contactManager.m_broadPhase.QueryPoint(e,(function(e){var n=e.userData.fixture;return t?t.ReportFixture(n):!i||i(n)})),t instanceof Tn)for(var n=this.m_particleSystemList;n;n=n.m_next)t.ShouldQueryParticleSystem(n)&&n.QueryPointAABB(t,e)},n.QueryAllPointAABB=function(t,e){return void 0===e&&(e=[]),this.QueryPointAABB(t,(function(t){return e.push(t),!0})),e},n.QueryFixtureShape=function(){(arguments.length<=0?void 0:arguments[0])instanceof Tn?this._QueryFixtureShape(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2],arguments.length<=3?void 0:arguments[3]):this._QueryFixtureShape(null,arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2],arguments.length<=3?void 0:arguments[3])},n._QueryFixtureShape=function(t,i,n,r,s){var a=e.QueryFixtureShape_s_aabb;if(i.ComputeAABB(a,r,n),this.m_contactManager.m_broadPhase.Query(a,(function(e){var a=e.userData,o=a.fixture;if(Xt(i,n,o.GetShape(),a.childIndex,r,o.GetBody().GetTransform())){if(t)return t.ReportFixture(o);if(s)return s(o)}return!0})),t instanceof Tn)for(var o=this.m_particleSystemList;o;o=o.m_next)t.ShouldQueryParticleSystem(o)&&o.QueryAABB(t,a)},n.QueryAllFixtureShape=function(t,e,i,n){return void 0===n&&(n=[]),this.QueryFixtureShape(t,e,i,(function(t){return n.push(t),!0})),n},n.QueryFixturePoint=function(){(arguments.length<=0?void 0:arguments[0])instanceof Tn?this._QueryFixturePoint(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1]):this._QueryFixturePoint(null,arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1])},n._QueryFixturePoint=function(t,e,i){if(this.m_contactManager.m_broadPhase.QueryPoint(e,(function(n){var r=n.userData.fixture;if(r.TestPoint(e)){if(t)return t.ReportFixture(r);if(i)return i(r)}return!0})),t)for(var n=this.m_particleSystemList;n;n=n.m_next)t.ShouldQueryParticleSystem(n)&&n.QueryPointAABB(t,e)},n.QueryAllFixturePoint=function(t,e){return void 0===e&&(e=[]),this.QueryFixturePoint(t,(function(t){return e.push(t),!0})),e},n.RayCast=function(){(arguments.length<=0?void 0:arguments[0])instanceof An?this._RayCast(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2]):this._RayCast(null,arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2])},n._RayCast=function(t,i,n,r){var s=e.RayCast_s_input;if(s.maxFraction=1,s.p1.Copy(i),s.p2.Copy(n),this.m_contactManager.m_broadPhase.RayCast(s,(function(s,a){var o=a.userData,h=o.fixture,u=o.childIndex,l=e.RayCast_s_output;if(h.RayCast(l,s,u)){var c=l.fraction,_=e.RayCast_s_point;if(_.Set((1-c)*i.x+c*n.x,(1-c)*i.y+c*n.y),t)return t.ReportFixture(h,_,l.normal,c);if(r)return r(h,_,l.normal,c)}return s.maxFraction})),t)for(var a=this.m_particleSystemList;a;a=a.m_next)t.ShouldQueryParticleSystem(a)&&a.RayCast(t,i,n)},n.RayCastOne=function(t,e){var i=null,n=1;return this.RayCast(t,e,(function(t,e,r,s){return s<n&&(n=s,i=t),n})),i},n.RayCastAll=function(t,e,i){return void 0===i&&(i=[]),this.RayCast(t,e,(function(t){return i.push(t),1})),i},n.GetBodyList=function(){return this.m_bodyList},n.GetJointList=function(){return this.m_jointList},n.GetParticleSystemList=function(){return this.m_particleSystemList},n.GetContactList=function(){return this.m_contactManager.m_contactList},n.SetAllowSleeping=function(t){if(t!==this.m_allowSleep&&(this.m_allowSleep=t,!this.m_allowSleep))for(var e=this.m_bodyList;e;e=e.m_next)e.SetAwake(!0)},n.GetAllowSleeping=function(){return this.m_allowSleep},n.SetWarmStarting=function(t){this.m_warmStarting=t},n.GetWarmStarting=function(){return this.m_warmStarting},n.SetContinuousPhysics=function(t){this.m_continuousPhysics=t},n.GetContinuousPhysics=function(){return this.m_continuousPhysics},n.SetSubStepping=function(t){this.m_subStepping=t},n.GetSubStepping=function(){return this.m_subStepping},n.GetProxyCount=function(){return this.m_contactManager.m_broadPhase.GetProxyCount()},n.GetBodyCount=function(){return this.m_bodyCount},n.GetJointCount=function(){return this.m_jointCount},n.GetContactCount=function(){return this.m_contactManager.m_contactCount},n.GetTreeHeight=function(){return this.m_contactManager.m_broadPhase.GetTreeHeight()},n.GetTreeBalance=function(){return this.m_contactManager.m_broadPhase.GetTreeBalance()},n.GetTreeQuality=function(){return this.m_contactManager.m_broadPhase.GetTreeQuality()},n.SetGravity=function(t,e){if(void 0===e&&(e=!0),!X.IsEqualToV(this.m_gravity,t)&&(this.m_gravity.Copy(t),e))for(var i=this.m_bodyList;i;i=i.m_next)i.SetAwake(!0)},n.GetGravity=function(){return this.m_gravity},n.IsLocked=function(){return this.m_locked},n.SetAutoClearForces=function(t){this.m_clearForces=t},n.GetAutoClearForces=function(){return this.m_clearForces},n.ShiftOrigin=function(t){if(this.IsLocked())throw new Error;for(var e=this.m_bodyList;e;e=e.m_next)e.m_xf.p.SelfSub(t),e.m_sweep.c0.SelfSub(t),e.m_sweep.c.SelfSub(t);for(var i=this.m_jointList;i;i=i.m_next)i.ShiftOrigin(t);this.m_contactManager.m_broadPhase.ShiftOrigin(t)},n.GetContactManager=function(){return this.m_contactManager},n.GetProfile=function(){return this.m_profile},n.Dump=function(e){if(!this.m_locked){e("const g: b2Vec2 = new b2Vec2(%.15f, %.15f);\n",this.m_gravity.x,this.m_gravity.y),e("this.m_world.SetGravity(g);\n"),e("const bodies: b2Body[] = [];\n"),e("const joints: b2Joint[] = [];\n");for(var i=0,n=this.m_bodyList;n;n=n.m_next)n.m_islandIndex=i,n.Dump(e),++i;i=0;for(var r=this.m_jointList;r;r=r.m_next)r.m_index=i,++i;for(var s=this.m_jointList;s;s=s.m_next)s.m_type!==t.b2JointType.e_gearJoint&&(e("{\n"),s.Dump(e),e("}\n"));for(var a=this.m_jointList;a;a=a.m_next)a.m_type===t.b2JointType.e_gearJoint&&(e("{\n"),a.Dump(e),e("}\n"))}},n.DrawJoint=function(i){if(null!==this.m_debugDraw){var n=i.GetBodyA(),r=i.GetBodyB(),s=n.m_xf,a=r.m_xf,o=s.p,h=a.p,u=i.GetAnchorA(e.DrawJoint_s_p1),l=i.GetAnchorB(e.DrawJoint_s_p2),c=e.DrawJoint_s_color.SetRGB(.5,.8,.8);switch(i.m_type){case t.b2JointType.e_distanceJoint:this.m_debugDraw.DrawSegment(u,l,c);break;case t.b2JointType.e_pulleyJoint:var _=i,f=_.GetGroundAnchorA(),d=_.GetGroundAnchorB();this.m_debugDraw.DrawSegment(f,u,c),this.m_debugDraw.DrawSegment(d,l,c),this.m_debugDraw.DrawSegment(f,d,c);break;case t.b2JointType.e_mouseJoint:var p=e.DrawJoint_s_c;p.Set(0,1,0),this.m_debugDraw.DrawPoint(u,4,p),this.m_debugDraw.DrawPoint(l,4,p),p.Set(.8,.8,.8),this.m_debugDraw.DrawSegment(u,l,p);break;default:this.m_debugDraw.DrawSegment(o,u,c),this.m_debugDraw.DrawSegment(u,l,c),this.m_debugDraw.DrawSegment(h,l,c)}}},n.DrawShape=function(i,n){if(null!==this.m_debugDraw){var r=i.GetShape();switch(r.m_type){case t.b2ShapeType.e_circleShape:var s=r,a=s.m_p,o=s.m_radius,h=X.UNITX;this.m_debugDraw.DrawSolidCircle(a,o,h,n);break;case t.b2ShapeType.e_edgeShape:var u=r,l=u.m_vertex1,c=u.m_vertex2;this.m_debugDraw.DrawSegment(l,c,n);break;case t.b2ShapeType.e_chainShape:var _=r,f=_.m_count,d=_.m_vertices,p=e.DrawShape_s_ghostColor.SetRGBA(.75*n.r,.75*n.g,.75*n.b,n.a),m=d[0];if(this.m_debugDraw.DrawPoint(m,4,n),_.m_hasPrevVertex){var g=_.m_prevVertex;this.m_debugDraw.DrawSegment(g,m,p),this.m_debugDraw.DrawCircle(g,.1,p)}for(var v=1;v<f;++v){var y=d[v];this.m_debugDraw.DrawSegment(m,y,n),this.m_debugDraw.DrawPoint(y,4,n),m=y}if(_.m_hasNextVertex){var S=_.m_nextVertex;this.m_debugDraw.DrawSegment(S,m,p),this.m_debugDraw.DrawCircle(S,.1,p)}break;case t.b2ShapeType.e_polygonShape:var T=r,A=T.m_count,b=T.m_vertices;this.m_debugDraw.DrawSolidPolygon(b,A,n)}}},n.Solve=function(e){for(var i=this.m_bodyList;i;i=i.m_next)i.m_xf0.Copy(i.m_xf);for(var n=this.m_controllerList;n;n=n.m_next)n.Step(e);this.m_profile.solveInit=0,this.m_profile.solveVelocity=0,this.m_profile.solvePosition=0;var r=this.m_island;r.Initialize(this.m_bodyCount,this.m_contactManager.m_contactCount,this.m_jointCount,this.m_contactManager.m_contactListener);for(var s=this.m_bodyList;s;s=s.m_next)s.m_islandFlag=!1;for(var a=this.m_contactManager.m_contactList;a;a=a.m_next)a.m_islandFlag=!1;for(var o=this.m_jointList;o;o=o.m_next)o.m_islandFlag=!1;for(var h=this.s_stack,u=this.m_bodyList;u;u=u.m_next)if(!u.m_islandFlag&&u.IsAwake()&&u.IsActive()&&u.GetType()!==t.b2BodyType.b2_staticBody){r.Clear();var l=0;for(h[l++]=u,u.m_islandFlag=!0;l>0;){var c=h[--l];if(!c)throw new Error;if(r.AddBody(c),c.m_awakeFlag=!0,c.GetType()!==t.b2BodyType.b2_staticBody){for(var _=c.m_contactList;_;_=_.next){var f=_.contact;if(!f.m_islandFlag&&f.IsEnabled()&&f.IsTouching()){var d=f.m_fixtureA.m_isSensor,p=f.m_fixtureB.m_isSensor;if(!d&&!p){r.AddContact(f),f.m_islandFlag=!0;var m=_.other;m.m_islandFlag||(h[l++]=m,m.m_islandFlag=!0)}}}for(var g=c.m_jointList;g;g=g.next)if(!g.joint.m_islandFlag){var v=g.other;v.IsActive()&&(r.AddJoint(g.joint),g.joint.m_islandFlag=!0,v.m_islandFlag||(h[l++]=v,v.m_islandFlag=!0))}}}var y=new En;r.Solve(y,e,this.m_gravity,this.m_allowSleep),this.m_profile.solveInit+=y.solveInit,this.m_profile.solveVelocity+=y.solveVelocity,this.m_profile.solvePosition+=y.solvePosition;for(var S=0;S<r.m_bodyCount;++S){var T=r.m_bodies[S];T.GetType()===t.b2BodyType.b2_staticBody&&(T.m_islandFlag=!1)}}for(var A=0;A<h.length&&h[A];++A)h[A]=null;for(var b=new it,E=this.m_bodyList;E;E=E.m_next)E.m_islandFlag&&E.GetType()!==t.b2BodyType.b2_staticBody&&E.SynchronizeFixtures();this.m_contactManager.FindNewContacts(),this.m_profile.broadphase=b.GetMilliseconds()},n.SolveTOI=function(i){var n=this.m_island;if(n.Initialize(64,32,0,this.m_contactManager.m_contactListener),this.m_stepComplete){for(var r=this.m_bodyList;r;r=r.m_next)r.m_islandFlag=!1,r.m_sweep.alpha0=0;for(var s=this.m_contactManager.m_contactList;s;s=s.m_next)s.m_toiFlag=!1,s.m_islandFlag=!1,s.m_toiCount=0,s.m_toi=1}for(;;){for(var a=null,o=1,h=this.m_contactManager.m_contactList;h;h=h.m_next)if(h.IsEnabled()&&!(h.m_toiCount>8)){var u=1;if(h.m_toiFlag)u=h.m_toi;else{var l=h.GetFixtureA(),c=h.GetFixtureB();if(l.IsSensor()||c.IsSensor())continue;var _=l.GetBody(),f=c.GetBody(),d=_.m_type,p=f.m_type,m=_.IsAwake()&&d!==t.b2BodyType.b2_staticBody,g=f.IsAwake()&&p!==t.b2BodyType.b2_staticBody;if(!m&&!g)continue;var v=_.IsBullet()||d!==t.b2BodyType.b2_dynamicBody,y=f.IsBullet()||p!==t.b2BodyType.b2_dynamicBody;if(!v&&!y)continue;var S=_.m_sweep.alpha0;_.m_sweep.alpha0<f.m_sweep.alpha0?(S=f.m_sweep.alpha0,_.m_sweep.Advance(S)):f.m_sweep.alpha0<_.m_sweep.alpha0&&(S=_.m_sweep.alpha0,f.m_sweep.Advance(S));var T=h.GetChildIndexA(),A=h.GetChildIndexB(),b=e.SolveTOI_s_toi_input;b.proxyA.SetShape(l.GetShape(),T),b.proxyB.SetShape(c.GetShape(),A),b.sweepA.Copy(_.m_sweep),b.sweepB.Copy(f.m_sweep),b.tMax=1;var E=e.SolveTOI_s_toi_output;Te(E,b);var C=E.t;u=E.state===t.b2TOIOutputState.e_touching?M(S+(1-S)*C,1):1,h.m_toi=u,h.m_toiFlag=!0}u<o&&(a=h,o=u)}if(null===a||.9999<o){this.m_stepComplete=!0;break}var x=a.GetFixtureA(),w=a.GetFixtureB(),R=x.GetBody(),I=w.GetBody(),D=e.SolveTOI_s_backup1.Copy(R.m_sweep),B=e.SolveTOI_s_backup2.Copy(I.m_sweep);if(R.Advance(o),I.Advance(o),a.Update(this.m_contactManager.m_contactListener),a.m_toiFlag=!1,++a.m_toiCount,a.IsEnabled()&&a.IsTouching()){R.SetAwake(!0),I.SetAwake(!0),n.Clear(),n.AddBody(R),n.AddBody(I),n.AddContact(a),R.m_islandFlag=!0,I.m_islandFlag=!0,a.m_islandFlag=!0;for(var P=0;P<2;++P){var O=0===P?R:I;if(O.m_type===t.b2BodyType.b2_dynamicBody)for(var L=O.m_contactList;L&&n.m_bodyCount!==n.m_bodyCapacity&&n.m_contactCount!==n.m_contactCapacity;L=L.next){var N=L.contact;if(!N.m_islandFlag){var F=L.other;if(F.m_type!==t.b2BodyType.b2_dynamicBody||O.IsBullet()||F.IsBullet()){var k=N.m_fixtureA.m_isSensor,G=N.m_fixtureB.m_isSensor;if(!k&&!G){var V=e.SolveTOI_s_backup.Copy(F.m_sweep);F.m_islandFlag||F.Advance(o),N.Update(this.m_contactManager.m_contactListener),N.IsEnabled()&&N.IsTouching()?(N.m_islandFlag=!0,n.AddContact(N),F.m_islandFlag||(F.m_islandFlag=!0,F.m_type!==t.b2BodyType.b2_staticBody&&F.SetAwake(!0),n.AddBody(F))):(F.m_sweep.Copy(V),F.SynchronizeTransform())}}}}}var U=e.SolveTOI_s_subStep;U.dt=(1-o)*i.dt,U.inv_dt=1/U.dt,U.dtRatio=1,U.positionIterations=20,U.velocityIterations=i.velocityIterations,U.particleIterations=i.particleIterations,U.warmStarting=!1,n.SolveTOI(U,R.m_islandIndex,I.m_islandIndex);for(var z=0;z<n.m_bodyCount;++z){var H=n.m_bodies[z];if(H.m_islandFlag=!1,H.m_type===t.b2BodyType.b2_dynamicBody){H.SynchronizeFixtures();for(var W=H.m_contactList;W;W=W.next)W.contact.m_toiFlag=!1,W.contact.m_islandFlag=!1}}if(this.m_contactManager.FindNewContacts(),this.m_subStepping){this.m_stepComplete=!1;break}}else a.SetEnabled(!1),R.m_sweep.Copy(D),I.m_sweep.Copy(B),R.SynchronizeTransform(),I.SynchronizeTransform()}},n.AddController=function(t){return t.m_next=this.m_controllerList,t.m_prev=null,this.m_controllerList&&(this.m_controllerList.m_prev=t),this.m_controllerList=t,++this.m_controllerCount,t},n.RemoveController=function(t){return t.m_prev&&(t.m_prev.m_next=t.m_next),t.m_next&&(t.m_next.m_prev=t.m_prev),this.m_controllerList===t&&(this.m_controllerList=t.m_next),--this.m_controllerCount,t.m_prev=null,t.m_next=null,t},e}();Er.Step_s_step=new Cn,Er.Step_s_stepTimer=new it,Er.Step_s_timer=new it,Er.DrawDebugData_s_color=new tt(0,0,0),Er.DrawDebugData_s_vs=X.MakeArray(4),Er.DrawDebugData_s_xf=new Z,Er.QueryFixtureShape_s_aabb=new Gt,Er.RayCast_s_input=new Ft,Er.RayCast_s_output=new kt,Er.RayCast_s_point=new X,Er.DrawJoint_s_p1=new X,Er.DrawJoint_s_p2=new X,Er.DrawJoint_s_color=new tt(.5,.8,.8),Er.DrawJoint_s_c=new tt,Er.DrawShape_s_ghostColor=new tt,Er.SolveTOI_s_subStep=new Cn,Er.SolveTOI_s_backup=new $,Er.SolveTOI_s_backup1=new $,Er.SolveTOI_s_backup2=new $,Er.SolveTOI_s_toi_input=new he,Er.SolveTOI_s_toi_output=new le;var Cr=function(t,e){this.prevBody=null,this.nextBody=null,this.prevController=null,this.nextController=null,this.controller=t,this.body=e},xr=function(){function t(){this.m_bodyList=null,this.m_bodyCount=0,this.m_prev=null,this.m_next=null}var e=t.prototype;return e.GetNext=function(){return this.m_next},e.GetPrev=function(){return this.m_prev},e.GetBodyList=function(){return this.m_bodyList},e.AddBody=function(t){var e=new Cr(this,t);e.nextBody=this.m_bodyList,e.prevBody=null,this.m_bodyList&&(this.m_bodyList.prevBody=e),this.m_bodyList=e,++this.m_bodyCount,e.nextController=t.m_controllerList,e.prevController=null,t.m_controllerList&&(t.m_controllerList.prevController=e),t.m_controllerList=e,++t.m_controllerCount},e.RemoveBody=function(t){if(this.m_bodyCount<=0)throw new Error;for(var e=this.m_bodyList;e&&e.body!==t;)e=e.nextBody;if(null===e)throw new Error;e.prevBody&&(e.prevBody.nextBody=e.nextBody),e.nextBody&&(e.nextBody.prevBody=e.prevBody),this.m_bodyList===e&&(this.m_bodyList=e.nextBody),--this.m_bodyCount,e.nextController&&(e.nextController.prevController=e.prevController),e.prevController&&(e.prevController.nextController=e.nextController),t.m_controllerList===e&&(t.m_controllerList=e.nextController),--t.m_controllerCount},e.Clear=function(){for(;this.m_bodyList;)this.RemoveBody(this.m_bodyList.body);this.m_bodyCount=0},t}(),wr=function(t){function e(){var e;return(e=t.apply(this,arguments)||this).normal=new X(0,1),e.offset=0,e.density=0,e.velocity=new X(0,0),e.linearDrag=0,e.angularDrag=0,e.useDensity=!1,e.useWorldGravity=!0,e.gravity=new X(0,0),e}s(e,t);var i=e.prototype;return i.Step=function(){if(this.m_bodyList){this.useWorldGravity&&this.gravity.Copy(this.m_bodyList.body.GetWorld().GetGravity());for(var t=this.m_bodyList;t;t=t.nextBody){var e=t.body;if(e.IsAwake()){for(var i=new X,n=new X,s=0,a=0,o=e.GetFixtureList();o;o=o.m_next){var h=new X,u=o.GetShape().ComputeSubmergedArea(this.normal,this.offset,e.GetTransform(),h);s+=u,i.x+=u*h.x,i.y+=u*h.y;var l;a+=u*(l=this.useDensity?o.GetDensity():1),n.x+=u*h.x*l,n.y+=u*h.y*l}if(i.x/=s,i.y/=s,n.x/=a,n.y/=a,!(s<r)){var c=this.gravity.Clone().SelfNeg();c.SelfMul(this.density*s),e.ApplyForce(c,n);var _=e.GetLinearVelocityFromWorldPoint(i,new X);_.SelfSub(this.velocity),_.SelfMul(-this.linearDrag*s),e.ApplyForce(_,i),e.ApplyTorque(-e.GetInertia()/e.GetMass()*s*e.GetAngularVelocity()*this.angularDrag)}}}}},i.Draw=function(t){var e=100,i=new X,n=new X;i.x=this.normal.x*this.offset+this.normal.y*e,i.y=this.normal.y*this.offset-this.normal.x*e,n.x=this.normal.x*this.offset-this.normal.y*e,n.y=this.normal.y*this.offset+this.normal.x*e;var r=new tt(0,0,.8);t.DrawSegment(i,n,r)},e}(xr),Rr=function(t){function e(){var e;return(e=t.apply(this,arguments)||this).A=new X(0,0),e}s(e,t);var i=e.prototype;return i.Step=function(t){for(var i=X.MulSV(t.dt,this.A,e.Step_s_dtA),n=this.m_bodyList;n;n=n.nextBody){var r=n.body;r.IsAwake()&&r.SetLinearVelocity(X.AddVV(r.GetLinearVelocity(),i,X.s_t0))}},i.Draw=function(){},e}(xr);Rr.Step_s_dtA=new X;var Ir=function(t){function e(){var e;return(e=t.apply(this,arguments)||this).F=new X(0,0),e}s(e,t);var i=e.prototype;return i.Step=function(){for(var t=this.m_bodyList;t;t=t.nextBody){var e=t.body;e.IsAwake()&&e.ApplyForce(this.F,e.GetWorldCenter())}},i.Draw=function(){},e}(xr),Dr=function(t){function e(){var e;return(e=t.apply(this,arguments)||this).G=1,e.invSqr=!0,e}s(e,t);var i=e.prototype;return i.Step=function(){if(this.invSqr)for(var t=this.m_bodyList;t;t=t.nextBody)for(var i=t.body,n=i.GetWorldCenter(),s=i.GetMass(),a=this.m_bodyList;a&&a!==t;a=a.nextBody){var o=a.body,h=o.GetWorldCenter(),u=o.GetMass(),l=h.x-n.x,c=h.y-n.y,_=l*l+c*c;if(!(_<r)){var f=e.Step_s_f.Set(l,c);f.SelfMul(this.G/_/k(_)*s*u),i.IsAwake()&&i.ApplyForce(f,n),o.IsAwake()&&o.ApplyForce(f.SelfMul(-1),h)}}else for(var d=this.m_bodyList;d;d=d.nextBody)for(var p=d.body,m=p.GetWorldCenter(),g=p.GetMass(),v=this.m_bodyList;v&&v!==d;v=v.nextBody){var y=v.body,S=y.GetWorldCenter(),T=y.GetMass(),A=S.x-m.x,b=S.y-m.y,E=A*A+b*b;if(!(E<r)){var C=e.Step_s_f.Set(A,b);C.SelfMul(this.G/E*g*T),p.IsAwake()&&p.ApplyForce(C,m),y.IsAwake()&&y.ApplyForce(C.SelfMul(-1),S)}}},i.Draw=function(){},e}(xr);Dr.Step_s_f=new X;var Br=function(t){function e(){var e;return(e=t.apply(this,arguments)||this).T=new q,e.maxTimestep=0,e}s(e,t);var i=e.prototype;return i.Step=function(t){var i=t.dt;if(!(i<=r)){i>this.maxTimestep&&this.maxTimestep>0&&(i=this.maxTimestep);for(var n=this.m_bodyList;n;n=n.nextBody){var s=n.body;if(s.IsAwake()){var a=s.GetWorldVector(q.MulMV(this.T,s.GetLocalVector(s.GetLinearVelocity(),X.s_t0),X.s_t1),e.Step_s_damping);s.SetLinearVelocity(X.AddVV(s.GetLinearVelocity(),X.MulSV(i,a,X.s_t0),X.s_t1))}}}},i.Draw=function(){},i.SetAxisAligned=function(t,e){this.T.ex.x=-t,this.T.ex.y=0,this.T.ey.x=0,this.T.ey.y=-e,this.maxTimestep=t>0||e>0?1/P(t,e):0},e}(xr);Br.Step_s_damping=new X;var Mr=function(){function t(){this.m_count=0,this.m_ps=[],this.m_p0s=[],this.m_vs=[],this.m_ims=[],this.m_Ls=[],this.m_as=[],this.m_gravity=new X,this.m_damping=0,this.m_k2=1,this.m_k3=.1}var e=t.prototype;return e.GetVertexCount=function(){return this.m_count},e.GetVertices=function(){return this.m_ps},e.Initialize=function(t){this.m_count=t.count,this.m_ps=X.MakeArray(this.m_count),this.m_p0s=X.MakeArray(this.m_count),this.m_vs=X.MakeArray(this.m_count),this.m_ims=w(this.m_count);for(var e=0;e<this.m_count;++e){this.m_ps[e].Copy(t.vertices[e]),this.m_p0s[e].Copy(t.vertices[e]),this.m_vs[e].SetZero();var i=t.masses[e];this.m_ims[e]=i>0?1/i:0}var n=this.m_count-1,r=this.m_count-2;this.m_Ls=w(n),this.m_as=w(r);for(var s=0;s<n;++s){var a=this.m_ps[s],o=this.m_ps[s+1];this.m_Ls[s]=X.DistanceVV(a,o)}for(var h=0;h<r;++h){var u=this.m_ps[h],l=this.m_ps[h+1],c=this.m_ps[h+2],_=X.SubVV(l,u,X.s_t0),f=X.SubVV(c,l,X.s_t1),d=X.CrossVV(_,f),p=X.DotVV(_,f);this.m_as[h]=W(d,p)}this.m_gravity.Copy(t.gravity),this.m_damping=t.damping,this.m_k2=t.k2,this.m_k3=t.k3},e.Step=function(t,e){if(0!==t){for(var i=Math.exp(-t*this.m_damping),n=0;n<this.m_count;++n)this.m_p0s[n].Copy(this.m_ps[n]),this.m_ims[n]>0&&this.m_vs[n].SelfMulAdd(t,this.m_gravity),this.m_vs[n].SelfMul(i),this.m_ps[n].SelfMulAdd(t,this.m_vs[n]);for(var r=0;r<e;++r)this.SolveC2(),this.SolveC3(),this.SolveC2();for(var s=1/t,a=0;a<this.m_count;++a)X.MulSV(s,X.SubVV(this.m_ps[a],this.m_p0s[a],X.s_t0),this.m_vs[a])}},e.SolveC2=function(){for(var e=this.m_count-1,i=0;i<e;++i){var n=this.m_ps[i],r=this.m_ps[i+1],s=X.SubVV(r,n,t.s_d),a=s.Normalize(),o=this.m_ims[i],h=this.m_ims[i+1];if(o+h!==0){var u=o/(o+h),l=h/(o+h);n.SelfMulSub(this.m_k2*u*(this.m_Ls[i]-a),s),r.SelfMulAdd(this.m_k2*l*(this.m_Ls[i]-a),s)}}},e.SetAngle=function(t){for(var e=this.m_count-2,i=0;i<e;++i)this.m_as[i]=t},e.SolveC3=function(){for(var e=this.m_count-2,i=0;i<e;++i){var n=this.m_ps[i],r=this.m_ps[i+1],s=this.m_ps[i+2],a=this.m_ims[i],h=this.m_ims[i+1],u=this.m_ims[i+2],l=X.SubVV(r,n,t.s_d1),c=X.SubVV(s,r,t.s_d2),_=l.LengthSquared(),f=c.LengthSquared();if(_*f!=0){var d=X.CrossVV(l,c),p=X.DotVV(l,c),m=W(d,p),g=X.MulSV(-1/_,l.SelfSkew(),t.s_Jd1),v=X.MulSV(1/f,c.SelfSkew(),t.s_Jd2),y=X.NegV(g,t.s_J1),S=X.SubVV(g,v,t.s_J2),T=v,A=a*X.DotVV(y,y)+h*X.DotVV(S,S)+u*X.DotVV(T,T);if(0!==A){A=1/A;for(var b=m-this.m_as[i];b>o;)b=(m-=2*o)-this.m_as[i];for(;b<-o;)b=(m+=2*o)-this.m_as[i];var E=-this.m_k3*A*b;n.SelfMulAdd(a*E,y),r.SelfMulAdd(h*E,S),s.SelfMulAdd(u*E,T)}}}},e.Draw=function(t){for(var e=new tt(.4,.5,.7),i=0;i<this.m_count-1;++i)t.DrawSegment(this.m_ps[i],this.m_ps[i+1],e)},t}();Mr.s_d=new X,Mr.s_d1=new X,Mr.s_d2=new X,Mr.s_Jd1=new X,Mr.s_Jd2=new X,Mr.s_J1=new X,Mr.s_J2=new X,t.b2AABB=Gt,t.b2Abs=B,t.b2Acos=z,t.b2Alloc=function(){return null},t.b2AreaJoint=Ni,t.b2AreaJointDef=Li,t.b2Asin=H,t.b2Assert=function(t){if(!t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];throw u(Error,i)}},t.b2Atan2=W,t.b2BlockAllocator=function(){},t.b2Body=Ri,t.b2BodyDef=function(){this.type=t.b2BodyType.b2_staticBody,this.position=new X(0,0),this.angle=0,this.linearVelocity=new X(0,0),this.angularVelocity=0,this.linearDamping=0,this.angularDamping=0,this.allowSleep=!0,this.awake=!0,this.fixedRotation=!1,this.bullet=!1,this.active=!0,this.userData=null,this.gravityScale=1},t.b2BroadPhase=Jt,t.b2BuoyancyController=wr,t.b2CalculateParticleIterations=Gn,t.b2ChainAndCircleContact=fn,t.b2ChainAndPolygonContact=dn,t.b2ChainShape=Si,t.b2CircleContact=hn,t.b2CircleShape=gi,t.b2Clamp=O,t.b2ClipSegmentToLine=Ut,t.b2ClipVertex=Nt,t.b2CollideCircles=Ee,t.b2CollideEdgeAndCircle=oi,t.b2CollideEdgeAndPolygon=fi,t.b2CollidePolygonAndCircle=Re,t.b2CollidePolygons=Ze,t.b2Color=tt,t.b2ConstantAccelController=Rr,t.b2ConstantForceController=Ir,t.b2Contact=on,t.b2ContactEdge=an,t.b2ContactFactory=mn,t.b2ContactFeature=Dt,t.b2ContactFilter=vn,t.b2ContactID=Bt,t.b2ContactImpulse=yn,t.b2ContactListener=Sn,t.b2ContactManager=bn,t.b2ContactPositionConstraint=Mn,t.b2ContactRegister=pn,t.b2ContactSolver=Ln,t.b2ContactSolverDef=Pn,t.b2ContactVelocityConstraint=Bn,t.b2Controller=xr,t.b2ControllerEdge=Cr,t.b2Cos=V,t.b2Counter=nt,t.b2DegToRad=function(t){return t*R},t.b2DestructionListener=gn,t.b2Distance=yt,t.b2DistanceInput=ot,t.b2DistanceJoint=Oi,t.b2DistanceJointDef=Pi,t.b2DistanceOutput=ht,t.b2DistanceProxy=st,t.b2Draw=et,t.b2DynamicTree=qt,t.b2EdgeAndCircleContact=cn,t.b2EdgeAndPolygonContact=_n,t.b2EdgeShape=yi,t.b2Filter=Ti,t.b2Fixture=Ci,t.b2FixtureDef=Ai,t.b2FixtureParticleQueryCallback=nr,t.b2FixtureProxy=bi,t.b2Free=function(){},t.b2FrictionJoint=ki,t.b2FrictionJointDef=Fi,t.b2GearJoint=Vi,t.b2GearJointDef=Gi,t.b2GetPointStates=function(e,i,n,r){var s;for(s=0;s<n.pointCount;++s){var a=n.points[s].id.key;e[s]=t.b2PointState.b2_removeState;for(var o=0,h=r.pointCount;o<h;++o)if(r.points[o].id.key===a){e[s]=t.b2PointState.b2_persistState;break}}for(;s<2;++s)e[s]=t.b2PointState.b2_nullState;for(s=0;s<r.pointCount;++s){var u=r.points[s].id.key;i[s]=t.b2PointState.b2_addState;for(var l=0,c=n.pointCount;l<c;++l)if(n.points[l].id.key===u){i[s]=t.b2PointState.b2_persistState;break}}for(;s<2;++s)i[s]=t.b2PointState.b2_nullState},t.b2GravityController=Dr,t.b2GrowableBuffer=ir,t.b2GrowableStack=rt,t.b2InvSqrt=F,t.b2IsPowerOfTwo=function(t){return t>0&&0==(t&t-1)},t.b2IsValid=L,t.b2Island=Fn,t.b2Jacobian=Ii,t.b2Joint=Mi,t.b2JointDef=Bi,t.b2JointEdge=Di,t.b2Log=function(){},t.b2MakeArray=x,t.b2MakeNullArray=function(t){for(var e=new Array(t),i=0;i<t;++i)e[i]=null;return e},t.b2MakeNumberArray=w,t.b2Manifold=Ot,t.b2ManifoldPoint=Mt,t.b2MassData=pi,t.b2Mat22=q,t.b2Mat33=K,t.b2Max=P,t.b2Maybe=e,t.b2Min=M,t.b2MixFriction=rn,t.b2MixRestitution=sn,t.b2MotorJoint=zi,t.b2MotorJointDef=Ui,t.b2MouseJoint=Wi,t.b2MouseJointDef=Hi,t.b2NextPowerOfTwo=function(t){return t|=t>>1&2147483647,t|=t>>2&1073741823,t|=t>>4&268435455,1+((t|=t>>8&16777215)|t>>16&65535)},t.b2Pair=Zt,t.b2PairLessThan=$t,t.b2ParseInt=function(t){return parseInt(t,10)},t.b2ParseUInt=function(t){return Math.abs(parseInt(t,10))},t.b2ParticleBodyContact=sr,t.b2ParticleContact=rr,t.b2ParticleDef=kn,t.b2ParticleGroup=Hn,t.b2ParticleGroupDef=zn,t.b2ParticleHandle=Un,t.b2ParticlePair=ar,t.b2ParticlePairSet=mr,t.b2ParticleSystem=ur,t.b2ParticleSystemDef=hr,t.b2ParticleSystem_CompositeShape=Sr,t.b2ParticleSystem_ConnectionFilter=gr,t.b2ParticleSystem_DestroyParticlesInShapeCallback=vr,t.b2ParticleSystem_FixedSetAllocator=dr,t.b2ParticleSystem_FixtureParticle=function(t,e){this.second=v,this.first=t,this.second=e},t.b2ParticleSystem_FixtureParticleSet=pr,t.b2ParticleSystem_InsideBoundsEnumerator=_r,t.b2ParticleSystem_JoinParticleGroupsFilter=yr,t.b2ParticleSystem_ParticleListNode=fr,t.b2ParticleSystem_ParticlePair=function(t,e){this.first=v,this.second=v,this.first=t,this.second=e},t.b2ParticleSystem_Proxy=cr,t.b2ParticleSystem_ReactiveFilter=Tr,t.b2ParticleSystem_SolveCollisionCallback=br,t.b2ParticleSystem_UpdateBodyContactsCallback=Ar,t.b2ParticleSystem_UserOverridableBuffer=lr,t.b2ParticleTriad=or,t.b2PolygonAndCircleContact=ln,t.b2PolygonContact=un,t.b2PolygonShape=vi,t.b2Position=xn,t.b2PositionSolverManifold=On,t.b2Pow=G,t.b2PrismaticJoint=ji,t.b2PrismaticJointDef=Xi,t.b2Profile=En,t.b2PulleyJoint=qi,t.b2PulleyJointDef=Yi,t.b2QueryCallback=Tn,t.b2RadToDeg=function(t){return t*I},t.b2Random=function(){return 2*Math.random()-1},t.b2RandomRange=function(t,e){return(e-t)*Math.random()+t},t.b2RayCastCallback=An,t.b2RayCastInput=Ft,t.b2RayCastOutput=kt,t.b2RevoluteJoint=Qi,t.b2RevoluteJointDef=Ki,t.b2Rope=Mr,t.b2RopeDef=function(){this.vertices=[],this.count=0,this.masses=[],this.gravity=new X(0,0),this.damping=.1,this.k2=.9,this.k3=.1},t.b2RopeJoint=Ji,t.b2RopeJointDef=Zi,t.b2Rot=Q,t.b2SeparationFunction=ce,t.b2Shape=mi,t.b2ShapeCast=function(t,e){t.iterations=0,t.lambda=1,t.normal.SetZero(),t.point.SetZero();var i=e.proxyA,n=e.proxyB,r=P(i.m_radius,_)+P(n.m_radius,_),s=e.transformA,a=e.transformB,o=e.translationB,h=Tt.Set(0,0),u=0,l=At;l.m_count=0;for(var c=l.m_vertices,f=i.GetSupport(Q.MulTRV(s.q,X.NegV(o,X.s_t1),X.s_t0)),d=Z.MulXV(s,i.GetVertex(f),bt),p=n.GetSupport(Q.MulTRV(a.q,o,X.s_t0)),m=Z.MulXV(a,n.GetVertex(p),Et),g=X.SubVV(d,m,Ct),v=P(_,r-_),y=0;y<20&&B(g.Length()-v)>.004;){t.iterations+=1,f=i.GetSupport(Q.MulTRV(s.q,X.NegV(g,X.s_t1),X.s_t0)),d=Z.MulXV(s,i.GetVertex(f),bt),p=n.GetSupport(Q.MulTRV(a.q,g,X.s_t0)),m=Z.MulXV(a,n.GetVertex(p),Et);var S=X.SubVV(d,m,xt);g.Normalize();var T=X.DotVV(g,S),A=X.DotVV(g,o);if(T-v>u*A){if(A<=0)return!1;if((u=(T-v)/A)>1)return!1;h.Copy(g).SelfNeg(),l.m_count=0}var b=c[l.m_count];switch(b.indexA=p,b.wA.Copy(m).SelfMulAdd(u,o),b.indexB=f,b.wB.Copy(d),b.w.Copy(b.wB).SelfSub(b.wA),b.a=1,l.m_count+=1,l.m_count){case 1:break;case 2:l.Solve2();break;case 3:l.Solve3()}if(3===l.m_count)return!1;l.GetClosestPoint(g),++y}var E=wt,C=Rt;return l.GetWitnessPoints(E,C),g.LengthSquared()>0&&(h.Copy(g).SelfNeg(),h.Normalize()),t.normal.Copy(h),t.lambda=u,t.iterations=y,!0},t.b2ShapeCastInput=function(){this.proxyA=new st,this.proxyB=new st,this.transformA=new Z,this.transformB=new Z,this.translationB=new X},t.b2ShapeCastOutput=function(){this.point=new X,this.normal=new X,this.lambda=0,this.iterations=0},t.b2Simplex=lt,t.b2SimplexCache=at,t.b2SimplexVertex=ut,t.b2Sin=U,t.b2SolverData=Rn,t.b2Sq=N,t.b2Sqrt=k,t.b2StackAllocator=function(){},t.b2Swap=function(t,e){var i=t[0];t[0]=e[0],e[0]=i},t.b2Sweep=$,t.b2TOIInput=he,t.b2TOIOutput=le,t.b2TensorDampingController=Br,t.b2TestOverlapAABB=Vt,t.b2TestOverlapShape=Xt,t.b2TimeOfImpact=Te,t.b2TimeStep=Cn,t.b2Timer=it,t.b2Transform=Z,t.b2TreeNode=Yt,t.b2Vec2=X,t.b2Vec2_zero=j,t.b2Vec3=Y,t.b2Velocity=wn,t.b2VelocityConstraintPoint=Dn,t.b2Version=E,t.b2WeldJoint=tn,t.b2WeldJointDef=$i,t.b2WheelJoint=nn,t.b2WheelJointDef=en,t.b2World=Er,t.b2WorldManifold=Lt,t.b2_180_over_pi=I,t.b2_aabbExtension=h,t.b2_aabbMultiplier=2,t.b2_angularSleepTolerance=b,t.b2_angularSlop=c,t.b2_barrierCollisionTime=2.5,t.b2_baumgarte=.2,t.b2_branch="master",t.b2_commit="fbf51801d80fc389d43dc46524520e89043b6faf",t.b2_epsilon=r,t.b2_epsilon_sq=a,t.b2_gjk_reset=function(){t.b2_gjkCalls=0,t.b2_gjkIters=0,t.b2_gjkMaxIters=0},t.b2_invalidParticleIndex=v,t.b2_linearSleepTolerance=A,t.b2_linearSlop=l,t.b2_maxAngularCorrection=p,t.b2_maxFloat=i,t.b2_maxLinearCorrection=d,t.b2_maxManifoldPoints=2,t.b2_maxParticleForce=.5,t.b2_maxParticleIndex=2147483647,t.b2_maxParticlePressure=S,t.b2_maxPolygonVertices=8,t.b2_maxRotation=m,t.b2_maxRotationSquared=g,t.b2_maxSubSteps=8,t.b2_maxTOIContacts=32,t.b2_maxTranslation=2,t.b2_maxTranslationSquared=4,t.b2_maxTriadDistance=2,t.b2_maxTriadDistanceSquared=4,t.b2_minParticleSystemBufferCapacity=T,t.b2_minParticleWeight=1,t.b2_minPulleyLength=2,t.b2_particleStride=y,t.b2_pi=o,t.b2_pi_over_180=R,t.b2_polygonRadius=_,t.b2_timeToSleep=.5,t.b2_toiBaumgarte=.75,t.b2_toi_reset=function(){t.b2_toiTime=0,t.b2_toiMaxTime=0,t.b2_toiCalls=0,t.b2_toiIters=0,t.b2_toiMaxIters=0,t.b2_toiRootIters=0,t.b2_toiMaxRootIters=0},t.b2_two_pi=D,t.b2_velocityThreshold=1,t.b2_version=C,t.g_blockSolve=In,Object.defineProperty(t,"__esModule",{value:!0})}(e)}));(qbt=Kbt)&&qbt.__esModule&&Object.prototype.hasOwnProperty.call(qbt,"default")&&qbt.default;var Qbt={};for(var Zbt in Kbt)-1===Zbt.indexOf("b2_")&&(Qbt[Zbt.replace("b2","")]=Kbt[Zbt]);var Jbt=Qbt,$bt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._contactFixtures=[],e._BeginContact=null,e._EndContact=null,e._PreSolve=null,e._PostSolve=null,e}s(e,t);var i=e.prototype;return i.setBeginContact=function(t){this._BeginContact=t},i.setEndContact=function(t){this._EndContact=t},i.setPreSolve=function(t){this._PreSolve=t},i.setPostSolve=function(t){this._PostSolve=t},i.BeginContact=function(t){if(this._BeginContact){var e=t.GetFixtureA(),i=t.GetFixtureB(),n=this._contactFixtures;t._shouldReport=!1,-1===n.indexOf(e)&&-1===n.indexOf(i)||(t._shouldReport=!0,this._BeginContact(t))}},i.EndContact=function(t){this._EndContact&&t._shouldReport&&(t._shouldReport=!1,this._EndContact(t))},i.PreSolve=function(t,e){this._PreSolve&&t._shouldReport&&this._PreSolve(t,e)},i.PostSolve=function(t,e){this._PostSolve&&t._shouldReport&&this._PostSolve(t,e)},i.registerContactFixture=function(t){this._contactFixtures.push(t)},i.unregisterContactFixture=function(t){de(this._contactFixtures,t)},e}(Jbt.ContactListener),tEt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._point=new Jbt.Vec2,e._isPoint=!1,e._fixtures=[],e}s(e,t);var i=e.prototype;return i.init=function(t){t?(this._isPoint=!0,this._point.x=t.x,this._point.y=t.y):this._isPoint=!1,this._fixtures.length=0},i.ReportFixture=function(t){return this._isPoint?t.TestPoint(this._point)&&this._fixtures.push(t):this._fixtures.push(t),!0},i.getFixture=function(){return this._fixtures[0]},i.getFixtures=function(){return this._fixtures},e}(Jbt.QueryCallback);function eEt(t,e){var i=e.length;return e[t<0?i- -t%i:t%i]}function iEt(t,e,i){for(var n=[];e<t;)e+=i.length;for(;t<=e;++t)n.push(eEt(t,i));return n}function nEt(t,e,i){if(rEt(t,i)){if(oEt(eEt(t,i),eEt(t-1,i),eEt(e,i))&&hEt(eEt(t,i),eEt(t+1,i),eEt(e,i)))return!1}else if(hEt(eEt(t,i),eEt(t+1,i),eEt(e,i))||oEt(eEt(t,i),eEt(t-1,i),eEt(e,i)))return!1;if(rEt(e,i)){if(oEt(eEt(e,i),eEt(e-1,i),eEt(t,i))&&hEt(eEt(e,i),eEt(e+1,i),eEt(t,i)))return!1}else if(hEt(eEt(e,i),eEt(e+1,i),eEt(t,i))||oEt(eEt(e,i),eEt(e-1,i),eEt(t,i)))return!1;for(var n=0;n<i.length;++n)if((n+1)%i.length!=t&&n!=t&&(n+1)%i.length!=e&&n!=e){var r=new jn;if(fEt(eEt(t,i),eEt(e,i),eEt(n,i),eEt(n+1,i),r))return!1}return!0}function rEt(t,e){return sEt(t,e)}function sEt(t,e,i){if(void 0===i){var n=t,r=e;t=eEt(n-1,r),e=eEt(n,r),void 0===t&&(t=e),void 0===(i=eEt(n+1,r))&&(i=e)}return dEt(t,e,i)<0}function aEt(t,e,i){return dEt(t,e,i)>0}function oEt(t,e,i){return dEt(t,e,i)>=0}function hEt(t,e,i){return dEt(t,e,i)<=0}function uEt(t,e){var i=e.x-t.x,n=e.y-t.y;return i*i+n*n}function lEt(t){cEt(t)||t.reverse()}function cEt(t){return t.length<3||function(t){var e,i=0;for(e=0;e<t.length;e++){var n=(e+1)%t.length;i+=t[e].x*t[n].y,i-=t[e].y*t[n].x}return i/2}(t)>0}function _Et(t,e,i,n){var r,s=new jn,a=e.y-t.y,o=t.x-e.x,h=a*t.x+o*t.y,u=n.y-i.y,l=i.x-n.x,c=u*i.x+l*i.y,_=a*l-u*o;return r=_,0,Math.abs(r-0)<=1e-6||(s.x=(l*h-o*c)/_,s.y=(a*c-u*h)/_),s}function fEt(t,e,i,n,r){if(t==i||t==n||e==i||e==n)return!1;var s=t.x,a=t.y,o=e.x,h=e.y,u=i.x,l=i.y,c=n.x,_=n.y;if(Math.max(s,o)<Math.min(u,c)||Math.max(u,c)<Math.min(s,o))return!1;if(Math.max(a,h)<Math.min(l,_)||Math.max(l,_)<Math.min(a,h))return!1;var f=(c-u)*(a-l)-(_-l)*(s-u),d=(o-s)*(a-l)-(h-a)*(s-u),p=(_-l)*(o-s)-(c-u)*(h-a);return!(Math.abs(p)<1e-6)&&(d/=p,(f/=p)>0&&f<1&&d>0&&d<1&&(r.x=s+f*(o-s),r.y=a+f*(h-a),!0))}function dEt(t,e,i){return t.x*(e.y-i.y)+e.x*(i.y-t.y)+i.x*(t.y-e.y)}var pEt=Object.freeze({__proto__:null,ConvexPartition:function t(e){lEt(e);for(var i,n,r,s,a,o,h=[],u=new jn,l=new jn,c=0,_=0,f=0;f<e.length;++f)if(rEt(f,e)){n=r=1e8;for(var d=0;d<e.length;++d)aEt(eEt(f-1,e),eEt(f,e),eEt(d,e))&&hEt(eEt(f-1,e),eEt(f,e),eEt(d-1,e))&&(s=_Et(eEt(f-1,e),eEt(f,e),eEt(d,e),eEt(d-1,e)),sEt(eEt(f+1,e),eEt(f,e),s)&&(i=uEt(eEt(f,e),s))<n&&(n=i,u=s,c=d)),aEt(eEt(f+1,e),eEt(f,e),eEt(d+1,e))&&hEt(eEt(f+1,e),eEt(f,e),eEt(d,e))&&(s=_Et(eEt(f+1,e),eEt(f,e),eEt(d,e),eEt(d+1,e)),aEt(eEt(f-1,e),eEt(f,e),s)&&(i=uEt(eEt(f,e),s))<r&&(r=i,_=d,l=s));if(c==(_+1)%e.length){var p=u.add(l).multiplyScalar(.5);(a=iEt(f,_,e)).push(p),(o=iEt(c,f,e)).push(p)}else{for(var m=0,g=c;_<c;)_+=e.length;for(var v=c;v<=_;++v)if(nEt(f,v,e)){var y=1/(uEt(eEt(f,e),eEt(v,e))+1);rEt(v,e)?hEt(eEt(v-1,e),eEt(v,e),eEt(f,e))&&oEt(eEt(v+1,e),eEt(v,e),eEt(f,e))?y+=3:y+=2:y+=1,y>m&&(g=v,m=y)}a=iEt(f,g,e),o=iEt(g,f,e)}return(h=h.concat(t(a))).concat(t(o))}h.push(e);for(var S=h.length-1;S>=0;S--)0==h[S].length&&h.splice(S,0);return h},ForceCounterClockWise:lEt,IsCounterClockWise:cEt});function mEt(t){TEt(t);for(var e=!0,i=0,n=t.length;i<n;++i)if(!yEt(t[(i+n-1)%n],t[i],t[(i+1)%n])){e=!1;break}if(e)return[t];var r=[],s=function(t){if(TEt(t),t.length<4)return[t];for(var e=t.length,i=[],n=[],r=0;r<e;++r){var s=new gEt;s.isActive=!0,s.isConvex=!1,s.isEar=!1,s.point=t[r],s.angleCos=0,s.shouldUpdate=!0,s.index=r,i.push(s)}for(var a=0;a<e;++a){var o=i[a];o.prev=i[(a+e-1)%e],o.next=i[(a+1)%e]}i.forEach((function(t){return AEt(t,i)}));for(var h=0;h<e-3;++h){for(var u=void 0,l=0;l<e;++l){var c=i[l];c.isActive&&c.isEar&&(u?c.angleCos>u.angleCos&&(u=c):u=c)}if(!u){for(var _=0;_<e;++_){var f=i[_];if(f.isActive){var d=f.prev.point,p=f.point,m=f.next.point;if(Math.abs(vEt(d,p,m))>1e-5)return console.log("Failed to find ear. There might be self-intersection in the polygon."),null}}break}if(n.push([u.prev.point,u.point,u.next.point]),u.isActive=!1,u.prev.next=u.next,u.next.prev=u.prev,u.prev.shouldUpdate=!0,u.next.shouldUpdate=!0,bEt(u.next),h===e-4)break;for(var g=0;g<e;++g)AEt(i[g],i)}for(var v=0;v<e;++v){var y=i[v];if(y.isActive){y.prev.isActive=!1,y.next.isActive=!1;var S=y.prev.point,T=y.point,A=y.next.point;Math.abs(vEt(S,T,A))>1e-5&&n.push([S,T,A])}}return n}(t);if(!s)return null;for(;s.length;){for(var a=s.splice(0,1)[0],o=0,h=a.length;o<h;++o){for(var u=a[o],l=a[(o+1)%h],c=null,_=0;_<s.length;++_){for(var f=s[_],d=0;d<3;++d){var p=f[d];if(SEt(u,f[(d+1)%3])&&SEt(l,p)){c=f[(d+2)%3];break}}if(c)break}if(c&&!(vEt(a[(o+h-1)%h],u,c)>0||vEt(c,l,a[(o+2)%h])>0)){for(var m=[],g=(o+1)%h;g!==o;g=(g+1)%h)m.push(a[g]);m.push(u,c),a=m,h=m.length,o=-1,s.splice(_,1)}}r.push(a)}return r}var gEt=function(){this.isActive=!1,this.isConvex=!1,this.isEar=!1,this.point=null,this.angleCos=0,this.shouldUpdate=!1,this.index=0,this.prev=null,this.next=null};function vEt(t,e,i){return(e.y-t.y)*(i.x-e.x)-(e.x-t.x)*(i.y-e.y)}function yEt(t,e,i){return vEt(t,e,i)<0}function SEt(t,e){return t.x===e.x&&t.y===e.y}function TEt(t){(function(t){for(var e=0,i=0,n=t.length;i<n;++i){var r=t[i],s=t[(i+1)%n];e+=(s.x-r.x)*(s.y+r.y)}return e>0})(t)&&t.reverse()}function AEt(t,e){if(t.shouldUpdate){t.shouldUpdate=!1;var i=t.prev.point,n=t.point,r=t.next.point;t.isConvex=yEt(i,n,r);var s=i.x-n.x,a=i.y-n.y,o=Math.sqrt(s*s+a*a);s/=o,a/=o;var h=r.x-n.x,u=r.y-n.y,l=Math.sqrt(h*h+u*u);if(h/=l,u/=l,t.angleCos=s*h+a*u,t.isConvex){t.isEar=!0;for(var c=0,_=e.length;c<_;++c){var f=e[c];if(f.isActive&&f!==t){var d=f.point;if(!(SEt(i,d)||SEt(n,d)||SEt(r,d))){var p=vEt(i,d,n),m=vEt(n,d,r),g=vEt(r,d,i);if(p>0&&m>0&&g>0){t.isEar=!1;break}if(0===p&&m>=0&&g>=0&&(vEt(i,f.prev.point,n)>0||vEt(i,f.next.point,n)>0)){t.isEar=!1;break}if(0===m&&p>=0&&g>=0&&(vEt(n,f.prev.point,r)>0||vEt(n,f.next.point,r)>0)){t.isEar=!1;break}if(0===g&&p>=0&&m>=0&&(vEt(r,f.prev.point,i)>0||vEt(r,f.next.point,i)>0)){t.isEar=!1;break}}}}}else t.isEar=!1}}function bEt(t){for(var e=t,i=t;;)if(SEt(e.point,e.next.point)||0===vEt(e.prev.point,e.point,e.next.point)){if(e.prev.next=e.next,e.next.prev=e.prev,e.prev.shouldUpdate=!0,e.next.shouldUpdate=!0,e===e.next)break;i=e.prev,e=e.next}else if((e=e.next)===i)break}var EEt,CEt,xEt,wEt,REt,IEt,DEt,BEt,MEt,PEt,OEt,LEt=Object.freeze({__proto__:null,ConvexPartition:mEt});t("fS",EEt),function(t){t[t.DYNAMIC=1]="DYNAMIC",t[t.STATIC=2]="STATIC",t[t.KINEMATIC=4]="KINEMATIC"}(EEt||t("fS",EEt={})),Ee(EEt),t("fR",CEt),function(t){t[t.X_AXIS=0]="X_AXIS",t[t.Y_AXIS=1]="Y_AXIS",t[t.Z_AXIS=2]="Z_AXIS"}(CEt||t("fR",CEt={})),Ee(CEt),function(t){t[t.X=0]="X",t[t.Y=1]="Y",t[t.Z=2]="Z",t[t.SWING1=3]="SWING1",t[t.SWING2=4]="SWING2",t[t.TWIST=5]="TWIST"}(xEt||(xEt={})),Ee(xEt),function(t){t[t.VERTEX=1]="VERTEX",t[t.LINE=2]="LINE",t[t.TRIANGLE=3]="TRIANGLE",t[t.TETRAHEDRON=4]="TETRAHEDRON"}(wEt||(wEt={})),Ee(wEt),t("fT",REt),function(t){t[t.BOX=0]="BOX",t[t.SPHERE=1]="SPHERE",t[t.CAPSULE=2]="CAPSULE",t[t.CYLINDER=3]="CYLINDER",t[t.CONE=4]="CONE",t[t.MESH=5]="MESH",t[t.PLANE=6]="PLANE",t[t.SIMPLEX=7]="SIMPLEX",t[t.TERRAIN=8]="TERRAIN"}(REt||t("fT",REt={})),Ee(REt),function(t){t[t.POINT_TO_POINT=0]="POINT_TO_POINT",t[t.HINGE=1]="HINGE",t[t.FIXED=2]="FIXED",t[t.CONFIGURABLE=3]="CONFIGURABLE"}(IEt||(IEt={})),Ee(IEt),function(t){t[t.FREE=0]="FREE",t[t.LIMITED=1]="LIMITED",t[t.LOCKED=2]="LOCKED"}(DEt||(DEt={})),Ee(DEt),function(t){t[t.DISABLED=0]="DISABLED",t[t.SERVO=1]="SERVO",t[t.INDUCTION=2]="INDUCTION"}(BEt||(BEt={})),Ee(BEt),function(t){t[t.BOX=0]="BOX",t[t.CAPSULE=1]="CAPSULE"}(MEt||(MEt={})),Ee(MEt),function(t){t[t.DEFAULT=1]="DEFAULT"}(PEt||(PEt={})),Ee(PEt),t("fU",OEt),function(t){t[t.NONE=0]="NONE",t[t.WIRE_FRAME=1]="WIRE_FRAME",t[t.CONSTRAINT=2]="CONSTRAINT",t[t.AABB=4]="AABB"}(OEt||t("fU",OEt={})),Ee(OEt);var NEt=function(t){if(1===t){for(var e=this,i=function(t){var i="_"+(1<<t);e[i]=0,e.updateArray=[],Object.defineProperty(e,1<<t,{get:function(){return this[i]},set:function(e){this[i]!==e&&(this[i]=e,this.updateArray.indexOf(t)<0&&this.updateArray.push(t))}})},n=0;n<32;n++)i(n);this._1=PEt.DEFAULT}else{for(var r=0;r<32;r++)this[""+(1<<r)]=0;this[1]=PEt.DEFAULT}},FEt=null;S.internal.PhysicsGroup2D=Pbt;var kEt,GEt,VEt,UEt,zEt,HEt,WEt,XEt,jEt,YEt,qEt,KEt,QEt,ZEt,JEt,$Et,tCt,eCt,iCt,nCt,rCt,sCt,aCt,oCt,hCt,uCt=t("fc",function(t){function e(){var e,i,n,r,s;(s=t.call(this)||this).velocityIterations=10,s.positionIterations=10,s.collisionMatrix=new NEt,s._enable=!0,s._allowSleep=!0,s._maxSubSteps=1,s._fixedTimeStep=1/60,s._autoSimulation=!0,s._accumulator=0,s._steping=!1,s._gravity=new jn(0,-10*Gbt),s._delayEvents=[];var a=Me.querySettings(De.Category.PHYSICS,"gravity");a&&(jn.copy(s._gravity,a),s._gravity.multiplyScalar(Gbt)),s._allowSleep=null!==(e=Me.querySettings(De.Category.PHYSICS,"allowSleep"))&&void 0!==e?e:s._allowSleep,s._fixedTimeStep=null!==(i=Me.querySettings(De.Category.PHYSICS,"fixedTimeStep"))&&void 0!==i?i:s._fixedTimeStep,s._maxSubSteps=null!==(n=Me.querySettings(De.Category.PHYSICS,"maxSubSteps"))&&void 0!==n?n:s._maxSubSteps,s._autoSimulation=null!==(r=Me.querySettings(De.Category.PHYSICS,"autoSimulation"))&&void 0!==r?r:s._autoSimulation;var o=Me.querySettings(De.Category.PHYSICS,"collisionMatrix");if(o)for(var h in o){var u=parseInt(h),l=1<<parseInt(h);s.collisionMatrix[""+l]=o[u]}var c=Me.querySettings(De.Category.PHYSICS,"collisionGroups");return c&&c instanceof Array&&(c.forEach((function(t){Pbt[t.name]=1<<t.index})),Ee.update(Pbt)),Vbt.physicsWorld=zbt(),s.gravity=s._gravity,s.allowSleep=s._allowSleep,s}s(e,t);var i=e.prototype;return i.postUpdate=function(t){if(this._enable&&this._autoSimulation){ID.emit(wD.EVENT_BEFORE_PHYSICS),this.physicsWorld.syncSceneToPhysics(),this._steping=!0;var e=this._fixedTimeStep,i=this.velocityIterations,n=this.positionIterations;this._accumulator+=t;for(var r=0;r++<this._maxSubSteps&&this._accumulator>e;)this.physicsWorld.step(e,i,n),this._accumulator-=e;for(var s=this._delayEvents,a=0,o=s.length;a<o;a++){var h=s[a];h.func.call(h.target)}s.length=0,this.physicsWorld.syncPhysicsToScene(),this.debugDrawFlags&&this.physicsWorld.drawDebug(),this._steping=!1,ID.emit(wD.EVENT_AFTER_PHYSICS)}},i._callAfterStep=function(t,e){this._steping?this._delayEvents.push({target:t,func:e}):e.call(t)},i.resetAccumulator=function(t){void 0===t&&(t=0),this._accumulator=t},i.step=function(t){this.physicsWorld.step(t,this.velocityIterations,this.positionIterations)},i.raycast=function(t,e,i,n){return void 0===i&&(i=Obt.Closest),void 0===n&&(n=4294967295),this.physicsWorld.raycast(t,e,i,n)},i.testPoint=function(t){return this.physicsWorld.testPoint(t)},i.testAABB=function(t){return this.physicsWorld.testAABB(t)},e.constructAndRegister=function(){ID.registerSystem(e.ID,e.instance,Ml.Priority.LOW)},n(e,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable=t}},{key:"allowSleep",get:function(){return this._allowSleep},set:function(t){this._allowSleep=t,this.physicsWorld.setAllowSleep(t)}},{key:"gravity",get:function(){return this._gravity},set:function(t){this._gravity.set(t),this.physicsWorld.setGravity(new jn(t.x/Gbt,t.y/Gbt))}},{key:"maxSubSteps",get:function(){return this._maxSubSteps},set:function(t){this._maxSubSteps=t}},{key:"fixedTimeStep",get:function(){return this._fixedTimeStep},set:function(t){this._fixedTimeStep=t}},{key:"autoSimulation",get:function(){return this._autoSimulation},set:function(t){this._autoSimulation=t}},{key:"debugDrawFlags",get:function(){return this.physicsWorld.debugDrawFlags},set:function(t){this.physicsWorld.debugDrawFlags=t}},{key:"physicsWorld",get:function(){return Vbt.physicsWorld}},{key:"stepping",get:function(){return this._steping}}],[{key:"PHYSICS_NONE",get:function(){return!Vbt.id}},{key:"PHYSICS_BUILTIN",get:function(){return"builtin"===Vbt.id}},{key:"PHYSICS_BOX2D",get:function(){return"box2d"===Vbt.id}},{key:"PHYSICS_BOX2D_WASM",get:function(){return"box2d-wasm"===Vbt.id}},{key:"PhysicsGroup",get:function(){return Pbt}},{key:"instance",get:function(){return FEt||(FEt=new e),FEt}}]),e}(zs(Ml)));uCt.ID="PHYSICS_2D",ID.once(wD.EVENT_INIT,(function(){uCt.constructAndRegister()})),t("fd",kEt),function(t){t[t.Circles=0]="Circles",t[t.FaceA=1]="FaceA",t[t.FaceB=2]="FaceB"}(kEt||t("fd",kEt={}));var lCt,cCt,_Ct,fCt,dCt,pCt,mCt,gCt,vCt,yCt,SCt,TCt,ACt,bCt,ECt,CCt,xCt,wCt,RCt,ICt,DCt,BCt,MCt,PCt,OCt,LCt,NCt,FCt,kCt,GCt,VCt,UCt,zCt,HCt,WCt,XCt,jCt,YCt,qCt,KCt,QCt,ZCt,JCt,$Ct,txt,ext,ixt,nxt,rxt,sxt,axt,oxt,hxt,uxt,lxt,cxt,_xt,fxt,dxt,pxt,mxt,gxt,vxt,yxt,Sxt,Txt,Axt,bxt,Ext,Cxt,xxt,wxt,Rxt,Ixt,Dxt,Bxt,Mxt,Pxt,Oxt,Lxt,Nxt,Fxt,kxt,Gxt,Vxt,Uxt,zxt,Hxt,Wxt,Xxt,jxt,Yxt,qxt,Kxt,Qxt,Zxt,Jxt,$xt,twt,ewt,iwt,nwt,rwt,swt,awt,owt,hwt,uwt,lwt,cwt,_wt,fwt,dwt,pwt,mwt,gwt,vwt,ywt,Swt,Twt,Awt,bwt,Ewt,Cwt,xwt,wwt,Rwt,Iwt,Dwt,Bwt,Mwt,Pwt,Owt,Lwt,Nwt,Fwt,kwt,Gwt,Vwt,Uwt,zwt=Lo,Hwt=t("fe",(GEt=eo("cc.RigidBody2D"),VEt=zwt(PEt),UEt=zwt(Dbt),zEt=zwt(ri),HEt=zwt(ni),WEt=zwt(ni),XEt=zwt(ni),jEt=zwt(jn),YEt=zwt(ni),qEt=zwt(ri),GEt((m((QEt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).enabledContactListener=ZEt&&ZEt(),e.bullet=JEt&&JEt(),e.awakeOnLoad=$Et&&$Et(),e._body=null,e._group=tCt&&tCt(),e._type=eCt&&eCt(),e._allowSleep=iCt&&iCt(),e._gravityScale=nCt&&nCt(),e._linearDamping=rCt&&rCt(),e._angularDamping=sCt&&sCt(),e._linearVelocity=aCt&&aCt(),e._angularVelocity=oCt&&oCt(),e._fixedRotation=hCt&&hCt(),e}s(e,t);var i=e.prototype;return i.isAwake=function(){return!!this._body&&this._body.isAwake},i.wakeUp=function(){this._body&&this._body.wakeUp()},i.sleep=function(){this._body&&this._body.sleep()},i.getMass=function(){return this._body?this._body.getMass():0},i.applyForce=function(t,e,i){this._body&&this._body.applyForce(t,e,i)},i.applyForceToCenter=function(t,e){this._body&&this._body.applyForceToCenter(t,e)},i.applyTorque=function(t,e){this._body&&this._body.applyTorque(t,e)},i.applyLinearImpulse=function(t,e,i){this._body&&this._body.applyLinearImpulse(t,e,i)},i.applyLinearImpulseToCenter=function(t,e){this._body&&this._body.applyLinearImpulseToCenter(t,e)},i.applyAngularImpulse=function(t,e){this._body&&this._body.applyAngularImpulse(t,e)},i.getLinearVelocityFromWorldPoint=function(t,e){return this._body?this._body.getLinearVelocityFromWorldPoint(t,e):e},i.getLocalVector=function(t,e){return this._body?this._body.getLocalVector(t,e):e},i.getWorldVector=function(t,e){return this._body?this._body.getWorldVector(t,e):e},i.getLocalPoint=function(t,e){return this._body?this._body.getLocalPoint(t,e):e},i.getWorldPoint=function(t,e){return this._body?this._body.getWorldPoint(t,e):e},i.getLocalCenter=function(t){return this._body?this._body.getLocalCenter(t):t},i.getWorldCenter=function(t){return this._body?this._body.getWorldCenter(t):t},i.getInertia=function(){return this._body?this._body.getInertia():0},i.onLoad=function(){this._body="builtin"===Vbt.id?Hbt:new Vbt.wrapper.RigidBody,this._body.initialize(this)},i.onEnable=function(){this._body&&this._body.onEnable()},i.onDisable=function(){this._body&&this._body.onDisable()},i.onDestroy=function(){this._body&&this._body.onDestroy()},n(e,[{key:"group",get:function(){return this._group},set:function(t){this._group=t}},{key:"type",get:function(){return this._type},set:function(t){this._type=t,this._body&&(t===Dbt.Animated?this._body.setType(Dbt.Kinematic):this._body.setType(t))}},{key:"allowSleep",get:function(){return this._allowSleep},set:function(t){this._allowSleep=t,this._body&&this._body.setAllowSleep(t)}},{key:"gravityScale",get:function(){return this._gravityScale},set:function(t){this._gravityScale=t,this._body&&this._body.setGravityScale(t)}},{key:"linearDamping",get:function(){return this._linearDamping},set:function(t){this._linearDamping=t,this._body&&this._body.setLinearDamping(t)}},{key:"angularDamping",get:function(){return this._angularDamping},set:function(t){this._angularDamping=t,this._body&&this._body.setAngularDamping(t)}},{key:"linearVelocity",get:function(){return this._body&&this._body.getLinearVelocity(this._linearVelocity),this._linearVelocity},set:function(t){this._linearVelocity=t,this._body&&this._body.setLinearVelocity(t)}},{key:"angularVelocity",get:function(){return this._body&&(this._angularVelocity=this._body.getAngularVelocity()),this._angularVelocity},set:function(t){this._angularVelocity=t,this._body&&this._body.setAngularVelocity(t)}},{key:"fixedRotation",get:function(){return this._fixedRotation},set:function(t){this._fixedRotation=t,this._body&&this._body.setFixedRotation(t)}},{key:"impl",get:function(){return this._body}}]),e}(mp)).prototype,"group",[VEt],Object.getOwnPropertyDescriptor(QEt.prototype,"group"),QEt.prototype),ZEt=ja(QEt.prototype,"enabledContactListener",[lo],(function(){return!1})),JEt=ja(QEt.prototype,"bullet",[lo],(function(){return!1})),m(QEt.prototype,"type",[UEt],Object.getOwnPropertyDescriptor(QEt.prototype,"type"),QEt.prototype),m(QEt.prototype,"allowSleep",[zEt],Object.getOwnPropertyDescriptor(QEt.prototype,"allowSleep"),QEt.prototype),m(QEt.prototype,"gravityScale",[HEt],Object.getOwnPropertyDescriptor(QEt.prototype,"gravityScale"),QEt.prototype),m(QEt.prototype,"linearDamping",[WEt],Object.getOwnPropertyDescriptor(QEt.prototype,"linearDamping"),QEt.prototype),m(QEt.prototype,"angularDamping",[XEt],Object.getOwnPropertyDescriptor(QEt.prototype,"angularDamping"),QEt.prototype),m(QEt.prototype,"linearVelocity",[jEt],Object.getOwnPropertyDescriptor(QEt.prototype,"linearVelocity"),QEt.prototype),m(QEt.prototype,"angularVelocity",[YEt],Object.getOwnPropertyDescriptor(QEt.prototype,"angularVelocity"),QEt.prototype),m(QEt.prototype,"fixedRotation",[qEt],Object.getOwnPropertyDescriptor(QEt.prototype,"fixedRotation"),QEt.prototype),$Et=ja(QEt.prototype,"awakeOnLoad",[lo],(function(){return!0})),tCt=ja(QEt.prototype,"_group",[lo],(function(){return PEt.DEFAULT})),eCt=ja(QEt.prototype,"_type",[lo],(function(){return Dbt.Dynamic})),iCt=ja(QEt.prototype,"_allowSleep",[lo],(function(){return!0})),nCt=ja(QEt.prototype,"_gravityScale",[lo],(function(){return 1})),rCt=ja(QEt.prototype,"_linearDamping",[lo],(function(){return 0})),sCt=ja(QEt.prototype,"_angularDamping",[lo],(function(){return 0})),aCt=ja(QEt.prototype,"_linearVelocity",[lo],(function(){return new jn})),oCt=ja(QEt.prototype,"_angularVelocity",[lo],(function(){return 0})),hCt=ja(QEt.prototype,"_fixedRotation",[lo],(function(){return!1})),KEt=QEt))||KEt)),Wwt=Lo,Xwt=t("ff",(lCt=eo("cc.Collider2D"),cCt=Wwt(ni),_Ct=Wwt(PEt),fCt=Wwt(ni),dCt=Wwt(ri),pCt=Wwt(ni),mCt=Wwt(ni),gCt=Wwt(jn),lCt((yCt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).editing=!1,e.tag=SCt&&SCt(),e.TYPE=Bbt.None,e._shape=null,e._body=null,e._group=TCt&&TCt(),e._density=ACt&&ACt(),e._sensor=bCt&&bCt(),e._friction=ECt&&ECt(),e._restitution=CCt&&CCt(),e._offset=xCt&&xCt(),e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._shape=function(t){return Wbt.INITED||(Wbt.INITED=!0,Wbt[Bbt.BOX]=function(){return new Vbt.wrapper.BoxShape},Wbt[Bbt.CIRCLE]=function(){return new Vbt.wrapper.CircleShape},Wbt[Bbt.POLYGON]=function(){return new Vbt.wrapper.PolygonShape}),Wbt[t]()}(this.TYPE),this._shape.initialize(this),this._shape.onLoad&&this._shape.onLoad(),this._body=this.getComponent(Hwt)},i.onEnable=function(){this._shape&&this._shape.onEnable()},i.onDisable=function(){this._shape&&this._shape.onDisable&&this._shape.onDisable()},i.onDestroy=function(){this._shape&&this._shape.onDestroy&&this._shape.onDestroy()},i.apply=function(){this._shape&&this._shape.apply&&this._shape.apply()},n(e,[{key:"group",get:function(){return this._group},set:function(t){this._group=t,this._shape&&this._shape.onGroupChanged&&this._shape.onGroupChanged()}},{key:"density",get:function(){return this._density},set:function(t){this._density=t}},{key:"sensor",get:function(){return this._sensor},set:function(t){this._sensor=t}},{key:"friction",get:function(){return this._friction},set:function(t){this._friction=t}},{key:"restitution",get:function(){return this._restitution},set:function(t){this._restitution=t}},{key:"offset",get:function(){return this._offset},set:function(t){this._offset=t}},{key:"body",get:function(){return this._body}},{key:"impl",get:function(){return this._shape}},{key:"worldAABB",get:function(){return this._shape?this._shape.worldAABB:new Jn}}]),e}(zs(mp)),SCt=ja(yCt.prototype,"tag",[cCt,lo],(function(){return 0})),m(yCt.prototype,"group",[_Ct],Object.getOwnPropertyDescriptor(yCt.prototype,"group"),yCt.prototype),m(yCt.prototype,"density",[fCt],Object.getOwnPropertyDescriptor(yCt.prototype,"density"),yCt.prototype),m(yCt.prototype,"sensor",[dCt],Object.getOwnPropertyDescriptor(yCt.prototype,"sensor"),yCt.prototype),m(yCt.prototype,"friction",[pCt],Object.getOwnPropertyDescriptor(yCt.prototype,"friction"),yCt.prototype),m(yCt.prototype,"restitution",[mCt],Object.getOwnPropertyDescriptor(yCt.prototype,"restitution"),yCt.prototype),m(yCt.prototype,"offset",[gCt],Object.getOwnPropertyDescriptor(yCt.prototype,"offset"),yCt.prototype),TCt=ja(yCt.prototype,"_group",[lo],(function(){return PEt.DEFAULT})),ACt=ja(yCt.prototype,"_density",[lo],(function(){return 1})),bCt=ja(yCt.prototype,"_sensor",[lo],(function(){return!1})),ECt=ja(yCt.prototype,"_friction",[lo],(function(){return.2})),CCt=ja(yCt.prototype,"_restitution",[lo],(function(){return 0})),xCt=ja(yCt.prototype,"_offset",[lo],(function(){return new jn})),vCt=yCt))||vCt)),jwt=(t("fg",(wCt=eo("cc.BoxCollider2D"),RCt=Lo(Qn),wCt((DCt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._size=BCt&&BCt(),e.TYPE=Bbt.BOX,e}return s(e,t),n(e,[{key:"size",get:function(){return this._size},set:function(t){this._size=t}},{key:"worldPoints",get:function(){return this._shape?this._shape.worldPoints:[]}}]),e}(Xwt),BCt=ja(DCt.prototype,"_size",[lo],(function(){return new Qn(1,1)})),m(DCt.prototype,"size",[RCt],Object.getOwnPropertyDescriptor(DCt.prototype,"size"),DCt.prototype),ICt=DCt))||ICt)),t("fh",(MCt=eo("cc.CircleCollider2D"),PCt=Lo(ni),MCt((LCt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._radius=NCt&&NCt(),e.TYPE=Bbt.CIRCLE,e}return s(e,t),n(e,[{key:"radius",get:function(){return this._radius},set:function(t){this._radius=t<0?0:t}},{key:"worldPosition",get:function(){return this._shape?this._shape.worldPosition:new jn}},{key:"worldRadius",get:function(){return this._shape?this._shape.worldRadius:0}}]),e}(Xwt),NCt=ja(LCt.prototype,"_radius",[lo],(function(){return 1})),m(LCt.prototype,"radius",[PCt],Object.getOwnPropertyDescriptor(LCt.prototype,"radius"),LCt.prototype),OCt=LCt))||OCt)),t("fi",(FCt=eo("cc.PolygonCollider2D"),kCt=Lo(ni),GCt=Lo([jn]),FCt((UCt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).threshold=zCt&&zCt(),e._points=HCt&&HCt(),e.TYPE=Bbt.POLYGON,e}return s(e,t),n(e,[{key:"points",get:function(){return this._points},set:function(t){this._points=t}},{key:"worldPoints",get:function(){return this._shape?this._shape.worldPoints:[]}}]),e}(Xwt),zCt=ja(UCt.prototype,"threshold",[kCt],(function(){return 1})),HCt=ja(UCt.prototype,"_points",[lo],(function(){return[new jn(-1,-1),new jn(1,-1),new jn(1,1),new jn(-1,1)]})),m(UCt.prototype,"points",[GCt],Object.getOwnPropertyDescriptor(UCt.prototype,"points"),UCt.prototype),VCt=UCt))||VCt)),Lo),Ywt=t("fj",(WCt=eo("cc.Joint2D"),XCt=jwt(Hwt),WCt((YCt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).anchor=qCt&&qCt(),e.connectedAnchor=KCt&&KCt(),e.collideConnected=QCt&&QCt(),e.connectedBody=ZCt&&ZCt(),e._body=null,e._joint=null,e.TYPE=Mbt.None,e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._joint=function(t){return function(){if(!Xbt.INITED){Xbt.INITED=!0;var t="builtin"===Vbt.id;Xbt[Mbt.SPRING]=function(){return t?jbt:new Vbt.wrapper.SpringJoint},Xbt[Mbt.DISTANCE]=function(){return t?jbt:new Vbt.wrapper.DistanceJoint},Xbt[Mbt.FIXED]=function(){return t?jbt:new Vbt.wrapper.FixedJoint},Xbt[Mbt.MOUSE]=function(){return t?jbt:new Vbt.wrapper.MouseJoint},Xbt[Mbt.RELATIVE]=function(){return t?jbt:new Vbt.wrapper.RelativeJoint},Xbt[Mbt.SLIDER]=function(){return t?jbt:new Vbt.wrapper.SliderJoint},Xbt[Mbt.WHEEL]=function(){return t?jbt:new Vbt.wrapper.WheelJoint},Xbt[Mbt.HINGE]=function(){return t?jbt:new Vbt.wrapper.HingeJoint}}}(),Xbt[t]()}(this.TYPE),this._joint.initialize(this),this._body=this.getComponent(Hwt)},i.onEnable=function(){this._joint&&this._joint.onEnable&&this._joint.onEnable()},i.onDisable=function(){this._joint&&this._joint.onDisable&&this._joint.onDisable()},i.start=function(){this._joint&&this._joint.start&&this._joint.start()},i.onDestroy=function(){this._joint&&this._joint.onDestroy&&this._joint.onDestroy()},i.apply=function(){this._joint&&this._joint.apply&&this._joint.apply()},n(e,[{key:"body",get:function(){return this._body}},{key:"impl",get:function(){return this._joint}}]),e}(mp),qCt=ja(YCt.prototype,"anchor",[lo],(function(){return new jn})),KCt=ja(YCt.prototype,"connectedAnchor",[lo],(function(){return new jn})),QCt=ja(YCt.prototype,"collideConnected",[lo],(function(){return!1})),ZCt=ja(YCt.prototype,"connectedBody",[XCt,lo],(function(){return null})),jCt=YCt))||jCt)),qwt=(t("fk",(JCt=eo("cc.DistanceJoint2D"),$Ct=Lo(ni),txt=Lo(ri),JCt((m((ixt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).TYPE=Mbt.DISTANCE,e._maxLength=nxt&&nxt(),e._autoCalcDistance=rxt&&rxt(),e}return s(e,t),n(e,[{key:"maxLength",get:function(){return this._autoCalcDistance?this.connectedBody?gn.distance(this.node.worldPosition,this.connectedBody.node.worldPosition):gn.len(this.node.worldPosition):this._maxLength},set:function(t){this._maxLength=t,this._joint&&this._joint.setMaxLength(t)}},{key:"autoCalcDistance",get:function(){return this._autoCalcDistance},set:function(t){this._autoCalcDistance=t}}]),e}(Ywt)).prototype,"maxLength",[$Ct],Object.getOwnPropertyDescriptor(ixt.prototype,"maxLength"),ixt.prototype),m(ixt.prototype,"autoCalcDistance",[txt],Object.getOwnPropertyDescriptor(ixt.prototype,"autoCalcDistance"),ixt.prototype),nxt=ja(ixt.prototype,"_maxLength",[lo],(function(){return 5})),rxt=ja(ixt.prototype,"_autoCalcDistance",[lo],(function(){return!0})),ext=ixt))||ext)),t("fl",(sxt=eo("cc.SpringJoint2D"),axt=Lo(ni),oxt=Lo(ni),hxt=Lo(ni),uxt=Lo(ri),sxt((m((cxt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).TYPE=Mbt.SPRING,e._frequency=_xt&&_xt(),e._dampingRatio=fxt&&fxt(),e._distance=dxt&&dxt(),e._autoCalcDistance=pxt&&pxt(),e}return s(e,t),n(e,[{key:"frequency",get:function(){return this._frequency},set:function(t){this._frequency=t,this._joint&&this._joint.setFrequency(t)}},{key:"dampingRatio",get:function(){return this._dampingRatio},set:function(t){this._dampingRatio=t,this._joint&&this._joint.setDampingRatio(t)}},{key:"distance",get:function(){return this._autoCalcDistance?this.connectedBody?gn.distance(this.node.worldPosition,this.connectedBody.node.worldPosition):gn.len(this.node.worldPosition):this._distance},set:function(t){this._distance=t,this._joint&&this._joint.setDistance(t)}},{key:"autoCalcDistance",get:function(){return this._autoCalcDistance},set:function(t){this._autoCalcDistance=t}}]),e}(Ywt)).prototype,"frequency",[axt],Object.getOwnPropertyDescriptor(cxt.prototype,"frequency"),cxt.prototype),m(cxt.prototype,"dampingRatio",[oxt],Object.getOwnPropertyDescriptor(cxt.prototype,"dampingRatio"),cxt.prototype),m(cxt.prototype,"distance",[hxt],Object.getOwnPropertyDescriptor(cxt.prototype,"distance"),cxt.prototype),m(cxt.prototype,"autoCalcDistance",[uxt],Object.getOwnPropertyDescriptor(cxt.prototype,"autoCalcDistance"),cxt.prototype),_xt=ja(cxt.prototype,"_frequency",[lo],(function(){return 5})),fxt=ja(cxt.prototype,"_dampingRatio",[lo],(function(){return.7})),dxt=ja(cxt.prototype,"_distance",[lo],(function(){return 10})),pxt=ja(cxt.prototype,"_autoCalcDistance",[lo],(function(){return!0})),lxt=cxt))||lxt)),t("fm",(mxt=eo("cc.MouseJoint2D"),gxt=Lo(ni),vxt=Lo(ni),yxt=Lo(ni),mxt((m((Txt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).TYPE=Mbt.MOUSE,e._maxForce=Axt&&Axt(),e._dampingRatio=bxt&&bxt(),e._frequency=Ext&&Ext(),e._target=new jn,e}return s(e,t),e.prototype.update=function(t){this._joint.update(t)},n(e,[{key:"target",get:function(){return this._target},set:function(t){this._target=t,this._joint&&this._joint.setTarget(t)}},{key:"frequency",get:function(){return this._frequency},set:function(t){this._frequency=t,this._joint&&this._joint.setFrequency(t)}},{key:"dampingRatio",get:function(){return this._dampingRatio},set:function(t){this._dampingRatio=t,this._joint&&this._joint.setDampingRatio(t)}},{key:"maxForce",get:function(){return this._maxForce},set:function(t){this._maxForce=t,this._joint&&this._joint.setMaxForce(t)}}]),e}(Ywt)).prototype,"frequency",[gxt],Object.getOwnPropertyDescriptor(Txt.prototype,"frequency"),Txt.prototype),m(Txt.prototype,"dampingRatio",[vxt],Object.getOwnPropertyDescriptor(Txt.prototype,"dampingRatio"),Txt.prototype),m(Txt.prototype,"maxForce",[yxt],Object.getOwnPropertyDescriptor(Txt.prototype,"maxForce"),Txt.prototype),Axt=ja(Txt.prototype,"_maxForce",[lo],(function(){return 1e3})),bxt=ja(Txt.prototype,"_dampingRatio",[lo],(function(){return.7})),Ext=ja(Txt.prototype,"_frequency",[lo],(function(){return 5})),Sxt=Txt))||Sxt)),new gn),Kwt=new gn,Qwt=(t("fn",(Cxt=eo("cc.RelativeJoint2D"),xxt=Lo(ni),wxt=Lo(ni),Rxt=Lo(ni),Ixt=Lo(jn),Dxt=Lo(ni),Bxt=Lo(ri),Cxt((m((Pxt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).TYPE=Mbt.RELATIVE,e._maxForce=Oxt&&Oxt(),e._maxTorque=Lxt&&Lxt(),e._correctionFactor=Nxt&&Nxt(),e._angularOffset=Fxt&&Fxt(),e._linearOffset=kxt&&kxt(),e._autoCalcOffset=Gxt&&Gxt(),e}return s(e,t),n(e,[{key:"maxForce",get:function(){return this._maxForce},set:function(t){this._maxForce=t,this._joint&&this._joint.setMaxForce(t)}},{key:"maxTorque",get:function(){return this._maxTorque},set:function(t){this._maxTorque=t,this._joint&&this._joint.setMaxTorque(t)}},{key:"correctionFactor",get:function(){return this._correctionFactor},set:function(t){this._correctionFactor=t,this._joint&&this._joint.setCorrectionFactor(t)}},{key:"linearOffset",get:function(){return this._autoCalcOffset?this.connectedBody?jn.subtract(this._linearOffset,this.connectedBody.node.worldPosition,this.node.worldPosition):jn.subtract(this._linearOffset,new jn(0,0),this.node.worldPosition):this._linearOffset},set:function(t){this._linearOffset.set(t),this._joint&&this._joint.setLinearOffset(t)}},{key:"angularOffset",get:function(){return this._autoCalcOffset&&(Bn.toEuler(qwt,this.node.worldRotation),this.connectedBody?Bn.toEuler(Kwt,this.connectedBody.node.worldRotation):Bn.toEuler(Kwt,new Bn),this._angularOffset=Kwt.z-qwt.z),this._angularOffset},set:function(t){this._angularOffset=t,this._joint&&this._joint.setAngularOffset(t)}},{key:"autoCalcOffset",get:function(){return this._autoCalcOffset},set:function(t){this._autoCalcOffset=t}}]),e}(Ywt)).prototype,"maxForce",[xxt],Object.getOwnPropertyDescriptor(Pxt.prototype,"maxForce"),Pxt.prototype),m(Pxt.prototype,"maxTorque",[wxt],Object.getOwnPropertyDescriptor(Pxt.prototype,"maxTorque"),Pxt.prototype),m(Pxt.prototype,"correctionFactor",[Rxt],Object.getOwnPropertyDescriptor(Pxt.prototype,"correctionFactor"),Pxt.prototype),m(Pxt.prototype,"linearOffset",[Ixt],Object.getOwnPropertyDescriptor(Pxt.prototype,"linearOffset"),Pxt.prototype),m(Pxt.prototype,"angularOffset",[Dxt],Object.getOwnPropertyDescriptor(Pxt.prototype,"angularOffset"),Pxt.prototype),m(Pxt.prototype,"autoCalcOffset",[Bxt],Object.getOwnPropertyDescriptor(Pxt.prototype,"autoCalcOffset"),Pxt.prototype),Oxt=ja(Pxt.prototype,"_maxForce",[lo],(function(){return 5})),Lxt=ja(Pxt.prototype,"_maxTorque",[lo],(function(){return.7})),Nxt=ja(Pxt.prototype,"_correctionFactor",[lo],(function(){return.3})),Fxt=ja(Pxt.prototype,"_angularOffset",[lo],(function(){return 0})),kxt=ja(Pxt.prototype,"_linearOffset",[lo],(function(){return new jn})),Gxt=ja(Pxt.prototype,"_autoCalcOffset",[lo],(function(){return!0})),Mxt=Pxt))||Mxt)),new jn);t("fo",(Vxt=eo("cc.SliderJoint2D"),Uxt=Lo(ni),zxt=Lo(ri),Hxt=Lo(ri),Wxt=Lo(ni),Xxt=Lo(ni),jxt=Lo(ri),Yxt=Lo(ni),qxt=Lo(ni),Vxt((m((Qxt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).TYPE=Mbt.SLIDER,e._angle=Zxt&&Zxt(),e._autoCalcAngle=Jxt&&Jxt(),e._enableMotor=$xt&&$xt(),e._maxMotorForce=twt&&twt(),e._motorSpeed=ewt&&ewt(),e._enableLimit=iwt&&iwt(),e._lowerLimit=nwt&&nwt(),e._upperLimit=rwt&&rwt(),e}return s(e,t),n(e,[{key:"angle",get:function(){return this._autoCalcAngle&&(this.connectedBody?jn.subtract(Qwt,this.connectedBody.node.worldPosition,this.node.worldPosition):jn.subtract(Qwt,new jn(0,0),this.node.worldPosition),this._angle=Ui(Math.atan2(Qwt.y,Qwt.x))),this._angle},set:function(t){this._angle=t}},{key:"autoCalcAngle",get:function(){return this._autoCalcAngle},set:function(t){this._autoCalcAngle=t}},{key:"enableMotor",get:function(){return this._enableMotor},set:function(t){this._enableMotor=t}},{key:"maxMotorForce",get:function(){return this._maxMotorForce},set:function(t){this._maxMotorForce=t,this._joint&&this._joint.setMaxMotorForce(t)}},{key:"motorSpeed",get:function(){return this._motorSpeed},set:function(t){this._motorSpeed=t,this._joint&&this._joint.setMotorSpeed(t)}},{key:"enableLimit",get:function(){return this._enableLimit},set:function(t){this._enableLimit=t}},{key:"lowerLimit",get:function(){return this._lowerLimit},set:function(t){this._lowerLimit=t,this._joint&&this._joint.setLowerLimit(t)}},{key:"upperLimit",get:function(){return this._upperLimit},set:function(t){this._upperLimit=t,this._joint&&this._joint.setUpperLimit(t)}}]),e}(Ywt)).prototype,"angle",[Uxt],Object.getOwnPropertyDescriptor(Qxt.prototype,"angle"),Qxt.prototype),m(Qxt.prototype,"autoCalcAngle",[zxt],Object.getOwnPropertyDescriptor(Qxt.prototype,"autoCalcAngle"),Qxt.prototype),m(Qxt.prototype,"enableMotor",[Hxt],Object.getOwnPropertyDescriptor(Qxt.prototype,"enableMotor"),Qxt.prototype),m(Qxt.prototype,"maxMotorForce",[Wxt],Object.getOwnPropertyDescriptor(Qxt.prototype,"maxMotorForce"),Qxt.prototype),m(Qxt.prototype,"motorSpeed",[Xxt],Object.getOwnPropertyDescriptor(Qxt.prototype,"motorSpeed"),Qxt.prototype),m(Qxt.prototype,"enableLimit",[jxt],Object.getOwnPropertyDescriptor(Qxt.prototype,"enableLimit"),Qxt.prototype),m(Qxt.prototype,"lowerLimit",[Yxt],Object.getOwnPropertyDescriptor(Qxt.prototype,"lowerLimit"),Qxt.prototype),m(Qxt.prototype,"upperLimit",[qxt],Object.getOwnPropertyDescriptor(Qxt.prototype,"upperLimit"),Qxt.prototype),Zxt=ja(Qxt.prototype,"_angle",[lo],(function(){return 0})),Jxt=ja(Qxt.prototype,"_autoCalcAngle",[lo],(function(){return!0})),$xt=ja(Qxt.prototype,"_enableMotor",[lo],(function(){return!1})),twt=ja(Qxt.prototype,"_maxMotorForce",[lo],(function(){return 1e3})),ewt=ja(Qxt.prototype,"_motorSpeed",[lo],(function(){return 1e3})),iwt=ja(Qxt.prototype,"_enableLimit",[lo],(function(){return!1})),nwt=ja(Qxt.prototype,"_lowerLimit",[lo],(function(){return 0})),rwt=ja(Qxt.prototype,"_upperLimit",[lo],(function(){return 0})),Kxt=Qxt))||Kxt)),t("fp",(swt=eo("cc.FixedJoint2D"),awt=Lo(ni),owt=Lo(ni),swt((m((uwt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).TYPE=Mbt.FIXED,e._frequency=lwt&&lwt(),e._dampingRatio=cwt&&cwt(),e}return s(e,t),n(e,[{key:"frequency",get:function(){return this._frequency},set:function(t){this._frequency=t,this._joint&&this._joint.setFrequency(t)}},{key:"dampingRatio",get:function(){return this._dampingRatio},set:function(t){this._dampingRatio=t,this._joint&&this._joint.setDampingRatio(t)}}]),e}(Ywt)).prototype,"frequency",[awt],Object.getOwnPropertyDescriptor(uwt.prototype,"frequency"),uwt.prototype),m(uwt.prototype,"dampingRatio",[owt],Object.getOwnPropertyDescriptor(uwt.prototype,"dampingRatio"),uwt.prototype),lwt=ja(uwt.prototype,"_frequency",[lo],(function(){return.7})),cwt=ja(uwt.prototype,"_dampingRatio",[lo],(function(){return.5})),hwt=uwt))||hwt)),t("fq",(_wt=eo("cc.WheelJoint2D"),fwt=Lo(ni),dwt=Lo(ri),pwt=Lo(ni),mwt=Lo(ni),gwt=Lo(ni),vwt=Lo(ni),_wt((m((Swt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).TYPE=Mbt.WHEEL,e._angle=Twt&&Twt(),e._enableMotor=Awt&&Awt(),e._maxMotorTorque=bwt&&bwt(),e._motorSpeed=Ewt&&Ewt(),e._frequency=Cwt&&Cwt(),e._dampingRatio=xwt&&xwt(),e}return s(e,t),n(e,[{key:"angle",get:function(){return this._angle},set:function(t){this._angle=t}},{key:"enableMotor",get:function(){return this._enableMotor},set:function(t){this._enableMotor=t,this._joint&&this._joint.enableMotor(t)}},{key:"maxMotorTorque",get:function(){return this._maxMotorTorque},set:function(t){this._maxMotorTorque=t,this._joint&&this._joint.setMaxMotorTorque(t)}},{key:"motorSpeed",get:function(){return this._motorSpeed},set:function(t){this._motorSpeed=t,this._joint&&this._joint.setMotorSpeed(t)}},{key:"frequency",get:function(){return this._frequency},set:function(t){this._frequency=t,this._joint&&this._joint.setFrequency(t)}},{key:"dampingRatio",get:function(){return this._dampingRatio},set:function(t){this._dampingRatio=t,this._joint&&this._joint.setDampingRatio(t)}}]),e}(Ywt)).prototype,"angle",[fwt],Object.getOwnPropertyDescriptor(Swt.prototype,"angle"),Swt.prototype),m(Swt.prototype,"enableMotor",[dwt],Object.getOwnPropertyDescriptor(Swt.prototype,"enableMotor"),Swt.prototype),m(Swt.prototype,"maxMotorTorque",[pwt],Object.getOwnPropertyDescriptor(Swt.prototype,"maxMotorTorque"),Swt.prototype),m(Swt.prototype,"motorSpeed",[mwt],Object.getOwnPropertyDescriptor(Swt.prototype,"motorSpeed"),Swt.prototype),m(Swt.prototype,"frequency",[gwt],Object.getOwnPropertyDescriptor(Swt.prototype,"frequency"),Swt.prototype),m(Swt.prototype,"dampingRatio",[vwt],Object.getOwnPropertyDescriptor(Swt.prototype,"dampingRatio"),Swt.prototype),Twt=ja(Swt.prototype,"_angle",[lo],(function(){return 90})),Awt=ja(Swt.prototype,"_enableMotor",[lo],(function(){return!1})),bwt=ja(Swt.prototype,"_maxMotorTorque",[lo],(function(){return 1e3})),Ewt=ja(Swt.prototype,"_motorSpeed",[lo],(function(){return 0})),Cwt=ja(Swt.prototype,"_frequency",[lo],(function(){return 5})),xwt=ja(Swt.prototype,"_dampingRatio",[lo],(function(){return.7})),ywt=Swt))||ywt)),t("fr",(wwt=eo("cc.HingeJoint2D"),Rwt=Lo(ri),Iwt=Lo(ni),Dwt=Lo(ni),Bwt=Lo(ri),Mwt=Lo(ni),Pwt=Lo(ni),wwt((m((Lwt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).TYPE=Mbt.HINGE,e._enableLimit=Nwt&&Nwt(),e._lowerAngle=Fwt&&Fwt(),e._upperAngle=kwt&&kwt(),e._enableMotor=Gwt&&Gwt(),e._maxMotorTorque=Vwt&&Vwt(),e._motorSpeed=Uwt&&Uwt(),e}return s(e,t),n(e,[{key:"enableLimit",get:function(){return this._enableLimit},set:function(t){this._enableLimit=t}},{key:"lowerAngle",get:function(){return this._lowerAngle},set:function(t){this._lowerAngle=t,this._joint&&this._joint.setLowerAngle(t)}},{key:"upperAngle",get:function(){return this._upperAngle},set:function(t){this._upperAngle=t,this._joint&&this._joint.setUpperAngle(t)}},{key:"enableMotor",get:function(){return this._enableMotor},set:function(t){this._enableMotor=t,this._joint&&this._joint.enableMotor(t)}},{key:"maxMotorTorque",get:function(){return this._maxMotorTorque},set:function(t){this._maxMotorTorque=t,this._joint&&this._joint.setMaxMotorTorque(t)}},{key:"motorSpeed",get:function(){return this._motorSpeed},set:function(t){this._motorSpeed=t,this._joint&&this._joint.setMotorSpeed(t)}}]),e}(Ywt)).prototype,"enableLimit",[Rwt],Object.getOwnPropertyDescriptor(Lwt.prototype,"enableLimit"),Lwt.prototype),m(Lwt.prototype,"lowerAngle",[Iwt],Object.getOwnPropertyDescriptor(Lwt.prototype,"lowerAngle"),Lwt.prototype),m(Lwt.prototype,"upperAngle",[Dwt],Object.getOwnPropertyDescriptor(Lwt.prototype,"upperAngle"),Lwt.prototype),m(Lwt.prototype,"enableMotor",[Bwt],Object.getOwnPropertyDescriptor(Lwt.prototype,"enableMotor"),Lwt.prototype),m(Lwt.prototype,"maxMotorTorque",[Mwt],Object.getOwnPropertyDescriptor(Lwt.prototype,"maxMotorTorque"),Lwt.prototype),m(Lwt.prototype,"motorSpeed",[Pwt],Object.getOwnPropertyDescriptor(Lwt.prototype,"motorSpeed"),Lwt.prototype),Nwt=ja(Lwt.prototype,"_enableLimit",[lo],(function(){return!1})),Fwt=ja(Lwt.prototype,"_lowerAngle",[lo],(function(){return 0})),kwt=ja(Lwt.prototype,"_upperAngle",[lo],(function(){return 0})),Gwt=ja(Lwt.prototype,"_enableMotor",[lo],(function(){return!1})),Vwt=ja(Lwt.prototype,"_maxMotorTorque",[lo],(function(){return 1e3})),Uwt=ja(Lwt.prototype,"_motorSpeed",[lo],(function(){return 0})),Owt=Lwt))||Owt)),t("f2",{PolygonSeparator:pEt,PolygonPartition:LEt}),S.internal.physics2d={selector:Vbt};var Zwt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._type=Obt.Closest,e._fixtures=[],e._points=[],e._normals=[],e._fractions=[],e._mask=4294967295,e}s(e,t);var i=e.prototype;return i.init=function(t,e){this._type=t,this._mask=e,this._fixtures.length=0,this._points.length=0,this._normals.length=0,this._fractions.length=0},i.ReportFixture=function(t,e,i,n){return 0==(t.GetFilterData().categoryBits&this._mask)?0:this._type===Obt.Closest?(this._fixtures[0]=t,this._points[0]=e,this._normals[0]=i,this._fractions[0]=n,n):(this._fixtures.push(t),this._points.push(new jn(e.x,e.y)),this._normals.push(new jn(i.x,i.y)),this._fractions.push(n),this._type===Obt.Any?0:this._type>=Obt.All?1:n)},i.getFixtures=function(){return this._fixtures},i.getPoints=function(){return this._points},i.getNormals=function(){return this._normals},i.getFractions=function(){return this._fractions},e}(Jbt.RayCastCallback),Jwt=[],$wt=[new jn,new jn],tRt=new Jbt.WorldManifold,eRt={points:[],separations:[],normal:new jn},iRt=function(){this.localPoint=new jn,this.normalImpulse=0,this.tangentImpulse=0},nRt=[new iRt,new iRt],rRt={type:0,localPoint:new jn,localNormal:new jn,points:[]},sRt={normalImpulses:[],tangentImpulses:[]},aRt=function(){function t(){this.colliderA=null,this.colliderB=null,this.disabled=!1,this.disabledOnce=!1,this._impulse=null,this._inverted=!1,this._b2contact=null}t.get=function(e){var i=Jwt.pop();return i||(i=new t),i.init(e),i},t.put=function(t){var e=t.m_userData;e&&(Jwt.push(e),e.reset())};var e=t.prototype;return e._setImpulse=function(t){this._impulse=t},e.init=function(t){this.colliderA=t.m_fixtureA.m_userData.collider,this.colliderB=t.m_fixtureB.m_userData.collider,this.disabled=!1,this.disabledOnce=!1,this._impulse=null,this._inverted=!1,this._b2contact=t,t.m_userData=this},e.reset=function(){this.setTangentSpeed(0),this.resetFriction(),this.resetRestitution(),this.colliderA=null,this.colliderB=null,this.disabled=!1,this._impulse=null,this._b2contact.m_userData=null,this._b2contact=null},e.getWorldManifold=function(){var t=eRt.points,e=eRt.separations,i=eRt.normal;this._b2contact.GetWorldManifold(tRt);var n=tRt.points,r=tRt.separations,s=this._b2contact.GetManifold().pointCount;t.length=e.length=s;for(var a=0;a<s;a++){var o=$wt[a];o.x=n[a].x*Gbt,o.y=n[a].y*Gbt,t[a]=o,e[a]=r[a]*Gbt}return i.x=tRt.normal.x,i.y=tRt.normal.y,this._inverted&&(i.x*=-1,i.y*=-1),eRt},e.getManifold=function(){for(var t=rRt.points,e=rRt.localNormal,i=rRt.localPoint,n=this._b2contact.GetManifold(),r=n.points,s=t.length=n.pointCount,a=0;a<s;a++){var o=nRt[a],h=r[a];o.localPoint.x=h.localPoint.x*Gbt,o.localPoint.y=h.localPoint.y*Gbt,o.normalImpulse=h.normalImpulse*Gbt,o.tangentImpulse=h.tangentImpulse,t[a]=o}return i.x=n.localPoint.x*Gbt,i.y=n.localPoint.y*Gbt,e.x=n.localNormal.x,e.y=n.localNormal.y,rRt.type=n.type,this._inverted&&(e.x*=-1,e.y*=-1),rRt},e.getImpulse=function(){var t=this._impulse;if(!t)return null;for(var e=sRt.normalImpulses,i=sRt.tangentImpulses,n=t.count,r=0;r<n;r++)e[r]=t.normalImpulses[r]*Gbt,i[r]=t.tangentImpulses[r];return i.length=e.length=n,sRt},e.emit=function(t){var e,i;switch(t){case kbt.BEGIN_CONTACT:case kbt.END_CONTACT:case kbt.PRE_SOLVE:case kbt.POST_SOLVE:}var n=this.colliderA,r=this.colliderB,s=null==n||null===(e=n.body)||void 0===e?void 0:e.enabledContactListener,a=null==r||null===(i=r.body)||void 0===i?void 0:i.enabledContactListener;s&&n.emit(t,n,r,this),a&&r.emit(t,r,n,this),(s||a)&&uCt.instance.emit(t,n,r,this),(this.disabled||this.disabledOnce)&&(this.setEnabled(!1),this.disabledOnce=!1)},e.setEnabled=function(t){this._b2contact.SetEnabled(t)},e.isTouching=function(){return this._b2contact.IsTouching()},e.setTangentSpeed=function(t){this._b2contact.SetTangentSpeed(t)},e.getTangentSpeed=function(){return this._b2contact.GetTangentSpeed()},e.setFriction=function(t){this._b2contact.SetFriction(t)},e.getFriction=function(){return this._b2contact.GetFriction()},e.resetFriction=function(){return this._b2contact.ResetFriction()},e.setRestitution=function(t){this._b2contact.SetRestitution(t)},e.getRestitution=function(){return this._b2contact.GetRestitution()},e.resetRestitution=function(){return this._b2contact.ResetRestitution()},t}(),oRt=new Jbt.Vec2,hRt=new En,uRt=En.GREEN,lRt=En.RED,cRt=function(t){function e(e){var i;return(i=t.call(this)||this)._drawer=null,i._xf=new Jbt.Transform,i._dxf=new Jbt.Transform,i._drawer=e,i}s(e,t);var i=e.prototype;return i._DrawPolygon=function(t,e){for(var i=this._drawer,n=0;n<e;n++){Jbt.Transform.MulXV(this._xf,t[n],oRt);var r=oRt.x*Gbt,s=oRt.y*Gbt;0===n?i.moveTo(r,s):i.lineTo(r,s)}i.close()},i.DrawPolygon=function(t,e,i){this._applyStrokeColor(i),this._DrawPolygon(t,e),this._drawer.stroke()},i.DrawSolidPolygon=function(t,e,i){this._applyFillColor(i),this._DrawPolygon(t,e),this._drawer.fill(),this._drawer.stroke()},i._DrawCircle=function(t,e){Jbt.Transform.MulXV(this._xf,t,oRt),this._drawer.circle(oRt.x*Gbt,oRt.y*Gbt,e*Gbt)},i.DrawCircle=function(t,e,i){this._applyStrokeColor(i),this._DrawCircle(t,e),this._drawer.stroke()},i.DrawSolidCircle=function(t,e,i,n){this._applyFillColor(n),this._DrawCircle(t,e),this._drawer.fill()},i.DrawSegment=function(t,e,i){var n=this._drawer;if(t.x===e.x&&t.y===e.y)return this._applyFillColor(i),this._DrawCircle(t,2/Gbt),void n.fill();this._applyStrokeColor(i),Jbt.Transform.MulXV(this._xf,t,oRt),n.moveTo(oRt.x*Gbt,oRt.y*Gbt),Jbt.Transform.MulXV(this._xf,e,oRt),n.lineTo(oRt.x*Gbt,oRt.y*Gbt),n.stroke()},i.DrawTransform=function(t){var e=this._drawer;e.strokeColor=lRt,oRt.x=oRt.y=0,Jbt.Transform.MulXV(t,oRt,oRt),e.moveTo(oRt.x*Gbt,oRt.y*Gbt),oRt.x=1,oRt.y=0,Jbt.Transform.MulXV(t,oRt,oRt),e.lineTo(oRt.x*Gbt,oRt.y*Gbt),e.stroke(),e.strokeColor=uRt,oRt.x=oRt.y=0,Jbt.Transform.MulXV(t,oRt,oRt),e.moveTo(oRt.x*Gbt,oRt.y*Gbt),oRt.x=0,oRt.y=1,Jbt.Transform.MulXV(t,oRt,oRt),e.lineTo(oRt.x*Gbt,oRt.y*Gbt),e.stroke()},i.DrawPoint=function(){},i.DrawParticles=function(){},i._applyStrokeColor=function(t){this._drawer.strokeColor=hRt.set(255*t.r,255*t.g,255*t.b,150)},i._applyFillColor=function(t){this._drawer.fillColor=hRt.set(255*t.r,255*t.g,255*t.b,150)},i.PushTransform=function(t){this._xf=t},i.PopTransform=function(){this._xf=this._dxf},e}(Jbt.Draw),_Rt=new gn,fRt=new jn,dRt=new jn,pRt=new Jbt.BodyDef,mRt=new Jbt.AABB,gRt=[],vRt=function(){function t(){this._world=void 0,this._bodies=[],this._animatedBodies=[],this._rotationAxis=new gn,this._physicsGroundBody=void 0,this._contactListener=void 0,this._aabbQueryCallback=void 0,this._raycastQueryCallback=void 0,this._debugGraphics=null,this._b2DebugDrawer=null,this._debugDrawFlags=0,this._world=new Jbt.World(new Jbt.Vec2(0,-10));var t=new Jbt.BodyDef;this._physicsGroundBody=this._world.CreateBody(t);var e=new $bt;e.setBeginContact(this._onBeginContact),e.setEndContact(this._onEndContact),e.setPreSolve(this._onPreSolve),e.setPostSolve(this._onPostSolve),this._world.SetContactListener(e),this._contactListener=e,this._aabbQueryCallback=new tEt,this._raycastQueryCallback=new Zwt}var e=t.prototype;return e._checkDebugDrawValid=function(){if(!this._debugGraphics||!this._debugGraphics.isValid){var t=TI("Canvas");if(!t){var e=ID.getScene();if(!e)return;(t=new hg("Canvas")).addComponent("cc.Canvas"),t.parent=e}var i=new hg("PHYSICS_2D_DEBUG_DRAW");i.hideFlags|=Ms.Flags.DontSave,i.parent=t,i.worldPosition=gn.ZERO,i.layer=dm.Enum.UI_2D,this._debugGraphics=i.addComponent("cc.Graphics"),this._debugGraphics.lineWidth=3;var n=new cRt(this._debugGraphics);this._b2DebugDrawer=n,this._world.SetDebugDraw(n)}var r=this._debugGraphics.node.parent;this._debugGraphics.node.setSiblingIndex(r.children.length-1),this._b2DebugDrawer&&this._b2DebugDrawer.SetFlags(this.debugDrawFlags)},e.setGravity=function(t){this._world.SetGravity(t)},e.setAllowSleep=function(){this._world.SetAllowSleeping(!0)},e.step=function(t,e,i){void 0===e&&(e=10),void 0===i&&(i=10);for(var n=this._animatedBodies,r=0,s=n.length;r<s;r++)n[r].animate(t);this._world.Step(t,e,i)},e.raycast=function(t,e,i,n){if(t.equals(e))return[];i=i||Obt.Closest,fRt.x=t.x/Gbt,fRt.y=t.y/Gbt,dRt.x=e.x/Gbt,dRt.y=e.y/Gbt;var r=this._raycastQueryCallback;r.init(i,n),this._world.RayCast(r,fRt,dRt);var s=r.getFixtures();if(s.length>0){for(var a=r.getPoints(),o=r.getNormals(),h=r.getFractions(),u=[],l=0,c=s.length;l<c;l++){var _=s[l],f=_.m_userData,d=f.collider;if(i===Obt.AllClosest){for(var p=void 0,m=0;m<u.length;m++)u[m].collider===d&&(p=u[m]);if(p){h[l]<p.fraction&&(p.fixtureIndex=f.getFixtureIndex(_),p.point.x=a[l].x*Gbt,p.point.y=a[l].y*Gbt,p.normal.x=o[l].x,p.normal.y=o[l].y,p.fraction=h[l]);continue}}u.push({collider:d,fixtureIndex:f.getFixtureIndex(_),point:new jn(a[l].x*Gbt,a[l].y*Gbt),normal:new jn(o[l].x,o[l].y),fraction:h[l]})}return u}return[]},e.syncPhysicsToScene=function(){for(var t=this._bodies,e=0,i=t.length;e<i;e++){var n=t[e],r=n.rigidBody;if(r.type!==Dbt.Animated){var s=r.node,a=n.impl,o=a.GetPosition();_Rt.x=o.x*Gbt,_Rt.y=o.y*Gbt,_Rt.z=0,s.worldPosition=_Rt;var h=Ui(a.GetAngle());s.setWorldRotationFromEuler(0,0,h)}else n.resetVelocity()}},e.syncSceneToPhysics=function(){for(var t=this._bodies,e=0;e<t.length;e++)t[e].syncSceneToPhysics()},e.addBody=function(t){if(!this._bodies.includes(t)){var e=pRt,i=t.rigidBody;e.allowSleep=i.allowSleep,e.gravityScale=i.gravityScale,e.linearDamping=i.linearDamping,e.angularDamping=i.angularDamping,e.fixedRotation=i.fixedRotation,e.bullet=i.bullet;var n=i.node,r=n.worldPosition;e.position.Set(r.x/Gbt,r.y/Gbt),_Rt.z=Bn.getAxisAngle(this._rotationAxis,n.worldRotation),this._rotationAxis.z<0&&(_Rt.z=2*Math.PI-_Rt.z),e.angle=_Rt.z,e.awake=i.awakeOnLoad,i.type===Dbt.Animated?(e.type=Dbt.Kinematic,this._animatedBodies.push(t),t._animatedPos.set(e.position.x,e.position.y),t._animatedAngle=e.angle):e.type=i.type;var s=i,a=s._linearVelocity;e.linearVelocity.Set(a.x,a.y),e.angularVelocity=s._angularVelocity;var o=this._world.CreateBody(e);o.m_userData=t,t._imp=o,this._bodies.push(t)}},e.removeBody=function(t){this._bodies.includes(t)&&(t.impl&&(t.impl.m_userData=null,this._world.DestroyBody(t.impl),t._imp=null),de(this._bodies,t),t.rigidBody.type===Dbt.Animated&&de(this._animatedBodies,t))},e.registerContactFixture=function(t){this._contactListener.registerContactFixture(t)},e.unregisterContactFixture=function(t){this._contactListener.unregisterContactFixture(t)},e.testPoint=function(t){var e=fRt.x=t.x/Gbt,i=fRt.y=t.y/Gbt,n=.2/Gbt;mRt.lowerBound.x=e-n,mRt.lowerBound.y=i-n,mRt.upperBound.x=e+n,mRt.upperBound.y=i+n;var r=this._aabbQueryCallback;r.init(fRt),this._world.QueryAABB(r,mRt);var s=r.getFixtures();gRt.length=0;for(var a=0;a<s.length;a++){var o=s[a].m_userData.collider;gRt.includes(o)||gRt.push(o)}return gRt},e.testAABB=function(t){mRt.lowerBound.x=t.xMin/Gbt,mRt.lowerBound.y=t.yMin/Gbt,mRt.upperBound.x=t.xMax/Gbt,mRt.upperBound.y=t.yMax/Gbt;var e=this._aabbQueryCallback;e.init(),this._world.QueryAABB(e,mRt);var i=e.getFixtures();gRt.length=0;for(var n=0;n<i.length;n++){var r=i[n].m_userData.collider;gRt.includes(r)||gRt.push(r)}return gRt},e.drawDebug=function(){this._checkDebugDrawValid(),this._debugGraphics&&(this._debugGraphics.clear(),this._world.DrawDebugData())},e._onBeginContact=function(t){aRt.get(t).emit(kbt.BEGIN_CONTACT)},e._onEndContact=function(t){var e=t.m_userData;e&&(e.emit(kbt.END_CONTACT),aRt.put(t))},e._onPreSolve=function(t){var e=t.m_userData;e&&e.emit(kbt.PRE_SOLVE)},e._onPostSolve=function(t,e){var i=t.m_userData;i&&(i._setImpulse(e),i.emit(kbt.POST_SOLVE),i._setImpulse(null))},n(t,[{key:"impl",get:function(){return this._world}},{key:"groundBodyImpl",get:function(){return this._physicsGroundBody}},{key:"debugDrawFlags",get:function(){return this._debugDrawFlags},set:function(t){t||this._debugGraphics&&(this._debugGraphics.node.parent=null),this._debugDrawFlags=t}}]),t}(),yRt=new gn,SRt=new Jbt.Vec2,TRt=function(){function t(){this._animatedPos=new jn,this._animatedAngle=0,this._body=null,this._rigidBody=void 0,this._inited=!1}var e=t.prototype;return e.initialize=function(t){this._rigidBody=t,uCt.instance._callAfterStep(this,this._init)},e.onDestroy=function(){uCt.instance._callAfterStep(this,this._destroy)},e.onEnable=function(){this.setActive(!0)},e.onDisable=function(){this.setActive(!1)},e.nodeTransformChanged=function(t){if(!uCt.instance.stepping){if(t&hg.TransformBit.SCALE)for(var e=this.rigidBody.getComponents(Xwt),i=0;i<e.length;i++)e[i].apply();t&hg.TransformBit.POSITION&&this.syncPositionToPhysics(!0),t&hg.TransformBit.ROTATION&&this.syncRotationToPhysics(!0)}},e._init=function(){this._inited||(uCt.instance.physicsWorld.addBody(this),this.setActive(!1),this._inited=!0)},e._destroy=function(){this._inited&&(uCt.instance.physicsWorld.removeBody(this),this._inited=!1)},e.animate=function(t){var e=this._body;if(e){var i=e.GetPosition();e.SetAwake(!0);var n=1/t;SRt.x=(this._animatedPos.x-i.x)*n,SRt.y=(this._animatedPos.y-i.y)*n,e.SetLinearVelocity(SRt);var r=e.GetAngle()%Pi;r>Math.PI&&(r-=Pi);var s=(this._animatedAngle-r)*n;this._animatedAngle<-Mi&&r>Mi&&(s=(this._animatedAngle+Pi-r)*n),this._animatedAngle>Mi&&r<-Mi&&(s=(this._animatedAngle-Pi-r)*n),e.SetAngularVelocity(s)}},e.syncSceneToPhysics=function(){var t=this._rigidBody.node.hasChangedFlags;t&&this.nodeTransformChanged(t)},e.syncPositionToPhysics=function(t){void 0===t&&(t=!1);var e=this._body;if(e){var i,n=this._rigidBody.node.worldPosition,r=this._rigidBody.type;(i=r===Dbt.Animated?e.GetLinearVelocity():e.GetPosition()).x=n.x/Gbt,i.y=n.y/Gbt,r===Dbt.Animated&&t?this._animatedPos.set(i.x,i.y):e.SetTransformVec(i,e.GetAngle())}},e.syncRotationToPhysics=function(t){void 0===t&&(t=!1);var e=this._body;if(e){var i=this._rigidBody.node.worldRotation,n=yRt;Bn.toEulerInYXZOrder(n,i);var r=Vi(n.z);this._rigidBody.type===Dbt.Animated&&t?this._animatedAngle=r:e.SetTransformVec(e.GetPosition(),r)}},e.resetVelocity=function(){var t=this._body;if(t){var e=t.m_linearVelocity;e.Set(0,0),t.SetLinearVelocity(e),t.SetAngularVelocity(0)}},e.setType=function(t){this._body.SetType(t)},e.setLinearDamping=function(t){this._body.SetLinearDamping(t)},e.setAngularDamping=function(t){this._body.SetAngularDamping(t)},e.setGravityScale=function(t){this._body.SetGravityScale(t)},e.setFixedRotation=function(t){this._body.SetFixedRotation(t)},e.setAllowSleep=function(t){this._body.SetSleepingAllowed(t)},e.isActive=function(){return this._body.IsActive()},e.setActive=function(t){this._body.SetActive(t)},e.wakeUp=function(){this._body.SetAwake(!0)},e.sleep=function(){this._body.SetAwake(!1)},e.getMass=function(){return this._body.GetMass()},e.setLinearVelocity=function(t){this._body.SetLinearVelocity(t)},e.getLinearVelocity=function(t){var e=this._body.GetLinearVelocity();return t.x=e.x,t.y=e.y,t},e.getLinearVelocityFromWorldPoint=function(t,e){return SRt.Set(t.x/Gbt,t.y/Gbt),this._body.GetLinearVelocityFromWorldPoint(SRt,e),e.x*=Gbt,e.y*=Gbt,e},e.setAngularVelocity=function(t){this._body.SetAngularVelocity(t)},e.getAngularVelocity=function(){return this._body.GetAngularVelocity()},e.getLocalVector=function(t,e){return e=e||new jn,SRt.Set(t.x/Gbt,t.y/Gbt),this._body.GetLocalVector(SRt,e),e.x*=Gbt,e.y*=Gbt,e},e.getWorldVector=function(t,e){return SRt.Set(t.x/Gbt,t.y/Gbt),this._body.GetWorldVector(SRt,e),e.x*=Gbt,e.y*=Gbt,e},e.getLocalPoint=function(t,e){return e=e||new jn,SRt.Set(t.x/Gbt,t.y/Gbt),this._body.GetLocalPoint(SRt,e),e.x*=Gbt,e.y*=Gbt,e},e.getWorldPoint=function(t,e){return e=e||new jn,SRt.Set(t.x/Gbt,t.y/Gbt),this._body.GetWorldPoint(SRt,e),e.x*=Gbt,e.y*=Gbt,e},e.getLocalCenter=function(t){t=t||new jn;var e=this._body.GetLocalCenter();return t.x=e.x*Gbt,t.y=e.y*Gbt,t},e.getWorldCenter=function(t){t=t||new jn;var e=this._body.GetWorldCenter();return t.x=e.x*Gbt,t.y=e.y*Gbt,t},e.getInertia=function(){return this._body.GetInertia()},e.applyForce=function(t,e,i){this._body&&(SRt.Set(e.x/Gbt,e.y/Gbt),this._body.ApplyForce(t,SRt,i))},e.applyForceToCenter=function(t,e){this._body&&this._body.ApplyForceToCenter(t,e)},e.applyTorque=function(t,e){this._body&&this._body.ApplyTorque(t,e)},e.applyLinearImpulse=function(t,e,i){this._body&&(SRt.Set(e.x/Gbt,e.y/Gbt),this._body.ApplyLinearImpulse(t,SRt,i))},e.applyLinearImpulseToCenter=function(t,e){this._body&&this._body.ApplyLinearImpulse(t,this._body.GetPosition(),e)},e.applyAngularImpulse=function(t,e){this._body&&this._body.ApplyAngularImpulse(t,e)},n(t,[{key:"impl",get:function(){return this._body}},{key:"_imp",set:function(t){this._body=t}},{key:"rigidBody",get:function(){return this._rigidBody}},{key:"isAwake",get:function(){return this._body.IsAwake()}},{key:"isSleeping",get:function(){return!this._body.IsAwake()}}]),t}(),ARt=new Jbt.Filter,bRt=new Jbt.Vec2,ERt=new Jbt.Vec2;function CRt(t){var e=t.collider;return e.body?ARt.categoryBits=e.group===PEt.DEFAULT?e.body.group:e.group:ARt.categoryBits=e.group,ARt.maskBits=uCt.instance.collisionMatrix[ARt.categoryBits],ARt}var xRt,wRt=function(){function t(){this._shapes=[],this._fixtures=[],this._collider=null,this._body=null,this._inited=!1,this._rect=new Jn}var e=t.prototype;return e.initialize=function(t){this._collider=t},e.onLoad=function(){},e.onEnable=function(){uCt.instance._callAfterStep(this,this._init)},e.onDisable=function(){uCt.instance._callAfterStep(this,this._destroy)},e.start=function(){},e.onGroupChanged=function(){var t=CRt(this);this._fixtures.forEach((function(e){e.SetFilterData(t)}))},e.apply=function(){this._destroy(),this.collider.enabledInHierarchy&&this._init()},e.getFixtureIndex=function(t){return this._fixtures.indexOf(t)},e._createShapes=function(){return[]},e._init=function(){if(!this._inited){var t=this.collider,e=t.node.worldScale,i=gn.ZERO,n=t.getComponent(Hwt);n&&n.impl&&n.impl.impl?this._body=n.impl.impl:(this._body=uCt.instance.physicsWorld.groundBodyImpl,i=t.node.worldPosition);for(var r=0===e.x&&0===e.y?[]:this._createShapes(e.x,e.y,i.x,i.y),s=CRt(this),a=0;a<r.length;a++){var o=r[a],h={density:t.density,isSensor:t.sensor,friction:t.friction,restitution:t.restitution,shape:o,filter:s},u=this._body.CreateFixture(h);u.m_userData=this,null!=n&&n.enabledContactListener&&uCt.instance.physicsWorld.registerContactFixture(u),this._shapes.push(o),this._fixtures.push(u)}this._inited=!0}},e._destroy=function(){if(this._inited){for(var t=this._fixtures,e=this._body,i=t.length-1;i>=0;i--){var n=t[i];n.m_userData=null,uCt.instance.physicsWorld.unregisterContactFixture(n),e&&e.DestroyFixture(n)}this._body=null,this._fixtures.length=0,this._shapes.length=0,this._inited=!1}},n(t,[{key:"impl",get:function(){return this._shapes}},{key:"collider",get:function(){return this._collider}},{key:"worldAABB",get:function(){for(var t=1e7,e=t,i=t,n=-t,r=-t,s=this._fixtures,a=0;a<s.length;a++)for(var o=s[a],h=o.GetShape().GetChildCount(),u=0;u<h;u++){if(bRt.Copy(o.GetAABB(u).lowerBound),ERt.Copy(o.GetAABB(u).upperBound),2===o.GetShape().m_type){var l=o.GetShape().m_radius;bRt.SelfAddXY(l,l),ERt.SelfSubXY(l,l)}bRt.x<e&&(e=bRt.x),bRt.y<i&&(i=bRt.y),ERt.x>n&&(n=ERt.x),ERt.y>r&&(r=ERt.y)}e*=Gbt,i*=Gbt,n*=Gbt,r*=Gbt;var c=this._rect;return c.x=e,c.y=i,c.width=n-e,c.height=r-i,c}}]),t}(),RRt=new Jn,IRt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._worldPoints=[new jn,new jn,new jn,new jn],e}return s(e,t),e.prototype._createShapes=function(t,e,i,n){t=Math.abs(t),e=Math.abs(e);var r=this.collider,s=r.size.width/2/Gbt*t,a=r.size.height/2/Gbt*e,o=(i+r.offset.x*t)/Gbt,h=(n+r.offset.y*e)/Gbt,u=new Jbt.PolygonShape;return u.SetAsBox(s,a,new Jbt.Vec2(o,h),0),[u]},n(e,[{key:"worldPoints",get:function(){var t=RRt,e=this.collider,i=e.size,n=e.offset;t.x=n.x-i.width/2,t.y=n.y-i.height/2,t.width=i.width,t.height=i.height;var r=this._worldPoints,s=r[0],a=r[1],o=r[2],h=r[3];return t.transformMat4ToPoints(e.node.worldMatrix,s,a,o,h),r}}]),e}(wRt),DRt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._worldPosition=new jn,e}return s(e,t),e.prototype._createShapes=function(t,e,i,n){t=Math.abs(t),e=Math.abs(e);var r=this.collider,s=(i+r.offset.x*t)/Gbt,a=(n+r.offset.y*e)/Gbt,o=new Jbt.CircleShape;return o.m_radius=r.radius/Gbt*t,o.m_p.Set(s,a),[o]},n(e,[{key:"worldRadius",get:function(){return this._shapes[0].m_radius*Gbt}},{key:"worldPosition",get:function(){var t=this._shapes[0].m_p;return this._worldPosition.set(t.x*Gbt,t.y*Gbt)}}]),e}(wRt),BRt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._worldPoints=[],e}return s(e,t),e.prototype._createShapes=function(t,e,i,n){var r=[],s=this.collider,a=s.points;a.length>0&&a[0].equals(a[a.length-1])&&(a.length-=1);var o=mEt(a);if(!o)return console.log("[Physics2D] b2PolygonShape failed to decompose polygon into convex polygons, node name: ",s.node.name),r;for(var h=s.offset,u=0;u<o.length;u++){for(var l=o[u],c=null,_=[],f=null,d=0,p=l.length;d<p;d++){c||(c=new Jbt.PolygonShape);var m=l[d],g=(i+(m.x+h.x)*t)/Gbt,v=(n+(m.y+h.y)*e)/Gbt,y=new Jbt.Vec2(g,v);_.push(y),f||(f=y),_.length===Jbt.maxPolygonVertices&&(c.Set(_,_.length),r.push(c),c=null,d<p-1&&(_=[f,_[_.length-1]]))}c&&(c.Set(_,_.length),r.push(c))}return r},n(e,[{key:"worldPoints",get:function(){for(var t=this.collider,e=t.points,i=this._worldPoints,n=t.node.worldMatrix,r=0;r<e.length;r++)i[r]||(i[r]=new jn),jn.transformMat4(i[r],e[r],n);return i.length=e.length,this._worldPoints}}]),e}(wRt),MRt=function(){function t(){this._b2joint=null,this._jointComp=null,this._body=null,this._inited=!1}var e=t.prototype;return e.initialize=function(t){this._jointComp=t},e.onEnable=function(){uCt.instance._callAfterStep(this,this._init)},e.onDisable=function(){uCt.instance._callAfterStep(this,this._destroy)},e.start=function(){uCt.instance._callAfterStep(this,this._init)},e.apply=function(){uCt.instance._callAfterStep(this,this._destroy),this.comp.enabledInHierarchy&&uCt.instance._callAfterStep(this,this._init)},e._init=function(){if(!this._inited){var t=this._jointComp;if(t.isValid){this._body=t.getComponent(Hwt);var e=this._createJointDef();if(e){e.bodyA=this._body.impl.impl;var i=t.connectedBody;i&&!i.enabledInHierarchy||(e.bodyB=i?i.impl.impl:uCt.instance.physicsWorld.groundBodyImpl,e.collideConnected=t.collideConnected,this._b2joint=uCt.instance.physicsWorld.impl.CreateJoint(e),this._inited=!0)}}}},e._destroy=function(){this._inited&&(uCt.instance.physicsWorld.impl.DestroyJoint(this._b2joint),this._b2joint=null,this._inited=!1)},e._createJointDef=function(){return null},e.isValid=function(){return this._b2joint&&this._body&&this._body.impl&&this._jointComp},n(t,[{key:"impl",get:function(){return this._b2joint}},{key:"comp",get:function(){return this._jointComp}},{key:"body",get:function(){return this._body}}]),t}(),PRt=new Jbt.Vec2,ORt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._touchPoint=new jn,e._isTouched=!1,e}s(e,t);var i=e.prototype;return i.setTarget=function(t){this._b2joint&&(PRt.x=t.x/Gbt,PRt.y=t.y/Gbt,this._b2joint.SetTarget(PRt))},i.setDampingRatio=function(t){this._b2joint&&this._b2joint.SetDampingRatio(t)},i.setFrequency=function(t){this._b2joint&&this._b2joint.SetFrequency(t)},i.setMaxForce=function(t){this._b2joint&&this._b2joint.SetMaxForce(t)},i._createJointDef=function(){var t=new Jbt.MouseJointDef,e=this._jointComp;return t.target.Set(this._touchPoint.x/Gbt,this._touchPoint.y/Gbt),t.maxForce=e.maxForce,t.dampingRatio=e.dampingRatio,t.frequencyHz=e.frequency,t},i.initialize=function(e){t.prototype.initialize.call(this,e);var i=TI("Canvas");i&&(i.on(vm.TOUCH_START,this.onTouchBegan,this),i.on(vm.TOUCH_MOVE,this.onTouchMove,this),i.on(vm.TOUCH_END,this.onTouchEnd,this),i.on(vm.TOUCH_CANCEL,this.onTouchEnd,this))},i.onEnable=function(){},i.start=function(){},i.onTouchBegan=function(t){this._isTouched=!0;var e=this._touchPoint.set(t.getUILocation()),i=uCt.instance.physicsWorld.testPoint(e);if(!(i.length<=0)){var n=i[0].body;n.wakeUp();var r=this._jointComp;r.connectedBody=n,this._init(),this.setMaxForce(r.maxForce*n.getMass()),this.setTarget(e)}},i.onTouchMove=function(t){this._touchPoint=t.getUILocation()},i.onTouchEnd=function(){this._destroy(),this._isTouched=!1},i.update=function(){this._isTouched&&this.isValid()&&this.setTarget(this._touchPoint)},e}(MRt),LRt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setMaxLength=function(t){this._b2joint&&this._b2joint.SetMaxLength(t)},i._createJointDef=function(){var t=this._jointComp,e=new Jbt.RopeJointDef;return e.localAnchorA.Set(t.anchor.x/Gbt,t.anchor.y/Gbt),e.localAnchorB.Set(t.connectedAnchor.x/Gbt,t.connectedAnchor.y/Gbt),e.maxLength=t.maxLength/Gbt,e},e}(MRt),NRt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setDampingRatio=function(t){this._b2joint&&this._b2joint.SetDampingRatio(t)},i.setFrequency=function(t){this._b2joint&&this._b2joint.SetFrequency(t)},i.setDistance=function(t){this._b2joint&&this._b2joint.SetLength(t)},i._createJointDef=function(){var t=this._jointComp,e=new Jbt.DistanceJointDef;return e.localAnchorA.Set(t.anchor.x/Gbt,t.anchor.y/Gbt),e.localAnchorB.Set(t.connectedAnchor.x/Gbt,t.connectedAnchor.y/Gbt),e.length=t.distance/Gbt,e.dampingRatio=t.dampingRatio,e.frequencyHz=t.frequency,e},e}(MRt),FRt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setMaxForce=function(t){this._b2joint&&this._b2joint.SetMaxForce(t)},i.setAngularOffset=function(t){this._b2joint&&this._b2joint.SetAngularOffset(Vi(t))},i.setLinearOffset=function(t){this._b2joint&&this._b2joint.SetLinearOffset(new Jbt.Vec2(t.x/Gbt,t.y/Gbt))},i.setCorrectionFactor=function(t){this._b2joint&&(this._b2joint.m_correctionFactor=t)},i.setMaxTorque=function(t){this._b2joint&&this._b2joint.SetMaxTorque(t)},i._createJointDef=function(){var t=this._jointComp,e=new Jbt.MotorJointDef;return e.linearOffset.Set(t.linearOffset.x/Gbt,t.linearOffset.y/Gbt),e.angularOffset=Vi(t.angularOffset),e.maxForce=t.maxForce,e.maxTorque=t.maxTorque,e.correctionFactor=t.correctionFactor,e},e}(MRt),kRt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.enableLimit=function(t){this._b2joint&&this._b2joint.EnableLimit(t)},i.setLowerLimit=function(){this.updateLimits()},i.setUpperLimit=function(){this.updateLimits()},i.updateLimits=function(){if(this._b2joint){var t=this._jointComp;this._b2joint.SetLimits(t.lowerLimit/Gbt,t.upperLimit/Gbt)}},i.enableMotor=function(t){this._b2joint&&this._b2joint.EnableMotor(t)},i.setMaxMotorForce=function(t){this._b2joint&&this._b2joint.SetMaxMotorForce(t)},i.setMotorSpeed=function(t){this._b2joint&&this._b2joint.SetMotorSpeed(t)},i._createJointDef=function(){var t=this._jointComp,e=new Jbt.PrismaticJointDef;e.localAnchorA.Set(t.anchor.x/Gbt,t.anchor.y/Gbt),e.localAnchorB.Set(t.connectedAnchor.x/Gbt,t.connectedAnchor.y/Gbt);var i=Vi(t.angle);return e.localAxisA.Set(Math.cos(i),Math.sin(i)),e.referenceAngle=0,e.enableLimit=t.enableLimit,e.lowerTranslation=t.lowerLimit/Gbt,e.upperTranslation=t.upperLimit/Gbt,e.enableMotor=t.enableMotor,e.maxMotorForce=t.maxMotorForce,e.motorSpeed=t.motorSpeed,e},e}(MRt),GRt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setFrequency=function(t){this._b2joint&&this._b2joint.SetFrequency(t)},i.setDampingRatio=function(t){this._b2joint&&this._b2joint.SetDampingRatio(t)},i._createJointDef=function(){var t=this._jointComp,e=new Jbt.WeldJointDef;return e.localAnchorA.Set(t.anchor.x/Gbt,t.anchor.y/Gbt),e.localAnchorB.Set(t.connectedAnchor.x/Gbt,t.connectedAnchor.y/Gbt),e.referenceAngle=0,e.frequencyHz=t.frequency,e.dampingRatio=t.dampingRatio,e},e}(MRt),VRt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setDampingRatio=function(t){this._b2joint&&this._b2joint.SetSpringDampingRatio(t)},i.setFrequency=function(t){this._b2joint&&this._b2joint.SetSpringFrequencyHz(t)},i.enableMotor=function(t){this._b2joint&&this._b2joint.EnableMotor(t)},i.setMaxMotorTorque=function(t){this._b2joint&&this._b2joint.SetMaxMotorTorque(t)},i.setMotorSpeed=function(t){this._b2joint&&this._b2joint.SetMotorSpeed(t)},i._createJointDef=function(){var t=this._jointComp,e=new Jbt.WheelJointDef;e.localAnchorA.Set(t.anchor.x/Gbt,t.anchor.y/Gbt),e.localAnchorB.Set(t.connectedAnchor.x/Gbt,t.connectedAnchor.y/Gbt);var i=Vi(t.angle);return e.localAxisA.Set(Math.cos(i),Math.sin(i)),e.maxMotorTorque=t.maxMotorTorque,e.motorSpeed=Vi(t.motorSpeed),e.enableMotor=t.enableMotor,e.dampingRatio=t.dampingRatio,e.frequencyHz=t.frequency,e},e}(MRt),URt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.enableLimit=function(t){this._b2joint&&this._b2joint.EnableLimit(t)},i.setLowerAngle=function(){this.updateLimits()},i.setUpperAngle=function(){this.updateLimits()},i.updateLimits=function(){if(this._b2joint){var t=this._jointComp;this._b2joint.SetLimits(Vi(t.lowerAngle),Vi(t.upperAngle))}},i.enableMotor=function(t){this._b2joint&&this._b2joint.EnableMotor(t)},i.setMaxMotorTorque=function(t){this._b2joint&&this._b2joint.SetMaxMotorTorque(t)},i.setMotorSpeed=function(t){this._b2joint&&this._b2joint.SetMotorSpeed(t)},i._createJointDef=function(){var t=this._jointComp,e=new Jbt.RevoluteJointDef;return e.localAnchorA.Set(t.anchor.x/Gbt,t.anchor.y/Gbt),e.localAnchorB.Set(t.connectedAnchor.x/Gbt,t.connectedAnchor.y/Gbt),e.enableMotor=t.enableMotor,e.maxMotorTorque=t.maxMotorTorque,e.motorSpeed=Vi(t.motorSpeed),e.enableLimit=t.enableLimit,e.lowerAngle=Vi(t.lowerAngle),e.upperAngle=Vi(t.upperAngle),e},e}(MRt);function zRt(t){S._global.CC_PHYSICS_BUILTIN="builtin"===t,S._global.CC_PHYSICS_CANNON="cannon.js"===t,S._global.CC_PHYSICS_AMMO="bullet"===t}EB.once(bB.EVENT_PRE_SUBSYSTEM_INIT,(function(){Vbt.register("box2d",{PhysicsWorld:vRt,RigidBody:TRt,BoxShape:IRt,CircleShape:DRt,PolygonShape:BRt,MouseJoint:ORt,DistanceJoint:LRt,SpringJoint:NRt,RelativeJoint:FRt,SliderJoint:kRt,FixedJoint:GRt,WheelJoint:VRt,HingeJoint:URt})}));var HRt,WRt={id:"",switchTo:function(t){if(WRt.runInEditor){var e=WRt;if(WRt.physicsWorld&&t!==WRt.id&&null!=WRt.backend[t]?(WRt.physicsWorld.destroy(),U("[PHYSICS]: switch from "+WRt.id+" to "+t+"."),zRt(t),e.id=t,e.wrapper=WRt.backend[t],e.physicsWorld=qRt()):(U("[PHYSICS]: using "+t+"."),e.physicsWorld=qRt()),xRt){var i=e.physicsWorld;i.setGravity(xRt.gravity),i.setAllowSleep(xRt.allowSleep)}}},register:function(t,e){if(U("[PHYSICS]: register "+t+"."),WRt.backend[t]=e,!WRt.physicsWorld||WRt.id===t){zRt(t);var i=WRt;i.id=t,i.wrapper=e}},wrapper:{},backend:{},physicsWorld:null,runInEditor:!0},XRt=function(){return 0},jRt={impl:null,debugDrawFlags:0,debugDrawConstraintSize:0,setGravity:XRt,setAllowSleep:XRt,setDefaultMaterial:XRt,step:XRt,syncAfterEvents:XRt,syncSceneToPhysics:XRt,raycast:XRt,raycastClosest:XRt,sweepBox:XRt,sweepBoxClosest:XRt,sweepSphere:XRt,sweepSphereClosest:XRt,sweepCapsule:XRt,sweepCapsuleClosest:XRt,emitEvents:XRt,destroy:XRt};function YRt(t,e){return null==t&&(WRt.id?z(WRt.id+" physics does not support "+HRt[e]):it(9600),!0)}function qRt(){return YRt(WRt.wrapper.PhysicsWorld,HRt.World)?jRt:new WRt.wrapper.PhysicsWorld}!function(t){t[t.World=0]="World",t[t.RigidBody=1]="RigidBody",t[t.BoxCollider=2]="BoxCollider",t[t.SphereCollider=3]="SphereCollider",t[t.CapsuleCollider=4]="CapsuleCollider",t[t.MeshCollider=5]="MeshCollider",t[t.CylinderCollider=6]="CylinderCollider",t[t.ConeCollider=7]="ConeCollider",t[t.TerrainCollider=8]="TerrainCollider",t[t.SimplexCollider=9]="SimplexCollider",t[t.PlaneCollider=10]="PlaneCollider",t[t.PointToPointConstraint=11]="PointToPointConstraint",t[t.HingeConstraint=12]="HingeConstraint",t[t.FixedConstraint=13]="FixedConstraint",t[t.ConfigurableConstraint=14]="ConfigurableConstraint",t[t.BoxCharacterController=15]="BoxCharacterController",t[t.CapsuleCharacterController=16]="CapsuleCharacterController"}(HRt||(HRt={}));var KRt={impl:null,rigidBody:null,isAwake:!1,isSleepy:!1,isSleeping:!1,initialize:XRt,onEnable:XRt,onDisable:XRt,onDestroy:XRt,setType:XRt,setMass:XRt,setLinearDamping:XRt,setAngularDamping:XRt,useGravity:XRt,setLinearFactor:XRt,setAngularFactor:XRt,setAllowSleep:XRt,wakeUp:XRt,sleep:XRt,clearState:XRt,clearForces:XRt,clearVelocity:XRt,setSleepThreshold:XRt,getSleepThreshold:XRt,getLinearVelocity:XRt,setLinearVelocity:XRt,getAngularVelocity:XRt,setAngularVelocity:XRt,applyForce:XRt,applyLocalForce:XRt,applyImpulse:XRt,applyLocalImpulse:XRt,applyTorque:XRt,applyLocalTorque:XRt,setGroup:XRt,getGroup:XRt,addGroup:XRt,removeGroup:XRt,setMask:XRt,getMask:XRt,addMask:XRt,removeMask:XRt,isUsingCCD:XRt,useCCD:XRt},QRt={INITED:!1},ZRt={impl:null,collider:null,attachedRigidBody:null,initialize:XRt,onLoad:XRt,onEnable:XRt,onDisable:XRt,onDestroy:XRt,setGroup:XRt,getGroup:XRt,addGroup:XRt,removeGroup:XRt,setMask:XRt,getMask:XRt,addMask:XRt,removeMask:XRt,setMaterial:XRt,setAsTrigger:XRt,setCenter:XRt,getAABB:XRt,getBoundingSphere:XRt,updateSize:XRt,updateRadius:XRt,setRadius:XRt,setCylinderHeight:XRt,setDirection:XRt,setHeight:XRt,setShapeType:XRt,setVertices:XRt,setMesh:XRt,setTerrain:XRt,setNormal:XRt,setConstant:XRt,updateEventListener:XRt};var JRt={INITED:!1},$Rt={impl:null,initialize:XRt,onLoad:XRt,onEnable:XRt,onDisable:XRt,onDestroy:XRt,setEnableCollision:XRt,setConnectedBody:XRt,setPivotA:XRt,setPivotB:XRt,setAxis:XRt,setSecondaryAxis:XRt,setBreakForce:XRt,setBreakTorque:XRt,setConstraintMode:XRt,setLinearLimit:XRt,setAngularExtent:XRt,setLinearSoftConstraint:XRt,setLinearStiffness:XRt,setLinearDamping:XRt,setLinearRestitution:XRt,setSwingSoftConstraint:XRt,setTwistSoftConstraint:XRt,setSwingStiffness:XRt,setSwingDamping:XRt,setSwingRestitution:XRt,setTwistStiffness:XRt,setTwistDamping:XRt,setTwistRestitution:XRt,setDriverMode:XRt,setLinearMotorTarget:XRt,setLinearMotorVelocity:XRt,setLinearMotorForceLimit:XRt,setAngularMotorTarget:XRt,setAngularMotorVelocity:XRt,setAngularMotorForceLimit:XRt,setAutoPivotB:XRt,setLimitEnabled:XRt,setLowerLimit:XRt,setUpperLimit:XRt,setMotorEnabled:XRt,setMotorVelocity:XRt,setMotorForceLimit:XRt};var tIt,eIt,iIt,nIt={INITED:!1},rIt={initialize:XRt,onLoad:XRt,onEnable:XRt,onDisable:XRt,onDestroy:XRt,onGround:XRt,getPosition:XRt,setPosition:XRt,setStepOffset:XRt,setSlopeLimit:XRt,setContactOffset:XRt,setDetectCollisions:XRt,setOverlapRecovery:XRt,setGroup:XRt,getGroup:XRt,addGroup:XRt,removeGroup:XRt,setMask:XRt,getMask:XRt,addMask:XRt,removeMask:XRt,move:XRt,syncPhysicsToScene:XRt,updateEventListener:XRt,setHalfHeight:XRt,setHalfSideExtent:XRt,setHalfForwardExtent:XRt,setRadius:XRt,setHeight:XRt};!function(t){t[t.EBulletTypeVec3=0]="EBulletTypeVec3",t[t.EBulletTypeQuat=1]="EBulletTypeQuat",t[t.EBulletTypeTransform=2]="EBulletTypeTransform",t[t.EBulletTypeMotionState=3]="EBulletTypeMotionState",t[t.EBulletTypeCollisionObject=4]="EBulletTypeCollisionObject",t[t.EBulletTypeCollisionShape=5]="EBulletTypeCollisionShape",t[t.EBulletTypeCharacterController=6]="EBulletTypeCharacterController",t[t.EBulletTypeStridingMeshInterface=7]="EBulletTypeStridingMeshInterface",t[t.EBulletTypeTriangleMesh=8]="EBulletTypeTriangleMesh",t[t.EBulletTypeCollisionDispatcher=9]="EBulletTypeCollisionDispatcher",t[t.EBulletTypeDbvtBroadPhase=10]="EBulletTypeDbvtBroadPhase",t[t.EBulletTypeSequentialImpulseConstraintSolver=11]="EBulletTypeSequentialImpulseConstraintSolver",t[t.EBulletTypeCollisionWorld=12]="EBulletTypeCollisionWorld",t[t.EBulletTypeTypedConstraint=13]="EBulletTypeTypedConstraint",t[t.EBulletTypeDebugDraw=14]="EBulletTypeDebugDraw"}(tIt||(tIt={})),function(t){t[t.NONE=0]="NONE",t[t.FilterBackfaces=1]="FilterBackfaces",t[t.KeepUnflippedNormal=2]="KeepUnflippedNormal",t[t.UseSubSimplexConvexCastRaytest=4]="UseSubSimplexConvexCastRaytest",t[t.UseGjkConvexCastRaytest=8]="UseGjkConvexCastRaytest"}(eIt||(eIt={})),function(t){t[t.DBG_NoDebug=0]="DBG_NoDebug",t[t.DBG_DrawWireframe=1]="DBG_DrawWireframe",t[t.DBG_DrawAabb=2]="DBG_DrawAabb",t[t.DBG_DrawFeaturesText=4]="DBG_DrawFeaturesText",t[t.DBG_DrawContactPoints=8]="DBG_DrawContactPoints",t[t.DBG_NoDeactivation=16]="DBG_NoDeactivation",t[t.DBG_NoHelpText=32]="DBG_NoHelpText",t[t.DBG_DrawText=64]="DBG_DrawText",t[t.DBG_ProfileTimings=128]="DBG_ProfileTimings",t[t.DBG_EnableSatComparison=256]="DBG_EnableSatComparison",t[t.DBG_DisableBulletLCP=512]="DBG_DisableBulletLCP",t[t.DBG_EnableCCD=1024]="DBG_EnableCCD",t[t.DBG_DrawConstraints=2048]="DBG_DrawConstraints",t[t.DBG_DrawConstraintLimits=4096]="DBG_DrawConstraintLimits",t[t.DBG_FastWireframe=8192]="DBG_FastWireframe",t[t.DBG_DrawNormals=16384]="DBG_DrawNormals",t[t.DBG_DrawFrames=32768]="DBG_DrawFrames",t[t.DBG_MAX_DEBUG_DRAW_MODE=32769]="DBG_MAX_DEBUG_DRAW_MODE"}(iIt||(iIt={}));var sIt={},aIt={BODY_CACHE_NAME:"body",CCT_CACHE_NAME:"cct"};EB.onPostInfrastructureInitDelegate.add((function(){return kB().then((function(){return Sa.hasFeature(Sa.Feature.WASM)?Promise.all([e.import("./bullet.release.wasm-66d88173.js"),e.import("./bullet.release.wasm-e702f478.js")]).then((function(t){var e,i,n=t[0].default,r=t[1].default;return e=n,i=r,new Promise((function(t,n){var r=function(t){return"[bullet]: bullet wasm lib load failed: "+t};e({instantiateWasm:function(t,e){NB(i,t).then((function(t){e(t.instance,t.module)})).catch((function(t){return n(r(t))}))}}).then((function(t){U("[bullet]:bullet wasm lib loaded."),sIt=t,globalThis.Bullet=sIt})).then(t).catch((function(t){return n(r(t))}))}))})):e.import("./bullet.release.asm-407d36ff.js").then((function(t){var e;return null!=(e=t.default)?e().then((function(t){U("[bullet]:bullet asm lib loaded."),sIt=t})):new Promise((function(t){t()}))}))})).catch((function(t){H(t)}))}));var oIt={type:"onTriggerEnter",selfCollider:null,otherCollider:null,impl:null},hIt={type:"onCollisionEnter",selfCollider:null,otherCollider:null,contacts:[],impl:null},uIt={type:"onControllerTriggerEnter",collider:null,characterController:null,impl:null},lIt=function(){function t(){this.BT_TRANSFORM_0=sIt.Transform_new(),this.BT_TRANSFORM_1=sIt.Transform_new(),this.BT_V3_0=sIt.Vec3_new(0,0,0),this.BT_V3_1=sIt.Vec3_new(0,0,0),this.BT_V3_2=sIt.Vec3_new(0,0,0),this.BT_QUAT_0=sIt.Quat_new(0,0,0,1)}return t.setWrapper=function(t,e,i){this.ROOT[e]||(this.ROOT[e]={}),this.ROOT[e][t]=i},t.delWrapper=function(t,e){delete this.ROOT[e][t]},t.getWrapper=function(t,e){return this.ROOT[e][t]},t.isNotEmptyShape=function(t){return t!==sIt.EmptyShape_static()},n(t,null,[{key:"instance",get:function(){return null==t._instance&&(t._instance=new t),t._instance}}]),t}();lIt._instance=void 0,lIt.ROOT={};var cIt=new gn,_It=new gn,fIt=new gn,dIt=new Bn,pIt=new Bn,mIt=new Vn;new Vn;var gIt,vIt,yIt,SIt,TIt,AIt,bIt,EIt,CIt,xIt,wIt,RIt,IIt=new En;function DIt(t,e){return sIt.Vec3_set(t,e.x,e.y,e.z),t}function BIt(t,e){var i=sIt.HEAPF32.subarray(e/4,e/4+3);return t.x=i[0],t.y=i[1],t.z=i[2],t}function MIt(t,e){return sIt.Quat_set(t,e.x,e.y,e.z,e.w),t}function PIt(t,e){var i=sIt.HEAPF32.subarray(e/4,e/4+4);return t.x=i[0],t.y=i[1],t.z=i[2],t.w=i[3],t}function OIt(t,e){for(var i=e.renderingSubMeshes.length,n=0;n<i;n++){var r=e.renderingSubMeshes[n],s=r.geometricInfo;if(s){var a=r.primitiveMode,o=s.positions,h=s.indices,u=lIt.instance.BT_V3_0,l=lIt.instance.BT_V3_1,c=lIt.instance.BT_V3_2;if(a===wc.TRIANGLE_LIST)for(var _=h.length,f=0;f<_;f+=3){var d=3*h[f],p=3*h[f+1],m=3*h[f+2];sIt.Vec3_set(u,o[d],o[d+1],o[d+2]),sIt.Vec3_set(l,o[p],o[p+1],o[p+2]),sIt.Vec3_set(c,o[m],o[m+1],o[m+2]),sIt.TriangleMesh_addTriangle(t,u,l,c,!1)}else if(a===wc.TRIANGLE_STRIP)for(var g=h.length-2,v=0,y=0;y<g;y+=1){var S=3*h[y-v],T=3*h[y+v+1],A=3*h[y+2];v=~v,sIt.Vec3_set(u,o[S],o[S+1],o[S+2]),sIt.Vec3_set(l,o[T],o[T+1],o[T+2]),sIt.Vec3_set(c,o[A],o[A+1],o[A+2]),sIt.TriangleMesh_addTriangle(t,u,l,c,!1)}else if(a===wc.TRIANGLE_FAN){var b=h.length-1,E=3*h[0];sIt.Vec3_set(u,o[E],o[E+1],o[E+2]);for(var C=1;C<b;C+=1){var x=3*h[C],w=3*h[C+1];sIt.Vec3_set(l,o[x],o[x+1],o[x+2]),sIt.Vec3_set(c,o[w],o[w+1],o[w+2]),sIt.TriangleMesh_addTriangle(t,u,l,c,!1)}}}}return t}function LIt(t,e){return t*e}aIt.CACHE=lIt;var NIt=t("fx",(gIt=eo("cc.PhysicsMaterial"),vIt=Lo(ni),yIt=Lo(ni),SIt=Lo(ni),TIt=Lo(ni),gIt(((RIt=function(t){function e(){var i;return(i=t.call(this)||this).id=void 0,i._friction=EIt&&EIt(),i._rollingFriction=CIt&&CIt(),i._spinningFriction=xIt&&xIt(),i._restitution=wIt&&wIt(),e.allMaterials.push(c(i)),i.id=e._idCounter++,i._uuid||(i._uuid="pm_"+i.id),i}s(e,t);var i=e.prototype;return i.clone=function(){var t=new e;return t._friction=this._friction,t._restitution=this._restitution,t._rollingFriction=this._rollingFriction,t._spinningFriction=this._spinningFriction,t},i.destroy=function(){if(t.prototype.destroy.call(this)){var i=e.allMaterials.indexOf(this);return i>=0&&e.allMaterials.splice(i,1),!0}return!1},i.setValues=function(t,i,n,r){var s=this._friction!==t||this._rollingFriction!==i||this._spinningFriction!==n||this._restitution!==r;this._friction=t,this._rollingFriction=i,this._spinningFriction=n,this._restitution=r,s&&this.emit(e.EVENT_UPDATE)},n(e,[{key:"friction",get:function(){return this._friction},set:function(t){Li(this._friction,t)||(this._friction=t,this.emit(e.EVENT_UPDATE))}},{key:"rollingFriction",get:function(){return this._rollingFriction},set:function(t){Li(this._rollingFriction,t)||(this._rollingFriction=t,this.emit(e.EVENT_UPDATE))}},{key:"spinningFriction",get:function(){return this._spinningFriction},set:function(t){Li(this._spinningFriction,t)||(this._spinningFriction=t,this.emit(e.EVENT_UPDATE))}},{key:"restitution",get:function(){return this._restitution},set:function(t){Li(this._restitution,t)||(this._restitution=t,this.emit(e.EVENT_UPDATE))}}]),e}(vd)).allMaterials=[],RIt.EVENT_UPDATE="event_update",RIt._idCounter=0,m((bIt=RIt).prototype,"friction",[vIt],Object.getOwnPropertyDescriptor(bIt.prototype,"friction"),bIt.prototype),m(bIt.prototype,"rollingFriction",[yIt],Object.getOwnPropertyDescriptor(bIt.prototype,"rollingFriction"),bIt.prototype),m(bIt.prototype,"spinningFriction",[SIt],Object.getOwnPropertyDescriptor(bIt.prototype,"spinningFriction"),bIt.prototype),m(bIt.prototype,"restitution",[TIt],Object.getOwnPropertyDescriptor(bIt.prototype,"restitution"),bIt.prototype),EIt=ja(bIt.prototype,"_friction",[lo],(function(){return.6})),CIt=ja(bIt.prototype,"_rollingFriction",[lo],(function(){return 0})),xIt=ja(bIt.prototype,"_spinningFriction",[lo],(function(){return 0})),wIt=ja(bIt.prototype,"_restitution",[lo],(function(){return 0})),AIt=bIt))||AIt)),FIt=t("fy",function(){function t(){this._hitPoint=new gn,this._hitNormal=new gn,this._distance=0,this._collider=null}var e=t.prototype;return e._assign=function(t,e,i,n){gn.copy(this._hitPoint,t),gn.copy(this._hitNormal,n),this._distance=e,this._collider=i},e.clone=function(){var e=new t;return gn.copy(e._hitPoint,this._hitPoint),gn.copy(e._hitNormal,this._hitNormal),e._distance=this._distance,e._collider=this._collider,e},n(t,[{key:"hitPoint",get:function(){return this._hitPoint}},{key:"distance",get:function(){return this._distance}},{key:"collider",get:function(){return this._collider}},{key:"hitNormal",get:function(){return this._hitNormal}}]),t}()),kIt=t("fz",function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._id=0,e}s(e,t);var i=e.prototype;return i._assign=function(e,i,n,r,s){void 0===s&&(s=0),t.prototype._assign.call(this,e,i,n,r),this._id=s},i.clone=function(){var t=new e;return gn.copy(t._hitPoint,this._hitPoint),gn.copy(t._hitNormal,this._hitNormal),t._distance=this._distance,t._collider=this._collider,t._id=this._id,t},n(e,[{key:"id",get:function(){return this._id}}]),e}(FIt));S.internal.PhysicsGroup=PEt;var GIt,VIt,UIt,zIt,HIt,WIt,XIt,jIt,YIt,qIt,KIt,QIt,ZIt,JIt,$It,tDt,eDt=t("ft",function(t){s(i,t);var e=i.prototype;function i(){var e;return(e=t.call(this)||this).raycastClosestResult=new FIt,e.raycastResults=[],e.lineStripCastClosestResult=new kIt,e.lineStripCastResults=[],e.sweepCastClosestResult=new FIt,e.sweepCastResults=[],e.collisionMatrix=new NEt(1),e.minVolumeSize=1e-5,e.useNodeChains=!1,e._enable=!0,e._allowSleep=!0,e._maxSubSteps=1,e._subStepCount=0,e._fixedTimeStep=1/60,e._autoSimulation=!0,e._accumulator=0,e._sleepThreshold=.1,e._gravity=new gn(0,-10,0),e._material=void 0,e.raycastOptions={group:-1,mask:-1,queryTrigger:!0,maxDistance:1e7},e.raycastResultPool=new Rs((function(){return new FIt}),1),e.sweepResultPool=new Rs((function(){return new FIt}),1),e}return e.setDefaultPhysicsMaterial=function(t){this._material=t,this.physicsWorld.setDefaultMaterial(this._material),this._material.on(NIt.EVENT_UPDATE,this._updateMaterial,this)},e.initDefaultMaterial=function(){var t=this;if(null!=this._material)return Promise.resolve();var e=bT.get("default-physics-material");if(!e)return console.error("PhysicsSystem initDefaultMaterial() Failed to load builtinMaterial"),Promise.resolve();var i=Me.querySettings(De.Category.PHYSICS,"defaultMaterial");return i?new Promise((function(t,e){vT.loadAny(i,(function(i,n){return!i&&n instanceof NIt?t(n):e(i)}))})).then((function(e){t.setDefaultPhysicsMaterial(e)})).catch((function(n){z(n),z("Failed to load user customized default physics material: "+i+", will fallback to built-in default physics material"),t.setDefaultPhysicsMaterial(e)})):(this.setDefaultPhysicsMaterial(e),Promise.resolve())},e.postUpdate=function(t){if(this.physicsWorld)if(this._enable){if(this._autoSimulation){for(this._subStepCount=0,this._accumulator+=t,ID.emit(wD.EVENT_BEFORE_PHYSICS);this._subStepCount<this._maxSubSteps;){if(!(this._accumulator>=this._fixedTimeStep)){this.physicsWorld.syncSceneToPhysics();break}this.physicsWorld.syncSceneToPhysics(),this.physicsWorld.step(this._fixedTimeStep),this.physicsWorld.emitEvents(),this.physicsWorld.syncAfterEvents(),this._accumulator-=this._fixedTimeStep,this._subStepCount++}ID.emit(wD.EVENT_AFTER_PHYSICS)}}else this.physicsWorld.syncSceneToPhysics()},e.resetConfiguration=function(t){var e=t?t.allowSleep:Me.querySettings(De.Category.PHYSICS,"allowSleep");"boolean"==typeof e&&(this._allowSleep=e);var i=t?t.fixedTimeStep:Me.querySettings(De.Category.PHYSICS,"fixedTimeStep");"number"==typeof i&&(this._fixedTimeStep=i);var n=t?t.maxSubSteps:Me.querySettings(De.Category.PHYSICS,"maxSubSteps");"number"==typeof n&&(this._maxSubSteps=n);var r=t?t.sleepThreshold:Me.querySettings(De.Category.PHYSICS,"sleepThreshold");"number"==typeof r&&(this._sleepThreshold=r);var s=t?t.autoSimulation:Me.querySettings(De.Category.PHYSICS,"autoSimulation");"boolean"==typeof s&&(this.autoSimulation=s);var a=t?t.gravity:Me.querySettings(De.Category.PHYSICS,"gravity");a&&gn.copy(this._gravity,a);var o=t?t.collisionMatrix:Me.querySettings(De.Category.PHYSICS,"collisionMatrix");if(o)for(var h in o)this.collisionMatrix[""+(1<<parseInt(h))]=o[h];var u=t?t.collisionGroups:Me.querySettings(De.Category.PHYSICS,"collisionGroups");u&&u instanceof Array&&(u.forEach((function(t){PEt[t.name]=1<<t.index})),Ee.update(PEt)),this.physicsWorld&&(this.physicsWorld.setGravity(this._gravity),this.physicsWorld.setAllowSleep(this._allowSleep))},e.resetAccumulator=function(t){void 0===t&&(t=0),this._accumulator=t},e.step=function(t,e,i){this.physicsWorld&&this.physicsWorld.step(t,e,i)},e.syncSceneToPhysics=function(){this.physicsWorld&&this.physicsWorld.syncSceneToPhysics()},e.emitEvents=function(){this.physicsWorld&&this.physicsWorld.emitEvents()},e.raycast=function(t,e,i,n){return void 0===e&&(e=4294967295),void 0===i&&(i=1e7),void 0===n&&(n=!0),!!this.physicsWorld&&(this.raycastResultPool.reset(),this.raycastResults.length=0,this.raycastOptions.mask=e>>>0,this.raycastOptions.maxDistance=i,this.raycastOptions.queryTrigger=n,this.physicsWorld.raycast(t,this.raycastOptions,this.raycastResultPool,this.raycastResults))},e.raycastClosest=function(t,e,i,n){return void 0===e&&(e=4294967295),void 0===i&&(i=1e7),void 0===n&&(n=!0),!!this.physicsWorld&&(this.raycastOptions.mask=e>>>0,this.raycastOptions.maxDistance=i,this.raycastOptions.queryTrigger=n,this.physicsWorld.raycastClosest(t,this.raycastOptions,this.raycastClosestResult))},e.lineStripCast=function(t,e,i,n){if(void 0===e&&(e=4294967295),void 0===i&&(i=1e7),void 0===n&&(n=!0),t.length<2)return!1;this.lineStripCastResults=[];for(var r=0,s=new gr,a=1;a<t.length&&!(r>i);++a){var o=t[a-1],h=t[a],u=new gn;gn.subtract(u,h,o);var l=gn.len(u);if(r+=l,gn.multiplyScalar(u,u,1/l),s.d=u,s.o=o,this.raycast(s,e,l,n))for(var c=0;c<this.raycastResults.length;c++){var _=this.raycastResults[c];if(0!==c||!gn.equals(o,_.hitPoint)){var f=new kIt;f._assign(_.hitPoint,_.distance,_.collider,_.hitNormal,a-1),this.lineStripCastResults.push(f)}}}return this.lineStripCastResults.length>0},e.lineStripCastClosest=function(t,e,i,n){if(void 0===e&&(e=4294967295),void 0===i&&(i=1e7),void 0===n&&(n=!0),t.length<2)return!1;for(var r=0,s=new gr,a=!1,o=1;o<t.length&&!(r>i);++o){var h=t[o-1],u=t[o],l=new gn;gn.subtract(l,u,h);var c=gn.len(l);if(r+=c,gn.multiplyScalar(l,l,1/c),s.d=l,s.o=h,a=this.raycastClosest(s,e,c,n)){var _=this.raycastClosestResult,f=new kIt;f._assign(_.hitPoint,_.distance,_.collider,_.hitNormal,o-1),this.lineStripCastClosestResult=f;break}}return a},e.sweepBox=function(t,e,i,n,r,s){return void 0===n&&(n=4294967295),void 0===r&&(r=1e7),void 0===s&&(s=!0),!!this.physicsWorld&&(this.sweepResultPool.reset(),this.sweepCastResults.length=0,this.raycastOptions.mask=n>>>0,this.raycastOptions.maxDistance=r,this.raycastOptions.queryTrigger=s,this.physicsWorld.sweepBox(t,e,i,this.raycastOptions,this.sweepResultPool,this.sweepCastResults))},e.sweepBoxClosest=function(t,e,i,n,r,s){return void 0===n&&(n=4294967295),void 0===r&&(r=1e7),void 0===s&&(s=!0),!!this.physicsWorld&&(this.raycastOptions.mask=n>>>0,this.raycastOptions.maxDistance=r,this.raycastOptions.queryTrigger=s,this.physicsWorld.sweepBoxClosest(t,e,i,this.raycastOptions,this.sweepCastClosestResult))},e.sweepSphere=function(t,e,i,n,r){return void 0===i&&(i=4294967295),void 0===n&&(n=1e7),void 0===r&&(r=!0),!!this.physicsWorld&&(this.sweepResultPool.reset(),this.sweepCastResults.length=0,this.raycastOptions.mask=i>>>0,this.raycastOptions.maxDistance=n,this.raycastOptions.queryTrigger=r,this.physicsWorld.sweepSphere(t,e,this.raycastOptions,this.sweepResultPool,this.sweepCastResults))},e.sweepSphereClosest=function(t,e,i,n,r){return void 0===i&&(i=4294967295),void 0===n&&(n=1e7),void 0===r&&(r=!0),!!this.physicsWorld&&(this.raycastOptions.mask=i>>>0,this.raycastOptions.maxDistance=n,this.raycastOptions.queryTrigger=r,this.physicsWorld.sweepSphereClosest(t,e,this.raycastOptions,this.sweepCastClosestResult))},e.sweepCapsule=function(t,e,i,n,r,s,a){return void 0===r&&(r=4294967295),void 0===s&&(s=1e7),void 0===a&&(a=!0),!!this.physicsWorld&&(this.sweepResultPool.reset(),this.sweepCastResults.length=0,this.raycastOptions.mask=r>>>0,this.raycastOptions.maxDistance=s,this.raycastOptions.queryTrigger=a,this.physicsWorld.sweepCapsule(t,e,i,n,this.raycastOptions,this.sweepResultPool,this.sweepCastResults))},e.sweepCapsuleClosest=function(t,e,i,n,r,s,a){return void 0===r&&(r=4294967295),void 0===s&&(s=1e7),void 0===a&&(a=!0),!!this.physicsWorld&&(this.raycastOptions.mask=r>>>0,this.raycastOptions.maxDistance=s,this.raycastOptions.queryTrigger=a,this.physicsWorld.sweepCapsuleClosest(t,e,i,n,this.raycastOptions,this.sweepCastClosestResult))},e._updateMaterial=function(){this.physicsWorld&&this.physicsWorld.setDefaultMaterial(this._material)},i.constructAndRegister=function(){var t;if((null===(t=Me.querySettings(De.Category.PHYSICS,"enabled"))||void 0===t||t)&&!i._instance){var e=new i;i._instance=e,e.resetConfiguration(),function(t){if(xRt||(xRt=t),WRt.runInEditor&&!WRt.physicsWorld){U("[PHYSICS]: using "+WRt.id+".");var e=WRt.physicsWorld=qRt();e.setGravity(xRt.gravity),e.setAllowSleep(xRt.allowSleep)}}(e),ID.registerSystem(i.ID,e,e.priority),EB.onPostProjectInitDelegate.add(e.initDefaultMaterial.bind(e))}},n(i,[{key:"enable",get:function(){return this._enable},set:function(t){this._enable=t}},{key:"allowSleep",get:function(){return this._allowSleep},set:function(t){this._allowSleep=t,this.physicsWorld&&this.physicsWorld.setAllowSleep(t)}},{key:"maxSubSteps",get:function(){return this._maxSubSteps},set:function(t){this._maxSubSteps=t}},{key:"fixedTimeStep",get:function(){return this._fixedTimeStep},set:function(t){this._fixedTimeStep=t}},{key:"gravity",get:function(){return this._gravity},set:function(t){this._gravity.set(t),this.physicsWorld&&this.physicsWorld.setGravity(t)}},{key:"sleepThreshold",get:function(){return this._sleepThreshold},set:function(t){this._sleepThreshold=t}},{key:"autoSimulation",get:function(){return this._autoSimulation},set:function(t){this._autoSimulation=t}},{key:"defaultMaterial",get:function(){return this._material}},{key:"physicsWorld",get:function(){return WRt.physicsWorld}},{key:"debugDrawFlags",get:function(){return this.physicsWorld.debugDrawFlags},set:function(t){this.physicsWorld.debugDrawFlags=t}},{key:"debugDrawConstraintSize",get:function(){return this.physicsWorld.debugDrawConstraintSize},set:function(t){this.physicsWorld.debugDrawConstraintSize=t}}],[{key:"PHYSICS_NONE",get:function(){return!WRt.id}},{key:"PHYSICS_BUILTIN",get:function(){return"builtin"===WRt.id}},{key:"PHYSICS_CANNON",get:function(){return"cannon.js"===WRt.id}},{key:"PHYSICS_BULLET",get:function(){return"bullet"===WRt.id}},{key:"PHYSICS_PHYSX",get:function(){return"physx"===WRt.id}},{key:"PhysicsGroup",get:function(){return PEt}},{key:"instance",get:function(){return i._instance}}]),i}(Ml));eDt.ID="PHYSICS",eDt._instance=null,ID.once(wD.EVENT_INIT,(function(){eDt.constructAndRegister()}));var iDt,nDt,rDt,sDt,aDt,oDt,hDt,uDt,lDt,cDt,_Dt,fDt=t("fu",(GIt=eo("cc.RigidBody"),VIt=no(-1),UIt=Lo(eDt.PhysicsGroup),zIt=Lo(EEt),GIt(HIt=ro(HIt=VIt(((tDt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._body=null,e._group=XIt&&XIt(),e._type=jIt&&jIt(),e._mass=YIt&&YIt(),e._allowSleep=qIt&&qIt(),e._linearDamping=KIt&&KIt(),e._angularDamping=QIt&&QIt(),e._useGravity=ZIt&&ZIt(),e._linearFactor=JIt&&JIt(),e._angularFactor=$It&&$It(),e}s(e,t);var i=e.prototype;return i.onLoad=function(){WRt.runInEditor&&(this._body=YRt(WRt.wrapper.RigidBody,HRt.RigidBody)?KRt:new WRt.wrapper.RigidBody,this._body.initialize(this))},i.onEnable=function(){this._body&&this._body.onEnable()},i.onDisable=function(){this._body&&this._body.onDisable()},i.onDestroy=function(){this._body&&this._body.onDestroy()},i.applyForce=function(t,e){this._isInitialized&&this._body.applyForce(t,e)},i.applyLocalForce=function(t,e){this._isInitialized&&this._body.applyLocalForce(t,e)},i.applyImpulse=function(t,e){this._isInitialized&&this._body.applyImpulse(t,e)},i.applyLocalImpulse=function(t,e){this._isInitialized&&this._body.applyLocalImpulse(t,e)},i.applyTorque=function(t){this._isInitialized&&this._body.applyTorque(t)},i.applyLocalTorque=function(t){this._isInitialized&&this._body.applyLocalTorque(t)},i.wakeUp=function(){this._isInitialized&&this._body.wakeUp()},i.sleep=function(){this._isInitialized&&this._body.sleep()},i.clearState=function(){this._isInitialized&&this._body.clearState()},i.clearForces=function(){this._isInitialized&&this._body.clearForces()},i.clearVelocity=function(){this._isInitialized&&this._body.clearVelocity()},i.getLinearVelocity=function(t){this._isInitialized&&this._body.getLinearVelocity(t)},i.setLinearVelocity=function(t){this._isInitialized&&this._body.setLinearVelocity(t)},i.getAngularVelocity=function(t){this._isInitialized&&this._body.getAngularVelocity(t)},i.setAngularVelocity=function(t){this._isInitialized&&this._body.setAngularVelocity(t)},i.getGroup=function(){return this._isInitialized?this._body.getGroup():0},i.setGroup=function(t){this._isInitialized&&this._body.setGroup(t)},i.addGroup=function(t){this._isInitialized&&this._body.addGroup(t)},i.removeGroup=function(t){this._isInitialized&&this._body.removeGroup(t)},i.getMask=function(){return this._isInitialized?this._body.getMask():0},i.setMask=function(t){this._isInitialized&&this._body.setMask(t)},i.addMask=function(t){this._isInitialized&&this._body.addMask(t)},i.removeMask=function(t){this._isInitialized&&this._body.removeMask(t)},n(e,[{key:"group",get:function(){return this._group},set:function(t){this._group=t,this._body&&this._body.getGroup()!==t&&this._body.setGroup(t)}},{key:"type",get:function(){return this._type},set:function(t){this._type!==t&&(this._type=t,this._body&&this._body.setType(t))}},{key:"mass",get:function(){return this._mass},set:function(t){this._mass!==t&&(t=t<=0?1e-4:t,this._mass=t,this._body&&this._body.setMass(t))}},{key:"allowSleep",get:function(){return this._allowSleep},set:function(t){this._allowSleep=t,this._body&&this._body.setAllowSleep(t)}},{key:"linearDamping",get:function(){return this._linearDamping},set:function(t){this._linearDamping=t,this._body&&this._body.setLinearDamping(t)}},{key:"angularDamping",get:function(){return this._angularDamping},set:function(t){this._angularDamping=t,this._body&&this._body.setAngularDamping(t)}},{key:"useGravity",get:function(){return this._useGravity},set:function(t){this._useGravity=t,this._body&&this._body.useGravity(t)}},{key:"linearFactor",get:function(){return this._linearFactor},set:function(t){gn.copy(this._linearFactor,t),this._body&&this._body.setLinearFactor(this._linearFactor)}},{key:"angularFactor",get:function(){return this._angularFactor},set:function(t){gn.copy(this._angularFactor,t),this._body&&this._body.setAngularFactor(this._angularFactor)}},{key:"sleepThreshold",get:function(){return this._isInitialized?this._body.getSleepThreshold():.1},set:function(t){this._isInitialized&&this._body.setSleepThreshold(t)}},{key:"useCCD",get:function(){return!!this._isInitialized&&this._body.isUsingCCD()},set:function(t){this._isInitialized&&this._body.useCCD(t)}},{key:"isAwake",get:function(){return!!this._isInitialized&&this._body.isAwake}},{key:"isSleepy",get:function(){return!!this._isInitialized&&this._body.isSleepy}},{key:"isSleeping",get:function(){return!!this._isInitialized&&this._body.isSleeping}},{key:"isStatic",get:function(){return this._type===EEt.STATIC},set:function(t){t&&this.isStatic||!t&&!this.isStatic||(this.type=t?EEt.STATIC:EEt.DYNAMIC)}},{key:"isDynamic",get:function(){return this._type===EEt.DYNAMIC},set:function(t){t&&this.isDynamic||!t&&!this.isDynamic||(this.type=t?EEt.DYNAMIC:EEt.KINEMATIC)}},{key:"isKinematic",get:function(){return this._type===EEt.KINEMATIC},set:function(t){t&&this.isKinematic||!t&&!this.isKinematic||(this.type=t?EEt.KINEMATIC:EEt.DYNAMIC)}},{key:"body",get:function(){return this._body}},{key:"_isInitialized",get:function(){var t=null===this._body;return t&&H("[Physics]: This component has not been call onLoad yet, please make sure the node has been added to the scene."),!t}}]),e}(mp)).Type=EEt,m((WIt=tDt).prototype,"group",[UIt],Object.getOwnPropertyDescriptor(WIt.prototype,"group"),WIt.prototype),m(WIt.prototype,"type",[zIt],Object.getOwnPropertyDescriptor(WIt.prototype,"type"),WIt.prototype),XIt=ja(WIt.prototype,"_group",[lo],(function(){return eDt.PhysicsGroup.DEFAULT})),jIt=ja(WIt.prototype,"_type",[lo],(function(){return EEt.DYNAMIC})),YIt=ja(WIt.prototype,"_mass",[lo],(function(){return 1})),qIt=ja(WIt.prototype,"_allowSleep",[lo],(function(){return!0})),KIt=ja(WIt.prototype,"_linearDamping",[lo],(function(){return.1})),QIt=ja(WIt.prototype,"_angularDamping",[lo],(function(){return.1})),ZIt=ja(WIt.prototype,"_useGravity",[lo],(function(){return!0})),JIt=ja(WIt.prototype,"_linearFactor",[lo],(function(){return new gn(1,1,1)})),$It=ja(WIt.prototype,"_angularFactor",[lo],(function(){return new gn(1,1,1)})),HIt=WIt))||HIt)||HIt)||HIt));fDt||t("fu",fDt={});var dDt,pDt,mDt,gDt,vDt,yDt=t("fA",(iDt=eo("cc.Collider"),nDt=Lo(fDt),rDt=Lo(NIt),sDt=Lo(gn),aDt=Lo(NIt),iDt(((_Dt=function(t){function e(e){var i;return(i=t.call(this)||this).type=void 0,i._shape=null,i._aabb=null,i._boundingSphere=null,i._isSharedMaterial=!0,i._needTriggerEvent=!1,i._needCollisionEvent=!1,i._material=uDt&&uDt(),i._isTrigger=lDt&&lDt(),i._center=cDt&&cDt(),i.type=e,i}s(e,t);var i=e.prototype;return i.on=function(e,i,n,r){var s=t.prototype.on.call(this,e,i,n,r);return this._updateNeedEvent(e),s},i.off=function(e,i,n){t.prototype.off.call(this,e,i,n),this._updateNeedEvent()},i.once=function(e,i,n){var r=t.prototype.once.call(this,e,i,n);return this._updateNeedEvent(e),r},i.removeAll=function(e){t.prototype.removeAll.call(this,e),this._updateNeedEvent()},i.getGroup=function(){return this._isInitialized?this._shape.getGroup():0},i.setGroup=function(t){this._isInitialized&&this._shape.setGroup(t)},i.addGroup=function(t){this._isInitialized&&this._shape.addGroup(t)},i.removeGroup=function(t){this._isInitialized&&this._shape.removeGroup(t)},i.getMask=function(){return this._isInitialized?this._shape.getMask():0},i.setMask=function(t){this._isInitialized&&this._shape.setMask(t)},i.addMask=function(t){this._isInitialized&&this._shape.addMask(t)},i.removeMask=function(t){this._isInitialized&&this._shape.removeMask(t)},i.onLoad=function(){WRt.runInEditor&&(this.sharedMaterial=this._material,this._shape=function(t){return QRt.INITED||(QRt.INITED=!0,QRt[REt.BOX]=function(){return YRt(WRt.wrapper.BoxShape,HRt.BoxCollider)?ZRt:new WRt.wrapper.BoxShape},QRt[REt.SPHERE]=function(){return YRt(WRt.wrapper.SphereShape,HRt.SphereCollider)?ZRt:new WRt.wrapper.SphereShape},QRt[REt.CAPSULE]=function(){return YRt(WRt.wrapper.CapsuleShape,HRt.CapsuleCollider)?ZRt:new WRt.wrapper.CapsuleShape},QRt[REt.CYLINDER]=function(){return YRt(WRt.wrapper.CylinderShape,HRt.CylinderCollider)?ZRt:new WRt.wrapper.CylinderShape},QRt[REt.CONE]=function(){return YRt(WRt.wrapper.ConeShape,HRt.ConeCollider)?ZRt:new WRt.wrapper.ConeShape},QRt[REt.MESH]=function(){return YRt(WRt.wrapper.TrimeshShape,HRt.MeshCollider)?ZRt:new WRt.wrapper.TrimeshShape},QRt[REt.TERRAIN]=function(){return YRt(WRt.wrapper.TerrainShape,HRt.TerrainCollider)?ZRt:new WRt.wrapper.TerrainShape},QRt[REt.SIMPLEX]=function(){return YRt(WRt.wrapper.SimplexShape,HRt.SimplexCollider)?ZRt:new WRt.wrapper.SimplexShape},QRt[REt.PLANE]=function(){return YRt(WRt.wrapper.PlaneShape,HRt.PlaneCollider)?ZRt:new WRt.wrapper.PlaneShape}),QRt[t]()}(this.type),this._shape.initialize(this),this._shape.onLoad())},i.onEnable=function(){this._shape&&this._shape.onEnable()},i.onDisable=function(){this._shape&&this._shape.onDisable()},i.onDestroy=function(){this._shape&&(this._needTriggerEvent=!1,this._needCollisionEvent=!1,this._shape.updateEventListener(),this._material&&this._material.off(NIt.EVENT_UPDATE,this._updateMaterial,this),this._shape.onDestroy()),this._boundingSphere&&this._boundingSphere.destroy()},i._updateMaterial=function(){this._shape&&this._shape.setMaterial(this._material)},i._updateNeedEvent=function(t){this.isValid&&(void 0!==t?("onCollisionEnter"!==t&&"onCollisionStay"!==t&&"onCollisionExit"!==t||(this._needCollisionEvent=!0),"onTriggerEnter"!==t&&"onTriggerStay"!==t&&"onTriggerExit"!==t&&"onControllerTriggerEnter"!==t&&"onControllerTriggerStay"!==t&&"onControllerTriggerExit"!==t||(this._needTriggerEvent=!0)):(this.hasEventListener("onTriggerEnter")||this.hasEventListener("onTriggerStay")||this.hasEventListener("onTriggerExit")||this.hasEventListener("onControllerTriggerEnter")||this.hasEventListener("onControllerTriggerStay")||this.hasEventListener("onControllerTriggerExit")||(this._needTriggerEvent=!1),this.hasEventListener("onCollisionEnter")||this.hasEventListener("onCollisionStay")||this.hasEventListener("onCollisionExit")||(this._needCollisionEvent=!1)),this._shape&&this._shape.updateEventListener())},n(e,[{key:"attachedRigidBody",get:function(){return t=this.node,(e=t.getComponent(fDt))&&e.isValid?e:null;var t,e}},{key:"sharedMaterial",get:function(){return this._material},set:function(t){this.material=t}},{key:"material",get:function(){return this._isSharedMaterial&&this._material&&(this._material.off(NIt.EVENT_UPDATE,this._updateMaterial,this),this._material=this._material.clone(),this._material.on(NIt.EVENT_UPDATE,this._updateMaterial,this),this._isSharedMaterial=!1),this._material},set:function(t){this._shape?(t&&this._material?this._material.id!==t.id&&(this._material.off(NIt.EVENT_UPDATE,this._updateMaterial,this),t.on(NIt.EVENT_UPDATE,this._updateMaterial,this),this._isSharedMaterial=!1,this._material=t):t&&!this._material?(t.on(NIt.EVENT_UPDATE,this._updateMaterial,this),this._material=t):!t&&this._material&&(this._material.off(NIt.EVENT_UPDATE,this._updateMaterial,this),this._material=t),this._updateMaterial()):this._material=t}},{key:"isTrigger",get:function(){return this._isTrigger},set:function(t){this._isTrigger=t,this._shape&&this._shape.setAsTrigger(this._isTrigger)}},{key:"center",get:function(){return this._center},set:function(t){gn.copy(this._center,t),this._shape&&this._shape.setCenter(this._center)}},{key:"shape",get:function(){return this._shape}},{key:"worldBounds",get:function(){return null==this._aabb&&(this._aabb=new Ra),this._shape&&this._shape.getAABB(this._aabb),this._aabb}},{key:"boundingSphere",get:function(){return null==this._boundingSphere&&(this._boundingSphere=new Ir),this._shape&&this._shape.getBoundingSphere(this._boundingSphere),this._boundingSphere}},{key:"needTriggerEvent",get:function(){return this._needTriggerEvent}},{key:"needCollisionEvent",get:function(){return this._needCollisionEvent}},{key:"_isInitialized",get:function(){var t=null===this._shape;return t&&H("[Physics]: This component has not been call onLoad yet, please make sure the node has been added to the scene."),!t}}]),e}(zs(mp))).Type=REt,_Dt.Axis=CEt,m((hDt=_Dt).prototype,"attachedRigidBody",[nDt],Object.getOwnPropertyDescriptor(hDt.prototype,"attachedRigidBody"),hDt.prototype),m(hDt.prototype,"sharedMaterial",[rDt],Object.getOwnPropertyDescriptor(hDt.prototype,"sharedMaterial"),hDt.prototype),m(hDt.prototype,"center",[sDt],Object.getOwnPropertyDescriptor(hDt.prototype,"center"),hDt.prototype),uDt=ja(hDt.prototype,"_material",[aDt],(function(){return null})),lDt=ja(hDt.prototype,"_isTrigger",[lo],(function(){return!1})),cDt=ja(hDt.prototype,"_center",[lo],(function(){return new gn})),oDt=hDt))||oDt));yDt||t("fA",yDt={});var SDt,TDt,ADt,bDt,EDt,CDt,xDt,wDt,RDt,IDt,DDt,BDt,MDt,PDt,ODt,LDt,NDt,FDt,kDt,GDt,VDt,UDt,zDt,HDt,WDt,XDt,jDt,YDt,qDt,KDt,QDt,ZDt,JDt,$Dt,tBt,eBt,iBt,nBt,rBt,sBt,aBt,oBt,hBt,uBt,lBt,cBt,_Bt,fBt,dBt,pBt,mBt,gBt,vBt,yBt,SBt,TBt,ABt,bBt,EBt,CBt,xBt,wBt,RBt,IBt,DBt,BBt,MBt=t("fB",(dDt=eo("cc.BoxCollider"),pDt=Lo(gn),dDt((m((gDt=function(t){function e(){var e;return(e=t.call(this,REt.BOX)||this)._size=vDt&&vDt(),e}return s(e,t),n(e,[{key:"size",get:function(){return this._size},set:function(t){gn.strictEquals(this._size,t)||(gn.copy(this._size,t),Xq(this._size),this._shape&&this.shape.updateSize())}},{key:"shape",get:function(){return this._shape}}]),e}(yDt)).prototype,"size",[pDt],Object.getOwnPropertyDescriptor(gDt.prototype,"size"),gDt.prototype),vDt=ja(gDt.prototype,"_size",[lo],(function(){return new gn(1,1,1)})),mDt=gDt))||mDt)),PBt=t("fC",eo("cc.SphereCollider")((TDt=function(t){function e(){var e;return(e=t.call(this,REt.SPHERE)||this)._radius=ADt&&ADt(),e}return s(e,t),n(e,[{key:"radius",get:function(){return this._radius},set:function(t){this._radius!==t&&(this._radius=Math.abs(t),this._shape&&this.shape.updateRadius())}},{key:"shape",get:function(){return this._shape}}]),e}(yDt),ADt=ja(TDt.prototype,"_radius",[lo],(function(){return.5})),SDt=TDt))||SDt),OBt=t("fD",(bDt=eo("cc.CapsuleCollider"),EDt=Lo(CEt),bDt((m((xDt=function(t){function e(){var e;return(e=t.call(this,REt.CAPSULE)||this)._radius=wDt&&wDt(),e._cylinderHeight=RDt&&RDt(),e._direction=IDt&&IDt(),e}s(e,t);var i=e.prototype;return i._getRadiusScale=function(){if(null==this.node)return 1;var t=this.node.worldScale;return this._direction===CEt.Y_AXIS?Math.abs(tn(t.x,t.z)):this._direction===CEt.X_AXIS?Math.abs(tn(t.y,t.z)):Math.abs(tn(t.x,t.y))},i._getHeightScale=function(){if(null==this.node)return 1;var t=this.node.worldScale;return this._direction===CEt.Y_AXIS?Math.abs(t.y):this._direction===CEt.X_AXIS?Math.abs(t.x):Math.abs(t.z)},n(e,[{key:"radius",get:function(){return this._radius},set:function(t){this._radius!==t&&(this._radius=Math.abs(t),this._shape&&this.shape.setRadius(t))}},{key:"cylinderHeight",get:function(){return this._cylinderHeight},set:function(t){this._cylinderHeight!==t&&(this._cylinderHeight=Math.abs(t),this._shape&&this.shape.setCylinderHeight(t))}},{key:"direction",get:function(){return this._direction},set:function(t){(t=Math.floor(t))<CEt.X_AXIS||t>CEt.Z_AXIS||this._direction!==t&&(this._direction=t,this._shape&&this.shape.setDirection(t))}},{key:"height",get:function(){return 2*this._radius+this._cylinderHeight},set:function(t){var e=t-2*this._radius;e<0&&(e=0),this.cylinderHeight=e}},{key:"worldHeight",get:function(){return 2*this._radius*this._getRadiusScale()+this._cylinderHeight*this._getHeightScale()}},{key:"shape",get:function(){return this._shape}}]),e}(yDt)).prototype,"direction",[EDt],Object.getOwnPropertyDescriptor(xDt.prototype,"direction"),xDt.prototype),wDt=ja(xDt.prototype,"_radius",[lo],(function(){return.5})),RDt=ja(xDt.prototype,"_cylinderHeight",[lo],(function(){return 1})),IDt=ja(xDt.prototype,"_direction",[lo],(function(){return CEt.Y_AXIS})),CDt=xDt))||CDt)),LBt=t("fF",(DDt=eo("cc.CylinderCollider"),BDt=Lo(CEt),DDt((m((PDt=function(t){function e(){var e;return(e=t.call(this,REt.CYLINDER)||this)._radius=ODt&&ODt(),e._height=LDt&&LDt(),e._direction=NDt&&NDt(),e}return s(e,t),n(e,[{key:"radius",get:function(){return this._radius},set:function(t){this._radius!==t&&(this._radius=Math.abs(t),this._shape&&this.shape.setRadius(t))}},{key:"height",get:function(){return this._height},set:function(t){this._height!==t&&(this._height=Math.abs(t),this._shape&&this.shape.setHeight(t))}},{key:"direction",get:function(){return this._direction},set:function(t){this._direction!==t&&(t<CEt.X_AXIS||t>CEt.Z_AXIS||(this._direction=t,this._shape&&this.shape.setDirection(t)))}},{key:"shape",get:function(){return this._shape}}]),e}(yDt)).prototype,"direction",[BDt],Object.getOwnPropertyDescriptor(PDt.prototype,"direction"),PDt.prototype),ODt=ja(PDt.prototype,"_radius",[lo],(function(){return.5})),LDt=ja(PDt.prototype,"_height",[lo],(function(){return 2})),NDt=ja(PDt.prototype,"_direction",[lo],(function(){return CEt.Y_AXIS})),MDt=PDt))||MDt)),NBt=t("fG",(FDt=eo("cc.ConeCollider"),kDt=Lo(CEt),FDt((m((VDt=function(t){function e(){var e;return(e=t.call(this,REt.CONE)||this)._radius=UDt&&UDt(),e._height=zDt&&zDt(),e._direction=HDt&&HDt(),e}return s(e,t),n(e,[{key:"radius",get:function(){return this._radius},set:function(t){this._radius!==t&&(this._radius=Math.abs(t),this._shape&&this.shape.setRadius(t))}},{key:"height",get:function(){return this._height},set:function(t){this._height!==t&&(t<0&&(t=0),this._height=t,this._shape&&this.shape.setHeight(t))}},{key:"direction",get:function(){return this._direction},set:function(t){this._direction!==t&&(t<CEt.X_AXIS||t>CEt.Z_AXIS||(this._direction=t,this._shape&&this.shape.setDirection(t)))}},{key:"shape",get:function(){return this._shape}}]),e}(yDt)).prototype,"direction",[kDt],Object.getOwnPropertyDescriptor(VDt.prototype,"direction"),VDt.prototype),UDt=ja(VDt.prototype,"_radius",[lo],(function(){return.5})),zDt=ja(VDt.prototype,"_height",[lo],(function(){return 1})),HDt=ja(VDt.prototype,"_direction",[lo],(function(){return CEt.Y_AXIS})),GDt=VDt))||GDt)),FBt=t("fE",(WDt=eo("cc.MeshCollider"),XDt=Lo(ZB),WDt((m((YDt=function(t){function e(){var e;return(e=t.call(this,REt.MESH)||this)._mesh=qDt&&qDt(),e._convex=KDt&&KDt(),e}return s(e,t),e.prototype.onEnable=function(){if(t.prototype.onEnable.call(this),this.node){var e=this.node.getComponent(fDt);e&&e.isValid&&e.type===EEt.DYNAMIC&&!this.convex&&tt(9630,this.node.name)}},n(e,[{key:"mesh",get:function(){return this._mesh},set:function(t){this._mesh!==t&&(this._mesh=t,this._shape&&this.shape.setMesh(this._mesh))}},{key:"convex",get:function(){return this._convex},set:function(t){this._convex!==t&&(this._convex=t,this._shape&&this._mesh&&this.shape.setMesh(this._mesh))}},{key:"shape",get:function(){return this._shape}}]),e}(yDt)).prototype,"mesh",[XDt],Object.getOwnPropertyDescriptor(YDt.prototype,"mesh"),YDt.prototype),qDt=ja(YDt.prototype,"_mesh",[lo],(function(){return null})),KDt=ja(YDt.prototype,"_convex",[lo],(function(){return!1})),jDt=YDt))||jDt)),kBt=t("fw",eo("cc.ConstantForce")(QDt=io(fDt)(QDt=ro((ZDt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._rigidBody=null,e._force=JDt&&JDt(),e._localForce=$Dt&&$Dt(),e._torque=tBt&&tBt(),e._localTorque=eBt&&eBt(),e._mask=0,e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._rigidBody=this.node.getComponent(fDt),this._maskUpdate(this._force,1),this._maskUpdate(this._localForce,2),this._maskUpdate(this._torque,4),this._maskUpdate(this._localTorque,8)},i.lateUpdate=function(){null!=this._rigidBody&&0!==this._mask&&(1&this._mask&&this._rigidBody.applyForce(this._force),2&this._mask&&this._rigidBody.applyLocalForce(this.localForce),4&this._mask&&this._rigidBody.applyTorque(this._torque),8&this._mask&&this._rigidBody.applyLocalTorque(this._localTorque))},i._maskUpdate=function(t,e){t.strictEquals(gn.ZERO)?this._mask&=~e:this._mask|=e},n(e,[{key:"force",get:function(){return this._force},set:function(t){gn.copy(this._force,t),this._maskUpdate(this._force,1)}},{key:"localForce",get:function(){return this._localForce},set:function(t){gn.copy(this._localForce,t),this._maskUpdate(this.localForce,2)}},{key:"torque",get:function(){return this._torque},set:function(t){gn.copy(this._torque,t),this._maskUpdate(this._torque,4)}},{key:"localTorque",get:function(){return this._localTorque},set:function(t){gn.copy(this._localTorque,t),this._maskUpdate(this._localTorque,8)}}]),e}(mp),JDt=ja(ZDt.prototype,"_force",[lo],(function(){return new gn})),$Dt=ja(ZDt.prototype,"_localForce",[lo],(function(){return new gn})),tBt=ja(ZDt.prototype,"_torque",[lo],(function(){return new gn})),eBt=ja(ZDt.prototype,"_localTorque",[lo],(function(){return new gn})),QDt=ZDt))||QDt)||QDt)||QDt),GBt=(t("g8",4),t("g9",4)),VBt=t("ga",256),UBt=t("gb",32),zBt=t("gc",33),HBt=t("gd",8),WBt=t("ge",32768),XBt=t("gf",1/128),jBt=t("gg",1/512),YBt=t("gh",-WBt*XBt),qBt=t("gi",(65535-WBt)*XBt),KBt=(t("gj",0),t("gk",1),t("gl",2),t("gm",3),t("gn",16842753)),QBt=t("go",16842754),ZBt=t("gp",16842755),JBt=t("gq",16842756),$Bt=t("gr",16842757),tMt=t("gs",16842758),eMt=t("gt",16842759),iMt=t("gu",16842760),nMt=t("gv",16843025),rMt=function(){function t(){this.length=0,this.buffer=new Uint8Array(2048),this._buffView=new DataView(this.buffer.buffer),this._seekPos=0}var e=t.prototype;return e.reserve=function(t){if(!(this.buffer.byteLength>t)){for(var e=this.buffer.byteLength;e<t;)e+=e;for(var i=new Uint8Array(e),n=0;n<this.length;++n)i[n]=this.buffer[n];this.buffer=i,this._buffView=new DataView(this.buffer.buffer)}},e.assign=function(t){this.buffer=t,this.length=t.length,this._seekPos=t.byteOffset,this._buffView=new DataView(t.buffer)},e.writeInt8=function(t){this.reserve(this.length+1),this._buffView.setInt8(this.length,t),this.length+=1},e.writeInt16=function(t){this.reserve(this.length+2),this._buffView.setInt16(this.length,t,!0),this.length+=2},e.writeInt32=function(t){this.reserve(this.length+4),this._buffView.setInt32(this.length,t,!0),this.length+=4},e.writeIntArray=function(t){this.reserve(this.length+4*t.length);for(var e=0;e<t.length;++e)this._buffView.setInt32(this.length+4*e,t[e],!0);this.length+=4*t.length},e.writeFloat=function(t){this.reserve(this.length+4),this._buffView.setFloat32(this.length,t,!0),this.length+=4},e.writeFloatArray=function(t){this.reserve(this.length+4*t.length);for(var e=0;e<t.length;++e)this._buffView.setFloat32(this.length+4*e,t[e],!0);this.length+=4*t.length},e.writeDouble=function(t){this.reserve(this.length+8),this._buffView.setFloat64(this.length,t,!0),this.length+=8},e.writeDoubleArray=function(t){this.reserve(this.length+8*t.length);for(var e=0;e<t.length;++e)this._buffView.setFloat64(this.length+8*e,t[e],!0);this.length+=8*t.length},e.writeString=function(t){this.reserve(this.length+t.length+4),this._buffView.setInt32(this.length,t.length,!0);for(var e=0;e<t.length;++e)this._buffView.setInt8(this.length+4+e,t.charCodeAt(e));this.length+=t.length+4},e.readInt8=function(){var t=this._buffView.getInt8(this._seekPos);return this._seekPos+=1,t},e.readInt16=function(){var t=this._buffView.getInt16(this._seekPos,!0);return this._seekPos+=2,t},e.readInt=function(){var t=this._buffView.getInt32(this._seekPos,!0);return this._seekPos+=4,t},e.readIntArray=function(t){for(var e=0;e<t.length;++e)t[e]=this._buffView.getInt32(this._seekPos+4*e,!0);return this._seekPos+=4*t.length,t},e.readFloat=function(){var t=this._buffView.getFloat32(this._seekPos,!0);return this._seekPos+=4,t},e.readFloatArray=function(t){for(var e=0;e<t.length;++e)t[e]=this._buffView.getFloat32(this._seekPos+4*e,!0);return this._seekPos+=4*t.length,t},e.readDouble=function(){var t=this._buffView.getFloat64(this._seekPos,!0);return this._seekPos+=8,t},e.readDoubleArray=function(t){for(var e=0;e<t.length;++e)t[e]=this._buffView.getFloat64(this._seekPos+4*e,!0);return this._seekPos+=8*t.length,t},e.readString=function(){for(var t=this.readInt(),e="",i=0;i<t;++i)e+=String.fromCharCode(this.readInt8());return e},t}(),sMt=t("gw",eo("cc.TerrainLayerInfo")((nBt=function(){this.slot=rBt&&rBt(),this.tileSize=sBt&&sBt(),this.detailMap=aBt&&aBt(),this.normalMap=oBt&&oBt(),this.roughness=hBt&&hBt(),this.metallic=uBt&&uBt()},rBt=ja(nBt.prototype,"slot",[lo],(function(){return 0})),sBt=ja(nBt.prototype,"tileSize",[lo],(function(){return 1})),aBt=ja(nBt.prototype,"detailMap",[lo],(function(){return null})),oBt=ja(nBt.prototype,"normalMap",[lo],(function(){return null})),hBt=ja(nBt.prototype,"roughness",[lo],(function(){return 1})),uBt=ja(nBt.prototype,"metallic",[lo],(function(){return 0})),iBt=nBt))||iBt),aMt=t("gx",eo("cc.TerrainLayerBinaryInfo")(lBt=function(){this.slot=0,this.tileSize=1,this.roughness=1,this.metallic=0,this.detailMapId="",this.normalMapId=""})||lBt),oMt=t("gy",eo("cc.TerrainAsset")((_Bt=function(t){function e(){var e;return(e=t.call(this)||this)._version=0,e._data=null,e._tileSize=1,e._blockCount=[1,1],e._weightMapSize=128,e._lightMapSize=128,e._heights=new Uint16Array,e._normals=new Float32Array,e._weights=new Uint8Array,e._layerBuffer=[-1,-1,-1,-1],e._layerBinaryInfos=[],e._layerInfos=fBt&&fBt(),e}s(e,t);var i=e.prototype;return i.getLayer=function(t,e,i){var n=4*(e*this.blockCount[0]+t)+i;return t<this.blockCount[0]&&e<this.blockCount[1]&&n<this._layerBuffer.length?this._layerBuffer[n]:-1},i.getHeight=function(t,e){var i=this._blockCount[0]*UBt+1;return(this._heights[e*i+t]-WBt)*XBt},i.getVertexCountI=function(){return this._blockCount.length<1?0:this._blockCount[0]*UBt+1},i.getVertexCountJ=function(){return this._blockCount.length<2?0:this._blockCount[1]*UBt+1},i._setNativeData=function(t){this._data=t},i._loadNativeData=function(t){if(!t||0===t.length)return!1;var e=new rMt;if(e.assign(t),this._version=e.readInt(),this._version===nMt)return!0;if(this._version!==KBt&&this._version!==QBt&&this._version!==ZBt&&this._version!==JBt&&this._version!==$Bt&&this._version!==tMt&&this._version!==eMt&&this._version!==iMt)return!1;this._version>=eMt?this.tileSize=e.readDouble():this.tileSize=e.readFloat(),this.tileSize=Math.floor(100*this.tileSize)/100,e.readIntArray(this._blockCount),this.weightMapSize=e.readInt16(),this.lightMapSize=e.readInt16();var i=e.readInt();this.heights=new Uint16Array(i);for(var n=0;n<this.heights.length;++n)this.heights[n]=e.readInt16();if(this._version<iMt)for(var r=0;r<this.heights.length;++r){var s=(this._heights[r]-WBt)*jBt,a=WBt+s/XBt;this.heights[r]=a}if(this._version>=tMt){var o=e.readInt();this.normals=new Float32Array(o);for(var h=0;h<this.normals.length;++h)this.normals[h]=e.readFloat()}var u=e.readInt();this.weights=new Uint8Array(u);for(var l=0;l<this.weights.length;++l)this.weights[l]=e.readInt8();if(this._version>=QBt){var c=e.readInt();this.layerBuffer=new Array(c);for(var _=0;_<this.layerBuffer.length;++_)this.layerBuffer[_]=e.readInt16()}if(this._version>=ZBt){var f=e.readInt();this._layerBinaryInfos=new Array(f);for(var d=0;d<this._layerBinaryInfos.length;++d)this._layerBinaryInfos[d]=new aMt,this._layerBinaryInfos[d].slot=e.readInt(),this._version>=eMt?this._layerBinaryInfos[d].tileSize=e.readDouble():this._layerBinaryInfos[d].tileSize=e.readFloat(),this._layerBinaryInfos[d].detailMapId=e.readString(),this._version>=JBt&&(this._layerBinaryInfos[d].normalMapId=e.readString(),this._version>=eMt?(this._layerBinaryInfos[d].roughness=e.readDouble(),this._layerBinaryInfos[d].metallic=e.readDouble()):(this._layerBinaryInfos[d].roughness=e.readFloat(),this._layerBinaryInfos[d].metallic=e.readFloat()))}return!0},i._exportNativeData=function(){var t=new rMt;t.writeInt32(iMt),t.writeDouble(this.tileSize),t.writeIntArray(this._blockCount),t.writeInt16(this.weightMapSize),t.writeInt16(this.lightMapSize),t.writeInt32(this.heights.length);for(var e=0;e<this.heights.length;++e)t.writeInt16(this.heights[e]);t.writeInt32(this.normals.length);for(var i=0;i<this.normals.length;++i)t.writeFloat(this.normals[i]);t.writeInt32(this.weights.length);for(var n=0;n<this.weights.length;++n)t.writeInt8(this.weights[n]);t.writeInt32(this.layerBuffer.length);for(var r=0;r<this.layerBuffer.length;++r)t.writeInt16(this.layerBuffer[r]);var s=[];s.length=this.layerInfos.length;for(var a=0;a<s.length;++a){var o=this.layerInfos[a],h=new aMt;h.slot=a,h.tileSize=o.tileSize,h.detailMapId=o.detailMap?o.detailMap._uuid:"",h.normalMapId=o.normalMap?o.normalMap._uuid:"",h.metallic=o.metallic,h.roughness=o.roughness,s[a]=h}t.writeInt32(s.length);for(var u=0;u<s.length;++u)t.writeInt32(s[u].slot),t.writeDouble(s[u].tileSize),t.writeString(s[u].detailMapId),t.writeString(s[u].normalMapId),t.writeDouble(s[u].roughness),t.writeDouble(s[u].metallic);return t.buffer},i._exportDefaultNativeData=function(){var t=new rMt;return t.writeInt32(nMt),t.buffer},n(e,[{key:"_nativeAsset",get:function(){return this._data.buffer},set:function(t){this._data&&this._data.byteLength===t.byteLength?this._data.set(new Uint8Array(t)):this._data=new Uint8Array(t),this._loadNativeData(this._data)}},{key:"version",get:function(){return this._version}},{key:"tileSize",get:function(){return this._tileSize},set:function(t){this._tileSize=t}},{key:"blockCount",get:function(){return this._blockCount},set:function(t){this._blockCount=t}},{key:"lightMapSize",get:function(){return this._lightMapSize},set:function(t){this._lightMapSize=t}},{key:"weightMapSize",get:function(){return this._weightMapSize},set:function(t){this._weightMapSize=t}},{key:"heights",get:function(){return this._heights},set:function(t){this._heights=t}},{key:"normals",get:function(){return this._normals},set:function(t){this._normals=t}},{key:"weights",get:function(){return this._weights},set:function(t){this._weights=t}},{key:"layerBuffer",get:function(){return this._layerBuffer},set:function(t){this._layerBuffer=t}},{key:"layerInfos",get:function(){return this._layerInfos},set:function(t){this._layerInfos=t}},{key:"layerBinaryInfos",get:function(){return this._layerBinaryInfos}}]),e}(vd),fBt=ja(_Bt.prototype,"_layerInfos",[lo],(function(){return[]})),cBt=_Bt))||cBt),hMt=t("fH",(dBt=eo("cc.TerrainCollider"),pBt=Lo(oMt),dBt((m((gBt=function(t){function e(){var e;return(e=t.call(this,REt.TERRAIN)||this)._terrain=vBt&&vBt(),e}return s(e,t),e.prototype.onEnable=function(){if(t.prototype.onEnable.call(this),this.node){var e=this.node.getComponent(fDt);e&&e.isValid&&e.type===EEt.DYNAMIC&&tt(9630,this.node.name)}},n(e,[{key:"terrain",get:function(){return this._terrain},set:function(t){this._terrain=t,this._shape&&this.shape.setTerrain(this._terrain)}},{key:"shape",get:function(){return this._shape}}]),e}(yDt)).prototype,"terrain",[pBt],Object.getOwnPropertyDescriptor(gBt.prototype,"terrain"),gBt.prototype),vBt=ja(gBt.prototype,"_terrain",[lo],(function(){return null})),mBt=gBt))||mBt)),uMt=t("fI",(yBt=eo("cc.SimplexCollider"),SBt=Lo(wEt),yBt(((CBt=function(t){function e(){var e;return(e=t.call(this,REt.SIMPLEX)||this)._shapeType=bBt&&bBt(),e._vertices=EBt&&EBt(),e}return s(e,t),e.prototype.updateVertices=function(){this._shape&&this.shape.setVertices(this._vertices)},n(e,[{key:"shapeType",get:function(){return this._shapeType},set:function(t){this._shapeType=t,this._shape&&this.shape.setShapeType(t)}},{key:"vertex0",get:function(){return this._vertices[0]},set:function(t){gn.copy(this._vertices[0],t),this.updateVertices()}},{key:"vertex1",get:function(){return this._vertices[1]},set:function(t){gn.copy(this._vertices[1],t),this.updateVertices()}},{key:"vertex2",get:function(){return this._vertices[2]},set:function(t){gn.copy(this._vertices[2],t),this.updateVertices()}},{key:"vertex3",get:function(){return this._vertices[3]},set:function(t){gn.copy(this._vertices[3],t),this.updateVertices()}},{key:"shape",get:function(){return this._shape}},{key:"vertices",get:function(){return this._vertices}}]),e}(yDt)).ESimplexType=wEt,m((ABt=CBt).prototype,"shapeType",[SBt],Object.getOwnPropertyDescriptor(ABt.prototype,"shapeType"),ABt.prototype),bBt=ja(ABt.prototype,"_shapeType",[lo],(function(){return wEt.TETRAHEDRON})),EBt=ja(ABt.prototype,"_vertices",[lo],(function(){return[new gn(0,0,0),new gn(0,0,1),new gn(1,0,0),new gn(0,1,0)]})),TBt=ABt))||TBt));uMt||t("fI",uMt={});var lMt,cMt,_Mt,fMt,dMt,pMt,mMt,gMt,vMt,yMt,SMt,TMt,AMt,bMt,EMt,CMt,xMt,wMt,RMt,IMt,DMt,BMt,MMt,PMt,OMt,LMt,NMt,FMt,kMt,GMt,VMt,UMt,zMt,HMt,WMt,XMt,jMt,YMt,qMt,KMt,QMt,ZMt,JMt,$Mt,tPt,ePt,iPt,nPt,rPt,sPt,aPt,oPt,hPt,uPt,lPt,cPt,_Pt=t("fJ",(xBt=eo("cc.PlaneCollider"),wBt=Lo(gn),xBt((m((IBt=function(t){function e(){var e;return(e=t.call(this,REt.PLANE)||this)._normal=DBt&&DBt(),e._constant=BBt&&BBt(),e}return s(e,t),e.prototype.onEnable=function(){if(t.prototype.onEnable.call(this),this.node){var e=this.node.getComponent(fDt);e&&e.isValid&&e.type===EEt.DYNAMIC&&tt(9630,this.node.name)}},n(e,[{key:"normal",get:function(){return this._normal},set:function(t){gn.strictEquals(this._normal,t)||(gn.copy(this._normal,t),this._shape&&this.shape.setNormal(this._normal))}},{key:"constant",get:function(){return this._constant},set:function(t){this._constant!==t&&(this._constant=t,this._shape&&this.shape.setConstant(this._constant))}},{key:"shape",get:function(){return this._shape}}]),e}(yDt)).prototype,"normal",[wBt],Object.getOwnPropertyDescriptor(IBt.prototype,"normal"),IBt.prototype),DBt=ja(IBt.prototype,"_normal",[lo],(function(){return new gn(0,1,0)})),BBt=ja(IBt.prototype,"_constant",[lo],(function(){return 0})),RBt=IBt))||RBt)),fPt=t("fK",(lMt=eo("cc.Constraint"),cMt=io(fDt),_Mt=Lo(fDt),fMt=Lo(fDt),dMt=Lo(fDt),lMt(pMt=cMt(((yMt=function(t){function e(e){var i;return(i=t.call(this)||this).TYPE=void 0,i._enableCollision=gMt&&gMt(),i._connectedBody=vMt&&vMt(),i._constraint=null,i.TYPE=e,i}s(e,t);var i=e.prototype;return i.onLoad=function(){WRt.runInEditor&&(this._constraint=function(t){return JRt.INITED||(JRt.INITED=!0,JRt[IEt.POINT_TO_POINT]=function(){return YRt(WRt.wrapper.PointToPointConstraint,HRt.PointToPointConstraint)?$Rt:new WRt.wrapper.PointToPointConstraint},JRt[IEt.HINGE]=function(){return YRt(WRt.wrapper.HingeConstraint,HRt.HingeConstraint)?$Rt:new WRt.wrapper.HingeConstraint},JRt[IEt.FIXED]=function(){return YRt(WRt.wrapper.FixedConstraint,HRt.FixedConstraint)?$Rt:new WRt.wrapper.FixedConstraint},JRt[IEt.CONFIGURABLE]=function(){return YRt(WRt.wrapper.ConfigurableConstraint,HRt.ConfigurableConstraint)?$Rt:new WRt.wrapper.ConfigurableConstraint}),JRt[t]()}(this.TYPE),this._constraint.initialize(this))},i.onEnable=function(){this._constraint&&this._constraint.onEnable()},i.onDisable=function(){this._constraint&&this._constraint.onDisable()},i.onDestroy=function(){this._constraint&&this._constraint.onDestroy()},n(e,[{key:"attachedBody",get:function(){return this.getComponent(fDt)}},{key:"connectedBody",get:function(){return this._connectedBody},set:function(t){this._connectedBody=t,this._constraint&&this._constraint.setConnectedBody(t)}},{key:"enableCollision",get:function(){return this._enableCollision},set:function(t){this._enableCollision=t,this._constraint&&this._constraint.setEnableCollision(t)}}]),e}(zs(mp))).Type=IEt,m((mMt=yMt).prototype,"attachedBody",[_Mt],Object.getOwnPropertyDescriptor(mMt.prototype,"attachedBody"),mMt.prototype),m(mMt.prototype,"connectedBody",[fMt],Object.getOwnPropertyDescriptor(mMt.prototype,"connectedBody"),mMt.prototype),gMt=ja(mMt.prototype,"_enableCollision",[lo],(function(){return!0})),vMt=ja(mMt.prototype,"_connectedBody",[dMt],(function(){return null})),pMt=mMt))||pMt)||pMt));fPt||t("fK",fPt={});var dPt,pPt,mPt,gPt,vPt,yPt,SPt,TPt,APt,bPt,EPt,CPt,xPt,wPt,RPt,IPt,DPt,BPt,MPt,PPt,OPt,LPt,NPt,FPt,kPt,GPt,VPt,UPt,zPt,HPt,WPt,XPt,jPt,YPt,qPt,KPt,QPt,ZPt,JPt,$Pt,tOt,eOt,iOt,nOt,rOt,sOt,aOt,oOt,hOt,uOt,lOt,cOt,_Ot,fOt,dOt,pOt,mOt,gOt,vOt,yOt,SOt,TOt,AOt,bOt,EOt,COt,xOt,wOt,ROt,IOt,DOt,BOt,MOt,POt,OOt,LOt,NOt,FOt,kOt,GOt,VOt,UOt,zOt,HOt,WOt,XOt,jOt,YOt,qOt,KOt,QOt,ZOt,JOt,$Ot,tLt,eLt,iLt,nLt,rLt,sLt,aLt,oLt,hLt,uLt,lLt,cLt,_Lt,fLt,dLt,pLt,mLt,gLt,vLt,yLt,SLt,TLt,ALt,bLt,ELt,CLt,xLt,wLt,RLt,ILt,DLt,BLt,MLt,PLt,OLt,LLt,NLt,FLt,kLt,GLt,VLt,ULt,zLt,HLt,WLt,XLt,jLt,YLt,qLt=(SMt=eo("cc.HingeLimitData"),TMt=co("enabled"),AMt=co("upperLimit"),bMt=co("lowerLimit"),EMt=Lo(ri),CMt=Lo(ni),xMt=Lo(ni),SMt((RMt=function(){function t(){this._enabled=IMt&&IMt(),this._upperLimit=DMt&&DMt(),this._lowerLimit=BMt&&BMt()}return n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t}},{key:"upperLimit",get:function(){return this._upperLimit},set:function(t){this._upperLimit=t}},{key:"lowerLimit",get:function(){return this._lowerLimit},set:function(t){this._lowerLimit=t}}]),t}(),IMt=ja(RMt.prototype,"_enabled",[lo,TMt],(function(){return!1})),DMt=ja(RMt.prototype,"_upperLimit",[lo,AMt],(function(){return Number.MAX_VALUE})),BMt=ja(RMt.prototype,"_lowerLimit",[lo,bMt],(function(){return-Number.MAX_VALUE})),m(RMt.prototype,"enabled",[EMt],Object.getOwnPropertyDescriptor(RMt.prototype,"enabled"),RMt.prototype),m(RMt.prototype,"upperLimit",[CMt],Object.getOwnPropertyDescriptor(RMt.prototype,"upperLimit"),RMt.prototype),m(RMt.prototype,"lowerLimit",[xMt],Object.getOwnPropertyDescriptor(RMt.prototype,"lowerLimit"),RMt.prototype),wMt=RMt))||wMt),KLt=(MMt=eo("cc.HingeMotorData"),PMt=co("enabled"),OMt=co("motorVelocity"),LMt=co("motorForceLimit"),NMt=Lo(ri),FMt=Lo(ni),kMt=Lo(ni),MMt((VMt=function(){function t(){this._enabled=UMt&&UMt(),this._motorVelocity=zMt&&zMt(),this._motorForceLimit=HMt&&HMt()}return n(t,[{key:"enabled",get:function(){return this._enabled},set:function(t){this._enabled=t}},{key:"motorVelocity",get:function(){return this._motorVelocity},set:function(t){this._motorVelocity=t}},{key:"motorForceLimit",get:function(){return this._motorForceLimit},set:function(t){this._motorForceLimit=t}}]),t}(),UMt=ja(VMt.prototype,"_enabled",[lo,PMt],(function(){return!1})),zMt=ja(VMt.prototype,"_motorVelocity",[lo,OMt],(function(){return 0})),HMt=ja(VMt.prototype,"_motorForceLimit",[lo,LMt],(function(){return 0})),m(VMt.prototype,"enabled",[NMt],Object.getOwnPropertyDescriptor(VMt.prototype,"enabled"),VMt.prototype),m(VMt.prototype,"motorVelocity",[FMt],Object.getOwnPropertyDescriptor(VMt.prototype,"motorVelocity"),VMt.prototype),m(VMt.prototype,"motorForceLimit",[kMt],Object.getOwnPropertyDescriptor(VMt.prototype,"motorForceLimit"),VMt.prototype),GMt=VMt))||GMt),QLt=t("fL",(WMt=eo("cc.HingeConstraint"),XMt=Lo(gn),jMt=Lo(gn),YMt=Lo(gn),qMt=Lo(ri),KMt=Lo(ni),QMt=Lo(ni),ZMt=Lo(ri),JMt=Lo(ni),$Mt=Lo(ni),tPt=co("axisA"),ePt=co("pivotA"),iPt=co("pivotB"),nPt=co("limitData"),rPt=co("motorData"),WMt((m((aPt=function(t){function e(){var e;return(e=t.call(this,IEt.HINGE)||this)._axis=oPt&&oPt(),e._pivotA=hPt&&hPt(),e._pivotB=uPt&&uPt(),e._limitData=lPt&&lPt(),e._motorData=cPt&&cPt(),e}return s(e,t),n(e,[{key:"pivotA",get:function(){return this._pivotA},set:function(t){gn.copy(this._pivotA,t),this.constraint.setPivotA(this._pivotA)}},{key:"pivotB",get:function(){return this._pivotB},set:function(t){gn.copy(this._pivotB,t),this.constraint.setPivotB(this._pivotB)}},{key:"axis",get:function(){return this._axis},set:function(t){gn.copy(this._axis,t),this.constraint.setAxis(this._axis)}},{key:"limitEnabled",get:function(){return this._limitData.enabled},set:function(t){this._limitData.enabled=t,this.constraint.setLimitEnabled(t)}},{key:"upperLimit",get:function(){return this._limitData.upperLimit},set:function(t){this._limitData.upperLimit=t,this.constraint.setUpperLimit(t)}},{key:"lowerLimit",get:function(){return this._limitData.lowerLimit},set:function(t){this._limitData.lowerLimit=t,this.constraint.setLowerLimit(t)}},{key:"motorEnabled",get:function(){return this._motorData.enabled},set:function(t){this._motorData.enabled=t,this.constraint.setMotorEnabled(t)}},{key:"motorVelocity",get:function(){return this._motorData.motorVelocity},set:function(t){this._motorData.motorVelocity=t,this.constraint.setMotorVelocity(t)}},{key:"motorForceLimit",get:function(){return this._motorData.motorForceLimit},set:function(t){this._motorData.motorForceLimit=t,this.constraint.setMotorForceLimit(t)}},{key:"constraint",get:function(){return this._constraint}}]),e}(fPt)).prototype,"pivotA",[XMt],Object.getOwnPropertyDescriptor(aPt.prototype,"pivotA"),aPt.prototype),m(aPt.prototype,"pivotB",[jMt],Object.getOwnPropertyDescriptor(aPt.prototype,"pivotB"),aPt.prototype),m(aPt.prototype,"axis",[YMt],Object.getOwnPropertyDescriptor(aPt.prototype,"axis"),aPt.prototype),m(aPt.prototype,"limitEnabled",[qMt],Object.getOwnPropertyDescriptor(aPt.prototype,"limitEnabled"),aPt.prototype),m(aPt.prototype,"upperLimit",[KMt],Object.getOwnPropertyDescriptor(aPt.prototype,"upperLimit"),aPt.prototype),m(aPt.prototype,"lowerLimit",[QMt],Object.getOwnPropertyDescriptor(aPt.prototype,"lowerLimit"),aPt.prototype),m(aPt.prototype,"motorEnabled",[ZMt],Object.getOwnPropertyDescriptor(aPt.prototype,"motorEnabled"),aPt.prototype),m(aPt.prototype,"motorVelocity",[JMt],Object.getOwnPropertyDescriptor(aPt.prototype,"motorVelocity"),aPt.prototype),m(aPt.prototype,"motorForceLimit",[$Mt],Object.getOwnPropertyDescriptor(aPt.prototype,"motorForceLimit"),aPt.prototype),oPt=ja(aPt.prototype,"_axis",[lo,tPt],(function(){return new gn})),hPt=ja(aPt.prototype,"_pivotA",[lo,ePt],(function(){return new gn})),uPt=ja(aPt.prototype,"_pivotB",[lo,iPt],(function(){return new gn})),lPt=ja(aPt.prototype,"_limitData",[lo,nPt],(function(){return new qLt})),cPt=ja(aPt.prototype,"_motorData",[lo,rPt],(function(){return new KLt})),sPt=aPt))||sPt)),ZLt=t("fN",(dPt=eo("cc.FixedConstraint"),pPt=Lo(ni),mPt=Lo(ni),gPt=co("breakForce"),vPt=co("breakTorque"),dPt((m((SPt=function(t){function e(){var e;return(e=t.call(this,IEt.FIXED)||this)._breakForce=TPt&&TPt(),e._breakTorque=APt&&APt(),e}return s(e,t),n(e,[{key:"breakForce",get:function(){return this._breakForce},set:function(t){this._breakForce=t,this.constraint.setBreakForce(t)}},{key:"breakTorque",get:function(){return this._breakTorque},set:function(t){this._breakTorque=t,this.constraint.setBreakTorque(t)}},{key:"constraint",get:function(){return this._constraint}}]),e}(fPt)).prototype,"breakForce",[pPt],Object.getOwnPropertyDescriptor(SPt.prototype,"breakForce"),SPt.prototype),m(SPt.prototype,"breakTorque",[mPt],Object.getOwnPropertyDescriptor(SPt.prototype,"breakTorque"),SPt.prototype),TPt=ja(SPt.prototype,"_breakForce",[lo,gPt],(function(){return 1e8})),APt=ja(SPt.prototype,"_breakTorque",[lo,vPt],(function(){return 1e8})),yPt=SPt))||yPt)),JLt=(bPt=eo("cc.LinearLimitSettings"),EPt=Lo(DEt),CPt=Lo(DEt),xPt=Lo(DEt),wPt=Lo(gn),RPt=Lo(gn),IPt=Lo(ni),DPt=Lo(ri),BPt=Lo(ni),MPt=Lo(ni),bPt((m((OPt=function(){function t(t){this._xMotion=LPt&&LPt(),this._yMotion=NPt&&NPt(),this._zMotion=FPt&&FPt(),this._upper=kPt&&kPt(),this._lower=GPt&&GPt(),this._enableSoftConstraint=VPt&&VPt(),this._bounciness=UPt&&UPt(),this._stiffness=zPt&&zPt(),this._damping=HPt&&HPt(),this._impl=void 0,this._impl=t}return n(t,[{key:"xMotion",get:function(){return this._xMotion},set:function(t){this._xMotion=t,this._impl.setConstraintMode(0,t)}},{key:"yMotion",get:function(){return this._yMotion},set:function(t){this._yMotion=t,this._impl.setConstraintMode(1,t)}},{key:"zMotion",get:function(){return this._zMotion},set:function(t){this._zMotion=t,this._impl.setConstraintMode(2,t)}},{key:"upper",get:function(){return this._upper},set:function(t){gn.copy(this._upper,t);var e=this.lower;this._impl.setLinearLimit(0,e.x,t.x),this._impl.setLinearLimit(1,e.y,t.y),this._impl.setLinearLimit(2,e.z,t.z)}},{key:"lower",get:function(){return this._lower},set:function(t){gn.copy(this._lower,t);var e=this.upper;this._impl.setLinearLimit(0,t.x,e.x),this._impl.setLinearLimit(1,t.y,e.y),this._impl.setLinearLimit(2,t.z,e.z)}},{key:"restitution",get:function(){return this._bounciness},set:function(t){this._bounciness=t,this._impl.setLinearRestitution(t)}},{key:"enableSoftConstraint",get:function(){return this._enableSoftConstraint},set:function(t){this._enableSoftConstraint=t,this._impl.setLinearSoftConstraint(t)}},{key:"stiffness",get:function(){return this._stiffness},set:function(t){this._stiffness=t,this._impl.setLinearStiffness(t)}},{key:"damping",get:function(){return this._damping},set:function(t){this._damping=t,this._impl.setLinearDamping(t)}},{key:"impl",set:function(t){this._impl=t}}]),t}()).prototype,"xMotion",[EPt],Object.getOwnPropertyDescriptor(OPt.prototype,"xMotion"),OPt.prototype),m(OPt.prototype,"yMotion",[CPt],Object.getOwnPropertyDescriptor(OPt.prototype,"yMotion"),OPt.prototype),m(OPt.prototype,"zMotion",[xPt],Object.getOwnPropertyDescriptor(OPt.prototype,"zMotion"),OPt.prototype),m(OPt.prototype,"upper",[wPt],Object.getOwnPropertyDescriptor(OPt.prototype,"upper"),OPt.prototype),m(OPt.prototype,"lower",[RPt],Object.getOwnPropertyDescriptor(OPt.prototype,"lower"),OPt.prototype),m(OPt.prototype,"restitution",[IPt],Object.getOwnPropertyDescriptor(OPt.prototype,"restitution"),OPt.prototype),m(OPt.prototype,"enableSoftConstraint",[DPt],Object.getOwnPropertyDescriptor(OPt.prototype,"enableSoftConstraint"),OPt.prototype),m(OPt.prototype,"stiffness",[BPt],Object.getOwnPropertyDescriptor(OPt.prototype,"stiffness"),OPt.prototype),m(OPt.prototype,"damping",[MPt],Object.getOwnPropertyDescriptor(OPt.prototype,"damping"),OPt.prototype),LPt=ja(OPt.prototype,"_xMotion",[lo],(function(){return DEt.FREE})),NPt=ja(OPt.prototype,"_yMotion",[lo],(function(){return DEt.FREE})),FPt=ja(OPt.prototype,"_zMotion",[lo],(function(){return DEt.FREE})),kPt=ja(OPt.prototype,"_upper",[lo],(function(){return new gn})),GPt=ja(OPt.prototype,"_lower",[lo],(function(){return new gn})),VPt=ja(OPt.prototype,"_enableSoftConstraint",[lo],(function(){return!1})),UPt=ja(OPt.prototype,"_bounciness",[lo],(function(){return 0})),zPt=ja(OPt.prototype,"_stiffness",[lo],(function(){return 0})),HPt=ja(OPt.prototype,"_damping",[lo],(function(){return 0})),PPt=OPt))||PPt),$Lt=(WPt=eo("cc.AngularLimitSettings"),XPt=Lo(DEt),jPt=Lo(DEt),YPt=Lo(DEt),qPt=Lo(ni),KPt=Lo(ni),QPt=Lo(ni),ZPt=Lo(ni),JPt=Lo(ni),$Pt=Lo(ri),tOt=Lo(ni),eOt=Lo(ni),iOt=Lo(ri),nOt=Lo(ni),rOt=Lo(ni),WPt((m((aOt=function(){function t(t){this._swing1Motion=oOt&&oOt(),this._swing2Motion=hOt&&hOt(),this._twistMotion=uOt&&uOt(),this._twistExtent=lOt&&lOt(),this._swingExtent1=cOt&&cOt(),this._swingExtent2=_Ot&&_Ot(),this._enableSoftConstraintSwing=fOt&&fOt(),this._swingBounciness=dOt&&dOt(),this._swingStiffness=pOt&&pOt(),this._swingDamping=mOt&&mOt(),this._enableSoftConstraintTwist=gOt&&gOt(),this._twistBounciness=vOt&&vOt(),this._twistStiffness=yOt&&yOt(),this._twistDamping=SOt&&SOt(),this._impl=void 0,this._impl=t}return n(t,[{key:"twistMotion",get:function(){return this._twistMotion},set:function(t){this._twistMotion=t,this._impl.setConstraintMode(3,t)}},{key:"swingMotion1",get:function(){return this._swing1Motion},set:function(t){this._swing1Motion=t,this._impl.setConstraintMode(4,t)}},{key:"swingMotion2",get:function(){return this._swing2Motion},set:function(t){this._swing2Motion=t,this._impl.setConstraintMode(5,t)}},{key:"twistExtent",get:function(){return this._twistExtent},set:function(t){this._twistExtent=t,this._impl.setAngularExtent(t,this.swingExtent1,this.swingExtent2)}},{key:"swingExtent1",get:function(){return this._swingExtent1},set:function(t){this._swingExtent1=t,this._impl.setAngularExtent(this.twistExtent,t,this.swingExtent2)}},{key:"swingExtent2",get:function(){return this._swingExtent2},set:function(t){this._swingExtent2=t,this._impl.setAngularExtent(this.twistExtent,this.swingExtent1,t)}},{key:"twistRestitution",get:function(){return this._twistBounciness},set:function(t){this._twistBounciness=t,this._impl.setTwistRestitution(t)}},{key:"swingRestitution",get:function(){return this._swingBounciness},set:function(t){this._swingBounciness=t,this._impl.setSwingRestitution(t)}},{key:"enableSoftConstraintTwist",get:function(){return this._enableSoftConstraintTwist},set:function(t){this._enableSoftConstraintTwist=t,this._impl.setTwistSoftConstraint(t)}},{key:"twistStiffness",get:function(){return this._twistStiffness},set:function(t){this._twistStiffness=t,this._impl.setTwistStiffness(t)}},{key:"twistDamping",get:function(){return this._twistDamping},set:function(t){this._twistDamping=t,this._impl.setTwistDamping(t)}},{key:"enableSoftConstraintSwing",get:function(){return this._enableSoftConstraintSwing},set:function(t){this._enableSoftConstraintSwing=t,this._impl.setSwingSoftConstraint(t)}},{key:"swingStiffness",get:function(){return this._swingStiffness},set:function(t){this._swingStiffness=t,this._impl.setSwingStiffness(t)}},{key:"swingDamping",get:function(){return this._swingDamping},set:function(t){this._swingDamping=t,this._impl.setSwingDamping(t)}},{key:"impl",set:function(t){this._impl=t}}]),t}()).prototype,"twistMotion",[XPt],Object.getOwnPropertyDescriptor(aOt.prototype,"twistMotion"),aOt.prototype),m(aOt.prototype,"swingMotion1",[jPt],Object.getOwnPropertyDescriptor(aOt.prototype,"swingMotion1"),aOt.prototype),m(aOt.prototype,"swingMotion2",[YPt],Object.getOwnPropertyDescriptor(aOt.prototype,"swingMotion2"),aOt.prototype),m(aOt.prototype,"twistExtent",[qPt],Object.getOwnPropertyDescriptor(aOt.prototype,"twistExtent"),aOt.prototype),m(aOt.prototype,"swingExtent1",[KPt],Object.getOwnPropertyDescriptor(aOt.prototype,"swingExtent1"),aOt.prototype),m(aOt.prototype,"swingExtent2",[QPt],Object.getOwnPropertyDescriptor(aOt.prototype,"swingExtent2"),aOt.prototype),m(aOt.prototype,"twistRestitution",[ZPt],Object.getOwnPropertyDescriptor(aOt.prototype,"twistRestitution"),aOt.prototype),m(aOt.prototype,"swingRestitution",[JPt],Object.getOwnPropertyDescriptor(aOt.prototype,"swingRestitution"),aOt.prototype),m(aOt.prototype,"enableSoftConstraintTwist",[$Pt],Object.getOwnPropertyDescriptor(aOt.prototype,"enableSoftConstraintTwist"),aOt.prototype),m(aOt.prototype,"twistStiffness",[tOt],Object.getOwnPropertyDescriptor(aOt.prototype,"twistStiffness"),aOt.prototype),m(aOt.prototype,"twistDamping",[eOt],Object.getOwnPropertyDescriptor(aOt.prototype,"twistDamping"),aOt.prototype),m(aOt.prototype,"enableSoftConstraintSwing",[iOt],Object.getOwnPropertyDescriptor(aOt.prototype,"enableSoftConstraintSwing"),aOt.prototype),m(aOt.prototype,"swingStiffness",[nOt],Object.getOwnPropertyDescriptor(aOt.prototype,"swingStiffness"),aOt.prototype),m(aOt.prototype,"swingDamping",[rOt],Object.getOwnPropertyDescriptor(aOt.prototype,"swingDamping"),aOt.prototype),oOt=ja(aOt.prototype,"_swing1Motion",[lo],(function(){return DEt.FREE})),hOt=ja(aOt.prototype,"_swing2Motion",[lo],(function(){return DEt.FREE})),uOt=ja(aOt.prototype,"_twistMotion",[lo],(function(){return DEt.FREE})),lOt=ja(aOt.prototype,"_twistExtent",[lo],(function(){return 0})),cOt=ja(aOt.prototype,"_swingExtent1",[lo],(function(){return 0})),_Ot=ja(aOt.prototype,"_swingExtent2",[lo],(function(){return 0})),fOt=ja(aOt.prototype,"_enableSoftConstraintSwing",[lo],(function(){return!1})),dOt=ja(aOt.prototype,"_swingBounciness",[lo],(function(){return 0})),pOt=ja(aOt.prototype,"_swingStiffness",[lo],(function(){return 0})),mOt=ja(aOt.prototype,"_swingDamping",[lo],(function(){return 0})),gOt=ja(aOt.prototype,"_enableSoftConstraintTwist",[lo],(function(){return!1})),vOt=ja(aOt.prototype,"_twistBounciness",[lo],(function(){return 0})),yOt=ja(aOt.prototype,"_twistStiffness",[lo],(function(){return 0})),SOt=ja(aOt.prototype,"_twistDamping",[lo],(function(){return 0})),sOt=aOt))||sOt),tNt=(TOt=eo("cc.LinearDriverSettings"),AOt=Lo(BEt),bOt=Lo(BEt),EOt=Lo(BEt),COt=Lo(gn),xOt=Lo(gn),wOt=Lo(ni),TOt((m((IOt=function(){function t(t){this._target=DOt&&DOt(),this._velocity=BOt&&BOt(),this._xDrive=MOt&&MOt(),this._yDrive=POt&&POt(),this._zDrive=OOt&&OOt(),this._strength=LOt&&LOt(),this._impl=void 0,this._impl=t}return n(t,[{key:"xDrive",get:function(){return this._xDrive},set:function(t){this._xDrive=t,this._impl.setDriverMode(0,t)}},{key:"yDrive",get:function(){return this._yDrive},set:function(t){this._yDrive=t,this._impl.setDriverMode(1,t)}},{key:"zDrive",get:function(){return this._zDrive},set:function(t){this._zDrive=t,this._impl.setDriverMode(2,t)}},{key:"targetPosition",get:function(){return this._target},set:function(t){gn.copy(this._target,t),this._impl.setLinearMotorTarget(t)}},{key:"targetVelocity",get:function(){return this._velocity},set:function(t){gn.copy(this._velocity,t),this._impl.setLinearMotorVelocity(t)}},{key:"strength",get:function(){return this._strength},set:function(t){this._strength=t,this._impl.setLinearMotorForceLimit(t)}},{key:"impl",set:function(t){this._impl=t}}]),t}()).prototype,"xDrive",[AOt],Object.getOwnPropertyDescriptor(IOt.prototype,"xDrive"),IOt.prototype),m(IOt.prototype,"yDrive",[bOt],Object.getOwnPropertyDescriptor(IOt.prototype,"yDrive"),IOt.prototype),m(IOt.prototype,"zDrive",[EOt],Object.getOwnPropertyDescriptor(IOt.prototype,"zDrive"),IOt.prototype),m(IOt.prototype,"targetPosition",[COt],Object.getOwnPropertyDescriptor(IOt.prototype,"targetPosition"),IOt.prototype),m(IOt.prototype,"targetVelocity",[xOt],Object.getOwnPropertyDescriptor(IOt.prototype,"targetVelocity"),IOt.prototype),m(IOt.prototype,"strength",[wOt],Object.getOwnPropertyDescriptor(IOt.prototype,"strength"),IOt.prototype),DOt=ja(IOt.prototype,"_target",[lo],(function(){return new gn})),BOt=ja(IOt.prototype,"_velocity",[lo],(function(){return new gn})),MOt=ja(IOt.prototype,"_xDrive",[lo],(function(){return BEt.DISABLED})),POt=ja(IOt.prototype,"_yDrive",[lo],(function(){return BEt.DISABLED})),OOt=ja(IOt.prototype,"_zDrive",[lo],(function(){return BEt.DISABLED})),LOt=ja(IOt.prototype,"_strength",[lo],(function(){return 0})),ROt=IOt))||ROt),eNt=(NOt=eo("cc.AngularDriverSettings"),FOt=Lo(BEt),kOt=Lo(BEt),GOt=Lo(BEt),VOt=Lo(gn),UOt=Lo(gn),zOt=Lo(ni),NOt((m((WOt=function(){function t(t){this._swingDrive1=XOt&&XOt(),this._swingDrive2=jOt&&jOt(),this._twistDrive=YOt&&YOt(),this._targetOrientation=qOt&&qOt(),this._targetVelocity=KOt&&KOt(),this._strength=QOt&&QOt(),this._impl=void 0,this._impl=t}return n(t,[{key:"twistDrive",get:function(){return this._twistDrive},set:function(t){this._twistDrive=t,this._impl.setDriverMode(3,t)}},{key:"swingDrive1",get:function(){return this._swingDrive1},set:function(t){this._swingDrive1=t,this._impl.setDriverMode(4,t)}},{key:"swingDrive2",get:function(){return this._swingDrive2},set:function(t){this._swingDrive2=t,this._impl.setDriverMode(5,t)}},{key:"targetOrientation",get:function(){return this._targetOrientation},set:function(t){gn.copy(this._targetOrientation,t),this._impl.setAngularMotorTarget(t)}},{key:"targetVelocity",get:function(){return this._targetVelocity},set:function(t){gn.copy(this._targetVelocity,t),this._impl.setAngularMotorVelocity(t)}},{key:"strength",get:function(){return this._strength},set:function(t){this._strength=t,this._impl.setAngularMotorForceLimit(t)}},{key:"impl",set:function(t){this._impl=t}}]),t}()).prototype,"twistDrive",[FOt],Object.getOwnPropertyDescriptor(WOt.prototype,"twistDrive"),WOt.prototype),m(WOt.prototype,"swingDrive1",[kOt],Object.getOwnPropertyDescriptor(WOt.prototype,"swingDrive1"),WOt.prototype),m(WOt.prototype,"swingDrive2",[GOt],Object.getOwnPropertyDescriptor(WOt.prototype,"swingDrive2"),WOt.prototype),m(WOt.prototype,"targetOrientation",[VOt],Object.getOwnPropertyDescriptor(WOt.prototype,"targetOrientation"),WOt.prototype),m(WOt.prototype,"targetVelocity",[UOt],Object.getOwnPropertyDescriptor(WOt.prototype,"targetVelocity"),WOt.prototype),m(WOt.prototype,"strength",[zOt],Object.getOwnPropertyDescriptor(WOt.prototype,"strength"),WOt.prototype),XOt=ja(WOt.prototype,"_swingDrive1",[lo],(function(){return BEt.DISABLED})),jOt=ja(WOt.prototype,"_swingDrive2",[lo],(function(){return BEt.DISABLED})),YOt=ja(WOt.prototype,"_twistDrive",[lo],(function(){return BEt.DISABLED})),qOt=ja(WOt.prototype,"_targetOrientation",[lo],(function(){return new gn})),KOt=ja(WOt.prototype,"_targetVelocity",[lo],(function(){return new gn})),QOt=ja(WOt.prototype,"_strength",[lo],(function(){return 0})),HOt=WOt))||HOt),iNt=t("fM",(ZOt=eo("cc.ConfigurableConstraint"),JOt=Lo(gn),$Ot=Lo(gn),tLt=Lo(gn),eLt=Lo(gn),iLt=Lo(ri),nLt=Lo(ni),rLt=Lo(ni),sLt=Lo(JLt),aLt=Lo($Lt),oLt=Lo(tNt),hLt=Lo(eNt),uLt=co("linearLimitSettings"),lLt=co("angularLimitSettings"),cLt=co("linearDriverSettings"),_Lt=co("angularDriverSettings"),ZOt((m((dLt=function(t){function e(){var e;return(e=t.call(this,IEt.CONFIGURABLE)||this)._breakForce=pLt&&pLt(),e._breakTorque=mLt&&mLt(),e._linearLimitSettings=gLt&&gLt(),e._angularLimitSettings=vLt&&vLt(),e._linearDriverSettings=yLt&&yLt(),e._angularDriverSettings=SLt&&SLt(),e._pivotA=TLt&&TLt(),e._pivotB=ALt&&ALt(),e._autoPivotB=bLt&&bLt(),e._axis=ELt&&ELt(),e._secondaryAxis=CLt&&CLt(),e._linearLimitSettings=new JLt(e.constraint),e._angularLimitSettings=new $Lt(e.constraint),e._linearDriverSettings=new tNt(e.constraint),e._angularDriverSettings=new eNt(e.constraint),e}return s(e,t),e.prototype.onLoad=function(){t.prototype.onLoad.call(this),this.linearLimitSettings.impl=this.constraint,this.angularLimitSettings.impl=this.constraint,this.linearDriverSettings.impl=this.constraint,this.angularDriverSettings.impl=this.constraint},n(e,[{key:"axis",get:function(){return this._axis},set:function(t){gn.copy(this._axis,t),this.constraint.setAxis(this._axis)}},{key:"secondaryAxis",get:function(){return this._secondaryAxis},set:function(t){gn.copy(this._secondaryAxis,t),this.constraint.setSecondaryAxis(this._secondaryAxis)}},{key:"pivotA",get:function(){return this._pivotA},set:function(t){gn.copy(this._pivotA,t),this.constraint.setPivotA(this._pivotA)}},{key:"pivotB",get:function(){return this._pivotB},set:function(t){gn.copy(this._pivotB,t),this.constraint.setPivotB(this._pivotB)}},{key:"autoPivotB",get:function(){return this._autoPivotB},set:function(t){this._autoPivotB=t,this.constraint.setAutoPivotB(this._autoPivotB)}},{key:"breakForce",get:function(){return this._breakForce},set:function(t){this._breakForce=t,this.constraint.setBreakForce(t)}},{key:"breakTorque",get:function(){return this._breakTorque},set:function(t){this._breakTorque=t,this.constraint.setBreakTorque(t)}},{key:"linearLimitSettings",get:function(){return this._linearLimitSettings},set:function(t){this._linearLimitSettings=t;var e=this.constraint;e.setConstraintMode(0,t.xMotion),e.setConstraintMode(1,t.yMotion),e.setConstraintMode(2,t.zMotion);var i=t.upper,n=t.lower;e.setLinearLimit(0,n.x,i.x),e.setLinearLimit(1,n.y,i.y),e.setLinearLimit(2,n.z,i.z),e.setLinearSoftConstraint(t.enableSoftConstraint),e.setLinearDamping(t.damping),e.setLinearStiffness(t.stiffness),e.setLinearRestitution(t.restitution)}},{key:"angularLimitSettings",get:function(){return this._angularLimitSettings},set:function(t){this._angularLimitSettings=t;var e=this.constraint;e.setConstraintMode(3,t.twistMotion),e.setConstraintMode(4,t.swingMotion1),e.setConstraintMode(5,t.swingMotion2),e.setAngularExtent(t.twistExtent,t.swingExtent1,t.swingExtent2),e.setTwistRestitution(t.twistRestitution),e.setSwingRestitution(t.swingRestitution),e.setTwistSoftConstraint(t.enableSoftConstraintTwist),e.setSwingSoftConstraint(t.enableSoftConstraintSwing),e.setTwistDamping(t.twistDamping),e.setSwingDamping(t.swingDamping),e.setTwistStiffness(t.twistStiffness),e.setSwingStiffness(t.swingStiffness)}},{key:"linearDriverSettings",get:function(){return this._linearDriverSettings},set:function(t){this._linearDriverSettings=t;var e=this.constraint;e.setDriverMode(0,t.xDrive),e.setDriverMode(1,t.yDrive),e.setDriverMode(2,t.zDrive),e.setLinearMotorTarget(t.targetPosition),e.setLinearMotorVelocity(t.targetVelocity),e.setLinearMotorForceLimit(t.strength)}},{key:"angularDriverSettings",get:function(){return this._angularDriverSettings},set:function(t){this._angularDriverSettings=t;var e=this.constraint;e.setDriverMode(3,t.twistDrive),e.setDriverMode(4,t.swingDrive1),e.setDriverMode(5,t.swingDrive2),e.setAngularMotorTarget(t.targetOrientation),e.setAngularMotorVelocity(t.targetVelocity),e.setAngularMotorForceLimit(t.strength)}},{key:"constraint",get:function(){return this._constraint}}]),e}(fPt)).prototype,"axis",[JOt],Object.getOwnPropertyDescriptor(dLt.prototype,"axis"),dLt.prototype),m(dLt.prototype,"secondaryAxis",[$Ot],Object.getOwnPropertyDescriptor(dLt.prototype,"secondaryAxis"),dLt.prototype),m(dLt.prototype,"pivotA",[tLt],Object.getOwnPropertyDescriptor(dLt.prototype,"pivotA"),dLt.prototype),m(dLt.prototype,"pivotB",[eLt],Object.getOwnPropertyDescriptor(dLt.prototype,"pivotB"),dLt.prototype),m(dLt.prototype,"autoPivotB",[iLt],Object.getOwnPropertyDescriptor(dLt.prototype,"autoPivotB"),dLt.prototype),m(dLt.prototype,"breakForce",[nLt],Object.getOwnPropertyDescriptor(dLt.prototype,"breakForce"),dLt.prototype),m(dLt.prototype,"breakTorque",[rLt],Object.getOwnPropertyDescriptor(dLt.prototype,"breakTorque"),dLt.prototype),m(dLt.prototype,"linearLimitSettings",[sLt],Object.getOwnPropertyDescriptor(dLt.prototype,"linearLimitSettings"),dLt.prototype),m(dLt.prototype,"angularLimitSettings",[aLt],Object.getOwnPropertyDescriptor(dLt.prototype,"angularLimitSettings"),dLt.prototype),m(dLt.prototype,"linearDriverSettings",[oLt],Object.getOwnPropertyDescriptor(dLt.prototype,"linearDriverSettings"),dLt.prototype),m(dLt.prototype,"angularDriverSettings",[hLt],Object.getOwnPropertyDescriptor(dLt.prototype,"angularDriverSettings"),dLt.prototype),pLt=ja(dLt.prototype,"_breakForce",[lo],(function(){return 1e8})),mLt=ja(dLt.prototype,"_breakTorque",[lo],(function(){return 1e8})),gLt=ja(dLt.prototype,"_linearLimitSettings",[lo,uLt],null),vLt=ja(dLt.prototype,"_angularLimitSettings",[lo,lLt],null),yLt=ja(dLt.prototype,"_linearDriverSettings",[lo,cLt],null),SLt=ja(dLt.prototype,"_angularDriverSettings",[lo,_Lt],null),TLt=ja(dLt.prototype,"_pivotA",[lo],(function(){return new gn})),ALt=ja(dLt.prototype,"_pivotB",[lo],(function(){return new gn})),bLt=ja(dLt.prototype,"_autoPivotB",[lo],(function(){return!1})),ELt=ja(dLt.prototype,"_axis",[lo],(function(){return new gn(0,1,0)})),CLt=ja(dLt.prototype,"_secondaryAxis",[lo],(function(){return new gn(1,0,0)})),fLt=dLt))||fLt)),nNt=t("fO",(xLt=eo("cc.PointToPointConstraint"),wLt=Lo(gn),RLt=Lo(gn),xLt((m((DLt=function(t){function e(){var e;return(e=t.call(this,IEt.POINT_TO_POINT)||this)._pivotA=BLt&&BLt(),e._pivotB=MLt&&MLt(),e}return s(e,t),n(e,[{key:"pivotA",get:function(){return this._pivotA},set:function(t){gn.copy(this._pivotA,t),this.constraint.setPivotA(this._pivotA)}},{key:"pivotB",get:function(){return this._pivotB},set:function(t){gn.copy(this._pivotB,t),this.constraint.setPivotB(this._pivotB)}},{key:"constraint",get:function(){return this._constraint}}]),e}(fPt)).prototype,"pivotA",[wLt],Object.getOwnPropertyDescriptor(DLt.prototype,"pivotA"),DLt.prototype),m(DLt.prototype,"pivotB",[RLt],Object.getOwnPropertyDescriptor(DLt.prototype,"pivotB"),DLt.prototype),BLt=ja(DLt.prototype,"_pivotA",[lo],(function(){return new gn})),MLt=ja(DLt.prototype,"_pivotB",[lo],(function(){return new gn})),ILt=DLt))||ILt));new gn(0,0,0),new gn(0,0,0);var rNt,sNt,aNt,oNt,hNt,uNt,lNt,cNt,_Nt,fNt,dNt=t("fv",(PLt=eo("cc.CharacterController"),OLt=Lo(eDt.PhysicsGroup),LLt=Lo(ni),NLt=Lo(ni),FLt=Lo(ni),kLt=Lo(ni),GLt=Lo(gn),PLt(VLt=ro((m((ULt=function(t){function e(e){var i;return(i=t.call(this)||this).type=void 0,i._cct=null,i._group=zLt&&zLt(),i._minMoveDistance=HLt&&HLt(),i._stepOffset=WLt&&WLt(),i._slopeLimit=XLt&&XLt(),i._skinWidth=jLt&&jLt(),i._center=YLt&&YLt(),i._initialized=!1,i._prevPos=new gn,i._currentPos=new gn,i._velocity=new gn,i._centerWorldPosition=new gn,i._needCollisionEvent=!1,i._needTriggerEvent=!1,i.type=e,i}s(e,t);var i=e.prototype;return i.onLoad=function(){WRt.runInEditor&&(this._cct=function(t){return nIt.INITED||(nIt.INITED=!0,nIt[MEt.BOX]=function(){return YRt(WRt.wrapper.BoxCharacterController,HRt.BoxCharacterController)?rIt:new WRt.wrapper.BoxCharacterController},nIt[MEt.CAPSULE]=function(){return YRt(WRt.wrapper.CapsuleCharacterController,HRt.CapsuleCharacterController)?rIt:new WRt.wrapper.CapsuleCharacterController}),nIt[t]()}(this.type),this._initialized=this._cct.initialize(this),this._cct.onLoad())},i.onEnable=function(){this._cct&&this._cct.onEnable()},i.onDisable=function(){this._cct&&this._cct.onDisable()},i.onDestroy=function(){this._cct&&(this._needCollisionEvent=!1,this._needTriggerEvent=!1,this._cct.updateEventListener(),this._cct.onDestroy(),this._cct=null)},i.move=function(t){if(this._isInitialized){this._prevPos.set(this.centerWorldPosition);var e=eDt.instance.fixedTimeStep;this._cct.move(t,this._minMoveDistance,e),this._currentPos.set(this.centerWorldPosition),this._velocity=this._currentPos.subtract(this._prevPos).multiplyScalar(1/e),this._cct.syncPhysicsToScene()}},i.on=function(e,i,n,r){var s=t.prototype.on.call(this,e,i,n,r);return this._updateNeedEvent(e),s},i.off=function(e,i,n){t.prototype.off.call(this,e,i,n),this._updateNeedEvent()},i.once=function(e,i,n){var r=t.prototype.once.call(this,e,i,n);return this._updateNeedEvent(e),r},i.getGroup=function(){return this._isInitialized?this._cct.getGroup():0},i.setGroup=function(t){this._isInitialized&&this._cct.setGroup(t)},i.addGroup=function(t){this._isInitialized&&this._cct.addGroup(t)},i.removeGroup=function(t){this._isInitialized&&this._cct.removeGroup(t)},i.getMask=function(){return this._isInitialized?this._cct.getMask():0},i.setMask=function(t){this._isInitialized&&this._cct.setMask(t)},i.addMask=function(t){this._isInitialized&&this._cct.addMask(t)},i.removeMask=function(t){this._isInitialized&&this._cct.removeMask(t)},i._updateNeedEvent=function(t){this.isValid&&(void 0!==t?("onControllerColliderHit"===t&&(this._needCollisionEvent=!0),"onControllerTriggerEnter"!==t&&"onControllerTriggerStay"!==t&&"onControllerTriggerExit"!==t||(this._needTriggerEvent=!0)):(this.hasEventListener("onControllerColliderHit")||(this._needCollisionEvent=!1),this.hasEventListener("onControllerTriggerEnter")||this.hasEventListener("onControllerTriggerStay")||this.hasEventListener("onControllerTriggerExit")||(this._needTriggerEvent=!1)),this._cct&&this._cct.updateEventListener())},n(e,[{key:"group",get:function(){return this._group},set:function(t){this._group=t,this._cct&&this._cct.getGroup()!==t&&this._cct.setGroup(t)}},{key:"minMoveDistance",get:function(){return this._minMoveDistance},set:function(t){this._minMoveDistance!==t&&(this._minMoveDistance=Math.abs(t))}},{key:"stepOffset",get:function(){return this._stepOffset},set:function(t){this._stepOffset!==t&&(this._stepOffset=Math.abs(t),this._cct&&this._cct.setStepOffset(t))}},{key:"slopeLimit",get:function(){return this._slopeLimit},set:function(t){this._slopeLimit!==t&&(this._slopeLimit=Math.abs(t),this._cct&&this._cct.setSlopeLimit(t))}},{key:"skinWidth",get:function(){return this._skinWidth},set:function(t){this._skinWidth!==t&&(this._skinWidth=Math.abs(t),this._cct&&this._cct.setContactOffset(Math.max(1e-4,t)))}},{key:"center",get:function(){return this._center},set:function(t){gn.equals(this._center,t)||gn.copy(this._center,t)}},{key:"_isInitialized",get:function(){return!(null===this._cct||!this._initialized)}},{key:"centerWorldPosition",get:function(){return this._isInitialized&&this._cct.getPosition(this._centerWorldPosition),this._centerWorldPosition},set:function(t){this._isInitialized&&this._cct.setPosition(t)}},{key:"velocity",get:function(){return this._velocity}},{key:"isGrounded",get:function(){return this._cct.onGround()}},{key:"needCollisionEvent",get:function(){return this._needCollisionEvent}},{key:"needTriggerEvent",get:function(){return this._needTriggerEvent}}]),e}(zs(mp))).prototype,"group",[OLt],Object.getOwnPropertyDescriptor(ULt.prototype,"group"),ULt.prototype),m(ULt.prototype,"minMoveDistance",[LLt],Object.getOwnPropertyDescriptor(ULt.prototype,"minMoveDistance"),ULt.prototype),m(ULt.prototype,"stepOffset",[NLt],Object.getOwnPropertyDescriptor(ULt.prototype,"stepOffset"),ULt.prototype),m(ULt.prototype,"slopeLimit",[FLt],Object.getOwnPropertyDescriptor(ULt.prototype,"slopeLimit"),ULt.prototype),m(ULt.prototype,"skinWidth",[kLt],Object.getOwnPropertyDescriptor(ULt.prototype,"skinWidth"),ULt.prototype),m(ULt.prototype,"center",[GLt],Object.getOwnPropertyDescriptor(ULt.prototype,"center"),ULt.prototype),zLt=ja(ULt.prototype,"_group",[lo],(function(){return eDt.PhysicsGroup.DEFAULT})),HLt=ja(ULt.prototype,"_minMoveDistance",[lo],(function(){return.001})),WLt=ja(ULt.prototype,"_stepOffset",[lo],(function(){return.5})),XLt=ja(ULt.prototype,"_slopeLimit",[lo],(function(){return 45})),jLt=ja(ULt.prototype,"_skinWidth",[lo],(function(){return.01})),YLt=ja(ULt.prototype,"_center",[lo],(function(){return new gn})),VLt=ULt))||VLt)||VLt));new gn(0,0,0);var pNt,mNt,gNt,vNt,yNt,SNt,TNt,ANt,bNt=t("fQ",(rNt=eo("cc.BoxCharacterController"),sNt=no(-1),aNt=Lo(ni),oNt=Lo(ni),hNt=Lo(ni),rNt(uNt=sNt((m((lNt=function(t){function e(){var e;return(e=t.call(this,MEt.BOX)||this)._halfHeight=cNt&&cNt(),e._halfSideExtent=_Nt&&_Nt(),e._halfForwardExtent=fNt&&fNt(),e}return s(e,t),n(e,[{key:"halfHeight",get:function(){return this._halfHeight},set:function(t){this._halfHeight!==t&&(this._halfHeight=Math.abs(t),this._cct&&this._cct.setHalfHeight(t))}},{key:"halfSideExtent",get:function(){return this._halfSideExtent},set:function(t){this._halfSideExtent!==t&&(this._halfSideExtent=Math.abs(t),this._cct&&this._cct.setHalfSideExtent(t))}},{key:"halfForwardExtent",get:function(){return this._halfForwardExtent},set:function(t){this._halfForwardExtent!==t&&(this._halfForwardExtent=Math.abs(t),this._cct&&this._cct.setHalfForwardExtent(t))}}]),e}(dNt)).prototype,"halfHeight",[aNt],Object.getOwnPropertyDescriptor(lNt.prototype,"halfHeight"),lNt.prototype),m(lNt.prototype,"halfSideExtent",[oNt],Object.getOwnPropertyDescriptor(lNt.prototype,"halfSideExtent"),lNt.prototype),m(lNt.prototype,"halfForwardExtent",[hNt],Object.getOwnPropertyDescriptor(lNt.prototype,"halfForwardExtent"),lNt.prototype),cNt=ja(lNt.prototype,"_halfHeight",[lo],(function(){return.5})),_Nt=ja(lNt.prototype,"_halfSideExtent",[lo],(function(){return.5})),fNt=ja(lNt.prototype,"_halfForwardExtent",[lo],(function(){return.5})),uNt=lNt))||uNt)||uNt));new gn(0,0,0);var ENt=t("fP",(pNt=eo("cc.CapsuleCharacterController"),mNt=no(-1),gNt=Lo(ni),vNt=Lo(ni),pNt(yNt=mNt((m((SNt=function(t){function e(){var e;return(e=t.call(this,MEt.CAPSULE)||this)._radius=TNt&&TNt(),e._height=ANt&&ANt(),e}return s(e,t),n(e,[{key:"radius",get:function(){return this._radius},set:function(t){this._radius!==t&&(this._radius=Math.abs(t),this._cct&&this._cct.setRadius(t))}},{key:"height",get:function(){return this._height},set:function(t){this._height!==t&&(this._height=Math.abs(t),this._cct&&this._cct.setHeight(t))}}]),e}(dNt)).prototype,"radius",[gNt],Object.getOwnPropertyDescriptor(SNt.prototype,"radius"),SNt.prototype),m(SNt.prototype,"height",[vNt],Object.getOwnPropertyDescriptor(SNt.prototype,"height"),SNt.prototype),TNt=ja(SNt.prototype,"_radius",[lo],(function(){return.5})),ANt=ja(SNt.prototype,"_height",[lo],(function(){return 1})),yNt=SNt))||yNt)||yNt)),CNt=function(){this.worldPosition=new gn,this.worldNormal=new gn,this.motionDirection=new gn,this.motionLength=0};S.PhysicsSystem=eDt,S.PhysicsMaterial=NIt,S.PhysicsRayResult=FIt,S.ConstantForce=kBt;var xNt,wNt,RNt,INt,DNt,BNt=Object.freeze({__proto__:null,PhysicsSystem:eDt,PhysicsRayResult:FIt,PhysicsLineStripCastResult:kIt,get Collider(){return yDt},BoxCollider:MBt,SphereCollider:PBt,CapsuleCollider:OBt,MeshCollider:FBt,CylinderCollider:LBt,ConeCollider:NBt,TerrainCollider:hMt,get SimplexCollider(){return uMt},PlaneCollider:_Pt,get Constraint(){return fPt},HingeConstraint:QLt,FixedConstraint:ZLt,PointToPointConstraint:nNt,ConfigurableConstraint:iNt,get RigidBody(){return fDt},PhysicsMaterial:NIt,ConstantForce:kBt,CharacterController:dNt,BoxCharacterController:bNt,CapsuleCharacterController:ENt,selector:WRt,utils:mK,CharacterControllerContact:CNt,get ERigidBodyType(){return EEt},get EAxisDirection(){return CEt},get ED6Axis(){return xEt},get ESimplexType(){return wEt},get EColliderType(){return REt},get EConstraintType(){return IEt},get EConstraintMode(){return DEt},get EDriverMode(){return BEt},get ECharacterControllerType(){return MEt},get PhysicsGroup(){return PEt},get EPhysicsDrawFlags(){return OEt}});t("fs",BNt),ut(eDt,"PhysicsSystem",[{name:"ins",newName:"instance"},{name:"PHYSICS_AMMO",newName:"PHYSICS_BULLET"}]),ut(eDt.prototype,"PhysicsSystem.prototype",[{name:"deltaTime",newName:"fixedTimeStep"},{name:"maxSubStep",newName:"maxSubSteps"}]),lt(eDt.prototype,"PhysicsSystem.prototype",[{name:"useFixedTime"},{name:"useCollisionMatrix"},{name:"updateCollisionMatrix"},{name:"resetCollisionMatrix"},{name:"isCollisionGroup"},{name:"setCollisionGroup"}]),ut(yDt.prototype,"Collider.prototype",[{name:"attachedRigidbody",newName:"attachedRigidBody"},{name:"TYPE",newName:"type"}]),ut(yDt,"Collider",[{name:"EColliderType",newName:"Type"},{name:"EAxisDirection",newName:"Axis"}]),ut(fPt,"Constraint",[{name:"EConstraintType",newName:"Type"}]),ut(MBt.prototype,"BoxCollider.prototype",[{name:"boxShape",newName:"shape"}]),ut(PBt.prototype,"SphereCollider.prototype",[{name:"sphereShape",newName:"shape"}]),ut(OBt.prototype,"CapsuleCollider.prototype",[{name:"capsuleShape",newName:"shape"}]),ut(fDt.prototype,"RigidBody.prototype",[{name:"rigidBody",newName:"body"}]),ut(fDt,"RigidBody",[{name:"ERigidBodyType",newName:"Type"}]),lt(fDt.prototype,"RigidBody.prototype",[{name:"fixedRotation"}]),S.RigidBodyComponent=fDt,ne(fDt,"cc.RigidBodyComponent"),S.ColliderComponent=yDt,ne(yDt,"cc.ColliderComponent"),S.BoxColliderComponent=MBt,ne(MBt,"cc.BoxColliderComponent"),S.SphereColliderComponent=PBt,ne(PBt,"cc.SphereColliderComponent"),ne(OBt,"cc.CapsuleColliderComponent"),ne(FBt,"cc.MeshColliderComponent"),ne(LBt,"cc.CylinderColliderComponent"),S.PhysicMaterial=NIt,ne(NIt,"cc.PhysicMaterial"),S.physics=BNt,function(t){t[t.BODY_RE_ADD=1]="BODY_RE_ADD",t[t.GHOST_RE_ADD=2]="GHOST_RE_ADD"}(xNt||(xNt={})),function(t){t[t.CF_STATIC_OBJECT=1]="CF_STATIC_OBJECT",t[t.CF_KINEMATIC_OBJECT=2]="CF_KINEMATIC_OBJECT",t[t.CF_NO_CONTACT_RESPONSE=4]="CF_NO_CONTACT_RESPONSE",t[t.CF_CUSTOM_MATERIAL_CALLBACK=8]="CF_CUSTOM_MATERIAL_CALLBACK",t[t.CF_CHARACTER_OBJECT=16]="CF_CHARACTER_OBJECT",t[t.CF_DISABLE_VISUALIZE_OBJECT=32]="CF_DISABLE_VISUALIZE_OBJECT",t[t.CF_DISABLE_SPU_COLLISION_PROCESSING=64]="CF_DISABLE_SPU_COLLISION_PROCESSING"}(wNt||(wNt={})),function(t){t[t.CO_COLLISION_OBJECT=1]="CO_COLLISION_OBJECT",t[t.CO_RIGID_BODY=2]="CO_RIGID_BODY",t[t.CO_GHOST_OBJECT=4]="CO_GHOST_OBJECT",t[t.CO_SOFT_BODY=8]="CO_SOFT_BODY",t[t.CO_HF_FLUID=16]="CO_HF_FLUID",t[t.CO_USER_TYPE=32]="CO_USER_TYPE",t[t.CO_FEATHERSTONE_LINK=64]="CO_FEATHERSTONE_LINK"}(RNt||(RNt={})),function(t){t[t.ACTIVE_TAG=1]="ACTIVE_TAG",t[t.ISLAND_SLEEPING=2]="ISLAND_SLEEPING",t[t.WANTS_DEACTIVATION=3]="WANTS_DEACTIVATION",t[t.DISABLE_DEACTIVATION=4]="DISABLE_DEACTIVATION",t[t.DISABLE_SIMULATION=5]="DISABLE_SIMULATION"}(INt||(INt={})),function(t){t[t.BT_DISABLE_WORLD_GRAVITY=1]="BT_DISABLE_WORLD_GRAVITY",t[t.BT_ENABLE_GYROPSCOPIC_FORCE=2]="BT_ENABLE_GYROPSCOPIC_FORCE"}(DNt||(DNt={}));var MNt=cIt,PNt=_It,ONt=function(){var t=e.prototype;function e(){this.id=void 0,this._isEnabled=!1,this._isUsingCCD=!1,this._sharedBody=void 0,this._rigidBody=void 0,this.id=e.idCounter++}return t.setMass=function(t){this._rigidBody.isDynamic&&(sIt.RigidBody_setMass(this.impl,t),this._wakeUpIfSleep(),this._sharedBody.dirty|=xNt.BODY_RE_ADD)},t.setType=function(t){this._sharedBody.setType(t)},t.setLinearDamping=function(){sIt.RigidBody_setDamping(this.impl,this._rigidBody.linearDamping,this._rigidBody.angularDamping)},t.setAngularDamping=function(){sIt.RigidBody_setDamping(this.impl,this._rigidBody.linearDamping,this._rigidBody.angularDamping)},t.useGravity=function(t){if(this._rigidBody.isDynamic){var e=sIt.RigidBody_getFlags(this.impl);t?e&=~DNt.BT_DISABLE_WORLD_GRAVITY:(sIt.RigidBody_setGravity(this.impl,DIt(lIt.instance.BT_V3_0,gn.ZERO)),e|=DNt.BT_DISABLE_WORLD_GRAVITY),sIt.RigidBody_setFlags(this.impl,e),this._wakeUpIfSleep(),this._sharedBody.dirty|=xNt.BODY_RE_ADD}},t.useCCD=function(t){sIt.CollisionObject_setCcdMotionThreshold(this.impl,t?.01:0),sIt.CollisionObject_setCcdSweptSphereRadius(this.impl,t?.1:0),this._isUsingCCD=t},t.isUsingCCD=function(){return this._isUsingCCD},t.setLinearFactor=function(t){sIt.RigidBody_setLinearFactor(this.impl,DIt(lIt.instance.BT_V3_0,t)),this._wakeUpIfSleep()},t.setAngularFactor=function(t){sIt.RigidBody_setAngularFactor(this.impl,DIt(lIt.instance.BT_V3_0,t)),this._wakeUpIfSleep()},t.setAllowSleep=function(t){this._rigidBody.isDynamic&&(t?sIt.CollisionObject_forceActivationState(this.impl,INt.ACTIVE_TAG):sIt.CollisionObject_forceActivationState(this.impl,INt.DISABLE_DEACTIVATION),this._wakeUpIfSleep())},t.clearState=function(){sIt.RigidBody_clearState(this.impl)},t.clearVelocity=function(){this.setLinearVelocity(gn.ZERO),this.setAngularVelocity(gn.ZERO)},t.clearForces=function(){sIt.RigidBody_clearForces(this.impl)},t.initialize=function(t){this._rigidBody=t,this._sharedBody=eDt.instance.physicsWorld.getSharedBody(this._rigidBody.node,this),this._sharedBody.reference=!0},t.onEnable=function(){this._isEnabled=!0,this.setMass(this._rigidBody.mass),this.setAllowSleep(this._rigidBody.allowSleep),this.setLinearDamping(this._rigidBody.linearDamping),this.setAngularDamping(this._rigidBody.angularDamping),this.setLinearFactor(this._rigidBody.linearFactor),this.setAngularFactor(this._rigidBody.angularFactor),this.useGravity(this._rigidBody.useGravity),this._sharedBody.bodyEnabled=!0},t.onDisable=function(){this._isEnabled=!1,this._sharedBody.bodyEnabled=!1},t.onDestroy=function(){this._sharedBody.reference=!1,this._rigidBody=null,this._sharedBody=null},t.wakeUp=function(t){void 0===t&&(t=!0),sIt.CollisionObject_activate(this.impl,t)},t.sleep=function(){var t=sIt.CollisionObject_getActivationState(this.impl);t!==INt.DISABLE_DEACTIVATION&&t!==INt.DISABLE_SIMULATION&&sIt.CollisionObject_forceActivationState(this.impl,INt.ISLAND_SLEEPING)},t.setSleepThreshold=function(t){this._wakeUpIfSleep(),sIt.RigidBody_setSleepingThresholds(this.impl,t,t)},t.getSleepThreshold=function(){return sIt.RigidBody_getLinearSleepingThreshold(this.impl)},t.getLinearVelocity=function(t){return BIt(t,sIt.RigidBody_getLinearVelocity(this.impl))},t.setLinearVelocity=function(t){this._wakeUpIfSleep(),DIt(sIt.RigidBody_getLinearVelocity(this.impl),t)},t.getAngularVelocity=function(t){return BIt(t,sIt.RigidBody_getAngularVelocity(this.impl))},t.setAngularVelocity=function(t){this._wakeUpIfSleep(),DIt(sIt.RigidBody_getAngularVelocity(this.impl),t)},t.applyLocalForce=function(t,e){this._sharedBody.syncSceneToPhysics(),this._wakeUpIfSleep();var i=this._sharedBody.node.worldRotation,n=gn.transformQuat(MNt,t,i),r=e?gn.transformQuat(PNt,e,i):gn.ZERO;sIt.RigidBody_applyForce(this.impl,DIt(lIt.instance.BT_V3_0,n),DIt(lIt.instance.BT_V3_1,r))},t.applyLocalTorque=function(t){this._sharedBody.syncSceneToPhysics(),this._wakeUpIfSleep(),gn.transformQuat(MNt,t,this._sharedBody.node.worldRotation),sIt.RigidBody_applyTorque(this.impl,DIt(lIt.instance.BT_V3_0,MNt))},t.applyLocalImpulse=function(t,e){this._sharedBody.syncSceneToPhysics(),this._wakeUpIfSleep();var i=this._sharedBody.node.worldRotation,n=gn.transformQuat(MNt,t,i),r=e?gn.transformQuat(PNt,e,i):gn.ZERO;sIt.RigidBody_applyImpulse(this.impl,DIt(lIt.instance.BT_V3_0,n),DIt(lIt.instance.BT_V3_1,r))},t.applyForce=function(t,e){this._sharedBody.syncSceneToPhysics(),this._wakeUpIfSleep();var i=e||gn.ZERO;sIt.RigidBody_applyForce(this.impl,DIt(lIt.instance.BT_V3_0,t),DIt(lIt.instance.BT_V3_1,i))},t.applyTorque=function(t){this._sharedBody.syncSceneToPhysics(),this._wakeUpIfSleep(),sIt.RigidBody_applyTorque(this.impl,DIt(lIt.instance.BT_V3_0,t))},t.applyImpulse=function(t,e){this._sharedBody.syncSceneToPhysics(),this._wakeUpIfSleep();var i=e||gn.ZERO;sIt.RigidBody_applyImpulse(this.impl,DIt(lIt.instance.BT_V3_0,t),DIt(lIt.instance.BT_V3_1,i))},t.getGroup=function(){return this._sharedBody.collisionFilterGroup},t.setGroup=function(t){this._sharedBody.collisionFilterGroup=t},t.addGroup=function(t){this._sharedBody.collisionFilterGroup|=t},t.removeGroup=function(t){this._sharedBody.collisionFilterGroup&=~t},t.getMask=function(){return this._sharedBody.collisionFilterMask},t.setMask=function(t){this._sharedBody.collisionFilterMask=t},t.addMask=function(t){this._sharedBody.collisionFilterMask|=t},t.removeMask=function(t){this._sharedBody.collisionFilterMask&=~t},t._wakeUpIfSleep=function(){this.isAwake||sIt.CollisionObject_activate(this.impl,!0)},n(e,[{key:"isAwake",get:function(){var t=sIt.CollisionObject_getActivationState(this.impl);return t===INt.ACTIVE_TAG||t===INt.DISABLE_DEACTIVATION}},{key:"isSleepy",get:function(){return sIt.CollisionObject_getActivationState(this.impl)===INt.WANTS_DEACTIVATION}},{key:"isSleeping",get:function(){return sIt.CollisionObject_getActivationState(this.impl)===INt.ISLAND_SLEEPING}},{key:"impl",get:function(){return this._sharedBody.body}},{key:"rigidBody",get:function(){return this._rigidBody}},{key:"sharedBody",get:function(){return this._sharedBody}},{key:"isEnabled",get:function(){return this._isEnabled}}]),e}();ONt.idCounter=0;var LNt={syncPhysicsToGraphics:function(t){aIt.CACHE.getWrapper(t,aIt.BODY_CACHE_NAME).syncPhysicsToGraphics()},onShapeHitExt:function(t,e){aIt.CACHE.getWrapper(e,aIt.CCT_CACHE_NAME).onShapeHitExt(t)},onDebugDrawLine:function(t,e,i){var n=aIt.CACHE.world;n&&n.onDebugDrawLine(t,e,i)},clearLines:function(){var t=aIt.CACHE.world;t&&t.onClearLines()},flushLines:function(){}},NNt=cIt,FNt=dIt,kNt=0,GNt=function(){function t(e,i){this.id=void 0,this.node=void 0,this.wrappedWorld=void 0,this.wrappedJoints0=[],this.wrappedJoints1=[],this.dirty=0,this._collisionFilterGroup=eDt.PhysicsGroup.DEFAULT,this._collisionFilterMask=-1,this.ref=0,this.bodyIndex=-1,this.ghostIndex=-1,this._bodyStruct=void 0,this._ghostStruct=void 0,this._wrappedBody=null,this.id=t.idCounter++,this.wrappedWorld=i,this.node=e}t.getSharedBody=function(e,i,n){var r,s=e.uuid;if(t.sharedBodesMap.has(s))r=t.sharedBodesMap.get(s);else{r=new t(e,i);var a=PEt.DEFAULT,o=eDt.instance.collisionMatrix[a];r._collisionFilterGroup=a,r._collisionFilterMask=o,t.sharedBodesMap.set(e.uuid,r)}if(n){r._wrappedBody=n;var h=n.rigidBody.group,u=eDt.instance.collisionMatrix[h];r._collisionFilterGroup=h,r._collisionFilterMask=u}return r};var e=t.prototype;return e._instantiateBodyStruct=function(){if(!this._bodyStruct){var t=0;this._wrappedBody&&this._wrappedBody.rigidBody.enabled&&this._wrappedBody.rigidBody.isDynamic&&(t=this._wrappedBody.rigidBody.mass);var e=lIt.instance.BT_TRANSFORM_0,i=lIt.instance.BT_QUAT_0;DIt(sIt.Transform_getOrigin(e),this.node.worldPosition),MIt(i,this.node.worldRotation),sIt.Transform_setRotation(e,i);var n=sIt.MotionState.implement(LNt).$$.ptr;sIt.ccMotionState_setup(n,this.id,e);var r=sIt.RigidBody_new(t,n),s=eDt.instance.sleepThreshold;sIt.RigidBody_setSleepingThresholds(r,s,s),this._bodyStruct={id:kNt++,body:r,motionState:n,compound:sIt.ccCompoundShape_new(),wrappedShapes:[],useCompound:!1},lIt.setWrapper(this.id,aIt.BODY_CACHE_NAME,this),this._ghostStruct&&sIt.CollisionObject_setIgnoreCollisionCheck(this.ghost,this.body,!0),this._wrappedBody&&this.setBodyType(this._wrappedBody.rigidBody.type)}},e._instantiateGhostStruct=function(){if(!this._ghostStruct){var t=sIt.CollisionObject_new(),e=sIt.ccCompoundShape_new();sIt.CollisionObject_setCollisionShape(t,e),sIt.CollisionObject_setCollisionFlags(t,wNt.CF_STATIC_OBJECT|wNt.CF_NO_CONTACT_RESPONSE),this._ghostStruct={id:kNt++,ghost:t,compound:e,wrappedShapes:[]},this._bodyStruct&&sIt.CollisionObject_setIgnoreCollisionCheck(this.body,this.ghost,!0),this._wrappedBody&&this.setGhostType(this._wrappedBody.rigidBody.type)}},e.setType=function(t){this.setBodyType(t),this.setGhostType(t)},e.setBodyType=function(t){if(this._bodyStruct&&this._wrappedBody){var e=this._bodyStruct.body,i=this._wrappedBody,n=i.rigidBody,r=sIt.CollisionObject_getCollisionFlags(e),s=lIt.instance.BT_V3_0;switch(t){case EEt.DYNAMIC:r&=~wNt.CF_KINEMATIC_OBJECT,r&=~wNt.CF_STATIC_OBJECT,sIt.CollisionObject_setCollisionFlags(e,r),i.setMass(n.mass),i.useGravity(n.useGravity),i.setAllowSleep(n.allowSleep);break;case EEt.KINEMATIC:sIt.Vec3_set(s,0,0,0),sIt.RigidBody_setMassProps(e,0,s),r|=wNt.CF_KINEMATIC_OBJECT,r&=~wNt.CF_STATIC_OBJECT,sIt.CollisionObject_setCollisionFlags(e,r),sIt.CollisionObject_forceActivationState(e,INt.DISABLE_DEACTIVATION);break;case EEt.STATIC:default:sIt.Vec3_set(s,0,0,0),sIt.RigidBody_setMassProps(e,0,s),r|=wNt.CF_STATIC_OBJECT,r&=~wNt.CF_KINEMATIC_OBJECT,sIt.CollisionObject_setCollisionFlags(e,r),sIt.CollisionObject_forceActivationState(e,INt.ISLAND_SLEEPING)}this.dirty|=xNt.BODY_RE_ADD}},e.setGhostType=function(t){if(this._ghostStruct){var e=this._ghostStruct.ghost,i=sIt.CollisionObject_getCollisionFlags(e);switch(t){case EEt.DYNAMIC:case EEt.KINEMATIC:i&=~wNt.CF_STATIC_OBJECT,i|=wNt.CF_KINEMATIC_OBJECT,sIt.CollisionObject_setCollisionFlags(e,i),sIt.CollisionObject_forceActivationState(e,INt.DISABLE_DEACTIVATION);break;case EEt.STATIC:default:i&=~wNt.CF_KINEMATIC_OBJECT,i|=wNt.CF_STATIC_OBJECT,sIt.CollisionObject_setCollisionFlags(e,i),sIt.CollisionObject_forceActivationState(e,INt.ISLAND_SLEEPING)}this.dirty|=xNt.GHOST_RE_ADD}},e.addShape=function(t,e){function i(t,e){sIt.CollisionObject_setCollisionShape(t.body,e),t.dirty|=xNt.BODY_RE_ADD,t._wrappedBody&&t._wrappedBody.isEnabled&&t._wrappedBody.setMass(t._wrappedBody.rigidBody.mass)}if(e)this.ghostStruct.wrappedShapes.indexOf(t)<0&&(this.ghostStruct.wrappedShapes.push(t),t.setCompound(this.ghostCompoundShape),this.ghostEnabled=!0);else if(this.bodyStruct.wrappedShapes.indexOf(t)<0){if(this.bodyStruct.wrappedShapes.push(t),this.bodyStruct.useCompound)t.setCompound(this.bodyCompoundShape);else{var n=this.bodyStruct.wrappedShapes.length;if(1!==n||t.needCompound()){this.bodyStruct.useCompound=!0;for(var r=0;r<n;r++)this.bodyStruct.wrappedShapes[r].setCompound(this.bodyCompoundShape);i(this,this.bodyStruct.compound)}else i(this,t.impl)}this.bodyEnabled=!0}},e.removeShape=function(t,e){if(e){var i=this.ghostStruct.wrappedShapes.indexOf(t);i>=0&&(fe(this.ghostStruct.wrappedShapes,i),t.setCompound(0),this.ghostEnabled=!1)}else{var n=this.bodyStruct.wrappedShapes.indexOf(t);n>=0&&(this.bodyStruct.useCompound?t.setCompound(0):sIt.CollisionObject_setCollisionShape(this.body,sIt.EmptyShape_static()),sIt.CollisionObject_activate(this.body,!0),this.dirty|=xNt.BODY_RE_ADD,fe(this.bodyStruct.wrappedShapes,n),this.bodyEnabled=!1)}},e.addJoint=function(t,e){e?this.wrappedJoints1.indexOf(t)<0&&this.wrappedJoints1.push(t):this.wrappedJoints0.indexOf(t)<0&&this.wrappedJoints0.push(t)},e.removeJoint=function(t,e){if(e){var i=this.wrappedJoints1.indexOf(t);i>=0&&fe(this.wrappedJoints1,i)}else{var n=this.wrappedJoints0.indexOf(t);n>=0&&fe(this.wrappedJoints0,n)}},e.updateDirty=function(){this.dirty&&(this.bodyIndex>=0&&this.dirty&xNt.BODY_RE_ADD&&this.updateBodyByReAdd(),this.ghostIndex>=0&&this.dirty&xNt.GHOST_RE_ADD&&this.updateGhostByReAdd(),this.dirty=0)},e.syncSceneToPhysics=function(){if(this.node.hasChangedFlags){var t=lIt.instance.BT_QUAT_0,e=sIt.CollisionObject_getWorldTransform(this.body);if(MIt(t,this.node.worldRotation),DIt(sIt.Transform_getOrigin(e),this.node.worldPosition),sIt.Transform_setRotation(e,t),this.node.hasChangedFlags&mm.SCALE&&this.syncBodyScale(),sIt.CollisionObject_isKinematicObject(this.body)){var i=sIt.RigidBody_getMotionState(this.body);i&&sIt.MotionState_setWorldTransform(i,e)}else this.isBodySleeping()&&sIt.CollisionObject_activate(this.body,!1)}},e.syncPhysicsToScene=function(){sIt.CollisionObject_isStaticOrKinematicObject(this.body)||this.syncPhysicsToGraphics()},e.syncPhysicsToGraphics=function(){if(!this.isBodySleeping()){var t=lIt.instance.BT_QUAT_0,e=lIt.instance.BT_TRANSFORM_0;sIt.RigidBody_getWorldTransform(this.body,e);var i=sIt.Transform_getRotationAndOrigin(e,t);if(this.node.worldRotation=PIt(FNt,t),this.node.worldPosition=BIt(NNt,i),this._ghostStruct){var n=sIt.CollisionObject_getWorldTransform(this.ghost);DIt(sIt.Transform_getOrigin(n),this.node.worldPosition),MIt(t,this.node.worldRotation),sIt.Transform_setRotation(n,t)}}},e.syncSceneToGhost=function(){if(this.node.hasChangedFlags){var t=lIt.instance.BT_QUAT_0,e=sIt.CollisionObject_getWorldTransform(this.ghost);DIt(sIt.Transform_getOrigin(e),this.node.worldPosition),MIt(t,this.node.worldRotation),sIt.Transform_setRotation(e,t),this.node.hasChangedFlags&mm.SCALE&&this.syncGhostScale(),sIt.CollisionObject_activate(this.ghost,!1)}},e.syncInitialBody=function(){var t=lIt.instance.BT_QUAT_0,e=sIt.CollisionObject_getWorldTransform(this.body);DIt(sIt.Transform_getOrigin(e),this.node.worldPosition),MIt(t,this.node.worldRotation),sIt.Transform_setRotation(e,t),this.syncBodyScale(),sIt.CollisionObject_activate(this.body,!1)},e.syncInitialGhost=function(){var t=lIt.instance.BT_QUAT_0,e=sIt.CollisionObject_getWorldTransform(this.ghost);DIt(sIt.Transform_getOrigin(e),this.node.worldPosition),MIt(t,this.node.worldRotation),sIt.Transform_setRotation(e,t),this.syncGhostScale(),sIt.CollisionObject_activate(this.body,!1)},e.syncBodyScale=function(){for(var t=0;t<this.bodyStruct.wrappedShapes.length;t++)this.bodyStruct.wrappedShapes[t].updateScale();for(var e=0;e<this.wrappedJoints0.length;e++)this.wrappedJoints0[e].updateScale0();for(var i=0;i<this.wrappedJoints1.length;i++)this.wrappedJoints1[i].updateScale1()},e.syncGhostScale=function(){for(var t=0;t<this.ghostStruct.wrappedShapes.length;t++)this.ghostStruct.wrappedShapes[t].updateScale()},e.updateBodyByReAdd=function(){this.bodyIndex>=0&&(this.wrappedWorld.removeSharedBody(this),this.bodyIndex=this.wrappedWorld.bodies.length,this.wrappedWorld.addSharedBody(this))},e.updateGhostByReAdd=function(){this.ghostIndex>=0&&(this.wrappedWorld.removeGhostObject(this),this.ghostIndex=this.wrappedWorld.ghosts.length,this.wrappedWorld.addGhostObject(this))},e.destroy=function(){if(t.sharedBodesMap.delete(this.node.uuid),this.node=null,this.wrappedWorld=null,this._bodyStruct){var e=this._bodyStruct;lIt.delWrapper(this.id,aIt.BODY_CACHE_NAME),sIt._safe_delete(e.motionState,tIt.EBulletTypeMotionState),sIt._safe_delete(e.compound,tIt.EBulletTypeCollisionShape),sIt._safe_delete(e.body,tIt.EBulletTypeCollisionObject),this._bodyStruct=null}if(this._ghostStruct){var i=this._ghostStruct;sIt._safe_delete(i.compound,tIt.EBulletTypeCollisionShape),sIt._safe_delete(i.ghost,tIt.EBulletTypeCollisionObject),this._ghostStruct=null}},e.isBodySleeping=function(){return sIt.CollisionObject_isSleeping(this.body)},n(t,[{key:"wrappedBody",get:function(){return this._wrappedBody}},{key:"bodyCompoundShape",get:function(){return this.bodyStruct.compound}},{key:"ghostCompoundShape",get:function(){return this.ghostStruct.compound}},{key:"body",get:function(){return this.bodyStruct.body}},{key:"ghost",get:function(){return this.ghostStruct.ghost}},{key:"collisionFilterGroup",get:function(){return this._collisionFilterGroup},set:function(t){t!==this._collisionFilterGroup&&(this._collisionFilterGroup=t,this.dirty|=xNt.BODY_RE_ADD,this.dirty|=xNt.GHOST_RE_ADD)}},{key:"collisionFilterMask",get:function(){return this._collisionFilterMask},set:function(t){t!==this._collisionFilterMask&&(this._collisionFilterMask=t,this.dirty|=xNt.BODY_RE_ADD,this.dirty|=xNt.GHOST_RE_ADD)}},{key:"bodyStruct",get:function(){return this._instantiateBodyStruct(),this._bodyStruct}},{key:"ghostStruct",get:function(){return this._instantiateGhostStruct(),this._ghostStruct}},{key:"bodyEnabled",set:function(t){if(t){if(this.bodyIndex<0){if(0===this.bodyStruct.wrappedShapes.length){if(!this.wrappedBody)return;if(!this.wrappedBody.rigidBody.isDynamic)return}this.bodyIndex=this.wrappedWorld.bodies.length,this.wrappedWorld.addSharedBody(this),this.syncInitialBody()}}else this.bodyIndex>=0&&(0===this.bodyStruct.wrappedShapes.length&&null==this.wrappedBody||0===this.bodyStruct.wrappedShapes.length&&null!=this.wrappedBody&&!this.wrappedBody.isEnabled||0===this.bodyStruct.wrappedShapes.length&&null!=this.wrappedBody&&!this.wrappedBody.rigidBody.enabledInHierarchy)&&(sIt.RigidBody_clearState(this.body),this.bodyIndex=-1,this.wrappedWorld.removeSharedBody(this))}},{key:"ghostEnabled",set:function(t){t?this.ghostIndex<0&&this.ghostStruct.wrappedShapes.length>0&&(this.ghostIndex=1,this.wrappedWorld.addGhostObject(this),this.syncInitialGhost()):this.ghostIndex>=0&&0===this.ghostStruct.wrappedShapes.length&&this.ghost&&(this.ghostIndex=-1,this.wrappedWorld.removeGhostObject(this))}},{key:"reference",set:function(t){t?this.ref++:this.ref--,0===this.ref&&this.destroy()}}]),t}();GNt.idCounter=0,GNt.sharedBodesMap=new Map;var VNt=cIt,UNt={},zNt=function(){function t(){this.id=t.idCounter++,this._isEnabled=!1,this._isTrigger=!1,this._isInitialized=!1,this._impl=0,this._compound=0,this.quat=sIt.Quat_new(0,0,0,1),this.transform=sIt.Transform_new(),this._collider=void 0,this._sharedBody=void 0}var e=t.prototype;return e.updateEventListener=function(){this._sharedBody.wrappedWorld.updateNeedEmitEvents(this.collider.needCollisionEvent||this.collider.needTriggerEvent)},e.setMaterial=function(t){var e=null==t?eDt.instance.defaultMaterial:t;if(!this._isTrigger&&this._isEnabled)if(this._compound){UNt[e._uuid]||(UNt[e._uuid]=sIt.ccMaterial_new());var i=UNt[e._uuid];sIt.ccMaterial_set(i,e.restitution,e.friction,e.rollingFriction,e.spinningFriction),sIt.CollisionShape_setMaterial(this._impl,i)}else sIt.CollisionObject_setMaterial(this._sharedBody.body,e.restitution,e.friction,e.rollingFriction,e.spinningFriction)},e.setCenter=function(t){gn.copy(VNt,t),VNt.multiply(this._collider.node.worldScale),DIt(sIt.Transform_getOrigin(this.transform),VNt),this.updateCompoundTransform()},e.setAsTrigger=function(t){this._isTrigger!==t&&(this._isEnabled&&(this._sharedBody.removeShape(this,!t),this._sharedBody.addShape(this,t)),this._isTrigger=t)},e.getAABB=function(t){var e=lIt.instance.BT_TRANSFORM_0;sIt.Transform_setIdentity(e),sIt.Transform_setRotation(e,MIt(lIt.instance.BT_QUAT_0,this._collider.node.worldRotation));var i=lIt.instance.BT_V3_0,n=lIt.instance.BT_V3_1;sIt.CollisionShape_getAabb(this._impl,e,i,n),t.halfExtents.x=(sIt.Vec3_x(n)-sIt.Vec3_x(i))/2,t.halfExtents.y=(sIt.Vec3_y(n)-sIt.Vec3_y(i))/2,t.halfExtents.z=(sIt.Vec3_z(n)-sIt.Vec3_z(i))/2,gn.add(t.center,this._collider.node.worldPosition,this._collider.center)},e.getBoundingSphere=function(t){t.radius=sIt.CollisionShape_getLocalBoundingSphere(this._impl),gn.add(t.center,this._collider.node.worldPosition,this._collider.center)},e.initialize=function(t){this._collider=t,this._isInitialized=!0,this._sharedBody=eDt.instance.physicsWorld.getSharedBody(this._collider.node),this._sharedBody.reference=!0,this.onComponentSet(),this.setWrapper()},e.setWrapper=function(){lIt.isNotEmptyShape(this._impl)&&(sIt.CollisionShape_setUserPointer(this._impl,this._impl),lIt.setWrapper(this._impl,t.TYPE,this))},e.onLoad=function(){this.setCenter(this._collider.center),this.setAsTrigger(this._collider.isTrigger)},e.onEnable=function(){this._isEnabled=!0,this._sharedBody.addShape(this,this._isTrigger),this.setMaterial(this.collider.sharedMaterial)},e.onDisable=function(){this._isEnabled=!1,this._sharedBody.removeShape(this,this._isTrigger)},e.onDestroy=function(){this._sharedBody.reference=!1,this._collider=null,sIt._safe_delete(this.quat,tIt.EBulletTypeQuat),sIt._safe_delete(this.transform,tIt.EBulletTypeTransform),this._compound&&sIt._safe_delete(this._compound,tIt.EBulletTypeCollisionShape),lIt.isNotEmptyShape(this._impl)&&(sIt._safe_delete(this._impl,tIt.EBulletTypeCollisionShape),lIt.delWrapper(this._impl,t.TYPE))},e.updateByReAdd=function(){this._isEnabled&&(this._sharedBody.removeShape(this,this._isTrigger),this._sharedBody.addShape(this,this._isTrigger))},e.getGroup=function(){return this._sharedBody.collisionFilterGroup},e.setGroup=function(t){this._sharedBody.collisionFilterGroup=t},e.addGroup=function(t){this._sharedBody.collisionFilterGroup|=t},e.removeGroup=function(t){this._sharedBody.collisionFilterGroup&=~t},e.getMask=function(){return this._sharedBody.collisionFilterMask},e.setMask=function(t){this._sharedBody.collisionFilterMask=t},e.addMask=function(t){this._sharedBody.collisionFilterMask|=t},e.removeMask=function(t){this._sharedBody.collisionFilterMask&=~t},e.setCompound=function(t){this._compound&&sIt.CompoundShape_removeChildShape(this._compound,this._impl),t&&sIt.CompoundShape_addChildShape(t,this.transform,this._impl),this._compound=t},e.updateScale=function(){this.setCenter(this._collider.center)},e.updateCompoundTransform=function(){this._compound?sIt.CompoundShape_updateChildTransform(this._compound,this._impl,this.transform,!0):this._isEnabled&&!this._isTrigger&&this._sharedBody&&!this._sharedBody.bodyStruct.useCompound&&(this._sharedBody.dirty|=xNt.BODY_RE_ADD)},e.needCompound=function(){return this._collider.type===REt.TERRAIN||!this._collider.center.equals(gn.ZERO)},n(t,[{key:"attachedRigidBody",get:function(){return this._sharedBody.wrappedBody?this._sharedBody.wrappedBody.rigidBody:null}},{key:"impl",get:function(){return this._impl}},{key:"collider",get:function(){return this._collider}},{key:"sharedBody",get:function(){return this._sharedBody}}]),t}();zNt.TYPE="shape",zNt.idCounter=0;var HNt=function(){function t(){this.matrix=[]}var e=t.prototype;return e.get=function(t,e){if(e>t){var i=e;e=t,t=i}return this.matrix[(t*(t+1)>>1)+e-1]},e.set=function(t,e,i){if(e>t){var n=e;e=t,t=n}this.matrix[(t*(t+1)>>1)+e-1]=i?1:0},e.reset=function(){this.matrix.length=0},e.setNumObjects=function(t){this.matrix.length=t*(t-1)>>1},t}(),WNt=function(){function t(){this.data=void 0,this.data={keys:[]}}var e=t.prototype;return e.get=function(t,e){if(t>e){var i=e;e=t,t=i}return this.data[t+"-"+e]},e.set=function(t,e,i){if(t>e){var n=e;e=t,t=n}var r=t+"-"+e;if(null==i){var s=this.data.keys.indexOf(r);if(-1!==s)return this.data.keys.splice(s,1),delete this.data[r],i}return this.get(t,e)||this.data.keys.push(r),this.data[r]=i,this.data[r]},e.reset=function(){this.data={keys:[]}},e.getLength=function(){return this.data.keys.length},e.getKeyByIndex=function(t){return this.data.keys[t]},e.getDataByKey=function(t){return this.data[t]},t}(),XNt=function(){function t(t){this.impl=0,this.event=void 0,this.event=t}var e=t.prototype;return e.getLocalPointOnA=function(t){this.impl&&BIt(t,sIt.ManifoldPoint_get_m_localPointA(this.impl))},e.getLocalPointOnB=function(t){this.impl&&BIt(t,sIt.ManifoldPoint_get_m_localPointB(this.impl))},e.getWorldPointOnA=function(t){this.impl&&BIt(t,sIt.ManifoldPoint_get_m_positionWorldOnA(this.impl))},e.getWorldPointOnB=function(t){this.impl&&BIt(t,sIt.ManifoldPoint_get_m_positionWorldOnB(this.impl))},e.getLocalNormalOnA=function(t){if(this.impl){var e=lIt.instance.BT_QUAT_0,i=sIt.PersistentManifold_getBody0(this.event.impl),n=sIt.CollisionObject_getWorldTransform(i);sIt.Transform_getRotation(n,e);var r=dIt;PIt(r,e),Bn.conjugate(r,r),BIt(t,sIt.ManifoldPoint_get_m_normalWorldOnB(this.impl)),this.isBodyA||gn.negate(t,t),gn.transformQuat(t,t,r)}},e.getLocalNormalOnB=function(t){if(this.impl){var e=lIt.instance.BT_QUAT_0,i=sIt.PersistentManifold_getBody1(this.event.impl),n=sIt.CollisionObject_getWorldTransform(i);sIt.Transform_getRotation(n,e);var r=dIt;PIt(r,e),Bn.conjugate(r,r),BIt(t,sIt.ManifoldPoint_get_m_normalWorldOnB(this.impl)),gn.transformQuat(t,t,r)}},e.getWorldNormalOnA=function(t){this.impl&&(BIt(t,sIt.ManifoldPoint_get_m_normalWorldOnB(this.impl)),this.isBodyA||gn.negate(t,t))},e.getWorldNormalOnB=function(t){this.impl&&BIt(t,sIt.ManifoldPoint_get_m_normalWorldOnB(this.impl))},n(t,[{key:"isBodyA",get:function(){return this.event.selfCollider.shape.sharedBody.body===sIt.PersistentManifold_getBody0(this.event.impl)}}]),t}(),jNt=[],YNt=cIt,qNt=_It,KNt=fIt,QNt=IIt,ZNt=new CNt,JNt=function(){var t=e.prototype;function e(){this._world=void 0,this._broadphase=void 0,this._solver=void 0,this._dispatcher=void 0,this._debugDraw=void 0,this._debugLineCount=0,this._MAX_DEBUG_LINE_COUNT=16384,this._debugDrawFlags=OEt.NONE,this._debugConstraintSize=.3,this._needEmitEvents=!1,this._needSyncAfterEvents=!1,this._needEmitCCTEvents=!1,this.bodies=[],this.ghosts=[],this.ccts=[],this.constraints=[],this.triggerArrayMat=new HNt,this.collisionArrayMat=new HNt,this.contactsDic=new WNt,this.oldContactsDic=new WNt,this.cctShapeEventDic=new WNt,this.cctContactsDic=new WNt,this.cctOldContactsDic=new WNt,aIt.CACHE.world=this,this._broadphase=sIt.DbvtBroadphase_new(),this._dispatcher=sIt.CollisionDispatcher_new(),this._solver=sIt.SequentialImpulseConstraintSolver_new(),this._world=sIt.ccDiscreteDynamicsWorld_new(this._dispatcher,this._broadphase,this._solver);var t=sIt.DebugDraw.implement(LNt);this._debugDraw=t.$$.ptr,sIt.CollisionWorld_setDebugDrawer(this._world,this._debugDraw),sIt.DebugDraw_setDebugMode(this._debugDraw,iIt.DBG_NoDebug),sIt.DebugDraw_setAABBColor(this._debugDraw,0,1,1),sIt.DebugDraw_setActiveObjectColor(this._debugDraw,1,0,1),sIt.DebugDraw_setDeactiveObjectColor(this._debugDraw,1,0,1),sIt.DebugDraw_setWantsDeactivationObjectColor(this._debugDraw,1,0,1),sIt.DebugDraw_setDisabledDeactivationObjectColor(this._debugDraw,1,0,1),sIt.DebugDraw_setDisabledSimulationObjectColor(this._debugDraw,1,0,1),sIt.DebugDraw_setConstraintLimitColor(this._debugDraw,.5,.5,.5)}return t.setDefaultMaterial=function(){},t.setAllowSleep=function(t){sIt.ccDiscreteDynamicsWorld_setAllowSleep(this._world,t)},t.setGravity=function(t){sIt.DynamicsWorld_setGravity(this._world,DIt(lIt.instance.BT_V3_0,t))},t.updateNeedEmitEvents=function(t){if(this.ghosts)if(t)this._needEmitEvents=!0;else{this._needEmitEvents=!1;for(var e=0;e<this.ghosts.length;e++)for(var i=this.ghosts[e].ghostStruct.wrappedShapes,n=0;n<i.length;n++){var r=i[n].collider;if(r.needCollisionEvent||r.needTriggerEvent)return void(this._needEmitEvents=!0)}for(var s=0;s<this.bodies.length;s++)for(var a=this.bodies[s].bodyStruct.wrappedShapes,o=0;o<a.length;o++){var h=a[o].collider;if(h.needCollisionEvent||h.needTriggerEvent)return void(this._needEmitEvents=!0)}}},t.updateNeedEmitCCTEvents=function(t){if(this.ccts)if(t)this._needEmitCCTEvents=!0;else{this._needEmitCCTEvents=!1;for(var e=this.ccts,i=e.length,n=0;n<i;n++)if(e[n].characterController.needCollisionEvent)return void(this._needEmitCCTEvents=!0)}},t.destroy=function(){(this.constraints.length||this.bodies.length||this.ccts.length)&&H("You should destroy all physics component first."),sIt._safe_delete(this._world,tIt.EBulletTypeCollisionWorld),sIt._safe_delete(this._broadphase,tIt.EBulletTypeDbvtBroadPhase),sIt._safe_delete(this._dispatcher,tIt.EBulletTypeCollisionDispatcher),sIt._safe_delete(this._solver,tIt.EBulletTypeSequentialImpulseConstraintSolver),sIt._safe_delete(this._debugDraw,tIt.EBulletTypeDebugDraw),this.bodies=null,this.ghosts=null,this.ccts=null,this.constraints=null,this.triggerArrayMat=null,this.collisionArrayMat=null,this.contactsDic=null,this.oldContactsDic=null,this.cctShapeEventDic=null,this.cctShapeEventPool=null,jNt.length=0},t.step=function(t,e,i){void 0===i&&(i=0),(this.bodies.length||this.ghosts.length)&&(void 0===e&&(e=t),sIt.DynamicsWorld_stepSimulation(this._world,e,i,t),sIt.CollisionWorld_debugDrawWorld(this._world))},t.syncSceneToPhysics=function(){for(var t=this.ghosts.length-1;t>=0;t--){var e=this.ghosts[t];e.updateDirty(),e.syncSceneToGhost()}for(var i=this.bodies.length-1;i>=0;i--){var n=this.bodies[i];n.updateDirty(),n.syncSceneToPhysics()}for(var r=this.ccts,s=r.length-1;s>=0;s--){var a=r[s];a.updateDirty(),a.syncSceneToPhysics()}},t.syncAfterEvents=function(){this._needSyncAfterEvents&&this.syncSceneToPhysics()},t.raycast=function(t,e,i,n){t.computeHit(YNt,e.maxDistance);var r=DIt(lIt.instance.BT_V3_0,YNt),s=DIt(lIt.instance.BT_V3_1,t.o),a=sIt.ccAllRayCallback_static();if(sIt.ccAllRayCallback_reset(a,s,r,e.mask>>>0,e.queryTrigger),sIt.ccAllRayCallback_setFlags(a,eIt.UseSubSimplexConvexCastRaytest),sIt.CollisionWorld_rayTest(this._world,s,r,a),sIt.RayCallback_hasHit(a)){for(var o=sIt.ccAllRayCallback_getHitPointWorld(a),h=sIt.ccAllRayCallback_getHitNormalWorld(a),u=sIt.ccAllRayCallback_getCollisionShapePtrs(a),l=0,c=sIt.int_array_size(u);l<c;l++){BIt(YNt,sIt.Vec3_array_at(o,l)),BIt(qNt,sIt.Vec3_array_at(h,l));var _=lIt.getWrapper(sIt.int_array_at(u,l),zNt.TYPE),f=i.add();n.push(f),f._assign(YNt,gn.distance(t.o,YNt),_.collider,qNt)}return!0}return!1},t.raycastClosest=function(t,e,i){t.computeHit(YNt,e.maxDistance);var n=DIt(lIt.instance.BT_V3_0,YNt),r=DIt(lIt.instance.BT_V3_1,t.o),s=sIt.ccClosestRayCallback_static();if(sIt.ccClosestRayCallback_reset(s,r,n,e.mask>>>0,e.queryTrigger),sIt.ccClosestRayCallback_setFlags(s,eIt.UseSubSimplexConvexCastRaytest),sIt.CollisionWorld_rayTest(this._world,r,n,s),sIt.RayCallback_hasHit(s)){BIt(YNt,sIt.ccClosestRayCallback_getHitPointWorld(s)),BIt(qNt,sIt.ccClosestRayCallback_getHitNormalWorld(s));var a=lIt.getWrapper(sIt.ccClosestRayCallback_getCollisionShapePtr(s),zNt.TYPE);return i._assign(YNt,gn.distance(t.o,YNt),a.collider,qNt),!0}return!1},t.sweepBox=function(t,i,n,r,s,a){var o=lIt.instance.BT_V3_0;return DIt(o,i),e._sweepBoxGeometry||(e._sweepBoxGeometry=sIt.BoxShape_new(o)),sIt.BoxShape_setUnscaledHalfExtents(e._sweepBoxGeometry,o),this.sweep(t,e._sweepBoxGeometry,n,r,s,a)},t.sweepBoxClosest=function(t,i,n,r,s){var a=lIt.instance.BT_V3_0;return DIt(a,i),e._sweepBoxGeometry||(e._sweepBoxGeometry=sIt.BoxShape_new(a)),sIt.BoxShape_setUnscaledHalfExtents(e._sweepBoxGeometry,a),this.sweepClosest(t,e._sweepBoxGeometry,n,r,s)},t.sweepSphere=function(t,i,n,r,s){return e._sweepSphereGeometry||(e._sweepSphereGeometry=sIt.SphereShape_new(i)),sIt.SphereShape_setUnscaledRadius(e._sweepSphereGeometry,i),this.sweep(t,e._sweepSphereGeometry,Bn.IDENTITY,n,r,s)},t.sweepSphereClosest=function(t,i,n,r){return e._sweepSphereGeometry||(e._sweepSphereGeometry=sIt.SphereShape_new(i)),sIt.SphereShape_setUnscaledRadius(e._sweepSphereGeometry,i),this.sweepClosest(t,e._sweepSphereGeometry,Bn.IDENTITY,n,r)},t.sweepCapsule=function(t,i,n,r,s,a,o){return e._sweepCapsuleGeometry||(e._sweepCapsuleGeometry=sIt.CapsuleShape_new(i,n)),sIt.CapsuleShape_updateProp(e._sweepCapsuleGeometry,i,.5*n,1),this.sweep(t,e._sweepCapsuleGeometry,r,s,a,o)},t.sweepCapsuleClosest=function(t,i,n,r,s,a){return e._sweepCapsuleGeometry||(e._sweepCapsuleGeometry=sIt.CapsuleShape_new(i,n)),sIt.CapsuleShape_updateProp(e._sweepCapsuleGeometry,i,.5*n,1),this.sweepClosest(t,e._sweepCapsuleGeometry,r,s,a)},t.sweep=function(t,e,i,n,r,s){var a=lIt.instance.BT_TRANSFORM_0,o=lIt.instance.BT_TRANSFORM_1,h=lIt.instance.BT_QUAT_0;DIt(sIt.Transform_getOrigin(a),t.o),MIt(h,i),sIt.Transform_setRotation(a,h),t.computeHit(YNt,n.maxDistance),DIt(sIt.Transform_getOrigin(o),YNt),MIt(h,i),sIt.Transform_setRotation(o,h);var u=sIt.ccAllConvexCallback_static();if(sIt.ccAllConvexCallback_reset(u,a,o,n.mask>>>0,n.queryTrigger),sIt.CollisionWorld_convexSweepTest(this._world,e,a,o,u,0),sIt.ConvexCallback_hasHit(u)){for(var l=sIt.ccAllConvexCallback_getHitPointWorld(u),c=sIt.ccAllConvexCallback_getHitNormalWorld(u),_=sIt.ccAllConvexCallback_getCollisionShapePtrs(u),f=0,d=sIt.int_array_size(_);f<d;f++){BIt(YNt,sIt.Vec3_array_at(l,f)),BIt(qNt,sIt.Vec3_array_at(c,f));var p=lIt.getWrapper(sIt.int_array_at(_,f),zNt.TYPE),m=r.add();s.push(m),m._assign(YNt,gn.distance(t.o,YNt),p.collider,qNt)}return!0}return!1},t.sweepClosest=function(t,e,i,n,r){var s=lIt.instance.BT_TRANSFORM_0,a=lIt.instance.BT_TRANSFORM_1,o=lIt.instance.BT_QUAT_0;DIt(sIt.Transform_getOrigin(s),t.o),MIt(o,i),sIt.Transform_setRotation(s,o),t.computeHit(YNt,n.maxDistance),DIt(sIt.Transform_getOrigin(a),YNt),MIt(o,i),sIt.Transform_setRotation(a,o);var h=sIt.ccClosestConvexCallback_static();if(sIt.ccClosestConvexCallback_reset(h,s,a,n.mask>>>0,n.queryTrigger),sIt.CollisionWorld_convexSweepTest(this._world,e,s,a,h,0),sIt.ConvexCallback_hasHit(h)){BIt(YNt,sIt.ccClosestConvexCallback_getHitPointWorld(h)),BIt(qNt,sIt.ccClosestConvexCallback_getHitNormalWorld(h));var u=lIt.getWrapper(sIt.ccClosestConvexCallback_getCollisionShapePtr(h),zNt.TYPE);return r._assign(YNt,gn.distance(t.o,YNt),u.collider,qNt),!0}return!1},t.getSharedBody=function(t,e){return GNt.getSharedBody(t,this,e)},t.addSharedBody=function(t){if(this.bodies.indexOf(t)<0){this.bodies.push(t);var e=t.collisionFilterGroup,i=t.collisionFilterMask;sIt.DynamicsWorld_addRigidBody(this._world,t.body,e>>>0,i>>>0)}},t.removeSharedBody=function(t){var e=this.bodies.indexOf(t);e>=0&&(fe(this.bodies,e),sIt.DynamicsWorld_removeRigidBody(this._world,t.body))},t.addGhostObject=function(t){if(this.ghosts.indexOf(t)<0){this.ghosts.push(t);var e=t.collisionFilterGroup,i=t.collisionFilterMask;sIt.CollisionWorld_addCollisionObject(this._world,t.ghost,e>>>0,i>>>0)}},t.removeGhostObject=function(t){var e=this.ghosts.indexOf(t);e>=0&&(fe(this.ghosts,e),sIt.CollisionWorld_removeCollisionObject(this._world,t.ghost))},t.addCCT=function(t){if(this.ccts.indexOf(t)<0){this.ccts.push(t);var e=sIt.CharacterController_getGhostObject(t.impl),i=t.getGroup(),n=t.getMask();sIt.CollisionWorld_addCollisionObject(this._world,e,i>>>0,n>>>0),sIt.DynamicsWorld_addAction(this._world,t.impl)}},t.removeCCT=function(t){var e=this.ccts.indexOf(t);if(e>=0){fe(this.ccts,e);var i=sIt.CharacterController_getGhostObject(t.impl);sIt.CollisionWorld_removeCollisionObject(this._world,i),sIt.DynamicsWorld_removeAction(this._world,t.impl)}},t.addConstraint=function(t){var e=this.constraints.indexOf(t);e<0&&(this.constraints.push(t),sIt.DynamicsWorld_addConstraint(this.impl,t.impl,!t.constraint.enableCollision),t.index=e)},t.removeConstraint=function(t){var e=this.constraints.indexOf(t);e>=0&&(this.constraints.splice(e,1),sIt.DynamicsWorld_removeConstraint(this.impl,t.impl),t.index=-1)},t.emitEvents=function(){this._needSyncAfterEvents=!1,this._needEmitEvents&&(this.gatherConatactData(),this.emitCollisionAndTriggerEvent(),this.emitCCTTriggerEvent()),this._needEmitCCTEvents&&this.emitCCTCollisionEvent()},t.emitCollisionAndTriggerEvent=function(){for(var t=this.contactsDic.getLength();t--;){jNt.push.apply(jNt,hIt.contacts),hIt.contacts.length=0;var e=this.contactsDic.getKeyByIndex(t),i=this.contactsDic.getDataByKey(e),n=i.shape0,r=i.shape1;this.oldContactsDic.set(n.id,r.id,i);var s=n.collider,a=r.collider;if(s&&a){if(s.isTrigger||a.isTrigger)this.triggerArrayMat.get(n.id,r.id)?oIt.type="onTriggerStay":(oIt.type="onTriggerEnter",this.triggerArrayMat.set(n.id,r.id,!0)),oIt.impl=i.impl,oIt.selfCollider=s,oIt.otherCollider=a,s.emit(oIt.type,oIt),oIt.selfCollider=a,oIt.otherCollider=s,a.emit(oIt.type,oIt),this._needSyncAfterEvents=!0;else{var o=s.attachedRigidBody,h=a.attachedRigidBody;if(o&&h){if(o.isSleeping&&h.isSleeping)continue}else if(!o&&h){if(h.isSleeping)continue}else if(!h&&o&&o.isSleeping)continue;this.collisionArrayMat.get(n.id,r.id)?hIt.type="onCollisionStay":(hIt.type="onCollisionEnter",this.collisionArrayMat.set(n.id,r.id,!0));for(var u=0;u<i.contacts.length;u++){var l=i.contacts[u];if(jNt.length>0){var c=jNt.pop();c.impl=l,hIt.contacts.push(c)}else{var _=new XNt(hIt);_.impl=l,hIt.contacts.push(_)}}hIt.impl=i.impl,hIt.selfCollider=s,hIt.otherCollider=a,s.emit(hIt.type,hIt),hIt.selfCollider=a,hIt.otherCollider=s,a.emit(hIt.type,hIt),this._needSyncAfterEvents=!0}null==this.oldContactsDic.get(n.id,r.id)&&this.oldContactsDic.set(n.id,r.id,i)}}for(var f=this.oldContactsDic.getLength();f--;){var d=this.oldContactsDic.getKeyByIndex(f),p=this.oldContactsDic.getDataByKey(d),m=p.shape0,g=p.shape1,v=m.collider,y=g.collider;if(v&&y){var S=v.isTrigger||y.isTrigger;null==this.contactsDic.getDataByKey(d)&&(S?this.triggerArrayMat.get(m.id,g.id)&&(oIt.type="onTriggerExit",oIt.selfCollider=v,oIt.otherCollider=y,v.emit(oIt.type,oIt),oIt.selfCollider=y,oIt.otherCollider=v,y.emit(oIt.type,oIt),this.triggerArrayMat.set(m.id,g.id,!1),this.oldContactsDic.set(m.id,g.id,null),this._needSyncAfterEvents=!0):this.collisionArrayMat.get(m.id,g.id)&&(jNt.push.apply(jNt,hIt.contacts),hIt.contacts.length=0,hIt.type="onCollisionExit",hIt.selfCollider=v,hIt.otherCollider=y,v.emit(hIt.type,hIt),hIt.selfCollider=y,hIt.otherCollider=v,y.emit(hIt.type,hIt),this.collisionArrayMat.set(m.id,g.id,!1),this.oldContactsDic.set(m.id,g.id,null),this._needSyncAfterEvents=!0))}}this.contactsDic.reset()},t.emitCCTTriggerEvent=function(){for(var t=this.cctContactsDic.getLength();t--;){var e=this.cctContactsDic.getKeyByIndex(t),i=this.cctContactsDic.getDataByKey(e),n=i.shape,r=i.cct;this.cctOldContactsDic.set(n.id,r.id,i);var s=n.collider,a=r.characterController;s&&a&&(s.isTrigger&&(this.triggerArrayMat.get(n.id,r.id)?uIt.type="onControllerTriggerStay":(uIt.type="onControllerTriggerEnter",this.triggerArrayMat.set(n.id,r.id,!0)),uIt.impl=i.impl,uIt.collider=s,uIt.characterController=a,s.emit(uIt.type,uIt),uIt.collider=s,uIt.characterController=a,a.emit(uIt.type,uIt),this._needSyncAfterEvents=!0),null==this.cctOldContactsDic.get(n.id,r.id)&&this.cctOldContactsDic.set(n.id,r.id,i))}for(var o=this.cctOldContactsDic.getLength();o--;){var h=this.cctOldContactsDic.getKeyByIndex(o),u=this.cctOldContactsDic.getDataByKey(h),l=u.shape,c=u.cct,_=l.collider,f=c.characterController;if(_&&f){var d=_.isTrigger;null==this.cctContactsDic.getDataByKey(h)&&d&&this.triggerArrayMat.get(l.id,c.id)&&(uIt.type="onControllerTriggerExit",uIt.collider=_,uIt.characterController=f,_.emit(uIt.type,uIt),uIt.collider=_,uIt.characterController=f,f.emit(uIt.type,uIt),this.triggerArrayMat.set(l.id,c.id,!1),this.cctOldContactsDic.set(l.id,c.id,null),this._needSyncAfterEvents=!0)}}this.cctContactsDic.reset()},t.emitCCTCollisionEvent=function(){for(var t=this.cctShapeEventDic.getLength();t--;){var e,i=this.cctShapeEventDic.getKeyByIndex(t),n=this.cctShapeEventDic.getDataByKey(i),r=n.BulletCharacterController,s=n.BulletShape,a=n.worldPos,o=n.worldNormal,h=n.motionDir,u=n.motionLength;ZNt.controller=r.characterController,ZNt.collider=s.collider,ZNt.worldPosition.set(a.x,a.y,a.z),ZNt.worldNormal.set(o.x,o.y,o.z),ZNt.motionDirection.set(h.x,h.y,h.z),ZNt.motionLength=u,null===(e=ZNt.controller)||void 0===e||e.emit("onControllerColliderHit",ZNt),this._needSyncAfterEvents=!0}this.cctShapeEventDic.reset()},t.gatherConatactData=function(){for(var t=sIt.Dispatcher_getNumManifolds(this._dispatcher),e=0;e<t;e++)for(var i=sIt.Dispatcher_getManifoldByIndexInternal(this._dispatcher,e),n=sIt.PersistentManifold_getNumContacts(i),r=0;r<n;r++){var s=sIt.PersistentManifold_getContactPoint(i,r),a=sIt.ManifoldPoint_getShape0(s),o=sIt.ManifoldPoint_getShape1(s),h=!1;if(!h){var u=lIt.getWrapper(a,zNt.TYPE),l=lIt.getWrapper(o,zNt.TYPE);if(u&&l&&(h=!0,u.collider.needTriggerEvent||l.collider.needTriggerEvent||u.collider.needCollisionEvent||l.collider.needCollisionEvent)){var c=this.contactsDic.get(u.id,l.id);c||(c=this.contactsDic.set(u.id,l.id,{shape0:u,shape1:l,contacts:[],impl:i})),c.contacts.push(s)}}if(!h){var _=lIt.getWrapper(a,zNt.TYPE),f=lIt.getWrapper(o,aIt.CCT_CACHE_NAME);if(_&&f&&(h=!0,_.collider.needTriggerEvent)){var d=this.cctContactsDic.get(_.id,f.id);d||(d=this.cctContactsDic.set(_.id,f.id,{shape:_,cct:f,contacts:[],impl:i})),d.contacts.push(s),h=!0}}if(!h){var p=lIt.getWrapper(a,aIt.CCT_CACHE_NAME),m=lIt.getWrapper(o,zNt.TYPE);if(m&&p&&(h=!0,m.collider.needTriggerEvent)){var g=this.cctContactsDic.get(m.id,p.id);g||(g=this.cctContactsDic.set(m.id,p.id,{shape:m,cct:p,contacts:[],impl:i})),g.contacts.push(s),h=!0}}}},t._setDebugDrawMode=function(){var t=0;this._debugDrawFlags&OEt.WIRE_FRAME&&(t|=iIt.DBG_DrawWireframe),this._debugDrawFlags&OEt.CONSTRAINT&&(t|=iIt.DBG_DrawConstraints,t|=iIt.DBG_DrawConstraintLimits),this._debugDrawFlags&OEt.AABB&&(t|=iIt.DBG_DrawAabb),sIt.DebugDraw_setDebugMode(this._debugDraw,t)},t._getDebugRenderer=function(){var t,e=null===(t=ID.root.mainWindow)||void 0===t?void 0:t.cameras;return e?0===e.length?null:e[0]?(e[0].initGeometryRenderer(),e[0].geometryRenderer):null:null},t.onDebugDrawLine=function(t,e,i){var n=this._getDebugRenderer();n&&this._debugLineCount<this._MAX_DEBUG_LINE_COUNT&&(this._debugLineCount++,BIt(YNt,t),BIt(qNt,e),BIt(KNt,i),QNt.set(255*KNt.x,255*KNt.y,255*KNt.z,255),n.addLine(YNt,qNt,QNt))},t.onClearLines=function(){this._debugLineCount=0},n(e,[{key:"impl",get:function(){return this._world}},{key:"debugDrawFlags",get:function(){return this._debugDrawFlags},set:function(t){this._debugDrawFlags=t,this._debugDraw&&this._setDebugDrawMode()}},{key:"debugDrawConstraintSize",get:function(){return this._debugConstraintSize},set:function(t){this._debugConstraintSize=t;for(var e=0;e<this.constraints.length;e++)this.constraints[e].updateDebugDrawSize()}}]),e}();JNt._sweepBoxGeometry=void 0,JNt._sweepSphereGeometry=void 0,JNt._sweepCapsuleGeometry=void 0;var $Nt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.updateSize=function(){var t=lIt.instance.BT_V3_0;DIt(t,this.getMinUnscaledHalfExtents(Wq)),sIt.BoxShape_setUnscaledHalfExtents(this.impl,t),this.updateCompoundTransform()},i.onComponentSet=function(){var t=lIt.instance.BT_V3_0;DIt(t,this.getMinUnscaledHalfExtents(Wq)),this._impl=sIt.BoxShape_new(t),this.updateScale()},i.updateScale=function(){t.prototype.updateScale.call(this);var e=lIt.instance.BT_V3_0;sIt.CollisionShape_setLocalScaling(this._impl,DIt(e,this.getMinScale(Wq))),this.updateCompoundTransform()},i.getMinUnscaledHalfExtents=function(t){var e=this.collider.size,i=Xq(Wq.set(this._collider.node.worldScale)),n=eDt.instance.minVolumeSize,r=e.x/2,s=e.y/2,a=e.z/2,o=r*i.x<n?n/i.x:r,h=s*i.y<n?n/i.y:s,u=a*i.z<n?n/i.z:a;return t.set(o,h,u),t},i.getMinScale=function(t){var e=this.collider.size,i=Xq(Wq.set(this._collider.node.worldScale)),n=eDt.instance.minVolumeSize,r=e.x/2,s=e.y/2,a=e.z/2,o=r*i.x<n?n/r:i.x,h=s*i.y<n?n/s:i.y,u=a*i.z<n?n/a:i.z;return t.set(o,h,u),t},n(e,[{key:"collider",get:function(){return this._collider}}]),e}(zNt),tFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.updateRadius=function(){sIt.SphereShape_setUnscaledRadius(this.impl,this.getMinUnscaledRadius()),this.updateCompoundTransform()},i.onComponentSet=function(){this._impl=sIt.SphereShape_new(this.getMinUnscaledRadius()),this.updateScale()},i.updateScale=function(){t.prototype.updateScale.call(this);var e=this.getMinScale();cIt.set(e,e,e);var i=lIt.instance.BT_V3_0;sIt.CollisionShape_setLocalScaling(this._impl,DIt(i,cIt)),this.updateCompoundTransform()},i.getMinUnscaledRadius=function(){var t=this.collider.radius,e=Math.abs($i(this._collider.node.worldScale)),i=eDt.instance.minVolumeSize;return e*t<i?i/e:t},i.getMinScale=function(){var t=this.collider.radius,e=Math.abs($i(this._collider.node.worldScale)),i=eDt.instance.minVolumeSize;return e*t<i?i/t:e},n(e,[{key:"collider",get:function(){return this._collider}}]),e}(zNt),eFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setCylinderHeight=function(){this.updateProperties(this.collider.radius,this.collider.cylinderHeight,this.collider.direction,this._collider.node.worldScale)},i.setDirection=function(){this.updateProperties(this.collider.radius,this.collider.cylinderHeight,this.collider.direction,this._collider.node.worldScale)},i.setRadius=function(){this.updateProperties(this.collider.radius,this.collider.cylinderHeight,this.collider.direction,this._collider.node.worldScale)},i.onComponentSet=function(){this._impl=sIt.CapsuleShape_new(.5,1),this.setRadius(this.collider.radius)},i.updateScale=function(){t.prototype.updateScale.call(this),this.setRadius(this.collider.radius)},i.updateProperties=function(t,e,i,n){var r,s,a=n,o=i;1===o?(r=t*Math.abs(tn(a.x,a.z)),s=e/2*Math.abs(a.y)):0===o?(r=t*Math.abs(tn(a.y,a.z)),s=e/2*Math.abs(a.x)):(r=t*Math.abs(tn(a.x,a.y)),s=e/2*Math.abs(a.z)),sIt.CapsuleShape_updateProp(this._impl,r,s,o),this.updateCompoundTransform()},n(e,[{key:"collider",get:function(){return this._collider}}]),e}(zNt),iFt=function(){function t(t,e){this.key=void 0,this.ref=0,this.bulletBvhTriangleMeshShapePtr=void 0,this.btTriangleMeshPtr=0,this.reference=!0,this.key=t,this.btTriangleMeshPtr=sIt.TriangleMesh_new(),OIt(this.btTriangleMeshPtr,e),this.bulletBvhTriangleMeshShapePtr=sIt.BvhTriangleMeshShape_new(this.btTriangleMeshPtr,!0,!0)}return t.getBulletBvhTriangleMeshShape=function(e,i){var n;return t.BulletBvhTriangleMeshShapeMap.has(e)?(n=t.BulletBvhTriangleMeshShapeMap.get(e)).reference=!0:(n=new t(e,i),t.BulletBvhTriangleMeshShapeMap.set(e,n)),n},t.prototype.destroy=function(){this.bulletBvhTriangleMeshShapePtr&&sIt._safe_delete(tIt.EBulletTypeCollisionShape,this.bulletBvhTriangleMeshShapePtr),this.btTriangleMeshPtr&&sIt._safe_delete(tIt.EBulletTypeTriangleMesh,this.btTriangleMeshPtr),t.BulletBvhTriangleMeshShapeMap.delete(this.key)},n(t,[{key:"reference",set:function(t){t?this.ref++:this.ref--,0===this.ref&&this.destroy()}}]),t}();iFt.BulletBvhTriangleMeshShapeMap=new Map;var nFt,rFt,sFt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).btBVHMeshShape=void 0,e.refBtTriangleMesh=0,e}s(e,t);var i=e.prototype;return i.setMesh=function(t){if(this._isInitialized){this._impl&&lIt.isNotEmptyShape(this._impl)&&(this._compound&&sIt.CompoundShape_removeChildShape(this._compound,this._impl),sIt._safe_delete(this._impl,tIt.EBulletTypeCollisionShape),lIt.delWrapper(this._impl,zNt.TYPE),this._impl=0);var e=t;if(e&&e.renderingSubMeshes.length>0){if(this.collider.convex){var i=this._getBtTriangleMesh(e);this._impl=sIt.ConvexTriangleMeshShape_new(i)}else this.btBVHMeshShape=iFt.getBulletBvhTriangleMeshShape(e.hash,e),this._impl=sIt.ScaledBvhTriangleMeshShape_new(this.btBVHMeshShape.bulletBvhTriangleMeshShapePtr,1,1,1);var n=lIt.instance.BT_V3_0;DIt(n,this._collider.node.worldScale),sIt.CollisionShape_setLocalScaling(this._impl,n),sIt.CollisionShape_setMargin(this._impl,.01),this.setCompound(this._compound),this.updateByReAdd(),this.setWrapper()}else this._impl=sIt.EmptyShape_static()}},i.onComponentSet=function(){this.setMesh(this.collider.mesh)},i.onDestroy=function(){this.collider.convex?this.refBtTriangleMesh&&sIt._safe_delete(this.refBtTriangleMesh,tIt.EBulletTypeTriangleMesh):this.btBVHMeshShape&&(this.btBVHMeshShape.reference=!1),t.prototype.onDestroy.call(this)},i.updateScale=function(){t.prototype.updateScale.call(this);var e=lIt.instance.BT_V3_0;DIt(e,this._collider.node.worldScale),sIt.CollisionShape_setLocalScaling(this._impl,e),this.updateCompoundTransform()},i._getBtTriangleMesh=function(t){return this.refBtTriangleMesh=sIt.TriangleMesh_new(),OIt(this.refBtTriangleMesh,t),this.refBtTriangleMesh},n(e,[{key:"collider",get:function(){return this._collider}}]),e}(zNt),aFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setHeight=function(){this.updateProperties(this.collider.radius,this.collider.height,this.collider.direction,this._collider.node.worldScale)},i.setDirection=function(){this.updateProperties(this.collider.radius,this.collider.height,this.collider.direction,this._collider.node.worldScale)},i.setRadius=function(){this.updateProperties(this.collider.radius,this.collider.height,this.collider.direction,this._collider.node.worldScale)},i.onComponentSet=function(){var t=lIt.instance.BT_V3_0;sIt.Vec3_set(t,.5,1,.5),this._impl=sIt.CylinderShape_new(t),this.setRadius(this.collider.radius)},i.updateScale=function(){t.prototype.updateScale.call(this),this.setRadius(this.collider.radius)},i.updateProperties=function(t,e,i,n){var r,s,a=n,o=i;1===o?(s=e*Math.abs(a.y),r=t*Math.abs(tn(a.x,a.z))):0===o?(s=e*Math.abs(a.x),r=t*Math.abs(tn(a.y,a.z))):(s=e*Math.abs(a.z),r=t*Math.abs(tn(a.x,a.y))),sIt.CylinderShape_updateProp(this._impl,r,s/2,o),this.updateCompoundTransform()},n(e,[{key:"collider",get:function(){return this._collider}}]),e}(zNt),oFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setHeight=function(){this.updateProperties(this.collider.radius,this.collider.height,this.collider.direction,this._collider.node.worldScale)},i.setDirection=function(){this.updateProperties(this.collider.radius,this.collider.height,this.collider.direction,this._collider.node.worldScale)},i.setRadius=function(){this.updateProperties(this.collider.radius,this.collider.height,this.collider.direction,this._collider.node.worldScale)},i.onComponentSet=function(){this._impl=sIt.ConeShape_new(.5,1),this.setRadius(this.collider.radius)},i.updateScale=function(){t.prototype.updateScale.call(this),this.setRadius(this.collider.radius)},i.updateProperties=function(t,e,i,n){var r,s,a=n,o=i;1===o?(s=e*Math.abs(a.y),r=t*Math.abs(tn(a.x,a.z))):0===o?(s=e*Math.abs(a.x),r=t*Math.abs(tn(a.y,a.z))):(s=e*Math.abs(a.z),r=t*Math.abs(tn(a.x,a.y))),sIt.ConeShape_setRadius(this._impl,r),sIt.ConeShape_setHeight(this._impl,s),sIt.ConeShape_setConeUpIndex(this._impl,o);var h=lIt.instance.BT_V3_0;sIt.Vec3_set(h,1,1,1),sIt.CollisionShape_setLocalScaling(this._impl,h),this.updateCompoundTransform()},n(e,[{key:"impl",get:function(){return this._impl}},{key:"collider",get:function(){return this._collider}}]),e}(zNt),hFt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._bufPtr=0,e._tileSize=0,e._localOffset=new gn,e}s(e,t);var i=e.prototype;return i.setTerrain=function(t){if(this._isInitialized)if(this._impl&&lIt.isNotEmptyShape(this._impl))z("[Physics][Bullet]: change the terrain asset after initialization is not support.");else{var e=t;if(e){this._tileSize=e.tileSize;var i=e.getVertexCountI(),n=e.getVertexCountJ();this._bufPtr=sIt._malloc(4*i*n);for(var r=0,s=Number.MAX_SAFE_INTEGER,a=Number.MIN_SAFE_INTEGER,o=0;o<n;o++)for(var h=0;h<i;h++){var u=e.getHeight(h,o);sIt._write_f32(this._bufPtr+r,u),s>u&&(s=u),u>a&&(a=u),r+=4}a+=.01,s-=.01,this._localOffset.set((i-1)/2*this._tileSize,(a+s)/2,(n-1)/2*this._tileSize),this._impl=sIt.TerrainShape_new(i,n,this._bufPtr,1,s,a);var l=lIt.instance.BT_V3_0;sIt.Vec3_set(l,this._tileSize,1,this._tileSize),sIt.CollisionShape_setLocalScaling(this._impl,l),this.setCompound(this._compound),this.updateByReAdd(),this.setWrapper()}else this._impl=sIt.EmptyShape_static()}},i.onComponentSet=function(){this.setTerrain(this.collider.terrain)},i.onDestroy=function(){this._bufPtr&&sIt._free(this._bufPtr),t.prototype.onDestroy.call(this)},i.setCenter=function(t){gn.copy(cIt,t),cIt.add(this._localOffset),DIt(sIt.Transform_getOrigin(this.transform),cIt),this.updateCompoundTransform()},n(e,[{key:"collider",get:function(){return this._collider}}]),e}(zNt),uFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setShapeType=function(){},i.setVertices=function(){},i.onComponentSet=function(){this._impl=sIt.SimplexShape_new();for(var t=this.collider.shapeType,e=this.collider.vertices,i=lIt.instance.BT_V3_0,n=0;n<t;n++)sIt.SimplexShape_addVertex(this._impl,DIt(i,e[n]));sIt.CollisionShape_setLocalScaling(this._impl,DIt(i,this._collider.node.worldScale))},i.onLoad=function(){t.prototype.onLoad.call(this),this.collider.updateVertices()},i.updateScale=function(){t.prototype.updateScale.call(this);var e=lIt.instance.BT_V3_0;sIt.CollisionShape_setLocalScaling(this._impl,DIt(e,this._collider.node.worldScale))},n(e,[{key:"collider",get:function(){return this._collider}}]),e}(zNt),lFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setNormal=function(t){DIt(sIt.StaticPlaneShape_getPlaneNormal(this.impl),t),this.updateCompoundTransform()},i.setConstant=function(t){sIt.StaticPlaneShape_setPlaneConstant(this.impl,t),this.updateCompoundTransform()},i.updateScale=function(){t.prototype.updateScale.call(this);var e=lIt.instance.BT_V3_0;DIt(e,this._collider.node.worldScale),sIt.CollisionShape_setLocalScaling(this._impl,e),this.updateCompoundTransform()},i.onComponentSet=function(){var t=lIt.instance.BT_V3_0;DIt(t,this.collider.normal),this._impl=sIt.StaticPlaneShape_new(t,this.collider.constant),this.updateScale()},n(e,[{key:"collider",get:function(){return this._collider}}]),e}(zNt),cFt=function(){function t(){this.dirty=0,this.index=-1,this._impl=0,this._com=void 0,this._rigidBody=void 0,this._connectedBody=null,this._collided=!1}var e=t.prototype;return e.setConnectedBody=function(t){if(this._connectedBody!==t){var e=this._connectedBody;e&&e.body.sharedBody.removeJoint(this,1);var i=this._rigidBody.body.sharedBody;i.removeJoint(this,0),this._impl&&(i.wrappedWorld.removeConstraint(this),sIt._safe_delete(this._impl,tIt.EBulletTypeTypedConstraint)),this._connectedBody=t;var n=this._connectedBody;this.onComponentSet(),this.setEnableCollision(this._collided),i.wrappedWorld.addConstraint(this),i.addJoint(this,0),n&&n.body.sharedBody.addJoint(this,1)}},e.setEnableCollision=function(t){this._collided!==t&&(this._collided=t,this.updateByReAdd())},e.updateByReAdd=function(){if(this._rigidBody&&this.index>=0){var t=this._rigidBody.body.sharedBody;t.wrappedWorld.removeConstraint(this),t.wrappedWorld.addConstraint(this)}},e.initialize=function(t){this._com=t,this._rigidBody=t.attachedBody,this._connectedBody=t.connectedBody,this._collided=t.enableCollision,this.onComponentSet(),this.setEnableCollision(this._collided)},e.updateDebugDrawSize=function(){if(this.impl){var t=eDt.instance.physicsWorld.debugDrawConstraintSize;sIt.TypedConstraint_setDbgDrawSize(this.impl,t)}},e.onEnable=function(){var t=this._rigidBody.body.sharedBody;t.wrappedWorld.addConstraint(this),t.addJoint(this,0);var e=this._connectedBody;e&&e.body.sharedBody.addJoint(this,1)},e.onDisable=function(){var t=this._rigidBody.body.sharedBody;t.wrappedWorld.removeConstraint(this),t.removeJoint(this,0);var e=this._connectedBody;e&&e.body.sharedBody.removeJoint(this,1)},e.onDestroy=function(){sIt._safe_delete(this._impl,tIt.EBulletTypeTypedConstraint),this._com=null,this._rigidBody=null,this._connectedBody=null},n(t,[{key:"impl",get:function(){return this._impl}},{key:"constraint",get:function(){return this._com}}]),t}(),_Ft=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setPivotA=function(){var t=this.constraint,e=lIt.instance.BT_V3_0;gn.multiply(cIt,t.node.worldScale,t.pivotA),DIt(e,cIt),sIt.P2PConstraint_setPivotA(this._impl,e),t.connectedBody||this.setPivotB(t.pivotB)},i.setPivotB=function(){var t=this.constraint,e=this._rigidBody.node,i=lIt.instance.BT_V3_0,n=t.connectedBody;n?(gn.multiply(cIt,n.node.worldScale,t.pivotB),DIt(i,cIt)):(gn.multiply(cIt,e.worldScale,t.pivotA),gn.transformQuat(cIt,cIt,e.worldRotation),gn.add(cIt,cIt,e.worldPosition),DIt(i,cIt)),sIt.P2PConstraint_setPivotB(this._impl,i)},i.onComponentSet=function(){var t=this.constraint.connectedBody,e=this._rigidBody.body.impl,i=t?t.body.impl:sIt.TypedConstraint_getFixedBody(),n=lIt.instance.BT_V3_0,r=lIt.instance.BT_V3_1;this._impl=sIt.P2PConstraint_new(e,i,n,r),this.setPivotA(this.constraint.pivotA),this.setPivotB(this.constraint.pivotB),this.updateDebugDrawSize()},i.updateScale0=function(){this.setPivotA(this.constraint.pivotA)},i.updateScale1=function(){this.setPivotB(this.constraint.pivotB)},n(e,[{key:"constraint",get:function(){return this._com}}]),e}(cFt),fFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setBreakForce=function(t){sIt.TypedConstraint_setMaxImpulseThreshold(this._impl,t)},i.setBreakTorque=function(){},i.onComponentSet=function(){var t=this.constraint.connectedBody,e=this._rigidBody.body.impl,i=t?t.body.impl:sIt.TypedConstraint_getFixedBody(),n=lIt.instance.BT_TRANSFORM_0,r=lIt.instance.BT_TRANSFORM_1;this._impl=sIt.FixedConstraint_new(e,i,n,r),this.setBreakForce(this.constraint.breakForce),this.setBreakTorque(this.constraint.breakTorque),this.updateFrames(),this.updateDebugDrawSize()},i.updateFrames=function(){var t=this.constraint.connectedBody,e=this._rigidBody.body.sharedBody,i=cIt,n=dIt,r=lIt.instance.BT_TRANSFORM_0,s=lIt.instance.BT_TRANSFORM_1,a=lIt.instance.BT_QUAT_0,o=mIt;if(Vn.fromRT(o,e.node.worldRotation,e.node.worldPosition),Vn.invert(o,o),Vn.getRotation(n,o),Vn.getTranslation(i,o),DIt(sIt.Transform_getOrigin(r),i),MIt(a,n),sIt.Transform_setRotation(r,a),t){var h=t.body.sharedBody;Vn.fromRT(o,h.node.worldRotation,h.node.worldPosition),Vn.invert(o,o),Vn.getRotation(n,o),Vn.getTranslation(i,o),DIt(sIt.Transform_getOrigin(s),i),MIt(a,n),sIt.Transform_setRotation(s,a)}else sIt.Transform_setIdentity(s);sIt.FixedConstraint_setFrames(this._impl,r,s)},i.updateScale0=function(){this.updateFrames()},i.updateScale1=function(){this.updateFrames()},n(e,[{key:"constraint",get:function(){return this._com}}]),e}(cFt),dFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.setPivotA=function(){this.updateFrames()},i.setPivotB=function(){this.updateFrames()},i.setAxis=function(){this.updateFrames()},i.setLimitEnabled=function(){this.constraint.limitEnabled?sIt.HingeConstraint_setLimit(this._impl,Vi(this.constraint.lowerLimit),Vi(this.constraint.upperLimit),.9,.3,1):sIt.HingeConstraint_setLimit(this._impl,1,0,.9,.3,1)},i.setLowerLimit=function(){this.constraint.limitEnabled&&sIt.HingeConstraint_setLimit(this._impl,Vi(this.constraint.lowerLimit),Vi(this.constraint.upperLimit),.9,.3,1)},i.setUpperLimit=function(){this.constraint.limitEnabled&&sIt.HingeConstraint_setLimit(this._impl,Vi(this.constraint.lowerLimit),Vi(this.constraint.upperLimit),.9,.3,1)},i.setMotorEnabled=function(t){sIt.HingeConstraint_enableMotor(this._impl,t);var e=-this.constraint.motorVelocity/60,i=LIt(this.constraint.motorForceLimit,eDt.instance.fixedTimeStep);sIt.HingeConstraint_setMotorVelocity(this._impl,e),sIt.HingeConstraint_setMaxMotorImpulse(this._impl,i)},i.setMotorVelocity=function(t){if(this.constraint.motorEnabled){var e=-t/60;sIt.HingeConstraint_setMotorVelocity(this._impl,e)}},i.setMotorForceLimit=function(t){if(this.constraint.motorEnabled){var e=LIt(t,eDt.instance.fixedTimeStep);sIt.HingeConstraint_setMaxMotorImpulse(this._impl,e)}},i.onComponentSet=function(){var t=this.constraint.connectedBody,e=this._rigidBody.body.impl,i=t?t.body.impl:sIt.TypedConstraint_getFixedBody(),n=lIt.instance.BT_TRANSFORM_0,r=lIt.instance.BT_TRANSFORM_1;this._impl=sIt.HingeConstraint_new(e,i,n,r),this.setLimitEnabled(this.constraint.limitEnabled),this.setLowerLimit(this.constraint.lowerLimit),this.setUpperLimit(this.constraint.upperLimit),this.setMotorEnabled(this.constraint.motorEnabled),this.setMotorVelocity(this.constraint.motorVelocity),this.setMotorForceLimit(this.constraint.motorForceLimit),this.updateFrames(),this.updateDebugDrawSize()},i.updateFrames=function(){var t=this.constraint,e=t.node,i=cIt,n=dIt,r=pIt,s=lIt.instance.BT_TRANSFORM_0;gn.multiply(i,e.worldScale,t.pivotA),DIt(sIt.Transform_getOrigin(s),i);var a=lIt.instance.BT_QUAT_0;gn.normalize(i,t.axis),Bn.rotationTo(r,gn.UNIT_Z,i),MIt(a,r),sIt.Transform_setRotation(s,a);var o=lIt.instance.BT_TRANSFORM_1,h=this.constraint.connectedBody;h?(gn.multiply(i,h.node.worldScale,t.pivotB),Bn.multiply(r,e.worldRotation,r),Bn.invert(n,h.node.worldRotation),Bn.multiply(r,n,r)):(gn.multiply(i,e.worldScale,t.pivotA),gn.transformQuat(i,i,e.worldRotation),gn.add(i,i,e.worldPosition),Bn.multiply(r,e.worldRotation,r)),DIt(sIt.Transform_getOrigin(o),i),MIt(a,r),sIt.Transform_setRotation(o,a),sIt.HingeConstraint_setFrames(this._impl,s,o)},i.updateScale0=function(){this.updateFrames()},i.updateScale1=function(){this.updateFrames()},n(e,[{key:"constraint",get:function(){return this._com}}]),e}(cFt);!function(t){t[t.RO_XYZ=0]="RO_XYZ",t[t.RO_XZY=1]="RO_XZY",t[t.RO_YXZ=2]="RO_YXZ",t[t.RO_YZX=3]="RO_YZX",t[t.RO_ZXY=4]="RO_ZXY",t[t.RO_ZYX=5]="RO_ZYX"}(nFt||(nFt={})),function(t){t[t.X=0]="X",t[t.Y=1]="Y",t[t.Z=2]="Z",t[t.TWIST=3]="TWIST",t[t.SWING1=4]="SWING1",t[t.SWING2=5]="SWING2"}(rFt||(rFt={}));var pFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i._setLimit=function(t,e,i,n){switch(t){case DEt.LOCKED:sIt.Generic6DofSpring2Constraint_setLimit(this._impl,e,0,0);break;case DEt.LIMITED:sIt.Generic6DofSpring2Constraint_setLimit(this._impl,e,i,n);break;case DEt.FREE:sIt.Generic6DofSpring2Constraint_setLimit(this._impl,e,1,0)}},i.setConstraintMode=function(t,e){var i=this.constraint.linearLimitSettings,n=this.constraint.angularLimitSettings,r=[0,0,0],s=[0,0,0],a=0,o=0;switch(t){case 0:case 1:case 2:gn.toArray(r,i.lower),gn.toArray(s,i.upper),o=r[t],a=s[t];break;case 3:o=-(a=.5*Vi(n.twistExtent));break;case 4:o=-(a=.5*Vi(n.swingExtent1));break;case 5:o=-(a=.5*Vi(n.swingExtent2));break;default:H("idx should be in [0, 5], but give "+t)}this._setLimit(e,t,o,a)},i.setLinearLimit=function(t,e,i){var n=0,r=this.constraint.linearLimitSettings;switch(t){case 0:n=r.xMotion;break;case 1:n=r.yMotion;break;case 2:n=r.zMotion}this._setLimit(n,t,e,i)},i.setAngularExtent=function(t,e,i){var n=this.constraint.angularLimitSettings;this._setLimit(n.twistMotion,rFt.TWIST,.5*-Vi(t),.5*Vi(t)),this._setLimit(n.swingMotion1,rFt.SWING1,.5*-Vi(e),.5*Vi(e)),this._setLimit(n.swingMotion2,rFt.SWING2,.5*-Vi(i),.5*Vi(i))},i.setSwingSoftConstraint=function(t){sIt.Generic6DofSpring2Constraint_enableSpring(this._impl,rFt.SWING1,t),sIt.Generic6DofSpring2Constraint_enableSpring(this._impl,rFt.SWING2,t)},i.setTwistSoftConstraint=function(t){sIt.Generic6DofSpring2Constraint_enableSpring(this._impl,rFt.TWIST,t)},i.setLinearSoftConstraint=function(t){sIt.Generic6DofSpring2Constraint_enableSpring(this._impl,rFt.X,t),sIt.Generic6DofSpring2Constraint_enableSpring(this._impl,rFt.Y,t),sIt.Generic6DofSpring2Constraint_enableSpring(this._impl,rFt.Z,t)},i.setLinearStiffness=function(t){sIt.Generic6DofSpring2Constraint_setStiffness(this._impl,rFt.X,t),sIt.Generic6DofSpring2Constraint_setStiffness(this._impl,rFt.Y,t),sIt.Generic6DofSpring2Constraint_setStiffness(this._impl,rFt.Z,t)},i.setLinearDamping=function(t){sIt.Generic6DofSpring2Constraint_setDamping(this._impl,rFt.X,t),sIt.Generic6DofSpring2Constraint_setDamping(this._impl,rFt.Y,t),sIt.Generic6DofSpring2Constraint_setDamping(this._impl,rFt.Z,t)},i.setLinearRestitution=function(t){sIt.Generic6DofSpring2Constraint_setBounce(this._impl,rFt.X,t),sIt.Generic6DofSpring2Constraint_setBounce(this._impl,rFt.Y,t),sIt.Generic6DofSpring2Constraint_setBounce(this._impl,rFt.Z,t)},i.setSwingStiffness=function(t){sIt.Generic6DofSpring2Constraint_setStiffness(this._impl,rFt.SWING1,t),sIt.Generic6DofSpring2Constraint_setStiffness(this._impl,rFt.SWING2,t)},i.setSwingDamping=function(t){sIt.Generic6DofSpring2Constraint_setDamping(this._impl,rFt.SWING1,t),sIt.Generic6DofSpring2Constraint_setDamping(this._impl,rFt.SWING2,t)},i.setSwingRestitution=function(t){sIt.Generic6DofSpring2Constraint_setBounce(this._impl,rFt.SWING1,t),sIt.Generic6DofSpring2Constraint_setBounce(this._impl,rFt.SWING2,t)},i.setTwistStiffness=function(t){sIt.Generic6DofSpring2Constraint_setStiffness(this._impl,rFt.TWIST,t)},i.setTwistDamping=function(t){sIt.Generic6DofSpring2Constraint_setDamping(this._impl,rFt.TWIST,t)},i.setTwistRestitution=function(t){sIt.Generic6DofSpring2Constraint_setBounce(this._impl,rFt.TWIST,t)},i.setDriverMode=function(t,e){e===BEt.DISABLED?sIt.Generic6DofSpring2Constraint_enableMotor(this._impl,t,!1):e===BEt.SERVO?(sIt.Generic6DofSpring2Constraint_enableMotor(this._impl,t,!0),sIt.Generic6DofSpring2Constraint_setServo(this._impl,t,!0)):e===BEt.INDUCTION&&(sIt.Generic6DofSpring2Constraint_enableMotor(this._impl,t,!0),sIt.Generic6DofSpring2Constraint_setServo(this._impl,t,!1))},i._updateMotorTargetAndVelocity=function(t){var e=BEt.DISABLED,i=0,n=0,r=0,s=this.constraint.linearDriverSettings,a=this.constraint.angularDriverSettings;switch(t){case 0:i=rFt.X,e=s.xDrive,n=s.targetPosition.x,r=-s.targetVelocity.x;break;case 1:i=rFt.Y,e=s.yDrive,n=s.targetPosition.y,r=-s.targetVelocity.y;break;case 2:i=rFt.Z,e=s.zDrive,n=s.targetPosition.z,r=-s.targetVelocity.z;break;case 3:i=rFt.TWIST,e=a.twistDrive,n=-Vi(a.targetOrientation.x),r=-Vi(a.targetVelocity.x);break;case 4:i=rFt.SWING1,e=a.swingDrive1,n=-Vi(a.targetOrientation.y),r=-Vi(a.targetVelocity.y);break;case 5:i=rFt.SWING2,e=a.swingDrive2,n=-Vi(a.targetOrientation.z),r=-Vi(a.targetVelocity.z)}var o=t>2?a.strength:s.strength;sIt.Generic6DofSpring2Constraint_setServoTarget(this._impl,i,n),e===BEt.SERVO?t>2?sIt.Generic6DofSpring2Constraint_setTargetVelocity(this._impl,i,-n*o*.1):sIt.Generic6DofSpring2Constraint_setTargetVelocity(this._impl,i,n*o*.1):e===BEt.INDUCTION&&sIt.Generic6DofSpring2Constraint_setTargetVelocity(this._impl,i,r)},i.setLinearMotorTarget=function(){this._updateMotorTargetAndVelocity(0),this._updateMotorTargetAndVelocity(1),this._updateMotorTargetAndVelocity(2)},i.setLinearMotorVelocity=function(){this._updateMotorTargetAndVelocity(0),this._updateMotorTargetAndVelocity(1),this._updateMotorTargetAndVelocity(2)},i.setLinearMotorForceLimit=function(t){sIt.Generic6DofSpring2Constraint_setMaxMotorForce(this._impl,rFt.X,t),sIt.Generic6DofSpring2Constraint_setMaxMotorForce(this._impl,rFt.Y,t),sIt.Generic6DofSpring2Constraint_setMaxMotorForce(this._impl,rFt.Z,t)},i.setAngularMotorTarget=function(){this._updateMotorTargetAndVelocity(3),this._updateMotorTargetAndVelocity(4),this._updateMotorTargetAndVelocity(5)},i.setAngularMotorVelocity=function(){this._updateMotorTargetAndVelocity(3),this._updateMotorTargetAndVelocity(4),this._updateMotorTargetAndVelocity(5)},i.setAngularMotorForceLimit=function(t){sIt.Generic6DofSpring2Constraint_setMaxMotorForce(this._impl,rFt.TWIST,t),sIt.Generic6DofSpring2Constraint_setMaxMotorForce(this._impl,rFt.SWING1,t),sIt.Generic6DofSpring2Constraint_setMaxMotorForce(this._impl,rFt.SWING2,t)},i.setPivotA=function(){this.updateFrames()},i.setPivotB=function(){this.updateFrames()},i.setAutoPivotB=function(){this.updateFrames()},i.setAxis=function(){this.updateFrames()},i.setSecondaryAxis=function(){this.updateFrames()},i.setBreakForce=function(){var t=LIt(Math.max(this.constraint.breakForce,this.constraint.breakTorque),eDt.instance.fixedTimeStep);sIt.TypedConstraint_setMaxImpulseThreshold(this._impl,t)},i.setBreakTorque=function(){var t=LIt(Math.max(this.constraint.breakForce,this.constraint.breakTorque),eDt.instance.fixedTimeStep);sIt.TypedConstraint_setMaxImpulseThreshold(this._impl,t)},i.onComponentSet=function(){var t=this.constraint.connectedBody,e=this._rigidBody.body.impl,i=t&&t.body.impl||sIt.TypedConstraint_getFixedBody(),n=lIt.instance.BT_TRANSFORM_0,r=lIt.instance.BT_TRANSFORM_1;this._impl=sIt.Generic6DofSpring2Constraint_new(e,i,n,r,nFt.RO_YZX);var s=this.constraint.linearLimitSettings,a=this.constraint.angularLimitSettings;this.setConstraintMode(0,s.xMotion),this.setConstraintMode(1,s.yMotion),this.setConstraintMode(2,s.zMotion),this.setConstraintMode(3,a.twistMotion),this.setConstraintMode(4,a.swingMotion1),this.setConstraintMode(5,a.swingMotion2),this.setLinearSoftConstraint(s.enableSoftConstraint),this.setLinearStiffness(s.stiffness),this.setLinearDamping(s.damping),this.setLinearRestitution(s.restitution),this.setSwingSoftConstraint(a.enableSoftConstraintSwing),this.setSwingRestitution(a.swingRestitution),this.setSwingStiffness(a.swingStiffness),this.setSwingDamping(a.swingDamping),this.setTwistSoftConstraint(a.enableSoftConstraintTwist),this.setTwistRestitution(a.twistRestitution),this.setTwistStiffness(a.twistStiffness),this.setTwistDamping(a.twistDamping);var o=this.constraint.linearDriverSettings,h=this.constraint.angularDriverSettings;this.setDriverMode(0,o.xDrive),this.setDriverMode(1,o.yDrive),this.setDriverMode(2,o.zDrive),this.setDriverMode(3,h.twistDrive),this.setDriverMode(4,h.swingDrive1),this.setDriverMode(5,h.swingDrive2),this.setLinearMotorTarget(o.targetPosition),this.setLinearMotorVelocity(o.targetVelocity),this.setLinearMotorForceLimit(o.strength),this.setAngularMotorTarget(h.targetOrientation),this.setAngularMotorVelocity(h.targetVelocity),this.setAngularMotorForceLimit(h.strength),this.setBreakForce(this.constraint.breakForce),this.setBreakTorque(this.constraint.breakTorque),this.updateFrames(),this.updateDebugDrawSize()},i.updateFrames=function(){var t=this.constraint,e=t.node,i=cIt,n=dIt,r=pIt,s=lIt.instance.BT_TRANSFORM_0;gn.multiply(i,e.worldScale,t.pivotA),DIt(sIt.Transform_getOrigin(s),i);var a=lIt.instance.BT_QUAT_0,o=t.axis,h=t.secondaryAxis,u=gn.cross(_It,o,h);Vn.set(mIt,o.x,o.y,o.z,0,h.x,h.y,h.z,0,u.x,u.y,u.z,0,0,0,0,1).getRotation(n),MIt(a,n),sIt.Transform_setRotation(s,a);var l=lIt.instance.BT_TRANSFORM_1,c=this.constraint.connectedBody;c?(Bn.multiply(n,e.worldRotation,n),Bn.invert(r,c.node.worldRotation),Bn.multiply(n,r,n),t.autoPivotB?(gn.multiply(i,t.node.worldScale,t.pivotA),gn.transformQuat(i,i,e.worldRotation),gn.add(i,i,t.node.worldPosition),gn.subtract(i,i,c.node.worldPosition),gn.transformQuat(i,i,r)):gn.multiply(i,c.node.worldScale,t.pivotB)):(gn.multiply(i,e.worldScale,t.pivotA),gn.transformQuat(i,i,e.worldRotation),gn.add(i,i,e.worldPosition),Bn.multiply(n,e.worldRotation,n)),DIt(sIt.Transform_getOrigin(l),i),MIt(a,n),sIt.Transform_setRotation(l,a),sIt.Generic6DofSpring2Constraint_setFrames(this._impl,s,l)},i.updateScale0=function(){this.updateFrames()},i.updateScale1=function(){this.updateFrames()},n(e,[{key:"constraint",get:function(){return this._com}}]),e}(cFt),mFt=new gn(0,0,0),gFt=new gn(0,0,0);new gn(0,0,0);var vFt=function(){function t(){this.wrappedWorld=void 0,this._isEnabled=!1,this._impl=0,this._comp=null,this._btCollisionFlags=0,this._word3=0,this._dirty=!1,this._collisionFilterGroup=PEt.DEFAULT,this._collisionFilterMask=-1,this.id=t.idCounter++,this.wrappedWorld=eDt.instance.physicsWorld}var e=t.prototype;return e.onComponentSet=function(){},e.updateScale=function(){},e.initialize=function(t){this._comp=t;var e=this._comp.group,i=eDt.instance.collisionMatrix[e];return this._collisionFilterGroup=e,this._collisionFilterMask=i,this.onComponentSet(),0!==this._impl||(H("[Physics]: Initialize BulletCharacterController failed"),!1)},e.setWrapper=function(){lIt.setWrapper(this._impl,aIt.CCT_CACHE_NAME,this);var t=sIt.CharacterController_getCollisionShape(this.impl);lIt.setWrapper(t,aIt.CCT_CACHE_NAME,this)},e.onEnable=function(){this._isEnabled=!0,this._impl||this.onComponentSet(),this.setDetectCollisions(!1),this.setOverlapRecovery(!0),eDt.instance.physicsWorld.addCCT(this),this.setWrapper()},e.onDisable=function(){this._isEnabled=!1,this.wrappedWorld.removeCCT(this),this.onDestroy()},e.onDestroy=function(){sIt._safe_delete(this._impl,tIt.EBulletTypeCharacterController),lIt.delWrapper(this._impl,aIt.CCT_CACHE_NAME),this._impl=0},e.onLoad=function(){},e.getPosition=function(t){this._impl&&BIt(t,sIt.CharacterController_getPosition(this.impl))},e.setPosition=function(t){this._impl&&(DIt(sIt.CharacterController_getPosition(this.impl),t),this.syncPhysicsToScene())},e.setContactOffset=function(t){this._impl&&sIt.CharacterController_setContactOffset(this._impl,t)},e.setStepOffset=function(t){this._impl&&sIt.CharacterController_setStepOffset(this._impl,t)},e.setSlopeLimit=function(t){this._impl&&sIt.CharacterController_setSlopeLimit(this._impl,Ye(t))},e.setDetectCollisions=function(t){this._impl&&sIt.CharacterController_setCollision(this.impl,t)},e.setOverlapRecovery=function(t){this._impl&&sIt.CharacterController_setOverlapRecovery(this.impl,t)},e.onGround=function(){return(4&this._btCollisionFlags)>0},e.syncSceneToPhysics=function(){var t=this.characterController.node;t.hasChangedFlags&&(t.hasChangedFlags&mm.SCALE&&this.syncScale(),t.hasChangedFlags&mm.POSITION&&(gn.add(mFt,t.worldPosition,this.scaledCenter),this.setPosition(mFt)))},e.syncPhysicsToScene=function(){this.getPosition(mFt),mFt.subtract(this.scaledCenter),this._comp.node.setWorldPosition(mFt)},e.syncScale=function(){this.updateScale()},e.move=function(t,e,i){if(this._isEnabled){var n=lIt.instance.BT_V3_0;sIt.Vec3_set(n,t.x,t.y,t.z),this._btCollisionFlags=sIt.CharacterController_move(this.impl,n,e,i)}},e.setGroup=function(t){t!==this._collisionFilterGroup&&(this._collisionFilterGroup=t,this._dirty=!0)},e.getGroup=function(){return this._collisionFilterGroup},e.addGroup=function(t){this._collisionFilterGroup|=t,this._dirty=!0},e.removeGroup=function(t){this._collisionFilterGroup&=~t,this._dirty=!0},e.setMask=function(t){t!==this._collisionFilterMask&&(this._collisionFilterMask=t,this._dirty=!0)},e.getMask=function(){return this._collisionFilterMask},e.addMask=function(t){this._collisionFilterMask|=t,this._dirty=!0},e.removeMask=function(t){this._collisionFilterMask&=~t,this._dirty=!0},e.updateEventListener=function(){this.wrappedWorld.updateNeedEmitCCTEvents(this.characterController.needCollisionEvent)},e.updateDirty=function(){this._dirty&&(eDt.instance.physicsWorld.removeCCT(this),eDt.instance.physicsWorld.addCCT(this),this._dirty=!1)},e.onShapeHitExt=function(t){var e=sIt.ControllerShapeHit_getHitShape(t),i=eDt.instance.physicsWorld;i.cctShapeEventDic.get(this.impl,e);var n=new gn;BIt(n,sIt.ControllerHit_getHitWorldPos(t));var r=new gn;BIt(r,sIt.ControllerHit_getHitWorldNormal(t));var s=new gn;BIt(s,sIt.ControllerHit_getHitMotionDir(t));var a=sIt.ControllerHit_getHitMotionLength(t),o=lIt.getWrapper(e,zNt.TYPE);o&&i.cctShapeEventDic.set(this.impl,e,{BulletCharacterController:this,BulletShape:o,worldPos:n,worldNormal:r,motionDir:s,motionLength:a})},n(t,[{key:"isEnabled",get:function(){return this._isEnabled}},{key:"impl",get:function(){return this._impl}},{key:"characterController",get:function(){return this._comp}},{key:"scaledCenter",get:function(){return gn.multiply(gFt,this._comp.center,this._comp.node.worldScale),gFt}}]),t}();vFt.idCounter=0;var yFt,SFt,TFt,AFt,bFt,EFt,CFt,xFt,wFt=new gn(0,0,0),RFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.onComponentSet=function(){this.component.node.getWorldPosition(wFt),wFt.add(this.scaledCenter);var t=lIt.instance.BT_V3_0;sIt.Vec3_set(t,wFt.x,wFt.y,wFt.z);var e=gn.UNIT_Y,i=lIt.instance.BT_V3_1;sIt.Vec3_set(i,e.x,e.y,e.z);var n=sIt.ControllerHitReport.implement(LNt).$$.ptr,r=eDt.instance.physicsWorld,s=sIt.CapsuleCharacterControllerDesc_new(Ye(this.component.slopeLimit),this.component.stepOffset,this.component.skinWidth,i,t,n,this.component.radius,this.component.height);this._impl=sIt.CapsuleCharacterController_new(r.impl,s,0),this.updateScale()},i.setRadius=function(){this.updateScale()},i.setHeight=function(){this.updateScale()},i.updateScale=function(){this.updateGeometry()},i.updateGeometry=function(){var t=this.component.node.worldScale,e=this.component.radius*tn(t.x,t.z),i=this.component.height*Math.abs(t.y);sIt.CapsuleCharacterController_setRadius(this.impl,e),sIt.CapsuleCharacterController_setHeight(this.impl,i),this._dirty=!0},n(e,[{key:"component",get:function(){return this._comp}}]),e}(vFt),IFt=new gn(0,0,0),DFt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.onComponentSet=function(){this.component.node.getWorldPosition(IFt),IFt.add(this.scaledCenter);var t=lIt.instance.BT_V3_0;sIt.Vec3_set(t,IFt.x,IFt.y,IFt.z);var e=gn.UNIT_Y,i=lIt.instance.BT_V3_1;sIt.Vec3_set(i,e.x,e.y,e.z);var n=sIt.ControllerHitReport.implement(LNt).$$.ptr,r=eDt.instance.physicsWorld,s=sIt.BoxCharacterControllerDesc_new(Ye(this.component.slopeLimit),this.component.stepOffset,this.component.skinWidth,i,t,n,this.component.halfHeight,this.component.halfSideExtent,this.component.halfForwardExtent);this._impl=sIt.BoxCharacterController_new(r.impl,s,0),this.updateScale()},i.setHalfHeight=function(){this.updateScale()},i.setHalfSideExtent=function(){this.updateScale()},i.setHalfForwardExtent=function(){this.updateScale()},i.updateScale=function(){this.updateGeometry()},i.updateGeometry=function(){var t=this.component.node.worldScale;sIt.BoxCharacterController_setHalfSideExtent(this.impl,this.component.halfSideExtent*t.x),sIt.BoxCharacterController_setHalfHeight(this.impl,this.component.halfHeight*t.y),sIt.BoxCharacterController_setHalfForwardExtent(this.impl,this.component.halfForwardExtent*t.z),this._dirty=!0},n(e,[{key:"component",get:function(){return this._comp}}]),e}(vFt);EB.once(bB.EVENT_PRE_SUBSYSTEM_INIT,(function(){WRt.register("bullet",{PhysicsWorld:JNt,RigidBody:ONt,BoxShape:$Nt,SphereShape:tFt,CapsuleShape:eFt,TrimeshShape:sFt,CylinderShape:aFt,ConeShape:oFt,TerrainShape:hFt,SimplexShape:uFt,PlaneShape:lFt,PointToPointConstraint:_Ft,HingeConstraint:dFt,FixedConstraint:fFt,ConfigurableConstraint:pFt,BoxCharacterController:DFt,CapsuleCharacterController:RFt})})),function(t){t[t.BOX=0]="BOX",t[t.SPHERE=1]="SPHERE",t[t.CYLINDER=2]="CYLINDER",t[t.CONE=3]="CONE",t[t.CAPSULE=4]="CAPSULE",t[t.TORUS=5]="TORUS",t[t.PLANE=6]="PLANE",t[t.QUAD=7]="QUAD"}(xFt||(xFt={})),we(xFt);var BFt=t("fW",(yFt=eo("cc.Primitive"),SFt=Lo(xFt),yFt(((CFt=function(t){function e(e){var i;return void 0===e&&(e=xFt.BOX),(i=t.call(this)||this).type=bFt&&bFt(),i.info=EFt&&EFt(),i.type=e,i}return s(e,t),e.prototype.onLoaded=function(){oM(Hq[xFt[this.type].toLowerCase()](this.info),this)},e}(ZB)).PrimitiveType=xFt,bFt=ja((AFt=CFt).prototype,"type",[SFt],(function(){return xFt.BOX})),EFt=ja(AFt.prototype,"info",[lo],(function(){return{}})),TFt=AFt))||TFt));S.Primitive=BFt,S.primitives=Hq;var MFt,PFt=function(){function t(t,e,i){this._total=0,this._value=0,this._averageValue=0,this._accumValue=0,this._accumSamples=0,this._id=t,this._opts=e,this._accumStart=i}var e=t.prototype;return e.sample=function(t){this._average(this._value,t)},e.human=function(){var t=this._opts,e=t.average,i=t.isInteger,n=e?this._averageValue:this._value;return i?Math.round(n):Math.round(100*n)/100},e.alarm=function(){return void 0!==this._opts.below&&this._value<this._opts.below||void 0!==this._opts.over&&this._value>this._opts.over},e._average=function(t,e){if(void 0===e&&(e=0),this._opts.average){this._accumValue+=t,++this._accumSamples;var i=e;i-this._accumStart>=this._opts.average&&(this._averageValue=this._accumValue/this._accumSamples,this._accumValue=0,this._accumStart=i,this._accumSamples=0)}},n(t,[{key:"value",get:function(){return this._value},set:function(t){this._value=t}}]),t}(),OFt=eo("cc.PerfCounter")(MFt=function(t){function e(e,i,n){var r;return(r=t.call(this,e,i,n)||this)._time=n,r}s(e,t);var i=e.prototype;return i.start=function(t){void 0===t&&(t=0),this._time=t},i.end=function(t){void 0===t&&(t=0),this._value=t-this._time,this._average(this._value)},i.tick=function(){this.end(),this.start()},i.frame=function(t){var e=t,i=e-this._time;this._total++,i>(this._opts.average||1e3)&&(this._value=1e3*this._total/i,this._total=0,this._time=e,this._average(this._value))},e}(PFt))||MFt,LFt="0123456789. ",NFt=500,FFt={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,".":10},kFt={fps:{desc:"Framerate (FPS)",below:30,average:NFt,isInteger:!0},draws:{desc:"Draw call",isInteger:!0},frame:{desc:"Frame time (ms)",min:0,max:50,average:NFt},instances:{desc:"Instance Count",isInteger:!0},tricount:{desc:"Triangle",isInteger:!0},logic:{desc:"Game Logic (ms)",min:0,max:50,average:NFt,color:"#080"},physics:{desc:"Physics (ms)",min:0,max:50,average:NFt},render:{desc:"Renderer (ms)",min:0,max:50,average:NFt,color:"#f90"},present:{desc:"Present (ms)",min:0,max:50,average:NFt,color:"#f90"},textureMemory:{desc:"GFX Texture Mem(M)"},bufferMemory:{desc:"GFX Buffer Mem(M)"}},GFt=t("fX",function(t){function e(){var e;return(e=t.call(this)||this)._profilerStats=null,e._showFPS=!1,e._rootNode=null,e._device=null,e._swapchain=null,e._meshRenderer=null,e._canvas=null,e._ctx=null,e._texture=null,e._region=new Jc,e._canvasArr=[],e._regionArr=[e._region],e.digitsData=null,e.offsetData=null,e.pass=null,e._canvasDone=!1,e._statsDone=!1,e._inited=!1,e._lineHeight=280/(Object.keys(kFt).length+1),e._wordHeight=0,e._eachNumWidth=0,e._totalLines=0,e.lastTime=0,e._canvas=A.document.createElement("canvas"),e._ctx=e._canvas.getContext("2d"),e._canvasArr.push(e._canvas),e}s(e,t);var i=e.prototype;return i.init=function(){Me.querySettings(De.Category.PROFILING,"showFPS")?this.showStats():this.hideStats()},i.isShowingStats=function(){return this._showFPS},i.hideStats=function(){this._showFPS&&(this._rootNode&&(this._rootNode.active=!1),S.director.off(S.Director.EVENT_BEFORE_UPDATE,this.beforeUpdate,this),S.director.off(S.Director.EVENT_AFTER_UPDATE,this.afterUpdate,this),S.director.off(S.Director.EVENT_BEFORE_PHYSICS,this.beforePhysics,this),S.director.off(S.Director.EVENT_AFTER_PHYSICS,this.afterPhysics,this),S.director.off(S.Director.EVENT_BEFORE_DRAW,this.beforeDraw,this),S.director.off(S.Director.EVENT_AFTER_RENDER,this.afterRender,this),S.director.off(S.Director.EVENT_AFTER_DRAW,this.afterPresent,this),this._showFPS=!1,ID.root.pipeline.profiler=null,S.game.config.showFPS=!1)},i.showStats=function(){if(!this._showFPS){if(!this._device){var t=S.director.root;this._device=Ff.gfxDevice,this._swapchain=t.mainWindow.swapchain}this.generateCanvas(),this.generateStats(),S.game.once(S.Game.EVENT_ENGINE_INITED,this.generateNode,this),S.game.on(S.Game.EVENT_RESTART,this.generateNode,this),this._rootNode&&(this._rootNode.active=!0),S.director.on(S.Director.EVENT_BEFORE_UPDATE,this.beforeUpdate,this),S.director.on(S.Director.EVENT_AFTER_UPDATE,this.afterUpdate,this),S.director.on(S.Director.EVENT_BEFORE_PHYSICS,this.beforePhysics,this),S.director.on(S.Director.EVENT_AFTER_PHYSICS,this.afterPhysics,this),S.director.on(S.Director.EVENT_BEFORE_DRAW,this.beforeDraw,this),S.director.on(S.Director.EVENT_AFTER_RENDER,this.afterRender,this),S.director.on(S.Director.EVENT_AFTER_DRAW,this.afterPresent,this),this._showFPS=!0,this._canvasDone=!0,this._statsDone=!0,S.game.config.showFPS=!0}},i.generateCanvas=function(){if(!this._canvasDone){this._ctx&&this._canvas&&(this._canvas.width=280,this._canvas.height=280,this._canvas.style.width=""+this._canvas.width,this._canvas.style.height=""+this._canvas.height,this._ctx.font="23px Arial",this._ctx.textBaseline="top",this._ctx.fillStyle="#fff",this._texture=this._device.createTexture(new u_(hc.TEX2D,uc.SAMPLED|uc.TRANSFER_DST,ec.RGBA8,280,280)),this._region.texExtent.width=280,this._region.texExtent.height=280)}},i.generateStats=function(){if(!this._statsDone&&this._ctx&&this._canvas){this._profilerStats=null;var t=performance.now();this._ctx.textAlign="left";var e=0;for(var i in kFt){var n=kFt[i];this._ctx.fillText(n.desc,0,e*this._lineHeight),n.counter=new OFt(i,n,t),e++}this._totalLines=e,this._wordHeight=this._totalLines*this._lineHeight/this._canvas.height;for(var r=0;r<LFt.length;++r){var s=this._ctx.measureText(LFt[r]).width;this._eachNumWidth=Math.max(this._eachNumWidth,s)}for(var a=0;a<LFt.length;++a)this._ctx.fillText(LFt[a],a*this._eachNumWidth,this._totalLines*this._lineHeight);this._eachNumWidth/=this._canvas.width,this._profilerStats=kFt,this._canvasArr[0]=this._canvas,this._device.copyTexImagesToTexture(this._canvasArr,this._texture,this._regionArr)}},i.generateNode=function(){if(!this._rootNode||!this._rootNode.isValid){this._rootNode=new hg("PROFILER_NODE"),this._rootNode._objFlags=S.Object.Flags.DontSave|S.Object.Flags.HideInHierarchy,S.game.addPersistRootNode(this._rootNode);var t=new hg("Profiler_Root");t.parent=this._rootNode;for(var e=.4,i=e/this._totalLines,n=e/this._wordHeight,r=i/23,s=this._eachNumWidth*this._canvas.width*r,a=[0,e,0,n,e,0,n,0,0,0,0,0],o=[0,2,1,0,3,2],h=[0,0,-1,0,1,0,-1,0,1,this._wordHeight,-1,0,0,this._wordHeight,-1,0],u=0,l=0;l<this._totalLines;l++)for(var c=0;c<8;c++){a.push(n+c*s,e-l*i,0),a.push(n+(c+1)*s,e-l*i,0),a.push(n+(c+1)*s,e-(l+1)*i,0),a.push(n+c*s,e-(l+1)*i,0),u=4*(8*l+c+1),o.push(0+u,2+u,1+u,0+u,3+u,2+u);var _=8*l+c,f=Math.floor(_/4),d=_-4*f;h.push(0,this._wordHeight,f,d),h.push(this._eachNumWidth,this._wordHeight,f,d),h.push(this._eachNumWidth,1,f,d),h.push(0,1,f,d)}this._meshRenderer=t.addComponent(VH),this._meshRenderer.mesh=oM({positions:a,indices:o,colors:h});var p=new zT;p.initialize({effectName:"util/profiler"});var m=this.pass=p.passes[0],g=m.getBinding("mainTexture"),v=m.getBinding("digits"),y=m.getBinding("offset");m.bindTexture(g,this._texture),this.digitsData=m.blocks[v],this.offsetData=m.blocks[y],this.offsetData[3]=-1,this._meshRenderer.material=p,this._meshRenderer.node.layer=dm.Enum.PROFILER,this._inited=!0}},i.beforeUpdate=function(){if(this._profilerStats){var t=performance.now();this._profilerStats.frame.counter.start(t),this._profilerStats.logic.counter.start(t)}},i.afterUpdate=function(){if(this._profilerStats){var t=performance.now();S.director.isPaused()?this._profilerStats.frame.counter.start(t):this._profilerStats.logic.counter.end(t)}},i.beforePhysics=function(){if(this._profilerStats){var t=performance.now();this._profilerStats.physics.counter.start(t)}},i.afterPhysics=function(){if(this._profilerStats){var t=performance.now();this._profilerStats.physics.counter.end(t)}},i.beforeDraw=function(){if(this._profilerStats&&this._inited){var t=this._swapchain.surfaceTransform,e=this._device.capabilities.clipSpaceSignY;if(t!==this.offsetData[3]){var i=Gn[t],n=-.9,r=-.9*e;Sa.isXR&&(n=-.5,r=-.5*e),this.offsetData[0]=n*i[0]+r*i[2],this.offsetData[1]=n*i[1]+r*i[3],this.offsetData[2]=this._eachNumWidth,this.offsetData[3]=t}this.pass.setRootBufferDirty(!0),this._meshRenderer.model?ID.root.pipeline.profiler=this._meshRenderer.model:ID.root.pipeline.profiler=null;var s=performance.now();this._profilerStats.render.counter.start(s)}},i.afterRender=function(){if(this._profilerStats&&this._inited){var t=performance.now();this._profilerStats.render.counter.end(t),this._profilerStats.present.counter.start(t)}},i.afterPresent=function(){if(this._profilerStats&&this._inited){var t=performance.now();if(this._profilerStats.frame.counter.end(t),this._profilerStats.fps.counter.frame(t),this._profilerStats.present.counter.end(t),!(t-this.lastTime<NFt)){this.lastTime=t;var e=this._device;this._profilerStats.draws.counter.value=e.numDrawCalls,this._profilerStats.instances.counter.value=e.numInstances,this._profilerStats.bufferMemory.counter.value=e.memoryStatus.bufferSize/1048576,this._profilerStats.textureMemory.counter.value=e.memoryStatus.textureSize/1048576,this._profilerStats.tricount.counter.value=e.numTris;var i=0,n=this.digitsData;for(var r in this._profilerStats){var s=this._profilerStats[r];s.counter.sample(t);for(var a=s.counter.human().toString(),o=7;o>=0;o--){var h=8*i+o,u=a[a.length-(8-o)],l=FFt[u];void 0===l&&(l=11),n[h]=l}i++}}}},n(e,[{key:"_stats",get:function(){return tt(16381),this._profilerStats}},{key:"stats",get:function(){return this._profilerStats}}]),e}(Ml)),VFt=t("fY",new GFt);ID.registerSystem("profiler",VFt,0),S.profiler=VFt;var UFt=function(){function t(t){this.jointTexturePool=void 0,this.jointAnimationInfo=void 0,this.jointTexturePool=new Xj(t),this.jointAnimationInfo=new jj(t)}var e=t.prototype;return e.releaseSkeleton=function(t){this.jointTexturePool.releaseSkeleton(t)},e.releaseAnimationClip=function(t){this.jointTexturePool.releaseAnimationClip(t)},e.clear=function(){this.jointTexturePool.clear(),this.jointAnimationInfo.clear()},t}();S.internal.DataPoolManager=UFt;var zFt,HFt,WFt,XFt,jFt,YFt,qFt,KFt,QFt,ZFt,JFt,$Ft,tkt,ekt,ikt,nkt=new Vn,rkt=new Vn,skt=t("f_",function(t){function e(e,i){var n;return void 0===i&&(i=""),(n=t.call(this,e,i)||this)._frames=1,n._bakedDuration=0,n._animInfo=null,n._sockets=[],n._animInfoMgr=void 0,n._parent=null,n._curvesInited=!1,n._animInfoMgr=S.director.root.dataPoolManager.jointAnimationInfo,n}s(e,t);var i=e.prototype;return i.initialize=function(e){if(!this._curveLoaded){this._parent=e.getComponent("cc.SkeletalAnimation");var i=this._parent.useBakedAnimation;this._doNotCreateEval=i,t.prototype.initialize.call(this,e),this._curvesInited=!i;var n=Bj.getOrExtract(this.clip),r=n.frames,s=n.samples;this._frames=r-1,this._animInfo=this._animInfoMgr.getData(e.uuid),this._bakedDuration=this._frames/s,this.setUseBaked(i)}},i.onPlay=function(){var e=this;t.prototype.onPlay.call(this),this._parent.useBakedAnimation&&(this._animInfoMgr.switchClip(this._animInfo,this.clip),this._parent.getUsers().forEach((function(t){t.uploadAnimation(e.clip)})))},i.setUseBaked=function(e){e?(this._sampleCurves=this._sampleCurvesBaked,this.duration=this._bakedDuration):(this._sampleCurves=t.prototype._sampleCurves,this.duration=this.clip.duration,this._curvesInited||(this._curveLoaded=!1,t.prototype.initialize.call(this,this._targetNode),this._curvesInited=!0))},i.rebuildSocketCurves=function(t){if(this._sockets.length=0,this._targetNode)for(var e=this._targetNode,i=0;i<t.length;++i){var n=t[i],r=e.getChildByPath(n.path);if(n.target){for(var s=Bj.getOrExtract(this.clip),a=n.path,o=s.joints[a],h=r,u=void 0;!o;){var l=a.lastIndexOf("/");if(a=a.substring(0,l),o=s.joints[a],h&&(u||(u=Vn.identity(rkt)),Vn.fromRTS(nkt,h.rotation,h.position,h.scale),Vn.multiply(u,nkt,u),h=h.parent),l<0)break}for(var c=o&&o.transforms,_=s.frames,f=[],d=0;d<_;d++){var p;p=c&&u?Vn.multiply(nkt,c[d],u):c?c[d]:u||new Vn;var m={pos:new gn,rot:new Bn,scale:new gn};Vn.toRTS(p,m.rot,m.pos,m.scale),f.push(m)}this._sockets.push({target:n.target,frames:f})}}},i._sampleCurvesBaked=function(t){var e=t/this.duration,i=this._animInfo,n=this.clip;i.currentClip!==n&&(this._animInfoMgr.switchClip(this._animInfo,n),this._parent.getUsers().forEach((function(t){t.uploadAnimation(n)})),i.data[0]=-1);var r=e*this._frames+.5|0;if(r!==i.data[0]){i.data[0]=r,i.dirty=!0;for(var s=0;s<this._sockets.length;++s){var a=this._sockets[s],o=a.target,h=a.frames[r],u=h.pos,l=h.rot,c=h.scale;o.setRTS(l,u,c)}}},e}(OK)),akt=t("f$",(zFt=eo("cc.SkeletalAnimation.Socket"),HFt=Lo(hg),zFt((XFt=function(t,e){void 0===t&&(t=""),void 0===e&&(e=null),this.path=jFt&&jFt(),this.target=YFt&&YFt(),this.path=t,this.target=e},jFt=ja(XFt.prototype,"path",[lo],(function(){return""})),YFt=ja(XFt.prototype,"target",[HFt],(function(){return null})),WFt=XFt))||WFt));ne(akt,"cc.SkeletalAnimationComponent.Socket");var okt=new Vn,hkt=new Vn;function ukt(t,e,i){void 0===e&&(e=""),void 0===i&&(i=[]);for(var n=0;n<t.children.length;n++){var r=t.children[n];if(r){var s=e?e+"/"+r.name:r.name;i.push(s),ukt(r,s,i)}}return i}var lkt,ckt=t("g0",(qFt=eo("cc.SkeletalAnimation"),KFt=no(99),QFt=Lo([akt]),ZFt=Lo([akt]),qFt(JFt=KFt(((ikt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._useBakedAnimation=tkt&&tkt(),e._sockets=ekt&&ekt(),e._users=new Set,e._currentBakedState=null,e}s(e,t);var i=e.prototype;return i.onLoad=function(){t.prototype.onLoad.call(this);for(var e=this.node.getComponentsInChildren(HY),i=0;i<e.length;++i){var n=e[i];n.skinningRoot===this.node&&this.notifySkinnedMeshAdded(n)}},i.onDestroy=function(){t.prototype.onDestroy.call(this),S.director.root.dataPoolManager.jointAnimationInfo.destroy(this.node.uuid),DK().removeSockets(this.node,this._sockets),this._removeAllUsers()},i.onEnable=function(){var e;t.prototype.onEnable.call(this),null===(e=this._currentBakedState)||void 0===e||e.resume()},i.onDisable=function(){var e;t.prototype.onDisable.call(this),null===(e=this._currentBakedState)||void 0===e||e.pause()},i.start=function(){this.sockets=this._sockets,this._applyBakeFlagChange(),t.prototype.start.call(this)},i.pause=function(){var e;this._useBakedEffectively?null===(e=this._currentBakedState)||void 0===e||e.pause():t.prototype.pause.call(this)},i.resume=function(){var e;this._useBakedEffectively?null===(e=this._currentBakedState)||void 0===e||e.resume():t.prototype.resume.call(this)},i.stop=function(){this._useBakedEffectively?this._currentBakedState&&(this._currentBakedState.stop(),this._currentBakedState=null):t.prototype.stop.call(this)},i.querySockets=function(){var t=this._defaultClip&&Object.keys(Bj.getOrExtract(this._defaultClip).joints).sort().reduce((function(t,e){return e.startsWith(t[t.length-1]+"/")||t.push(e),t}),[])||[];if(!t.length)return["please specify a valid default animation clip first"];for(var e=[],i=0;i<t.length;i++){var n=t[i],r=this.node.getChildByPath(n);r&&(e.push(n),ukt(r,n,e))}return e},i.rebuildSocketAnimations=function(){for(var t,e=f(this._sockets);!(t=e()).done;){var i=t.value,n=this.node.getChildByPath(i.path),r=i.target;n&&r&&(r.name=i.path.substring(i.path.lastIndexOf("/")+1)+" Socket",r.parent=this.node,Pj(n,this.node,okt),Vn.fromRTS(hkt,r.rotation,r.position,r.scale),Vn.equals(hkt,okt)||(r.matrix=okt))}for(var s=0,a=Object.keys(this._nameToState);s<a.length;s++){var o=a[s];this._nameToState[o].rebuildSocketCurves(this._sockets)}},i.createSocket=function(t){var e=this._sockets.find((function(e){return e.path===t}));if(e)return e.target;if(!this.node.getChildByPath(t))return z("illegal socket path"),null;var i=new hg;return i.parent=this.node,this._sockets.push(new akt(t,i)),this.rebuildSocketAnimations(),i},i.notifySkinnedMeshAdded=function(t){var e=this._useBakedEffectively,i=t.associatedAnimation;if(i&&i._users.delete(t),t.associatedAnimation=this,t.setUseBakedAnimation(e,!0),e){var n=this._currentBakedState;n&&t.uploadAnimation(n.clip)}this._users.add(t)},i.notifySkinnedMeshRemoved=function(t){t.associatedAnimation===this||t.associatedAnimation,t.setUseBakedAnimation(!1),t.associatedAnimation=null,this._users.delete(t)},i.getUsers=function(){return this._users},i._createState=function(t,e){return new skt(t,e)},i._doCreateState=function(e,i){var n=t.prototype._doCreateState.call(this,e,i);return n.rebuildSocketCurves(this._sockets),n},i.doPlayOrCrossFade=function(e,i){if(this._useBakedEffectively){this._currentBakedState&&this._currentBakedState.stop();var n=e;this._currentBakedState=n,n.play()}else t.prototype.doPlayOrCrossFade.call(this,e,i)},i._removeAllUsers=function(){var t=this;Array.from(this._users).forEach((function(e){t.notifySkinnedMeshRemoved(e)}))},i._applyBakeFlagChange=function(){var t=this._useBakedEffectively;for(var e in this._nameToState)this._nameToState[e].setUseBaked(t);this._users.forEach((function(e){e.setUseBakedAnimation(t)})),t?DK().removeSockets(this.node,this._sockets):(DK().addSockets(this.node,this._sockets),this._currentBakedState=null)},n(e,[{key:"sockets",get:function(){return this._sockets},set:function(t){if(!this._useBakedEffectively){var e=DK();e.removeSockets(this.node,this._sockets),e.addSockets(this.node,t)}this._sockets=t,this.rebuildSocketAnimations()}},{key:"useBakedAnimation",get:function(){return this._useBakedAnimation},set:function(t){this._useBakedAnimation=t,this._applyBakeFlagChange()}},{key:"_useBakedEffectively",get:function(){return this._useBakedAnimation}}]),e}(_9)).Socket=akt,m(($Ft=ikt).prototype,"sockets",[QFt],Object.getOwnPropertyDescriptor($Ft.prototype,"sockets"),$Ft.prototype),tkt=ja($Ft.prototype,"_useBakedAnimation",[lo],(function(){return!0})),ekt=ja($Ft.prototype,"_sockets",[ZFt],(function(){return[]})),JFt=$Ft))||JFt)||JFt));S.SkeletalAnimationComponent=ckt,ne(ckt,"cc.SkeletalAnimationComponent"),function(t){var e,i,n,r,s,a,o,h;(e=t.MixBlend||(t.MixBlend={}))[e.setup=0]="setup",e[e.first=1]="first",e[e.replace=2]="replace",e[e.add=3]="add",(i=t.MixDirection||(t.MixDirection={}))[i.mixIn=0]="mixIn",i[i.mixOut=1]="mixOut",function(t){t[t.rotate=0]="rotate",t[t.translate=1]="translate",t[t.scale=2]="scale",t[t.shear=3]="shear",t[t.attachment=4]="attachment",t[t.color=5]="color",t[t.deform=6]="deform",t[t.event=7]="event",t[t.drawOrder=8]="drawOrder",t[t.ikConstraint=9]="ikConstraint",t[t.transformConstraint=10]="transformConstraint",t[t.pathConstraintPosition=11]="pathConstraintPosition",t[t.pathConstraintSpacing=12]="pathConstraintSpacing",t[t.pathConstraintMix=13]="pathConstraintMix",t[t.twoColor=14]="twoColor"}(t.TimelineType||(t.TimelineType={})),function(t){t[t.start=0]="start",t[t.interrupt=1]="interrupt",t[t.end=2]="end",t[t.dispose=3]="dispose",t[t.complete=4]="complete",t[t.event=5]="event"}(t.EventType||(t.EventType={})),function(t){t[t.Normal=0]="Normal",t[t.Additive=1]="Additive",t[t.Multiply=2]="Multiply",t[t.Screen=3]="Screen"}(t.BlendMode||(t.BlendMode={})),(n=t.TransformMode||(t.TransformMode={}))[n.Normal=0]="Normal",n[n.OnlyTranslation=1]="OnlyTranslation",n[n.NoRotationOrReflection=2]="NoRotationOrReflection",n[n.NoScale=3]="NoScale",n[n.NoScaleOrReflection=4]="NoScaleOrReflection",(r=t.PositionMode||(t.PositionMode={}))[r.Fixed=0]="Fixed",r[r.Percent=1]="Percent",(s=t.SpacingMode||(t.SpacingMode={}))[s.Length=0]="Length",s[s.Fixed=1]="Fixed",s[s.Percent=2]="Percent",(a=t.RotateMode||(t.RotateMode={}))[a.Tangent=0]="Tangent",a[a.Chain=1]="Chain",a[a.ChainScale=2]="ChainScale",(o=t.TextureFilter||(t.TextureFilter={}))[o.Nearest=9728]="Nearest",o[o.Linear=9729]="Linear",o[o.MipMap=9987]="MipMap",o[o.MipMapNearestNearest=9984]="MipMapNearestNearest",o[o.MipMapLinearNearest=9985]="MipMapLinearNearest",o[o.MipMapNearestLinear=9986]="MipMapNearestLinear",o[o.MipMapLinearLinear=9987]="MipMapLinearLinear",(h=t.TextureWrap||(t.TextureWrap={}))[h.MirroredRepeat=33648]="MirroredRepeat",h[h.ClampToEdge=33071]="ClampToEdge",h[h.Repeat=10497]="Repeat",function(t){t[t.Region=0]="Region",t[t.BoundingBox=1]="BoundingBox",t[t.Mesh=2]="Mesh",t[t.LinkedMesh=3]="LinkedMesh",t[t.Path=4]="Path",t[t.Point=5]="Point",t[t.Clipping=6]="Clipping"}(t.AttachmentType||(t.AttachmentType={}))}(lkt||(lkt={}));var _kt=lkt;function fkt(t,e){return t?e===t.length?t:e<t.length?t.slice(0,e):new Array(e):new Array(e)}function dkt(t,e,i){var n="_"+i;Object.defineProperty(t,i,{get:function(){var t=e.call(this),i=t.size(),r=this[n];r=fkt(r,i);for(var s=0;s<i;s++)r[s]=t.get(s);return this[n]=r,r}})}var pkt=null,mkt=[];EB.onPostInfrastructureInitDelegate.add((function(){return kB().then((function(){return Sa.hasFeature(Sa.Feature.WASM)?Promise.all([e.import("./spine.wasm-f5b305ee.js"),e.import("./spine-d11505f0.js")]).then((function(t){return e=t[0].default,i=t[1].default,new Promise((function(t,n){var r=function(t){return"[Spine]: Spine wasm load failed: "+t};e({instantiateWasm:function(t,e){NB(i,t).then((function(t){e(t.instance,t.module)})).catch((function(t){return n(r(t))}))}}).then((function(t){pkt=t,mkt.forEach((function(t){t(pkt)}))})).then(t).catch((function(t){return n(r(t))}))}));var e,i})):Promise.all([e.import("./spine.asm-0201ae63.js"),e.import("./spine.js-6770127a.js")]).then((function(t){return e=t[0].default,i=t[1].default,new Promise((function(t,n){FB(i).then((function(t){var i={};return i.buffer=new ArrayBuffer(33554432),e({wasmMemory:i,memoryInitializerRequest:{response:t,status:200}}).then((function(t){pkt=t,mkt.forEach((function(t){t(pkt)}))}))})).then(t).catch(n)}));var e,i}))})).catch((function(t){H(t)}))})),mkt.push((function(t){var e;!function(t){_kt.wasmUtil=t.SpineWasmUtil,_kt.wasmUtil.wasm=t,_kt.wasmUtil.spineWasmInit(),_kt.SPVectorFloat=t.SPVectorFloat,_kt.MathUtils=t.MathUtils,_kt.Color=t.Color,_kt.String=t.String,_kt.Vector2=t.Vector2,_kt.Interpolation=t.Interpolation,_kt.Triangulator=t.Triangulator,_kt.ConstraintData=t.ConstraintData,_kt.IkConstraintData=t.IkConstraintData,_kt.PathConstraintData=t.PathConstraintData,_kt.SkeletonBounds=t.SkeletonBounds,_kt.Event=t.Event,_kt.EventData=t.EventData,_kt.Attachment=t.Attachment,_kt.VertexAttachment=t.VertexAttachment,_kt.BoundingBoxAttachment=t.BoundingBoxAttachment,_kt.ClippingAttachment=t.ClippingAttachment,_kt.MeshAttachment=t.MeshAttachment,_kt.PathAttachment=t.PathAttachment,_kt.PointAttachment=t.PointAttachment,_kt.RegionAttachment=t.RegionAttachment,_kt.AtlasAttachmentLoader=t.AtlasAttachmentLoader,_kt.TextureAtlasPage=t.TextureAtlasPage,_kt.TextureAtlasRegion=t.TextureAtlasRegion,_kt.TextureAtlas=t.TextureAtlas,_kt.PowOut=t.PowOut,_kt.BoneData=t.BoneData,_kt.SlotData=t.SlotData,_kt.Updatable=t.Updatable,_kt.IkConstraint=t.IkConstraint,_kt.PathConstraint=t.PathConstraint,_kt.TransformConstraintData=t.TransformConstraintData,_kt.TransformConstraint=t.TransformConstraint,_kt.Bone=t.Bone,_kt.Slot=t.Slot,_kt.Skin=t.Skin,_kt.SkinEntry=t.SkinEntry,_kt.SkeletonClipping=t.SkeletonClipping,_kt.SkeletonData=t.SkeletonData,_kt.TranslateTimeline=t.TranslateTimeline,_kt.ScaleTimeline=t.ScaleTimeline,_kt.ShearTimeline=t.ShearTimeline,_kt.RotateTimeline=t.RotateTimeline,_kt.ColorTimeline=t.ColorTimeline,_kt.TwoColorTimeline=t.TwoColorTimeline,_kt.AttachmentTimeline=t.AttachmentTimeline,_kt.DeformTimeline=t.DeformTimeline,_kt.EventTimeline=t.EventTimeline,_kt.DrawOrderTimeline=t.DrawOrderTimeline,_kt.IkConstraintTimeline=t.IkConstraintTimeline,_kt.TransformConstraintTimeline=t.TransformConstraintTimeline,_kt.PathConstraintPositionTimeline=t.PathConstraintPositionTimeline,_kt.PathConstraintMixTimeline=t.PathConstraintMixTimeline,_kt.TrackEntry=t.TrackEntry,_kt.AnimationStateData=t.AnimationStateData,_kt.AnimationState=t.AnimationState,_kt.Animation=t.Animation,_kt.EventQueue=t.EventQueue,_kt.AnimationStateAdapter=t.AnimationStateAdapter,_kt.Skeleton=t.Skeleton,_kt.SkeletonBinary=t.SkeletonBinary,_kt.SkeletonJson=t.SkeletonJson,_kt.VertexEffect=t.VertexEffect,_kt.JitterEffect=t.JitterEffect,_kt.SwirlEffect=t.SwirlEffect,_kt.SkeletonInstance=t.SkeletonInstance,_kt.SkeletonSystem=t.SkeletonSystem}(t),[{proto:e=_kt.String.prototype,property:"length",getter:e.length},{proto:e,property:"isEmpty",getter:e.isEmpty},{proto:e,property:"str",getter:e.str}].forEach((function(t){Pt(t.proto,t.property,t.getter)})),function(t,e){Object.defineProperty(t,"strPtr",{value:function(){var t=e.call(this),i=_kt.wasmUtil.wasm.HEAPU8,n=this.length,r=i.subarray(t,t+n);return String.fromCharCode.apply(String,r)}})}(e,e.strPtr),function(){var t=_kt.Vector2.prototype;[{proto:t,property:"x",getter:t.getX,setter:t.setX},{proto:t,property:"y",getter:t.getY,setter:t.setY}].forEach((function(t){Pt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.BoneData.prototype;[{proto:t,property:"index",getter:t.getIndex},{proto:t,property:"name",getter:t.getName},{proto:t,property:"parent",getter:t.getParent},{proto:t,property:"length",getter:t.getLength,setter:t.setLength},{proto:t,property:"x",getter:t.getX,setter:t.setX},{proto:t,property:"y",getter:t.getY,setter:t.setY},{proto:t,property:"rotation",getter:t.getRotation,setter:t.setRotation},{proto:t,property:"scaleX",getter:t.getScaleX,setter:t.setScaleX},{proto:t,property:"scaleY",getter:t.getScaleY,setter:t.setScaleY},{proto:t,property:"shearX",getter:t.getShearX,setter:t.setShearX},{proto:t,property:"shearY",getter:t.getShearY,setter:t.setShearY},{proto:t,property:"transformMode",getter:t.getTransformMode,setter:t.setTransformMode},{proto:t,property:"skinRequired",getter:t.getSkinRequired,setter:t.setSkinRequired}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.ConstraintData.prototype;[{proto:t,property:"name",getter:t.getName},{proto:t,property:"order",getter:t.getOrder,setter:t.setOder},{proto:t,property:"skinRequired",getter:t.getSkinRequired,setter:t.setSkinRequired}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.IkConstraintData.prototype;[{proto:t,property:"target",getter:t.getTarget,setter:t.setTarget},{proto:t,property:"bendDirection",getter:t.getBendDirection,setter:t.setBendDirection},{proto:t,property:"compress",getter:t.getCompress,setter:t.setCompress},{proto:t,property:"stretch",getter:t.getStretch,setter:t.setStretch},{proto:t,property:"uniform",getter:t.getUniform,setter:t.setUniform},{proto:t,property:"mix",getter:t.getMix,setter:t.setMix},{proto:t,property:"softness",getter:t.getSoftness,setter:t.setSoftness}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getBones,"bones")}(),function(){var t=_kt.PathConstraintData.prototype;[{proto:t,property:"target",getter:t.getTarget,setter:t.setTarget},{proto:t,property:"positionMode",getter:t.getPositionMode,setter:t.setPositionMode},{proto:t,property:"spacingMode",getter:t.getSpacingMode,setter:t.setSpacingMode},{proto:t,property:"rotateMode",getter:t.getRotateMode,setter:t.setRotateMode},{proto:t,property:"offsetRotation",getter:t.getOffsetRotation,setter:t.setOffsetRotation},{proto:t,property:"position",getter:t.getPosition,setter:t.setPosition},{proto:t,property:"spacing",getter:t.getSpacing,setter:t.setSpacing},{proto:t,property:"rotateMix",getter:t.getRotateMix,setter:t.setRotateMix},{proto:t,property:"translateMix",getter:t.getTranslateMix,setter:t.setTranslateMix}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getBones,"bones")}(),function(){var t=_kt.Event.prototype;[{proto:t,property:"data",getter:t.getData},{proto:t,property:"intValue",getter:t.getIntValue,setter:t.setIntValue},{proto:t,property:"floatValue",getter:t.getFloatValue,setter:t.setFloatValue},{proto:t,property:"stringValue",getter:t.getStringValue,setter:t.setStringValue},{proto:t,property:"time",getter:t.getTime},{proto:t,property:"volume",getter:t.getVolume,setter:t.setVolume},{proto:t,property:"balance",getter:t.getBalance,setter:t.setBalance}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.EventData.prototype;[{proto:t,property:"name",getter:t.getName},{proto:t,property:"intValue",getter:t.getIntValue,setter:t.setIntValue},{proto:t,property:"floatValue",getter:t.getFloatValue,setter:t.setFloatValue},{proto:t,property:"stringValue",getter:t.getStringValue,setter:t.setStringValue},{proto:t,property:"audioPath",getter:t.getAudioPath,setter:t.setAudioPath},{proto:t,property:"volume",getter:t.getVolume,setter:t.setVolume},{proto:t,property:"balance",getter:t.getBalance,setter:t.setBalance}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.BoundingBoxAttachment.prototype;[{proto:t,property:"name",getter:t.getName}].forEach((function(t){Mt(t.proto,t.property,t.getter)}))}(),function(){var t=_kt.ClippingAttachment.prototype;[{proto:t,property:"endSlot",getter:t.getEndSlot,setter:t.setEndSlot}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.MeshAttachment.prototype;[{proto:t,property:"path",getter:t.getPath,setter:t.setPath},{proto:t,property:"color",getter:t.getColor},{proto:t,property:"width",getter:t.getWidth,setter:t.setWidth},{proto:t,property:"height",getter:t.getHeight,setter:t.setHeight},{proto:t,property:"hullLength",getter:t.getHullLength,setter:t.setHullLength}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getRegionUVs,"regionUVs"),dkt(t,t.getUVs,"uvs"),dkt(t,t.getTriangles,"triangles"),dkt(t,t.getEdges,"edges")}(),function(){var t=_kt.PathAttachment.prototype;[{proto:t,property:"closed",getter:t.getClosed,setter:t.setClosed},{proto:t,property:"constantSpeed",getter:t.getConstantSpeed,setter:t.setConstantSpeed}].forEach((function(t){Mt(t.proto,t.property,t.getter)})),dkt(t,t.getLengths,"lengths")}(),function(){var t=_kt.PointAttachment.prototype;[{proto:t,property:"x",getter:t.getX,setter:t.setX},{proto:t,property:"y",getter:t.getY,setter:t.setY},{proto:t,property:"rotation",getter:t.getRotation,setter:t.setRotation}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.RegionAttachment.prototype;[{proto:t,property:"x",getter:t.getX,setter:t.setX},{proto:t,property:"y",getter:t.getY,setter:t.setY},{proto:t,property:"scaleX",getter:t.getScaleX,setter:t.setScaleX},{proto:t,property:"scaleY",getter:t.getScaleY,setter:t.setScaleY},{proto:t,property:"rotation",getter:t.getRotation,setter:t.setRotation},{proto:t,property:"width",getter:t.getWidth,setter:t.setWidth},{proto:t,property:"height",getter:t.getHeight,setter:t.setHeight},{proto:t,property:"color",getter:t.getColor},{proto:t,property:"path",getter:t.getPath,setter:t.setPath},{proto:t,property:"rendererObject",getter:t.getRendererObject}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getOffset,"offset");var e=t.getUVs,i=t.setUVs;Object.defineProperty(t,"uvs",{get:function(){var i=e.call(this),n=i.size(),r=t._uvs;r=fkt(r,n);for(var s=0;s<n;s++)r[s]=i.get(s);return t._uvs=r,r},set:function(t){i.call(this,t[0],t[1],t[2],t[3],1===t[4])}});var n=t.computeWorldVertices,r=new _kt.SPVectorFloat;Object.defineProperty(t,"computeWorldVertices",{value:function(t,e,i,s){var a=e.length;r.resize(a,0);for(var o=0;o<a;o++)r.set(o,e[o]);n.call(this,t,r,i,s);for(var h=0;h<a;h++)e[h]=r.get(h)}})}(),function(){var t=_kt.VertexAttachment.prototype;[{proto:t,property:"id",getter:t.getId},{proto:t,property:"worldVerticesLength",getter:t.getWorldVerticesLength,setter:t.setWorldVerticesLength},{proto:t,property:"deformAttachment",getter:t.getDeformAttachment,setter:t.setDeformAttachment}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getBones,"bones"),dkt(t,t.getVertices,"vertices");var e=t.computeWorldVertices,i=new _kt.SPVectorFloat;Object.defineProperty(t,"computeWorldVertices",{value:function(t,n,r,s,a,o){var h=s.length;i.resize(h,0);for(var u=0;u<h;u++)i.set(u,s[u]);e.call(this,t,n,r,i,a,o);for(var l=0;l<h;l++)s[l]=i.get(l)}})}(),function(){var t=_kt.SlotData.prototype;[{proto:t,property:"index",getter:t.getIndex},{proto:t,property:"boneData",getter:t.getBoneData},{proto:t,property:"name",getter:t.getName},{proto:t,property:"color",getter:t.getColor},{proto:t,property:"darkColor",getter:t.getDarkColor},{proto:t,property:"blendMode",getter:t.getBlendMode,setter:t.setBlendMode}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.IkConstraint.prototype;[{proto:t,property:"data",getter:t.getData},{proto:t,property:"target",getter:t.getTarget,setter:t.setTarget},{proto:t,property:"bendDirection",getter:t.getBendDirection,setter:t.setBendDirection},{proto:t,property:"compress",getter:t.getCompress,setter:t.setCompress},{proto:t,property:"stretch",getter:t.getStretch,setter:t.setStretch},{proto:t,property:"mix",getter:t.getMix,setter:t.setMix},{proto:t,property:"softness",getter:t.getSoftness,setter:t.setSoftness},{proto:t,property:"active",getter:t.getActive,setter:t.setActive}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getBones,"bones")}(),function(){var t=_kt.PathConstraint.prototype;[{proto:t,property:"data",getter:t.getData},{proto:t,property:"target",getter:t.getTarget,setter:t.setTarget},{proto:t,property:"position",getter:t.getPosition,setter:t.setPosition},{proto:t,property:"spacing",getter:t.getSpacing,setter:t.setSpacing},{proto:t,property:"rotateMix",getter:t.getRotateMix,setter:t.setRotateMix},{proto:t,property:"translateMix",getter:t.getTranslateMix,setter:t.setTranslateMix},{proto:t,property:"active",getter:t.getActive,setter:t.setActive}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getBones,"bones")}(),function(){var t=_kt.TransformConstraintData.prototype;[{proto:t,property:"target",getter:t.getTarget},{proto:t,property:"rotateMix",getter:t.getRotateMix},{proto:t,property:"translateMix",getter:t.getTranslateMix},{proto:t,property:"scaleMix",getter:t.getScaleMix},{proto:t,property:"shearMix",getter:t.getShearMix},{proto:t,property:"offsetRotation",getter:t.getOffsetRotation},{proto:t,property:"offsetX",getter:t.getOffsetX},{proto:t,property:"offsetY",getter:t.getOffsetY},{proto:t,property:"offsetScaleX",getter:t.getOffsetScaleX},{proto:t,property:"offsetScaleY",getter:t.getOffsetScaleY},{proto:t,property:"offsetShearY",getter:t.getOffsetShearY},{proto:t,property:"relative",getter:t.getRelative},{proto:t,property:"local",getter:t.getLocal}].forEach((function(t){Mt(t.proto,t.property,t.getter)})),dkt(t,t.getBones,"bones")}(),function(){var t=_kt.TransformConstraint.prototype;[{proto:t,property:"data",getter:t.getData},{proto:t,property:"target",getter:t.getTarget},{proto:t,property:"rotateMix",getter:t.getRotateMix,setter:t.setRotateMix},{proto:t,property:"translateMix",getter:t.getTranslateMix,setter:t.setTranslateMix},{proto:t,property:"scaleMix",getter:t.getScaleMix,setter:t.setScaleMix},{proto:t,property:"shearMix",getter:t.getShearMix,setter:t.setShearMix},{proto:t,property:"active",getter:t.getActive,setter:t.setActive}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getBones,"bones")}(),function(){var t=_kt.Bone.prototype;[{proto:t,property:"skeleton",getter:t.getSkeleton},{proto:t,property:"data",getter:t.getData},{proto:t,property:"parent",getter:t.getParent},{proto:t,property:"x",getter:t.getX,setter:t.setX},{proto:t,property:"y",getter:t.getY,setter:t.setY},{proto:t,property:"rotation",getter:t.getRotation,setter:t.setRotation},{proto:t,property:"scaleX",getter:t.getScaleX,setter:t.setScaleX},{proto:t,property:"scaleY",getter:t.getScaleY,setter:t.setScaleY},{proto:t,property:"shearX",getter:t.getShearX,setter:t.setShearX},{proto:t,property:"shearY",getter:t.getShearY,setter:t.setShearY},{proto:t,property:"ax",getter:t.getAX,setter:t.setAX},{proto:t,property:"ay",getter:t.getAY,setter:t.setAY},{proto:t,property:"arotation",getter:t.getARotation,setter:t.setARotation},{proto:t,property:"ascaleX",getter:t.getAScaleX,setter:t.setAScaleX},{proto:t,property:"ascaleY",getter:t.getAScaleY,setter:t.setAScaleY},{proto:t,property:"ashearX",getter:t.getAShearX,setter:t.setAShearX},{proto:t,property:"ashearY",getter:t.getAShearY,setter:t.setAShearY},{proto:t,property:"appliedValid",getter:t.getAppliedValid,setter:t.setAppliedValid},{proto:t,property:"a",getter:t.getA,setter:t.setA},{proto:t,property:"b",getter:t.getB,setter:t.setB},{proto:t,property:"c",getter:t.getC,setter:t.setC},{proto:t,property:"d",getter:t.getD,setter:t.setD},{proto:t,property:"worldX",getter:t.getWorldX,setter:t.setWorldX},{proto:t,property:"worldY",getter:t.getWorldY,setter:t.setWorldY},{proto:t,property:"active",getter:t.getActive,setter:t.setActive}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getChildren,"children")}(),function(){var t=_kt.Slot.prototype;[{proto:t,property:"data",getter:t.getData},{proto:t,property:"bone",getter:t.getBone},{proto:t,property:"color",getter:t.getColor},{proto:t,property:"darkColor",getter:t.getDarkColor},{proto:t,property:"skeleton",getter:t.getSkeleton}].forEach((function(t){Mt(t.proto,t.property,t.getter)})),dkt(t,t.getDeform,"deform")}(),function(){var t=_kt.Skin.prototype;[{proto:t,property:"name",getter:t.getName}].forEach((function(t){Mt(t.proto,t.property,t.getter)})),dkt(t,t.getBones,"bones"),dkt(t,t.getAttachments,"attachments"),dkt(t,t.getConstraints,"constraints"),function(t,e,i){var n="_"+i;Object.defineProperty(t,i,{value:function(){var t=e.call(this),i=t.size(),r=this[n];r=fkt(r,i);for(var s=0;s<i;s++)r[s]=t.get(s);return this[n]=r,r}})}(t,t.getAttachments,"getAttachments");var e=t.getAttachmentsForSlot;Object.defineProperty(t,"getAttachmentsForSlot",{value:function(t,i){var n=e.call(this,t),r=n.size();i.length=r;for(var s=0;s<r;s++)i[s]=n.get(s);n.delete()}});var i=t.findNamesForSlot;Object.defineProperty(t,"findNamesForSlot",{value:function(t,e){var n=i.call(this,t),r=n.size();e.length=r;for(var s=0;s<r;s++)e[s]=n.get(s);n.delete()}})}(),function(){var t=_kt.Attachment.prototype;[{proto:t,property:"name",getter:t.getName}].forEach((function(t){Mt(t.proto,t.property,t.getter)}))}(),function(){var t=_kt.SkinEntry.prototype;[{proto:t,property:"name",getter:t.getName},{proto:t,property:"attachment",getter:t.getAttachment}].forEach((function(t){Mt(t.proto,t.property,t.getter)}))}(),function(){var t=_kt.SkeletonClipping.prototype;[{proto:t,property:"clippedVertices",getter:t.getClippedVertices},{proto:t,property:"clippedTriangles",getter:t.getClippedTriangles},{proto:t,property:"clippedUVs",getter:t.getClippedUVs}].forEach((function(t){Mt(t.proto,t.property,t.getter)}))}(),function(){var t=_kt.SkeletonData.prototype;[{proto:t,property:"name",getter:t.getName},{proto:t,property:"defaultSkin",getter:t.getDefaultSkin,setter:t.setDefaultSkin},{proto:t,property:"x",getter:t.getX,setter:t.setX},{proto:t,property:"y",getter:t.getY,setter:t.setY},{proto:t,property:"width",getter:t.getWidth,setter:t.setWidth},{proto:t,property:"height",getter:t.getHeight,setter:t.setHeight},{proto:t,property:"version",getter:t.getVersion,setter:t.setVersion},{proto:t,property:"hash",getter:t.getHash,setter:t.setHash},{proto:t,property:"fps",getter:t.getFps,setter:t.setFps},{proto:t,property:"imagesPath",getter:t.getImagesPath,setter:t.setImagesPath},{proto:t,property:"audioPath",getter:t.getAudioPath,setter:t.setAudioPath}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getBones,"bones"),dkt(t,t.getSlots,"slots"),dkt(t,t.getSkins,"skins"),dkt(t,t.getAnimations,"animations"),dkt(t,t.getEvents,"events"),dkt(t,t.getIkConstraints,"ikConstraints"),dkt(t,t.getTransformConstraints,"transformConstraints"),dkt(t,t.getPathConstraints,"pathConstraints")}(),function(){var t=_kt.RotateTimeline.prototype;[{proto:t,property:"boneIndex",getter:t.getBoneIndex}].forEach((function(t){Mt(t.proto,t.property,t.getter)})),dkt(t,t.getFrames,"frames")}(),function(){var t=_kt.ColorTimeline.prototype;[{proto:t,property:"slotIndex",getter:t.getSlotIndex}].forEach((function(t){Mt(t.proto,t.property,t.getter)})),dkt(t,t.getFrames,"frames")}(),function(){var t=_kt.TwoColorTimeline.prototype;[{proto:t,property:"slotIndex",getter:t.getSlotIndex}].forEach((function(t){Mt(t.proto,t.property,t.getter)}))}(),function(){var t=_kt.AttachmentTimeline.prototype;[{proto:t,property:"slotIndex",getter:t.getSlotIndex}].forEach((function(t){Mt(t.proto,t.property,t.getter)})),dkt(t,t.getFrames,"frames"),dkt(t,t.getAttachmentNames,"attachmentNames")}(),function(){var t=_kt.DeformTimeline.prototype;[{proto:t,property:"slotIndex",getter:t.getSlotIndex},{proto:t,property:"attachment",getter:t.getAttachment}].forEach((function(t){Mt(t.proto,t.property,t.getter)})),dkt(t,t.getFrames,"frames"),function(t,e,i){var n="_"+i;Object.defineProperty(t,i,{get:function(){var t=e.call(this),i=t.size(),r=this[n];r=fkt(r,i);for(var s=0;s<i;s++){var a=t.get(s),o=a.size(),h=r[s];h=fkt(h,o);for(var u=0;u<o;u++)h[u]=a.get(u);r[s]=h}return this[n]=r,r}})}(t,t.getFrameVertices,"frameVertices")}(),function(){var t=_kt.EventTimeline.prototype;dkt(t,t.getFrames,"frames"),dkt(t,t.getEvents,"events")}(),function(){var t=_kt.DrawOrderTimeline.prototype;dkt(t,t.getFrames,"frames")}(),function(){var t=_kt.TrackEntry.prototype;[{proto:t,property:"animation",getter:t.getAnimation},{proto:t,property:"next",getter:t.getNext},{proto:t,property:"mixingFrom",getter:t.getMixingFrom},{proto:t,property:"mixingTo",getter:t.getMixingTo},{proto:t,property:"trackIndex",getter:t.getTrackIndex},{proto:t,property:"loop",getter:t.getLoop,setter:t.setLoop},{proto:t,property:"holdPrevious",getter:t.getHoldPrevious,setter:t.setHoldPrevious},{proto:t,property:"eventThreshold",getter:t.getEventThreshold,setter:t.setEventThreshold},{proto:t,property:"attachmentThreshold",getter:t.getAttachmentThreshold,setter:t.setAttachmentThreshold},{proto:t,property:"drawOrderThreshold",getter:t.getDrawOrderThreshold,setter:t.setDrawOrderThreshold},{proto:t,property:"animationStart",getter:t.getAnimationStart,setter:t.setAnimationStart},{proto:t,property:"animationEnd",getter:t.getAnimationEnd,setter:t.setAnimationEnd},{proto:t,property:"animationLast",getter:t.getAnimationLast,setter:t.setAnimationLast},{proto:t,property:"delay",getter:t.getDelay,setter:t.setDelay},{proto:t,property:"trackTime",getter:t.getTrackTime,setter:t.setTrackTime},{proto:t,property:"trackEnd",getter:t.getTrackEnd,setter:t.setTrackEnd},{proto:t,property:"timeScale",getter:t.getTimeScale,setter:t.setTimeScale},{proto:t,property:"alpha",getter:t.getAlpha,setter:t.setAlpha},{proto:t,property:"mixTime",getter:t.getMixTime,setter:t.setMixTime},{proto:t,property:"mixDuration",getter:t.getMixDuration,setter:t.setMixDuration},{proto:t,property:"mixBlend",getter:t.getMixBlend,setter:t.setMixBlend}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.AnimationStateData.prototype;[{proto:t,property:"defaultMix",getter:t.getDefaultMix},{proto:t,property:"skeletonData",getter:t.getSkeletonData}].forEach((function(t){Mt(t.proto,t.property,t.getter)}))}(),function(){var t=_kt.AnimationState.prototype;[{proto:t,property:"data",getter:t.getData},{proto:t,property:"timeScale",getter:t.getTimeScale,setter:t.setTimeScale}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getTracks,"tracks")}(),function(){var t=_kt.Animation.prototype;[{proto:t,property:"name",getter:t.getName},{proto:t,property:"duration",getter:t.getDuration,setter:t.setDuration}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getTimelines,"timelines")}(),function(){var t=_kt.Skeleton.prototype;[{proto:t,property:"data",getter:t.getData},{proto:t,property:"skin",getter:t.getSkin},{proto:t,property:"color",getter:t.getColor},{proto:t,property:"time",getter:t.getTime},{proto:t,property:"scaleX",getter:t.getScaleX,setter:t.setScaleX},{proto:t,property:"scaleY",getter:t.getScaleY,setter:t.setScaleY},{proto:t,property:"x",getter:t.getX,setter:t.setX},{proto:t,property:"y",getter:t.getY,setter:t.setY}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)})),dkt(t,t.getBones,"bones"),dkt(t,t.getSlots,"slots"),dkt(t,t.getDrawOrder,"drawOrder"),dkt(t,t.getIkConstraints,"ikConstraints"),dkt(t,t.getTransformConstraints,"transformConstraints"),dkt(t,t.getPathConstraints,"pathConstraints"),dkt(t,t.getUpdateCacheList,"_updateCache")}(),function(){var t=_kt.JitterEffect.prototype;[{proto:t,property:"jitterX",getter:t.getJitterX,setter:t.setJitterX},{proto:t,property:"jitterY",getter:t.getJitterY,setter:t.setJitterY}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}(),function(){var t=_kt.SwirlEffect.prototype;[{proto:t,property:"centerX",getter:t.getCenterX,setter:t.setCenterX},{proto:t,property:"centerY",getter:t.getCenterY,setter:t.setCenterY},{proto:t,property:"radius",getter:t.getRadius,setter:t.setRadius},{proto:t,property:"angle",getter:t.getAngle,setter:t.setAngle}].forEach((function(t){Mt(t.proto,t.property,t.getter,t.setter)}))}()}));var gkt,vkt=0,ykt=0,Skt=function(){function t(){this.start=void 0,this.interrupt=void 0,this.end=void 0,this.dispose=void 0,this.complete=void 0,this.event=void 0}return t.getListeners=function(e,i){if(!e.listener){e.listener=new t;var n=++ykt;i.setTrackEntryListener(n,e),t._trackSet.set(n,e)}return e.listener},t.emitListener=function(e,i,n,r){var s=t._listenerSet.get(e);if(s)switch(r){case _kt.EventType.event:s.event&&s.event(i,n);break;case _kt.EventType.start:s.start&&s.start(i);break;case _kt.EventType.interrupt:s.interrupt&&s.interrupt(i);break;case _kt.EventType.end:s.end&&s.end(i);break;case _kt.EventType.dispose:s.dispose&&s.dispose(i);break;case _kt.EventType.complete:s.complete&&s.complete(i);break;default:z("emitListener doesn't handled",r)}},t.emitTrackEntryListener=function(t,e,i,n){var r=this._trackSet.get(t);if(r)switch(n){case _kt.EventType.start:r.listener.start&&r.listener.start(e);break;case _kt.EventType.interrupt:r.listener.interrupt&&r.listener.interrupt(e);break;case _kt.EventType.end:r.listener.end&&r.listener.end(e);break;case _kt.EventType.dispose:r.listener.dispose&&r.listener.dispose(e),this._trackSet.delete(t),r.listener=null;break;case _kt.EventType.complete:r.listener.complete&&r.listener.complete(e);break;case _kt.EventType.event:r.listener.event&&r.listener.event(e,i);break;default:z("TrackEntry doesn't handled",n)}},t.addListener=function(e){var i=++vkt;return t._listenerSet.set(i,e),i},t.removeListener=function(e){t._listenerSet.delete(e)},t}();Skt._listenerSet=new Map,Skt._trackSet=new Map,globalThis.TrackEntryListeners=Skt;var Tkt=1/60;kP(OP);var Akt,bkt,Ekt,Ckt,xkt,wkt,Rkt,Ikt,Dkt,Bkt,Mkt=kP(NP),Pkt=function(){this.a=0,this.b=0,this.c=0,this.d=0,this.worldX=0,this.worldY=0},Okt=function(){this.vCount=0,this.iCount=0,this.vData=null,this.iData=null,this.meshes=[]},Lkt=function(){this.iCount=0,this.blendMode=0,this.textureID=0},Nkt=function(){function t(t){this._instance=null,this._state=null,this._skeletonData=null,this._skeleton=null,this._privateMode=!1,this._curIndex=-1,this._isCompleted=!1,this._maxFrameIdex=0,this._frameIdx=-1,this._inited=!1,this._invalid=!0,this._enableCacheAttachedInfo=!1,this._skeletonInfo=null,this._animationName=null,this.isCompleted=!1,this.totalTime=0,this.frames=[],this._privateMode=!1,this._inited=!1,this._invalid=!0,this._instance=new _kt.SkeletonInstance,this._instance.isCache=!0,this._skeletonData=t,this._skeleton=this._instance.initSkeleton(t),this._instance.setUseTint(!0)}var e=t.prototype;return e.init=function(t,e){this._inited=!0,this._animationName=e,this._skeletonInfo=t},e.setSkin=function(t){this._skeleton&&this._skeleton.setSkinByName(t),this._instance.setSkin(t)},e.setAnimation=function(t){var e=this._skeletonData.animations,i=null;e.forEach((function(e){e.name===t&&(i=e)})),i?(this._maxFrameIdex=Math.floor(i.duration/Tkt),this._maxFrameIdex<=0&&(this._maxFrameIdex=1),this._instance.setAnimation(0,t,!1)):z("find no animation named "+t+" !!!")},e.updateToFrame=function(t){if(this._inited&&(this.begin(),this.needToUpdate(t)))do{this._frameIdx++,this.totalTime+=Tkt,this._instance.updateAnimation(Tkt);var e=this._instance.updateRenderData();this.updateRenderData(this._frameIdx,e),this._frameIdx>=this._maxFrameIdex&&(this.isCompleted=!0)}while(this.needToUpdate(t))},e.getFrame=function(t){var e=t%this._maxFrameIdex;return this.frames[e]},e.invalidAnimationFrames=function(){this._curIndex=-1,this._isCompleted=!1,this.frames.length=0},e.updateRenderData=function(t,e){var i=e.vCount,n=e.iCount,r=Mkt/Float32Array.BYTES_PER_ELEMENT,s=new Uint8Array(Float32Array.BYTES_PER_ELEMENT*r*i),a=new Uint16Array(n),o=_kt.wasmUtil.wasm.HEAPU8,h=e.vPtr,u=i*Float32Array.BYTES_PER_ELEMENT*r;s.set(o.subarray(h,h+u));var l=e.iPtr,c=Uint16Array.BYTES_PER_ELEMENT*n;new Uint8Array(a.buffer).set(o.subarray(l,l+c));var _=new Okt;_.vCount=i,_.iCount=n,_.vData=s,_.iData=a;for(var f=e.getData(),d=f.size(),p=0;p<d;p+=6){var m=new Lkt;m.iCount=f.get(p+3),m.blendMode=f.get(p+4),m.textureID=f.get(p+5),_.meshes.push(m)}var g=this._skeleton.bones,v=[];g.forEach((function(t){var e=new Pkt;e.a=t.a,e.b=t.b,e.c=t.c,e.d=t.d,e.worldX=t.worldX,e.worldY=t.worldY,v.push(e)})),this.frames[t]={model:_,boneInfos:v}},e.begin=function(){if(this._invalid){var t=this._skeletonInfo,e=null==t?void 0:t.curAnimationCache;e&&e!==this&&(this._privateMode?e.invalidAllFrame():e.updateToFrame(0));var i=null==t?void 0:t.listener;this._instance.setAnimation(0,this._animationName,!1),this.bind(i),t.curAnimationCache=this,this._frameIdx=-1,this.isCompleted=!1,this.totalTime=0,this._invalid=!1}},e.end=function(){this.needToUpdate()||(this._skeletonInfo.curAnimationCache=null,this.frames.length=this._frameIdx+1,this.isCompleted=!0,this.unbind(this._skeletonInfo.listener))},e.bind=function(t){var e=this;t.complete=function(t){t&&t.animation.name===e._animationName&&(e.isCompleted=!0)}},e.unbind=function(t){t.complete=null},e.needToUpdate=function(t){return!this.isCompleted&&this.totalTime<30&&(void 0===t||this._frameIdx<t)},e.isInited=function(){return this._inited},e.isInvalid=function(){return this._invalid},e.invalidAllFrame=function(){this.isCompleted=!1,this._invalid=!0},e.enableCacheAttachedInfo=function(){this._enableCacheAttachedInfo||(this._enableCacheAttachedInfo=!0,this.invalidAllFrame())},e.clear=function(){this._inited=!1,this.invalidAllFrame()},e.destroy=function(){this._instance&&(this._instance.destroy(),this._instance=null)},n(t,[{key:"skeleton",get:function(){return this._skeleton}}]),t}(),Fkt=function(){function t(){this._privateMode=void 0,this._skeletonCache=void 0,this._animationPool=void 0,this._sharedCacheMap=new Map,this._privateMode=!1,this._animationPool={},this._skeletonCache={}}var e=t.prototype;return e.enablePrivateMode=function(){this._privateMode=!0},e.clear=function(){this._animationPool={},this._skeletonCache={}},e.invalidAnimationCache=function(t){var e=this._skeletonCache[t];if(e&&e.skeleton){var i=e.animationsCache;for(var n in i)i[n].invalidAllFrame()}},e.destroySkeleton=function(t){var e=this;if(!this._privateMode){var i=this._sharedCacheMap.get(t);if(i){if((i-=1)>0)return void this._sharedCacheMap.set(t,i);this._sharedCacheMap.delete(t)}}var n=this._skeletonCache[t];if(n){var r=this._privateMode?function(t,e){e.destroy()}:function(i,n){e._animationPool[t+"#"+i]=n,n.clear()},s=n.animationsCache;for(var a in s){var o=s[a];o&&r(a,o)}n.skeleton&&_kt.wasmUtil.destroySpineSkeleton(n.skeleton),delete this._skeletonCache[t]}},e.createSkeletonInfo=function(t){var e=t.uuid,i=t.getRuntimeData();if(!this._privateMode){var n=this._sharedCacheMap.get(e);n?n+=1:n=1,this._sharedCacheMap.set(e,n)}if(this._skeletonCache[e])return this._skeletonCache[e];var r=new _kt.Skeleton(i),s=new Skt;return this._skeletonCache[e]={skeleton:r,clipper:null,state:null,listener:s,animationsCache:{},curAnimationCache:null,assetUUID:e}},e.getSkeletonInfo=function(t){var e=t.uuid;return this._skeletonCache[e]},e.getAnimationCache=function(t,e){var i=this._skeletonCache[t];return i?i.animationsCache[e]:null},e.initAnimationCache=function(t,e,i){var n=e.getRuntimeData();if(!n)return null;var r=this._skeletonCache[t];if(!r||!r.skeleton)return null;var s=r.animationsCache,a=s[i];if(!a){var o=t+"#"+i;(a=this._animationPool[o])?delete this._animationPool[o]:(a=new Nkt(n))._privateMode=this._privateMode,a.init(r,i),s[i]=a}return a.init(r,i),a.setAnimation(i),a},e.destroyCachedAnimations=function(t){if(t){var e=this._animationPool;for(var i in e)i.includes(t)&&(e[i].destroy(),delete e[i]);var n=this._skeletonCache[t],r=n&&n.skeleton;r&&_kt.wasmUtil.destroySpineSkeleton(r),n&&delete this._skeletonCache[t]}else{var s=this._animationPool;for(var a in s)s[a].destroy(),delete s[a]}},t}();gkt=Fkt,Fkt.FrameTime=Tkt,Fkt.sharedCache=new gkt;var kkt=(Akt=eo("sp.SkeletonData"),bkt=Lo([lm]),Ekt=Lo([si]),Akt((xkt=function(t){function e(){var e;return(e=t.call(this)||this)._skeletonJson=wkt&&wkt(),e.textures=Rkt&&Rkt(),e.textureNames=Ikt&&Ikt(),e.scale=Dkt&&Dkt(),e._atlasText=Bkt&&Bkt(),e._buffer=void 0,e._skeletonCache=null,e._skinsEnum=null,e._animsEnum=null,e.reset(),e}s(e,t);var i=e.prototype;return i.createNode=function(t){var e=new hg(this.name);return e.addComponent("cc.Skeleton").skeletonData=this,t(null,e)},i.reset=function(){this._skeletonCache=null},i.resetEnums=function(){},i.getRuntimeData=function(t){if(this._skeletonCache)return this._skeletonCache;if(!(this.textures&&this.textures.length>0)&&this.textureNames&&this.textureNames.length>0)return t||H(this.name+" no textures found!"),null;var e=_kt.wasmUtil.querySpineSkeletonDataByUUID(this._uuid);if(e)this._skeletonCache=e;else if(this._skeletonJson)this._skeletonCache=_kt.wasmUtil.createSpineSkeletonDataWithJson(this.skeletonJsonStr,this._atlasText),_kt.wasmUtil.registerSpineSkeletonDataWithUUID(this._skeletonCache,this._uuid);else{var i=new Uint8Array(this._nativeAsset),n=i.length,r=_kt.wasmUtil.queryStoreMemory(n);_kt.wasmUtil.wasm.HEAPU8.subarray(r,r+n).set(i),this._skeletonCache=_kt.wasmUtil.createSpineSkeletonDataWithBinary(n,this._atlasText),_kt.wasmUtil.registerSpineSkeletonDataWithUUID(this._skeletonCache,this._uuid)}return this._skeletonCache},i.getSkinsEnum=function(){if(this._skinsEnum)return this._skinsEnum;var t=this.getRuntimeData(!0);if(t){for(var e=t.skins,i={},n=0;n<e.length;n++)i[e[n].name]=n;return this._skinsEnum=Ee(i)}return null},i.getAnimsEnum=function(){if(this._animsEnum&&Object.keys(this._animsEnum).length>1)return this._animsEnum;var t=this.getRuntimeData(!0);if(t){for(var e={"<None>":0},i=t.animations,n=0;n<i.length;n++)e[i[n].name]=n+1;return this._animsEnum=Ee(e)}return null},i.destroy=function(){return Fkt.sharedCache.destroyCachedAnimations(this._uuid),_kt.wasmUtil.destroySpineSkeletonDataWithUUID(this._uuid),t.prototype.destroy.call(this)},n(e,[{key:"skeletonJsonStr",get:function(){return this._skeletonJson?JSON.stringify(this._skeletonJson):""}},{key:"skeletonJson",get:function(){return this._skeletonJson},set:function(t){this.reset(),this._skeletonJson="string"==typeof t?JSON.parse(t):t,!this._uuid&&t.skeleton&&(this._uuid=t.skeleton.hash)}},{key:"atlasText",get:function(){return this._atlasText},set:function(t){this._atlasText=t,this.reset()}},{key:"_nativeAsset",get:function(){return this._buffer},set:function(t){this._buffer=t,this.reset()}}]),e}(vd),wkt=ja(xkt.prototype,"_skeletonJson",[lo],(function(){return null})),Rkt=ja(xkt.prototype,"textures",[lo,bkt],(function(){return[]})),Ikt=ja(xkt.prototype,"textureNames",[lo,Ekt],(function(){return[]})),Dkt=ja(xkt.prototype,"scale",[lo],(function(){return 1})),Bkt=ja(xkt.prototype,"_atlasText",[lo],(function(){return""})),Ckt=xkt))||Ckt);S.internal.SpineSkeletonData=kkt;var Gkt=function(t){function e(){var e;return(e=t.call(this)||this)._skeletons=new Set,e}s(e,t),e.getInstance=function(){return e._instance||(e._instance=new e,ID.registerSystem(e.ID,e._instance,Ml.Priority.HIGH)),e._instance};var i=e.prototype;return i.add=function(t){t&&(this._skeletons.has(t)||this._skeletons.add(t))},i.remove=function(t){t&&this._skeletons.has(t)&&this._skeletons.delete(t)},i.postUpdate=function(t){this._skeletons&&this._skeletons.forEach((function(e){e.updateAnimation(t)}))},i.prepareRenderData=function(){this._skeletons&&this._skeletons.forEach((function(t){t.markForUpdateRenderData()}))},e}(Ml);Gkt.ID="SKELETON",Gkt._instance=void 0,S.internal.SpineSkeletonSystem=Gkt;var Vkt,Ukt,zkt,Hkt,Wkt,Xkt,jkt,Ykt,qkt,Kkt,Qkt,Zkt,Jkt,$kt,tGt,eGt,iGt,nGt,rGt,sGt,aGt,oGt,hGt,uGt,lGt,cGt,_Gt,fGt,dGt,pGt,mGt,gGt,vGt,yGt,SGt=new Vn,TGt=function(){function t(){this._isInitialized=!1,this._skeletonBones=null,this._socketNodes=null,this._keysToDelete=[],this._isInitialized=!1}var e=t.prototype;return e.init=function(t){var e;this._isInitialized=!1,t&&0!==(null===(e=t.socketNodes)||void 0===e?void 0:e.size)&&(this._skeletonBones=t._skeleton.bones,!this._skeletonBones||this._skeletonBones.length<1||(this._socketNodes=t.socketNodes,!this._socketNodes||this._socketNodes.size<=0||(this._isInitialized=!0,this._syncAttachedNode())))},e.updateSkeletonBones=function(t){this._skeletonBones=t},e.reset=function(){this._isInitialized=!1,this._skeletonBones=null,this._socketNodes=null,this._keysToDelete.length=0},e._syncAttachedNode=function(){if(this._isInitialized){for(var t,e=this._socketNodes,i=f(e);!(t=i()).done;){var n=t.value,r=n[0],s=n[1];if(s&&s.isValid){var a=this._skeletonBones[r];a&&this.matrixHandle(s,a)}else this._keysToDelete.push(r)}if(!(this._keysToDelete.length<=0)){for(var o,h=f(this._keysToDelete);!(o=h()).done;){var u=o.value;e.delete(u)}this._keysToDelete.length=0}}},e.matrixHandle=function(t,e){var i=SGt;i.m00=e.a,i.m01=e.c,i.m04=e.b,i.m05=e.d,i.m12=e.worldX,i.m13=e.worldY,t.matrix=SGt},t}(),AGt=1e4;!function(t){t[t.UNSET=-1]="UNSET",t[t.REALTIME=0]="REALTIME",t[t.SHARED_CACHE=1]="SHARED_CACHE",t[t.PRIVATE_CACHE=2]="PRIVATE_CACHE"}(mGt||(mGt={})),we(mGt),function(t){t[t.default=0]="default"}(gGt||(gGt={})),we(gGt),function(t){t[t["<None>"]=0]="<None>"}(vGt||(vGt={})),we(vGt),function(t){t[t.COLORED_TEXTURED=0]="COLORED_TEXTURED",t[t.TWO_COLORED=1]="TWO_COLORED"}(yGt||(yGt={}));var bGt=(Vkt=eo("sp.Skeleton.SpineSocket"),Ukt=Lo(hg),Vkt((Hkt=function(t,e){void 0===t&&(t=""),void 0===e&&(e=null),this.path=Wkt&&Wkt(),this.target=Xkt&&Xkt(),this.path=t,this.target=e},Wkt=ja(Hkt.prototype,"path",[lo],(function(){return""})),Xkt=ja(Hkt.prototype,"target",[Ukt,lo],(function(){return null})),zkt=Hkt))||zkt);ne(bGt,"sp.Skeleton.SpineSocket");var EGt=(jkt=eo("sp.Skeleton"),Ykt=Lo(kkt),qkt=Lo(gGt),Kkt=Lo(vGt),Qkt=Lo(mGt),Zkt=Lo([bGt]),Jkt=Lo(zT),jkt(((pGt=function(t){function e(){var e;return(e=t.call(this)||this)._skeletonData=eGt&&eGt(),e.defaultSkin=iGt&&iGt(),e.defaultAnimation=nGt&&nGt(),e._premultipliedAlpha=rGt&&rGt(),e._timeScale=sGt&&sGt(),e._preCacheMode=aGt&&aGt(),e._cacheMode=oGt&&oGt(),e._sockets=hGt&&hGt(),e._useTint=uGt&&uGt(),e._debugMesh=lGt&&lGt(),e._debugBones=cGt&&cGt(),e._debugSlots=_Gt&&_Gt(),e._enableBatch=fGt&&fGt(),e._runtimeData=null,e._skeleton=null,e._instance=null,e._state=null,e._textures=[],e._skeletonInfo=null,e._animationName="",e._skinName="",e._drawList=new Rs((function(){return{material:null,texture:null,indexOffset:0,indexCount:0}}),1),e._materialCache={},e.paused=!1,e._enumSkins=Ee({}),e._enumAnimations=Ee({}),e.attachUtil=void 0,e._socketNodes=new Map,e._cachedSockets=new Map,e._startEntry=void 0,e._endEntry=void 0,e._paused=!1,e._accTime=0,e._playCount=0,e._skeletonCache=null,e._animCache=null,e._animationQueue=[],e._headAniInfo=null,e._isAniComplete=!0,e._playTimes=0,e._curFrame=null,e._needUpdateSkeltonData=!0,e._listener=null,e._debugRenderer=null,e._startSlotIndex=void 0,e._endSlotIndex=void 0,e._slotTextures=null,e._vLength=0,e._vBuffer=null,e._iLength=0,e._iBuffer=null,e._model=void 0,e._tempColor={r:0,g:0,b:0,a:0},e._eventListenerID=-1,e.loop=dGt&&dGt(),e._useVertexOpacity=!0,e._startEntry={animation:{name:""},trackIndex:0},e._endEntry={animation:{name:""},trackIndex:0},e._startSlotIndex=-1,e._endSlotIndex=-1,e._instance=new _kt.SkeletonInstance,e._instance.dtRate=1*e._timeScale,e._instance.isCache=e.isAnimationCached(),e.attachUtil=new TGt,e}s(e,t);var i=e.prototype;return i.__preload=function(){t.prototype.__preload.call(this),this._updateSkeletonData(),this._updateDebugDraw()},i.onRestore=function(){this.updateMaterial(),this.markForUpdateRenderData()},i.getState=function(){return this._state},i.onEnable=function(){t.prototype.onEnable.call(this),this._instance&&(this._instance.enable=!0),this._flushAssembler(),Gkt.getInstance().add(this)},i.onDisable=function(){t.prototype.onDisable.call(this),this._instance&&(this._instance.enable=!1),Gkt.getInstance().remove(this)},i.onDestroy=function(){var e;this._eventListenerID>0&&(Skt.removeListener(this._eventListenerID),this._eventListenerID=-1),this._drawList.destroy(),this.destroyRenderData(),this._cleanMaterialCache(),this._vBuffer=null,this._iBuffer=null,this.attachUtil.reset(),null===(e=this._slotTextures)||void 0===e||e.clear(),this._slotTextures=null,this._cachedSockets.clear(),this._socketNodes.clear(),this._animCache=null,Gkt.getInstance().remove(this),this._instance&&(this._instance.destroy(),this._instance=null),this._destroySkeletonInfo(this._skeletonCache),this._skeletonCache=null,t.prototype.onDestroy.call(this)},i.clearAnimation=function(t){this.isAnimationCached()||(this.clearTrack(t||0),this.setToSetupPose())},i.clearAnimations=function(){this.isAnimationCached()||(this.clearTracks(),this.setToSetupPose())},i._updateSkeletonData=function(){var t=this._skeletonData;if(!t)return this._runtimeData=null,this._state=null,this._skeleton=null,this._textures=[],void this._refreshInspector();this._instance&&(this._instance.dtRate=1*this._timeScale),this._needUpdateSkeltonData=!1,this._runtimeData=t.getRuntimeData(),this._runtimeData&&(this.setSkeletonData(this._runtimeData),this._textures=t.textures,this._refreshInspector(),this.defaultAnimation&&(this.animation=this.defaultAnimation.toString()),this.defaultSkin&&""!==this.defaultSkin&&this.setSkin(this.defaultSkin),this._updateUseTint(),this._indexBoneSockets(),this._updateSocketBindings(),this.attachUtil.init(this),this._preCacheMode=this._cacheMode)},i.setSkeletonData=function(t){var e=this._skeletonCache;if(this._cacheMode===mGt.SHARED_CACHE?this._skeletonCache=Fkt.sharedCache:this._cacheMode===mGt.PRIVATE_CACHE?(this._skeletonCache=new Fkt,this._skeletonCache.enablePrivateMode()):this._skeletonCache=null,e!==this._skeletonCache&&this._destroySkeletonInfo(e),this.isAnimationCached()){(this.debugBones||this.debugSlots)&&z("Debug bones or slots is invalid in cached mode");var i=this._skeletonCache.getSkeletonInfo(this._skeletonData);this._skeletonInfo!==i&&(this._destroySkeletonInfo(this._skeletonCache),this._skeletonInfo=this._skeletonCache.createSkeletonInfo(this._skeletonData),this._skeleton=this._skeletonInfo.skeleton)}else this._skeleton=this._instance.initSkeleton(t),this._state=this._instance.getAnimationState(),this._instance.setPremultipliedAlpha(this._premultipliedAlpha);this._flushAssembler()},i.setSlotsRange=function(t,e){this.isAnimationCached()?z("Slots visible range can not be modified in cached mode."):(this._startSlotIndex=t,this._endSlotIndex=e)},i.getAttachment=function(t,e){return this._skeleton?this._skeleton.getAttachmentByName(t,e):null},i.setAttachment=function(t,e){this._skeleton&&this._skeleton.setAttachment(t,e),this.invalidAnimationCache()},i.getTextureAtlas=function(t){return t.region},i.setAnimation=function(t,e,i){if("string"!=typeof e)return Q(7511),null;if(!this._skeleton.data.findAnimation(e))return Q(7509,e),null;var n=null;if(void 0===i&&(i=!0),this._playTimes=i?0:1,this.isAnimationCached()){if(0!==t&&z("Track index can not greater than 0 in cached mode."),!this._skeletonCache)return null;var r,s=this._skeletonCache.getAnimationCache(this._skeletonData.uuid,e);s||null===(r=s=this._skeletonCache.initAnimationCache(this.skeletonData.uuid,this._skeletonData,e))||void 0===r||r.setSkin(this._skinName),s&&(this._animationName=e,this._isAniComplete=!1,this._accTime=0,this._playCount=0,this._animCache=s,this._socketNodes.size>0&&this._animCache.enableCacheAttachedInfo(),this._animCache.updateToFrame(0),this._curFrame=this._animCache.frames[0])}else this._animationName=e,n=this._instance.setAnimation(t,e,i);return this.markForUpdateRenderData(),n},i.addAnimation=function(t,e,i,n){if(n=n||0,this.isAnimationCached())return 0!==t&&z("Track index can not greater than 0 in cached mode."),this._animationQueue.push({animationName:e,loop:i,delay:n}),null;if(this._skeleton){var r,s=this._skeleton.data.findAnimation(e);return s?null===(r=this._state)||void 0===r?void 0:r.addAnimationWith(t,s,i,n):(Q(7510,e),null)}return null},i.findAnimation=function(t){return this._skeleton?this._skeleton.data.findAnimation(t):null},i.getCurrent=function(t){if(this.isAnimationCached())z("'getCurrent' interface can not be invoked in cached mode.");else if(this._state)return this._state.getCurrent(t);return null},i.setSkin=function(t){this._skeleton&&this._skeleton.setSkinByName(t),this._instance.setSkin(t),this.isAnimationCached()&&this._animCache&&this._animCache.setSkin(t),this._skinName=t,this.invalidAnimationCache()},i.updateAnimation=function(t){if(this.markForUpdateRenderData(),!this.paused)if(this.isAnimationCached()){if(t*=1*this._timeScale,this._isAniComplete){var e;if(0===this._animationQueue.length&&!this._headAniInfo){var i=this._animCache;if(i&&i.isInvalid()){i.updateToFrame(0);var n=i.frames;this._curFrame=n[n.length-1]}return}if(this._headAniInfo||(this._headAniInfo=this._animationQueue.shift()),this._accTime+=t,this._accTime>(null===(e=this._headAniInfo)||void 0===e?void 0:e.delay)){var r=this._headAniInfo;this._headAniInfo=null,this.setAnimation(0,null==r?void 0:r.animationName,null==r?void 0:r.loop)}return}this._updateCache(t)}else this._instance.updateAnimation(t)},i._updateCache=function(t){var e=this._animCache;if(e.isInited()){var i=e.frames,n=Fkt.FrameTime;0===this._accTime&&0===this._playCount&&(this._startEntry.animation.name=this._animationName,this._listener&&this._listener.start&&this._listener.start(this._startEntry)),this._accTime+=t;var r=Math.floor(this._accTime/n);if(e.isCompleted||e.updateToFrame(r),this._curFrame=i[r],void 0!==this._curFrame&&this.attachUtil.updateSkeletonBones(this._curFrame.boneInfos),e.isCompleted&&r>=i.length){if(this._playCount++,this._playTimes>0&&this._playCount>=this._playTimes)return this._curFrame=i[i.length-1],this._accTime=0,this._playCount=0,this._isAniComplete=!0,void this._emitCacheCompleteEvent();this._accTime=0,r=0,this._curFrame=i[r],this._emitCacheCompleteEvent()}}},i._emitCacheCompleteEvent=function(){this._listener&&(this._endEntry.animation.name=this._animationName,this._listener.complete&&this._listener.complete(this._endEntry),this._listener.end&&this._listener.end(this._endEntry))},i.updateRenderData=function(){return this.isAnimationCached()?this._curFrame?this._curFrame.model:null:this._instance.updateRenderData()},i._flushAssembler=function(){var t=e.Assembler.getAssembler(this);this._assembler!==t&&(this._assembler=t),this._skeleton&&this._assembler&&(this._renderData=this._assembler.createData(this),this.markForUpdateRenderData(),this._updateColor())},i._render=function(t){var e=0;if(this.renderData&&this._drawList.length>0){for(var i=this.renderData,n=i.chunk,r=n.vertexAccessor,s=i.getMeshBuffer(),a=s.indexOffset,o=0;o<this._drawList.length;o++){var h=this._drawList.data[o];h.texture&&t.commitMiddleware(this,s,a+h.indexOffset,h.indexCount,h.texture,h.material,this._enableBatch),e+=h.indexCount}var u=i.indices.subarray(0,e);r.appendIndices(n.bufferId,u),r.getMeshBuffer(n.bufferId).setDirty()}},i.requestDrawData=function(t,e,i,n){var r=this._drawList.add();if(r.material=t,e<1e4)r.texture=this._textures[e];else{var s,a=null===(s=this._slotTextures)||void 0===s?void 0:s.get(e);a&&(r.texture=a)}return r.indexOffset=i,r.indexCount=n,r},i._updateBuiltinMaterial=function(){return bT.get("default-spine-material")},i.updateMaterial=function(){var t;t=this._customMaterial?this._customMaterial:this._updateBuiltinMaterial(),this.setSharedMaterial(t,0),this._cleanMaterialCache()},i.getMaterialTemplate=function(){return null!==this.customMaterial?this.customMaterial:(this.material||this.updateMaterial(),this.material)},i._cleanMaterialCache=function(){for(var t in this._materialCache)this._materialCache[t].destroy();this._materialCache={}},i.getMaterialForBlendAndTint=function(t,e,i){var n=i+"/"+t+"/"+e,r=this._materialCache[n];if(r)return r;var s=this.getMaterialTemplate();r=new ZT({parent:s,subModelIdx:0,owner:this}),this._materialCache[n]=r,r.overridePipelineStates({blendState:{blendColor:En.WHITE,targets:[{blendEq:yc.ADD,blendAlphaEq:yc.ADD,blendSrc:t,blendDst:e,blendSrcAlpha:t,blendDstAlpha:e}]}});var a=!1;i===yGt.TWO_COLORED&&(a=!0);var o=!this._enableBatch;return r.recompileShaders({TWO_COLORED:a,USE_LOCAL:o}),r},i._updateAnimEnum=function(){var t;t=this.skeletonData?this.skeletonData.getAnimsEnum():vGt,this._enumAnimations=Ee({}),Object.assign(this._enumAnimations,t),Ee.update(this._enumAnimations),mi(this,"_animationIndex",this._enumAnimations)},i._updateSkinEnum=function(){var t;t=this.skeletonData?this.skeletonData.getSkinsEnum():gGt,this._enumSkins=Ee({}),Object.assign(this._enumSkins,t),Ee.update(this._enumSkins),mi(this,"_defaultSkinIndex",this._enumSkins)},i._refreshInspector=function(){},i.destroyRenderData=function(){this._drawList.reset(),t.prototype.destroyRenderData.call(this)},i.createRenderEntity=function(){var t=new dO(ZP.DYNAMIC);return t.setUseLocal(!0),t},i.markForUpdateRenderData=function(e){void 0===e&&(e=!0),t.prototype.markForUpdateRenderData.call(this,e),this._debugRenderer&&this._debugRenderer.markForUpdateRenderData(e)},i.syncAttachedNode=function(){this.attachUtil._syncAttachedNode()},i.isAnimationCached=function(){return this._cacheMode!==mGt.REALTIME},i.setAnimationCacheMode=function(t){this._preCacheMode!==t&&(this._cacheMode=t,this._preCacheMode=t,this._instance&&(this._instance.isCache=this.isAnimationCached()),this._updateSkeletonData(),this.markForUpdateRenderData())},i.setToSetupPose=function(){this._skeleton&&this._skeleton.setToSetupPose()},i.setBonesToSetupPose=function(){this._skeleton&&this._skeleton.setBonesToSetupPose()},i.setSlotsToSetupPose=function(){this._skeleton&&this._skeleton.setSlotsToSetupPose()},i.invalidAnimationCache=function(){this.isAnimationCached()&&this._skeletonCache&&this._skeletonCache.invalidAnimationCache(this._skeletonData.uuid)},i.findBone=function(t){return this._skeleton?this._skeleton.findBone(t):null},i.findSlot=function(t){return this._skeleton?this._skeleton.findSlot(t):null},i.setMix=function(t,e,i){this.isAnimationCached()?z("cached mode not support setMix!!!"):this._state&&this._instance.setMix(t,e,i)},i.clearTracks=function(){this.isAnimationCached()?z("'clearTracks' interface can not be invoked in cached mode."):this._state&&(this._state.clearTracks(),this.setToSetupPose())},i.clearTrack=function(t){this.isAnimationCached()?z("'clearTrack' interface can not be invoked in cached mode."):this._state&&this._state.clearTrack(t)},i.updateWorldTransform=function(){this.isAnimationCached()&&this._skeleton&&this._skeleton.updateWorldTransform()},i._verifySockets=function(t){for(var e=0,i=t.length;e<i;e++){var n=t[e].target;!n||n.parent&&n.parent===this.node||H("Target node "+n.name+" is expected to be a direct child of "+this.node.name)}var r=new Map;t.forEach((function(t){t.target&&(r.get(t.target)?H("Target node "+t.target.name+" has existed."):r.set(t.target,!0))}))},i._updateSocketBindings=function(){if(this._skeleton){this._socketNodes.clear();for(var t=0,e=this._sockets.length;t<e;t++){var i=this._sockets[t];if(i.path&&i.target){var n=this._cachedSockets.get(i.path);if(!n){H("Skeleton data does not contain path "+i.path);continue}this._socketNodes.set(n,i.target)}}}},i._indexBoneSockets=function(){if(this._skeleton){this._cachedSockets.clear();for(var t=this._skeleton.bones,e=function e(i){return null==i.parent?i.data.name||"<Unamed>":e(t[i.parent.data.index])+"/"+i.data.name},i=0,n=t.length;i<n;i++){var r=t[i].data,s=e(t[i]);this._cachedSockets.set(s,r.index)}}},i.querySockets=function(){return this._skeleton?(0===this._cachedSockets.size&&this._indexBoneSockets(),this._cachedSockets.size>0?Array.from(this._cachedSockets.keys()).sort():[]):[]},i._updateUseTint=function(){this._cleanMaterialCache(),this.destroyRenderData(),this.isAnimationCached()||this._instance.setUseTint(this._useTint),this._assembler&&this._skeleton&&(this._renderData=this._assembler.createData(this),this.markForUpdateRenderData())},i._updateBatch=function(){this._cleanMaterialCache(),this.markForUpdateRenderData()},i._updateDebugDraw=function(){if(this.debugBones||this.debugSlots||this.debugMesh){if(!this._debugRenderer){var t=new hg("DEBUG_DRAW_NODE");t.layer=this.node.layer,t.hideFlags|=Ms.Flags.DontSave|Ms.Flags.HideInHierarchy;var e=t.addComponent(AF);e.lineWidth=5,e.strokeColor=new En(255,0,0,255),this._debugRenderer=e,t.parent=this.node,this.node.on(vm.LAYER_CHANGED,this._applyLayer,this)}this.isAnimationCached()?z("Debug bones or slots is invalid in cached mode"):this._instance.setDebugMode(!0)}else this._debugRenderer&&(this.node.off(vm.LAYER_CHANGED,this._applyLayer,this),this._debugRenderer.node.destroy(),this._debugRenderer=null,this.isAnimationCached()||this._instance&&this._instance.setDebugMode(!1))},i._updateUITransform=function(){var t=this.node._uiProps.uiTransformComp,e=this._runtimeData;if(!e)return t.setContentSize(100,100),t.anchorX=.5,void(t.anchorX=.5);var i=e.width,n=e.height;i&&n&&(t.setContentSize(i,n),0!==i&&(t.anchorX=Math.abs(e.x)/i),0!==n&&(t.anchorY=Math.abs(e.y)/n))},i._updateColor=function(){var t=this.node._uiProps.opacity;if(this._tempColor.r!==this._color.r||this._tempColor.g!==this._color.g||this._tempColor.b!==this._color.b||this._tempColor.a!==t){this.node._uiProps.colorDirty=!0,this._tempColor.r=this._color.r,this._tempColor.g=this._color.g,this._tempColor.b=this._color.b,this._tempColor.a=t;var e=this._color.r/255,i=this._color.g/255,n=this._color.b/255;this._instance.setColor(e,i,n,t)}},i.setVertexEffectDelegate=function(t){if(this._instance)if(t){var e=null==t?void 0:t.getEffectType();if("jitter"===e){var i=null==t?void 0:t.getJitterVertexEffect();this._instance.setJitterEffect(i)}else if("swirl"===e){var n=null==t?void 0:t.getJitterVertexEffect();this._instance.setSwirlEffect(n)}}else this._instance.clearEffect()},i._ensureListener=function(){this._listener||(this._listener=new Skt,this._eventListenerID=Skt.addListener(this._listener),this._instance.setListener(this._eventListenerID))},i.setStartListener=function(t){this._ensureListener(),this._listener.start=t},i.setInterruptListener=function(t){this._ensureListener(),this._listener.interrupt=t},i.setEndListener=function(t){this._ensureListener(),this._listener.end=t},i.setDisposeListener=function(t){this._ensureListener(),this._listener.dispose=t},i.setCompleteListener=function(t){this._ensureListener(),this._listener.complete=t},i.setEventListener=function(t){this._ensureListener(),this._listener.event=t},i.setTrackStartListener=function(t,e){Skt.getListeners(t,this._instance).start=e},i.setTrackInterruptListener=function(t,e){Skt.getListeners(t,this._instance).interrupt=e},i.setTrackEndListener=function(t,e){Skt.getListeners(t,this._instance).end=e},i.setTrackDisposeListener=function(t,e){Skt.getListeners(t,this._instance).dispose=e},i.setTrackCompleteListener=function(t,e){Skt.getListeners(t,this._instance).complete=function(t){var i=Math.floor(t.trackTime/t.animationEnd);e(t,i)}},i.setTrackEventListener=function(t,e){Skt.getListeners(t,this._instance).event=e},i.getDebugShapes=function(){return this._instance.getDebugShapes()},i.setSlotTexture=function(t,e,i){if(this.isAnimationCached())H("Cached mode can't change texture of slot");else if(this.findSlot(t)){var n=e.width,r=e.height,s=i||!1;this._instance.resizeSlotRegion(t,n,r,s),this._slotTextures||(this._slotTextures=new Map);var a=0;this._slotTextures.forEach((function(t,i){t===e&&(a=i)})),0===a&&(a=++AGt,this._slotTextures.set(a,e)),this._instance.setSlotTexture(t,a)}else H("No slot named:"+t)},i._destroySkeletonInfo=function(t){t&&this._skeletonInfo&&(t.destroySkeleton(this._skeletonInfo.assetUUID),this._skeletonInfo=null)},i._applyLayer=function(){this._debugRenderer&&(this._debugRenderer.node.layer=this.node.layer)},n(e,[{key:"drawList",get:function(){return this._drawList}},{key:"skeletonData",get:function(){return this._skeletonData},set:function(t){t&&t.resetEnums(),this._skeletonData!==t&&(this.destroyRenderData(),this._skeletonData=t,this.defaultSkin="",this.defaultAnimation="",this._animationName="",this._skinName="",this._updateSkeletonData(),this._updateUITransform())}},{key:"_defaultSkinIndex",get:function(){if(this.skeletonData){var t=this.skeletonData.getSkinsEnum();if(t)if(""===this.defaultSkin){if(t.hasOwnProperty(0))return this._defaultSkinIndex=0,0}else{var e=t[this.defaultSkin];if(void 0!==e)return e}}return 0},set:function(t){var e;if(this.skeletonData&&(e=this.skeletonData.getSkinsEnum()),e){var i=e[t];void 0!==i?(this.defaultSkin=String(i),this.setSkin(this.defaultSkin),this._refreshInspector(),this.markForUpdateRenderData()):H(this.name+" skin enums are invalid")}else H(this.name+" skin enums are invalid")}},{key:"_animationIndex",get:function(){var t=this.animation;if(this.skeletonData)if(t){var e=this.skeletonData.getAnimsEnum();if(e){var i=e[t];if(void 0!==i)return i}}else this._refreshInspector();return 0},set:function(t){var e;if(this.skeletonData&&(e=this.skeletonData.getAnimsEnum()),e){var i=String(e[t]);void 0!==i?(this.animation=i,this.animation=i):H(this.name+" animation enums are invalid")}else H(this.name+" animation enums are invalid")}},{key:"defaultCacheMode",get:function(){return this._cacheMode},set:function(t){this._cacheMode=t,this.setAnimationCacheMode(this._cacheMode)}},{key:"premultipliedAlpha",get:function(){return this._premultipliedAlpha},set:function(t){t!==this._premultipliedAlpha&&(this._premultipliedAlpha=t,this._instance.setPremultipliedAlpha(t),this.markForUpdateRenderData())}},{key:"timeScale",get:function(){return this._timeScale},set:function(t){t!==this._timeScale&&(this._timeScale=t,this._instance&&(this._instance.dtRate=1*this._timeScale))}},{key:"useTint",get:function(){return this._useTint},set:function(t){t!==this._useTint&&(this._useTint=t,this._updateUseTint())}},{key:"enableBatch",get:function(){return this._enableBatch},set:function(t){t!==this._enableBatch&&(this._enableBatch=t,this._updateBatch())}},{key:"sockets",get:function(){return this._sockets},set:function(t){this._sockets=t,this._updateSocketBindings(),this.attachUtil.init(this)}},{key:"debugSlots",get:function(){return this._debugSlots},set:function(t){t!==this._debugSlots&&(this._debugSlots=t,this._updateDebugDraw(),this.markForUpdateRenderData())}},{key:"debugBones",get:function(){return this._debugBones},set:function(t){t!==this._debugBones&&(this._debugBones=t,this._updateDebugDraw(),this.markForUpdateRenderData())}},{key:"debugMesh",get:function(){return this._debugMesh},set:function(t){t!==this._debugMesh&&(this._debugMesh=t,this._updateDebugDraw(),this.markForUpdateRenderData())}},{key:"socketNodes",get:function(){return this._socketNodes}},{key:"animation",get:function(){return this._animationName},set:function(t){t?this.setAnimation(0,t,this.loop):this.clearAnimation(0)}},{key:"customMaterial",get:function(){return this._customMaterial},set:function(t){this._customMaterial=t,this.updateMaterial(),this.markForUpdateRenderData()}}]),e}(XO)).SpineSocket=bGt,pGt.AnimationCacheMode=mGt,eGt=ja((tGt=pGt).prototype,"_skeletonData",[lo],(function(){return null})),iGt=ja(tGt.prototype,"defaultSkin",[lo],(function(){return""})),nGt=ja(tGt.prototype,"defaultAnimation",[lo],(function(){return""})),rGt=ja(tGt.prototype,"_premultipliedAlpha",[lo],(function(){return!0})),sGt=ja(tGt.prototype,"_timeScale",[lo],(function(){return 1})),aGt=ja(tGt.prototype,"_preCacheMode",[lo],(function(){return mGt.UNSET})),oGt=ja(tGt.prototype,"_cacheMode",[lo],(function(){return mGt.REALTIME})),hGt=ja(tGt.prototype,"_sockets",[lo],(function(){return[]})),uGt=ja(tGt.prototype,"_useTint",[lo],(function(){return!1})),lGt=ja(tGt.prototype,"_debugMesh",[lo],(function(){return!1})),cGt=ja(tGt.prototype,"_debugBones",[lo],(function(){return!1})),_Gt=ja(tGt.prototype,"_debugSlots",[lo],(function(){return!1})),fGt=ja(tGt.prototype,"_enableBatch",[lo],(function(){return!1})),m(tGt.prototype,"skeletonData",[Ykt],Object.getOwnPropertyDescriptor(tGt.prototype,"skeletonData"),tGt.prototype),m(tGt.prototype,"_defaultSkinIndex",[qkt],Object.getOwnPropertyDescriptor(tGt.prototype,"_defaultSkinIndex"),tGt.prototype),m(tGt.prototype,"_animationIndex",[Kkt],Object.getOwnPropertyDescriptor(tGt.prototype,"_animationIndex"),tGt.prototype),m(tGt.prototype,"defaultCacheMode",[Qkt],Object.getOwnPropertyDescriptor(tGt.prototype,"defaultCacheMode"),tGt.prototype),dGt=ja(tGt.prototype,"loop",[lo],(function(){return!0})),m(tGt.prototype,"sockets",[Zkt],Object.getOwnPropertyDescriptor(tGt.prototype,"sockets"),tGt.prototype),m(tGt.prototype,"customMaterial",[jo,Jkt],Object.getOwnPropertyDescriptor(tGt.prototype,"customMaterial"),tGt.prototype),$kt=tGt))||$kt);S.internal.SpineSkeleton=EGt;var CGt,xGt,wGt,RGt,IGt=function(){function t(){this.name="sp.VertexEffectDelegate",this._vertexEffect=void 0,this._interpolation=void 0,this._effectType=void 0,this._vertexEffect=null,this._interpolation=null,this._effectType="none"}var e=t.prototype;return e.clear=function(){this._vertexEffect=null,this._interpolation=null,this._effectType="none"},e.initJitter=function(t,e){return this._effectType="jitter",this._vertexEffect=new _kt.JitterEffect(t,e),this._vertexEffect},e.initSwirlWithPow=function(t,e){return this._effectType="swirl",this._interpolation=new _kt.Pow(e),this._vertexEffect=new _kt.SwirlEffect(t,this._interpolation),this._vertexEffect},e.initSwirlWithPowOut=function(t,e){return this._effectType="swirl",this._interpolation=new _kt.PowOut(e),this._vertexEffect=new _kt.SwirlEffect(t,this._interpolation),this._vertexEffect},e.getJitterVertexEffect=function(){return this._vertexEffect},e.getSwirlVertexEffect=function(){return this._vertexEffect},e.getVertexEffect=function(){return this._vertexEffect},e.getEffectType=function(){return this._effectType},t}(),DGt=new En(0,0,255,255),BGt=new En(255,0,0,255),MGt=new En(0,255,0,255),PGt=new En(255,255,0,255),OGt=null,LGt=null,NGt=!1,FGt=!1,kGt=kP(OP),GGt=kP(NP),VGt=new gn(0,0,0);function UGt(t,e){var i,n;switch(t){case 1:i=NGt?vc.ONE:vc.SRC_ALPHA,n=vc.ONE;break;case 2:i=vc.DST_COLOR,n=vc.ONE_MINUS_SRC_ALPHA;break;case 3:i=vc.ONE,n=vc.ONE_MINUS_SRC_COLOR;break;case 0:default:i=NGt?vc.ONE:vc.SRC_ALPHA,n=vc.ONE_MINUS_SRC_ALPHA}return e.getMaterialForBlendAndTint(i,n,FGt?yGt.TWO_COLORED:yGt.COLORED_TEXTURED)}var zGt={vCount:32767,ensureAccessor:function(t){var e=t?LGt:OGt;if(!e){var i=ID.root.device,n=ID.root.batcher2D,r=t?NP:OP;t?(e=LGt=new YP(i,r,this.vCount),n.registerBufferAccessor(Number.parseInt("SPINETINT",36),LGt)):(e=OGt=new YP(i,r,this.vCount),n.registerBufferAccessor(Number.parseInt("SPINE",36),OGt))}return e},createData:function(t){var e=t.renderData;if(!e){var i=t.useTint||t.isAnimationCached(),n=this.ensureAccessor(i);e=gO.add(i?NP:OP,n)}return e},updateRenderData:function(t){var e;t._skeleton&&t.node.active&&null!==(e=t.skeletonData)&&void 0!==e&&e.isValid&&function(t){if(t.drawList.reset(),0!==t.color.a){t._updateColor(),NGt=t.premultipliedAlpha,FGt=t.useTint||t.isAnimationCached(),t.isAnimationCached()?function(t){var e=t.updateRenderData();if(e){var i=e.vCount,n=e.iCount;if(!(i<1||n<1)){var r=t.renderData;r.vertexCount===i&&r.indexCount===n||(r.resize(i,n),r.indices=new Uint16Array(n));var s=r.chunk.vb,a=new Uint8Array(s.buffer,s.byteOffset,Float32Array.BYTES_PER_ELEMENT*s.length);a.set(e.vData);var o=t.color,h=t.node._uiProps.opacity;if(1-h>Oi||4294967295!==En.toUint32(o)||NGt){CGt=o.r/255,xGt=o.g/255,wGt=o.b/255,RGt=h;for(var u=0;u<i;u++){var l=u*GGt+5*Float32Array.BYTES_PER_ELEMENT,c=a[l],_=a[l+1],f=a[l+2],d=a[l+3]*RGt,p=NGt?d/255:1;a[l]=Math.floor(p*c*CGt),a[l+1]=Math.floor(p*_*xGt),a[l+2]=Math.floor(p*f*wGt),a[l+3]=Math.floor(d),a[l+4]=Math.floor(a[l+4]*CGt),a[l+5]=Math.floor(a[l+5]*xGt),a[l+6]=Math.floor(a[l+6]*wGt),a[l+7]=NGt?255:0}}var m=r.indices;m.set(e.iData);for(var g=r.chunk.vertexOffset,v=0;v<n;v++)m[v]+=g;for(var y=e.meshes,S=y.length,T=0,A=0,b=0;b<S;b++){var E=y[b],C=UGt(E.blendMode,t),x=E.textureID;A=E.iCount,t.requestDrawData(C,x,T,A),T+=A}var w=GGt/Float32Array.BYTES_PER_ELEMENT;if(t.enableBatch)for(var R=t.node.worldMatrix,I=0,D=0;D<i;D++)I=D*w,VGt.x=s[I],VGt.y=s[I+1],VGt.z=0,VGt.transformMat4(R),s[I]=VGt.x,s[I+1]=VGt.y,s[I+2]=VGt.z}}}(t):function(t){var e,i,n=(t.useTint?GGt:kGt)/Float32Array.BYTES_PER_ELEMENT,r=t.updateRenderData(),s=r.vCount,a=r.iCount;if(!(s<1||a<1)){var o=t.renderData;o.vertexCount===s&&o.indexCount===a||(o.resize(s,a),o.indices=new Uint16Array(a),t._vLength=s*Float32Array.BYTES_PER_ELEMENT*n,t._vBuffer=new Uint8Array(o.chunk.vb.buffer,o.chunk.vb.byteOffset,Float32Array.BYTES_PER_ELEMENT*o.chunk.vb.length),t._iLength=Uint16Array.BYTES_PER_ELEMENT*a,t._iBuffer=new Uint8Array(o.indices.buffer));var h=o.chunk.vb,u=r.vPtr,l=r.iPtr,c=o.indices,_=_kt.wasmUtil.wasm.HEAPU8;null===(e=t._vBuffer)||void 0===e||e.set(_.subarray(u,u+t._vLength),0),null===(i=t._iBuffer)||void 0===i||i.set(_.subarray(l,l+t._iLength),0);for(var f=o.chunk.vertexOffset,d=0;d<a;d++)c[d]+=f;for(var p=r.getData(),m=p.size(),g=0,v=0,y=0;y<m;y+=6){v=p.get(y+3);var S=UGt(p.get(y+4),t),T=p.get(y+5);t.requestDrawData(S,T,g,v),g+=v}if(t.enableBatch)for(var A=t.node.worldMatrix,b=0,E=0;E<s;E++)b=E*n,VGt.x=h[b],VGt.y=h[b+1],VGt.z=0,VGt.transformMat4(A),h[b]=VGt.x,h[b+1]=VGt.y,h[b+2]=VGt.z;var C=t._debugRenderer,x=t._skeleton;if(C&&(t.debugBones||t.debugSlots||t.debugMesh)){C.clear();for(var w=t.getDebugShapes(),R=w.size(),I=0;I<R;I++){var D=w.get(I);if(0===D.type&&t.debugSlots){C.strokeColor=DGt;var B=D.vOffset*n,M=D.vCount*n;C.moveTo(h[B],h[B+1]);for(var P=B+n,O=B+M;P<O;P+=n)C.lineTo(h[P],h[P+1]);C.close(),C.stroke()}else if(1===D.type&&t.debugMesh){C.strokeColor=PGt;for(var L=D.iCount,N=D.iOffset,F=N,k=N+L;F<k;F+=3){var G=c[F]*n,V=c[F+1]*n,U=c[F+2]*n;C.moveTo(h[G],h[G+1]),C.lineTo(h[V],h[V+1]),C.lineTo(h[U],h[U+1]),C.close(),C.stroke()}}}if(t.debugBones){C.strokeColor=BGt,C.fillColor=DGt;for(var z=0,H=x.bones.length;z<H;z++){var W=x.bones[z],X=W.data.length*W.a+W.worldX,j=W.data.length*W.c+W.worldY;C.moveTo(W.worldX,W.worldY),C.lineTo(X,j),C.stroke(),C.circle(W.worldX,W.worldY,1.5*Math.PI),C.fill(),0===z&&(C.fillColor=MGt)}}}}}(t);var e=t.renderData,i=FGt?LGt:OGt;t.syncAttachedNode(),(e.vertexCount>0||e.indexCount>0)&&i.getMeshBuffer(e.chunk.bufferId).setDirty()}}(t)}};S.internal.SpineAssembler=zGt;var HGt,WGt,XGt={getAssembler:function(){return zGt}};EGt.Assembler=XGt,function(t){t[t.REGION=0]="REGION",t[t.BOUNDING_BOX=1]="BOUNDING_BOX",t[t.MESH=2]="MESH",t[t.SKINNED_MESH=3]="SKINNED_MESH"}(HGt||(HGt={})),we(HGt),function(t){t[t.START=0]="START",t[t.INTERRUPT=1]="INTERRUPT",t[t.END=2]="END",t[t.DISPOSE=3]="DISPOSE",t[t.COMPLETE=4]="COMPLETE",t[t.EVENT=5]="EVENT"}(WGt||(WGt={})),we(WGt),t("g1",Object.freeze({__proto__:null,spine:_kt,get ATTACHMENT_TYPE(){return HGt},get AnimationEventType(){return WGt},timeScale:1,get AnimationCacheMode(){return mGt},get DefaultSkinsEnum(){return gGt},get DefaultAnimsEnum(){return vGt},get SpineMaterialType(){return yGt},SpineSocket:bGt,Skeleton:EGt,SkeletonData:kkt,VertexEffectDelegate:IGt,simpleSpineAssembler:XGt})),t("g2",function(){function t(t,e){this.data=new Uint16Array,this.w=0,this.h=0,this.w=t,this.h=e,this.data=new Uint16Array(t*e);for(var i=0;i<t*e;++i)this.data[i]=0}var e=t.prototype;return e.set=function(t,e,i){this.data[e*this.w+t]=i},e.get=function(t,e){return this.data[e*this.w+t]},e.getClamp=function(t,e){return t=Fi(t,0,this.w-1),e=Fi(e,0,this.h-1),this.get(t,e)},e.getAt=function(t,e){var i=t,n=e,r=Math.floor(i),s=Math.floor(n),a=r+1,o=s+1,h=i-r,u=n-s;r=Fi(r,0,this.w-1),s=Fi(s,0,this.h-1),a=Fi(a,0,this.w-1),o=Fi(o,0,this.h-1);var l=this.get(r,s),c=this.get(a,s),_=this.get(r,o),f=this.get(a,o),d=.5*(c+_);return h+u<=1?f=d+(d-l):l=d+(d-f),(l*(1-h)+c*h)*(1-u)+(_*(1-h)+f*h)*u},t}());var jGt,YGt,qGt,KGt,QGt,ZGt,JGt,$Gt,tVt,eVt,iVt,nVt,rVt,sVt,aVt,oVt,hVt,uVt,lVt,cVt,_Vt,fVt,dVt,pVt,mVt,gVt,vVt,yVt,SVt,TVt,AVt,bVt,EVt,CVt,xVt,wVt,RVt,IVt,DVt,BVt,MVt,PVt,OVt,LVt,NVt,FVt=33,kVt=1e14,GVt=function(){function t(){this.level=0,this.north=0,this.south=0,this.west=0,this.east=0}return t.prototype.equals=function(t){return this.level===t.level&&this.north===t.north&&this.south===t.south&&this.west===t.west&&this.east===t.east},t}(),VVt=function(){this.size=0,this.indices=null},UVt=function(){this.key=new GVt,this.start=0,this.size=0,this.buffer=null,this.primCount=0},zVt=function(){function t(){this._bodyIndexPool=void 0,this._connecterIndexPool=void 0,this._indexMap=[],this._indexBuffer=new Uint16Array,this._bodyIndexPool=new Array(4);for(var e=0;e<4;++e)this._bodyIndexPool[e]=new VVt;this._connecterIndexPool=new Array(64);for(var i=0;i<4;++i)for(var n=0;n<4;++n)for(var r=0;r<4;++r)this._connecterIndexPool[t.mapIndex(i,n,r)]=new VVt;for(var s=0;s<4;++s)this._genBodyIndex(s);for(var a=0;a<4;++a)for(var o=0;o<4;++o)this._genConnecterIndexNorth(a,o),this._genConnecterIndexSouth(a,o),this._genConnecterIndexWest(a,o),this._genConnecterIndexEast(a,o);for(var h=0;h<4;++h)for(var u=0;u<4;++u)if(!(u<h))for(var l=0;l<4;++l)if(!(l<h))for(var c=0;c<4;++c)if(!(c<h))for(var _=0;_<4;++_)if(!(_<h)){var f=new GVt;f.level=h,f.north=u,f.south=l,f.west=c,f.east=_,this._genIndexData(f)}}t.mapIndex=function(t,e,i){return 16*t+4*e+i};var e=t.prototype;return e.getIndexData=function(t){for(var e=0;e<this._indexMap.length;++e)if(this._indexMap[e].key.equals(t))return this._indexMap[e];return null},e._genBodyIndex=function(t){var e=1<<t,i=32>>t,n=0;if(t<3&&(i-=2,n=e*FVt+e),0!==i&&0!==i){var r=i*i*6;this._bodyIndexPool[t].indices=new Uint16Array(r);for(var s=0,a=new Uint16Array(r),o=n,h=o+FVt*e,u=0;u<i;++u){for(var l=0;l<i;++l)a[s++]=h+l*e,a[s++]=h+(l+1)*e,a[s++]=o+l*e,a[s++]=h+(l+1)*e,a[s++]=o+(l+1)*e,a[s++]=o+l*e;o+=FVt*e,h+=FVt*e}this._bodyIndexPool[t].size=s,this._bodyIndexPool[t].indices=a}},e._genConnecterIndexNorth=function(e,i){var n=t.mapIndex(e,i,0);if(i<e||3===e)return this._connecterIndexPool[n].size=0,void(this._connecterIndexPool[n].indices=null);var r=1<<e,s=1<<i,a=32>>e,o=0,h=new Uint16Array(2*a+2);h[o++]=0,h[o++]=0;for(var u=1;u<a;++u){var l=u*r,c=r*FVt+l,_=(r-r)*FVt+l/s*s;h[o++]=c,h[o++]=_}h[o++]=32,h[o++]=32,this._connecterIndexPool[n].size=o,this._connecterIndexPool[n].indices=h},e._genConnecterIndexSouth=function(e,i){var n=t.mapIndex(e,i,1);if(i<e||3===e)return this._connecterIndexPool[n].size=0,void(this._connecterIndexPool[n].indices=null);var r=1<<e,s=1<<i,a=32>>e,o=0,h=new Uint16Array(2*a+2);h[o++]=1056,h[o++]=1056;for(var u=1;u<a;++u){var l=u*r,c=32-r,_=(c+r)*FVt+l/s*s,f=c*FVt+l;h[o++]=_,h[o++]=f}h[o++]=1088,h[o++]=1088,this._connecterIndexPool[n].size=o,this._connecterIndexPool[n].indices=h},e._genConnecterIndexWest=function(e,i){var n=t.mapIndex(e,i,2);if(i<e||3===e)return this._connecterIndexPool[n].size=0,void(this._connecterIndexPool[n].indices=null);var r=1<<e,s=1<<i,a=32>>e,o=0,h=new Uint16Array(2*a+2);h[o++]=0,h[o++]=0;for(var u=1;u<a;++u){var l=u*r/s*s*FVt+0,c=u*r*FVt+r;h[o++]=l,h[o++]=c}h[o++]=1056,h[o++]=1056,this._connecterIndexPool[n].size=o,this._connecterIndexPool[n].indices=h},e._genConnecterIndexEast=function(e,i){var n=t.mapIndex(e,i,3);if(i<e||3===e)return this._connecterIndexPool[n].size=0,void(this._connecterIndexPool[n].indices=null);var r=1<<e,s=1<<i,a=32>>e,o=0,h=new Uint16Array(2*a+2);h[o++]=32,h[o++]=32;for(var u=1;u<a;++u){var l=u*r*FVt+(32-r),c=u*r/s*s*FVt+32;h[o++]=l,h[o++]=c}h[o++]=1088,h[o++]=1088,this._connecterIndexPool[n].size=o,this._connecterIndexPool[n].indices=h},e._getConnenterIndex=function(e,i,n){return this._connecterIndexPool[t.mapIndex(e,i,n)]},e._genIndexData=function(t){var e=this.getIndexData(t);if(null!=e)return e;var i=this._bodyIndexPool[t.level],n=this._getConnenterIndex(t.level,t.north,0),r=this._getConnenterIndex(t.level,t.south,1),s=this._getConnenterIndex(t.level,t.west,2),a=this._getConnenterIndex(t.level,t.east,3);if((e=new UVt).size=0,e.primCount=0,null!=i.indices&&(e.size+=i.size),n.indices&&(e.size+=3*(n.size-2)),r.indices&&(e.size+=3*(r.size-2)),s.indices&&(e.size+=3*(s.size-2)),a.indices&&(e.size+=3*(a.size-2)),0===e.size)return null;var o=0;if(e.buffer=new Uint16Array(e.size),e.key.level=t.level,e.key.east=t.east,e.key.west=t.west,e.key.north=t.north,e.key.south=t.south,i.indices)for(var h=0;h<i.size;++h)e.buffer[o++]=i.indices[h];if(n.indices)for(var u=0;u<n.size-2;u+=2){var l=n.indices[u+0],c=n.indices[u+1],_=n.indices[u+2],f=n.indices[u+3];e.buffer[o++]=l,e.buffer[o++]=_,e.buffer[o++]=c,e.buffer[o++]=_,e.buffer[o++]=f,e.buffer[o++]=c}if(r.indices)for(var d=0;d<r.size-2;d+=2){var p=r.indices[d+0],m=r.indices[d+1],g=r.indices[d+2],v=r.indices[d+3];e.buffer[o++]=p,e.buffer[o++]=g,e.buffer[o++]=m,e.buffer[o++]=g,e.buffer[o++]=v,e.buffer[o++]=m}if(s.indices)for(var y=0;y<s.size-2;y+=2){var S=s.indices[y+0],T=s.indices[y+1],A=s.indices[y+2],b=s.indices[y+3];e.buffer[o++]=S,e.buffer[o++]=A,e.buffer[o++]=T,e.buffer[o++]=A,e.buffer[o++]=b,e.buffer[o++]=T}if(a.indices)for(var E=0;E<a.size-2;E+=2){var C=a.indices[E+0],x=a.indices[E+1],w=a.indices[E+2],R=a.indices[E+3];e.buffer[o++]=C,e.buffer[o++]=w,e.buffer[o++]=x,e.buffer[o++]=w,e.buffer[o++]=R,e.buffer[o++]=x}e.primCount=o/3,e.start=this._indexBuffer.length,this._indexMap.push(e);var I=new Uint16Array(e.start+e.size);return I.set(this._indexBuffer,0),I.set(e.buffer,e.start),this._indexBuffer=I,e},t}(),HVt=t("g3",eo("cc.TerrainInfo")((YGt=function(){function t(){this.tileSize=qGt&&qGt(),this.blockCount=KGt&&KGt(),this.weightMapSize=QGt&&QGt(),this.lightMapSize=ZGt&&ZGt()}return n(t,[{key:"size",get:function(){var t=new Qn(0,0);return t.width=this.blockCount[0]*UBt*this.tileSize,t.height=this.blockCount[1]*UBt*this.tileSize,t}},{key:"tileCount",get:function(){var t=[0,0];return t[0]=this.blockCount[0]*UBt,t[1]=this.blockCount[1]*UBt,t}},{key:"vertexCount",get:function(){var t=this.tileCount;return t[0]+=1,t[1]+=1,t}}]),t}(),qGt=ja(YGt.prototype,"tileSize",[lo],(function(){return 1})),KGt=ja(YGt.prototype,"blockCount",[lo],(function(){return[1,1]})),QGt=ja(YGt.prototype,"weightMapSize",[lo],(function(){return 128})),ZGt=ja(YGt.prototype,"lightMapSize",[lo],(function(){return 128})),jGt=YGt))||jGt),WVt=t("g4",eo("cc.TerrainLayer")(($Gt=function(){this.detailMap=tVt&&tVt(),this.normalMap=eVt&&eVt(),this.tileSize=iVt&&iVt(),this.metallic=nVt&&nVt(),this.roughness=rVt&&rVt()},tVt=ja($Gt.prototype,"detailMap",[lo],(function(){return null})),eVt=ja($Gt.prototype,"normalMap",[lo],(function(){return null})),iVt=ja($Gt.prototype,"tileSize",[lo],(function(){return 1})),nVt=ja($Gt.prototype,"metallic",[lo],(function(){return 0})),rVt=ja($Gt.prototype,"roughness",[lo],(function(){return 1})),JGt=$Gt))||JGt),XVt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._model=null,e._meshData=null,e._brushPass=null,e._brushMaterial=null,e._currentMaterial=null,e._currentMaterialLayers=0,e._lightmap=null,e}s(e,t);var i=e.prototype;return i.destroy=function(){return null!=this._model&&(S.director.root.destroyModel(this._model),this._model=null),t.prototype.destroy.call(this)},i._destroyModel=function(){null!=this._model&&(S.director.root.destroyModel(this._model),this._model=null),null!=this._meshData&&(this._meshData.destroy(),this._meshData=null)},i._invalidMaterial=function(){null!=this._currentMaterial&&(this._clearMaterials(),this._brushPass=null,this._currentMaterial=null,null!=this._model&&(this._model.enabled=!1))},i._updateMaterial=function(t,e){if(null==this._meshData||null==this._model)return!1;var i=t.getMaxLayer();if(null==this._currentMaterial||i!==this._currentMaterialLayers){if(this._currentMaterial=new zT,this._currentMaterial.initialize({effectAsset:t.getTerrain().getEffectAsset(),defines:t._getMaterialDefines(i)}),null!==this._brushMaterial){var n=new zT;n.copy(this._brushMaterial),this._brushPass=null,null!==n.passes&&n.passes.length>0&&(this._brushPass=n.passes[0],this._currentMaterial.passes.push(this._brushPass),n.passes.pop())}return e&&this._model.initSubModel(0,this._meshData,this._currentMaterial),this.setSharedMaterial(this._currentMaterial,0),this._currentMaterialLayers=i,this._model.enabled=!0,this._model.receiveShadow=t.getTerrain().receiveShadow,!0}return!1},i._updateLightingmap=function(t,e){null!=this._model&&(this._lightmap=t,this._updateReceiveDirLight(),this._model.updateLightingmap(t,e))},i._onMaterialModified=function(t,e){null!=this._model&&this._onRebuildPSO(t,e||this._getBuiltinMaterial())},i._onRebuildPSO=function(t,e){this._model&&this._model.setSubModelMaterial(t,e)},i._clearMaterials=function(){null!=this._model&&this._onMaterialModified(0,null)},i._onUpdateReceiveDirLight=function(t,e){void 0===e&&(e=!1),this._model&&(e?this._model.receiveDirLight=!1:this.node&&(t&this.node.layer)===this.node.layer||t&this._model.visFlags?this._model.receiveDirLight=!0:this._model.receiveDirLight=!1)},i._updateReceiveDirLight=function(){var t=this.node.scene;if(t&&t.renderScene){var e=t.renderScene.mainLight;if(e){var i=e.visibility;e.node&&(e.node.mobility===Nm.Static&&this._lightmap?this._onUpdateReceiveDirLight(i,!0):this._onUpdateReceiveDirLight(i))}}},i._getBuiltinMaterial=function(){return bT.get("missing-material")},e}(EG),jVt=t("g5",eo("cc.TerrainBlockLightmapInfo")((aVt=function(){this.texture=oVt&&oVt(),this.UOff=hVt&&hVt(),this.VOff=uVt&&uVt(),this.UScale=lVt&&lVt(),this.VScale=cVt&&cVt()},oVt=ja(aVt.prototype,"texture",[lo],(function(){return null})),hVt=ja(aVt.prototype,"UOff",[lo],(function(){return 0})),uVt=ja(aVt.prototype,"VOff",[lo],(function(){return 0})),lVt=ja(aVt.prototype,"UScale",[lo],(function(){return 0})),cVt=ja(aVt.prototype,"VScale",[lo],(function(){return 0})),sVt=aVt))||sVt),YVt=t("g6",function(){function t(t,e,i){this._terrain=void 0,this._node=void 0,this._renderable=void 0,this._index=[1,1],this._weightMap=null,this._lightmapInfo=null,this._lodLevel=0,this._lodKey=new GVt,this._errorMetrics=[0,0,0,0],this._LevelDistances=[kVt,kVt,kVt,kVt],this._bbMin=new gn,this._bbMax=new gn,this._terrain=t,this._index[0]=e,this._index[1]=i,this._lightmapInfo=t._getLightmapInfo(e,i),this._node=new hg("TerrainBlock"),this._node.setParent(this._terrain.node),this._node.hideFlags|=Ms.Flags.DontSave|Ms.Flags.HideInHierarchy,this._node.layer=this._terrain.node.layer,this._renderable=this._node.addComponent(XVt)}var e=t.prototype;return e.build=function(){var t=ID.root.device,e=new Float32Array(HBt*zBt*zBt);this._buildVertexData(e);var i=t.createBuffer(new r_(rc.VERTEX|rc.TRANSFER_DST,oc.DEVICE,HBt*Float32Array.BYTES_PER_ELEMENT*zBt*zBt,HBt*Float32Array.BYTES_PER_ELEMENT));i.update(e),this._buildBoundingBox();var n=[new T_(Uc.ATTR_POSITION,ec.RGB32F),new T_(Uc.ATTR_NORMAL,ec.RGB32F),new T_(Uc.ATTR_TEX_COORD,ec.RG32F)];this._renderable._meshData=new FD([i],n,wc.TRIANGLE_LIST,this._terrain._getSharedIndexBuffer(),null,!1),this._renderable._model=S.director.root.createModel(RR),this._renderable._model.createBoundingShape(this._bbMin,this._bbMax),this._renderable._model.node=this._renderable._model.transform=this._node,null!=this._renderable.node.scene&&(this.visible=!0),this._updateWeightMap(),this._updateMaterial(!0),this._terrain.lodEnable&&(this._updateLodBuffer(e),this._updateIndexBuffer())},e.rebuild=function(){this._updateHeight(),this._updateWeightMap(),this._renderable._invalidMaterial(),this._updateMaterial(!1)},e.destroy=function(){this.visible=!1,this._renderable._destroyModel(),null!=this._node&&this._node.isValid&&this._node.destroy(),null!=this._weightMap&&this._weightMap.destroy()},e.update=function(){this._updateMaterial(!1),this.lightmap!==this._renderable._lightmap&&this._renderable._updateLightingmap(this.lightmap,this.lightmapUVParam);var t=this._terrain.useNormalMap,e=this._terrain.usePBR,i=function(t){return null!==t?t.detailMap:null},n=function(t){var e=null!==t?t.normalMap:null;return null===e&&(e=bT.get("normal-texture")),e},r=this._renderable._currentMaterial;if(null!==r){var s=this.getMaxLayer(),a=new cn(1,1,1,1),o=new cn(1,1,1,1),h=new cn(0,0,0,0);if(0===s)if(-1!==this.layers[0]){var u=this._terrain.getLayer(this.layers[0]);null!==u&&(a.x=1/u.tileSize,o.x=u.roughness,h.x=u.metallic),r.setProperty("detailMap0",i(u)),t&&r.setProperty("normalMap0",n(u))}else r.setProperty("detailMap0",bT.get("default-texture")),t&&r.setProperty("normalMap0",bT.get("normal-texture"));else if(1===s){var l=this._terrain.getLayer(this.layers[0]),c=this._terrain.getLayer(this.layers[1]);null!==l&&(a.x=1/l.tileSize,o.x=l.roughness,h.x=l.metallic),null!==c&&(a.y=1/c.tileSize,o.y=c.roughness,h.y=c.metallic),r.setProperty("weightMap",this._weightMap),r.setProperty("detailMap0",i(l)),r.setProperty("detailMap1",i(c)),t&&(r.setProperty("normalMap0",n(l)),r.setProperty("normalMap1",n(c)))}else if(2===s){var _=this._terrain.getLayer(this.layers[0]),f=this._terrain.getLayer(this.layers[1]),d=this._terrain.getLayer(this.layers[2]);null!==_&&(a.x=1/_.tileSize,o.x=_.roughness,h.x=_.metallic),null!==f&&(a.y=1/f.tileSize,o.y=f.roughness,h.y=f.metallic),null!==d&&(a.z=1/d.tileSize,o.z=d.roughness,h.z=d.metallic),r.setProperty("weightMap",this._weightMap),r.setProperty("detailMap0",i(_)),r.setProperty("detailMap1",i(f)),r.setProperty("detailMap2",i(d)),t&&(r.setProperty("normalMap0",n(_)),r.setProperty("normalMap1",n(f)),r.setProperty("normalMap2",n(d)))}else if(3===s){var p=this._terrain.getLayer(this.layers[0]),m=this._terrain.getLayer(this.layers[1]),g=this._terrain.getLayer(this.layers[2]),v=this._terrain.getLayer(this.layers[3]);null!==p&&(a.x=1/p.tileSize,o.x=p.roughness,h.x=p.metallic),null!==m&&(a.y=1/m.tileSize,o.y=m.roughness,h.y=m.metallic),null!==g&&(a.z=1/g.tileSize,o.z=g.roughness,h.z=g.metallic),null!==v&&(a.w=1/v.tileSize,o.w=v.roughness,h.w=v.metallic),r.setProperty("weightMap",this._weightMap),r.setProperty("detailMap0",i(p)),r.setProperty("detailMap1",i(m)),r.setProperty("detailMap2",i(g)),r.setProperty("detailMap3",i(v)),t&&(r.setProperty("normalMap0",n(p)),r.setProperty("normalMap1",n(m)),r.setProperty("normalMap2",n(g)),r.setProperty("normalMap3",n(v)))}r.setProperty("UVScale",a),e&&(r.setProperty("roughness",o),r.setProperty("metallic",h))}},e._buildLodInfo=function(){var t=new Float32Array(HBt*zBt*zBt);this._buildVertexData(t),this._updateLodBuffer(t),this._updateIndexBuffer()},e._updateLevel=function(t){var e=new gn,i=new gn;gn.add(e,this._bbMin,this._terrain.node.getWorldPosition()),gn.add(i,this._bbMax,this._terrain.node.getWorldPosition());var n=gn.distance(e,t),r=gn.distance(i,t),s=Math.min(n,r);for(s-=this._terrain.LodBias,this._lodLevel=0;this._lodLevel<3&&!(s<=this._LevelDistances[this._lodLevel+1]);)++this._lodLevel},e.setBrushMaterial=function(t){this._renderable._brushMaterial!==t&&(this._renderable._invalidMaterial(),this._renderable._brushMaterial=t)},e._getBrushMaterial=function(){return this._renderable?this._renderable._brushMaterial:null},e._getBrushPass=function(){return this._renderable?this._renderable._brushPass:null},e.getTerrain=function(){return this._terrain},e.getIndex=function(){return this._index},e.getRect=function(){var t=new Jn;return t.x=this._index[0]*UBt,t.y=this._index[1]*UBt,t.width=UBt,t.height=UBt,t},e.setLayer=function(t,e){this.layers[t]!==e&&(this._terrain.setBlockLayer(this._index[0],this._index[1],t,e),this._renderable._invalidMaterial(),this._updateMaterial(!1))},e.getLayer=function(t){return this.layers[t]},e.getMaxLayer=function(){return this.layers[3]>=0?3:this.layers[2]>=0?2:this.layers[1]>=0?1:0},e._getMaterialDefines=function(t){var e=1;return this._terrain.node&&this._terrain.node.scene&&this._terrain.node.scene.globals.bakedWithStationaryMainLight&&(e=2),{LAYERS:t+1,CC_USE_LIGHTMAP:null!==this.lightmap?e:0,USE_NORMALMAP:this._terrain.useNormalMap?1:0,USE_PBR:this._terrain.usePBR?1:0}},e._invalidMaterial=function(){this._renderable._invalidMaterial()},e._updateMaterial=function(t){this._renderable._updateMaterial(this,t)&&(null!==this.lightmap&&this.lightmap.setWrapMode(Sd.CLAMP_TO_BORDER,Sd.CLAMP_TO_BORDER),this._renderable._updateLightingmap(this.lightmap,this.lightmapUVParam))},e._updateHeight=function(){if(null!=this._renderable._meshData){var t=new Float32Array(HBt*zBt*zBt);this._buildVertexData(t),this._renderable._meshData.vertexBuffers[0].update(t),this._buildBoundingBox(),this._renderable._model.createBoundingShape(this._bbMin,this._bbMax),this._renderable._model.updateWorldBound(),this._updateLodBuffer(t),this._updateIndexBuffer()}},e._updateWeightMap=function(){if(0!==this.getMaxLayer()){null==this._weightMap&&(this._weightMap=new lm,this._weightMap.create(this._terrain.weightMapSize,this._terrain.weightMapSize,yd.RGBA8888),this._weightMap.setFilters(Td.LINEAR,Td.LINEAR),this._weightMap.setWrapMode(Sd.CLAMP_TO_EDGE,Sd.CLAMP_TO_EDGE));for(var t=new Uint8Array(this._terrain.weightMapSize*this._terrain.weightMapSize*4),e=0,i=0;i<this._terrain.weightMapSize;++i)for(var n=0;n<this._terrain.weightMapSize;++n){var r=this._index[0]*this._terrain.weightMapSize+n,s=this._index[1]*this._terrain.weightMapSize+i,a=this._terrain.getWeight(r,s);t[4*e+0]=Math.floor(255*a.x),t[4*e+1]=Math.floor(255*a.y),t[4*e+2]=Math.floor(255*a.z),t[4*e+3]=Math.floor(255*a.w),e+=1}this._weightMap.uploadData(t)}else null!=this._weightMap&&(this._weightMap.destroy(),this._weightMap=null)},e._updateLightmap=function(t){this._lightmapInfo=t,this._invalidMaterial()},e._updateLod=function(){var t=new GVt;if(t.level=this._lodLevel,t.north=this._lodLevel,t.south=this._lodLevel,t.west=this._lodLevel,t.east=this._lodLevel,this._index[0]>0){var e=this.getTerrain().getBlock(this._index[0]-1,this._index[1]);t.west=e._lodLevel,t.west<this._lodLevel&&(t.west=this._lodLevel)}if(this._index[0]<this._terrain.info.blockCount[0]-1){var i=this.getTerrain().getBlock(this._index[0]+1,this._index[1]);t.east=i._lodLevel,t.east<this._lodLevel&&(t.east=this._lodLevel)}if(this._index[1]>0){var n=this.getTerrain().getBlock(this._index[0],this._index[1]-1);t.north=n._lodLevel,t.north<this._lodLevel&&(t.north=this._lodLevel)}if(this._index[1]<this._terrain.info.blockCount[1]-1){var r=this.getTerrain().getBlock(this._index[0],this._index[1]+1);t.south=r._lodLevel,t.south<this._lodLevel&&(t.south=this._lodLevel)}this._lodKey.equals(t)||(this._lodKey=t,this._updateIndexBuffer())},e._resetLod=function(){var t=new GVt;t.level=0,t.north=0,t.south=0,t.west=0,t.east=0,this._lodKey.equals(t)||(this._lodKey=t,this._updateIndexBuffer())},e._updateIndexBuffer=function(){if(null!==this._renderable._meshData&&null!==this._renderable._model&&0!==this._renderable._model.subModels.length){var t=this._terrain._getIndexData(this._lodKey);if(null!==t){var e=this._renderable._model.subModels[0];e.inputAssembler.firstIndex=t.start,e.inputAssembler.indexCount=t.size}}},e._getHeight=function(t,e,i){return i[(zBt*e+t)*HBt+1]},e._updateLodBuffer=function(t){this._lodLevel=0,this._lodKey=new GVt,this._calcErrorMetrics(t),this._calcLevelDistances(t)},e._calcErrorMetrics=function(t){this._errorMetrics[0]=0;for(var e=1;e<4;++e)this._errorMetrics[e]=this._calcErrorMetric(e,t);for(var i=2;i<4;++i)this._errorMetrics[i]=Math.max(this._errorMetrics[i],this._errorMetrics[i-1])},e._calcErrorMetric=function(t,e){for(var i=0,n=1<<t,r=zBt,s=zBt,a=r-1>>t,o=s-1>>t,h=0;h<s;h+=n)for(var u=0;u<a;++u){var l=u*n,c=l+n,_=(c+l)/2,f=this._getHeight(l,h,e),d=this._getHeight(c,h,e),p=this._getHeight(_,h,e),m=(f+d)/2,g=Math.abs(p-m);i=Math.max(i,g)}for(var v=0;v<r;v+=n)for(var y=0;y<o;++y){var S=y*n,T=S+n,A=(S+T)/2,b=this._getHeight(v,S,e),E=this._getHeight(v,T,e),C=this._getHeight(v,A,e),x=(b+E)/2,w=Math.abs(C-x);i=Math.max(i,w)}for(var R=0;R<o;++R)for(var I=R*n,D=I+n,B=(I+D)/2,M=0;M<a;++M){var P=M*n,O=P+n,L=(P+O)/2,N=this._getHeight(P,I,e),F=this._getHeight(O,D,e),k=this._getHeight(L,B,e),G=(N+F)/2,V=Math.abs(k-G);i=Math.max(i,V)}return i},e._calcLevelDistances=function(){for(var t=1;t<4;++t){var e=96*this._errorMetrics[t];this._LevelDistances[t]=e}},e._buildVertexData=function(t){for(var e=0,i=0;i<zBt;++i)for(var n=0;n<zBt;++n){var r=this._index[0]*UBt+n,s=this._index[1]*UBt+i,a=this._terrain.getPosition(r,s),o=this._terrain.getNormal(r,s),h=new jn(n/UBt,i/UBt);t[e++]=a.x,t[e++]=a.y,t[e++]=a.z,t[e++]=o.x,t[e++]=o.y,t[e++]=o.z,t[e++]=h.x,t[e++]=h.y}},e._buildBoundingBox=function(){this._bbMin.set(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),this._bbMax.set(Number.MIN_VALUE,Number.MIN_VALUE,Number.MIN_VALUE);for(var t=0;t<zBt;++t)for(var e=0;e<zBt;++e){var i=this._index[0]*UBt+e,n=this._index[1]*UBt+t,r=this._terrain.getPosition(i,n);gn.min(this._bbMin,this._bbMin,r),gn.max(this._bbMax,this._bbMax,r)}},n(t,[{key:"valid",get:function(){if(null===this._terrain)return!1;for(var t=this._terrain.getBlocks(),e=0;e<t.length;++e)if(t[e]===this)return!0;return!1}},{key:"material",get:function(){return this._renderable?this._renderable._currentMaterial:null}},{key:"layers",get:function(){return this._terrain.getBlockLayers(this._index[0],this._index[1])}},{key:"weightmap",get:function(){return this._weightMap}},{key:"lightmap",get:function(){return this._lightmapInfo?this._lightmapInfo.texture:null}},{key:"lightmapUVParam",get:function(){return null!=this._lightmapInfo?new cn(this._lightmapInfo.UOff,this._lightmapInfo.VOff,this._lightmapInfo.UScale,this._lightmapInfo.VScale):new cn(0,0,0,0)}},{key:"visible",get:function(){return null!==this._renderable._model&&null!==this._renderable._model.scene},set:function(t){null!==this._renderable._model&&(t?null!=this._terrain.node&&null!=this._terrain.node.scene&&null!=this._terrain.node.scene.renderScene&&null==this._renderable._model.scene&&this._terrain.node.scene.renderScene.addModel(this._renderable._model):null!==this._renderable._model.scene&&this._renderable._model.scene.removeModel(this._renderable._model))}}]),t}());t("g7",(_Vt=eo("cc.Terrain"),fVt=Lo(oMt),dVt=Lo($y),pVt=Lo(jVt),mVt=Lo(ni),gVt=Lo(oMt),vVt=Lo($y),yVt=Lo(HVt),_Vt(SVt=ro((TVt=function(t){function e(){var e;(e=t.call(this)||this).__asset=AVt&&AVt(),e._effectAsset=bVt&&bVt(),e._lightmapInfos=EVt&&EVt(),e._receiveShadow=CVt&&CVt(),e._useNormalmap=xVt&&xVt(),e._usePBR=wVt&&wVt(),e._lodEnable=RVt&&RVt(),e._lodBias=IVt&&IVt(),e._buitinAsset=null,e._tileSize=1,e._blockCount=[1,1],e._weightMapSize=128,e._lightMapSize=128,e._heights=new Uint16Array,e._weights=new Uint8Array,e._normals=new Float32Array,e._layerList=[],e._layerBuffer=[],e._blocks=[],e._lod=null,e._sharedIndexBuffer=null,e._sharedLodIndexBuffer=null;for(var i=0;i<VBt;++i)e._layerList.push(null);return e}s(e,t);var i=e.prototype;return i.build=function(t){return this._tileSize=t.tileSize,this._blockCount[0]=t.blockCount[0],this._blockCount[1]=t.blockCount[1],this._weightMapSize=t.weightMapSize,this._lightMapSize=t.lightMapSize,this._buildImp()},i.rebuild=function(t){for(var e=0;e<this._blocks.length;++e)this._blocks[e].destroy();this._blocks=[],this._resetLightmap(!1),this._rebuildLayerBuffer(t);var i=this._rebuildHeights(t);this._rebuildWeights(t),this._tileSize=t.tileSize,this._blockCount[0]=t.blockCount[0],this._blockCount[1]=t.blockCount[1],this._weightMapSize=t.weightMapSize,this._lightMapSize=t.lightMapSize,i&&(this._normals=new Float32Array(3*this.heights.length),this._buildNormals());for(var n=0;n<this._blockCount[1];++n)for(var r=0;r<this._blockCount[0];++r)this._blocks.push(new YVt(this,r,n));for(var s=0;s<this._blocks.length;++s)this._blocks[s].build()},i.importHeightField=function(t,e){for(var i=0,n=0;n<this.vertexCount[1];++n)for(var r=0;r<this.vertexCount[0];++r){var s=r/this.tileCount[0],a=n/this.tileCount[1],o=t.getAt(s*t.w,a*t.h)*e;this._heights[i++]=o}this._buildNormals();for(var h=0;h<this._blocks.length;++h)this._blocks[h]._updateHeight()},i.exportHeightField=function(t,e){for(var i=0,n=0;n<t.h;++n)for(var r=0;r<t.w;++r){var s=r/(t.w-1),a=n/(t.h-1),o=s*this.size.width,h=a*this.size.height,u=this.getHeightAt(o,h);null!=u&&(t.data[i++]=u*e)}},i.exportAsset=function(){var t=new oMt;t.tileSize=this.tileSize,t.blockCount=this.blockCount,t.lightMapSize=this.lightMapSize,t.weightMapSize=this.weightMapSize,t.heights=this.heights,t.weights=this.weights,t.layerBuffer=new Array(4*this._blocks.length);for(var e=0;e<this._blocks.length;++e)t.layerBuffer[4*e+0]=this._blocks[e].layers[0],t.layerBuffer[4*e+1]=this._blocks[e].layers[1],t.layerBuffer[4*e+2]=this._blocks[e].layers[2],t.layerBuffer[4*e+3]=this._blocks[e].layers[3];return this.exportLayerListToAsset(t),t},i.exportLayerListToAsset=function(t){t.layerInfos.length=0;for(var e=0;e<this._layerList.length;++e){var i=this._layerList[e];if(i&&i.detailMap&&Os(i.detailMap)){var n=new sMt;n.slot=e,n.tileSize=i.tileSize,n.detailMap=i.detailMap,n.normalMap=i.normalMap,n.metallic=i.metallic,n.roughness=i.roughness,t.layerInfos.push(n)}}},i.getEffectAsset=function(){return null===this._effectAsset?S.EffectAsset.get("1d08ef62-a503-4ce2-8b9a-46c90873f7d3"):this._effectAsset},i.onEnable=function(){0===this._blocks.length&&this._buildImp();for(var t=0;t<this._blocks.length;++t)this._blocks[t].visible=!0;S.director.root.pipelineEvent.on(PR.RENDER_CAMERA_BEGIN,this.onUpdateFromCamera,this)},i.onDisable=function(){S.director.root.pipelineEvent.off(PR.RENDER_CAMERA_BEGIN,this.onUpdateFromCamera,this);for(var t=0;t<this._blocks.length;++t)this._blocks[t].visible=!1},i.onDestroy=function(){for(var t=0;t<this._blocks.length;++t)this._blocks[t].destroy();this._blocks=[];for(var e=0;e<this._layerList.length;++e)this._layerList[e]=null;null!=this._sharedIndexBuffer&&this._sharedIndexBuffer.destroy(),null!=this._sharedLodIndexBuffer&&this._sharedLodIndexBuffer.destroy()},i.onRestore=function(){this.onEnable(),this._buildImp(!0)},i.update=function(){for(var t=0;t<this._blocks.length;++t)this._blocks[t].update()},i.onUpdateFromCamera=function(t){if(this.lodEnable&&null!=this._sharedLodIndexBuffer&&t.scene===this._getRenderScene()){for(var e=0;e<this._blocks.length;++e)this._blocks[e]._updateLevel(t.position);for(var i=0;i<this._blocks.length;++i)this._blocks[i]._updateLod()}},i.addLayer=function(t){for(var e=0;e<this._layerList.length;++e){var i;if(null===this._layerList[e]||this._layerList[e]&&null===(null===(i=this._layerList[e])||void 0===i?void 0:i.detailMap))return this._layerList[e]=t,this._asset&&this.exportLayerListToAsset(this._asset),e}return-1},i.setLayer=function(t,e){this._layerList[t]=e,this._asset&&this.exportLayerListToAsset(this._asset)},i.removeLayer=function(t){this._layerList[t]=null,this._asset&&this.exportLayerListToAsset(this._asset)},i.getLayer=function(t){return-1===t?null:this._layerList[t]},i.getPosition=function(t,e){var i=t*this._tileSize,n=e*this._tileSize,r=this.getHeight(t,e);return new gn(i,r,n)},i.getHeightField=function(){return this._heights},i.setHeight=function(t,e,i){i=Fi(i,YBt,qBt),this._heights[e*this.vertexCount[0]+t]=WBt+i/XBt},i.getHeight=function(t,e){return(this._heights[e*this.vertexCount[0]+t]-WBt)*XBt},i.getHeightClamp=function(t,e){return t=Fi(t,0,this.vertexCount[0]-1),e=Fi(e,0,this.vertexCount[1]-1),this.getHeight(t,e)},i.getHeightAt=function(t,e){var i=t/this.tileSize,n=e/this.tileSize,r=Math.floor(i),s=Math.floor(n),a=r+1,o=s+1,h=i-r,u=n-s;if(r<0||r>this.vertexCount[0]-1||s<0||s>this.vertexCount[1]-1)return null;r=Fi(r,0,this.vertexCount[0]-1),s=Fi(s,0,this.vertexCount[1]-1),a=Fi(a,0,this.vertexCount[0]-1),o=Fi(o,0,this.vertexCount[1]-1);var l=this.getHeight(r,s),c=this.getHeight(a,s),_=this.getHeight(r,o),f=this.getHeight(a,o),d=.5*(c+_);return h+u<=1?f=d+(d-l):l=d+(d-f),(l*(1-h)+c*h)*(1-u)+(_*(1-h)+f*h)*u},i._setNormal=function(t,e,i){var n=e*this.vertexCount[0]+t;this._normals[3*n+0]=i.x,this._normals[3*n+1]=i.y,this._normals[3*n+2]=i.z},i.getNormal=function(t,e){var i=e*this.vertexCount[0]+t,n=new gn;return n.x=this._normals[3*i+0],n.y=this._normals[3*i+1],n.z=this._normals[3*i+2],n},i.getNormalAt=function(t,e){var i=t/this.tileSize,n=e/this.tileSize,r=Math.floor(i),s=Math.floor(n),a=r+1,o=s+1,h=i-r,u=n-s;if(r<0||r>this.vertexCount[0]-1||s<0||s>this.vertexCount[1]-1)return null;r=Fi(r,0,this.vertexCount[0]-1),s=Fi(s,0,this.vertexCount[1]-1),a=Fi(a,0,this.vertexCount[0]-1),o=Fi(o,0,this.vertexCount[1]-1);var l=this.getNormal(r,s),c=this.getNormal(a,s),_=this.getNormal(r,o),f=this.getNormal(a,o),d=new gn;gn.add(d,c,_).multiplyScalar(.5),h+u<=1?(f.set(d),f.subtract(l),f.add(d)):(l.set(d),l.subtract(f),l.add(d));var p=new gn,m=new gn,g=new gn;return gn.lerp(p,l,c,h),gn.lerp(m,_,f,h),gn.lerp(g,p,m,u),g},i.setWeight=function(t,e,i){var n=e*this._weightMapSize*this._blockCount[0]+t;this._weights[4*n+0]=255*i.x,this._weights[4*n+1]=255*i.y,this._weights[4*n+2]=255*i.z,this._weights[4*n+3]=255*i.w},i.getWeight=function(t,e){var i=e*this._weightMapSize*this._blockCount[0]+t,n=new cn;return n.x=this._weights[4*i+0]/255,n.y=this._weights[4*i+1]/255,n.z=this._weights[4*i+2]/255,n.w=this._weights[4*i+3]/255,n},i.getWeightAt=function(t,e){var i=this.weightMapSize*this.blockCount[0],n=this.weightMapSize*this.blockCount[1];if(0===i||0===n)return null;var r=t/i,s=e/n,a=Math.floor(r),o=Math.floor(s),h=a+1,u=o+1,l=r-a,c=s-o;if(a<0||a>i-1||o<0||o>n-1)return null;a=Fi(a,0,i-1),o=Fi(o,0,n-1),h=Fi(h,0,i-1),u=Fi(u,0,n-1);var _=this.getWeight(a,o),f=this.getWeight(h,o),d=this.getWeight(a,u),p=this.getWeight(h,u),m=new cn;cn.add(m,f,d).multiplyScalar(.5),l+c<=1?(p=new cn,cn.subtract(p,m,_).add(m)):(_=new cn,cn.subtract(_,m,p).add(m));var g=new cn,v=new cn,y=new cn;return cn.lerp(g,_,f,l),cn.lerp(v,d,p,l),cn.lerp(y,g,v,c),y},i.getMaxWeightLayerAt=function(t,e){var i=this.weightMapSize*this.blockCount[0],n=this.weightMapSize*this.blockCount[1];if(0===i||0===n)return null;var r=t/i,s=e/n,a=Math.floor(r),o=Math.floor(s);if(a<0||a>i-1||o<0||o>n-1)return null;var h=this.getWeight(a,o),u=Math.floor(t/this.weightMapSize),l=Math.floor(e/this.weightMapSize),c=this.getBlock(u,l),_=0;return h.y>h[_]&&-1!==c.getLayer(1)&&(_=1),h.y>h[_]&&-1!==c.getLayer(2)&&(_=2),h.z>h[_]&&-1!==c.getLayer(3)&&(_=3),_=c.getLayer(_),this.getLayer(_)},i.getBlockLayers=function(t,e){var i=(e*this._blockCount[0]+t)*GBt;return[this._layerBuffer[i],this._layerBuffer[i+1],this._layerBuffer[i+2],this._layerBuffer[i+3]]},i.getBlockLayer=function(t,e,i){var n=(e*this._blockCount[0]+t)*GBt;return this._layerBuffer[n+i]},i.setBlockLayer=function(t,e,i,n){var r=(e*this._blockCount[0]+t)*GBt;this._layerBuffer[r+i]=n},i.getBlock=function(t,e){return this._blocks[e*this._blockCount[0]+t]},i.getBlocks=function(){return this._blocks},i.rayCheck=function(t,e,i,n){void 0===n&&(n=!0);var r=t;n&&gn.subtract(r,t,this.node.getWorldPosition());var s=new gn;s.set(e),s.multiplyScalar(i);var a=null;if(e.equals(new gn(0,1,0))){var o=this.getHeightAt(r.x,r.z);null!=o&&r.y<=o&&(a=new gn(r.x,o,r.z))}else if(e.equals(new gn(0,-1,0))){var h=this.getHeightAt(r.x,r.z);null!=h&&r.y>=h&&(a=new gn(r.x,h,r.z))}else{for(var u=0;u++<2e3;){var l=this.getHeightAt(r.x,r.z);if(null!=l&&r.y<=l)break;r.add(e)}for(;u++<2e3;){var c=this.getHeightAt(r.x,r.z);if(null!=c&&r.y<=c){a=new gn(r.x,c,r.z);break}r.add(s)}}return a},i._createSharedIndexBuffer=function(){var t=Ff.gfxDevice;if(null!==this._lod){var e=t.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,Uint16Array.BYTES_PER_ELEMENT*this._lod._indexBuffer.length,Uint16Array.BYTES_PER_ELEMENT));return e.update(this._lod._indexBuffer),e}for(var i=new Uint16Array(UBt*UBt*6),n=0,r=0;r<UBt;++r)for(var s=0;s<UBt;++s){var a=r*zBt+s,o=r*zBt+s+1,h=(r+1)*zBt+s,u=(r+1)*zBt+s+1;i[n++]=a,i[n++]=h,i[n++]=o,i[n++]=o,i[n++]=h,i[n++]=u}var l=t.createBuffer(new r_(rc.INDEX|rc.TRANSFER_DST,oc.DEVICE,Uint16Array.BYTES_PER_ELEMENT*i.length,Uint16Array.BYTES_PER_ELEMENT));return l.update(i),l},i._getSharedIndexBuffer=function(){return null!==this._sharedLodIndexBuffer?this._sharedLodIndexBuffer:null!==this._sharedIndexBuffer?this._sharedIndexBuffer:(this.lodEnable&&null===this._lod&&(this._lod=new zVt),null!==this._lod?(this._sharedLodIndexBuffer=this._createSharedIndexBuffer(),this._sharedLodIndexBuffer):(this._sharedIndexBuffer=this._createSharedIndexBuffer(),this._sharedIndexBuffer))},i._getIndexData=function(t){return null!==this._sharedLodIndexBuffer&&null!==this._lod?this._lod.getIndexData(t):null},i._resetLightmap=function(t){if(this._lightmapInfos.length=0,t)for(var e=0;e<this._blockCount[0]*this._blockCount[1];++e)this._lightmapInfos.push(new jVt)},i._updateLightmap=function(t,e,i,n,r,s){if(e){if(0===this._lightmapInfos.length)for(var a=0;a<this._blockCount[0]*this._blockCount[1];++a)this._lightmapInfos.push(new jVt)}else if(0===this._lightmapInfos.length)return;this._lightmapInfos[t].texture=e,this._lightmapInfos[t].UOff=i,this._lightmapInfos[t].VOff=n,this._lightmapInfos[t].UScale=r,this._lightmapInfos[t].VScale=s,this._blocks[t]._updateLightmap(this._lightmapInfos[t])},i._getLightmapInfo=function(t,e){var i=e*this._blockCount[0]+t;return i<this._lightmapInfos.length?this._lightmapInfos[i]:null},i._calcNormal=function(t,e){var i,n,r=1,s=this.getPosition(t,e);t<this.vertexCount[0]-1?i=this.getPosition(t+1,e):(r*=-1,i=this.getPosition(t-1,e)),e<this.vertexCount[1]-1?n=this.getPosition(t,e+1):(r*=-1,n=this.getPosition(t,e-1)),i.subtract(s),n.subtract(s);var a=new gn;return a.set(n),a.cross(i),a.multiplyScalar(r),a.normalize(),a},i._buildNormals=function(){for(var t=0,e=0;e<this.vertexCount[1];++e)for(var i=0;i<this.vertexCount[0];++i){var n=this._calcNormal(i,e);this._normals[3*t+0]=n.x,this._normals[3*t+1]=n.y,this._normals[3*t+2]=n.z,t+=1}},i._buildImp=function(t){var e=this;if(void 0===t&&(t=!1),!this.valid){var i=this.__asset;if(this._buitinAsset!==i&&(this._buitinAsset=i),!t&&null!==i){this._tileSize=i.tileSize,this._blockCount=i.blockCount,this._weightMapSize=i.weightMapSize,this._lightMapSize=i.lightMapSize,this._heights=i.heights,this._normals=i.normals,this._weights=i.weights,this._layerBuffer=i.layerBuffer;for(var n=0;n<this._layerList.length;++n)this._layerList[n]=null;if(i.version<$Bt)for(var r=function(){var t=new WVt,n=i.layerBinaryInfos[s];t.tileSize=n.tileSize,S.assetManager.loadAny(n.detailMapId,(function(e,i){t.detailMap=i})),""!==n.normalMapId&&S.assetManager.loadAny(n.normalMapId,(function(e,i){t.normalMap=i})),t.roughness=n.roughness,t.metallic=n.metallic,e._layerList[n.slot]=t},s=0;s<i.layerBinaryInfos.length;++s)r();else for(var a=0;a<i.layerInfos.length;++a){var o=new WVt,h=i.layerInfos[a];o.tileSize=h.tileSize,o.detailMap=h.detailMap,o.normalMap=h.normalMap,o.roughness=h.roughness,o.metallic=h.metallic,this._layerList[h.slot]=o}}if(0!==this._blockCount[0]&&0!==this._blockCount[1]){var u=this.vertexCount[0]*this.vertexCount[1];if(null===this._heights||this._heights.length!==u){this._heights=new Uint16Array(u),this._normals=new Float32Array(3*u);for(var l=0;l<u;++l)this._heights[l]=WBt,this._normals[3*l+0]=0,this._normals[3*l+1]=1,this._normals[3*l+2]=0;i&&(i.heights=this._heights,i.normals=this._normals)}null!==this._normals&&this._normals.length===3*u||(this._normals=new Float32Array(3*u),this._buildNormals());var c=this.blockCount[0]*this.blockCount[1]*GBt;if(null===this._layerBuffer||this._layerBuffer.length!==c){this._layerBuffer=new Array(c);for(var _=0;_<c;++_)this._layerBuffer[_]=-1;i&&(i.layerBuffer=this._layerBuffer)}var f=this._weightMapSize*this._blockCount[0],d=this._weightMapSize*this._blockCount[1];if(this._weights.length!==f*d*4){this._weights=new Uint8Array(f*d*4);for(var p=0;p<f*d;++p)this._weights[4*p+0]=255,this._weights[4*p+1]=0,this._weights[4*p+2]=0,this._weights[4*p+3]=0;i&&(i.weights=this._weights)}for(var m=0;m<this._blockCount[1];++m)for(var g=0;g<this._blockCount[0];++g)this._blocks.push(new YVt(this,g,m));for(var v=0;v<this._blocks.length;++v)this._blocks[v].build()}}},i._rebuildHeights=function(t){if(this.vertexCount[0]===t.vertexCount[0]&&this.vertexCount[1]===t.vertexCount[1])return!1;for(var e=new Uint16Array(t.vertexCount[0]*t.vertexCount[1]),i=0;i<e.length;++i)e[i]=WBt;for(var n=Math.min(this.vertexCount[0],t.vertexCount[0]),r=Math.min(this.vertexCount[1],t.vertexCount[1]),s=0;s<r;++s)for(var a=0;a<n;++a){var o=s*t.vertexCount[0]+a,h=s*this.vertexCount[0]+a;e[o]=this._heights[h]}return this._heights=e,!0},i._rebuildLayerBuffer=function(t){if(this.blockCount[0]===t.blockCount[0]&&this.blockCount[1]===t.blockCount[1])return!1;var e=[];e.length=t.blockCount[0]*t.blockCount[1]*GBt;for(var i=0;i<e.length;++i)e[i]=-1;for(var n=Math.min(this.blockCount[0],t.blockCount[0]),r=Math.min(this.blockCount[1],t.blockCount[1]),s=0;s<r;++s)for(var a=0;a<n;++a)for(var o=s*t.blockCount[0]+a,h=s*this.blockCount[0]+a,u=0;u<GBt;++u)e[o*GBt+u]=this._layerBuffer[h*GBt+u];return this._layerBuffer=e,!0},i._rebuildWeights=function(t){var e=this,i=this._weightMapSize,n=this._weightMapSize*this._blockCount[0],r=this._weightMapSize*this._blockCount[1],s=t.weightMapSize*t.blockCount[0],a=t.weightMapSize*t.blockCount[1];if(s===n&&a===r)return!1;for(var o=new Uint8Array(s*a*4),h=0;h<s*a;++h)o[4*h+0]=255,o[4*h+1]=0,o[4*h+2]=0,o[4*h+3]=0;for(var u=Math.min(t.blockCount[0],this._blockCount[0]),l=Math.min(t.blockCount[1],this._blockCount[1]),c=function(t,e,i){var r=e*n+t,s=new cn;return s.x=i[4*r+0]/255,s.y=i[4*r+1]/255,s.z=i[4*r+2]/255,s.w=i[4*r+3]/255,s},_=function(t,n,r,s){var a=Math.floor(t),o=Math.floor(n),h=Math.min(a+1,i-1),u=Math.min(o+1,i-1),l=t-a,_=n-o,f=c(a+r,o+s,e._weights),d=c(h+r,o+s,e._weights),p=c(a+r,u+s,e._weights),m=c(h+r,u+s,e._weights),g=new cn;cn.add(g,d,p).multiplyScalar(.5),l+_<=1?(m.set(g),m.subtract(f),m.add(g)):(f.set(g),f.subtract(m),f.add(g));var v=new cn,y=new cn,S=new cn;return cn.lerp(v,f,d,l),cn.lerp(y,p,m,l),cn.lerp(S,v,y,_),S},f=0;f<l;++f)for(var d=0;d<u;++d)for(var p=d*i,m=f*i,g=0;g<t.weightMapSize;++g)for(var v=0;v<t.weightMapSize;++v){var y=void 0;y=t.weightMapSize===i?c(v+p,g+m,this._weights):_(v/(t.weightMapSize-1)*(i-1),g/(t.weightMapSize-1)*(i-1),p,m,this._weights);var S=d*t.weightMapSize+v,T=(f*t.weightMapSize+g)*s+S;o[4*T+0]=255*y.x,o[4*T+1]=255*y.y,o[4*T+2]=255*y.z,o[4*T+3]=255*y.w}return this._weights=o,!0},n(e,[{key:"_asset",get:function(){return this.__asset},set:function(t){if(this.__asset=t,this._buitinAsset!==this.__asset){this._buitinAsset=this.__asset;for(var e=0;e<this._blocks.length;++e)this._blocks[e].destroy();if(this._blocks=[],null===this.__asset){this._effectAsset=null,this._lightmapInfos=[],this._receiveShadow=!1,this._useNormalmap=!1,this._usePBR=!1,this._tileSize=1,this._blockCount=[1,1],this._weightMapSize=128,this._lightMapSize=128,this._heights=new Uint16Array,this._weights=new Uint8Array,this._normals=new Float32Array,this._layerBuffer=[],this._blocks=[],this._layerList=[];for(var i=0;i<VBt;++i)this._layerList.push(null)}Ff.gfxDevice&&this._buildImp()}}},{key:"effectAsset",get:function(){return this._effectAsset},set:function(t){if(this._effectAsset!==t){this._effectAsset=t;for(var e=0;e<this._blocks.length;++e)this._blocks[e]._invalidMaterial()}}},{key:"receiveShadow",get:function(){return this._receiveShadow},set:function(t){this._receiveShadow=t;for(var e=0;e<this._blocks.length;e++)this._blocks[e]._invalidMaterial()}},{key:"useNormalMap",get:function(){return this._useNormalmap},set:function(t){this._useNormalmap=t;for(var e=0;e<this._blocks.length;e++)this._blocks[e]._invalidMaterial()}},{key:"usePBR",get:function(){return this._usePBR},set:function(t){this._usePBR=t;for(var e=0;e<this._blocks.length;e++)this._blocks[e]._invalidMaterial()}},{key:"lodEnable",get:function(){return this._lodEnable},set:function(t){if(this._lodEnable=t,this._lodEnable&&null===this._lod){this._lod=new zVt,null===this._sharedLodIndexBuffer&&(this._sharedLodIndexBuffer=this._createSharedIndexBuffer());for(var e=0;e<this._blocks.length;++e)this._blocks[e].destroy();this._blocks=[];for(var i=0;i<this._blockCount[1];++i)for(var n=0;n<this._blockCount[0];++n)this._blocks.push(new YVt(this,n,i));for(var r=0;r<this._blocks.length;++r)this._blocks[r].build()}if(!this._lodEnable)for(var s=0;s<this._blocks.length;s++)this._blocks[s]._resetLod()}},{key:"LodBias",get:function(){return this._lodBias},set:function(t){this._lodBias=t}},{key:"size",get:function(){var t=new Qn(0,0);return t.width=this.blockCount[0]*UBt*this.tileSize,t.height=this.blockCount[1]*UBt*this.tileSize,t}},{key:"tileSize",get:function(){return this._tileSize}},{key:"tileCount",get:function(){return[this.blockCount[0]*UBt,this.blockCount[1]*UBt]}},{key:"vertexCount",get:function(){var t=this.tileCount;return t[0]+=1,t[1]+=1,t}},{key:"blockCount",get:function(){return this._blockCount}},{key:"lightMapSize",get:function(){return this._lightMapSize}},{key:"weightMapSize",get:function(){return this._weightMapSize}},{key:"heights",get:function(){return this._heights}},{key:"weights",get:function(){return this._weights}},{key:"valid",get:function(){return this._blocks.length>0}},{key:"info",get:function(){var t=new HVt;return t.tileSize=this.tileSize,t.blockCount[0]=this.blockCount[0],t.blockCount[1]=this.blockCount[1],t.weightMapSize=this.weightMapSize,t.lightMapSize=this.lightMapSize,t}}]),e}(mp),AVt=ja(TVt.prototype,"__asset",[fVt,lo],(function(){return null})),bVt=ja(TVt.prototype,"_effectAsset",[dVt,lo],(function(){return null})),EVt=ja(TVt.prototype,"_lightmapInfos",[pVt,lo],(function(){return[]})),CVt=ja(TVt.prototype,"_receiveShadow",[lo],(function(){return!1})),xVt=ja(TVt.prototype,"_useNormalmap",[lo],(function(){return!1})),wVt=ja(TVt.prototype,"_usePBR",[lo],(function(){return!1})),RVt=ja(TVt.prototype,"_lodEnable",[lo],(function(){return!1})),IVt=ja(TVt.prototype,"_lodBias",[mVt,lo],(function(){return 0})),m(TVt.prototype,"_asset",[gVt],Object.getOwnPropertyDescriptor(TVt.prototype,"_asset"),TVt.prototype),m(TVt.prototype,"effectAsset",[vVt],Object.getOwnPropertyDescriptor(TVt.prototype,"effectAsset"),TVt.prototype),m(TVt.prototype,"info",[yVt],Object.getOwnPropertyDescriptor(TVt.prototype,"info"),TVt.prototype),SVt=TVt))||SVt)||SVt)),function(t){t[t.ORTHO=0]="ORTHO",t[t.HEX=1]="HEX",t[t.ISO=2]="ISO"}(DVt||(DVt={})),we(DVt),function(t){t[t.NONE=0]="NONE",t[t.MAP=1]="MAP",t[t.LAYER=2]="LAYER",t[t.OBJECTGROUP=3]="OBJECTGROUP",t[t.OBJECT=4]="OBJECT",t[t.TILE=5]="TILE"}(BVt||(BVt={})),we(BVt),function(t){t[t.HORIZONTAL=2147483648]="HORIZONTAL",t[t.VERTICAL=1073741824]="VERTICAL",t[t.DIAGONAL=536870912]="DIAGONAL",t[t.FLIPPED_ALL=4026531840]="FLIPPED_ALL",t[t.FLIPPED_MASK=268435455]="FLIPPED_MASK"}(MVt||(MVt={})),we(MVt),function(t){t[t.STAGGERAXIS_X=0]="STAGGERAXIS_X",t[t.STAGGERAXIS_Y=1]="STAGGERAXIS_Y"}(PVt||(PVt={})),we(PVt),function(t){t[t.STAGGERINDEX_ODD=0]="STAGGERINDEX_ODD",t[t.STAGGERINDEX_EVEN=1]="STAGGERINDEX_EVEN"}(OVt||(OVt={})),we(OVt),function(t){t[t.RightDown=0]="RightDown",t[t.RightUp=1]="RightUp",t[t.LeftDown=2]="LeftDown",t[t.LeftUp=3]="LeftUp"}(LVt||(LVt={})),we(LVt),function(t){t[t.RECT=0]="RECT",t[t.ELLIPSE=1]="ELLIPSE",t[t.POLYGON=2]="POLYGON",t[t.POLYLINE=3]="POLYLINE",t[t.IMAGE=4]="IMAGE",t[t.TEXT=5]="TEXT"}(NVt||(NVt={})),we(NVt);var qVt=function(){function t(){this.name="",this.firstGid=0,this.spacing=0,this.margin=0,this.sourceImage=void 0,this.imageName=null,this.imageOffset=null,this.imageSize=new Qn(0,0),this.tileOffset=new jn(0,0),this._tileSize=new Qn(0,0),this.collection=!1}return t.prototype.rectForGID=function(t,e){var i=e||new Jn(0,0,0,0);i.width=this._tileSize.width,i.height=this._tileSize.height;var n=t;if(n&=MVt.FLIPPED_MASK,n-=this.firstGid,this.imageOffset)i.x=this.imageOffset.x,i.y=this.imageOffset.y;else{var r=Math.floor((this.imageSize.width-2*this.margin+this.spacing)/(this._tileSize.width+this.spacing));i.x=Math.round(n%r*(this._tileSize.width+this.spacing)+this.margin),i.y=Math.round(Math.floor(n/r)*(this._tileSize.height+this.spacing)+this.margin)}return i},t}(),KVt=function(){function t(){this.properties={},this.name="",this.objects=[],this.visible=!0,this.opacity=0,this.color=new En(255,255,255,255),this.offset=new jn(0,0),this.draworder="topdown",this.tintColor=null}var e=t.prototype;return e.getProperties=function(){return this.properties},e.setProperties=function(t){this.properties=t},t}(),QVt=function(){function t(){this.properties={},this.name="",this.layerSize=null,this.tiles=[],this.visible=!0,this.opacity=0,this.ownTiles=!0,this.minGID=1e5,this.maxGID=0,this.offset=new jn(0,0),this.tintColor=null}var e=t.prototype;return e.getProperties=function(){return this.properties},e.setProperties=function(t){this.properties=t},t}();QVt.ATTRIB_NONE=1,QVt.ATTRIB_BASE64=2,QVt.ATTRIB_GZIP=4,QVt.ATTRIB_ZLIB=8;var ZVt=function(){this.name="",this.visible=!0,this.width=0,this.height=0,this.offset=new jn(0,0),this.opacity=0,this.trans=new En(255,255,255,255),this.sourceImage=void 0,this.tintColor=null};function JVt(t){var e=OL.HorizontalAlign;switch(t){case"center":return e.CENTER;case"right":return e.RIGHT;default:return e.LEFT}}function $Vt(t){var e=OL.VerticalAlign;switch(t){case"center":return e.CENTER;case"bottom":return e.BOTTOM;default:return e.TOP}}function tUt(t){if(!t)return new En(0,0,0,255);if(8===(t=-1!==t.indexOf("#")?t.substring(1):t).length){var e=parseInt(t.substr(0,2),16)||255,i=parseInt(t.substr(2,2),16)||0,n=parseInt(t.substr(4,2),16)||0,r=parseInt(t.substr(6,2),16)||0;return new En(i,n,r,e)}var s=parseInt(t.substr(0,2),16)||0,a=parseInt(t.substr(2,2),16)||0,o=parseInt(t.substr(4,2),16)||0;return new En(s,a,o,255)}function eUt(t,e){for(var i=[],n=t.getElementsByTagName("properties"),r=0;r<n.length;++r)for(var s=n[r].getElementsByTagName("property"),a=0;a<s.length;++a)i.push(s[a]);e=e||{};for(var o=0;o<i.length;o++){var h=i[o],u=h.getAttribute("name"),l=h.getAttribute("type")||"string",c=h.getAttribute("value");"int"===l?c=parseInt(c):"float"===l?c=parseFloat(c):"bool"===l?c="true"===c:"color"===l&&(c=tUt(c)),e[u]=c}return e}var iUt,nUt,rUt,sUt,aUt,oUt,hUt,uUt,lUt,cUt,_Ut,fUt,dUt,pUt=function(){function t(t,e,i,n,r){this.properties={},this.orientation=null,this.parentElement=null,this.parentGID=0,this.layerAttrs=0,this.storingCharacters=!1,this.currentString=null,this.renderOrder=LVt.RightDown,this._supportVersion=[1,4,0],this._objectGroups=[],this._allChildren=[],this._mapSize=new Qn(0,0),this._tileSize=new Qn(0,0),this._layers=[],this._tilesets=[],this._imageLayers=[],this._tileProperties=new Map,this._tileAnimations={},this._tsxContentMap=null,this._spriteFrameMap=null,this._spfSizeMap={},this._staggerAxis=null,this._staggerIndex=null,this._hexSideLength=0,this._imageLayerSPF=null,this.initWithXML(t,e,i,n,r)}var e=t.prototype;return e.getOrientation=function(){return this.orientation},e.setOrientation=function(t){this.orientation=t},e.getStaggerAxis=function(){return this._staggerAxis},e.setStaggerAxis=function(t){this._staggerAxis=t},e.getStaggerIndex=function(){return this._staggerIndex},e.setStaggerIndex=function(t){this._staggerIndex=t},e.getHexSideLength=function(){return this._hexSideLength},e.setHexSideLength=function(t){this._hexSideLength=t},e.getMapSize=function(){return new Qn(this._mapSize.width,this._mapSize.height)},e.setMapSize=function(t){this._mapSize.width=t.width,this._mapSize.height=t.height},e.getTileSize=function(){return new Qn(this._tileSize.width,this._tileSize.height)},e.setTileSize=function(t){this._tileSize.width=t.width,this._tileSize.height=t.height},e.getLayers=function(){return this._layers},e.setLayers=function(t){this._allChildren.push(t),this._layers.push(t)},e.getImageLayers=function(){return this._imageLayers},e.setImageLayers=function(t){this._allChildren.push(t),this._imageLayers.push(t)},e.getTilesets=function(){return this._tilesets},e.setTilesets=function(t){this._tilesets.push(t)},e.getObjectGroups=function(){return this._objectGroups},e.setObjectGroups=function(t){this._allChildren.push(t),this._objectGroups.push(t)},e.getAllChildren=function(){return this._allChildren},e.getParentElement=function(){return this.parentElement},e.setParentElement=function(t){this.parentElement=t},e.getParentGID=function(){return this.parentGID},e.setParentGID=function(t){this.parentGID=t},e.getLayerAttribs=function(){return this.layerAttrs},e.setLayerAttribs=function(t){this.layerAttrs=t},e.getStoringCharacters=function(){return this.storingCharacters},e.setStoringCharacters=function(t){this.storingCharacters=t},e.getProperties=function(){return this.properties},e.setProperties=function(t){this.properties=t},e.initWithXML=function(t,e,i,n,r){return this._tilesets.length=0,this._layers.length=0,this._imageLayers.length=0,this._tsxContentMap=e,this._spriteFrameMap=i,this._imageLayerSPF=r,this._spfSizeMap=n,this._objectGroups.length=0,this._allChildren.length=0,this.properties={},this._tileProperties=new Map,this._tileAnimations=new Map,this.currentString="",this.storingCharacters=!1,this.layerAttrs=QVt.ATTRIB_NONE,this.parentElement=null,this.parseXMLString(t)},e.parseXMLString=function(e,i){var n,r=(new rT).parse(e).documentElement,s=r.getAttribute("orientation"),a=r.getAttribute("staggeraxis"),o=r.getAttribute("staggerindex"),h=r.getAttribute("hexsidelength"),u=r.getAttribute("renderorder"),l=r.getAttribute("version")||"1.0.0";if("map"===r.nodeName){var c=l.split("."),_=this._supportVersion;for(n=0;n<_.length;n++){var f=parseInt(c[n])||0;if(_[n]<f){Q(7216,l);break}}"orthogonal"===s?this.orientation=DVt.ORTHO:"isometric"===s?this.orientation=DVt.ISO:"hexagonal"===s?this.orientation=DVt.HEX:null!==s&&Q(7217,s),this.renderOrder="right-up"===u?LVt.RightUp:"left-up"===u?LVt.LeftUp:"left-down"===u?LVt.LeftDown:LVt.RightDown,"x"===a?this.setStaggerAxis(PVt.STAGGERAXIS_X):"y"===a&&this.setStaggerAxis(PVt.STAGGERAXIS_Y),"odd"===o?this.setStaggerIndex(OVt.STAGGERINDEX_ODD):"even"===o&&this.setStaggerIndex(OVt.STAGGERINDEX_EVEN),h&&this.setHexSideLength(parseFloat(h));var d=new Qn(0,0);d.width=parseFloat(r.getAttribute("width")),d.height=parseFloat(r.getAttribute("height")),this.setMapSize(d),(d=new Qn(0,0)).width=parseFloat(r.getAttribute("tilewidth")),d.height=parseFloat(r.getAttribute("tileheight")),this.setTileSize(d),this.properties=eUt(r)}var p=r.getElementsByTagName("tileset");for("map"!==r.nodeName&&(p=[]).push(r),n=0;n<p.length;n++){var m=p[n],g=m.getAttribute("source");if(g){var v=parseInt(m.getAttribute("firstgid")),y=this._tsxContentMap[g];y&&this.parseXMLString(y,v)}else{var S=m.getElementsByTagName("image"),T=S.length>1,A=S[0],b=A.getAttribute("source");b=b.replace(/\\/g,"/");var E=m.getElementsByTagName("tile"),C=E&&E.length||1,x=null,w=m.getAttribute("name")||"",R=parseInt(m.getAttribute("spacing"))||0,I=parseInt(m.getAttribute("margin"))||0,D=i||parseInt(m.getAttribute("firstgid"))||0,B=new Qn(0,0);B.width=parseFloat(m.getAttribute("tilewidth")),B.height=parseFloat(m.getAttribute("tileheight"));var M=m.getElementsByTagName("tileoffset")[0],P=0,O=0;M&&(P=parseFloat(M.getAttribute("x"))||0,O=parseFloat(M.getAttribute("y"))||0);for(var L=null,N=0;N<C;N++){var F=S[N]?S[N]:A;if(F){var k=F.getAttribute("source");if(k=k.replace(/\\/g,"/"),!L||T){if((L=new qVt).name=w,L.firstGid=D&MVt.FLIPPED_MASK,L.tileOffset.x=P,L.tileOffset.y=O,L.collection=T,!T&&(L.imageName=k,L.imageSize.width=parseFloat(F.getAttribute("width"))||0,L.imageSize.height=parseFloat(F.getAttribute("height"))||0,L.sourceImage=this._spriteFrameMap[k],!L.sourceImage)){var G=t.getNameWithPostfix(k);if(L.imageName=G,L.sourceImage=this._spriteFrameMap[G],!L.sourceImage){var V=t.getShortName(k);L.imageName=V,L.sourceImage=this._spriteFrameMap[V],L.sourceImage||(console.error("[error]: "+V+" not find in ["+Object.keys(this._spriteFrameMap).join(", ")+"]"),it(7221,k),console.warn("Please try asset type of "+k+" to 'sprite-frame'"))}}L.spacing=R,L.margin=I,L._tileSize.width=B.width,L._tileSize.height=B.height,this.setTilesets(L)}if(x=E&&E[N]){this.parentGID=D+(parseInt(x.getAttribute("id"))||0);var U=x.getElementsByTagName("image");x.hasAttribute("x")&&x.hasAttribute("y")&&(L.imageOffset=new jn(parseFloat(x.getAttribute("x"))||0,parseFloat(x.getAttribute("y"))||0));var z=x.hasAttribute("width")&&x.hasAttribute("height");if(z&&(L._tileSize.width=parseFloat(x.getAttribute("width"))||0,L._tileSize.height=parseFloat(x.getAttribute("height"))||0),U&&U.length>0){var H=U[0],W=H.getAttribute("source");if(W=W.replace(/\\/g,"/"),L.imageName=W,L.imageSize.width=parseFloat(H.getAttribute("width"))||0,L.imageSize.height=parseFloat(H.getAttribute("height"))||0,z||(L._tileSize.width=L.imageSize.width,L._tileSize.height=L.imageSize.height),L.sourceImage=this._spriteFrameMap[W],!L.sourceImage){var X=t.getNameWithPostfix(W);if(L.imageName=X,L.sourceImage=this._spriteFrameMap[X],!L.sourceImage){var j=t.getShortName(W);L.imageName=j,L.sourceImage=this._spriteFrameMap[j],L.sourceImage||(it(7221,W),console.warn("Please try asset type of "+W+" to 'sprite-frame'"))}}L.firstGid=this.parentGID&MVt.FLIPPED_MASK}var Y=(MVt.FLIPPED_MASK&this.parentGID)>>>0;this._tileProperties.set(Y,eUt(x));var q=x.getElementsByTagName("animation");if(q&&q.length>0){var K=q[0].getElementsByTagName("frame"),Z={frames:[],dt:0,frameIdx:0};this._tileAnimations.set(Y,Z);for(var J=Z.frames,$=0;$<K.length;$++){var tt=K[$],et=D+(parseInt(tt.getAttribute("tileid"))||0),nt=parseFloat(tt.getAttribute("duration"))||0;J.push({tileid:et,duration:nt/1e3,grid:null})}}}}}}}var rt=r.childNodes;for(n=0;n<rt.length;n++){var st=rt[n];if(!this._shouldIgnoreNode(st)){if("imagelayer"===st.nodeName){var at=this._parseImageLayer(st);at&&this.setImageLayers(at)}if("layer"===st.nodeName){var ot=this._parseLayer(st);this.setLayers(ot)}if("objectgroup"===st.nodeName){var ht=this._parseObjectGroup(st);this.setObjectGroups(ht)}}}return r},e._shouldIgnoreNode=function(t){return 3===t.nodeType||8===t.nodeType||4===t.nodeType},e._parseImageLayer=function(t){var e=t.getElementsByTagName("image");if(!e||0===e.length)return null;var i=new ZVt;i.name=t.getAttribute("name"),i.offset.x=parseFloat(t.getAttribute("offsetx"))||0,i.offset.y=parseFloat(t.getAttribute("offsety"))||0;var n=t.getAttribute("visible");i.visible=!("0"===n);var r=t.getAttribute("opacity");i.opacity=r?Math.round(255*parseFloat(r)):255;var s=t.getAttribute("tintcolor");i.tintColor=s?tUt(s):null;var a=e[0],o=a.getAttribute("source");return i.sourceImage=this._imageLayerSPF[o],i.width=parseInt(a.getAttribute("width"))||0,i.height=parseInt(a.getAttribute("height"))||0,i.trans=tUt(a.getAttribute("trans")),i.sourceImage?i:(it(7221,o),console.warn("Please try asset type of "+o+" to 'sprite-frame'"),null)},e._parseLayer=function(t){var e=t.getElementsByTagName("data")[0],i=new QVt;i.name=t.getAttribute("name");var n=new Qn(0,0);n.width=parseFloat(t.getAttribute("width")),n.height=parseFloat(t.getAttribute("height")),i.layerSize=n;var r=t.getAttribute("visible");i.visible=!("0"===r);var s=t.getAttribute("opacity");i.opacity=s?Math.round(255*parseFloat(s)):255,i.offset=new jn(parseFloat(t.getAttribute("offsetx"))||0,parseFloat(t.getAttribute("offsety"))||0);var a=t.getAttribute("tintcolor");i.tintColor=a?tUt(a):null;for(var o="",h=0;h<e.childNodes.length;h++)o+=e.childNodes[h].nodeValue;o=o.trim();var u,l=e.getAttribute("compression"),c=e.getAttribute("encoding");if(l&&"gzip"!==l&&"zlib"!==l)return Q(7218),null;switch(l){case"gzip":u=hbt.unzipBase64AsArray(o,4);break;case"zlib":u=function(t){if(t.length%4!=0)return null;for(var e=t.length/4,i=window.Uint32Array?new Uint32Array(e):[],n=0;n<e;n++){var r=4*n;i[n]=t[r]+256*t[r+1]+65536*t[r+2]+t[r+3]*(1<<24)}return i}(new jB.Inflate(hbt.Base64.decodeAsArray(o,1)).decompress());break;case null:case"":if("base64"===c)u=hbt.Base64.decodeAsArray(o,4);else if("csv"===c){u=[];for(var _=o.split(","),f=0;f<_.length;f++)u.push(parseInt(_[f]))}else{var d=e.getElementsByTagName("tile");u=[];for(var p=0;p<d.length;p++)u.push(parseInt(d[p].getAttribute("gid")))}break;default:this.layerAttrs===QVt.ATTRIB_NONE&&Q(7219)}return u&&(i.tiles=new Uint32Array(u)),i.properties=eUt(t),i},e._parseObjectGroup=function(t){var e=new KVt;e.name=t.getAttribute("name")||"",e.offset=new jn(parseFloat(t.getAttribute("offsetx")),parseFloat(t.getAttribute("offsety")));var i=t.getAttribute("opacity");e.opacity=i?Math.round(255*parseFloat(i)):255;var n=t.getAttribute("tintcolor");e.tintColor=n?tUt(n):null;var r=t.getAttribute("visible");r&&0===parseInt(r)&&(e.visible=!1);var s=t.getAttribute("color");s&&e.color.fromHEX(s);var a=t.getAttribute("draworder");a&&(e.draworder=a),e.setProperties(eUt(t));var o=t.getElementsByTagName("object");if(o){for(var h=0;h<o.length;h++){var u=o[h],l={};l.id=u.getAttribute("id")||h,l.name=u.getAttribute("name")||"",l.width=parseFloat(u.getAttribute("width"))||0,l.height=parseFloat(u.getAttribute("height"))||0,l.x=parseFloat(u.getAttribute("x"))||0,l.y=parseFloat(u.getAttribute("y"))||0,l.rotation=parseFloat(u.getAttribute("rotation"))||0,eUt(u,l);var c=u.getAttribute("visible");l.visible=!(c&&0===parseInt(c));var _=u.getElementsByTagName("text");if(_&&_.length>0){var f=_[0];l.type=NVt.TEXT,l.wrap="1"===f.getAttribute("wrap"),l.color=tUt(f.getAttribute("color")),l.halign=JVt(f.getAttribute("halign")),l.valign=$Vt(f.getAttribute("valign")),l.pixelsize=parseInt(f.getAttribute("pixelsize"))||16,l.text=f.childNodes[0].nodeValue}var d=u.getAttribute("gid");d&&(l.gid=parseInt(d),l.type=NVt.IMAGE);var p=u.getElementsByTagName("ellipse");p&&p.length>0&&(l.type=NVt.ELLIPSE);var m=u.getElementsByTagName("polygon");if(m&&m.length>0){l.type=NVt.POLYGON;var g=m[0].getAttribute("points");g&&(l.points=this._parsePointsString(g))}var v=u.getElementsByTagName("polyline");if(v&&v.length>0){l.type=NVt.POLYLINE;var y=v[0].getAttribute("points");y&&(l.polylinePoints=this._parsePointsString(y))}l.type||(l.type=NVt.RECT),e.objects.push(l)}"index"!==a&&e.objects.sort((function(t,e){return t.y-e.y}))}return e},e._parsePointsString=function(t){if(!t)return null;for(var e=[],i=t.split(" "),n=0;n<i.length;n++){var r=i[n].split(",");e.push({x:parseFloat(r[0]),y:parseFloat(r[1])})}return e},e.setTileAnimations=function(t){this._tileAnimations=t},e.getTileAnimations=function(){return this._tileAnimations},e.getTileProperties=function(){return this._tileProperties},e.setTileProperties=function(t){this._tileProperties=t},e.getCurrentString=function(){return this.currentString},e.setCurrentString=function(t){this.currentString=t},t.getNameWithPostfix=function(t){var e=(t=t.replace(/\\/g,"/")).lastIndexOf("/")+1,i=t.length;return t.substring(e,i)},t.getShortName=function(t){var e=(t=t.replace(/\\/g,"/")).lastIndexOf("/")+1,i=t.lastIndexOf(".");return i=i<0?t.length:i,t.substring(e,i)},n(t,[{key:"mapSize",get:function(){return this._mapSize}},{key:"tileSize",get:function(){return this._tileSize}},{key:"mapWidth",get:function(){return this._mapSize.width},set:function(t){this._mapSize.width=t}},{key:"mapHeight",get:function(){return this._mapSize.height},set:function(t){this._mapSize.height=t}},{key:"tileWidth",get:function(){return this._tileSize.width},set:function(t){this._tileSize.width=t}},{key:"tileHeight",get:function(){return this._tileSize.height},set:function(t){this._tileSize.height=t}}]),t}(),mUt=t("gE",(iUt=eo("cc.TiledTile"),nUt=io(wO),rUt=Lo(ii),sUt=Lo(ii),aUt=Lo(ii),oUt=Lo(ii),hUt=Lo(ii),iUt(uUt=nUt((lUt=function(t){function e(){var e;return(e=t.call(this)||this)._layer=null,e._x=cUt&&cUt(),e._y=_Ut&&_Ut(),e}s(e,t);var i=e.prototype;return i.onEnable=function(){var t=this.node.parent;this._layer=t.getComponent("cc.TiledLayer"),this.node.on(vm.TRANSFORM_CHANGED,this._updatePosition,this),this.node.on(vm.SIZE_CHANGED,this._updatePosition,this),this._resetTile(),this.updateInfo()},i.onDisable=function(){this._resetTile(),this.node.off(vm.TRANSFORM_CHANGED,this._updatePosition,this),this.node.off(vm.SIZE_CHANGED,this._updatePosition,this)},i._resetTile=function(){this._layer&&this._layer.getTiledTileAt(this._x,this._y)===this&&this._layer.setTiledTileAt(this._x,this._y,null)},i.updateInfo=function(){if(this._layer){var t=this._x,e=this._y;if(this._layer.getTiledTileAt(t,e))z("There is already a TiledTile at [%s, %s]",t,e);else{var i=this._layer.getPositionAt(t,e);this.node.setPosition(i.x,i.y),this._layer.setTiledTileAt(t,e,this),this._layer.markForUpdateRenderData()}}},i._updatePosition=function(){this._layer.markForUpdateRenderData()},n(e,[{key:"x",get:function(){return this._x},set:function(t){t!==this._x&&(this._layer&&this._layer.isInvalidPosition(t,this._y)?z("Invalid x, the valid value is between [%s] ~ [%s]",0,this._layer.layerSize.width):(this._resetTile(),this._x=t,this.updateInfo()))}},{key:"y",get:function(){return this._y},set:function(t){t!==this._y&&(this._layer&&this._layer.isInvalidPosition(this._x,t)?z("Invalid y, the valid value is between [%s] ~ [%s]",0,this._layer.layerSize.height):(this._resetTile(),this._y=t,this.updateInfo()))}},{key:"grid",get:function(){return this._layer?this._layer.getTileGIDAt(this._x,this._y):0},set:function(t){this._layer&&this._layer.setTileGIDAt(t,this._x,this._y)}}]),e}(mp),cUt=ja(lUt.prototype,"_x",[rUt],(function(){return 0})),_Ut=ja(lUt.prototype,"_y",[sUt],(function(){return 0})),m(lUt.prototype,"x",[aUt],Object.getOwnPropertyDescriptor(lUt.prototype,"x"),lUt.prototype),m(lUt.prototype,"y",[oUt],Object.getOwnPropertyDescriptor(lUt.prototype,"y"),lUt.prototype),m(lUt.prototype,"grid",[hUt],Object.getOwnPropertyDescriptor(lUt.prototype,"grid"),lUt.prototype),uUt=lUt))||uUt)||uUt));function gUt(t,e,i){var n=i||t.sourceImage,r=n.texture,s=t.collection;if(!t.imageSize.width||!t.imageSize.height){var a=t.sourceImage;t.imageSize.width=a.width,t.imageSize.height=a.height}var o=t.imageSize.width,h=t.imageSize.height,u=t._tileSize.width,l=t._tileSize.height,c=n.width,_=n.height,f=t.spacing,d=t.margin,p=1;if(!s){var m=Math.floor((o-2*d+f)/(u+f)),g=Math.floor((h-2*d+f)/(l+f));p=Math.max(1,g*m)}for(var v=t.firstGid,y=null,S=!!e.get(v),T=t.firstGid+p,A=v;A<T&&(S&&!e.get(A)&&(S=!1),S||!e.get(A));++A){if(y={tileset:t,x:0,y:0,width:u,height:l,t:0,l:0,r:0,b:0,cx:0,cy:0,offsetX:0,offsetY:0,rotated:!1,gid:A,spriteFrame:n,texture:r},t.rectForGID(A,y),!i||p>1||t.imageOffset)if(i){y._name=i.name;var b=i.unbiasUV[0],E=i.rotated?i.unbiasUV[1]:i.unbiasUV[5];y.l=b+(y.x+.5)/c,y.t=E+(y.y+.5)/_,y.r=b+(y.x+y.width-.5)/c,y.b=E+(y.y+y.height-.5)/_,y._rect=new Jn(y.x,y.y,y.width,y.height)}else y.l=y.x/c,y.t=y.y/_,y.r=(y.x+y.width)/c,y.b=(y.y+y.height)/_,y._rect=new Jn(y.x,y.y,y.width,y.height);else i.rotated?(y._rotated=!0,y._name=i.name,y._rect=i.getRect(),y.l=i.unbiasUV[0],y.t=i.unbiasUV[1],y.r=i.unbiasUV[4],y.b=i.unbiasUV[3]):(y._name=i.name,y._rect=i.getRect(),y.l=i.unbiasUV[0],y.t=i.unbiasUV[5],y.r=i.unbiasUV[2],y.b=i.unbiasUV[1]);y.cx=(y.l+y.r)/2,y.cy=(y.t+y.b)/2,e.set(A,y)}}for(var vUt,yUt,SUt,TUt,AUt,bUt,EUt,CUt,xUt,wUt,RUt,IUt,DUt,BUt,MUt,PUt,OUt,LUt,NUt,FUt,kUt,GUt,VUt,UUt,zUt,HUt,WUt,XUt,jUt,YUt,qUt,KUt,QUt=new Vn,ZUt=new jn,JUt=new gn,$Ut=new gn,tzt={row:0,col:0},ezt=t("gB",eo("cc.TiledUserNodeData")(fUt=function(t){function e(){var e;return(e=t.call(this)||this)._index=-1,e._row=-1,e._col=-1,e._tiledLayer=null,e}return s(e,t),e}(mp))||fUt),izt=t("gC",eo("cc.TiledLayer")(dUt=function(t){s(i,t);var e=i.prototype;function i(){var e;return(e=t.call(this)||this)._userNodeGrid={},e._userNodeMap={},e._userNodeDirty=!1,e.tiledTiles=[],e._viewPort={x:-1,y:-1,width:-1,height:-1},e._cullingRect={leftDown:{row:-1,col:-1},rightTop:{row:-1,col:-1}},e._cullingDirty=!0,e._rightTop={row:-1,col:-1},e._layerInfo=null,e._mapInfo=null,e._topOffset=0,e._downOffset=0,e._leftOffset=0,e._rightOffset=0,e.tiles=[],e.vertices=[],e._verticesDirty=!0,e._layerName="",e._layerSize=void 0,e._minGID=void 0,e._maxGID=void 0,e._layerOrientation=null,e._opacity=void 0,e._tintColor=void 0,e.texGrids=null,e._textures=[],e._tilesets=[],e._leftDownToCenterX=0,e._leftDownToCenterY=0,e._hasTiledNodeGrid=!1,e._hasAniGrid=!1,e._animations=null,e._enableCulling=void 0,e.colorChanged=!1,e._properties=void 0,e.renderOrder=void 0,e._staggerAxis=void 0,e._staggerIndex=void 0,e._hexSideLength=void 0,e._mapTileSize=void 0,e._odd_even=void 0,e._diffX1=void 0,e._diffY1=void 0,e._useAutomaticVertexZ=void 0,e._vertexZvalue=void 0,e._offset=void 0,e._tiledDataArray=[],e._cameraNode=void 0,e._drawInfoList=[],e._tiledDataArrayIdx=0,e}return e.requestDrawInfo=function(t){return this._drawInfoList[t]||(this._drawInfoList[t]=new QP,this._drawInfoList[t].setDrawInfoType(zP.MIDDLEWARE)),this._drawInfoList[t]},e.hasTiledNode=function(){return this._hasTiledNodeGrid},e.hasAnimation=function(){return this._hasAniGrid},e.addUserNode=function(t){var e=t.getComponent(ezt);return e?(z("CCTiledLayer:addUserNode node has been added"),!1):(e=t.addComponent(ezt),t.parent=this.node,this._userNodeMap[t.uuid]=e,e._row=-1,e._col=-1,e._tiledLayer=this,this._nodeLocalPosToLayerPos(t.getPosition(),ZUt),this._positionToRowCol(ZUt.x,ZUt.y,tzt),this._addUserNodeToGrid(e,tzt),this._updateCullingOffsetByUserNode(t),t.on(vm.TRANSFORM_CHANGED,this._userNodePosChange,e),t.on(vm.SIZE_CHANGED,this._userNodeSizeChange,e),!0)},e.removeUserNode=function(t){var e=t.getComponent(ezt);return e?(t.off(vm.TRANSFORM_CHANGED,this._userNodePosChange,e),t.off(vm.SIZE_CHANGED,this._userNodeSizeChange,e),this._removeUserNodeFromGrid(e),delete this._userNodeMap[t.uuid],t._removeComponent(e),e.destroy(),t.removeFromParent(),!0):(z("CCTiledLayer:removeUserNode node is not exist"),!1)},e.destroyUserNode=function(t){this.removeUserNode(t),t.destroy()},e._nodeLocalPosToLayerPos=function(t,e){e.x=t.x+this._leftDownToCenterX,e.y=t.y+this._leftDownToCenterY},e.getNodesByRowCol=function(t,e){var i=this._userNodeGrid[t];return i?i[e]:null},e.getNodesCountByRow=function(t){var e=this._userNodeGrid[t];return e?e.count:0},e._updateAllUserNode=function(){for(var t in this._userNodeGrid={},this._userNodeMap){var e=this._userNodeMap[t];this._nodeLocalPosToLayerPos(e.node.getPosition(),ZUt),this._positionToRowCol(ZUt.x,ZUt.y,tzt),this._addUserNodeToGrid(e,tzt),this._updateCullingOffsetByUserNode(e.node)}},e._updateCullingOffsetByUserNode=function(t){var e=t._uiProps.uiTransformComp.contentSize;this._topOffset<e.height&&(this._topOffset=e.height),this._downOffset<e.height&&(this._downOffset=e.height),this._leftOffset<e.width&&(this._leftOffset=e.width),this._rightOffset<e.width&&(this._rightOffset=e.width)},e._userNodeSizeChange=function(){var t=this.node,e=this._tiledLayer;e._updateCullingOffsetByUserNode(t),e._userNodeDirty=!0,e.markForUpdateRenderData()},e._userNodePosChange=function(){var t=this,e=t.node,i=t._tiledLayer;i._nodeLocalPosToLayerPos(e.getPosition(),ZUt),i._positionToRowCol(ZUt.x,ZUt.y,tzt),i._limitInLayer(tzt),tzt.row===t._row&&tzt.col===t._col||(i._removeUserNodeFromGrid(t),i._addUserNodeToGrid(t,tzt))},e._removeUserNodeFromGrid=function(t){var e=t._row,i=t._col,n=t._index,r=this._userNodeGrid[e],s=r&&r[i];s&&(r.count--,s.count--,s.list[n]=null,s.count<=0&&(s.list.length=0,s.count=0)),t._row=-1,t._col=-1,t._index=-1,this._userNodeDirty=!0,this.markForUpdateRenderData()},e._limitInLayer=function(t){var e=t.row,i=t.col;e<0&&(t.row=0),e>this._rightTop.row&&(t.row=this._rightTop.row),i<0&&(t.col=0),i>this._rightTop.col&&(t.col=this._rightTop.col)},e._addUserNodeToGrid=function(t,e){var i=e.row,n=e.col,r=this._userNodeGrid[i]=this._userNodeGrid[i]||{count:0},s=r[n]=r[n]||{count:0,list:[]};t._row=i,t._col=n,t._index=s.list.length,r.count++,s.count++,s.list.push(t),this._userNodeDirty=!0,this.markForUpdateRenderData()},e.isUserNodeDirty=function(){return this._userNodeDirty},e.setUserNodeDirty=function(t){this._userNodeDirty=t},e._reinstallCamera=function(){var t=ID.root.batcher2D.getFirstRenderCamera(this.node),e=null==t?void 0:t.node;return this._cameraNode!==e&&(this._uninstallCamera(),e&&(e.on(vm.TRANSFORM_CHANGED,this.updateCulling,this),e.on(vm.SIZE_CHANGED,this.updateCulling,this),this._cameraNode=e)),t},e._uninstallCamera=function(){this._cameraNode&&(this._cameraNode.off(vm.TRANSFORM_CHANGED,this.updateCulling,this),this._cameraNode.off(vm.SIZE_CHANGED,this.updateCulling,this),delete this._cameraNode)},e.onEnable=function(){t.prototype.onEnable.call(this),this.node.on(vm.ANCHOR_CHANGED,this._syncAnchorPoint,this),this.node.on(vm.TRANSFORM_CHANGED,this.updateCulling,this),this.node.on(vm.SIZE_CHANGED,this.updateCulling,this),this.node.parent.on(vm.TRANSFORM_CHANGED,this.updateCulling,this),this.node.parent.on(vm.SIZE_CHANGED,this.updateCulling,this),this.markForUpdateRenderData(),this.scheduleOnce(this.updateCulling.bind(this))},e.onDisable=function(){var e,i;t.prototype.onDisable.call(this),null===(e=this.node.parent)||void 0===e||e.off(vm.SIZE_CHANGED,this.updateCulling,this),null===(i=this.node.parent)||void 0===i||i.off(vm.TRANSFORM_CHANGED,this.updateCulling,this),this.node.off(vm.SIZE_CHANGED,this.updateCulling,this),this.node.off(vm.TRANSFORM_CHANGED,this.updateCulling,this),this.node.off(vm.ANCHOR_CHANGED,this._syncAnchorPoint,this),this._uninstallCamera()},e._syncAnchorPoint=function(){var t=this.node,e=t._uiProps.uiTransformComp,i=t.getScale();this._leftDownToCenterX=e.width*e.anchorX*i.x,this._leftDownToCenterY=e.height*e.anchorY*i.y,this._cullingDirty=!0,this.markForUpdateRenderData()},e.getLayerName=function(){return this._layerName},e.setLayerName=function(t){this._layerName=t},e.getProperty=function(t){return this._properties[t]},e.getPositionAt=function(t,e){var i;switch(void 0!==e?(i=Math.floor(t),e=Math.floor(e)):(i=Math.floor(t.x),e=Math.floor(t.y)),this._layerOrientation){case DVt.ORTHO:return this._positionForOrthoAt(i,e);case DVt.ISO:return this._positionForIsoAt(i,e);case DVt.HEX:return this._positionForHexAt(i,e)}return null},e.isInvalidPosition=function(t,e){return t>=this._layerSize.width||e>=this._layerSize.height||t<0||e<0},e._positionForIsoAt=function(t,e){var i=0,n=0,r=Math.floor(t)+Math.floor(e)*this._layerSize.width,s=this.tiles[r];if(s){var a=(s&MVt.FLIPPED_MASK)>>>0,o=this.texGrids.get(a).tileset.tileOffset;i=o.x,n=o.y}return new jn(.5*this._mapTileSize.width*(this._layerSize.height+t-e-1)+i,.5*this._mapTileSize.height*(this._layerSize.width-t+this._layerSize.height-e-2)-n)},e._positionForOrthoAt=function(t,e){var i=0,n=0,r=Math.floor(t)+Math.floor(e)*this._layerSize.width,s=this.tiles[r];if(s){var a=(s&MVt.FLIPPED_MASK)>>>0,o=this.texGrids.get(a).tileset.tileOffset;i=o.x,n=o.y}return new jn(t*this._mapTileSize.width+i,(this._layerSize.height-e-1)*this._mapTileSize.height-n)},e._positionForHexAt=function(t,e){var i,n=this._mapTileSize.width,r=this._mapTileSize.height,s=this._layerSize.height,a=Math.floor(t)+Math.floor(e)*this._layerSize.width,o=(this.tiles[a]&MVt.FLIPPED_MASK)>>>0;i=this.texGrids.get(o)?this.texGrids.get(o).tileset.tileOffset:{x:0,y:0};var h=this._staggerIndex===OVt.STAGGERINDEX_ODD?1:-1,u=0,l=0,c=0,_=0;switch(this._staggerAxis){case PVt.STAGGERAXIS_Y:c=0,e%2==1&&(c=n/2*h),u=t*n+c+i.x,l=(s-e-1)*(r-(r-this._hexSideLength)/2)-i.y;break;case PVt.STAGGERAXIS_X:_=0,t%2==1&&(_=r/2*-h),u=t*(n-(n-this._hexSideLength)/2)+i.x,l=(s-e-1)*r+_-i.y}return new jn(u,l)},e.setTilesGIDAt=function(t,e,i,n){if(t&&0!==t.length&&!(n<=0)){i<0&&(i=0),e<0&&(e=0);for(var r=0,s=e+n,a=i;;a++)for(var o=e;o<s;o++){if(r>=t.length)return;this._updateTileForGID(t[r],o,a),r++}}},e.setTileGIDAt=function(t,e,i,n){var r=(t&MVt.FLIPPED_MASK)>>>0;if(e=Math.floor(e),i=Math.floor(i),this.isInvalidPosition(e,i))throw new Error("cc.TiledLayer.setTileGIDAt(): invalid position");this.tiles&&this._tilesets&&0!==this._tilesets.length?0!==r&&r<this._tilesets[0].firstGid?Q(7239,t):(n=n||0,this._updateTileForGID((r|n)>>>0,e,i)):Q(7238)},e._updateTileForGID=function(t,e,i){var n=0|e+i*this._layerSize.width;if(!(n>=this.tiles.length)&&t!==this.tiles[n]){var r=(t&MVt.FLIPPED_MASK)>>>0;this.texGrids.get(r)?(this.tiles[n]=t,this._updateVertex(e,i)):this.tiles[n]=0,this._cullingDirty=!0}},e.getTileGIDAt=function(t,e){if(this.isInvalidPosition(t,e))throw new Error("cc.TiledLayer.getTileGIDAt(): invalid position");if(!this.tiles)return Q(7237),null;var i=Math.floor(t)+Math.floor(e)*this._layerSize.width;return(this.tiles[i]&MVt.FLIPPED_MASK)>>>0},e.getTileFlagsAt=function(t,e){if(this.isInvalidPosition(t,e))throw new Error("TiledLayer.getTileFlagsAt: invalid position");if(!this.tiles)return Q(7240),null;var i=Math.floor(t)+Math.floor(e)*this._layerSize.width;return(this.tiles[i]&MVt.FLIPPED_ALL)>>>0},e.setCullingDirty=function(t){this._cullingDirty=t},e.isCullingDirty=function(){return this._cullingDirty},e.updateViewPort=function(t,e,i,n){if(this._viewPort.width!==i||this._viewPort.height!==n||this._viewPort.x!==t||this._viewPort.y!==e){this._viewPort.x=t,this._viewPort.y=e,this._viewPort.width=i,this._viewPort.height=n;var r=1;this._layerOrientation===DVt.ISO&&(r=2);var s=this._viewPort.x-this._offset.x+this._leftDownToCenterX,a=this._viewPort.y-this._offset.y+this._leftDownToCenterY,o=s-this._leftOffset,h=a-this._downOffset,u=s+i+this._rightOffset,l=a+n+this._topOffset,c=this._cullingRect.leftDown,_=this._cullingRect.rightTop;o<0&&(o=0),h<0&&(h=0),this._positionToRowCol(o,h,tzt),tzt.row-=r,tzt.col-=r,tzt.row=tzt.row>0?tzt.row:0,tzt.col=tzt.col>0?tzt.col:0,tzt.row===c.row&&tzt.col===c.col||(c.row=tzt.row,c.col=tzt.col,this._cullingDirty=!0),u<0||l<0?(tzt.row=-1,tzt.col=-1):(this._positionToRowCol(u,l,tzt),tzt.row++,tzt.col++),tzt.row===_.row&&tzt.col===_.col||(_.row=tzt.row,_.col=tzt.col,this._cullingDirty=!0),this._cullingDirty&&this.markForUpdateRenderData()}},e._positionToRowCol=function(t,e,i){var n=this._mapTileSize.width,r=this._mapTileSize.height,s=.5*n,a=.5*r,o=0,h=0,u=0,l=0,c=this._staggerAxis;switch(this._layerOrientation){case DVt.ORTHO:h=Math.floor(t/n),o=Math.floor(e/r);break;case DVt.ISO:h=Math.floor(t/s),o=Math.floor(e/a);break;case DVt.HEX:c===PVt.STAGGERAXIS_Y?(u=(o=Math.floor(e/(r-this._diffY1)))%2==1?s*this._odd_even:0,h=Math.floor((t-u)/n)):(l=(h=Math.floor(t/(n-this._diffX1)))%2==1?a*-this._odd_even:0,o=Math.floor((e-l)/r))}return i.row=o,i.col=h,i},e.updateCulling=function(){if(this._enableCulling){this.node.updateWorldTransform(),Vn.invert(QUt,this.node.getWorldMatrix());var t=this._reinstallCamera();t&&(JUt.x=0,JUt.y=0,JUt.z=0,$Ut.x=t.width,$Ut.y=t.height,$Ut.z=0,t.screenToWorld(JUt,JUt),t.screenToWorld($Ut,$Ut),gn.transformMat4(JUt,JUt,QUt),gn.transformMat4($Ut,$Ut,QUt),this.updateViewPort(JUt.x,JUt.y,$Ut.x-JUt.x,$Ut.y-JUt.y))}},e.getLayerOrientation=function(){return this._layerOrientation},e.getProperties=function(){return this._properties},e._updateVertex=function(t,e){var i=MVt.FLIPPED_MASK,n=this.vertices,r=this._layerOrientation,s=this.tiles;if(s){var a,o,h,u,l=this._rightTop,c=this._mapTileSize.width,_=this._mapTileSize.height,f=.5*c,d=.5*_,p=this._layerSize.height,m=this._layerSize.width,g=this.texGrids,v=0,y=0;r===DVt.HEX&&(a=this._staggerAxis,o=this._diffX1,h=this._diffY1,u=this._odd_even);var S,T,A,b=0,E=0,C=0,x=0,w=e*m+t;S=(s[w]&i)>>>0;var R=g.get(S);if(R){switch(this._animations.get(S)&&(this._hasAniGrid=this._hasAniGrid||!0),r){case DVt.ORTHO:v=(b=t)*c,y=(E=p-e-1)*_;break;case DVt.ISO:v=f*(b=p+t-e-1),y=d*(E=p+m-t-e-2);break;case DVt.HEX:v=t*(c-o)+(a===PVt.STAGGERAXIS_Y&&e%2==1?f*u:0),y=(p-e-1)*(_-h)+(a===PVt.STAGGERAXIS_X&&t%2==1?d*-u:0),b=t,E=p-e-1}var I=n[E]=n[E]||{minCol:0,maxCol:0},D=I[b]=I[b]||{left:0,bottom:0,index:0};I.minCol>b&&(I.minCol=b),I.maxCol<b&&(I.maxCol=b),l.row<E&&(l.row=E,r===DVt.ISO&&(l.row+=1)),l.col<b&&(l.col=b,r===DVt.ISO&&(l.col+=1));var B=R.tileset.tileOffset;v+=this._offset.x+B.x+R.offsetX,y+=this._offset.y-B.y-R.offsetY,C=(C=-B.y+R.tileset._tileSize.height-_)<0?0:C,T=B.y<0?0:B.y,A=-B.x<0?0:-B.x,x=(x=B.x+R.tileset._tileSize.width-c)<0?0:x,this._rightOffset<A&&(this._rightOffset=A),this._leftOffset<x&&(this._leftOffset=x),this._topOffset<T&&(this._topOffset=T),this._downOffset<C&&(this._downOffset=C),D.left=v,D.bottom=y,D.index=w,this._cullingDirty=!0}}},e._updateVertices=function(){if(this.vertices.length=0,this.tiles){var t=this._rightTop;t.row=-1,t.col=-1;var e=this._layerSize.height,i=this._layerSize.width;this._topOffset=0,this._downOffset=0,this._leftOffset=0,this._rightOffset=0,this._hasAniGrid=!1;for(var n=0;n<e;++n)for(var r=0;r<i;++r)this._updateVertex(r,n);this._verticesDirty=!1}},e.getTiledTileAt=function(t,e,i){if(this.isInvalidPosition(t,e))throw new Error("TiledLayer.getTiledTileAt: invalid position");if(!this.tiles)return Q(7236),null;var n=Math.floor(t)+Math.floor(e)*this._layerSize.width,r=this.tiledTiles[n];if(!r&&i){var s=new hg;return(r=s.addComponent(mUt))._x=t,r._y=e,r._layer=this,r.updateInfo(),s.parent=this.node,r}return r},e.setTiledTileAt=function(t,e,i){if(this.isInvalidPosition(t,e))throw new Error("TiledLayer.setTiledTileAt: invalid position");if(!this.tiles)return Q(7236),null;var n=Math.floor(t)+Math.floor(e)*this._layerSize.width;return this.tiledTiles[n]=i,this._cullingDirty=!0,this._hasTiledNodeGrid=!!i||this.tiledTiles.some((function(t){return!!t})),i},e.getTexture=function(t){return t=t||0,this._textures&&t>=0&&this._textures.length>t?this._textures[t]:null},e.getTextures=function(){return this._textures},e.setTexture=function(t){this.setTextures([t])},e.setTextures=function(t){this._textures=t,this.markForUpdateRenderData()},e.getLayerSize=function(){return this._layerSize},e.getMapTileSize=function(){return this._mapTileSize},e.getTileSet=function(t){return t=t||0,this._tilesets&&t>=0&&this._tilesets.length>t?this._tilesets[t]:null},e.getTileSets=function(){return this._tilesets},e.setTileSet=function(t){this.setTileSets([t])},e.setTileSets=function(t){this._tilesets=t;var e=this._textures=[],i=this.texGrids;i.clear();for(var n=0;n<t.length;n++){var r=t[n];r&&(e[n]=r.sourceImage)}for(var s=0,a=t.length;s<a;++s){var o=t[s];o&&gUt(o,i,o.sourceImage)}this._prepareToRender()},e.init=function(t,e,i,n,r){this._cullingDirty=!0,this._layerInfo=t,this._mapInfo=e;var s=t.layerSize;this._layerName=t.name,this.tiles=t.tiles,this._properties=t.properties,this._layerSize=s,this._minGID=t.minGID,this._maxGID=t.maxGID,this._opacity=t.opacity,t.tintColor&&(this._tintColor=t.tintColor),this.renderOrder=e.renderOrder,this._staggerAxis=e.getStaggerAxis(),this._staggerIndex=e.getStaggerIndex(),this._hexSideLength=e.getHexSideLength(),this._animations=e.getTileAnimations(),this._tilesets=i,this._textures=n,this.texGrids=r,this._layerOrientation=e.orientation,this._mapTileSize=e.getTileSize();var a=this._mapTileSize.width,o=this._mapTileSize.height,h=this._layerSize.width,u=this._layerSize.height;if(this._layerOrientation===DVt.HEX){var l=0,c=0,_=-2&a,f=-2&o;this._odd_even=this._staggerIndex===OVt.STAGGERINDEX_ODD?1:-1,this._staggerAxis===PVt.STAGGERAXIS_X?(this._diffX1=(_-this._hexSideLength)/2,this._diffY1=0,l=(this._diffX1+this._hexSideLength)*h+this._diffX1,c=f*u+f/2):(this._diffX1=0,this._diffY1=(f-this._hexSideLength)/2,l=_*h+_/2,c=(this._diffY1+this._hexSideLength)*u+this._diffY1),this.node._uiProps.uiTransformComp.setContentSize(l,c)}else if(this._layerOrientation===DVt.ISO){var d=h+u;this.node._uiProps.uiTransformComp.setContentSize(.5*a*d,.5*o*d)}else this.node._uiProps.uiTransformComp.setContentSize(h*a,u*o);this._offset=new jn(t.offset.x,-t.offset.y),this._useAutomaticVertexZ=!1,this._vertexZvalue=0,this._syncAnchorPoint(),this._prepareToRender()},e._prepareToRender=function(){this._updateVertices(),this._updateAllUserNode()},e.requestTiledRenderData=function(){for(var t=this._tiledDataArray;t.length>0&&t[t.length-1].subNodes&&0===t[t.length-1].subNodes.length;)t.pop();if(t.length>0){var e=t[t.length-1];if(e.renderData&&0===e.renderData.vertexCount)return e}var i={renderData:null,texture:null};return this._tiledDataArray.push(i),i},e.requestSubNodesData=function(){var t=this._tiledDataArray;if(t.length>0&&t[t.length-1].subNodes&&0===t[t.length-1].subNodes.length)return t[t.length-1];var e={subNodes:[]};return this._tiledDataArray.push(e),e},e.destroyRenderData=function(){this._tiledDataArray.forEach((function(t){var e=t.renderData;e&&gO.remove(e)})),this._tiledDataArray.length=0,t.prototype.destroyRenderData.call(this)},e._flushAssembler=function(){var t=i.Assembler.getAssembler(this);this._assembler!==t&&(this._assembler=t,this._assembler.createData(this)),0===this._tiledDataArray.length&&(this.markForUpdateRenderData(),this._updateColor())},e._render=function(t){for(var e=0;e<this._tiledDataArray.length;e++){this._tiledDataArrayIdx=e;var i=this._tiledDataArray[e];if(i.subNodes)i.subNodes.forEach((function(e){e&&t.walk(e.node)}));else{var n=i;n.texture&&t.commitComp(this,n.renderData,n.texture,this._assembler,null)}}this.node._static=!0},e.createRenderEntity=function(){return new dO(ZP.CROSSED)},e.fillIndicesBuffer=function(t,e){var i=t.chunk.meshBuffer.iData,n=t.chunk.meshBuffer.indexOffset;e.setIndexOffset(n);for(var r=t.chunk.vertexOffset,s=t.vertexCount/4,a=0;a<s;a+=1)i[n]=r,i[n+1]=r+1,i[n+2]=r+2,i[n+3]=r+2,i[n+4]=r+1,i[n+5]=r+3,n+=6,r+=4;t.chunk.meshBuffer.indexOffset=n,e.setIBCount(6*s)},e.prepareDrawData=function(){var t=this;this._drawInfoList.length=0;var e=this.renderEntity;e.clearDynamicRenderDrawInfos();var i=this._tiledDataArray,n=0;i.forEach((function(i){if(i.subNodes)i.subNodes.forEach((function(i){if(i){t._drawInfoList[n]||(t._drawInfoList[n]=new QP);var r=t._drawInfoList[n];r.setDrawInfoType(zP.SUB_NODE),r.setSubNode(i.node),e.setDynamicRenderDrawInfo(r,n),n++}}));else{var r=i;if(r.texture){t._drawInfoList[n]||(t._drawInfoList[n]=new QP);var s=t._drawInfoList[n];r.renderData.fillDrawInfoAttributes(s),s.setTexture(r.texture.getGFXTexture()),s.setSampler(r.texture.getGFXSampler()),s.setMaterial(t.getRenderMaterial(0)),t.fillIndicesBuffer(r.renderData,s),e.setDynamicRenderDrawInfo(s,n),n++}}}))},n(i,[{key:"cullingRect",get:function(){return this._cullingRect}},{key:"rightTop",get:function(){return this._rightTop}},{key:"layerSize",get:function(){return this._layerSize}},{key:"tiledDataArray",get:function(){return this._tiledDataArray}},{key:"leftDownToCenterX",get:function(){return this._leftDownToCenterX}},{key:"leftDownToCenterY",get:function(){return this._leftDownToCenterY}},{key:"enableCulling",get:function(){return this._enableCulling},set:function(t){this._enableCulling!==t&&(this._enableCulling=t,this._cullingDirty=!0,this.markForUpdateRenderData())}}]),i}(XO))||dUt),nzt=t("gD",(vUt=eo("cc.TiledObjectGroup"),yUt=io(wO),SUt=Lo(ri),vUt(TUt=yUt((m((AUt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._premultiplyAlpha=!1,e._groupName=void 0,e._positionOffset=void 0,e._mapInfo=void 0,e._properties=void 0,e._offset=void 0,e._opacity=void 0,e._tintColor=null,e._animations=void 0,e._hasAniObj=void 0,e._texGrids=void 0,e.aniObjects=void 0,e._objects=[],e}s(e,t);var i=e.prototype;return i.getPositionOffset=function(){return this._positionOffset},i.getProperties=function(){return this._properties},i.getGroupName=function(){return this._groupName},i.getProperty=function(t){return this._properties[t.toString()]},i.getObject=function(t){for(var e=0,i=this._objects.length;e<i;e++){var n=this._objects[e];if(n&&n.name===t)return n}return null},i.getObjects=function(){return this._objects},i._init=function(t,e,i){var n=MVt.FLIPPED_MASK,r=MVt.HORIZONTAL,s=MVt.VERTICAL;this._groupName=t.name,this._positionOffset=t.offset,this._mapInfo=e,this._properties=t.getProperties(),this._offset=new jn(t.offset.x,-t.offset.y),this._opacity=t.opacity,t.tintColor&&(this._tintColor=t.tintColor),this._texGrids=i,this._animations=e.getTileAnimations(),this.aniObjects=[],this._hasAniObj=!1;var a=e.mapSize,o=e.tileSize,h=0,u=0,l=new En,c=DVt.ISO===e.orientation;if(e.orientation===DVt.HEX)e.getStaggerAxis()===PVt.STAGGERAXIS_X?(u=o.height*(a.height+.5),h=(o.width+e.getHexSideLength())*Math.floor(a.width/2)+o.width*(a.width%2)):(h=o.width*(a.width+.5),u=(o.height+e.getHexSideLength())*Math.floor(a.height/2)+o.height*(a.height%2));else if(c){var _=a.width+a.height;h=.5*o.width*_,u=.5*o.height*_}else h=a.width*o.width,u=a.height*o.height;var f=this.node._uiProps.uiTransformComp;f.setContentSize(h,u);for(var d=h*f.anchorX,p=u*(1-f.anchorY),m=t.objects,g={},v=0,y=m.length;v<y;v++){var S=m[v],T=S.type;S.offset=new jn(S.x,S.y);var A=S.points||S.polylinePoints;if(A)for(var b=0;b<A.length;b++)A[b].y*=-1;if(c){var E=S.x/o.height,C=S.y/o.height;S.x=.5*o.width*(a.height+E-C),S.y=.5*o.height*(a.width+a.height-E-C)}else S.y=u-S.y;if(T===NVt.TEXT){var x="text"+S.id;g[x]=!0;var w=this.node.getChildByName(x);w||(w=new hg),w.setRotationFromEuler(0,0,-S.rotation),w.setPosition(S.x-d,S.y-p),w.name=x,w.parent=this.node,w.setSiblingIndex(v),w.layer=this.node.layer;var R=w.getComponent(OL);R||(R=w.addComponent(OL));var I=w._uiProps.uiTransformComp;w.active=S.visible,I.anchorX=0,I.anchorY=1,this._tintColor?(l.set(this._tintColor),l.a*=this._opacity/255,R.color.set(l)):R.color.a*=this._opacity/255,R.overflow=OL.Overflow.SHRINK,R.lineHeight=S.height,R.string=S.text,R.horizontalAlign=S.halign,R.verticalAlign=S.valign,R.fontSize=S.pixelsize,I.setContentSize(S.width,S.height)}else if(T===NVt.IMAGE){var D=S.gid,B=(D&n)>>>0,M=i.get(B);if(!M)continue;var P=M.tileset,O="img"+S.id;g[O]=!0;var L=this.node.getChildByName(O);S.width=S.width||M.width,S.height=S.height||M.height,L&&L._objFlags&Ms.Flags.HideInHierarchy&&(L.removeFromParent(),L.hideFlags|=Ms.Flags.DontSave,L.destroy(),L=null),L||(L=new hg),this._animations.get(B)&&(this.aniObjects.push({object:S,imgNode:L,gridGID:B}),this._hasAniObj=!0);var N=P.tileOffset.x,F=P.tileOffset.y;L.active=S.visible,L.setRotationFromEuler(0,0,-S.rotation),L.setPosition(S.x-d,S.y-p),L.name=O,L.parent=this.node,L.setSiblingIndex(v),L.layer=this.node.layer;var k=L.getComponent(PF);k||(k=L.addComponent(PF));var G=L._uiProps.uiTransformComp;c?(G.anchorX=.5+N/S.width,G.anchorY=F/S.height):(G.anchorX=N/S.width,G.anchorY=F/S.height),this._tintColor?(l.set(this._tintColor),l.a*=this._opacity/255,k.color.set(l)):k.color.a*=this._opacity/255,k.sizeMode=PF.SizeMode.CUSTOM;var V=this._premultiplyAlpha?vc.ONE:vc.SRC_ALPHA;k.srcBlendFactor!==V&&(k.srcBlendFactor=V,k.material&&k._updateBlendFunc());var U=M.spriteFrame;U=U?U.clone():new SM,(D&r)>>>0&&(U.flipUVX=!U.flipUVX),(D&s)>>>0&&(U.flipUVY=!U.flipUVY),U.rotated=M._rotated,U.rect=M._rect,k.spriteFrame=U,G.setContentSize(S.width,S.height),k.markForUpdateRenderData()}}this._objects=m;for(var z=this.node.children,H=/^(?:img|text)\d+$/,W=0,X=z.length;W<X;W++){var j=z[W],Y=j.name;H.test(Y)&&!g[Y]&&j.destroy()}},i.update=function(){if(this._hasAniObj)for(var t=this.aniObjects,e=this._texGrids,i=DVt.ISO===this._mapInfo.orientation,n=0,r=t.length;n<r;n++){var s=t[n],a=s.gridGID,o=e.get(a);if(o){var h=o.tileset,u=s.object,l=s.imgNode,c=h.tileOffset.x,_=h.tileOffset.y,f=l._uiProps.uiTransformComp;i?(f.anchorX=.5+c/u.width,f.anchorY=_/u.height):(f.anchorX=c/u.width,f.anchorY=_/u.height);var d=l.getComponent(PF),p=d.spriteFrame;p.rotated=o._rotated,p.rect=o._rect,d.spriteFrame=p,d.markForUpdateRenderData()}}},n(e,[{key:"premultiplyAlpha",get:function(){return this._premultiplyAlpha},set:function(t){this._premultiplyAlpha=t}},{key:"offset",get:function(){return this._offset}}]),e}(mp)).prototype,"premultiplyAlpha",[SUt],Object.getOwnPropertyDescriptor(AUt.prototype,"premultiplyAlpha"),AUt.prototype),TUt=AUt))||TUt)||TUt)),rzt=t("gA",(bUt=eo("cc.TiledMapAsset"),EUt=Lo([jS]),CUt=Lo([si]),xUt=Lo([SM]),wUt=Lo([SM]),RUt=Lo([si]),IUt=Lo([si]),DUt=Lo([Qn]),bUt((MUt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).tmxXmlStr=PUt&&PUt(),e.tsxFiles=OUt&&OUt(),e.tsxFileNames=LUt&&LUt(),e.spriteFrames=NUt&&NUt(),e.imageLayerSpriteFrame=FUt&&FUt(),e.imageLayerSpriteFrameNames=kUt&&kUt(),e.spriteFrameNames=GUt&&GUt(),e.spriteFrameSizes=VUt&&VUt(),e}return s(e,t),e}(vd),PUt=ja(MUt.prototype,"tmxXmlStr",[lo],(function(){return""})),OUt=ja(MUt.prototype,"tsxFiles",[lo,EUt],(function(){return[]})),LUt=ja(MUt.prototype,"tsxFileNames",[lo,CUt],(function(){return[]})),NUt=ja(MUt.prototype,"spriteFrames",[lo,xUt],(function(){return[]})),FUt=ja(MUt.prototype,"imageLayerSpriteFrame",[lo,wUt],(function(){return[]})),kUt=ja(MUt.prototype,"imageLayerSpriteFrameNames",[lo,RUt],(function(){return[]})),GUt=ja(MUt.prototype,"spriteFrameNames",[lo,IUt],(function(){return[]})),VUt=ja(MUt.prototype,"spriteFrameSizes",[lo,DUt],(function(){return[]})),BUt=MUt))||BUt)),szt=(t("gz",(UUt=eo("cc.TiledMap"),zUt=io(wO),HUt=Lo(rzt),UUt(WUt=zUt(((KUt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._texGrids=new Map,e._textures=[],e._tilesets=[],e._animations=new Map,e._imageLayers=[],e._layers=[],e._groups=[],e._images=[],e._properties={},e._tileProperties=new Map,e._mapInfo=null,e._mapSize=new Qn(0,0),e._tileSize=new Qn(0,0),e._mapOrientation=DVt.ORTHO,e._isApplied=!1,e._tmxFile=jUt&&jUt(),e._enableCulling=YUt&&YUt(),e.cleanupImageCache=qUt&&qUt(),e}s(e,t);var i=e.prototype;return i.getMapSize=function(){return this._mapSize},i.getTileSize=function(){return this._tileSize},i.getMapOrientation=function(){return this._mapOrientation},i.getObjectGroups=function(){return this._groups},i.getObjectGroup=function(t){for(var e=this._groups,i=0,n=e.length;i<n;i++){var r=e[i];if(r&&r.getGroupName()===t)return r}return null},i.getProperties=function(){return this._properties},i.getLayers=function(){return this._layers},i.getLayer=function(t){for(var e=this._layers,i=0,n=e.length;i<n;i++){var r=e[i];if(r&&r.getLayerName()===t)return r}return null},i._changeLayer=function(t,e){for(var i=this._layers,n=0,r=i.length;n<r;n++){var s=i[n];if(s&&s.getLayerName()===t)return void(i[n]=e)}},i.getProperty=function(t){return this._properties[t.toString()]},i.getPropertiesForGID=function(t){return this._tileProperties.get(t)},i.__preload=function(){this._tmxFile&&!1===this._isApplied&&(this._applyFile(),this._isApplied=!0)},i.onEnable=function(){this.node.on(vm.ANCHOR_CHANGED,this._syncAnchorPoint,this)},i.onDisable=function(){this.node.off(vm.ANCHOR_CHANGED,this._syncAnchorPoint,this)},i._applyFile=function(){var t=[],e={},i=this._tmxFile;if(i){for(var n=i.spriteFrameNames,r=i.spriteFrameSizes,s=i.spriteFrames,a={},o={},h=0;h<n.length;++h){var u=n[h];o[u]=r[h],t[h]=s[h];var l=t[h];l&&(e[l.name]=l,a[u]=l)}var c={},_=i.imageLayerSpriteFrame;n=i.imageLayerSpriteFrameNames;for(var f=0;f<_.length;++f)c[n[f]]=_[f];for(var d=i.tsxFileNames,p=i.tsxFiles,m={},g=0;g<d.length;++g)d[g].length>0&&(m[d[g]]=p[g].text);var v=new pUt(i.tmxXmlStr,m,a,o,c),y=v.getTilesets();y&&0!==y.length||Q(7241),this._buildWithMapInfo(v)}else this._releaseMapInfo()},i._releaseMapInfo=function(){for(var t=this._layers,e=0,i=t.length;e<i;e++){var n,r;null===(n=t[e].node.parent)||void 0===n||n.off(vm.SIZE_CHANGED,t[e].updateCulling,t[e]),null===(r=t[e].node.parent)||void 0===r||r.off(vm.TRANSFORM_CHANGED,t[e].updateCulling,t[e]),t[e].node.removeFromParent(),t[e].node.destroy()}t.length=0;for(var s=this._groups,a=0,o=s.length;a<o;a++)s[a].node.removeFromParent(),s[a].node.destroy();s.length=0;for(var h=this._images,u=0,l=h.length;u<l;u++)h[u].removeFromParent(),h[u].destroy();h.length=0},i._syncAnchorPoint=function(){var t,e,i=this.node._uiProps.uiTransformComp.anchorPoint,n=this.node._uiProps.uiTransformComp.width*i.x,r=this.node._uiProps.uiTransformComp.height*(1-i.y);for(t=0,e=this._layers.length;t<e;t++)this._layers[t].node._uiProps.uiTransformComp.setAnchorPoint(i);for(t=0,e=this._groups.length;t<e;t++){var s=this._groups[t],a=s.node._uiProps.uiTransformComp;a.anchorX=.5,a.anchorY=.5;var o=s.offset.x-n+a.width*a.anchorX,h=s.offset.y+r-a.height*a.anchorY;s.node.setPosition(o,h)}for(t=0,e=this._images.length;t<e;t++){var u=this._images[t]._uiProps.uiTransformComp;u.anchorX=.5,u.anchorY=.5;var l=this._images[t]._offset.x-n+u.width*u.anchorX,c=this._images[t]._offset.y+r-u.height*u.anchorY;this._images[t].setPosition(l,c)}},i._fillAniGrids=function(t,e){for(var i,n=f(e.keys());!(i=n()).done;){var r=i.value,s=e.get(r);if(s)for(var a=s.frames,o=0;o<a.length;o++){var h=a[o];h.grid=t.get(h.tileid)}}},i._buildLayerAndGroup=function(){var t=this._tilesets,e=this._texGrids,i=this._animations;e.clear();for(var n=0,r=t.length;n<r;++n){var s=t[n];s&&(s.sourceImage?gUt(s,e,s.sourceImage):console.warn("Can't find the spriteFrame of tilesets "+n))}this._fillAniGrids(e,i);for(var a=this._layers,o=this._groups,h=this._images,u={},l=0,c=a.length;l<c;l++)u[a[l].node.name]=!0;for(var _=0,f=o.length;_<f;_++)u[o[_].node.name]=!0;for(var d=0,p=h.length;d<p;d++)u[h[d].name]=!0;a=this._layers=[],o=this._groups=[],h=this._images=[];var m=this._mapInfo,g=this.node,v=m.getAllChildren(),y=this._textures,S=0,T=0;if(v&&v.length>0)for(var A=0,b=v.length;A<b;A++){var E=v[A],C=E.name,x=this.node.getChildByName(C);if(u[C]=!1,x||((x=new hg).name=C,x.layer=g.layer,g.addChild(x)),x.setSiblingIndex(A),x.active=E.visible,E instanceof QVt){var w=x.getComponent(izt);w||(w=x.addComponent(izt)),w.init(E,m,t,y,e),w.enableCulling=this._enableCulling,E.ownTiles=!1,a.push(w)}else if(E instanceof KVt){var R=x.getComponent(nzt);R||(R=x.addComponent(nzt)),R._init(E,m,e),o.push(R)}else if(E instanceof ZVt){var I=E.sourceImage;x.layerInfo=E,x._offset=new jn(E.offset.x,-E.offset.y);var D=x.getComponent(PF);D||(D=x.addComponent(PF)),D.color.a*=E.opacity,D.spriteFrame=I;var B=I.width,M=I.height;I.original&&(B=I.originalSize.width,M=I.originalSize.height),x._uiProps.uiTransformComp.setContentSize(B,M),h.push(x)}S=Math.max(S,x._uiProps.uiTransformComp.width),T=Math.max(T,x._uiProps.uiTransformComp.height)}for(var P=g.children,O=0,L=P.length;O<L;O++){var N=P[O];u[N.name]&&N.destroy()}this.node._uiProps.uiTransformComp.setContentSize(S,T),this._syncAnchorPoint()},i._buildWithMapInfo=function(t){var e=this;this._mapInfo=t,this._mapSize=t.getMapSize(),this._tileSize=t.getTileSize(),this._mapOrientation=t.orientation,this._properties=t.properties,this._tileProperties=t.getTileProperties(),this._imageLayers=t.getImageLayers(),this._animations=t.getTileAnimations(),this._tilesets=t.getTilesets();var i=this._tilesets;this._textures.length=0;for(var n=[],r=0,s=i.length;r<s;++r){var a=i[r];a&&a.sourceImage&&(this._textures[r]=a.sourceImage,n.push(a.sourceImage))}for(var o=0;o<this._imageLayers.length;o++){var h=this._imageLayers[o];h&&h.sourceImage&&n.push(h.sourceImage)}this._buildLayerAndGroup(),this.cleanupImageCache&&this._textures.forEach((function(t){e.doCleanupImageCache(t)}))},i.doCleanupImageCache=function(t){t._image instanceof HTMLImageElement?t._image.src="":Sa.hasFeature(Sa.Feature.IMAGE_BITMAP)&&t._image instanceof ImageBitmap&&t._image.close&&t._image.close(),t._image=null},i.lateUpdate=function(t){for(var e,i=this._animations,n=this._texGrids,r=f(i.keys());!(e=r()).done;){var s=e.value,a=i.get(s),o=a.frames,h=o[a.frameIdx];a.dt+=t,h.duration<a.dt&&(a.dt=0,a.frameIdx++,a.frameIdx>=o.length&&(a.frameIdx=0),h=o[a.frameIdx]),n.set(s,h.grid)}for(var u=this.getLayers(),l=0,c=u.length;l<c;l++){var _=u[l];(_.hasAnimation()||_.node.hasChangedFlags)&&_.markForUpdateRenderData()}},n(e,[{key:"tmxAsset",get:function(){return this._tmxFile},set:function(t){this._tmxFile!==t&&(this._tmxFile=t,this._applyFile(),this._isApplied=!0)}},{key:"enableCulling",get:function(){return this._enableCulling},set:function(t){this._enableCulling=t;for(var e=this._layers,i=0;i<e.length;++i)e[i].enableCulling=t}}]),e}(mp)).Orientation=DVt,KUt.Property=BVt,KUt.TileFlag=MVt,KUt.StaggerAxis=PVt,KUt.StaggerIndex=OVt,KUt.TMXObjectType=NVt,KUt.RenderOrder=LVt,jUt=ja((XUt=KUt).prototype,"_tmxFile",[lo],(function(){return null})),m(XUt.prototype,"tmxAsset",[HUt],Object.getOwnPropertyDescriptor(XUt.prototype,"tmxAsset"),XUt.prototype),YUt=ja(XUt.prototype,"_enableCulling",[lo],(function(){return!0})),qUt=ja(XUt.prototype,"cleanupImageCache",[lo],(function(){return!0})),WUt=XUt))||WUt)||WUt)),Math.ceil(10922.5)),azt=[],ozt=0;ozt<4;ozt++)azt.push(new gn);var hzt,uzt,lzt,czt=new Vn,_zt=new gn,fzt={row:0,col:0},dzt={x:0,y:0},pzt={x:0,y:0},mzt={x:0,y:0},gzt={x:0,y:0},vzt=0,yzt=0,Szt=0,Tzt=0,Azt=null,bzt=null,Ezt={ensureAccessor:function(){if(!bzt){var t=ID.root.device;ID.root.batcher2D,bzt=new YP(t,PP,this.vCount),ID.on(wD.EVENT_BEFORE_DRAW,(function(){bzt.reset()}))}},createData:function(){},fillBuffers:function(t){if(t&&0!==t.tiledDataArray.length){for(var e=t.tiledDataArray[t._tiledDataArrayIdx].renderData,i=e.chunk.meshBuffer.iData,n=e.chunk.meshBuffer.indexOffset,r=e.chunk.vertexOffset,s=e.vertexCount/4,a=0;a<s;a+=1)i[n]=r,i[n+1]=r+1,i[n+2]=r+2,i[n+3]=r+2,i[n+4]=r+1,i[n+5]=r+3,n+=6,r+=4;e.chunk.meshBuffer.indexOffset=n}},updateRenderData:function(t){if(t.updateCulling(),yzt=t.leftDownToCenterX,Szt=t.leftDownToCenterY,t.colorChanged||t.isCullingDirty()||t.isUserNodeDirty()||t.hasAnimation()||t.hasTiledNode()||t.node.hasChangedFlags){var e,i;if(t.colorChanged=!1,t.destroyRenderData(),t.enableCulling){var n=t.cullingRect;e=n.leftDown,i=n.rightTop}else e=fzt,i=t.rightTop;switch(t.renderOrder){case LVt.RightDown:wzt(e,i,-1,1,t);break;case LVt.LeftDown:wzt(e,i,-1,-1,t);break;case LVt.RightUp:wzt(e,i,1,1,t);break;case LVt.LeftUp:default:wzt(e,i,1,-1,t)}t.setCullingDirty(!1),t.setUserNodeDirty(!1)}},updateColor:function(t){var e=t.color,i=new Float32Array(4);i[0]=e.r/255,i[1]=e.g/255,i[2]=e.b/255,i[3]=e.a/255;for(var n,r=f(t.tiledDataArray);!(n=r()).done;){var s=n.value;if(s.renderData)for(var a=s.renderData,o=a.vData,h=a.vertexStart,u=a.vertexCount;h<u;h++)o.set(i,9*h+5)}}};function Czt(t,e){var i;t._rotated?(dzt.x=t.r,dzt.y=t.t,pzt.x=t.l,pzt.y=t.t,mzt.x=t.r,mzt.y=t.b,gzt.x=t.l,gzt.y=t.b):(dzt.x=t.l,dzt.y=t.t,pzt.x=t.l,pzt.y=t.b,mzt.x=t.r,mzt.y=t.t,gzt.x=t.r,gzt.y=t.b),(e&MVt.DIAGONAL)>>>0&&(i=pzt,pzt=mzt,mzt=i),(e&MVt.HORIZONTAL)>>>0&&(i=dzt,dzt=mzt,mzt=i,i=pzt,pzt=gzt,gzt=i),(e&MVt.VERTICAL)>>>0&&(i=dzt,dzt=pzt,pzt=i,i=mzt,mzt=gzt,gzt=i)}function xzt(){if(!(Tzt<1)&&Azt){var t=4*Tzt,e=6*Tzt,i=uzt.requestTiledRenderData();i.renderData=gO.add(PP),i.texture=Azt;var n=i.renderData;n.resize(t,e),n.chunk.vb.set(hzt.subarray(0,9*t),0),Tzt=0,Azt=null}}function wzt(t,e,i,n,r){if(!(e.row<0||e.col<0)){uzt=r;var s=r.node.worldMatrix;vzt=0;var a,o,h,u,l,c,_,f,d,p=r.tiledTiles,m=r.texGrids,g=r.tiles,v=18,y=27,S=r.vertices,T=0,A=0,b=0,E=0,C=0,x=0,w=!0;lzt=Czt;var R=new Float32Array(4);R[0]=r.color.r/255,R[1]=r.color.g/255,R[2]=r.color.b/255,R[3]=r.color.a/255,-1===i?(u=e.row,l=t.row):(u=t.row,l=e.row);var I=Math.abs(t.row-e.row)+1,D=Math.abs(e.col-t.col)+1;hzt=new Float32Array(I*D*36),Tzt=0;for(var B=hzt;(l-u)*i>=0;u+=i)for(a=S[u],x=r.getNodesCountByRow(u),w=a&&0===x,1===n?(o=w&&t.col<a.minCol?a.minCol:t.col,h=w&&e.col>a.maxCol?a.maxCol:e.col):(o=w&&e.col>a.maxCol?a.maxCol:e.col,h=w&&t.col<a.minCol?a.minCol:t.col);(h-o)*n>=0;o+=n){if(c=a&&a[o],x>0){xzt();var M=r.requestSubNodesData(),P=r.getNodesByRowCol(u,o);P&&P.count>0&&(M.subNodes=P.list)}c&&(T=g[c.index],(f=m.get((T&MVt.FLIPPED_MASK)>>>0))&&(Azt!==f.texture&&(xzt(),Azt=f.texture),_=f.tileset._tileSize,A=c.left-yzt,b=c.bottom-Szt,E=A+_.width,C=b+_.height,d=p[c.index],vzt=36*Tzt,d?d.node.active&&Rzt(d.node,R,B,A,E,C,b,!1):(azt[0].x=A,azt[0].y=C,azt[1].x=A,azt[1].y=b,azt[2].x=E,azt[2].y=C,azt[3].x=E,azt[3].y=b,azt[0].transformMat4(s),B[vzt]=azt[0].x,B[vzt+1]=azt[0].y,B[vzt+2]=azt[0].z,azt[1].transformMat4(s),B[vzt+9]=azt[1].x,B[vzt+9+1]=azt[1].y,B[vzt+9+2]=azt[1].z,azt[2].transformMat4(s),B[vzt+v]=azt[2].x,B[vzt+v+1]=azt[2].y,B[vzt+v+2]=azt[2].z,azt[3].transformMat4(s),B[vzt+y]=azt[3].x,B[vzt+y+1]=azt[3].y,B[vzt+y+2]=azt[3].z,B.set(R,vzt+5),B.set(R,vzt+9+5),B.set(R,vzt+v+5),B.set(R,vzt+y+5)),lzt(f,T),B[vzt+3]=dzt.x,B[vzt+4]=dzt.y,B[vzt+9+3]=pzt.x,B[vzt+9+4]=pzt.y,B[vzt+v+3]=mzt.x,B[vzt+v+4]=mzt.y,B[vzt+y+3]=gzt.x,B[vzt+y+4]=gzt.y,++Tzt>=szt&&xzt()))}xzt()}}function Rzt(t,e,i,n,r,s,a,o){var h=18,u=27;t.updateWorldTransform(),Vn.fromRTS(czt,t.rotation,t.position,t.scale),gn.set(_zt,-(n+yzt),-(a+Szt),0),Vn.transform(czt,czt,_zt),Vn.multiply(czt,t.parent.worldMatrix,czt);var l=czt,c=l.m12,_=l.m13,f=l.m00,d=l.m01,p=l.m04,m=l.m05,g=1===f&&0===d&&0===p&&1===m;if(o){var v=(n+r)/2,y=(s+a)/2;g?(i[vzt]=v+c,i[vzt+1]=s+_,i[vzt+9]=n+c,i[vzt+9+1]=y+_,i[vzt+h]=r+c,i[vzt+h+1]=y+_,i[vzt+u]=v+c,i[vzt+u+1]=a+_):(i[vzt]=v*f+s*p+c,i[vzt+1]=v*d+s*m+_,i[vzt+9]=n*f+y*p+c,i[vzt+9+1]=n*d+y*m+_,i[vzt+h]=r*f+y*p+c,i[vzt+h+1]=r*d+y*m+_,i[vzt+u]=v*f+a*p+c,i[vzt+u+1]=v*d+a*m+_)}else g?(i[vzt]=n+c,i[vzt+1]=s+_,i[vzt+9]=n+c,i[vzt+9+1]=a+_,i[vzt+h]=r+c,i[vzt+h+1]=s+_,i[vzt+u]=r+c,i[vzt+u+1]=a+_):(i[vzt]=n*f+s*p+c,i[vzt+1]=n*d+s*m+_,i[vzt+9]=n*f+a*p+c,i[vzt+9+1]=n*d+a*m+_,i[vzt+h]=r*f+s*p+c,i[vzt+h+1]=r*d+s*m+_,i[vzt+u]=r*f+a*p+c,i[vzt+u+1]=r*d+a*m+_);i.set(e,vzt+5),i.set(e,vzt+9+5),i.set(e,vzt+h+5),i.set(e,vzt+u+5)}var Izt=t("gF",{getAssembler:function(){return Ezt}});izt.Assembler=Izt;var Dzt=new gn,Bzt=new gn;function Mzt(t,e){var i=null;return{value:e.length>0?e[e.length-1]:gn.ZERO,progress:function(t,e,n,r){return i.getPoint(r)},clone:function(t){return gn.clone(t)},add:function(t,e){return t.clone().add(e)},sub:function(t,e){return t.clone().subtract(e)},onStart:function(n){var r=n.start,s=n.end,a=n.relative,o=n.reversed;(i=Sl.create(t)).addKnot(r);var h=null;a&&o&&(h=Bzt,gn.subtract(h,r,e[e.length-1]));for(var u=0,l=e.length;u<l;++u){var c=o?e[l-1-u]:e[u];a?o?u>0&&i.addKnot(gn.copy(Dzt,h).add(c)):i.addKnot(gn.copy(Dzt,r).add(c)):i.addKnot(c)}a&&o&&i.addKnot(s)},onComplete:function(){i=null},onStop:function(){i=null},legacyProgress:!1}}t("gG",Object.freeze({__proto__:null,bezier:function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return Mzt(ul.BEZIER,e)},catmullRom:function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return Mzt(ul.CATMULL_ROM,e)}}));var Pzt=function(){function t(){this.originalTarget=null,this.target=null,this.workerTarget=null,this.tag=t.TAG_INVALID,this._id=void 0,this._paused=!1}var e=t.prototype;return e.isDone=function(){return!0},e.startWithTarget=function(t){this.originalTarget=t,this.target=t},e.stop=function(){this.target=null},e.getTarget=function(){return this.target},e.setTarget=function(t){this.target=t},e.getOriginalTarget=function(){return this.originalTarget},e.setOriginalTarget=function(t){this.originalTarget=t},e.getTag=function(){return this.tag},e.setTag=function(t){this.tag=t},e.setId=function(t){this._id=t},e.getId=function(){return this._id},e.setPaused=function(t){this._paused=t},t}();Pzt.TAG_INVALID=-1;var Ozt=function(t){function e(){var e;return(e=t.call(this)||this)._duration=0,e}s(e,t);var i=e.prototype;return i.getDurationScaled=function(){return this._duration},i.getDuration=function(){return this._duration},i.setDuration=function(t){this._duration=t},e}(Pzt),Lzt=function(){this.actions=[],this.target=null,this.actionIndex=0,this.currentAction=null,this.paused=!1,this.lock=!1},Nzt=function(){function t(){this._hashTargets=new Map,this._arrayTargets=[],this._currentTarget=void 0,this._elementPool=[]}var e=t.prototype;return e._getElement=function(t,e){var i=this._elementPool.pop();return i||(i=new Lzt),i.target=t,i.paused=!!e,i},e._putElement=function(t){t.actions.length=0,t.actionIndex=0,t.currentAction=null,t.paused=!1,t.target=null,t.lock=!1,this._elementPool.push(t)},e._onNodeActiveChanged=function(t,e){e?this.resumeTarget(t):this.pauseTarget(t)},e._onNodeDestroy=function(t){this._removeAllActionsFromTarget(t,!1)},e._registerNodeEvent=function(t){t.isValid&&(t.on(vm.ACTIVE_CHANGED,this._onNodeActiveChanged,this),t.on(vm.NODE_DESTROYED,this._onNodeDestroy,this))},e._unregisterNodeEvent=function(t){t.isValid&&(t.off(vm.ACTIVE_CHANGED,this._onNodeActiveChanged,this),t.off(vm.NODE_DESTROYED,this._onNodeDestroy,this))},e.addAction=function(t,e,i){if(t&&e){var n=this._hashTargets.get(e);n?n.actions||(n.actions=[]):(n=this._getElement(e,i),this._hashTargets.set(e,n),this._arrayTargets.push(n)),0===n.actions.length&&e instanceof hg&&this._registerNodeEvent(e),n.target=e,n.actions.push(t),t.startWithTarget(e)}else it(1e3)},e.removeAllActions=function(){for(var t=this._arrayTargets,e=0;e<t.length;e++){var i=t[e];i&&(i.target instanceof hg&&this._unregisterNodeEvent(i.target),this._putElement(i))}this._arrayTargets.length=0,this._hashTargets=new Map},e.removeAllActionsFromTarget=function(t){this._removeAllActionsFromTarget(t,!0)},e._removeAllActionsFromTarget=function(t,e){if(null!=t){var i=this._hashTargets.get(t);i&&(e&&t instanceof hg&&this._unregisterNodeEvent(t),i.actions.length=0,this._deleteHashElement(i))}},e.removeAction=function(t){if(null!=t){var e=t.getOriginalTarget(),i=this._hashTargets.get(e);if(i)for(var n=0;n<i.actions.length;n++)if(i.actions[n]===t){i.actions.splice(n,1),i.actionIndex>=n&&i.actionIndex--;break}}},e._removeActionByTag=function(t,e,i){for(var n=0,r=e.actions.length;n<r;++n){var s=e.actions[n];if(s&&s.getTag()===t){if(i&&s.getOriginalTarget()!==i)continue;this._removeActionAtIndex(n,e);break}}},e._removeAllActionsByTag=function(t,e,i){for(var n=e.actions.length-1;n>=0;--n){var r=e.actions[n];if(r&&r.getTag()===t){if(i&&r.getOriginalTarget()!==i)continue;this._removeActionAtIndex(n,e)}}},e.removeActionByTag=function(t,e){var i=this;t===Pzt.TAG_INVALID&&Q(1002);var n=this._hashTargets;if(e){var r=n.get(e);r&&this._removeActionByTag(t,r,e)}else n.forEach((function(e){i._removeActionByTag(t,e)}))},e.removeAllActionsByTag=function(t,e){var i=this;t===Pzt.TAG_INVALID&&Q(1002);var n=this._hashTargets;if(e){var r=n.get(e);r&&this._removeAllActionsByTag(t,r,e)}else n.forEach((function(e){i._removeAllActionsByTag(t,e)}))},e.getActionByTag=function(t,e){t===Pzt.TAG_INVALID&&Q(1004);var i=this._hashTargets.get(e);if(i){if(null!=i.actions)for(var n=0;n<i.actions.length;++n){var r=i.actions[n];if(r&&r.getTag()===t)return r}Q(1005,t)}return null},e.getNumberOfRunningActionsInTarget=function(t){var e=this._hashTargets.get(t);return e&&e.actions?e.actions.length:0},e.pauseTarget=function(t){var e=this._hashTargets.get(t);e&&(e.paused=!0)},e.resumeTarget=function(t){var e=this._hashTargets.get(t);e&&(e.paused=!1)},e.pauseAllRunningActions=function(){for(var t=[],e=this._arrayTargets,i=0;i<e.length;i++){var n=e[i];n&&!n.paused&&(n.paused=!0,n.target&&t.push(n.target))}return t},e.resumeTargets=function(t){if(t)for(var e=0;e<t.length;e++)t[e]&&this.resumeTarget(t[e])},e.pauseTargets=function(t){if(t)for(var e=0;e<t.length;e++)t[e]&&this.pauseTarget(t[e])},e.isActionRunning=function(t){var e=this._hashTargets.get(t.getOriginalTarget()),i=-1;return e&&(i=e.actions.indexOf(t)),-1!==i},e._removeActionAtIndex=function(t,e){e.actions.splice(t,1),e.actionIndex>=t&&e.actionIndex--,0===e.actions.length&&(e.target instanceof hg&&this._unregisterNodeEvent(e.target),this._deleteHashElement(e))},e._deleteHashElement=function(t){var e=!1;if(t&&!t.lock&&this._hashTargets.get(t.target)){this._hashTargets.delete(t.target);for(var i=this._arrayTargets,n=0,r=i.length;n<r;n++)if(i[n]===t){i.splice(n,1);break}this._putElement(t),e=!0}return e},e.update=function(t){for(var e,i=this._arrayTargets,n=0;n<i.length;n++){this._currentTarget=i[n];var r=(e=this._currentTarget).target;if(!Ps(r)||r.isValid){if(!e.paused&&e.actions){for(e.lock=!0,e.actionIndex=0;e.actionIndex<e.actions.length;e.actionIndex++)if(e.currentAction=e.actions[e.actionIndex],e.currentAction){if(e.currentAction.step(t),e.currentAction&&e.currentAction.isDone()){e.currentAction.stop();var s=e.currentAction;e.currentAction=null,this.removeAction(s)}e.currentAction=null}e.lock=!1}0===e.actions.length&&(r instanceof hg&&this._unregisterNodeEvent(r),this._deleteHashElement(e)&&n--)}else this.removeAllActionsFromTarget(r),n--}},t}(),Fzt=t("gH",function(t){function e(){var e;return(e=t.call(this)||this).actionMgr=new Nzt,e}return s(e,t),e.prototype.update=function(t){this.actionMgr.update(t)},n(e,[{key:"ActionManager",get:function(){return this.actionMgr}}]),e}(Ml));Fzt.ID="TWEEN",Fzt.instance=void 0,ID.on(wD.EVENT_INIT,(function(){var t=new Fzt;Fzt.instance=t,ID.registerSystem(Fzt.ID,t,Ml.Priority.MEDIUM)}));var kzt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.isDone=function(){return!0},i.step=function(){this.update(1)},i.update=function(){},i.reverse=function(){return this.clone()},i.isUnknownDuration=function(){return!1},e}(Ozt),Gzt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.update=function(){var t,e=null!==(t=this.workerTarget)&&void 0!==t?t:this.target;if(e)for(var i=e.getComponentsInChildren(WO),n=0;n<i.length;++n)i[n].enabled=!0},i.reverse=function(){return new Vzt},i.clone=function(){var t=new e;return t._id=this._id,t},e}(kzt),Vzt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.update=function(){var t,e=null!==(t=this.workerTarget)&&void 0!==t?t:this.target;if(e)for(var i=e.getComponentsInChildren(WO),n=0;n<i.length;++n)i[n].enabled=!1},i.reverse=function(){return new Gzt},i.clone=function(){var t=new e;return t._id=this._id,t},e}(kzt);!function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;i.update=function(){var t,e=null!==(t=this.workerTarget)&&void 0!==t?t:this.target;if(e)for(var i=e.getComponentsInChildren(WO),n=0;n<i.length;++n){var r=i[n];r.enabled=!r.enabled}},i.reverse=function(){return new e},i.clone=function(){var t=new e;return t._id=this._id,t}}(kzt);var Uzt=function(t){function e(e){var i;return(i=t.call(this)||this)._isNeedCleanUp=!0,void 0!==e&&i.init(e),i}s(e,t);var i=e.prototype;return i.update=function(){var t,e=null!==(t=this.workerTarget)&&void 0!==t?t:this.target;e&&(e.removeFromParent(),this._isNeedCleanUp&&e.destroy())},i.init=function(t){return this._isNeedCleanUp=t,!0},i.reverse=function(){return new e(this._isNeedCleanUp)},i.clone=function(){var t=new e(this._isNeedCleanUp);return t._id=this._id,t},e}(kzt);function zzt(t){return new Uzt(t)}var Hzt=function(t){function e(e,i,n){var r;return(r=t.call(this)||this)._callbackThis=void 0,r._callback=void 0,r._data=void 0,r.initWithFunction(e,i,n),r}s(e,t);var i=e.prototype;return i.initWithFunction=function(t,e,i){return t&&(this._callback=t),e&&(this._callbackThis=e),void 0!==i&&(this._data=i),!0},i.execute=function(){if(this._callback){var t,e=null!==(t=this.workerTarget)&&void 0!==t?t:this.target;this._callback.call(this._callbackThis,e,this._data)}},i.update=function(){this.execute()},i.getTargetCallback=function(){return this._callbackThis},i.setTargetCallback=function(t){t!==this._callbackThis&&(this._callbackThis=t)},i.clone=function(){var t=new e;return t._id=this._id,this._callback&&t.initWithFunction(this._callback,this._callbackThis,this._data),t},e}(kzt),Wzt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.clone=function(){return new e},i.reverse=function(){return this.clone()},i.update=function(){},i.step=function(){},i.isUnknownDuration=function(){return!1},e}(Ozt),Xzt=function(t){function e(e){var i;return(i=t.call(this)||this).MAX_VALUE=2,i._elapsed=0,i._startTime=0,i._firstTick=!1,i._speed=1,void 0===e||Number.isNaN(e)||i.initWithDuration(e),i}s(e,t);var i=e.prototype;return i.setStartTime=function(t){t=t<0?0:t>this._duration?this._duration:t,this._startTime=t},i.getElapsed=function(){return this._elapsed},i.initWithDuration=function(t){return this._duration=0===t?Pe.FLT_EPSILON:t,this._elapsed=0,this._firstTick=!0,!0},i.isDone=function(){return this._elapsed>=this._duration},i._cloneDecoration=function(t){t._speed=this._speed},i.step=function(t){if(!this._paused&&0!==this._speed){t*=this._speed,this._firstTick?this._elapsed=this._startTime:this._elapsed+=t;var e=this._elapsed/(this._duration>1.192092896e-7?this._duration:1.192092896e-7);e=e<1?e:1,this.update(e>0?e:0),this.isUnknownDuration()&&!this._firstTick&&(this._elapsed-=t),this._firstTick&&(this._firstTick=!1,this._startTime>0&&(this._startTime=0))}},i.startWithTarget=function(e){t.prototype.startWithTarget.call(this,e),this._elapsed=0,this._firstTick=!0},i.getSpeed=function(){return this._speed},i.setSpeed=function(t){this._speed=t},i.getDurationScaled=function(){return this._duration/this._speed},e}(Ozt),jzt=function(t){function e(i){var n;if((n=t.call(this)||this)._actions=[],n._split=0,n._last=0,n._reversed=!1,!i||0===i.length)return c(n);1===i.length&&i.push(new Wzt);var r=i.length-1;if(r>=0&&null==i[r]&&Q(1015),r>=0){for(var s,a=i[0],o=1;o<r;o++)i[o]&&(s=a,a=e._actionOneTwo(s,i[o]));n.initWithTwoActions(a,i[r])}return n}s(e,t),e._actionOneTwo=function(t,i){var n=new e;return n.initWithTwoActions(t,i),n};var i=e.prototype;return i.initWithTwoActions=function(t,e){if(!t||!e)return it(1025),!1;var i=t.getDurationScaled()+e.getDurationScaled();return this.initWithDuration(i),this._actions[0]=t,this._actions[1]=e,!0},i.clone=function(){var t=new e;return t._id=this._id,t._speed=this._speed,this._cloneDecoration(t),t.initWithTwoActions(this._actions[0].clone(),this._actions[1].clone()),t},i.startWithTarget=function(e){t.prototype.startWithTarget.call(this,e),0!==this._actions.length&&(this._split=this._actions[0].getDurationScaled()/this._duration,this._last=-1)},i.stop=function(){0!==this._actions.length&&(-1!==this._last&&this._actions[this._last].stop(),t.prototype.stop.call(this))},i.update=function(t){var e=this._actions;if(0!==e.length){var i=0,n=0,r=this._split,s=this._last;if(t<r){if(i=0!==r?t/r:1,0===n&&1===s&&this._reversed){var a=e[1];if(a.update(0),a.isUnknownDuration())return;a.stop()}}else{var o=e[0];if(n=1,i=1===r?1:(t-r)/(1-r),-1===s){if(o.startWithTarget(this.target),o.update(1),o.isUnknownDuration())return;o.stop()}if(0===s){if(o.update(1),o.isUnknownDuration())return;o.stop()}}var h=e[n];s===n&&h.isDone()||(s!==n&&h.startWithTarget(this.target),h.update(i>1?i%1:i),this._last=n)}},i.reverse=function(){var t=e._actionOneTwo(this._actions[1].reverse(),this._actions[0].reverse());return this._cloneDecoration(t),t._reversed=!0,t},i.updateWorkerTarget=function(t){if(!(this._actions.length<2)){this._actions[1].workerTarget=t;var i=this._actions[0];i instanceof e||i instanceof Zzt?i.updateWorkerTarget(t):i.workerTarget=t}},i.findAction=function(t){for(var i=0,n=this._actions.length;i<n;++i){var r=this._actions[i];if(r.getId()===t)return r;if((r instanceof e||r instanceof Zzt)&&(r=r.findAction(t))&&r.getId()===t)return r}return null},i.isUnknownDuration=function(){if(0===this._actions.length)return!1;var t=this._actions[0],e=this._actions[1];return this._last<1?t.isUnknownDuration():e.isUnknownDuration()},e}(Xzt);function Yzt(t){return new jzt(t)}var qzt=function(t){function e(e,i){var n;return(n=t.call(this)||this)._times=0,n._total=0,n._nextDt=0,n._actionInstant=!1,n._innerAction=null,n.initWithAction(e,i),n}s(e,t);var i=e.prototype;return i.initWithAction=function(t,e){if(!t||void 0===e)return!1;var i=t.getDurationScaled()*e;return!!this.initWithDuration(i)&&(this._times=e,this._innerAction=t,t instanceof kzt&&(this._actionInstant=!0,this._times-=1),this._total=0,!0)},i.clone=function(){var t=new e;return t._id=this._id,t._speed=this._speed,this._cloneDecoration(t),this._innerAction&&t.initWithAction(this._innerAction.clone(),this._times),t},i.startWithTarget=function(e){this._total=0,this._nextDt=(this._innerAction?this._innerAction.getDurationScaled():0)/this._duration,t.prototype.startWithTarget.call(this,e),this._innerAction&&this._innerAction.startWithTarget(e)},i.stop=function(){this._innerAction&&this._innerAction.stop(),t.prototype.stop.call(this)},i.update=function(t){var e=this._innerAction,i=this._duration,n=this._times,r=this._nextDt;if(e)if(t>=r){for(;t>r&&this._total<n;){if(e.update(1),e.isUnknownDuration())return;this._total++,e.stop(),e.startWithTarget(this.target),r+=e.getDurationScaled()/i,this._nextDt=r>1?1:r}if(t>=1&&this._total<n){if(e.update(1),e.isUnknownDuration())return;this._total++}this._actionInstant||(this._total===n?e.stop():e.update(t-(r-e.getDurationScaled()/i)))}else e.update(t*n%1)},i.isDone=function(){return this._total===this._times},i.reverse=function(){var t=new e(this._innerAction?this._innerAction.reverse():void 0,this._times);return this._cloneDecoration(t),t},i.setInnerAction=function(t){this._innerAction!==t&&(this._innerAction=t)},i.getInnerAction=function(){return this._innerAction},i.isUnknownDuration=function(){return!!this._innerAction&&this._innerAction.isUnknownDuration()},e}(Xzt);function Kzt(t,e){return new qzt(t,e)}var Qzt=function(t){function e(e){var i;return(i=t.call(this)||this)._innerAction=null,e&&i.initWithAction(e),i}s(e,t);var i=e.prototype;return i.initWithAction=function(t){return t?(this._innerAction=t,this._duration=1/0,!0):(it(1026),!1)},i.clone=function(){var t=new e;return t._id=this._id,t._speed=this._speed,this._cloneDecoration(t),this._innerAction&&t.initWithAction(this._innerAction.clone()),t},i.startWithTarget=function(e){t.prototype.startWithTarget.call(this,e),this._innerAction&&this._innerAction.startWithTarget(e)},i.stop=function(){this._innerAction&&this._innerAction.stop(),t.prototype.stop.call(this)},i.step=function(t){if(!this._paused&&0!==this._speed){var e=this._innerAction;e&&(t*=this._speed,e.step(t),e.isDone()&&(e.startWithTarget(this.target),e.step(e.getElapsed()-e.getDurationScaled())))}},i.update=function(){Q(1007)},i.isDone=function(){return!1},i.reverse=function(){if(this._innerAction){var t=new e(this._innerAction.reverse());return this._cloneDecoration(t),t}return this},i.setInnerAction=function(t){this._innerAction!==t&&(this._innerAction=t)},i.getInnerAction=function(){return this._innerAction},i.isUnknownDuration=function(){return!!this._innerAction&&this._innerAction.isUnknownDuration()},e}(Xzt),Zzt=function(t){function e(i){var n;if((n=t.call(this)||this)._one=null,n._two=null,n._finished=!1,!i||0===i.length)return c(n);1===i.length&&i.push(new Wzt);var r=i.length-1;if(r>=0&&null==i[r]&&Q(1015),r>=0){for(var s,a=i[0],o=1;o<r;o++)i[o]&&(s=a,a=e._actionOneTwo(s,i[o]));n.initWithTwoActions(a,i[r])}return n}s(e,t),e._actionOneTwo=function(t,i){var n=new e;return n.initWithTwoActions(t,i),n};var i=e.prototype;return i.initWithTwoActions=function(t,e){if(!t||!e)return it(1027),!1;var i=!1,n=t.getDurationScaled(),r=e.getDurationScaled();return this.initWithDuration(Math.max(n,r))&&(this._one=t,this._two=e,n>r?this._two=jzt._actionOneTwo(e,$zt(n-r)):n<r&&(this._one=jzt._actionOneTwo(t,$zt(r-n))),i=!0),i},i.clone=function(){var t=new e;return t._id=this._id,t._speed=this._speed,this._cloneDecoration(t),this._one&&this._two&&t.initWithTwoActions(this._one.clone(),this._two.clone()),t},i.startWithTarget=function(e){t.prototype.startWithTarget.call(this,e),this._one&&this._one.startWithTarget(e),this._two&&this._two.startWithTarget(e)},i.stop=function(){this._one&&this._one.stop(),this._two&&this._two.stop(),t.prototype.stop.call(this)},i.update=function(t){this._one&&(this._finished&&!this._one.isUnknownDuration()||this._one.update(t)),this._two&&(this._finished&&!this._two.isUnknownDuration()||this._two.update(t)),this._finished=1===t},i.reverse=function(){if(this._one&&this._two){var t=e._actionOneTwo(this._one.reverse(),this._two.reverse());return this._cloneDecoration(t),t}return this},i.updateWorkerTarget=function(t){if(this._one&&this._two){this._two.workerTarget=t;var i=this._one;i instanceof e||i instanceof jzt?i.updateWorkerTarget(t):i.workerTarget=t}},i.findAction=function(t){var i=this._one,n=this._two,r=null,s=function(i){if(i.getId()===t)return i;if(i instanceof jzt||i instanceof e){var n=i.findAction(t);if(n)return n}return null};return i&&(r=s(i))||n&&(r=s(n))?r:null},i.isUnknownDuration=function(){var t=this._one,e=this._two;if(null==t||null==e)return!1;var i=t.isUnknownDuration(),n=e.isUnknownDuration();if(i||n){if(i&&n)return!0;if(this._finished)return!0}return!1},e}(Xzt),Jzt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.update=function(){},i.reverse=function(){var t=new e(this._duration);return this._cloneDecoration(t),t},i.clone=function(){var t=new e;return t._id=this._id,t._speed=this._speed,this._cloneDecoration(t),t.initWithDuration(this._duration),t},i.isUnknownDuration=function(){return!1},e}(Xzt);function $zt(t){return new Jzt(t)}var tHt,eHt,iHt,nHt,rHt,sHt,aHt,oHt,hHt,uHt,lHt,cHt,_Ht,fHt,dHt,pHt,mHt,gHt,vHt,yHt,SHt,THt,AHt,bHt,EHt,CHt,xHt,wHt,RHt,IHt,DHt,BHt=function(t){function e(e){var i;return(i=t.call(this)||this)._other=null,e&&i.initWithAction(e),i}s(e,t);var i=e.prototype;return i.initWithAction=function(e){return e?e===this._other?(it(1029),!1):!!t.prototype.initWithDuration.call(this,e.getDurationScaled())&&(this._other=e,!0):(it(1028),!1)},i.clone=function(){var t=new e;return t._id=this._id,t._speed=this._speed,this._cloneDecoration(t),this._other&&t.initWithAction(this._other.clone()),t},i.startWithTarget=function(e){t.prototype.startWithTarget.call(this,e),this._other&&this._other.startWithTarget(e)},i.update=function(t){this._other&&this._other.update(1-t)},i.reverse=function(){return this._other?this._other.clone():this},i.stop=function(){this._other&&this._other.stop(),t.prototype.stop.call(this)},i.isUnknownDuration=function(){return!1},e}(Xzt),MHt=function(t){function e(e,i,n){var r;return(r=t.call(this,e)||this)._cb=i,r._args=n,r}s(e,t);var i=e.prototype;return i.clone=function(){return new e(this._duration,this._cb,this._args)},i.update=function(t){this._cb.apply(this,[this.target,t].concat(this._args))},i.reverse=function(){return this.clone()},i.isUnknownDuration=function(){return!1},e}(Xzt),PHt=function(t){function e(e,i){var n;return(n=t.call(this)||this)._finished=!1,n._cb=e,n._args=i,n}s(e,t);var i=e.prototype;return i.clone=function(){return new e(this._cb,this._args)},i.reverse=function(){return this.clone()},i.step=function(){throw new Error("should never go here")},i.update=function(){var t=S.game.deltaTime;this._finished=this._cb.apply(this,[this.target,t].concat(this._args))},i.isDone=function(){return this._finished},i.isUnknownDuration=function(){return!this.isDone()},e}(Ozt),OHt=t("gI",function(t){function e(e,i,n){var r;if((r=t.call(this)||this)._reversed=!1,null==n)n=Object.create(null);else if(function(t){var e=" [Tween:] ",i=" option is not support in v + "+T,n=t;n.delay&&z(e+"delay"+i),n.repeat&&z(e+"repeat"+i),n.repeatDelay&&z(e+"repeatDelay"+i),n.interpolation&&z(e+"interpolation"+i),n.onStop&&z(e+"onStop"+i)}(n),n.easing&&"string"==typeof n.easing&&(n.easing=function(t){var e=t.charAt(0);if(/[A-Z]/.test(e)){var i=(t=t.replace(e,e.toLowerCase())).split("-");if(2===i.length){var n=i[0];if("linear"===n)t="linear";else{var r=i[1];switch(n){case"quadratic":t="quad"+r;break;case"quartic":t="quart"+r;break;case"quintic":t="quint"+r;break;case"sinusoidal":t="sine"+r;break;case"exponential":t="expo"+r;break;case"circular":t="circ"+r;break;default:t=n+r}}}}return t}(n.easing)),n.progress||(n.progress=r.progress),n.easing&&"string"==typeof n.easing){var s=n.easing;n.easing=qh[s],n.easing||tt(1031,s)}for(var a in r._opts=n,r._props=Object.create(null),i){var o;if(i.hasOwnProperty(a)){var h=i[a];if("function"==typeof h)h=h();else if(null==h)continue;var u=void 0,l=void 0,c=void 0;void 0!==h.value?("function"==typeof(c=h.value)&&(c=c()),void 0!==h.easing&&("string"==typeof h.easing?(u=qh[h.easing])||tt(1031,h.easing):u=h.easing),void 0!==h.progress&&(l=h.progress)):c=h;var _=Object.create(null);_.start=_.current=_.end=null,_.keys=null,_.value=c,_.easing=u,_.progress=l,_.convert=h.convert,_.clone=h.clone,_.add=h.add,_.sub=h.sub,_.legacyProgress=null===(o=h.legacyProgress)||void 0===o||o,_.toFixed=h.toFixed,_.onStart=h.onStart,_.onStop=h.onStop,_.onComplete=h.onComplete,_.valid=!0,r._props[a]=_}}return r._originProps=i,r.initWithDuration(e),r}s(e,t);var i=e.prototype;return i.clone=function(){var t=new e(this._duration,this._originProps,this._opts);return t._reversed=this._reversed,t.workerTarget=this.workerTarget,t._id=this._id,this._cloneDecoration(t),t},i.reverse=function(){if(!this._opts.relative)return tt(16382),new e(0,{});var t=new e(this._duration,this._originProps,this._opts);return this._cloneDecoration(t),t._reversed=!this._reversed,t.workerTarget=this.workerTarget,t},i.startWithTarget=function(e){var i;t.prototype.startWithTarget.call(this,e);var n=null!==(i=this.workerTarget)&&void 0!==i?i:this.target;if(n){var r=!!this._opts.relative,s=this._props,a=this._reversed,o=function(){var t=n[h];if(void 0===t)return 0;var e=s[h],i=e.value;if("number"==typeof t)e.start=t,e.current=t,e.end=r?a?t-i:t+i:i;else if("object"==typeof t)if(e.legacyProgress){if(null==e.start){var o=t.constructor;e.start=new o,e.current=new o,e.end=new o}var u;u=i.getModifiableProperties?i.getModifiableProperties():Object.keys(i),e.keys=u;for(var l=0,c=u.length;l<c;++l){var _=u[l];isNaN(t[_])||(e.start[_]=t[_],e.current[_]=t[_],e.end[_]=r?a?t[_]-i[_]:t[_]+i[_]:i[_])}}else{var f=e.clone;if(!f)return tt(16383,h),e.valid=!1,0;var d=e.add,p=e.sub;if(r&&(d||(tt(16384,h),e.valid=!1),a&&!p&&(tt(16385,h),e.valid=!1),!e.valid))return 0;e.start=f(t),e.current=f(t),e.end=r?a?p(t,i):d(t,i):f(i)}else if("string"==typeof t){var m=e.convert,g=function(t){if("number"==typeof t)return t;var e=t;return m&&(e=m(t)),"number"!=typeof e&&(e=Number(e),Number.isNaN(e))?(tt(16386,""+t),null):e},v=g(i),y=g(t);if(null==v||null==y)return e.valid=!1,0;e.start=y,e.current=t,e.end=r?a?y-v:y+v:v}e.onStart&&e.onStart({relative:r,reversed:a,start:e.start,end:e.end})};for(var h in s)o();this._opts.onStart&&this._opts.onStart(n)}},i.stop=function(){var e=this._props;for(var i in e){var n=e[i];n.valid&&n.onStop&&n.onStop()}t.prototype.stop.call(this)},i.update=function(t){var e,i=null!==(e=this.workerTarget)&&void 0!==e?e:this.target;if(i&&this._opts){var n=this._props,r=this._opts,s=t;"function"==typeof r.easing&&(s=r.easing(t));var a=r.progress;for(var o in n){var h=n[o];if(h.valid){var u=h.easing?h.easing(t):s,l=h.progress?h.progress:a,c=h.start,_=h.end,f=h.current;if("number"==typeof f)h.current=l(c,_,h.current,u);else if("object"==typeof c)if(h.legacyProgress)for(var d=h.keys,p=0,m=d.length;p<m;++p){var g=d[p];h.current[g]=l(c[g],_[g],h.current[g],u)}else h.current=l(c,_,h.current,u);else if("string"==typeof f){var v,y=l(c,_,h.current,u);if("number"==typeof y)y=y.toFixed(null!==(v=h.toFixed)&&void 0!==v?v:0);else if("string"!=typeof y){tt(16387);continue}h.current=y}i[o]=h.current,1===t&&h.onComplete&&h.onComplete()}}r.onUpdate&&r.onUpdate(i,t),1===t&&r.onComplete&&r.onComplete(i)}},i.progress=function(t,e,i,n){return t+(e-t)*n},i.isUnknownDuration=function(){return!1},n(e,[{key:"relative",get:function(){return!!this._opts.relative}}]),e}(Xzt)),LHt=function(t){function e(e){var i;return(i=t.call(this)||this)._props=void 0,i._props={},e&&i.init(e),i}s(e,t);var i=e.prototype;return i.init=function(t){for(var e in t)this._props[e]=t[e];return!0},i.update=function(){var t=this._props,e=this.target;for(var i in t)e[i]=t[i]},i.clone=function(){var t=new e;return t._id=this._id,t.init(this._props),t},i.isUnknownDuration=function(){return!1},e}(kzt),NHt=t("gJ",function(){function t(t){this._actions=[],this._finalAction=null,this._target=null,this._tag=Pzt.TAG_INVALID,this._timeScale=1,this._target=void 0===t?null:t}var e=t.prototype;return e.tag=function(t){return this._tag=t,this},e.id=function(t){function e(e){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(t){return this._actions.length>0&&this._actions[this._actions.length-1].setId(t),this})),e.then=function(t){var e=t._union(!0);return e&&(e.setSpeed(t._timeScale),this._actions.push(e)),this},e.reverse=function(e,i){if(null==e&&null==i)return this.reverseTween();var n,r;if(e instanceof t?(n=e,void 0!==i&&(r=i)):"number"==typeof e&&(n=this,r=e),n){var s=t.reverseAction(n,r);s&&this._actions.push(s)}return this},e.reverseTween=function(){if(0===this._actions.length)return tt(16388),this.clone(this._target);var t=this._union(!1),e=FHt(this._target);return e._timeScale=this._timeScale,t&&e.insertAction(t.reverse()),e},t.reverseAction=function(t,e){var i=t._actions;if(0===i.length)return null;var n=null,r=null;return"number"==typeof e?n=t.findAction(e,i):t&&(n=t._union(!1)),n?(r=n.reverse()).workerTarget=t._target:tt(16391,""+e),r},e.findAction=function(t,e){for(var i=null,n=0,r=e.length;n<r;++n){if((i=e[n]).getId()===t)return i;if((i instanceof jzt||i instanceof Zzt)&&(i=i.findAction(t)))return i}return null},e.insertAction=function(t){var e=t.clone();return this.updateWorkerTargetForAction(e),this._actions.push(e),this},e.updateWorkerTargetForAction=function(t){t&&(t instanceof jzt||t instanceof Zzt?t.updateWorkerTarget(this._target):t.workerTarget=this._target)},e.target=function(t){function e(e){return t.apply(this,arguments)}return e.toString=function(){return t.toString()},e}((function(t){this._target=t;for(var e=0,i=this._actions.length;e<i;++e){var n=this._actions[e];this.updateWorkerTargetForAction(n)}return this})),e.getTarget=function(){return this._target},e.start=function(t){if(void 0===t&&(t=0),!this._target)return tt(16392),this;this._finalAction&&Fzt.instance.ActionManager.removeAction(this._finalAction);var e=this._unionForStart();return this._finalAction=e,e?(e.setTag(this._tag),e.setSpeed(this._timeScale),e.setStartTime(t),e.setPaused(!1),Fzt.instance.ActionManager.addAction(e,this._target,!1)):tt(16393),this},e.stop=function(){return this._finalAction&&(this._finalAction.stop(),Fzt.instance.ActionManager.removeAction(this._finalAction),this._finalAction=null),this},e.pause=function(){return this._finalAction?this._finalAction.setPaused(!0):tt(16389),this},e.resume=function(){return this._finalAction?this._finalAction.setPaused(!1):tt(16390),this},e.clone=function(t){var e=this._union(!1),i=FHt(null!=t?t:this._target);return i._timeScale=this._timeScale,e?i.insertAction(e):i},e.union=function(t){var e,i=this;if(void 0===t)return e=i._union(!1),i._actions.length=0,e&&i._actions.push(e),this;var n=this._actions,r=n.findIndex((function(e){return e.getId()===t}));if(n.length>1){var s=n.splice(r);1===s.length?n.push(s[0]):n.push(Yzt(s))}return this},e.to=function(t,e,i){var n=i||Object.create(null);n.relative=!1;var r=new OHt(t,e,n);return this._actions.push(r),this},e.by=function(t,e,i){var n=i||Object.create(null);n.relative=!0;var r=new OHt(t,e,n);return this._actions.push(r),this},e.update=function(t,e){for(var i=arguments.length,n=new Array(i>2?i-2:0),r=2;r<i;r++)n[r-2]=arguments[r];var s=new MHt(t,e,n);return this._actions.push(s),this},e.updateUntil=function(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];var r=new PHt(t,i);return this._actions.push(r),this},e.set=function(t){var e=new LHt(t);return this._actions.push(e),this},e.delay=function(t){var e=$zt(t);return this._actions.push(e),this},e.call=function(t,e,i){var n=function(t,e,i){return new Hzt(t,e,i)}(t,e,i);return this._actions.push(n),this},e.sequence=function(){for(var e=arguments.length,i=new Array(e),n=0;n<e;n++)i[n]=arguments[n];var r=t._wrappedSequence(i);return r&&this._actions.push(r),this},e.parallel=function(){for(var e=arguments.length,i=new Array(e),n=0;n<e;n++)i[n]=arguments[n];var r=t._wrappedParallel(i);return r&&this._actions.push(r),this},e.timeScale=function(t){return this._timeScale=t,this._finalAction&&this._finalAction.setSpeed(t),this},e.getTimeScale=function(){return this._timeScale},e.repeat=function(e,i){if(e===1/0)return this.repeatForever(i);var n,r=this._actions;return(n=i instanceof t?i._union(!1):r.pop())&&r.push(Kzt(n,e)),this},e.repeatForever=function(e){var i,n=this._actions;return(i=e instanceof t?e._union(!1):n.pop())&&0!==n.length?n.push(Kzt(i,Number.MAX_SAFE_INTEGER)):i instanceof Xzt?n.push(function(t){return new Qzt(t)}(i)):tt(16394),this},e.reverseTime=function(e){var i,n=this._actions;return(i=e instanceof t?e._union(!1):n.pop())instanceof Xzt?n.push(function(t){return new BHt(t)}(i)):tt(16395),this},e.hide=function(){if(this._target instanceof hg){var t=new Vzt;this._actions.push(t)}return this},e.show=function(){if(this._target instanceof hg){var t=new Gzt;this._actions.push(t)}return this},e.removeSelf=function(){if(this._target instanceof hg){var t=zzt(!1);this._actions.push(t)}return this},e.destroySelf=function(){if(this._target instanceof hg){var t=zzt(!0);this._actions.push(t)}return this},t.getRunningCount=function(t){return Fzt.instance.ActionManager.getNumberOfRunningActionsInTarget(t)},t.stopAll=function(){Fzt.instance.ActionManager.removeAllActions()},t.stopAllByTag=function(t,e){Fzt.instance.ActionManager.removeAllActionsByTag(t,e)},t.stopAllByTarget=function(t){Fzt.instance.ActionManager.removeAllActionsFromTarget(t)},t.pauseAllByTarget=function(t){Fzt.instance.ActionManager.pauseTarget(t)},t.resumeAllByTarget=function(t){Fzt.instance.ActionManager.resumeTarget(t)},e._union=function(t){var e=this._actions;if(0===e.length)return null;var i=Yzt(e);return t&&this.updateWorkerTargetForAction(i),i},e._unionForStart=function(){var t=this._actions;return 0===t.length?null:1===t.length&&t[0]instanceof Qzt?t[0]:Yzt(t)},t._tweenToActions=function(e){var i=t._tmp_args;i.length=0;for(var n=e.length,r=0;r<n;r++){var s=e[r],a=s._union(!0);a&&(a.setSpeed(s._timeScale),i.push(a))}},t._wrappedSequence=function(e){return t._tweenToActions(e),Yzt(t._tmp_args)},t._wrappedParallel=function(e){return t._tweenToActions(e),i=t._tmp_args,new Zzt(i);var i},n(t,[{key:"running",get:function(){return!!this._finalAction&&Fzt.instance.ActionManager.isActionRunning(this._finalAction)}},{key:"duration",get:function(){return this._finalAction?this._finalAction.getDuration():0}}]),t}());function FHt(t){return new NHt(t)}function kHt(t){return tt(16396),new NHt(t)}NHt._tmp_args=[],S.Tween=NHt,S.tween=FHt,S.tweenUtil=kHt,function(t){t[t.Other=0]="Other",t[t.Left=1]="Left",t[t.Right=2]="Right"}(tHt||(tHt={})),function(t){t.XRUI_HOVER_ENTERED="xrui-hover-entered",t.XRUI_HOVER_EXITED="xrui-hover-exited",t.XRUI_HOVER_STAY="xrui-hover-stay",t.XRUI_CLICK="xrui-click",t.XRUI_UNCLICK="xrui-unclick"}(eHt||(eHt={})),function(t){t.XR_CAPS_LOCK="xr-caps-lock",t.XR_KEYBOARD_INIT="xr-keyboard-init",t.XR_KEYBOARD_INPUT="xr-keyboard-input",t.TO_LATIN="to-latin",t.TO_SYMBOL="to-symbol",t.TO_MATH_SYMBOL="to-math-symbol"}(iHt||(iHt={})),s((function(){for(var t,e=arguments.length,i=new Array(e),n=0;n<e;n++)i[n]=arguments[n];return(t=DHt.call.apply(DHt,[this].concat(i))||this).deviceType=tHt.Other,t.hitPoint=new gn,t}),DHt=Gx);var GHt,VHt,UHt,zHt=new En;!function(t){t[t.NONE=0]="NONE",t[t.COLOR=1]="COLOR",t[t.SPRITE=2]="SPRITE",t[t.SCALE=3]="SCALE"}(GHt||(GHt={})),we(GHt),function(t){t[t.NORMAL=0]="NORMAL",t[t.HOVER=1]="HOVER",t[t.PRESSED=2]="PRESSED",t[t.DISABLED=3]="DISABLED"}(VHt||(VHt={})),function(t){t.CLICK="click"}(UHt||(UHt={}));var HHt=t("gM",(nHt=eo("cc.Button"),rHt=no(110),sHt=io(wO),aHt=Lo(hg),oHt=Lo(GHt),hHt=Lo(SM),uHt=Lo(SM),lHt=Lo(SM),cHt=Lo(SM),_Ht=Lo([fp]),nHt(fHt=rHt(fHt=sHt(((IHt=function(t){function e(){var e;return(e=t.call(this)||this).clickEvents=pHt&&pHt(),e._interactable=mHt&&mHt(),e._transition=gHt&&gHt(),e._normalColor=vHt&&vHt(),e._hoverColor=yHt&&yHt(),e._pressedColor=SHt&&SHt(),e._disabledColor=THt&&THt(),e._normalSprite=AHt&&AHt(),e._hoverSprite=bHt&&bHt(),e._pressedSprite=EHt&&EHt(),e._disabledSprite=CHt&&CHt(),e._duration=xHt&&xHt(),e._zoomScale=wHt&&wHt(),e._target=RHt&&RHt(),e._pressed=!1,e._hovered=!1,e._fromColor=new En,e._toColor=new En,e._time=0,e._transitionFinished=!0,e._fromScale=new gn,e._toScale=new gn,e._originalScale=null,e._sprite=null,e._targetScale=new gn,e}s(e,t);var i=e.prototype;return i.__preload=function(){this.target||(this.target=this.node),this._applyTarget(),this._resetState()},i.onEnable=function(){this._registerNodeEvent()},i.onDisable=function(){this._resetState(),this._unregisterNodeEvent()},i.onDestroy=function(){this.target.isValid&&this._unregisterTargetEvent(this.target)},i.update=function(t){var e=this.target;if(!this._transitionFinished&&e&&(this._transition===GHt.COLOR||this._transition===GHt.SCALE)){this._time+=t;var i=1;if(this._duration>0&&(i=this._time/this._duration),i>=1&&(i=1),this._transition===GHt.COLOR){var n=e._uiProps.uiComp;En.lerp(zHt,this._fromColor,this._toColor,i),n&&(n.color=zHt)}else this.transition===GHt.SCALE&&(e.getScale(this._targetScale),this._targetScale.x=Gi(this._fromScale.x,this._toScale.x,i),this._targetScale.y=Gi(this._fromScale.y,this._toScale.y,i),e.setScale(this._targetScale));1===i&&(this._transitionFinished=!0)}},i._resizeNodeToTargetNode=function(){this.target&&this.target._uiProps.uiTransformComp},i._resetState=function(){this._pressed=!1,this._hovered=!1;var t=this.target;if(t){var e=this._transition;if(e===GHt.COLOR&&this._interactable){var i=t.getComponent(XO);i&&(i.color=this._normalColor)}else e===GHt.SCALE&&this._originalScale&&t.setScale(this._originalScale);this._transitionFinished=!0}},i._registerNodeEvent=function(){this.node.on(vm.TOUCH_START,this._onTouchBegan,this),this.node.on(vm.TOUCH_MOVE,this._onTouchMove,this),this.node.on(vm.TOUCH_END,this._onTouchEnded,this),this.node.on(vm.TOUCH_CANCEL,this._onTouchCancel,this),this.node.on(vm.MOUSE_ENTER,this._onMouseMoveIn,this),this.node.on(vm.MOUSE_LEAVE,this._onMouseMoveOut,this),this.node.on(eHt.XRUI_HOVER_ENTERED,this._xrHoverEnter,this),this.node.on(eHt.XRUI_HOVER_EXITED,this._xrHoverExit,this),this.node.on(eHt.XRUI_CLICK,this._xrClick,this),this.node.on(eHt.XRUI_UNCLICK,this._xrUnClick,this)},i._registerTargetEvent=function(t){t.on(vm.TRANSFORM_CHANGED,this._onTargetTransformChanged,this)},i._unregisterNodeEvent=function(){this.node.off(vm.TOUCH_START,this._onTouchBegan,this),this.node.off(vm.TOUCH_MOVE,this._onTouchMove,this),this.node.off(vm.TOUCH_END,this._onTouchEnded,this),this.node.off(vm.TOUCH_CANCEL,this._onTouchCancel,this),this.node.off(vm.MOUSE_ENTER,this._onMouseMoveIn,this),this.node.off(vm.MOUSE_LEAVE,this._onMouseMoveOut,this),this.node.off(eHt.XRUI_HOVER_ENTERED,this._xrHoverEnter,this),this.node.off(eHt.XRUI_HOVER_EXITED,this._xrHoverExit,this),this.node.off(eHt.XRUI_CLICK,this._xrClick,this),this.node.off(eHt.XRUI_UNCLICK,this._xrUnClick,this)},i._unregisterTargetEvent=function(t){t.off(vm.TRANSFORM_CHANGED)},i._getTargetSprite=function(t){var e=null;return t&&(e=t.getComponent(PF)),e},i._applyTarget=function(){this.target&&(this._sprite=this._getTargetSprite(this.target),this._originalScale||(this._originalScale=new gn),gn.copy(this._originalScale,this.target.scale),this._registerTargetEvent(this.target))},i._onTargetSpriteFrameChanged=function(t){this._transition===GHt.SPRITE&&this._setCurrentStateSpriteFrame(t.spriteFrame)},i._setCurrentStateSpriteFrame=function(t){if(t)switch(this._getButtonState()){case VHt.NORMAL:this._normalSprite=t;break;case VHt.HOVER:this._hoverSprite=t;break;case VHt.PRESSED:this._pressedSprite=t;break;case VHt.DISABLED:this._disabledSprite=t}},i._onTargetColorChanged=function(t){this._transition===GHt.COLOR&&this._setCurrentStateColor(t)},i._setCurrentStateColor=function(t){switch(this._getButtonState()){case VHt.NORMAL:this._normalColor=t;break;case VHt.HOVER:this._hoverColor=t;break;case VHt.PRESSED:this._pressedColor=t;break;case VHt.DISABLED:this._disabledColor=t}},i._onTargetTransformChanged=function(t){t&mm.SCALE&&this._originalScale&&this._transition===GHt.SCALE&&this._transitionFinished&&gn.copy(this._originalScale,this.target.scale)},i._onTouchBegan=function(t){this._interactable&&this.enabledInHierarchy&&(this._pressed=!0,this._updateState(),t&&(t.propagationStopped=!0))},i._onTouchMove=function(t){if(this._interactable&&this.enabledInHierarchy&&this._pressed&&t){var e=t.touch;if(e){var i,n=this.node._uiProps.uiTransformComp.hitTest(e.getLocation(),t.windowId);this._transition===GHt.SCALE&&this.target&&this._originalScale?n?(gn.copy(this._fromScale,this._originalScale),gn.multiplyScalar(this._toScale,this._originalScale,this._zoomScale),this._transitionFinished=!1):(this._time=0,this._transitionFinished=!0,this.target.setScale(this._originalScale)):(i=n?VHt.PRESSED:VHt.NORMAL,this._applyTransition(i)),t&&(t.propagationStopped=!0)}}},i._onTouchEnded=function(t){this._interactable&&this.enabledInHierarchy&&(this._pressed&&(fp.emitEvents(this.clickEvents,t),this.node.emit(UHt.CLICK,this)),this._pressed=!1,this._updateState(),t&&(t.propagationStopped=!0))},i._onTouchCancel=function(){this._interactable&&this.enabledInHierarchy&&(this._pressed=!1,this._updateState())},i._onMouseMoveIn=function(){!this._pressed&&this.interactable&&this.enabledInHierarchy&&(this._transition!==GHt.SPRITE||this._hoverSprite)&&(this._hovered||(this._hovered=!0,this._updateState()))},i._onMouseMoveOut=function(){this._hovered&&(this._hovered=!1,this._updateState())},i._updateState=function(){var t=this._getButtonState();this._applyTransition(t)},i._getButtonState=function(){var t=VHt.NORMAL;return this._interactable?this._pressed?t=VHt.PRESSED:this._hovered&&(t=VHt.HOVER):t=VHt.DISABLED,t},i._updateColorTransition=function(t){var e,i=this._getColorByState(t),n=null===(e=this.target)||void 0===e?void 0:e.getComponent(XO);n&&(t===VHt.DISABLED?(n.color=i,this._transitionFinished=!0):(this._fromColor=n.color.clone(),this._toColor=i,this._time=0,this._transitionFinished=!1))},i._updateSpriteTransition=function(t){var e=this._getSpriteFrameByState(t);this._sprite&&e&&(this._sprite.spriteFrame=e)},i._updateScaleTransition=function(t){this._interactable&&(t===VHt.PRESSED?this._zoomUp():this._zoomBack())},i._zoomUp=function(){this._originalScale&&(gn.copy(this._fromScale,this._originalScale),gn.multiplyScalar(this._toScale,this._originalScale,this._zoomScale),this._time=0,this._transitionFinished=!1)},i._zoomBack=function(){this.target&&this._originalScale&&(gn.copy(this._fromScale,this.target.scale),gn.copy(this._toScale,this._originalScale),this._time=0,this._transitionFinished=!1)},i._applyTransition=function(t){var e=this._transition;e===GHt.COLOR?this._updateColorTransition(t):e===GHt.SPRITE?this._updateSpriteTransition(t):e===GHt.SCALE&&this._updateScaleTransition(t)},i._getSpriteFrameByState=function(t){switch(t){case VHt.NORMAL:return this._normalSprite;case VHt.DISABLED:return this._disabledSprite;case VHt.HOVER:return this.hoverSprite;case VHt.PRESSED:return this._pressedSprite;default:return null}},i._getColorByState=function(t){switch(t){case VHt.NORMAL:return this._normalColor;case VHt.DISABLED:return this._disabledColor;case VHt.HOVER:return this._hoverColor;case VHt.PRESSED:return this._pressedColor;default:return new En}},i._xrHoverEnter=function(){this._onMouseMoveIn(),this._updateState()},i._xrHoverExit=function(){this._onMouseMoveOut(),this._pressed&&(this._pressed=!1,this._updateState())},i._xrClick=function(){this._interactable&&this.enabledInHierarchy&&(this._pressed=!0,this._updateState())},i._xrUnClick=function(){this._interactable&&this.enabledInHierarchy&&(this._pressed&&(fp.emitEvents(this.clickEvents,this),this.node.emit(UHt.CLICK,this)),this._pressed=!1,this._updateState())},n(e,[{key:"target",get:function(){return this._target||this.node},set:function(t){this._target!==t&&(this._target&&this._unregisterTargetEvent(this._target),this._target=t,this._applyTarget())}},{key:"interactable",get:function(){return this._interactable},set:function(t){this._interactable!==t&&(this._interactable=t,this._updateState(),this._interactable||this._resetState())}},{key:"_resizeToTarget",set:function(t){t&&this._resizeNodeToTargetNode()}},{key:"transition",get:function(){return this._transition},set:function(t){this._transition!==t&&(this._transition===GHt.COLOR?this._updateColorTransition(VHt.NORMAL):this._transition===GHt.SPRITE&&this._updateSpriteTransition(VHt.NORMAL),this._transition=t,this._updateState())}},{key:"normalColor",get:function(){return this._normalColor},set:function(t){this._normalColor!==t&&(this._normalColor.set(t),this._updateState())}},{key:"pressedColor",get:function(){return this._pressedColor},set:function(t){this._pressedColor!==t&&this._pressedColor.set(t)}},{key:"hoverColor",get:function(){return this._hoverColor},set:function(t){this._hoverColor!==t&&this._hoverColor.set(t)}},{key:"disabledColor",get:function(){return this._disabledColor},set:function(t){this._disabledColor!==t&&(this._disabledColor.set(t),this._updateState())}},{key:"duration",get:function(){return this._duration},set:function(t){this._duration!==t&&(this._duration=t)}},{key:"zoomScale",get:function(){return this._zoomScale},set:function(t){this._zoomScale!==t&&(this._zoomScale=t)}},{key:"normalSprite",get:function(){return this._normalSprite},set:function(t){if(this._normalSprite!==t){this._normalSprite=t;var e=this.node.getComponent(PF);e&&(e.spriteFrame=t),this._updateState()}}},{key:"pressedSprite",get:function(){return this._pressedSprite},set:function(t){this._pressedSprite!==t&&(this._pressedSprite=t,this._updateState())}},{key:"hoverSprite",get:function(){return this._hoverSprite},set:function(t){this._hoverSprite!==t&&(this._hoverSprite=t,this._updateState())}},{key:"disabledSprite",get:function(){return this._disabledSprite},set:function(t){this._disabledSprite!==t&&(this._disabledSprite=t,this._updateState())}}]),e}(mp)).Transition=GHt,IHt.EventType=UHt,m((dHt=IHt).prototype,"target",[aHt],Object.getOwnPropertyDescriptor(dHt.prototype,"target"),dHt.prototype),m(dHt.prototype,"transition",[oHt],Object.getOwnPropertyDescriptor(dHt.prototype,"transition"),dHt.prototype),m(dHt.prototype,"normalSprite",[hHt],Object.getOwnPropertyDescriptor(dHt.prototype,"normalSprite"),dHt.prototype),m(dHt.prototype,"pressedSprite",[uHt],Object.getOwnPropertyDescriptor(dHt.prototype,"pressedSprite"),dHt.prototype),m(dHt.prototype,"hoverSprite",[lHt],Object.getOwnPropertyDescriptor(dHt.prototype,"hoverSprite"),dHt.prototype),m(dHt.prototype,"disabledSprite",[cHt],Object.getOwnPropertyDescriptor(dHt.prototype,"disabledSprite"),dHt.prototype),pHt=ja(dHt.prototype,"clickEvents",[_Ht,lo],(function(){return[]})),mHt=ja(dHt.prototype,"_interactable",[lo],(function(){return!0})),gHt=ja(dHt.prototype,"_transition",[lo],(function(){return GHt.NONE})),vHt=ja(dHt.prototype,"_normalColor",[lo],(function(){return En.WHITE.clone()})),yHt=ja(dHt.prototype,"_hoverColor",[lo],(function(){return new En(211,211,211,255)})),SHt=ja(dHt.prototype,"_pressedColor",[lo],(function(){return En.WHITE.clone()})),THt=ja(dHt.prototype,"_disabledColor",[lo],(function(){return new En(124,124,124,255)})),AHt=ja(dHt.prototype,"_normalSprite",[lo],(function(){return null})),bHt=ja(dHt.prototype,"_hoverSprite",[lo],(function(){return null})),EHt=ja(dHt.prototype,"_pressedSprite",[lo],(function(){return null})),CHt=ja(dHt.prototype,"_disabledSprite",[lo],(function(){return null})),xHt=ja(dHt.prototype,"_duration",[lo],(function(){return.1})),wHt=ja(dHt.prototype,"_zoomScale",[lo],(function(){return 1.2})),RHt=ja(dHt.prototype,"_target",[lo],(function(){return null})),fHt=dHt))||fHt)||fHt)||fHt));S.Button=HHt;var WHt,XHt,jHt,YHt=function(){function t(){}return t.add=function(t){var e=this._tabIndexList;-1===e.indexOf(t)&&e.push(t)},t.remove=function(t){var e=this._tabIndexList,i=e.indexOf(t);-1!==i&&e.splice(i,1)},t.resort=function(){this._tabIndexList.sort((function(t,e){return t._delegate.tabIndex-e._delegate.tabIndex}))},t.next=function(t){var e=this._tabIndexList,i=e.indexOf(t);if(t.setFocus(!1),-1!==i){var n=e[i+1];n&&n._delegate.tabIndex>=0&&n.setFocus(!0)}},t}();YHt._tabIndexList=[],function(t){t[t.DEFAULT=0]="DEFAULT",t[t.DONE=1]="DONE",t[t.SEND=2]="SEND",t[t.SEARCH=3]="SEARCH",t[t.GO=4]="GO",t[t.NEXT=5]="NEXT"}(WHt||(WHt={})),Ee(WHt),function(t){t[t.ANY=0]="ANY",t[t.EMAIL_ADDR=1]="EMAIL_ADDR",t[t.NUMERIC=2]="NUMERIC",t[t.PHONE_NUMBER=3]="PHONE_NUMBER",t[t.URL=4]="URL",t[t.DECIMAL=5]="DECIMAL",t[t.SINGLE_LINE=6]="SINGLE_LINE"}(XHt||(XHt={})),Ee(XHt),function(t){t[t.PASSWORD=0]="PASSWORD",t[t.SENSITIVE=1]="SENSITIVE",t[t.INITIAL_CAPS_WORD=2]="INITIAL_CAPS_WORD",t[t.INITIAL_CAPS_SENTENCE=3]="INITIAL_CAPS_SENTENCE",t[t.INITIAL_CAPS_ALL_CHARACTERS=4]="INITIAL_CAPS_ALL_CHARACTERS",t[t.DEFAULT=5]="DEFAULT"}(jHt||(jHt={})),Ee(jHt);var qHt,KHt,QHt,ZHt,JHt,$Ht,tWt,eWt,iWt,nWt,rWt,sWt,aWt,oWt,hWt,uWt,lWt,cWt,_Wt,fWt,dWt,pWt,mWt,gWt,vWt,yWt,SWt,TWt,AWt,bWt,EWt=function(){function t(){this._editing=!1,this._delegate=null}var e=t.prototype;return e.init=function(){},e.onEnable=function(){},e.beforeDraw=function(){},e.onDisable=function(){this._editing&&this.endEditing()},e.clear=function(){this._delegate=null},e.setTabIndex=function(){},e.setSize=function(){},e.setFocus=function(t){t?this.beginEditing():this.endEditing()},e.isFocused=function(){return this._editing},e.beginEditing=function(){},e.endEditing=function(){},t}(),CWt=A.document,xWt=new Vn,wWt=new Vn,RWt=new gn,IWt=null,DWt=0,BWt=function(t){function e(){var e;return(e=t.call(this)||this)._delegate=null,e._inputMode=-1,e._inputFlag=-1,e._returnType=-1,e.__eventListeners={},e.__autoResize=!1,e.__orientationChanged=void 0,e._edTxt=null,e._isTextArea=!1,e._textLabelFont=null,e._textLabelFontSize=null,e._textLabelFontColor=null,e._textLabelAlign=null,e._placeholderLabelFont=null,e._placeholderLabelFontSize=null,e._placeholderLabelFontColor=null,e._placeholderLabelAlign=null,e._placeholderLineHeight=null,e._placeholderStyleSheet=null,e._domId="EditBoxId_"+ ++DWt,e._forceUpdate=!1,e}s(e,t);var i=e.prototype;return i.init=function(t){t&&(this._delegate=t,t.inputMode===XHt.ANY?this._createTextArea():this._createInput(),YHt.add(this),this.setTabIndex(t.tabIndex),this._initStyleSheet(),this._registerEventListeners(),this._addDomToGameContainer(),hB.instance.on("canvas-resize",this._resize,this),ga.on("window-resize",this._resize,this))},i.clear=function(){hB.instance.off("canvas-resize",this._resize,this),ga.off("window-resize",this._resize,this),this._removeEventListeners(),this._removeDomFromGameContainer(),YHt.remove(this),IWt===this&&(IWt=null),this._delegate=null},i._resize=function(){this._forceUpdate=!0},i.beforeDraw=function(){(this._delegate.node.hasChangedFlags||this._forceUpdate)&&(this._forceUpdate=!1,this._updateMatrix())},i.setTabIndex=function(t){this._edTxt.tabIndex=t,YHt.resort()},i.setSize=function(t,e){var i=this._edTxt;i&&(i.style.width=t+"px",i.style.height=e+"px")},i.beginEditing=function(){IWt&&IWt!==this&&IWt.setFocus(!1),this._editing=!0,IWt=this,this._delegate._editBoxEditingDidBegan(),this._showDom(),this._edTxt.focus()},i.endEditing=function(){this._edTxt.blur()},i._createInput=function(){this._isTextArea=!1,this._edTxt=CWt.createElement("input")},i._createTextArea=function(){this._isTextArea=!0,this._edTxt=CWt.createElement("textarea")},i._addDomToGameContainer=function(){EB.container&&this._edTxt&&(EB.container.appendChild(this._edTxt),CWt.head.appendChild(this._placeholderStyleSheet))},i._removeDomFromGameContainer=function(){ze(EB.container,this._edTxt)&&this._edTxt&&EB.container.removeChild(this._edTxt),ze(CWt.head,this._placeholderStyleSheet)&&CWt.head.removeChild(this._placeholderStyleSheet),this._edTxt=null,this._placeholderStyleSheet=null},i._showDom=function(){this._updateMaxLength(),this._updateInputType(),this._updateStyleSheet(),this._edTxt&&this._delegate&&(this._edTxt.style.display="",this._delegate._hideLabels()),Sa.isMobile&&this._showDomOnMobile()},i._hideDom=function(){var t=this._edTxt;t&&this._delegate&&(t.style.display="none",this._delegate._showLabels()),Sa.isMobile&&this._hideDomOnMobile()},i._showDomOnMobile=function(){Sa.os!==Ys.ANDROID&&Sa.os!==Ys.OHOS||(ga.handleResizeEvent=!1,this._adjustWindowScroll())},i._hideDomOnMobile=function(){Sa.os!==Ys.ANDROID&&Sa.os!==Ys.OHOS||(ga.handleResizeEvent=!0),this._scrollBackWindow()},i._isElementInViewport=function(){if(this._edTxt){var t=this._edTxt.getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(A.innerHeight||CWt.documentElement.clientHeight)&&t.right<=(A.innerWidth||CWt.documentElement.clientWidth)}return!1},i._adjustWindowScroll=function(){var t=this;setTimeout((function(){A.scrollY<40&&!t._isElementInViewport()&&t._edTxt.scrollIntoView({block:"start",inline:"nearest",behavior:"smooth"})}),400)},i._scrollBackWindow=function(){setTimeout((function(){Sa.browserType!==Ws.WECHAT||Sa.os!==Ys.IOS?A.scrollTo(0,0):A.top&&A.top.scrollTo(0,0)}),400)},i._updateMatrix=function(){if(this._edTxt){var t=this._delegate.node,e=yB.getScaleX(),i=yB.getScaleY(),n=yB.getViewportRect(),r=ga.devicePixelRatio;t.getWorldMatrix(xWt);var s=t._uiProps.uiTransformComp;if(s&&(gn.set(RWt,-s.anchorX*s.width,-s.anchorY*s.height,RWt.z),Vn.transform(xWt,xWt,RWt)),t._uiProps.uiTransformComp){var a=ID.root.batcher2D.getFirstRenderCamera(t);if(a){a.node.getWorldRT(wWt);var o=wWt.m12,h=wWt.m13,u=Ta.center;wWt.m12=u.x-(wWt.m00*o+wWt.m04*h),wWt.m13=u.y-(wWt.m01*o+wWt.m05*h),e/=r,i/=r,gn.set(RWt,e,i,1),Vn.scale(wWt,wWt,RWt);var l=EB.container,c=parseInt(l&&l.style.paddingLeft||"0");c+=n.x/r;var _=parseInt(l&&l.style.paddingBottom||"0");_+=n.y/r,wWt.m12+=c,wWt.m13+=_,Vn.multiply(wWt,wWt,xWt);var f="matrix("+wWt.m00+","+-wWt.m01+","+-wWt.m04+","+wWt.m05+","+wWt.m12+","+-wWt.m13+")";this._edTxt.style.transform=f,this._edTxt.style["-webkit-transform"]=f,this._edTxt.style["transform-origin"]="0px 100% 0px",this._edTxt.style["-webkit-transform-origin"]="0px 100% 0px"}}}},i._updateInputType=function(){var t=this._delegate,e=t.inputMode,i=t.inputFlag,n=t.returnType,r=this._edTxt;if(this._inputMode!==e||this._inputFlag!==i||this._returnType!==n){if(this._inputMode=e,this._inputFlag=i,this._returnType=n,this._isTextArea){var s="none";return i===jHt.INITIAL_CAPS_ALL_CHARACTERS?s="uppercase":i===jHt.INITIAL_CAPS_WORD&&(s="capitalize"),void(r.style.textTransform=s)}if(r=r,i===jHt.PASSWORD)return r.type="password",void(r.style.textTransform="none");var a=r.type;e===XHt.EMAIL_ADDR?a="email":e===XHt.NUMERIC?a="number":e===XHt.DECIMAL?a="digit":e===XHt.PHONE_NUMBER?(a="tel",r.addEventListener("wheel",(function(){return!1}))):e===XHt.URL?a="url":(a="text",n===WHt.SEARCH&&(a="search")),r.type=a;var o="none";i===jHt.INITIAL_CAPS_ALL_CHARACTERS?o="uppercase":i===jHt.INITIAL_CAPS_WORD&&(o="capitalize"),r.style.textTransform=o}},i._updateMaxLength=function(){var t=this._delegate.maxLength;t<0&&(t=65535),this._edTxt.maxLength=t},i._initStyleSheet=function(){if(this._edTxt){var t=this._edTxt;t.style.color="#000000",t.style.border="0px",t.style.background="transparent",t.style.width="100%",t.style.height="100%",t.style.outline="medium",t.style.padding="0",t.style.textTransform="none",t.style.display="none",t.style.position="absolute",t.style.bottom="0px",t.style.left="2px",t.className="cocosEditBox",t.style.fontFamily="Arial",t.id=this._domId,this._isTextArea?(t.style.resize="none",t.style.overflowY="scroll"):((t=t).type="text",t.style["-moz-appearance"]="textfield"),this._placeholderStyleSheet=CWt.createElement("style")}},i._updateStyleSheet=function(){var t=this._delegate,e=this._edTxt;e&&t&&(e.value=t.string,this._updateTextLabel(t.textLabel))},i._updateTextLabel=function(t){if(t){var e=t.font;e=!e||e instanceof SP?t.fontFamily:e._fontFamily;var i=t.fontSize*t.node.scale.y;if((this._textLabelFont!==e||this._textLabelFontSize!==i||this._textLabelFontColor!==t.fontColor||this._textLabelAlign!==t.horizontalAlign)&&(this._textLabelFont=e,this._textLabelFontSize=i,this._textLabelFontColor=t.fontColor,this._textLabelAlign=t.horizontalAlign,this._edTxt)){var n=this._edTxt;switch(n.style.fontSize=i+"px",n.style.color=t.color.toCSS(),n.style.fontFamily=e,t.horizontalAlign){case OL.HorizontalAlign.LEFT:n.style.textAlign="left";break;case OL.HorizontalAlign.CENTER:n.style.textAlign="center";break;case OL.HorizontalAlign.RIGHT:n.style.textAlign="right"}}}},i._updatePlaceholderLabel=function(t){if(t){var e=t.font;e=!e||e instanceof SP?t.fontFamily:t.font._fontFamily;var i=t.fontSize*t.node.scale.y;if(this._placeholderLabelFont!==e||this._placeholderLabelFontSize!==i||this._placeholderLabelFontColor!==t.fontColor||this._placeholderLabelAlign!==t.horizontalAlign||this._placeholderLineHeight!==t.fontSize){this._placeholderLabelFont=e,this._placeholderLabelFontSize=i,this._placeholderLabelFontColor=t.fontColor,this._placeholderLabelAlign=t.horizontalAlign,this._placeholderLineHeight=t.fontSize;var n=this._placeholderStyleSheet,r=t.color.toCSS(),s=t.fontSize,a="";switch(t.horizontalAlign){case OL.HorizontalAlign.LEFT:a="left";break;case OL.HorizontalAlign.CENTER:a="center";break;case OL.HorizontalAlign.RIGHT:a="right"}n.innerHTML="#"+this._domId+"::-webkit-input-placeholder{text-transform: initial;-family: "+e+";font-size: "+i+"px;color: "+r+";line-height: "+s+"px;text-align: "+a+";}#"+this._domId+"::-moz-placeholder{text-transform: initial;-family: "+e+";font-size: "+i+"px;color: "+r+";line-height: "+s+"px;text-align: "+a+";}#"+this._domId+"::-ms-input-placeholder{text-transform: initial;-family: "+e+";font-size: "+i+"px;color: "+r+";line-height: "+s+"px;text-align: "+a+";}",Sa.browserType===Ws.EDGE&&(n.innerHTML+="#"+this._domId+"::-ms-clear{display: none;}")}}},i._registerEventListeners=function(){var t=this;if(this._edTxt){var e=this._edTxt,i=!1,n=this.__eventListeners;n.compositionStart=function(){i=!0},n.compositionEnd=function(){i=!1,t._delegate._editBoxTextChanged(e.value)},n.onInput=function(){if(!i){var n=t._delegate,r=n.maxLength;r>=0&&(e.value=e.value.slice(0,r)),n._editBoxTextChanged(e.value)}},n.onClick=function(){t._editing&&Sa.isMobile&&t._adjustWindowScroll()},n.onKeydown=function(i){i.keyCode===Xx.ENTER?(i.propagationStopped=!0,t._delegate._editBoxEditingReturn(),t._isTextArea||e.blur()):i.keyCode===Xx.TAB&&(i.propagationStopped=!0,i.preventDefault(),YHt.next(t))},n.onBlur=function(){Sa.isMobile&&i&&n.compositionEnd(),t._editing=!1,IWt=null,t._hideDom(),t._delegate._editBoxEditingDidEnded()},e.addEventListener("compositionstart",n.compositionStart),e.addEventListener("compositionend",n.compositionEnd),e.addEventListener("input",n.onInput),e.addEventListener("keydown",n.onKeydown),e.addEventListener("blur",n.onBlur),e.addEventListener("touchstart",n.onClick)}},i._removeEventListeners=function(){if(this._edTxt){var t=this._edTxt,e=this.__eventListeners;t.removeEventListener("compositionstart",e.compositionStart),t.removeEventListener("compositionend",e.compositionEnd),t.removeEventListener("input",e.onInput),t.removeEventListener("keydown",e.onKeydown),t.removeEventListener("blur",e.onBlur),t.removeEventListener("touchstart",e.onClick),e.compositionStart=null,e.compositionEnd=null,e.onInput=null,e.onKeydown=null,e.onBlur=null,e.onClick=null}},e}(EWt);!function(t){t.EDITING_DID_BEGAN="editing-did-began",t.EDITING_DID_ENDED="editing-did-ended",t.TEXT_CHANGED="text-changed",t.EDITING_RETURN="editing-return",t.XR_EDITING_DID_BEGAN="xr-editing-did-began",t.XR_EDITING_DID_ENDED="xr-editing-did-ended"}(bWt||(bWt={}));var MWt,PWt,OWt,LWt,NWt,FWt,kWt,GWt,VWt,UWt,zWt,HWt,WWt,XWt,jWt,YWt,qWt,KWt,QWt,ZWt,JWt,$Wt,tXt,eXt,iXt,nXt,rXt,sXt,aXt,oXt,hXt,uXt,lXt,cXt,_Xt=t("gN",(qHt=eo("cc.EditBox"),KHt=no(110),QHt=io(wO),ZHt=Lo(OL),JHt=Lo(OL),$Ht=Lo(SM),tWt=Lo(jHt),eWt=Lo(XHt),iWt=Lo(WHt),nWt=Lo([fp]),rWt=Lo([fp]),sWt=Lo([fp]),aWt=Lo([fp]),qHt(oWt=KHt(oWt=QHt(((AWt=function(t){function e(){var e;return(e=t.call(this)||this).editingDidBegan=uWt&&uWt(),e.textChanged=lWt&&lWt(),e.editingDidEnded=cWt&&cWt(),e.editingReturn=_Wt&&_Wt(),e._impl=null,e._background=null,e._textLabel=fWt&&fWt(),e._placeholderLabel=dWt&&dWt(),e._returnType=pWt&&pWt(),e._string=mWt&&mWt(),e._tabIndex=gWt&&gWt(),e._backgroundImage=vWt&&vWt(),e._inputFlag=yWt&&yWt(),e._inputMode=SWt&&SWt(),e._maxLength=TWt&&TWt(),e._isLabelVisible=!1,e}s(e,t);var i=e.prototype;return i.__preload=function(){this._init()},i.onEnable=function(){this._registerEvent(),this._ensureBackgroundSprite(),this._impl&&this._impl.onEnable()},i._beforeDraw=function(){this._impl&&this._impl.beforeDraw()},i.onDisable=function(){this._unregisterEvent(),this._unregisterBackgroundEvent(),this._impl&&this._impl.onDisable()},i.onDestroy=function(){ID.off(wD.EVENT_BEFORE_DRAW,this._beforeDraw,this),this._impl&&this._impl.clear()},i.setFocus=function(){this._impl&&this._impl.setFocus(!0)},i.focus=function(){this._impl&&this._impl.setFocus(!0)},i.blur=function(){this._impl&&this._impl.setFocus(!1)},i.isFocused=function(){return!!this._impl&&this._impl.isFocused()},i._editBoxEditingDidBegan=function(){fp.emitEvents(this.editingDidBegan,this),this.node.emit(bWt.EDITING_DID_BEGAN,this)},i._editBoxEditingDidEnded=function(t){fp.emitEvents(this.editingDidEnded,this),this.node.emit(bWt.EDITING_DID_ENDED,this,t)},i._editBoxTextChanged=function(t){t=this._updateLabelStringStyle(t,!0),this.string=t,fp.emitEvents(this.textChanged,t,this),this.node.emit(bWt.TEXT_CHANGED,this)},i._editBoxEditingReturn=function(t){fp.emitEvents(this.editingReturn,this),this.node.emit(bWt.EDITING_RETURN,this,t)},i._showLabels=function(){this._isLabelVisible=!0,this._updateLabels()},i._hideLabels=function(){this._isLabelVisible=!1,this._textLabel&&(this._textLabel.node.active=!1),this._placeholderLabel&&(this._placeholderLabel.node.active=!1)},i._onTouchBegan=function(t){t.propagationStopped=!0},i._onTouchCancel=function(t){t.propagationStopped=!0},i._onTouchEnded=function(t){this._impl&&this._impl.beginEditing(),t.propagationStopped=!0},i._init=function(){this._updatePlaceholderLabel(),this._updateTextLabel(),this._isLabelVisible=!0,this.node.on(vm.SIZE_CHANGED,this._resizeChildNodes,this),ID.on(wD.EVENT_BEFORE_DRAW,this._beforeDraw,this),(this._impl=new e._EditBoxImpl).init(this),this._updateString(this._string),this._syncSize()},i._ensureBackgroundSprite=function(){if(!this._background){var t=this.node.getComponent(PF);t||(t=this.node.addComponent(PF)),t!==this._background&&(t.type=PF.Type.SLICED,t.spriteFrame=this._backgroundImage,this._background=t,this._registerBackgroundEvent())}},i._updateTextLabel=function(){var t=this._textLabel;if(!t){var e=this.node.getChildByName("TEXT_LABEL");e||((e=new hg("TEXT_LABEL")).layer=this.node.layer),(t=e.getComponent(OL))||(t=e.addComponent(OL)),e.parent=this.node,this._textLabel=t}this._inputMode===XHt.ANY?(t.verticalAlign=wL.TOP,t.enableWrapText=!0):t.enableWrapText=!1,t.string=this._updateLabelStringStyle(this._string)},i._updatePlaceholderLabel=function(){var t=this._placeholderLabel;if(!t){var e=this.node.getChildByName("PLACEHOLDER_LABEL");e||((e=new hg("PLACEHOLDER_LABEL")).layer=this.node.layer),(t=e.getComponent(OL))||(t=e.addComponent(OL)),e.parent=this.node,this._placeholderLabel=t}this._inputMode===XHt.ANY?t.enableWrapText=!0:t.enableWrapText=!1,t.string=this.placeholder},i._syncSize=function(){var t=this.node._uiProps.uiTransformComp,e=t.contentSize;if(this._background){var i=this._background.node._uiProps.uiTransformComp;i.anchorPoint=t.anchorPoint,i.setContentSize(e)}this._updateLabelPosition(e),this._impl&&this._impl.setSize(e.width,e.height)},i._updateLabels=function(){if(this._isLabelVisible){var t=this._string;this._textLabel&&(this._textLabel.node.active=""!==t),this._placeholderLabel&&(this._placeholderLabel.node.active=""===t)}},i._updateString=function(t){var e=this._textLabel;if(e){var i=t;i&&(i=this._updateLabelStringStyle(i)),e.string=i,this._updateLabels()}},i._updateLabelStringStyle=function(t,e){void 0===e&&(e=!1);var i,n=this._inputFlag;if(e||n!==jHt.PASSWORD)n===jHt.INITIAL_CAPS_ALL_CHARACTERS?t=t.toUpperCase():n===jHt.INITIAL_CAPS_WORD?t=t.replace(/(?:^|\s)\S/g,(function(t){return t.toUpperCase()})):n===jHt.INITIAL_CAPS_SENTENCE&&(t=(i=t).charAt(0).toUpperCase()+i.slice(1));else{for(var r="",s=t.length,a=0;a<s;++a)r+="●";t=r}return t},i._registerEvent=function(){this.node.on(vm.TOUCH_START,this._onTouchBegan,this),this.node.on(vm.TOUCH_END,this._onTouchEnded,this),this.node.on(eHt.XRUI_UNCLICK,this._xrUnClick,this),this.node.on(iHt.XR_KEYBOARD_INPUT,this._xrKeyBoardInput,this)},i._unregisterEvent=function(){this.node.off(vm.TOUCH_START,this._onTouchBegan,this),this.node.off(vm.TOUCH_END,this._onTouchEnded,this),this.node.off(eHt.XRUI_UNCLICK,this._xrUnClick,this),this.node.off(iHt.XR_KEYBOARD_INPUT,this._xrKeyBoardInput,this)},i._onBackgroundSpriteFrameChanged=function(){this._background&&(this.backgroundImage=this._background.spriteFrame)},i._registerBackgroundEvent=function(){var t=this._background&&this._background.node;null==t||t.on(PF.EventType.SPRITE_FRAME_CHANGED,this._onBackgroundSpriteFrameChanged,this)},i._unregisterBackgroundEvent=function(){var t=this._background&&this._background.node;null==t||t.off(PF.EventType.SPRITE_FRAME_CHANGED,this._onBackgroundSpriteFrameChanged,this)},i._updateLabelPosition=function(t){var e=this.node._uiProps.uiTransformComp,i=-e.anchorX*e.width,n=-e.anchorY*e.height,r=this._placeholderLabel,s=this._textLabel;s&&(s.node._uiProps.uiTransformComp.setContentSize(t.width-2,t.height),s.node.setPosition(i+2,n+t.height,s.node.position.z),this._inputMode===XHt.ANY&&(s.verticalAlign=wL.TOP),s.enableWrapText=this._inputMode===XHt.ANY),r&&(r.node._uiProps.uiTransformComp.setContentSize(t.width-2,t.height),r.node.setPosition(i+2,n+t.height,r.node.position.z),r.enableWrapText=this._inputMode===XHt.ANY)},i._resizeChildNodes=function(){var t=this.node._uiProps.uiTransformComp,e=this._textLabel&&this._textLabel.node;e&&(e.setPosition(-t.width/2,t.height/2,e.position.z),e._uiProps.uiTransformComp.setContentSize(t.contentSize));var i=this._placeholderLabel&&this._placeholderLabel.node;i&&(i.setPosition(-t.width/2,t.height/2,i.position.z),i._uiProps.uiTransformComp.setContentSize(t.contentSize));var n=this._background&&this._background.node;n&&n._uiProps.uiTransformComp.setContentSize(t.contentSize),this._syncSize()},i._xrUnClick=function(){this.node.emit(bWt.XR_EDITING_DID_BEGAN,this._maxLength,this.string)},i._xrKeyBoardInput=function(t){this.string=t},n(e,[{key:"string",get:function(){return this._string},set:function(t){this._maxLength>=0&&t.length>=this._maxLength&&(t=t.slice(0,this._maxLength)),this._string!==t&&(this._string=t,this._updateString(t))}},{key:"placeholder",get:function(){return this._placeholderLabel?this._placeholderLabel.string:""},set:function(t){this._placeholderLabel&&(this._placeholderLabel.string=t)}},{key:"textLabel",get:function(){return this._textLabel},set:function(t){this._textLabel!==t&&(this._textLabel=t,this._textLabel&&(this._updateTextLabel(),this._updateLabels()))}},{key:"placeholderLabel",get:function(){return this._placeholderLabel},set:function(t){this._placeholderLabel!==t&&(this._placeholderLabel=t,this._placeholderLabel&&(this._updatePlaceholderLabel(),this._updateLabels()))}},{key:"backgroundImage",get:function(){return this._backgroundImage},set:function(t){this._backgroundImage!==t&&(this._backgroundImage=t,this._ensureBackgroundSprite(),this._background.spriteFrame=t)}},{key:"inputFlag",get:function(){return this._inputFlag},set:function(t){this._inputFlag!==t&&(this._inputFlag=t,this._updateString(this._string))}},{key:"inputMode",get:function(){return this._inputMode},set:function(t){this._inputMode!==t&&(this._inputMode=t,this._updateTextLabel(),this._updatePlaceholderLabel())}},{key:"returnType",get:function(){return this._returnType},set:function(t){this._returnType=t}},{key:"maxLength",get:function(){return this._maxLength},set:function(t){this._maxLength=t}},{key:"tabIndex",get:function(){return this._tabIndex},set:function(t){this._tabIndex!==t&&(this._tabIndex=t,this._impl&&this._impl.setTabIndex(t))}}]),e}(mp))._EditBoxImpl=EWt,AWt.KeyboardReturnType=WHt,AWt.InputFlag=jHt,AWt.InputMode=XHt,AWt.EventType=bWt,m((hWt=AWt).prototype,"textLabel",[ZHt],Object.getOwnPropertyDescriptor(hWt.prototype,"textLabel"),hWt.prototype),m(hWt.prototype,"placeholderLabel",[JHt],Object.getOwnPropertyDescriptor(hWt.prototype,"placeholderLabel"),hWt.prototype),m(hWt.prototype,"backgroundImage",[$Ht],Object.getOwnPropertyDescriptor(hWt.prototype,"backgroundImage"),hWt.prototype),m(hWt.prototype,"inputFlag",[tWt],Object.getOwnPropertyDescriptor(hWt.prototype,"inputFlag"),hWt.prototype),m(hWt.prototype,"inputMode",[eWt],Object.getOwnPropertyDescriptor(hWt.prototype,"inputMode"),hWt.prototype),m(hWt.prototype,"returnType",[iWt],Object.getOwnPropertyDescriptor(hWt.prototype,"returnType"),hWt.prototype),uWt=ja(hWt.prototype,"editingDidBegan",[nWt,lo],(function(){return[]})),lWt=ja(hWt.prototype,"textChanged",[rWt,lo],(function(){return[]})),cWt=ja(hWt.prototype,"editingDidEnded",[sWt,lo],(function(){return[]})),_Wt=ja(hWt.prototype,"editingReturn",[aWt,lo],(function(){return[]})),fWt=ja(hWt.prototype,"_textLabel",[lo],(function(){return null})),dWt=ja(hWt.prototype,"_placeholderLabel",[lo],(function(){return null})),pWt=ja(hWt.prototype,"_returnType",[lo],(function(){return WHt.DEFAULT})),mWt=ja(hWt.prototype,"_string",[lo],(function(){return""})),gWt=ja(hWt.prototype,"_tabIndex",[lo],(function(){return 0})),vWt=ja(hWt.prototype,"_backgroundImage",[lo],(function(){return null})),yWt=ja(hWt.prototype,"_inputFlag",[lo],(function(){return jHt.DEFAULT})),SWt=ja(hWt.prototype,"_inputMode",[lo],(function(){return XHt.ANY})),TWt=ja(hWt.prototype,"_maxLength",[lo],(function(){return 20})),oWt=hWt))||oWt)||oWt)||oWt));"object"==typeof window&&"object"==typeof document&&(_Xt._EditBoxImpl=BWt),S.internal.EditBox=_Xt,function(t){t[t.NONE=0]="NONE",t[t.HORIZONTAL=1]="HORIZONTAL",t[t.VERTICAL=2]="VERTICAL",t[t.GRID=3]="GRID"}(aXt||(aXt={})),we(aXt),function(t){t[t.NONE=0]="NONE",t[t.CONTAINER=1]="CONTAINER",t[t.CHILDREN=2]="CHILDREN"}(oXt||(oXt={})),we(oXt),function(t){t[t.HORIZONTAL=0]="HORIZONTAL",t[t.VERTICAL=1]="VERTICAL"}(hXt||(hXt={})),we(hXt),function(t){t[t.BOTTOM_TO_TOP=0]="BOTTOM_TO_TOP",t[t.TOP_TO_BOTTOM=1]="TOP_TO_BOTTOM"}(uXt||(uXt={})),we(uXt),function(t){t[t.LEFT_TO_RIGHT=0]="LEFT_TO_RIGHT",t[t.RIGHT_TO_LEFT=1]="RIGHT_TO_LEFT"}(lXt||(lXt={})),we(lXt),function(t){t[t.NONE=0]="NONE",t[t.FIXED_ROW=1]="FIXED_ROW",t[t.FIXED_COL=2]="FIXED_COL"}(cXt||(cXt={})),we(cXt);var fXt,dXt,pXt,mXt,gXt,vXt,yXt,SXt,TXt,AXt,bXt,EXt,CXt,xXt,wXt=new gn,RXt=t("gO",(MWt=eo("cc.Layout"),PWt=no(110),OWt=io(wO),LWt=Lo(aXt),NWt=Lo(oXt),FWt=Lo(hXt),kWt=Lo(uXt),GWt=Lo(lXt),VWt=Lo(cXt),MWt(UWt=PWt(UWt=OWt(((sXt=function(t){function e(){var e;return(e=t.call(this)||this)._resizeMode=HWt&&HWt(),e._layoutType=WWt&&WWt(),e._cellSize=XWt&&XWt(),e._startAxis=jWt&&jWt(),e._paddingLeft=YWt&&YWt(),e._paddingRight=qWt&&qWt(),e._paddingTop=KWt&&KWt(),e._paddingBottom=QWt&&QWt(),e._spacingX=ZWt&&ZWt(),e._spacingY=JWt&&JWt(),e._verticalDirection=$Wt&&$Wt(),e._horizontalDirection=tXt&&tXt(),e._constraint=eXt&&eXt(),e._constraintNum=iXt&&iXt(),e._affectedByScale=nXt&&nXt(),e._isAlign=rXt&&rXt(),e._layoutSize=new Qn(300,200),e._layoutDirty=!0,e._childrenDirty=!1,e._usefulLayoutObj=[],e._init=!1,e}s(e,t);var i=e.prototype;return i.updateLayout=function(t){void 0===t&&(t=!1),(this._layoutDirty||t)&&(this._doLayout(),this._layoutDirty=!1)},i.onEnable=function(){this._addEventListeners();var t=this.node._uiProps.uiTransformComp;t.contentSize.equals(Qn.ZERO)&&t.setContentSize(this._layoutSize),this._childrenChanged()},i.onDisable=function(){this._usefulLayoutObj.length=0,this._removeEventListeners()},i._checkUsefulObj=function(){this._usefulLayoutObj.length=0;for(var t=this.node.children,e=0;e<t.length;++e){var i=t[e],n=i._uiProps.uiTransformComp;i.activeInHierarchy&&n&&this._usefulLayoutObj.push(n)}},i._addEventListeners=function(){ID.on(wD.EVENT_AFTER_UPDATE,this.updateLayout,this),this.node.on(vm.SIZE_CHANGED,this._resized,this),this.node.on(vm.ANCHOR_CHANGED,this._doLayoutDirty,this),this.node.on(vm.CHILD_ADDED,this._childAdded,this),this.node.on(vm.CHILD_REMOVED,this._childRemoved,this),this.node.on(vm.CHILDREN_ORDER_CHANGED,this._childrenChanged,this),this.node.on("childrenSiblingOrderChanged",this.updateLayout,this),this._addChildrenEventListeners()},i._removeEventListeners=function(){ID.off(wD.EVENT_AFTER_UPDATE,this.updateLayout,this),this.node.off(vm.SIZE_CHANGED,this._resized,this),this.node.off(vm.ANCHOR_CHANGED,this._doLayoutDirty,this),this.node.off(vm.CHILD_ADDED,this._childAdded,this),this.node.off(vm.CHILD_REMOVED,this._childRemoved,this),this.node.off(vm.CHILDREN_ORDER_CHANGED,this._childrenChanged,this),this.node.off("childrenSiblingOrderChanged",this.updateLayout,this),this._removeChildrenEventListeners()},i._addChildrenEventListeners=function(){for(var t=this.node.children,e=0;e<t.length;++e){var i=t[e];i.on(vm.SIZE_CHANGED,this._doLayoutDirty,this),i.on(vm.TRANSFORM_CHANGED,this._transformDirty,this),i.on(vm.ANCHOR_CHANGED,this._doLayoutDirty,this),i.on(vm.ACTIVE_IN_HIERARCHY_CHANGED,this._childrenChanged,this)}},i._removeChildrenEventListeners=function(){for(var t=this.node.children,e=0;e<t.length;++e){var i=t[e];i.off(vm.SIZE_CHANGED,this._doLayoutDirty,this),i.off(vm.TRANSFORM_CHANGED,this._transformDirty,this),i.off(vm.ANCHOR_CHANGED,this._doLayoutDirty,this),i.off(vm.ACTIVE_IN_HIERARCHY_CHANGED,this._childrenChanged,this)}},i._childAdded=function(t){t.on(vm.SIZE_CHANGED,this._doLayoutDirty,this),t.on(vm.TRANSFORM_CHANGED,this._transformDirty,this),t.on(vm.ANCHOR_CHANGED,this._doLayoutDirty,this),t.on(vm.ACTIVE_IN_HIERARCHY_CHANGED,this._childrenChanged,this),this._childrenChanged()},i._childRemoved=function(t){t.off(vm.SIZE_CHANGED,this._doLayoutDirty,this),t.off(vm.TRANSFORM_CHANGED,this._transformDirty,this),t.off(vm.ANCHOR_CHANGED,this._doLayoutDirty,this),t.off(vm.ACTIVE_IN_HIERARCHY_CHANGED,this._childrenChanged,this),this._childrenChanged()},i._resized=function(){this._layoutSize.set(this.node._uiProps.uiTransformComp.contentSize),this._doLayoutDirty()},i._doLayoutHorizontally=function(t,e,i,n){var r=this.node._uiProps.uiTransformComp.anchorPoint,s=this._getFixedBreakingNum(),a=1,o=this._paddingLeft;this._horizontalDirection===lXt.RIGHT_TO_LEFT&&(a=-1,o=this._paddingRight);var h=(this._horizontalDirection-r.x)*t+a*o,u=h-a*this._spacingX,l=0,c=0,_=0,f=0,d=!1,p=this._usefulLayoutObj.length,m=this._cellSize.width,g=this._getPaddingH();this._layoutType!==aXt.GRID&&this._resizeMode===oXt.CHILDREN&&(m=(t-g-(p-1)*this._spacingX)/p);for(var v=this._usefulLayoutObj,y=0;y<v.length;++y){var S=v[y],T=S.node,A=T.scale,b=this._getUsedScaleValue(A.x),E=this._getUsedScaleValue(A.y);this._resizeMode===oXt.CHILDREN&&(S.width=m/b,this._layoutType===aXt.GRID&&(S.height=this._cellSize.height/E));var C=Math.abs(this._horizontalDirection-S.anchorX),x=S.width*b,w=S.height*E;w>_&&(f=Math.max(_,f),c=_||w,_=w),u+=a*(C*x+this._spacingX);var R=a*(1-C)*x;if(e){if(s>0)(d=y/s>0&&y%s==0)&&(c=_>w?_:c);else if(x>t-g)u>h+a*C*x&&(d=!0);else{var I=(1-this._horizontalDirection-r.x)*t,D=u+R+a*(a>0?this._paddingRight:this._paddingLeft);d=Math.abs(D)>Math.abs(I)}d&&(u=h+a*C*x,w!==_&&(c=_),l+=c+this._spacingY,c=_=w)}var B=i(T,S,l);n&&T.setPosition(u,B),u+=R}return c=Math.max(c,_),Math.max(f,l+c)+this._getPaddingV()},i._doLayoutVertically=function(t,e,i,n){var r=this.node._uiProps.uiTransformComp.anchorPoint,s=this._getFixedBreakingNum(),a=1,o=this._paddingBottom;this._verticalDirection===uXt.TOP_TO_BOTTOM&&(a=-1,o=this._paddingTop);var h=(this._verticalDirection-r.y)*t+a*o,u=h-a*this._spacingY,l=0,c=0,_=0,f=0,d=!1,p=this._usefulLayoutObj.length,m=this._cellSize.height,g=this._getPaddingV();this._layoutType!==aXt.GRID&&this._resizeMode===oXt.CHILDREN&&(m=(t-g-(p-1)*this._spacingY)/p);for(var v=this._usefulLayoutObj,y=0;y<v.length;++y){var S=v[y],T=S.node,A=T.scale,b=this._getUsedScaleValue(A.x),E=this._getUsedScaleValue(A.y);this._resizeMode===oXt.CHILDREN&&(S.height=m/E,this._layoutType===aXt.GRID&&(S.width=this._cellSize.width/b));var C=Math.abs(this._verticalDirection-S.anchorY),x=S.width*b,w=S.height*E;x>l&&(c=Math.max(l,c),_=l||x,l=x),u+=a*(C*w+this._spacingY);var R=a*(1-C)*w;if(e){if(s>0)(d=y/s>0&&y%s==0)&&(_=l>w?l:_);else if(w>t-g)u>h+a*C*w&&(d=!0);else{var I=(1-this._verticalDirection-r.y)*t,D=u+R+a*(a>0?this._paddingTop:this._paddingBottom);d=Math.abs(D)>Math.abs(I)}d&&(u=h+a*C*w,x!==l&&(_=l),f+=_+this._spacingX,_=l=x)}var B=i(T,S,f);n&&(T.getPosition(wXt),T.setPosition(B,u,wXt.z)),u+=R}return _=Math.max(_,l),Math.max(c,f+_)+this._getPaddingH()},i._doLayoutGridAxisHorizontal=function(t,e){var i=this,n=e.width,r=1,s=-t.y*e.height,a=this._paddingBottom;this._verticalDirection===uXt.TOP_TO_BOTTOM&&(r=-1,s=(1-t.y)*e.height,a=this._paddingTop);var o=function(t,e,n){return s+r*(n+(1-e.anchorY)*e.height*i._getUsedScaleValue(t.scale.y)+a)},h=0;this._resizeMode===oXt.CONTAINER&&(h=this._doLayoutHorizontally(n,!0,o,!1),s=-t.y*h,this._verticalDirection===uXt.TOP_TO_BOTTOM&&(r=-1,s=(1-t.y)*h)),this._doLayoutHorizontally(n,!0,o,!0),this._resizeMode===oXt.CONTAINER&&this.node._uiProps.uiTransformComp.setContentSize(n,h)},i._doLayoutGridAxisVertical=function(t,e){var i=this,n=e.height,r=1,s=-t.x*e.width,a=this._paddingLeft;this._horizontalDirection===lXt.RIGHT_TO_LEFT&&(r=-1,s=(1-t.x)*e.width,a=this._paddingRight);var o=function(t,e,n){return s+r*(n+(1-e.anchorX)*e.width*i._getUsedScaleValue(t.scale.x)+a)},h=0;this._resizeMode===oXt.CONTAINER&&(h=this._doLayoutVertically(n,!0,o,!1),s=-t.x*h,this._horizontalDirection===lXt.RIGHT_TO_LEFT&&(r=-1,s=(1-t.x)*h)),this._doLayoutVertically(n,!0,o,!0),this._resizeMode===oXt.CONTAINER&&this.node._uiProps.uiTransformComp.setContentSize(h,n)},i._doLayoutGrid=function(){var t=this.node._uiProps.uiTransformComp,e=t.anchorPoint,i=t.contentSize;this.startAxis===hXt.HORIZONTAL?this._doLayoutGridAxisHorizontal(e,i):this.startAxis===hXt.VERTICAL&&this._doLayoutGridAxisVertical(e,i)},i._getHorizontalBaseWidth=function(){var t=this._usefulLayoutObj,e=0,i=t.length;if(this._resizeMode===oXt.CONTAINER){for(var n=0;n<t.length;++n){var r=t[n],s=r.node.scale;e+=r.width*this._getUsedScaleValue(s.x)}e+=(i-1)*this._spacingX+this._getPaddingH()}else e=this.node._uiProps.uiTransformComp.width;return e},i._getVerticalBaseHeight=function(){var t=this._usefulLayoutObj,e=0,i=t.length;if(this._resizeMode===oXt.CONTAINER){for(var n=0;n<t.length;++n){var r=t[n],s=r.node.scale;e+=r.height*this._getUsedScaleValue(s.y)}e+=(i-1)*this._spacingY+this._getPaddingV()}else e=this.node._uiProps.uiTransformComp.height;return e},i._doLayout=function(){var t=this;if(this._init&&!this._childrenDirty||(this._checkUsefulObj(),this._init=!0,this._childrenDirty=!1),this._layoutType===aXt.HORIZONTAL){var e=this._getHorizontalBaseWidth();this._doLayoutHorizontally(e,!1,(function(e){return(t._isAlign?gn.ZERO:e.position).y}),!0),this.node._uiProps.uiTransformComp.width=e}else if(this._layoutType===aXt.VERTICAL){var i=this._getVerticalBaseHeight();this._doLayoutVertically(i,!1,(function(e){return(t._isAlign?gn.ZERO:e.position).x}),!0),this.node._uiProps.uiTransformComp.height=i}else this._layoutType===aXt.GRID&&this._doLayoutGrid()},i._getUsedScaleValue=function(t){return this._affectedByScale?Math.abs(t):1},i._transformDirty=function(t){t&mm.SCALE&&t&mm.POSITION&&this._affectedByScale&&this._doLayoutDirty()},i._doLayoutDirty=function(){this._layoutDirty=!0},i._childrenChanged=function(){this._childrenDirty=!0,this._doLayoutDirty()},i._getPaddingH=function(){return this._paddingLeft+this._paddingRight},i._getPaddingV=function(){return this._paddingTop+this._paddingBottom},i._getFixedBreakingNum=function(){if(this._layoutType!==aXt.GRID||this._constraint===cXt.NONE||this._constraintNum<=0)return 0;var t=this._constraint===cXt.FIXED_ROW?Math.ceil(this._usefulLayoutObj.length/this._constraintNum):this._constraintNum;return this._startAxis===hXt.VERTICAL&&(t=this._constraint===cXt.FIXED_COL?Math.ceil(this._usefulLayoutObj.length/this._constraintNum):this._constraintNum),t},n(e,[{key:"alignHorizontal",get:function(){return this._isAlign},set:function(t){this._layoutType===aXt.HORIZONTAL&&(this._isAlign=t,this._doLayoutDirty())}},{key:"alignVertical",get:function(){return this._isAlign},set:function(t){this._layoutType===aXt.VERTICAL&&(this._isAlign=t,this._doLayoutDirty())}},{key:"type",get:function(){return this._layoutType},set:function(t){this._layoutType=t,this._doLayoutDirty()}},{key:"resizeMode",get:function(){return this._resizeMode},set:function(t){this._layoutType!==aXt.NONE&&(this._resizeMode=t,this._doLayoutDirty())}},{key:"cellSize",get:function(){return this._cellSize},set:function(t){this._cellSize!==t&&(this._cellSize.set(t),this._doLayoutDirty())}},{key:"startAxis",get:function(){return this._startAxis},set:function(t){this._startAxis!==t&&(this._startAxis=t,this._doLayoutDirty())}},{key:"paddingLeft",get:function(){return this._paddingLeft},set:function(t){this._paddingLeft!==t&&(this._paddingLeft=t,this._doLayoutDirty())}},{key:"paddingRight",get:function(){return this._paddingRight},set:function(t){this._paddingRight!==t&&(this._paddingRight=t,this._doLayoutDirty())}},{key:"paddingTop",get:function(){return this._paddingTop},set:function(t){this._paddingTop!==t&&(this._paddingTop=t,this._doLayoutDirty())}},{key:"paddingBottom",get:function(){return this._paddingBottom},set:function(t){this._paddingBottom!==t&&(this._paddingBottom=t,this._doLayoutDirty())}},{key:"spacingX",get:function(){return this._spacingX},set:function(t){this._spacingX!==t&&(this._spacingX=t,this._doLayoutDirty())}},{key:"spacingY",get:function(){return this._spacingY},set:function(t){this._spacingY!==t&&(this._spacingY=t,this._doLayoutDirty())}},{key:"verticalDirection",get:function(){return this._verticalDirection},set:function(t){this._verticalDirection!==t&&(this._verticalDirection=t,this._doLayoutDirty())}},{key:"horizontalDirection",get:function(){return this._horizontalDirection},set:function(t){this._horizontalDirection!==t&&(this._horizontalDirection=t,this._doLayoutDirty())}},{key:"padding",get:function(){return this._paddingLeft},set:function(t){this.paddingLeft===t&&this._paddingRight===t&&this._paddingTop===t&&this._paddingBottom===t||(this._paddingLeft=this._paddingRight=this._paddingTop=this._paddingBottom=t,this._doLayoutDirty())}},{key:"constraint",get:function(){return this._constraint},set:function(t){this._layoutType!==aXt.NONE&&this._constraint!==t&&(this._constraint=t,this._doLayoutDirty())}},{key:"constraintNum",get:function(){return this._constraintNum},set:function(t){this._constraint!==cXt.NONE&&this._constraintNum!==t&&(t<=0&&z("Limit values to be greater than 0"),this._constraintNum=t,this._doLayoutDirty())}},{key:"affectedByScale",get:function(){return this._affectedByScale},set:function(t){this._affectedByScale=t,this._doLayoutDirty()}}]),e}(mp)).Type=aXt,sXt.VerticalDirection=uXt,sXt.HorizontalDirection=lXt,sXt.ResizeMode=oXt,sXt.AxisDirection=hXt,sXt.Constraint=cXt,m((zWt=sXt).prototype,"type",[LWt],Object.getOwnPropertyDescriptor(zWt.prototype,"type"),zWt.prototype),m(zWt.prototype,"resizeMode",[NWt],Object.getOwnPropertyDescriptor(zWt.prototype,"resizeMode"),zWt.prototype),m(zWt.prototype,"startAxis",[FWt],Object.getOwnPropertyDescriptor(zWt.prototype,"startAxis"),zWt.prototype),m(zWt.prototype,"verticalDirection",[kWt],Object.getOwnPropertyDescriptor(zWt.prototype,"verticalDirection"),zWt.prototype),m(zWt.prototype,"horizontalDirection",[GWt],Object.getOwnPropertyDescriptor(zWt.prototype,"horizontalDirection"),zWt.prototype),m(zWt.prototype,"constraint",[VWt],Object.getOwnPropertyDescriptor(zWt.prototype,"constraint"),zWt.prototype),HWt=ja(zWt.prototype,"_resizeMode",[lo],(function(){return oXt.NONE})),WWt=ja(zWt.prototype,"_layoutType",[lo],(function(){return aXt.NONE})),XWt=ja(zWt.prototype,"_cellSize",[lo],(function(){return new Qn(40,40)})),jWt=ja(zWt.prototype,"_startAxis",[lo],(function(){return hXt.HORIZONTAL})),YWt=ja(zWt.prototype,"_paddingLeft",[lo],(function(){return 0})),qWt=ja(zWt.prototype,"_paddingRight",[lo],(function(){return 0})),KWt=ja(zWt.prototype,"_paddingTop",[lo],(function(){return 0})),QWt=ja(zWt.prototype,"_paddingBottom",[lo],(function(){return 0})),ZWt=ja(zWt.prototype,"_spacingX",[lo],(function(){return 0})),JWt=ja(zWt.prototype,"_spacingY",[lo],(function(){return 0})),$Wt=ja(zWt.prototype,"_verticalDirection",[lo],(function(){return uXt.TOP_TO_BOTTOM})),tXt=ja(zWt.prototype,"_horizontalDirection",[lo],(function(){return lXt.LEFT_TO_RIGHT})),eXt=ja(zWt.prototype,"_constraint",[lo],(function(){return cXt.NONE})),iXt=ja(zWt.prototype,"_constraintNum",[lo],(function(){return 2})),nXt=ja(zWt.prototype,"_affectedByScale",[lo],(function(){return!1})),rXt=ja(zWt.prototype,"_isAlign",[lo],(function(){return!1})),UWt=zWt))||UWt)||UWt)||UWt));S.Layout=RXt,function(t){t[t.HORIZONTAL=0]="HORIZONTAL",t[t.VERTICAL=1]="VERTICAL",t[t.FILLED=2]="FILLED"}(xXt||(xXt={})),Ee(xXt);var IXt,DXt,BXt,MXt,PXt,OXt,LXt,NXt,FXt,kXt,GXt,VXt,UXt,zXt=t("gP",(fXt=eo("cc.ProgressBar"),dXt=no(110),pXt=io(wO),mXt=Lo(PF),gXt=Lo(xXt),fXt(vXt=dXt(vXt=pXt(((CXt=function(t){function e(){var e;return(e=t.call(this)||this)._barSprite=SXt&&SXt(),e._mode=TXt&&TXt(),e._totalLength=AXt&&AXt(),e._progress=bXt&&bXt(),e._reverse=EXt&&EXt(),e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._updateBarStatus()},i._initBarSprite=function(){if(this._barSprite){var t=this._barSprite.node;if(!t)return;var e=this.node._uiProps.uiTransformComp,i=e.contentSize,n=e.anchorPoint,r=t._uiProps.uiTransformComp.contentSize;if(this._barSprite.fillType===PF.FillType.RADIAL&&(this._mode=xXt.FILLED),this._mode===xXt.HORIZONTAL?this.totalLength=r.width:this._mode===xXt.VERTICAL?this.totalLength=r.height:this.totalLength=this._barSprite.fillRange,t.parent===this.node){var s=-i.width*n.x;t.setPosition(s,0,0)}}},i._updateBarStatus=function(){if(this._barSprite){var t=this._barSprite.node;if(!t)return;var e=t._uiProps.uiTransformComp,i=e.anchorPoint,n=e.contentSize,r=new jn(0,.5),s=ki(this._progress),a=this._totalLength*s,o=n,h=0,u=0;switch(this._mode){case xXt.HORIZONTAL:this._reverse&&(r=new jn(1,.5)),o=new Qn(a,n.height),h=this._totalLength,u=n.height;break;case xXt.VERTICAL:r=this._reverse?new jn(.5,1):new jn(.5,0),o=new Qn(n.width,a),h=n.width,u=this._totalLength}if(this._mode===xXt.FILLED)this._barSprite.type!==PF.Type.FILLED?tt(16397):(this._reverse&&(a*=-1),this._barSprite.fillRange=a);else if(this._barSprite.type!==PF.Type.FILLED){var l=r.x-i.x,c=r.y-i.y,_=new gn(t.position);_.add3f(h*l,u*c,0),t.setPosition(_),e.setAnchorPoint(r),e.setContentSize(o)}else tt(16398)}},n(e,[{key:"barSprite",get:function(){return this._barSprite},set:function(t){this._barSprite!==t&&(this._barSprite=t,this._initBarSprite())}},{key:"mode",get:function(){return this._mode},set:function(t){if(this._mode!==t&&(this._mode=t,this._barSprite)){var e=this._barSprite.node;if(!e)return;var i=e._uiProps.uiTransformComp.contentSize;this._mode===xXt.HORIZONTAL?this.totalLength=i.width:this._mode===xXt.VERTICAL?this.totalLength=i.height:this._mode===xXt.FILLED&&(this.totalLength=this._barSprite.fillRange)}}},{key:"totalLength",get:function(){return this._totalLength},set:function(t){this._mode===xXt.FILLED&&(t=ki(t)),this._totalLength!==t&&(this._totalLength=t,this._updateBarStatus())}},{key:"progress",get:function(){return this._progress},set:function(t){this._progress!==t&&(this._progress=t,this._updateBarStatus())}},{key:"reverse",get:function(){return this._reverse},set:function(t){this._reverse!==t&&(this._reverse=t,this._barSprite&&(this._barSprite.fillStart=1-this._barSprite.fillStart),this._updateBarStatus())}}]),e}(mp)).Mode=xXt,m((yXt=CXt).prototype,"barSprite",[mXt],Object.getOwnPropertyDescriptor(yXt.prototype,"barSprite"),yXt.prototype),m(yXt.prototype,"mode",[gXt],Object.getOwnPropertyDescriptor(yXt.prototype,"mode"),yXt.prototype),SXt=ja(yXt.prototype,"_barSprite",[lo],(function(){return null})),TXt=ja(yXt.prototype,"_mode",[lo],(function(){return xXt.HORIZONTAL})),AXt=ja(yXt.prototype,"_totalLength",[lo],(function(){return 1})),bXt=ja(yXt.prototype,"_progress",[lo],(function(){return.1})),EXt=ja(yXt.prototype,"_reverse",[lo],(function(){return!1})),vXt=yXt))||vXt)||vXt)||vXt));S.ProgressBar=zXt;var HXt,WXt=new gn,XXt=new gn,jXt=new gn,YXt=new jn,qXt=new En,KXt=new jn;!function(t){t[t.HORIZONTAL=0]="HORIZONTAL",t[t.VERTICAL=1]="VERTICAL"}(HXt||(HXt={})),we(HXt);var QXt,ZXt=t("gQ",(IXt=eo("cc.ScrollBar"),DXt=no(110),BXt=io(wO),MXt=Lo(PF),PXt=Lo(HXt),IXt(OXt=DXt(OXt=BXt(((UXt=function(t){function e(){var e;return(e=t.call(this)||this)._scrollView=NXt&&NXt(),e._handle=FXt&&FXt(),e._direction=kXt&&kXt(),e._enableAutoHide=GXt&&GXt(),e._autoHideTime=VXt&&VXt(),e._touching=!1,e._opacity=255,e._autoHideRemainingTime=0,e}s(e,t);var i=e.prototype;return i.hide=function(){this._autoHideRemainingTime=0,this._setOpacity(0)},i.show=function(){this._autoHideRemainingTime=this._autoHideTime,this._opacity=255,this._setOpacity(this._opacity)},i.onScroll=function(t){if(this._scrollView){var e=this._scrollView.content;if(e){var i=e._uiProps.uiTransformComp.contentSize,n=this._scrollView.node._uiProps.uiTransformComp.contentSize,r=this.node._uiProps.uiTransformComp.contentSize;if(!this._conditionalDisableScrollBar(i,n)){this._enableAutoHide&&(this._autoHideRemainingTime=this._autoHideTime,this._setOpacity(this._opacity));var s=0,a=0,o=0,h=0,u=0,l=KXt;l.set(0,0),this._direction===HXt.HORIZONTAL?(s=i.width,a=n.width,u=r.width,o=t.x,this._convertToScrollViewSpace(l,e),h=-l.x):this._direction===HXt.VERTICAL&&(s=i.height,a=n.height,u=r.height,o=t.y,this._convertToScrollViewSpace(l,e),h=-l.y);var c=this._calculateLength(s,a,u,o),_=KXt;this._calculatePosition(_,s,a,u,h,o,c),this._updateLength(c),this._updateHandlerPosition(_)}}}},i.setScrollView=function(t){this._scrollView=t},i.onTouchBegan=function(){this._enableAutoHide&&(this._touching=!0)},i.onTouchEnded=function(){if(this._enableAutoHide&&(this._touching=!1,!(this._autoHideTime<=0))){if(this._scrollView){var t=this._scrollView.content;if(t){var e=t._uiProps.uiTransformComp.contentSize,i=this._scrollView.node._uiProps.uiTransformComp.contentSize;if(this._conditionalDisableScrollBar(e,i))return}}this._autoHideRemainingTime=this._autoHideTime}},i.onEnable=function(){var t=this.node.getComponent(PF);t&&(this._opacity=t.color.a)},i.start=function(){this._enableAutoHide&&this._setOpacity(0)},i.update=function(t){this._processAutoHide(t)},i._convertToScrollViewSpace=function(t,e){var i=this._scrollView&&this._scrollView.node._uiProps.uiTransformComp,n=e._uiProps.uiTransformComp;if(i&&n){WXt.set(-n.anchorX*n.width,-n.anchorY*n.height,0),n.convertToWorldSpaceAR(WXt,XXt);var r=i.convertToNodeSpaceAR(XXt);r.x+=i.anchorX*i.width,r.y+=i.anchorY*i.height,t.set(r.x,r.y)}else t.set(jn.ZERO)},i._setOpacity=function(t){if(this._handle){var e=this.node.getComponent(PF);e&&(qXt.set(e.color),qXt.a=t,e.color=qXt),(e=this._handle.getComponent(PF))&&(qXt.set(e.color),qXt.a=t,e.color=qXt)}},i._updateHandlerPosition=function(t){if(this._handle){var e=jXt;this._fixupHandlerPosition(e),this._handle.node.setPosition(t.x+e.x,t.y+e.y,e.z)}},i._fixupHandlerPosition=function(t){var e=this.node._uiProps.uiTransformComp,i=e.contentSize,n=e.anchorPoint,r=this.handle.node._uiProps.uiTransformComp.contentSize,s=this.handle.node.parent;gn.set(WXt,-i.width*n.x,-i.height*n.y,0);var a=this.node._uiProps.uiTransformComp.convertToWorldSpaceAR(WXt,XXt),o=t;o.set(0,0,0),s._uiProps.uiTransformComp.convertToNodeSpaceAR(a,o),this.direction===HXt.HORIZONTAL?o.set(o.x,o.y+(i.height-r.height)/2,o.z):this.direction===HXt.VERTICAL&&o.set(o.x+(i.width-r.width)/2,o.y,o.z),this.handle.node.setPosition(o)},i._conditionalDisableScrollBar=function(t,e){return t.width<=e.width&&this._direction===HXt.HORIZONTAL||t.height<=e.height&&this._direction===HXt.VERTICAL},i._calculateLength=function(t,e,i,n){var r=t;return n&&(r+=20*(n>0?n:-n)),i*(e/r)},i._calculatePosition=function(t,e,i,n,r,s,a){var o=e-i;s&&(o+=Math.abs(s));var h=0;o&&(h=ki(h=r/o));var u=(n-a)*h;this._direction===HXt.VERTICAL?t.set(0,u):t.set(u,0)},i._updateLength=function(t){if(this._handle){var e=this._handle.node._uiProps.uiTransformComp,i=e.contentSize,n=e.anchorPoint;n.x===YXt.x&&n.y===YXt.y||e.setAnchorPoint(YXt),this._direction===HXt.HORIZONTAL?e.setContentSize(t,i.height):e.setContentSize(i.width,t)}},i._processAutoHide=function(t){if(this._enableAutoHide&&!(this._autoHideRemainingTime<=0)&&!this._touching&&(this._autoHideRemainingTime-=t,this._autoHideRemainingTime<=this._autoHideTime)){this._autoHideRemainingTime=Math.max(0,this._autoHideRemainingTime);var e=this._opacity*(this._autoHideRemainingTime/this._autoHideTime);this._setOpacity(e)}},n(e,[{key:"handle",get:function(){return this._handle},set:function(t){this._handle!==t&&(this._handle=t,this.onScroll(jn.ZERO))}},{key:"direction",get:function(){return this._direction},set:function(t){this._direction!==t&&(this._direction=t,this.onScroll(jn.ZERO))}},{key:"enableAutoHide",get:function(){return this._enableAutoHide},set:function(t){this._enableAutoHide!==t&&(this._enableAutoHide=t,this._enableAutoHide&&this._setOpacity(0))}},{key:"autoHideTime",get:function(){return this._autoHideTime},set:function(t){this._autoHideTime!==t&&(this._autoHideTime=t)}}]),e}(mp)).Direction=HXt,m((LXt=UXt).prototype,"handle",[MXt],Object.getOwnPropertyDescriptor(LXt.prototype,"handle"),LXt.prototype),m(LXt.prototype,"direction",[PXt],Object.getOwnPropertyDescriptor(LXt.prototype,"direction"),LXt.prototype),NXt=ja(LXt.prototype,"_scrollView",[lo],(function(){return null})),FXt=ja(LXt.prototype,"_handle",[lo],(function(){return null})),kXt=ja(LXt.prototype,"_direction",[lo],(function(){return HXt.HORIZONTAL})),GXt=ja(LXt.prototype,"_enableAutoHide",[lo],(function(){return!1})),VXt=ja(LXt.prototype,"_autoHideTime",[lo],(function(){return 1})),OXt=LXt))||OXt)||OXt)||OXt));S.ScrollBar=ZXt;var JXt,$Xt,tjt,ejt,ijt,njt,rjt,sjt,ajt,ojt,hjt,ujt,ljt,cjt,_jt,fjt,djt,pjt,mjt,gjt,vjt,yjt=t("gV",eo("cc.ViewGroup")(QXt=no(110)(QXt=function(t){function e(){return t.apply(this,arguments)||this}return s(e,t),e}(mp))||QXt)||QXt);S.ViewGroup=yjt;var Sjt,Tjt,Ajt=1e-4,bjt=new gn,Ejt=new gn,Cjt=new jn,xjt=new jn,wjt=function(){return(new Date).getMilliseconds()},Rjt={"scroll-to-top":0,"scroll-to-bottom":1,"scroll-to-left":2,"scroll-to-right":3,scrolling:4,"bounce-bottom":6,"bounce-left":7,"bounce-right":8,"bounce-top":5,"scroll-ended":9,"touch-up":10,"scroll-ended-with-threshold":11,"scroll-began":12};!function(t){t.NONE="",t.SCROLL_TO_TOP="scroll-to-top",t.SCROLL_TO_BOTTOM="scroll-to-bottom",t.SCROLL_TO_LEFT="scroll-to-left",t.SCROLL_TO_RIGHT="scroll-to-right",t.SCROLL_BEGAN="scroll-began",t.SCROLL_ENDED="scroll-ended",t.BOUNCE_TOP="bounce-top",t.BOUNCE_BOTTOM="bounce-bottom",t.BOUNCE_LEFT="bounce-left",t.BOUNCE_RIGHT="bounce-right",t.SCROLLING="scrolling",t.SCROLL_ENG_WITH_THRESHOLD="scroll-ended-with-threshold",t.TOUCH_UP="touch-up"}(Sjt||(Sjt={})),function(t){t[t.NONE=0]="NONE",t[t.LEFT=1]="LEFT",t[t.RIGHT=2]="RIGHT"}(Tjt||(Tjt={}));var Ijt,Djt,Bjt,Mjt,Pjt,Ojt,Ljt,Njt,Fjt,kjt,Gjt,Vjt,Ujt,zjt=t("gR",(JXt=eo("cc.ScrollView"),$Xt=no(110),tjt=io(wO),ejt=Lo(hg),ijt=Lo(ZXt),njt=Lo(ZXt),rjt=Lo([fp]),JXt(sjt=$Xt(sjt=tjt(((vjt=function(t){function e(){var e;return(e=t.call(this)||this).bounceDuration=ojt&&ojt(),e.brake=hjt&&hjt(),e.elastic=ujt&&ujt(),e.inertia=ljt&&ljt(),e.horizontal=cjt&&cjt(),e.vertical=_jt&&_jt(),e.cancelInnerEvents=fjt&&fjt(),e.scrollEvents=djt&&djt(),e._autoScrolling=!1,e._scrolling=!1,e._content=pjt&&pjt(),e._horizontalScrollBar=mjt&&mjt(),e._verticalScrollBar=gjt&&gjt(),e._topBoundary=0,e._bottomBoundary=0,e._leftBoundary=0,e._rightBoundary=0,e._touchMoveDisplacements=[],e._touchMoveTimeDeltas=[],e._touchMovePreviousTimestamp=0,e._touchMoved=!1,e._autoScrollAttenuate=!1,e._autoScrollStartPosition=new gn,e._autoScrollTargetDelta=new gn,e._autoScrollTotalTime=0,e._autoScrollAccumulatedTime=0,e._autoScrollCurrentlyOutOfBoundary=!1,e._autoScrollBraking=!1,e._autoScrollBrakingStartPosition=new gn,e._outOfBoundaryAmount=new gn,e._outOfBoundaryAmountDirty=!0,e._stopMouseWheel=!1,e._mouseWheelEventElapsedTime=0,e._isScrollEndedWithThresholdEventFired=!1,e._scrollEventEmitMask=0,e._isBouncing=!1,e._contentPos=new gn,e._deltaPos=new gn,e._deltaAmount=new gn,e._hoverIn=Tjt.NONE,e}s(e,t);var i=e.prototype;return i.scrollToBottom=function(t,e){void 0===e&&(e=!0);var i=this._calculateMovePercentDelta({anchor:new jn(0,0),applyToHorizontal:!1,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i,!0)},i.scrollToTop=function(t,e){void 0===e&&(e=!0);var i=this._calculateMovePercentDelta({anchor:new jn(0,1),applyToHorizontal:!1,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},i.scrollToLeft=function(t,e){void 0===e&&(e=!0);var i=this._calculateMovePercentDelta({anchor:new jn(0,0),applyToHorizontal:!0,applyToVertical:!1});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},i.scrollToRight=function(t,e){void 0===e&&(e=!0);var i=this._calculateMovePercentDelta({anchor:new jn(1,0),applyToHorizontal:!0,applyToVertical:!1});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},i.scrollToTopLeft=function(t,e){void 0===e&&(e=!0);var i=this._calculateMovePercentDelta({anchor:new jn(0,1),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},i.scrollToTopRight=function(t,e){void 0===e&&(e=!0);var i=this._calculateMovePercentDelta({anchor:new jn(1,1),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},i.scrollToBottomLeft=function(t,e){void 0===e&&(e=!0);var i=this._calculateMovePercentDelta({anchor:new jn(0,0),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},i.scrollToBottomRight=function(t,e){void 0===e&&(e=!0);var i=this._calculateMovePercentDelta({anchor:new jn(1,0),applyToHorizontal:!0,applyToVertical:!0});t?this._startAutoScroll(i,t,!1!==e):this._moveContent(i)},i.scrollToOffset=function(t,e,i){void 0===i&&(i=!0);var n=this.getMaxScrollOffset(),r=new jn(0,0);0===n.x?r.x=0:r.x=t.x/n.x,0===n.y?r.y=1:r.y=(n.y-t.y)/n.y,this.scrollTo(r,e,i)},i.getScrollOffset=function(){var t=this._getContentTopBoundary()-this._topBoundary,e=this._getContentLeftBoundary()-this._leftBoundary;return new jn(e,t)},i.getMaxScrollOffset=function(){if(!this._content||!this.view)return jn.ZERO;var t=this._content._uiProps.uiTransformComp.contentSize,e=t.width-this.view.width,i=t.height-this.view.height;return new jn(e=e>=0?e:0,i=i>=0?i:0)},i.scrollToPercentHorizontal=function(t,e,i){var n=this._calculateMovePercentDelta({anchor:new jn(t,0),applyToHorizontal:!0,applyToVertical:!1});e?this._startAutoScroll(n,e,!1!==i):this._moveContent(n)},i.scrollTo=function(t,e,i){var n=this._calculateMovePercentDelta({anchor:new jn(t),applyToHorizontal:!0,applyToVertical:!0});e?this._startAutoScroll(n,e,i):this._moveContent(n)},i.scrollToPercentVertical=function(t,e,i){var n=this._calculateMovePercentDelta({anchor:new jn(0,t),applyToHorizontal:!1,applyToVertical:!0});e?this._startAutoScroll(n,e,i):this._moveContent(n)},i.stopAutoScroll=function(){this._autoScrolling=!1,this._autoScrollAccumulatedTime=this._autoScrollTotalTime},i.setContentPosition=function(t){this._setContentPosition(t)},i._setContentPosition=function(t){if(this._content){var e=this._getContentPosition();Math.abs(t.x-e.x)<Ajt&&Math.abs(t.y-e.y)<Ajt||(this._content.setPosition(t),this._outOfBoundaryAmountDirty=!0)}},i.getContentPosition=function(){return this._getContentPosition()},i._getContentPosition=function(){return this._content?(this._contentPos.set(this._content.position),this._contentPos):gn.ZERO.clone()},i.isScrolling=function(){return this._scrolling},i.isAutoScrolling=function(){return this._autoScrolling},i.getScrollEndedEventTiming=function(){return Ajt},i.start=function(){this._calculateBoundary(),this._content&&ID.once(wD.EVENT_BEFORE_DRAW,this._adjustContentOutOfBoundary,this)},i.onEnable=function(){this._registerEvent(),this._content&&(this._content.on(vm.SIZE_CHANGED,this._calculateBoundary,this),this._content.on(vm.TRANSFORM_CHANGED,this._scaleChanged,this),this.view&&(this.view.node.on(vm.TRANSFORM_CHANGED,this._scaleChanged,this),this.view.node.on(vm.SIZE_CHANGED,this._calculateBoundary,this))),this._calculateBoundary(),this._updateScrollBarState()},i.update=function(t){var e=this._deltaAmount;this._autoScrolling?(this._processAutoScrolling(t),e.x=0,e.y=0):0===e.x&&0===e.y||(this._processDeltaMove(e),e.x=0,e.y=0)},i.onDisable=function(){this._unregisterEvent(),this._content&&(this._content.off(vm.SIZE_CHANGED,this._calculateBoundary,this),this._content.off(vm.TRANSFORM_CHANGED,this._scaleChanged,this),this.view&&(this.view.node.off(vm.TRANSFORM_CHANGED,this._scaleChanged,this),this.view.node.off(vm.SIZE_CHANGED,this._calculateBoundary,this))),this._deltaAmount.set(0,0),this._hideScrollBar(),this.stopAutoScroll()},i._registerEvent=function(){this.node.on(vm.TOUCH_START,this._onTouchBegan,this,!0),this.node.on(vm.TOUCH_MOVE,this._onTouchMoved,this,!0),this.node.on(vm.TOUCH_END,this._onTouchEnded,this,!0),this.node.on(vm.TOUCH_CANCEL,this._onTouchCancelled,this,!0),this.node.on(vm.MOUSE_WHEEL,this._onMouseWheel,this,!0),this.node.on(eHt.XRUI_HOVER_ENTERED,this._xrHoverEnter,this),this.node.on(eHt.XRUI_HOVER_EXITED,this._xrHoverExit,this),kw.on(Fw.EventType.HANDLE_INPUT,this._dispatchEventHandleInput,this),kw.on(Fw.EventType.GAMEPAD_INPUT,this._dispatchEventHandleInput,this)},i._unregisterEvent=function(){this.node.off(vm.TOUCH_START,this._onTouchBegan,this,!0),this.node.off(vm.TOUCH_MOVE,this._onTouchMoved,this,!0),this.node.off(vm.TOUCH_END,this._onTouchEnded,this,!0),this.node.off(vm.TOUCH_CANCEL,this._onTouchCancelled,this,!0),this.node.off(vm.MOUSE_WHEEL,this._onMouseWheel,this,!0),this.node.off(eHt.XRUI_HOVER_ENTERED,this._xrHoverEnter,this),this.node.off(eHt.XRUI_HOVER_EXITED,this._xrHoverExit,this),kw.off(Fw.EventType.HANDLE_INPUT,this._dispatchEventHandleInput,this),kw.off(Fw.EventType.GAMEPAD_INPUT,this._dispatchEventHandleInput,this)},i._onMouseWheel=function(t,e){if(this.enabledInHierarchy&&!this._hasNestedViewGroup(t,e)){var i=new gn,n=t.getScrollY();this.vertical?i.set(0,-.1*n,0):this.horizontal&&i.set(-.1*n,0,0),this._mouseWheelEventElapsedTime=0,this._deltaAmount.add(i),this._stopMouseWheel||(this._handlePressLogic(),this.schedule(this._checkMouseWheel,1/60),this._stopMouseWheel=!0),this._stopPropagationIfTargetIsMe(t)}},i._onTouchBegan=function(t,e){this.enabledInHierarchy&&this._content&&(this._hasNestedViewGroup(t,e)||(this._handlePressLogic(),this._touchMoved=!1,this._stopPropagationIfTargetIsMe(t)))},i._onTouchMoved=function(t,e){if(this.enabledInHierarchy&&this._content&&!this._hasNestedViewGroup(t,e)){var i=t.touch;if(this._handleMoveLogic(i),this.cancelInnerEvents){var n=i.getUILocation(Cjt);if(n.subtract(i.getUIStartLocation(xjt)),n.length()>7&&!this._touchMoved&&t.target!==this.node){var r=new Wx(t.getTouches(),t.bubbles,Fx.TOUCH_CANCEL);r.touch=t.touch,r.simulate=!0,t.target.dispatchEvent(r),this._touchMoved=!0}this._stopPropagationIfTargetIsMe(t)}}},i._onTouchEnded=function(t,e){if(this.enabledInHierarchy&&this._content&&t&&!this._hasNestedViewGroup(t,e)){this._dispatchEvent(Sjt.TOUCH_UP);var i=t.touch;this._handleReleaseLogic(i),this._touchMoved?t.propagationStopped=!0:this._stopPropagationIfTargetIsMe(t)}},i._onTouchCancelled=function(t,e){if(this.enabledInHierarchy&&this._content&&!this._hasNestedViewGroup(t,e)){if(t&&!t.simulate){var i=t.touch;this._handleReleaseLogic(i)}this._stopPropagationIfTargetIsMe(t)}},i._calculateBoundary=function(){if(this._content&&this.view){var t=this._content.getComponent(RXt);t&&t.enabledInHierarchy&&t.updateLayout();var e=this.view,i=e.width*e.anchorX,n=e.height*e.anchorY;this._leftBoundary=-i,this._bottomBoundary=-n,this._rightBoundary=this._leftBoundary+e.width,this._topBoundary=this._bottomBoundary+e.height,this._moveContentToTopLeft(e.contentSize)}},i._hasNestedViewGroup=function(t,e){if(!t||t.eventPhase!==Gx.CAPTURING_PHASE)return!1;if(e)for(var i,n=f(e);!(i=n()).done;){var r=i.value;if(this.node===r)return!(!t.target||!t.target.getComponent(yjt));if(r.getComponent(yjt))return!0}return!1},i._startInertiaScroll=function(t){var e=new gn(t);e.multiplyScalar(.7),this._startAttenuatingAutoScroll(e,t)},i._calculateAttenuatedFactor=function(t){return this.brake<=0?1-this.brake:(1-this.brake)*(1/(1+14e-6*t+t*t*8e-9))},i._startAttenuatingAutoScroll=function(t,e){var i=t.clone();if(i.normalize(),this._content&&this.view){var n=this._content._uiProps.uiTransformComp.contentSize,r=this.view.contentSize,s=n.width-r.width,a=n.height-r.height,o=this._calculateAttenuatedFactor(s),h=this._calculateAttenuatedFactor(a);i.x=i.x*s*(1-this.brake)*o,i.y=i.y*a*h*(1-this.brake),i.z=0}var u=t.length(),l=i.length()/u;if(i.add(t),this.brake>0&&l>7){l=Math.sqrt(l);var c=t.clone();c.multiplyScalar(l),i.set(c),i.add(t)}var _=this._calculateAutoScrollTimeByInitialSpeed(e.length());this.brake>0&&l>3&&(_*=l=3),0===this.brake&&l>1&&(_*=l),this._startAutoScroll(i,_,!0)},i._calculateAutoScrollTimeByInitialSpeed=function(t){return Math.sqrt(Math.sqrt(t/5))},i._startAutoScroll=function(t,e,i){void 0===i&&(i=!1);var n=this._flattenVectorByDirection(t);this._autoScrolling=!0,this._autoScrollTargetDelta=n,this._autoScrollAttenuate=i,gn.copy(this._autoScrollStartPosition,this._getContentPosition()),this._autoScrollTotalTime=e,this._autoScrollAccumulatedTime=0,this._autoScrollBraking=!1,this._isScrollEndedWithThresholdEventFired=!1,this._autoScrollBrakingStartPosition.set(0,0,0),this._getHowMuchOutOfBoundary().equals(gn.ZERO,Ajt)||(this._autoScrollCurrentlyOutOfBoundary=!0)},i._calculateTouchMoveVelocity=function(){var t=new gn,e=0;if((e=this._touchMoveTimeDeltas.reduce((function(t,e){return t+e}),e))<=0||e>=.5)t.set(gn.ZERO);else{var i=new gn;i=this._touchMoveDisplacements.reduce((function(t,e){return t.add(e),t}),i),t.set(i.x*(1-this.brake)/e,i.y*(1-this.brake)/e,i.z)}return t},i._flattenVectorByDirection=function(t){var e=t;return e.x=this.horizontal?e.x:0,e.y=this.vertical?e.y:0,e},i._moveContent=function(t,e){var i=this._flattenVectorByDirection(t);bjt.set(this._getContentPosition()),bjt.add(i),bjt.set(Math.round(1e4*bjt.x)*Ajt,Math.round(1e4*bjt.y)*Ajt,bjt.z),this._setContentPosition(bjt);var n=this._getHowMuchOutOfBoundary();Cjt.set(n.x,n.y),this._updateScrollBar(Cjt),this.elastic&&e&&this._startBounceBackIfNeeded()},i._getContentLeftBoundary=function(){if(!this._content)return-1;var t=this._getContentPosition(),e=this._content._uiProps.uiTransformComp;return t.x-e.anchorX*e.width},i._getContentRightBoundary=function(){if(!this._content)return-1;var t=this._content._uiProps.uiTransformComp;return this._getContentLeftBoundary()+t.width},i._getContentTopBoundary=function(){if(!this._content)return-1;var t=this._content._uiProps.uiTransformComp;return this._getContentBottomBoundary()+t.height},i._getContentBottomBoundary=function(){if(!this._content)return-1;var t=this._getContentPosition(),e=this._content._uiProps.uiTransformComp;return t.y-e.anchorY*e.height},i._getHowMuchOutOfBoundary=function(t){if((t=t||new gn).equals(gn.ZERO,Ajt)&&!this._outOfBoundaryAmountDirty)return this._outOfBoundaryAmount;var e=new gn,i=this._getContentLeftBoundary(),n=this._getContentRightBoundary();i+t.x>this._leftBoundary?e.x=this._leftBoundary-(i+t.x):n+t.x<this._rightBoundary&&(e.x=this._rightBoundary-(n+t.x));var r=this._getContentTopBoundary(),s=this._getContentBottomBoundary();return r+t.y<this._topBoundary?e.y=this._topBoundary-(r+t.y):s+t.y>this._bottomBoundary&&(e.y=this._bottomBoundary-(s+t.y)),t.equals(gn.ZERO,Ajt)&&(this._outOfBoundaryAmount=e,this._outOfBoundaryAmountDirty=!1),this._clampDelta(e),e},i._updateScrollBar=function(t){this._horizontalScrollBar&&this._horizontalScrollBar.isValid&&this._horizontalScrollBar.onScroll(t),this._verticalScrollBar&&this._verticalScrollBar.isValid&&this._verticalScrollBar.onScroll(t)},i._onScrollBarTouchBegan=function(){this._horizontalScrollBar&&this._horizontalScrollBar.isValid&&this._horizontalScrollBar.onTouchBegan(),this._verticalScrollBar&&this._verticalScrollBar.isValid&&this._verticalScrollBar.onTouchBegan()},i._onScrollBarTouchEnded=function(){this._horizontalScrollBar&&this._horizontalScrollBar.isValid&&this._horizontalScrollBar.onTouchEnded(),this._verticalScrollBar&&this._verticalScrollBar.isValid&&this._verticalScrollBar.onTouchEnded()},i._dispatchEvent=function(t){if(t===Sjt.SCROLL_ENDED)this._scrollEventEmitMask=0;else if(t===Sjt.SCROLL_TO_TOP||t===Sjt.SCROLL_TO_BOTTOM||t===Sjt.SCROLL_TO_LEFT||t===Sjt.SCROLL_TO_RIGHT){var e=1<<Rjt[t];if(this._scrollEventEmitMask&e)return;this._scrollEventEmitMask|=e}fp.emitEvents(this.scrollEvents,this,Rjt[t]),this.node.emit(t,this)},i._adjustContentOutOfBoundary=function(){if(this._content){this._outOfBoundaryAmountDirty=!0;var t=this._getHowMuchOutOfBoundary();!t.equals(gn.ZERO,Ajt)&&(bjt.set(this._getContentPosition()),bjt.add(t),this._setContentPosition(bjt),this._updateScrollBar(jn.ZERO))}},i._hideScrollBar=function(){this._horizontalScrollBar&&this._horizontalScrollBar.isValid&&this._horizontalScrollBar.hide(),this._verticalScrollBar&&this._verticalScrollBar.isValid&&this._verticalScrollBar.hide()},i._updateScrollBarState=function(){if(this._content&&this.view){var t=this.view,e=this._content._uiProps.uiTransformComp;this._verticalScrollBar&&this._verticalScrollBar.isValid&&(e.height<t.height||Ni(e.height,t.height)?this._verticalScrollBar.hide():this._verticalScrollBar.show()),this._horizontalScrollBar&&this._horizontalScrollBar.isValid&&(e.width<t.width||Ni(e.width,t.width)?this._horizontalScrollBar.hide():this._horizontalScrollBar.show())}},i._stopPropagationIfTargetIsMe=function(t){t.eventPhase===Gx.AT_TARGET&&t.target===this.node&&(t.propagationStopped=!0)},i._processDeltaMove=function(t){this._scrollChildren(t),this._gatherTouchMove(t)},i._handleMoveLogic=function(t){this._getLocalAxisAlignDelta(this._deltaPos,t),this._deltaAmount.add(this._deltaPos)},i._handleReleaseLogic=function(t){this._getLocalAxisAlignDelta(this._deltaPos,t),this._gatherTouchMove(this._deltaPos),this._processInertiaScroll(),this._scrolling&&(this._scrolling=!1,this._autoScrolling||this._dispatchEvent(Sjt.SCROLL_ENDED))},i._getLocalAxisAlignDelta=function(t,e){var i=this.node._uiProps.uiTransformComp,n=new gn;i&&(e.getUILocation(Cjt),e.getUIPreviousLocation(xjt),bjt.set(Cjt.x,Cjt.y,0),Ejt.set(xjt.x,xjt.y,0),i.convertToNodeSpaceAR(bjt,bjt),i.convertToNodeSpaceAR(Ejt,Ejt),gn.subtract(n,bjt,Ejt)),t.set(n)},i._scrollChildren=function(t){this._clampDelta(t);var e,i=t;this.elastic&&(e=this._getHowMuchOutOfBoundary(),i.x*=0===e.x?1:.5,i.y*=0===e.y?1:.5),this.elastic||(e=this._getHowMuchOutOfBoundary(i),i.add(e));var n=Sjt.NONE,r=Sjt.NONE;if(this._content){var s=this._content._uiProps.uiTransformComp,a=s.anchorX,o=s.anchorY,h=s.width,u=s.height,l=this._content.position||gn.ZERO;this.vertical&&(i.y>0?l.y-o*u+i.y>=this._bottomBoundary&&(n=Sjt.SCROLL_TO_BOTTOM):i.y<0&&l.y-o*u+u+i.y<=this._topBoundary&&(n=Sjt.SCROLL_TO_TOP)),this.horizontal&&(i.x<0?l.x-a*h+h+i.x<=this._rightBoundary&&(r=Sjt.SCROLL_TO_RIGHT):i.x>0&&l.x-a*h+i.x>=this._leftBoundary&&(r=Sjt.SCROLL_TO_LEFT))}this._moveContent(i,!1),(this.horizontal&&0!==i.x||this.vertical&&0!==i.y)&&(this._scrolling||(this._scrolling=!0,this._dispatchEvent(Sjt.SCROLL_BEGAN)),this._dispatchEvent(Sjt.SCROLLING)),n!==Sjt.NONE&&this._dispatchEvent(n),r!==Sjt.NONE&&this._dispatchEvent(r)},i._handlePressLogic=function(){this._autoScrolling&&this._dispatchEvent(Sjt.SCROLL_ENDED),this._autoScrolling=!1,this._isBouncing=!1,this._touchMovePreviousTimestamp=wjt(),this._touchMoveDisplacements.length=0,this._touchMoveTimeDeltas.length=0,this._onScrollBarTouchBegan()},i._clampDelta=function(t){if(this._content&&this.view){var e=this.view.contentSize,i=this._content._uiProps.uiTransformComp;i.width<e.width&&(t.x=0),i.height<e.height&&(t.y=0)}},i._gatherTouchMove=function(t){var e=t.clone();for(this._clampDelta(e);this._touchMoveDisplacements.length>=5;)this._touchMoveDisplacements.shift(),this._touchMoveTimeDeltas.shift();this._touchMoveDisplacements.push(e);var i=wjt();this._touchMoveTimeDeltas.push((i-this._touchMovePreviousTimestamp)/1e3),this._touchMovePreviousTimestamp=i},i._startBounceBackIfNeeded=function(){if(!this.elastic)return!1;var t=this._getHowMuchOutOfBoundary();if(this._clampDelta(t),t.equals(gn.ZERO,Ajt))return!1;var e=Math.max(this.bounceDuration,0);return this._startAutoScroll(t,e,!0),this._isBouncing||(t.y>0&&this._dispatchEvent(Sjt.BOUNCE_TOP),t.y<0&&this._dispatchEvent(Sjt.BOUNCE_BOTTOM),t.x>0&&this._dispatchEvent(Sjt.BOUNCE_RIGHT),t.x<0&&this._dispatchEvent(Sjt.BOUNCE_LEFT),this._isBouncing=!0),!0},i._processInertiaScroll=function(){if(!this._startBounceBackIfNeeded()&&this.inertia){var t=this._calculateTouchMoveVelocity();!t.equals(bjt,Ajt)&&this.brake<1&&this._startInertiaScroll(t)}this._onScrollBarTouchEnded()},i._isOutOfBoundary=function(){return!this._getHowMuchOutOfBoundary().equals(gn.ZERO,Ajt)},i._isNecessaryAutoScrollBrake=function(){if(this._autoScrollBraking)return!0;if(this._isOutOfBoundary()){if(!this._autoScrollCurrentlyOutOfBoundary)return this._autoScrollCurrentlyOutOfBoundary=!0,this._autoScrollBraking=!0,gn.copy(this._autoScrollBrakingStartPosition,this._getContentPosition()),!0}else this._autoScrollCurrentlyOutOfBoundary=!1;return!1},i._processAutoScrolling=function(t){var e=this._isNecessaryAutoScrollBrake(),i=e?.05:1;this._autoScrollAccumulatedTime+=t*(1/i);var n,r=Math.min(1,this._autoScrollAccumulatedTime/this._autoScrollTotalTime);this._autoScrollAttenuate&&(n=r,r=(n-=1)*n*n*n*n+1);var s=this._autoScrollTargetDelta.clone();s.multiplyScalar(r);var a=this._autoScrollStartPosition.clone();a.add(s);var o=Math.abs(r-1)<=Ajt;if(Math.abs(r-1)<=this.getScrollEndedEventTiming()&&!this._isScrollEndedWithThresholdEventFired&&(this._dispatchEvent(Sjt.SCROLL_ENG_WITH_THRESHOLD),this._isScrollEndedWithThresholdEventFired=!0),this.elastic){var h=a.clone();h.subtract(this._autoScrollBrakingStartPosition),e&&h.multiplyScalar(i),a.set(this._autoScrollBrakingStartPosition),a.add(h)}else{var u=a.clone();u.subtract(this.getContentPosition());var l=this._getHowMuchOutOfBoundary(u);l.equals(gn.ZERO,Ajt)||(a.add(l),o=!0)}o&&(this._autoScrolling=!1);var c=a.clone();c.subtract(this._getContentPosition()),this._clampDelta(c),this._moveContent(c,o),this._dispatchEvent(Sjt.SCROLLING),this._autoScrolling||(this._isBouncing=!1,this._scrolling=!1,this._dispatchEvent(Sjt.SCROLL_ENDED))},i._checkMouseWheel=function(t){if(!this._getHowMuchOutOfBoundary().equals(gn.ZERO,Ajt))return this._processInertiaScroll(),this._scrolling&&(this._scrolling=!1,this._autoScrolling||this._dispatchEvent(Sjt.SCROLL_ENDED)),this.unschedule(this._checkMouseWheel),void(this._stopMouseWheel=!1);this._mouseWheelEventElapsedTime+=t,this._mouseWheelEventElapsedTime>.1&&(this._onScrollBarTouchEnded(),this._scrolling&&(this._scrolling=!1,this._autoScrolling||this._dispatchEvent(Sjt.SCROLL_ENDED)),this.unschedule(this._checkMouseWheel),this._stopMouseWheel=!1)},i._calculateMovePercentDelta=function(t){var e=t.anchor,i=t.applyToHorizontal,n=t.applyToVertical;this._calculateBoundary(),e.clampf(jn.ZERO,jn.ONE);var r=this._getContentBottomBoundary()-this._bottomBoundary;r=-r;var s=this._getContentLeftBoundary()-this._leftBoundary;s=-s;var a=new gn;if(this._content&&this.view){var o=0,h=this._content._uiProps.uiTransformComp.contentSize,u=this.view.contentSize;i&&(o=h.width-u.width,a.x=s-o*e.x),n&&(o=h.height-u.height,a.y=r-o*e.y)}return a},i._moveContentToTopLeft=function(t){var e=this._getContentBottomBoundary()-this._bottomBoundary;e=-e;var i=new gn,n=0,r=this._getContentLeftBoundary()-this._leftBoundary;if(r=-r,this._content){var s=this._content._uiProps.uiTransformComp.contentSize;s.height<t.height&&(n=s.height-t.height,i.y=e-n),s.width<t.width&&(n=s.width-t.width,i.x=r)}this._updateScrollBarState(),this._moveContent(i),this._adjustContentOutOfBoundary()},i._scaleChanged=function(t){t===mm.SCALE&&this._calculateBoundary()},i._xrHoverEnter=function(t){t.deviceType===tHt.Left?this._hoverIn=Tjt.LEFT:t.deviceType===tHt.Right&&(this._hoverIn=Tjt.RIGHT)},i._xrHoverExit=function(){this._hoverIn=Tjt.NONE},i._dispatchEventHandleInput=function(t){var e,i;t instanceof jx?e=t.gamepad:t instanceof Yx&&(e=t.handleInputDevice),this.enabledInHierarchy&&this._hoverIn!==Tjt.NONE&&(this._hoverIn===Tjt.LEFT?(i=e.leftStick.getValue()).equals(jn.ZERO)||this._xrThumbStickMove(i):this._hoverIn===Tjt.RIGHT&&((i=e.rightStick.getValue()).equals(jn.ZERO)||this._xrThumbStickMove(i)))},i._xrThumbStickMove=function(t){if(this.enabledInHierarchy){var e=new gn,i=t.y;this.vertical?e.set(0,-62.5*i,0):this.horizontal&&e.set(-62.5*i,0,0),this._mouseWheelEventElapsedTime=0,this._deltaAmount.add(e),this._stopMouseWheel||(this._handlePressLogic(),this.schedule(this._checkMouseWheel,1/60,NaN,0),this._stopMouseWheel=!0)}},n(e,[{key:"content",get:function(){return this._content},set:function(t){if(this._content!==t){var e=t&&t.parent&&t.parent._uiProps.uiTransformComp;!t||t&&e?(this._content=t,this._calculateBoundary()):Q(4302)}}},{key:"horizontalScrollBar",get:function(){return this._horizontalScrollBar&&!this._horizontalScrollBar.isValid&&it(4303,"horizontal",this.node.name),this._horizontalScrollBar},set:function(t){this._horizontalScrollBar!==t&&(this._horizontalScrollBar=t,this._horizontalScrollBar&&(this._horizontalScrollBar.setScrollView(this),this._updateScrollBar(jn.ZERO)))}},{key:"verticalScrollBar",get:function(){return this._verticalScrollBar&&!this._verticalScrollBar.isValid&&it(4303,"vertical",this.node.name),this._verticalScrollBar},set:function(t){this._verticalScrollBar!==t&&(this._verticalScrollBar=t,this._verticalScrollBar&&(this._verticalScrollBar.setScrollView(this),this._updateScrollBar(jn.ZERO)))}},{key:"view",get:function(){var t=this._content&&this._content.parent;return t?t._uiProps.uiTransformComp:null}}]),e}(yjt)).EventType=Sjt,ojt=ja((ajt=vjt).prototype,"bounceDuration",[lo],(function(){return 1})),hjt=ja(ajt.prototype,"brake",[lo],(function(){return.5})),ujt=ja(ajt.prototype,"elastic",[lo],(function(){return!0})),ljt=ja(ajt.prototype,"inertia",[lo],(function(){return!0})),m(ajt.prototype,"content",[ejt],Object.getOwnPropertyDescriptor(ajt.prototype,"content"),ajt.prototype),cjt=ja(ajt.prototype,"horizontal",[lo],(function(){return!0})),m(ajt.prototype,"horizontalScrollBar",[ijt],Object.getOwnPropertyDescriptor(ajt.prototype,"horizontalScrollBar"),ajt.prototype),_jt=ja(ajt.prototype,"vertical",[lo],(function(){return!0})),m(ajt.prototype,"verticalScrollBar",[njt],Object.getOwnPropertyDescriptor(ajt.prototype,"verticalScrollBar"),ajt.prototype),fjt=ja(ajt.prototype,"cancelInnerEvents",[lo],(function(){return!0})),djt=ja(ajt.prototype,"scrollEvents",[rjt,lo],(function(){return[]})),pjt=ja(ajt.prototype,"_content",[lo],(function(){return null})),mjt=ja(ajt.prototype,"_horizontalScrollBar",[lo],(function(){return null})),gjt=ja(ajt.prototype,"_verticalScrollBar",[lo],(function(){return null})),sjt=ajt))||sjt)||sjt)||sjt));S.ScrollView=zjt;var Hjt,Wjt=new gn;!function(t){t[t.Horizontal=0]="Horizontal",t[t.Vertical=1]="Vertical"}(Hjt||(Hjt={})),we(Hjt);var Xjt,jjt,Yjt,qjt,Kjt,Qjt,Zjt,Jjt,$jt,tYt,eYt,iYt,nYt=t("gS",(Ijt=eo("cc.Slider"),Djt=no(110),Bjt=io(wO),Mjt=Lo(PF),Pjt=Lo(Hjt),Ojt=Lo([fp]),Ijt(Ljt=Djt(Ljt=Bjt(((Ujt=function(t){function e(){var e;return(e=t.call(this)||this).slideEvents=Fjt&&Fjt(),e._handle=kjt&&kjt(),e._direction=Gjt&&Gjt(),e._progress=Vjt&&Vjt(),e._offset=new gn,e._dragging=!1,e._touchHandle=!1,e._handleLocalPos=new gn,e._touchPos=new gn,e}s(e,t);var i=e.prototype;return i.__preload=function(){this._updateHandlePosition()},i.onEnable=function(){this._updateHandlePosition(),this.node.on(vm.TOUCH_START,this._onTouchBegan,this),this.node.on(vm.TOUCH_MOVE,this._onTouchMoved,this),this.node.on(vm.TOUCH_END,this._onTouchEnded,this),this.node.on(vm.TOUCH_CANCEL,this._onTouchCancelled,this),this.node.on(eHt.XRUI_HOVER_STAY,this._xrHoverStay,this),this.node.on(eHt.XRUI_CLICK,this._xrClick,this),this.node.on(eHt.XRUI_UNCLICK,this._xrUnClick,this),this._handle&&this._handle.isValid&&(this._handle.node.on(vm.TOUCH_START,this._onHandleDragStart,this),this._handle.node.on(vm.TOUCH_MOVE,this._onTouchMoved,this),this._handle.node.on(vm.TOUCH_END,this._onTouchEnded,this))},i.onDisable=function(){this.node.off(vm.TOUCH_START,this._onTouchBegan,this),this.node.off(vm.TOUCH_MOVE,this._onTouchMoved,this),this.node.off(vm.TOUCH_END,this._onTouchEnded,this),this.node.off(vm.TOUCH_CANCEL,this._onTouchCancelled,this),this.node.off(eHt.XRUI_HOVER_STAY,this._xrHoverStay,this),this.node.off(eHt.XRUI_CLICK,this._xrClick,this),this.node.off(eHt.XRUI_UNCLICK,this._xrUnClick,this),this._handle&&this._handle.isValid&&(this._handle.node.off(vm.TOUCH_START,this._onHandleDragStart,this),this._handle.node.off(vm.TOUCH_MOVE,this._onTouchMoved,this),this._handle.node.off(vm.TOUCH_END,this._onTouchEnded,this))},i._onHandleDragStart=function(t){if(t&&this._handle&&this._handle.node._uiProps.uiTransformComp){this._dragging=!0,this._touchHandle=!0;var e=t.touch.getUILocation();gn.set(this._touchPos,e.x,e.y,0),this._handle.node._uiProps.uiTransformComp.convertToNodeSpaceAR(this._touchPos,this._offset),t.propagationStopped=!0}},i._onTouchBegan=function(t){this._handle&&t&&(this._dragging=!0,this._touchHandle||this._handleSliderLogic(t.touch),t.propagationStopped=!0)},i._onTouchMoved=function(t){this._dragging&&t&&(this._handleSliderLogic(t.touch),t.propagationStopped=!0)},i._onTouchEnded=function(t){this._dragging=!1,this._touchHandle=!1,this._offset=new gn,t&&(t.propagationStopped=!0)},i._onTouchCancelled=function(t){this._dragging=!1,t&&(t.propagationStopped=!0)},i._handleSliderLogic=function(t){this._updateProgress(t),this._emitSlideEvent()},i._emitSlideEvent=function(){fp.emitEvents(this.slideEvents,this),this.node.emit("slide",this)},i._updateProgress=function(t){if(this._handle&&t){var e=t.getUILocation();gn.set(this._touchPos,e.x,e.y,0);var i=this.node._uiProps.uiTransformComp,n=i.convertToNodeSpaceAR(this._touchPos,Wjt);this.direction===Hjt.Horizontal?this.progress=ki(.5+(n.x-this._offset.x)/i.width):this.progress=ki(.5+(n.y-this._offset.y)/i.height)}},i._updateHandlePosition=function(){if(this._handle){this._handleLocalPos.set(this._handle.node.position);var t=this.node._uiProps.uiTransformComp;this._direction===Hjt.Horizontal?this._handleLocalPos.x=-t.width*t.anchorX+this.progress*t.width:this._handleLocalPos.y=-t.height*t.anchorY+this.progress*t.height,this._handle.node.setPosition(this._handleLocalPos)}},i._changeLayout=function(){var t=this.node._uiProps.uiTransformComp,e=t.contentSize;if(t.setContentSize(e.height,e.width),this._handle){var i=this._handle.node.position;this._direction===Hjt.Horizontal?this._handle.node.setPosition(i.x,0,i.z):this._handle.node.setPosition(0,i.y,i.z),this._updateHandlePosition()}},i._xrHandleProgress=function(t){if(!this._touchHandle){var e=this.node._uiProps.uiTransformComp;e.convertToNodeSpaceAR(t,Wjt),this.direction===Hjt.Horizontal?this.progress=ki(.5+(Wjt.x-this.node.position.x)/e.width):this.progress=ki(.5+(Wjt.y-this.node.position.y)/e.height)}},i._xrClick=function(t){this._handle&&(this._dragging=!0,this._xrHandleProgress(t.hitPoint),this._emitSlideEvent())},i._xrUnClick=function(){this._dragging=!1,this._touchHandle=!1},i._xrHoverStay=function(t){this._dragging&&(this._xrHandleProgress(t.hitPoint),this._emitSlideEvent())},n(e,[{key:"handle",get:function(){return this._handle},set:function(t){this._handle!==t&&(this._handle=t)}},{key:"direction",get:function(){return this._direction},set:function(t){this._direction!==t&&(this._direction=t,this._changeLayout())}},{key:"progress",get:function(){return this._progress},set:function(t){this._progress!==t&&(this._progress=t,this._updateHandlePosition())}}]),e}(mp)).Direction=Hjt,m((Njt=Ujt).prototype,"handle",[Mjt],Object.getOwnPropertyDescriptor(Njt.prototype,"handle"),Njt.prototype),m(Njt.prototype,"direction",[Pjt],Object.getOwnPropertyDescriptor(Njt.prototype,"direction"),Njt.prototype),Fjt=ja(Njt.prototype,"slideEvents",[Ojt,lo],(function(){return[]})),kjt=ja(Njt.prototype,"_handle",[lo],(function(){return null})),Gjt=ja(Njt.prototype,"_direction",[lo],(function(){return Hjt.Horizontal})),Vjt=ja(Njt.prototype,"_progress",[lo],(function(){return.1})),Ljt=Njt))||Ljt)||Ljt)||Ljt));function rYt(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return Object.assign.apply(Object,[{}].concat(e))}S.Slider=nYt,function(t){t.TOGGLE="toggle"}(iYt||(iYt={}));var sYt,aYt,oYt,hYt,uYt,lYt,cYt,_Yt=t("gT",(Xjt=eo("cc.Toggle"),jjt=no(110),Yjt=io(wO),qjt=Lo(PF),Kjt=Lo([fp]),Xjt(Qjt=jjt(Qjt=Yjt(((eYt=function(t){function e(){var e;return(e=t.call(this)||this).checkEvents=Jjt&&Jjt(),e._isChecked=$jt&&$jt(),e._checkMark=tYt&&tYt(),e}s(e,t);var i=e.prototype;return i._internalToggle=function(){this.isChecked=!this.isChecked},i._set=function(t,e){if(void 0===e&&(e=!0),this._isChecked!=t){this._isChecked=t;var i=this._toggleContainer;i&&i.enabled&&this.enabled&&(t||!i.anyTogglesChecked()&&!i.allowSwitchOff)&&(this._isChecked=!0,i.notifyToggleCheck(this,e)),this.playEffect(),e&&this._emitToggleEvents()}},i.playEffect=function(){this._checkMark&&(this._checkMark.node.active=this._isChecked)},i.setIsCheckedWithoutNotify=function(t){this._set(t,!1)},i.onEnable=function(){t.prototype.onEnable.call(this),this.playEffect(),this.node.on(e.EventType.CLICK,this._internalToggle,this)},i.onDisable=function(){t.prototype.onDisable.call(this),this.node.off(e.EventType.CLICK,this._internalToggle,this)},i._emitToggleEvents=function(){this.node.emit(e.EventType.TOGGLE,this),this.checkEvents&&fp.emitEvents(this.checkEvents,this)},n(e,[{key:"isChecked",get:function(){return this._isChecked},set:function(t){this._set(t)}},{key:"checkMark",get:function(){return this._checkMark},set:function(t){this._checkMark!==t&&(this._checkMark=t)}},{key:"_resizeToTarget",set:function(t){t&&this._resizeNodeToTargetNode()}},{key:"_toggleContainer",get:function(){var t=this.node.parent;return S.Node.isNode(t)?t.getComponent("cc.ToggleContainer"):null}}]),e}(HHt)).EventType=rYt(iYt,UHt),m((Zjt=eYt).prototype,"checkMark",[qjt],Object.getOwnPropertyDescriptor(Zjt.prototype,"checkMark"),Zjt.prototype),Jjt=ja(Zjt.prototype,"checkEvents",[Kjt,lo],(function(){return[]})),$jt=ja(Zjt.prototype,"_isChecked",[lo],(function(){return!0})),tYt=ja(Zjt.prototype,"_checkMark",[lo],(function(){return null})),Qjt=Zjt))||Qjt)||Qjt)||Qjt));S.Toggle=_Yt;var fYt,dYt,pYt,mYt,gYt,vYt,yYt,SYt,TYt,AYt,bYt,EYt,CYt,xYt,wYt,RYt,IYt,DYt,BYt,MYt,PYt,OYt,LYt,NYt,FYt,kYt,GYt=t("gU",(sYt=eo("cc.ToggleContainer"),aYt=no(110),oYt=Lo([fp]),sYt(hYt=aYt((uYt=function(t){function e(){var e;return(e=t.call(this)||this)._allowSwitchOff=lYt&&lYt(),e.checkEvents=cYt&&cYt(),e}s(e,t);var i=e.prototype;return i.onEnable=function(){this.ensureValidState(),this.node.on(vm.CHILD_ADDED,this.ensureValidState,this),this.node.on(vm.CHILD_REMOVED,this.ensureValidState,this)},i.onDisable=function(){this.node.off(vm.CHILD_ADDED,this.ensureValidState,this),this.node.off(vm.CHILD_REMOVED,this.ensureValidState,this)},i.activeToggles=function(){return this.toggleItems.filter((function(t){return t.isChecked}))},i.anyTogglesChecked=function(){return!!this.toggleItems.find((function(t){return t.isChecked}))},i.notifyToggleCheck=function(t,e){if(void 0===e&&(e=!0),this.enabledInHierarchy){for(var i=0;i<this.toggleItems.length;i++){var n=this.toggleItems[i];n!==t&&(e?n.isChecked=!1:n.setIsCheckedWithoutNotify(!1))}this.checkEvents&&S.Component.EventHandler.emitEvents(this.checkEvents,t)}},i.ensureValidState=function(){var t=this.toggleItems;if(!this._allowSwitchOff&&!this.anyTogglesChecked()&&0!==t.length){var e=t[0];e.isChecked=!0,this.notifyToggleCheck(e)}var i=this.activeToggles();if(i.length>1)for(var n=i[0],r=0;r<i.length;++r){var s=i[r];s!==n&&(s.isChecked=!1)}},n(e,[{key:"allowSwitchOff",get:function(){return this._allowSwitchOff},set:function(t){this._allowSwitchOff=t}},{key:"toggleItems",get:function(){return this.node.children.map((function(t){var e=t.getComponent("cc.Toggle");return e&&e.enabled?e:null})).filter(Boolean)}}]),e}(mp),lYt=ja(uYt.prototype,"_allowSwitchOff",[lo],(function(){return!1})),cYt=ja(uYt.prototype,"checkEvents",[oYt,lo],(function(){return[]})),hYt=uYt))||hYt)||hYt));S.ToggleContainer=GYt;var VYt,UYt,zYt=new jn;function HYt(t){return t instanceof Lx?Ta:t._uiProps.uiTransformComp?t._uiProps.uiTransformComp.contentSize:Qn.ZERO}function WYt(t,e,i,n){t.parent?zYt.set(t.parent.scale.x,t.parent.scale.y):zYt.set(0,0);for(var r=zYt.x,s=zYt.y,a=0,o=0,h=t.parent;;){if(!h)return i.x=i.y=0,void(n.x=n.y=1);var u=h.position;if(a+=u.x,o+=u.y,(h=h.parent)===e)break;h?zYt.set(h.scale.x,h.scale.y):zYt.set(0,0);var l=zYt.x,c=zYt.y;a*=l,o*=c,r*=l,s*=c}n.x=0!==r?1/r:1,n.y=0!==s?1/s:1,i.x=-a,i.y=-o}!function(t){t[t.ONCE=0]="ONCE",t[t.ALWAYS=1]="ALWAYS",t[t.ON_WINDOW_RESIZE=2]="ON_WINDOW_RESIZE"}(VYt||(VYt={})),we(VYt),function(t){t[t.TOP=1]="TOP",t[t.MID=2]="MID",t[t.BOT=4]="BOT",t[t.LEFT=8]="LEFT",t[t.CENTER=16]="CENTER",t[t.RIGHT=32]="RIGHT",t[t.HORIZONTAL=56]="HORIZONTAL",t[t.VERTICAL=7]="VERTICAL"}(UYt||(UYt={}));var XYt,jYt,YYt,qYt,KYt,QYt,ZYt,JYt,$Yt,tqt,eqt,iqt,nqt=UYt.TOP|UYt.BOT,rqt=UYt.LEFT|UYt.RIGHT,sqt=t("gW",(fYt=eo("cc.Widget"),dYt=no(110),pYt=io(wO),mYt=Lo(hg),gYt=Lo(VYt),fYt(vYt=dYt(vYt=pYt(((kYt=function(t){function e(){var e;return(e=t.call(this)||this)._lastPos=new gn,e._lastSize=new Qn,e._dirty=!0,e._hadAlignOnce=!1,e._alignFlags=SYt&&SYt(),e._target=TYt&&TYt(),e._left=AYt&&AYt(),e._right=bYt&&bYt(),e._top=EYt&&EYt(),e._bottom=CYt&&CYt(),e._horizontalCenter=xYt&&xYt(),e._verticalCenter=wYt&&wYt(),e._isAbsLeft=RYt&&RYt(),e._isAbsRight=IYt&&IYt(),e._isAbsTop=DYt&&DYt(),e._isAbsBottom=BYt&&BYt(),e._isAbsHorizontalCenter=MYt&&MYt(),e._isAbsVerticalCenter=PYt&&PYt(),e._originalWidth=OYt&&OYt(),e._originalHeight=LYt&&LYt(),e._alignMode=NYt&&NYt(),e._lockFlags=FYt&&FYt(),e}s(e,t);var i=e.prototype;return i.updateAlignment=function(){S._widgetManager.updateAlignment(this.node)},i._validateTargetInDEV=function(){},i.setDirty=function(){this._recursiveDirty()},i.onEnable=function(){this.node.getPosition(this._lastPos),this._lastSize.set(this.node._uiProps.uiTransformComp.contentSize),S._widgetManager.add(this),this._hadAlignOnce=!1,this._registerEvent(),this._registerTargetEvents()},i.onDisable=function(){S._widgetManager.remove(this),this._unregisterEvent(),this._unregisterTargetEvents()},i.onDestroy=function(){this._removeParentEvent()},i._adjustWidgetToAllowMovingInEditor=function(){},i._adjustWidgetToAllowResizingInEditor=function(){},i._adjustWidgetToAnchorChanged=function(){this.setDirty()},i._adjustTargetToParentChanged=function(t){t&&this._unregisterOldParentEvents(t),this.node.getParent()&&this._registerTargetEvents(),this._setDirtyByMode()},i._registerEvent=function(){this.node.on(vm.TRANSFORM_CHANGED,this._setDirtyByMode,this),this.node.on(vm.SIZE_CHANGED,this._setDirtyByMode,this),this.node.on(vm.ANCHOR_CHANGED,this._adjustWidgetToAnchorChanged,this),this.node.on(vm.PARENT_CHANGED,this._adjustTargetToParentChanged,this)},i._unregisterEvent=function(){this.node.off(vm.TRANSFORM_CHANGED,this._setDirtyByMode,this),this.node.off(vm.SIZE_CHANGED,this._setDirtyByMode,this),this.node.off(vm.ANCHOR_CHANGED,this._adjustWidgetToAnchorChanged,this)},i._removeParentEvent=function(){this.node.off(vm.PARENT_CHANGED,this._adjustTargetToParentChanged,this)},i._autoChangedValue=function(t,e){if((this._alignFlags&t)>0){var i=this.node.parent&&this.node.parent._uiProps,n=i&&i.uiTransformComp,r=n?n.contentSize:Ta;this.isAlignLeft&&t===UYt.LEFT?this._left=e?this._left*r.width:this._left/r.width:this.isAlignRight&&t===UYt.RIGHT?this._right=e?this._right*r.width:this._right/r.width:this.isAlignHorizontalCenter&&t===UYt.CENTER?this._horizontalCenter=e?this._horizontalCenter*r.width:this._horizontalCenter/r.width:this.isAlignTop&&t===UYt.TOP?this._top=e?this._top*r.height:this._top/r.height:this.isAlignBottom&&t===UYt.BOT?this._bottom=e?this._bottom*r.height:this._bottom/r.height:this.isAbsoluteVerticalCenter&&t===UYt.MID&&(this._verticalCenter=this._verticalCenter/r.height),this._recursiveDirty()}},i._registerTargetEvents=function(){var t=this._target||this.node.parent;t&&t.getComponent(wO)&&(t.on(vm.TRANSFORM_CHANGED,this._setDirtyByMode,this),t.on(vm.SIZE_CHANGED,this._setDirtyByMode,this),t.on(vm.ANCHOR_CHANGED,this._setDirtyByMode,this))},i._unregisterTargetEvents=function(){var t=this._target||this.node.parent;t&&(t.off(vm.TRANSFORM_CHANGED,this._setDirtyByMode,this),t.off(vm.SIZE_CHANGED,this._setDirtyByMode,this),t.off(vm.ANCHOR_CHANGED,this._setDirtyByMode,this))},i._unregisterOldParentEvents=function(t){var e=this._target||t;e&&(e.off(vm.TRANSFORM_CHANGED,this._setDirtyByMode,this),e.off(vm.SIZE_CHANGED,this._setDirtyByMode,this))},i._setDirtyByMode=function(){this.alignMode===VYt.ALWAYS&&this._recursiveDirty()},i._setAlign=function(t,e){if(e!==(this._alignFlags&t)>0){var i=(t&rqt)>0,n=this.node._uiProps.uiTransformComp;e?(this._alignFlags|=t,i?(this.isAlignHorizontalCenter=!1,this.isStretchWidth&&(this._originalWidth=n.width)):(this.isAlignVerticalCenter=!1,this.isStretchHeight&&(this._originalHeight=n.height))):(i?this.isStretchWidth&&(n.width=this._originalWidth):this.isStretchHeight&&(n.height=this._originalHeight),this._alignFlags&=~t)}},i._recursiveDirty=function(){this._dirty||(this._dirty=!0)},n(e,[{key:"target",get:function(){return this._target},set:function(t){this._target!==t&&(this._unregisterTargetEvents(),this._target=t,this._registerTargetEvents(),this._validateTargetInDEV(),this._recursiveDirty())}},{key:"isAlignTop",get:function(){return(this._alignFlags&UYt.TOP)>0},set:function(t){this._setAlign(UYt.TOP,t),this._recursiveDirty()}},{key:"isAlignBottom",get:function(){return(this._alignFlags&UYt.BOT)>0},set:function(t){this._setAlign(UYt.BOT,t),this._recursiveDirty()}},{key:"isAlignLeft",get:function(){return(this._alignFlags&UYt.LEFT)>0},set:function(t){this._setAlign(UYt.LEFT,t),this._recursiveDirty()}},{key:"isAlignRight",get:function(){return(this._alignFlags&UYt.RIGHT)>0},set:function(t){this._setAlign(UYt.RIGHT,t),this._recursiveDirty()}},{key:"isAlignVerticalCenter",get:function(){return(this._alignFlags&UYt.MID)>0},set:function(t){t?(this.isAlignTop=!1,this.isAlignBottom=!1,this._alignFlags|=UYt.MID):this._alignFlags&=~UYt.MID,this._recursiveDirty()}},{key:"isAlignHorizontalCenter",get:function(){return(this._alignFlags&UYt.CENTER)>0},set:function(t){t?(this.isAlignLeft=!1,this.isAlignRight=!1,this._alignFlags|=UYt.CENTER):this._alignFlags&=~UYt.CENTER,this._recursiveDirty()}},{key:"isStretchWidth",get:function(){return(this._alignFlags&rqt)===rqt}},{key:"isStretchHeight",get:function(){return(this._alignFlags&nqt)===nqt}},{key:"top",get:function(){return this._top},set:function(t){this._top=t,this._recursiveDirty()}},{key:"editorTop",get:function(){return this._isAbsTop?this._top:100*this._top},set:function(t){this._top=this._isAbsTop?t:t/100,this._recursiveDirty()}},{key:"bottom",get:function(){return this._bottom},set:function(t){this._bottom=t,this._recursiveDirty()}},{key:"editorBottom",get:function(){return this._isAbsBottom?this._bottom:100*this._bottom},set:function(t){this._bottom=this._isAbsBottom?t:t/100,this._recursiveDirty()}},{key:"left",get:function(){return this._left},set:function(t){this._left=t,this._recursiveDirty()}},{key:"editorLeft",get:function(){return this._isAbsLeft?this._left:100*this._left},set:function(t){this._left=this._isAbsLeft?t:t/100,this._recursiveDirty()}},{key:"right",get:function(){return this._right},set:function(t){this._right=t,this._recursiveDirty()}},{key:"editorRight",get:function(){return this._isAbsRight?this._right:100*this._right},set:function(t){this._right=this._isAbsRight?t:t/100,this._recursiveDirty()}},{key:"horizontalCenter",get:function(){return this._horizontalCenter},set:function(t){this._horizontalCenter=t,this._recursiveDirty()}},{key:"editorHorizontalCenter",get:function(){return this._isAbsHorizontalCenter?this._horizontalCenter:100*this._horizontalCenter},set:function(t){this._horizontalCenter=this._isAbsHorizontalCenter?t:t/100,this._recursiveDirty()}},{key:"verticalCenter",get:function(){return this._verticalCenter},set:function(t){this._verticalCenter=t,this._recursiveDirty()}},{key:"editorVerticalCenter",get:function(){return this._isAbsVerticalCenter?this._verticalCenter:100*this._verticalCenter},set:function(t){this._verticalCenter=this._isAbsVerticalCenter?t:t/100,this._recursiveDirty()}},{key:"isAbsoluteTop",get:function(){return this._isAbsTop},set:function(t){this._isAbsTop!==t&&(this._isAbsTop=t,this._autoChangedValue(UYt.TOP,this._isAbsTop))}},{key:"isAbsoluteBottom",get:function(){return this._isAbsBottom},set:function(t){this._isAbsBottom!==t&&(this._isAbsBottom=t,this._autoChangedValue(UYt.BOT,this._isAbsBottom))}},{key:"isAbsoluteLeft",get:function(){return this._isAbsLeft},set:function(t){this._isAbsLeft!==t&&(this._isAbsLeft=t,this._autoChangedValue(UYt.LEFT,this._isAbsLeft))}},{key:"isAbsoluteRight",get:function(){return this._isAbsRight},set:function(t){this._isAbsRight!==t&&(this._isAbsRight=t,this._autoChangedValue(UYt.RIGHT,this._isAbsRight))}},{key:"isAbsoluteHorizontalCenter",get:function(){return this._isAbsHorizontalCenter},set:function(t){this._isAbsHorizontalCenter!==t&&(this._isAbsHorizontalCenter=t,this._autoChangedValue(UYt.CENTER,this._isAbsHorizontalCenter))}},{key:"isAbsoluteVerticalCenter",get:function(){return this._isAbsVerticalCenter},set:function(t){this._isAbsVerticalCenter!==t&&(this._isAbsVerticalCenter=t,this._autoChangedValue(UYt.MID,this._isAbsVerticalCenter))}},{key:"alignMode",get:function(){return this._alignMode},set:function(t){this._alignMode=t,this._recursiveDirty()}},{key:"alignFlags",get:function(){return this._alignFlags},set:function(t){this._alignFlags!==t&&(this._alignFlags=t,this._recursiveDirty())}}]),e}(mp)).AlignMode=VYt,m((yYt=kYt).prototype,"target",[mYt],Object.getOwnPropertyDescriptor(yYt.prototype,"target"),yYt.prototype),m(yYt.prototype,"alignMode",[gYt],Object.getOwnPropertyDescriptor(yYt.prototype,"alignMode"),yYt.prototype),SYt=ja(yYt.prototype,"_alignFlags",[lo],(function(){return 0})),TYt=ja(yYt.prototype,"_target",[lo],(function(){return null})),AYt=ja(yYt.prototype,"_left",[lo],(function(){return 0})),bYt=ja(yYt.prototype,"_right",[lo],(function(){return 0})),EYt=ja(yYt.prototype,"_top",[lo],(function(){return 0})),CYt=ja(yYt.prototype,"_bottom",[lo],(function(){return 0})),xYt=ja(yYt.prototype,"_horizontalCenter",[lo],(function(){return 0})),wYt=ja(yYt.prototype,"_verticalCenter",[lo],(function(){return 0})),RYt=ja(yYt.prototype,"_isAbsLeft",[lo],(function(){return!0})),IYt=ja(yYt.prototype,"_isAbsRight",[lo],(function(){return!0})),DYt=ja(yYt.prototype,"_isAbsTop",[lo],(function(){return!0})),BYt=ja(yYt.prototype,"_isAbsBottom",[lo],(function(){return!0})),MYt=ja(yYt.prototype,"_isAbsHorizontalCenter",[lo],(function(){return!0})),PYt=ja(yYt.prototype,"_isAbsVerticalCenter",[lo],(function(){return!0})),OYt=ja(yYt.prototype,"_originalWidth",[lo],(function(){return 0})),LYt=ja(yYt.prototype,"_originalHeight",[lo],(function(){return 0})),NYt=ja(yYt.prototype,"_alignMode",[lo],(function(){return VYt.ON_WINDOW_RESIZE})),FYt=ja(yYt.prototype,"_lockFlags",[lo,_o],(function(){return 0})),vYt=yYt))||vYt)||vYt)||vYt));S.internal.computeInverseTransForTarget=WYt,S.internal.getReadonlyNodeSize=HYt,S.Widget=sqt;var aqt,oqt=new En;!function(t){t[t.HORIZONTAL=0]="HORIZONTAL",t[t.VERTICAL=1]="VERTICAL"}(aqt||(aqt={})),we(aqt);var hqt,uqt,lqt,cqt,_qt,fqt,dqt,pqt,mqt,gqt,vqt,yqt,Sqt,Tqt,Aqt,bqt,Eqt,Cqt,xqt,wqt,Rqt,Iqt,Dqt,Bqt,Mqt=t("gY",(XYt=eo("cc.PageViewIndicator"),jYt=no(110),YYt=Lo(SM),qYt=Lo(aqt),KYt=Lo(Qn),XYt(QYt=jYt(((iqt=function(t){function e(){var e;return(e=t.call(this)||this).spacing=JYt&&JYt(),e._spriteFrame=$Yt&&$Yt(),e._direction=tqt&&tqt(),e._cellSize=eqt&&eqt(),e._layout=null,e._pageView=null,e._indicators=[],e}s(e,t);var i=e.prototype;return i.onLoad=function(){this._updateLayout()},i.setPageView=function(t){this._pageView=t,this._refresh()},i._updateLayout=function(){this._layout=this.getComponent(RXt),this._layout||(this._layout=this.addComponent(RXt));var t=this._layout;this.direction===aqt.HORIZONTAL?(t.type=RXt.Type.HORIZONTAL,t.spacingX=this.spacing):this.direction===aqt.VERTICAL&&(t.type=RXt.Type.VERTICAL,t.spacingY=this.spacing),t.resizeMode=RXt.ResizeMode.CONTAINER},i._createIndicator=function(){var t=new hg;t.layer=this.node.layer;var e=t.addComponent(PF);return e.spriteFrame=this.spriteFrame,e.sizeMode=PF.SizeMode.CUSTOM,t.parent=this.node,t._uiProps.uiTransformComp.setContentSize(this._cellSize),t},i._changedState=function(){var t=this._indicators;if(0!==t.length&&this._pageView){var e=this._pageView.curPageIdx;if(!(e>=t.length)){for(var i=0;i<t.length;++i){var n=t[i];if(n._uiProps.uiComp){var r=n._uiProps.uiComp;oqt.set(r.color),oqt.a=127.5,r.color=oqt}}if(t[e]._uiProps.uiComp){var s=t[e]._uiProps.uiComp;oqt.set(s.color),oqt.a=255,s.color=oqt}}}},i._refresh=function(){if(this._pageView){var t=this._indicators,e=this._pageView.getPages();if(e.length!==t.length){var i=0;if(e.length>t.length)for(i=0;i<e.length;++i)t[i]||(t[i]=this._createIndicator());else for(i=t.length-e.length;i>0;--i){var n=t[i-1];this.node.removeChild(n),t.splice(i-1,1)}this._layout&&this._layout.enabledInHierarchy&&this._layout.updateLayout(),this._changedState()}}},n(e,[{key:"spriteFrame",get:function(){return this._spriteFrame},set:function(t){this._spriteFrame!==t&&(this._spriteFrame=t)}},{key:"direction",get:function(){return this._direction},set:function(t){this._direction!==t&&(this._direction=t)}},{key:"cellSize",get:function(){return this._cellSize},set:function(t){this._cellSize!==t&&(this._cellSize=t)}}]),e}(mp)).Direction=aqt,m((ZYt=iqt).prototype,"spriteFrame",[YYt],Object.getOwnPropertyDescriptor(ZYt.prototype,"spriteFrame"),ZYt.prototype),m(ZYt.prototype,"direction",[qYt],Object.getOwnPropertyDescriptor(ZYt.prototype,"direction"),ZYt.prototype),m(ZYt.prototype,"cellSize",[KYt],Object.getOwnPropertyDescriptor(ZYt.prototype,"cellSize"),ZYt.prototype),JYt=ja(ZYt.prototype,"spacing",[lo],(function(){return 0})),$Yt=ja(ZYt.prototype,"_spriteFrame",[lo],(function(){return null})),tqt=ja(ZYt.prototype,"_direction",[lo],(function(){return aqt.HORIZONTAL})),eqt=ja(ZYt.prototype,"_cellSize",[lo],(function(){return new Qn(20,20)})),QYt=ZYt))||QYt)||QYt));S.PageViewIndicator=Mqt;var Pqt,Oqt,Lqt,Nqt=new jn;!function(t){t[t.Unified=0]="Unified",t[t.Free=1]="Free"}(Pqt||(Pqt={})),we(Pqt),function(t){t[t.Horizontal=0]="Horizontal",t[t.Vertical=1]="Vertical"}(Oqt||(Oqt={})),we(Oqt),function(t){t.PAGE_TURNING="page-turning"}(Lqt||(Lqt={}));var Fqt=t("gX",(hqt=eo("cc.PageView"),uqt=no(110),lqt=Lo(Pqt),cqt=Lo(Oqt),_qt=Lo(Mqt),fqt=Lo(ZXt),dqt=Lo(ZXt),pqt=Lo([fp]),mqt=Lo([fp]),hqt(gqt=uqt(((Bqt=function(t){function e(){var e;return(e=t.call(this)||this).autoPageTurningThreshold=yqt&&yqt(),e.horizontal=Sqt&&Sqt(),e.vertical=Tqt&&Tqt(),e.cancelInnerEvents=Aqt&&Aqt(),e.scrollEvents=bqt&&bqt(),e.pageTurningSpeed=Eqt&&Eqt(),e.pageEvents=Cqt&&Cqt(),e._sizeMode=xqt&&xqt(),e._direction=wqt&&wqt(),e._scrollThreshold=Rqt&&Rqt(),e._pageTurningEventTiming=Iqt&&Iqt(),e._indicator=Dqt&&Dqt(),e._curPageIdx=0,e._lastPageIdx=0,e._pages=[],e._initContentPos=vn(),e._scrollCenterOffsetX=[],e._scrollCenterOffsetY=[],e._touchBeganPosition=Yn(),e._touchEndPosition=Yn(),e}s(e,t);var i=e.prototype;return i.onEnable=function(){t.prototype.onEnable.call(this),this.node.on(vm.SIZE_CHANGED,this._updateAllPagesSize,this),this.node.on(e.EventType.SCROLL_ENG_WITH_THRESHOLD,this._dispatchPageTurningEvent,this)},i.onDisable=function(){t.prototype.onDisable.call(this),this.node.off(vm.SIZE_CHANGED,this._updateAllPagesSize,this),this.node.off(e.EventType.SCROLL_ENG_WITH_THRESHOLD,this._dispatchPageTurningEvent,this)},i.onLoad=function(){this._initPages(),this.indicator&&this.indicator.setPageView(this)},i.getCurrentPageIndex=function(){return this._curPageIdx},i.setCurrentPageIndex=function(t){this.scrollToPage(t,1)},i.getPages=function(){return this._pages},i.addPage=function(t){t&&-1===this._pages.indexOf(t)&&this.content&&(t._uiProps.uiTransformComp?(this.content.addChild(t),this._pages.push(t),this._updatePageView()):Q(4301))},i.insertPage=function(t,e){if(!(e<0)&&t&&-1===this._pages.indexOf(t)&&this.content)if(e>=this._pages.length)this.addPage(t);else{if(!t._uiProps.uiTransformComp)return void Q(4301);this._pages.splice(e,0,t),this.content.insertChild(t,e),this._updatePageView()}},i.removePage=function(t){if(t&&this.content){var e=this._pages.indexOf(t);-1!==e?this.removePageAtIndex(e):tt(4300,t.name)}},i.removePageAtIndex=function(t){var e=this._pages;if(!(t<0||t>=e.length)){var i=e[t];i&&this.content&&(this.content.removeChild(i),e.splice(t,1),this._updatePageView())}},i.removeAllPages=function(){if(this.content){for(var t=this._pages,e=0,i=t.length;e<i;e++)this.content.removeChild(t[e]);this._pages.length=0,this._updatePageView()}},i.scrollToPage=function(t,e){void 0===e&&(e=.3),t<0||t>=this._pages.length||(this._curPageIdx=t,this.scrollToOffset(this._moveOffsetValue(t),e,!0),this.indicator&&this.indicator._changedState())},i.getScrollEndedEventTiming=function(){return this.pageTurningEventTiming},i._updatePageView=function(){if(this.content){var t=this.content.getComponent(RXt);t&&t.enabled&&t.updateLayout();var e=this._pages.length;this._curPageIdx>=e&&(this._curPageIdx=0===e?0:e-1,this._lastPageIdx=this._curPageIdx);for(var i=this._initContentPos,n=0;n<e;++n){var r=this._pages[n].position;this.direction===Oqt.Horizontal?this._scrollCenterOffsetX[n]=Math.abs(i.x+r.x):this._scrollCenterOffsetY[n]=Math.abs(i.y+r.y)}this.indicator&&this.indicator._refresh()}},i._updateAllPagesSize=function(){var t=this.view;if(this.content&&t&&this._sizeMode===Pqt.Unified)for(var e=this._pages,i=t.contentSize,n=0,r=e.length;n<r;n++)e[n]._uiProps.uiTransformComp.setContentSize(i)},i._handleReleaseLogic=function(){this._autoScrollToPage(),this._scrolling&&(this._scrolling=!1,this._autoScrolling||this._dispatchEvent(e.EventType.SCROLL_ENDED))},i._onTouchBegan=function(e,i){e.touch.getUILocation(Nqt),jn.set(this._touchBeganPosition,Nqt.x,Nqt.y),t.prototype._onTouchBegan.call(this,e,i)},i._onTouchMoved=function(e,i){t.prototype._onTouchMoved.call(this,e,i)},i._onTouchEnded=function(e,i){e.touch.getUILocation(Nqt),jn.set(this._touchEndPosition,Nqt.x,Nqt.y),t.prototype._onTouchEnded.call(this,e,i)},i._onTouchCancelled=function(e,i){e.touch.getUILocation(Nqt),jn.set(this._touchEndPosition,Nqt.x,Nqt.y),t.prototype._onTouchCancelled.call(this,e,i)},i._onMouseWheel=function(){},i._syncScrollDirection=function(){this.horizontal=this.direction===Oqt.Horizontal,this.vertical=this.direction===Oqt.Vertical},i._syncSizeMode=function(){var t=this.view;if(this.content&&t){var e=this.content.getComponent(RXt);if(e){if(this._sizeMode===Pqt.Free&&this._pages.length>0){var i=this._pages[0]._uiProps.uiTransformComp,n=this._pages[this._pages.length-1]._uiProps.uiTransformComp;this.direction===Oqt.Horizontal?(e.paddingLeft=(t.width-i.width)/2,e.paddingRight=(t.width-n.width)/2):this.direction===Oqt.Vertical&&(e.paddingTop=(t.height-i.height)/2,e.paddingBottom=(t.height-n.height)/2)}e.updateLayout()}}},i._initPages=function(){if(this.content){this._initContentPos=this.content.position;for(var t=this.content.children,e=0;e<t.length;++e){var i=t[e];this._pages.indexOf(i)>=0||this._pages.push(i)}this._syncScrollDirection(),this._syncSizeMode(),this._updatePageView()}},i._dispatchPageTurningEvent=function(){this._lastPageIdx!==this._curPageIdx&&(this._lastPageIdx=this._curPageIdx,fp.emitEvents(this.pageEvents,this,Lqt.PAGE_TURNING),this.node.emit(Lqt.PAGE_TURNING,this))},i._isQuicklyScrollable=function(t){if(this.direction===Oqt.Horizontal){if(Math.abs(t.x)>this.autoPageTurningThreshold)return!0}else if(this.direction===Oqt.Vertical&&Math.abs(t.y)>this.autoPageTurningThreshold)return!0;return!1},i._moveOffsetValue=function(t){var e=new jn;if(this._sizeMode===Pqt.Free)this.direction===Oqt.Horizontal?e.x=this._scrollCenterOffsetX[t]:this.direction===Oqt.Vertical&&(e.y=this._scrollCenterOffsetY[t]);else{var i=this.view;if(!i)return e;this.direction===Oqt.Horizontal?e.x=t*i.width:this.direction===Oqt.Vertical&&(e.y=t*i.height)}return e},i._getDragDirection=function(t){return this._direction===Oqt.Horizontal?0===t.x?0:t.x>0?1:-1:0===t.y?0:t.y<0?1:-1},i._isScrollable=function(t,e,i){if(this._sizeMode===Pqt.Free){var n=0,r=0;if(this.direction===Oqt.Horizontal)return n=this._scrollCenterOffsetX[e],r=this._scrollCenterOffsetX[i],Math.abs(t.x)>=Math.abs(n-r)*this.scrollThreshold;if(this.direction===Oqt.Vertical)return n=this._scrollCenterOffsetY[e],r=this._scrollCenterOffsetY[i],Math.abs(t.y)>=Math.abs(n-r)*this.scrollThreshold}else{var s=this.view;if(!s)return!1;if(this.direction===Oqt.Horizontal)return Math.abs(t.x)>=s.width*this.scrollThreshold;if(this.direction===Oqt.Vertical)return Math.abs(t.y)>=s.height*this.scrollThreshold}return!1},i._autoScrollToPage=function(){if(this._startBounceBackIfNeeded()){var t=this._getHowMuchOutOfBoundary();this._clampDelta(t),(t.x>0||t.y<0)&&(this._curPageIdx=0===this._pages.length?0:this._pages.length-1),(t.x<0||t.y>0)&&(this._curPageIdx=0),this.indicator&&this.indicator._changedState()}else{var e=new jn;jn.subtract(e,this._touchBeganPosition,this._touchEndPosition);var i=this._curPageIdx,n=i+this._getDragDirection(e),r=this.pageTurningSpeed*Math.abs(i-n);if(n<this._pages.length){if(this._isScrollable(e,i,n))return void this.scrollToPage(n,r);var s=this._calculateTouchMoveVelocity();if(this._isQuicklyScrollable(s))return void this.scrollToPage(n,r)}this.scrollToPage(i,r)}},n(e,[{key:"sizeMode",get:function(){return this._sizeMode},set:function(t){this._sizeMode!==t&&(this._sizeMode=t,this._syncSizeMode())}},{key:"direction",get:function(){return this._direction},set:function(t){this._direction!==t&&(this._direction=t,this._syncScrollDirection())}},{key:"scrollThreshold",get:function(){return this._scrollThreshold},set:function(t){this._scrollThreshold!==t&&(this._scrollThreshold=t)}},{key:"pageTurningEventTiming",get:function(){return this._pageTurningEventTiming},set:function(t){this._pageTurningEventTiming!==t&&(this._pageTurningEventTiming=t)}},{key:"indicator",get:function(){return this._indicator},set:function(t){this._indicator!==t&&(this._indicator=t,this.indicator&&this.indicator.setPageView(this))}},{key:"curPageIdx",get:function(){return this._curPageIdx}},{key:"verticalScrollBar",get:function(){return t.prototype.verticalScrollBar},set:function(t){this.verticalScrollBar=t}},{key:"horizontalScrollBar",get:function(){return t.prototype.horizontalScrollBar},set:function(t){this.horizontalScrollBar=t}}]),e}(zjt)).SizeMode=Pqt,Bqt.Direction=Oqt,Bqt.EventType=rYt(Lqt,Sjt),m((vqt=Bqt).prototype,"sizeMode",[lqt],Object.getOwnPropertyDescriptor(vqt.prototype,"sizeMode"),vqt.prototype),m(vqt.prototype,"direction",[cqt],Object.getOwnPropertyDescriptor(vqt.prototype,"direction"),vqt.prototype),m(vqt.prototype,"indicator",[_qt],Object.getOwnPropertyDescriptor(vqt.prototype,"indicator"),vqt.prototype),yqt=ja(vqt.prototype,"autoPageTurningThreshold",[lo],(function(){return 100})),m(vqt.prototype,"verticalScrollBar",[fqt,jo],Object.getOwnPropertyDescriptor(vqt.prototype,"verticalScrollBar"),vqt.prototype),m(vqt.prototype,"horizontalScrollBar",[dqt,jo],Object.getOwnPropertyDescriptor(vqt.prototype,"horizontalScrollBar"),vqt.prototype),Sqt=ja(vqt.prototype,"horizontal",[jo,lo],(function(){return!0})),Tqt=ja(vqt.prototype,"vertical",[jo,lo],(function(){return!0})),Aqt=ja(vqt.prototype,"cancelInnerEvents",[jo,lo],(function(){return!0})),bqt=ja(vqt.prototype,"scrollEvents",[pqt,lo,jo],(function(){return[]})),Eqt=ja(vqt.prototype,"pageTurningSpeed",[lo],(function(){return.3})),Cqt=ja(vqt.prototype,"pageEvents",[mqt,lo],(function(){return[]})),xqt=ja(vqt.prototype,"_sizeMode",[lo],(function(){return Pqt.Unified})),wqt=ja(vqt.prototype,"_direction",[lo],(function(){return Oqt.Horizontal})),Rqt=ja(vqt.prototype,"_scrollThreshold",[lo],(function(){return.5})),Iqt=ja(vqt.prototype,"_pageTurningEventTiming",[lo],(function(){return.1})),Dqt=ja(vqt.prototype,"_indicator",[lo],(function(){return null})),gqt=vqt))||gqt)||gqt));S.PageView=Fqt;var kqt=new gn,Gqt=new jn,Vqt=new jn,Uqt=new jn(1,1),zqt=new jn,Hqt=new jn;function Wqt(t,e){if(!e._hadAlignOnce){e.alignMode===VYt.ONCE&&(e._hadAlignOnce=!0);var i,n=e.target,r=Vqt,s=Uqt;n?WYt(t,i=n,r,s):i=t.parent;var a=HYt(i),o=i instanceof Lx||!i.getComponent(wO),h=o?Gqt:i.getComponent(wO).anchorPoint,u=o;t.getPosition(kqt);var l=t._uiProps.uiTransformComp,c=kqt.x,_=kqt.y,f=l.anchorPoint,d=t.scale;if(e.alignFlags&UYt.HORIZONTAL){var p=0,m=0,g=a.width;u?(p=Ta.left.x,m=Ta.right.x):m=(p=-h.x*g)+g,p+=e.isAbsoluteLeft?e.left:e.left*g,m-=e.isAbsoluteRight?e.right:e.right*g,n&&(p+=r.x,p*=s.x,m+=r.x,m*=s.x);var v=0,y=f.x,S=d.x;if(S<0&&(y=1-y,S=-S),e.isStretchWidth)v=m-p,0!==S&&(l.width=v/S),c=p+y*v;else{if(v=l.width*S,e.isAlignHorizontalCenter){var T=e.isAbsoluteHorizontalCenter?e.horizontalCenter:e.horizontalCenter*g,A=(.5-h.x)*a.width;n&&(T*=s.x,A+=r.x,A*=s.x),c=A+(y-.5)*v+T}else c=e.isAlignLeft?p+y*v:m+(y-1)*v;Ni(S,0,Oi)?v=l.width:v/=S}e._lastSize.width=v}if(e.alignFlags&UYt.VERTICAL){var b=0,E=0,C=a.height;u?(E=Ta.bottom.y,b=Ta.top.y):b=(E=-h.y*C)+C,E+=e.isAbsoluteBottom?e.bottom:e.bottom*C,b-=e.isAbsoluteTop?e.top:e.top*C,n&&(E+=r.y,E*=s.y,b+=r.y,b*=s.y);var x=0,w=f.y,R=d.y;if(R<0&&(w=1-w,R=-R),e.isStretchHeight)x=b-E,0!==R&&(l.height=x/R),_=E+w*x;else{if(x=l.height*R,e.isAlignVerticalCenter){var I=e.isAbsoluteVerticalCenter?e.verticalCenter:e.verticalCenter*C,D=(.5-h.y)*a.height;n&&(I*=s.y,D+=r.y,D*=s.y),_=D+(w-.5)*x+I}else _=e.isAlignBottom?E+w*x:b+(w-1)*x;Ni(R,0,Oi)?x=l.height:x/=R}e._lastSize.height=x}t.setPosition(c,_,kqt.z),gn.set(e._lastPos,c,_,kqt.z)}}function Xqt(t){var e=t.getComponent(sqt);if(e&&e.enabled){if(!S.isValid(t,!0))return;Qqt.push(e)}for(var i,n=f(t.children);!(i=n()).done;){var r=i.value;r.active&&Xqt(r)}}function jqt(){var t=ID.getScene();if(t){Zqt.isAligning=!0,Zqt._nodesOrderDirty&&(Qqt.length=0,Xqt(t),Zqt._nodesOrderDirty=!1);var e=null,i=Zqt._activeWidgetsIterator;for(i.i=0;i.i<Qqt.length;++i.i)(e=Qqt[i.i])._dirty&&(Wqt(e.node,e),e._dirty=!1);Zqt.isAligning=!1}}var Yqt,qqt,Kqt,Qqt=[],Zqt=t("h1",S._widgetManager={isAligning:!1,_nodesOrderDirty:!1,_activeWidgetsIterator:new ce(Qqt),animationState:null,init:function(){ID.on(wD.EVENT_AFTER_SCENE_LAUNCH,jqt),ID.on(wD.EVENT_AFTER_UPDATE,jqt),hB.instance.on("design-resolution-changed",this.onResized,this);var t=this.onResized.bind(this);hB.instance.on("canvas-resize",t),ga.on("window-resize",t)},add:function(){this._nodesOrderDirty=!0},remove:function(t){this._activeWidgetsIterator.remove(t)},onResized:function(){var t=ID.getScene();t&&this.refreshWidgetOnResized(t)},refreshWidgetOnResized:function(t){var e=hg.isNode(t)&&t.getComponent(sqt);e&&e.enabled&&(e.alignMode===VYt.ON_WINDOW_RESIZE||e.alignMode===VYt.ALWAYS)&&e.setDirty();for(var i,n=f(t.children);!(i=n()).done;){var r=i.value;this.refreshWidgetOnResized(r)}},updateOffsetsToStayPut:function(t,e){function i(t,e){return Math.abs(t-e)>1e-10?e:t}var n=t.node,r=n.parent;if(r){var s=zqt;s.set(0,0);var a=Hqt;if(a.set(1,1),t.target&&WYt(n,r=t.target,s,a),!e)return;var o=r._uiProps&&r._uiProps.uiTransformComp,h=o?o.anchorPoint:Gqt,u=n._uiProps.uiTransformComp,l=HYt(r),c=u.anchorPoint,_=n.position,f=UYt,d=n.scale,p=0;if(e&f.LEFT){var m=-h.x*l.width;m+=s.x,m*=a.x,p=_.x-c.x*u.width*Math.abs(d.x)-m,t.isAbsoluteLeft||(p/=l.width),p/=a.x,t.left=i(t.left,p)}if(e&f.RIGHT){var g=(1-h.x)*l.width;g+=s.x,p=(g*=a.x)-(_.x+(1-c.x)*u.width*Math.abs(d.x)),t.isAbsoluteRight||(p/=l.width),p/=a.x,t.right=i(t.right,p)}if(e&f.TOP){var v=(1-h.y)*l.height;v+=s.y,p=(v*=a.y)-(_.y+(1-c.y)*u.height*Math.abs(d.y)),t.isAbsoluteTop||(p/=l.height),p/=a.y,t.top=i(t.top,p)}if(e&f.BOT){var y=-h.y*l.height;y+=s.y,y*=a.y,p=_.y-c.y*u.height*Math.abs(d.y)-y,t.isAbsoluteBottom||(p/=l.height),p/=a.y,t.bottom=i(t.bottom,p)}}},updateAlignment:function t(e){var i=e.parent;i&&hg.isNode(i)&&t(i);var n=e.getComponent(sqt);n&&i&&Wqt(e,n)},AlignMode:VYt,AlignFlags:UYt});ID.on(wD.EVENT_INIT,(function(){Zqt.init()}));var Jqt,$qt,tKt,eKt,iKt,nKt,rKt,sKt,aKt,oKt,hKt,uKt,lKt=t("gZ",eo("cc.SafeArea")(Yqt=no(110)(Yqt=io(sqt)((qqt=function(t){function e(){var e;return(e=t.call(this)||this)._symmetric=Kqt&&Kqt(),e}s(e,t);var i=e.prototype;return i.onEnable=function(){this.updateArea(),ga.on("window-resize",this.updateArea,this),ga.on("orientation-change",this.updateArea,this)},i.onDisable=function(){ga.off("window-resize",this.updateArea,this),ga.off("orientation-change",this.updateArea,this)},i.updateArea=function(){var t=this.node.getComponent(sqt),e=this.node.getComponent(wO);if(t&&e){t.updateAlignment();var i=this.node.position.clone(),n=e.anchorPoint.clone();t.isAlignTop=t.isAlignBottom=t.isAlignLeft=t.isAlignRight=!0;var r=yB.getVisibleSize(),s=r.width,a=r.height,o=Sa.getSafeAreaRect(this._symmetric);t.top=a-o.y-o.height,t.bottom=o.y,t.left=o.x,t.right=s-o.x-o.width,t.updateAlignment();var h=this.node.position.clone(),u=n.x-(h.x-i.x)/e.width,l=n.y-(h.y-i.y)/e.height;e.setAnchorPoint(u,l),Zqt.add(t)}},n(e,[{key:"symmetric",get:function(){return this._symmetric},set:function(t){this._symmetric=t}}]),e}(mp),Kqt=ja(qqt.prototype,"_symmetric",[lo],(function(){return!0})),Yqt=qqt))||Yqt)||Yqt)||Yqt);S.SafeArea=lKt;var cKt,_Kt=t("g_",(Jqt=eo("cc.UICoordinateTracker"),$qt=no(110),tKt=Lo(hg),eKt=Lo(Nk),iKt=Lo([fp]),Jqt(nKt=$qt((m((rKt=function(t){function e(){var e;return(e=t.call(this)||this).syncEvents=sKt&&sKt(),e._target=aKt&&aKt(),e._camera=oKt&&oKt(),e._useScale=hKt&&hKt(),e._distance=uKt&&uKt(),e._transformPos=vn(),e._viewPos=vn(),e._canMove=!0,e._lastWPos=vn(),e._lastCameraPos=vn(),e}s(e,t);var i=e.prototype;return i.onEnable=function(){this._checkCanMove()},i.update=function(){var t=this.node.worldPosition,e=this._camera;if(this._canMove&&e&&e.camera&&(!this._lastWPos.equals(t)||!this._lastCameraPos.equals(e.node.worldPosition))&&(this._lastWPos.set(t),this._lastCameraPos.set(e.node.worldPosition),e.camera.update(),e.convertToUINode(t,this._target,this._transformPos),this._useScale&&gn.transformMat4(this._viewPos,this.node.worldPosition,e.camera.matView),this.syncEvents.length>0)){var i=this._distance/Math.abs(this._viewPos.z);fp.emitEvents(this.syncEvents,this._transformPos,i)}},i._checkCanMove=function(){this._canMove=!(!this._camera||!this._target)},n(e,[{key:"target",get:function(){return this._target},set:function(t){this._target!==t&&(this._target=t,this._checkCanMove())}},{key:"camera",get:function(){return this._camera},set:function(t){this._camera!==t&&(this._camera=t,this._checkCanMove())}},{key:"useScale",get:function(){return this._useScale},set:function(t){this._useScale!==t&&(this._useScale=t)}},{key:"distance",get:function(){return this._distance},set:function(t){this._distance!==t&&(this._distance=t)}}]),e}(mp)).prototype,"target",[tKt],Object.getOwnPropertyDescriptor(rKt.prototype,"target"),rKt.prototype),m(rKt.prototype,"camera",[eKt],Object.getOwnPropertyDescriptor(rKt.prototype,"camera"),rKt.prototype),sKt=ja(rKt.prototype,"syncEvents",[iKt,lo],(function(){return[]})),aKt=ja(rKt.prototype,"_target",[lo],(function(){return null})),oKt=ja(rKt.prototype,"_camera",[lo],(function(){return null})),hKt=ja(rKt.prototype,"_useScale",[lo],(function(){return!0})),uKt=ja(rKt.prototype,"_distance",[lo],(function(){return 1})),nKt=rKt))||nKt)||nKt)),fKt=[vm.TOUCH_START,vm.TOUCH_END,vm.TOUCH_MOVE,vm.MOUSE_DOWN,vm.MOUSE_MOVE,vm.MOUSE_UP,vm.MOUSE_ENTER,vm.MOUSE_LEAVE,vm.MOUSE_WHEEL];function dKt(t){t.propagationStopped=!0}var pKt,mKt,gKt,vKt,yKt,SKt=t("g$",eo("cc.BlockInputEvents")(cKt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.onEnable=function(){for(var t=0;t<fKt.length;t++)this.node.on(fKt[t],dKt,this)},i.onDisable=function(){for(var t=0;t<fKt.length;t++)this.node.off(fKt[t],dKt,this)},e}(mp))||cKt),TKt=t("h0",eo("cc.SubContextView")(pKt=no(110)(pKt=io(wO)((mKt=function(t){function e(){var e;return(e=t.call(this)||this)._fps=gKt&&gKt(),e._sprite=null,e._imageAsset=new Vd,e._texture=new lm,e._updatedTime=0,e._updateInterval=0,e._openDataContext=null,e._content=new hg("content"),e._designResolutionSize=vKt&&vKt(),e._content.hideFlags|=Ms.Flags.DontSave|Ms.Flags.HideInHierarchy,e._updatedTime=performance.now(),e}s(e,t);var i=e.prototype;return i.onLoad=function(){Vf.getOpenDataContext?(this._updateInterval=1e3/this._fps,this._openDataContext=Vf.getOpenDataContext(),this._initSharedCanvas(),this._initContentNode(),this._updateSubContextView(),this._updateContentLayer()):this.enabled=!1},i.onEnable=function(){this._registerNodeEvent()},i.onDisable=function(){this._unregisterNodeEvent()},i._initSharedCanvas=function(){if(this._openDataContext){var t=this._openDataContext.canvas,e=this._designResolutionSize.width,i=this._designResolutionSize.height;t.width=e,t.height=i}},i._initContentNode=function(){if(this._openDataContext){var t=this._openDataContext.canvas,e=this._imageAsset;if(e.reset(t),this._texture.image=e,this._texture.create(t.width,t.height),this._sprite=this._content.getComponent(PF),this._sprite||(this._sprite=this._content.addComponent(PF)),this._sprite.spriteFrame)this._sprite.spriteFrame.texture=this._texture;else{var i=new SM;i.texture=this._texture,this._sprite.spriteFrame=i}this._content.parent=this.node}},i._updateSubContextView=function(){if(this._openDataContext){var t=this.node.getComponent(wO),e=this._content.getComponent(wO),i=t.width/e.width,n=t.height/e.height,r=i>n?n:i;e.width*=r,e.height*=r;var s=yB.getViewportRect(),a=e.getBoundingBoxToWorld(),o=yB.getVisibleSize(),h=ga.devicePixelRatio,u=(s.width*(a.x/o.width)+s.x)/h,l=(s.height*(a.y/o.height)+s.y)/h,c=s.width*(a.width/o.width)/h,_=s.height*(a.height/o.height)/h;this._openDataContext.postMessage({fromEngine:!0,type:"engine",event:"viewport",x:u,y:l,width:c,height:_})}},i._updateSubContextTexture=function(){var t=this._imageAsset;if(t&&this._openDataContext&&!(t.width<=0||t.height<=0)){var e=this._openDataContext.canvas;t.reset(e),(e.width>t.width||e.height>t.height)&&this._texture.create(e.width,e.height),this._texture.uploadData(e)}},i._registerNodeEvent=function(){this.node.on(vm.TRANSFORM_CHANGED,this._updateSubContextView,this),this.node.on(vm.SIZE_CHANGED,this._updateSubContextView,this),this.node.on(vm.LAYER_CHANGED,this._updateContentLayer,this)},i._unregisterNodeEvent=function(){this.node.off(vm.TRANSFORM_CHANGED,this._updateSubContextView,this),this.node.off(vm.SIZE_CHANGED,this._updateSubContextView,this),this.node.off(vm.LAYER_CHANGED,this._updateContentLayer,this)},i._updateContentLayer=function(){this._content.layer=this.node.layer},i.update=function(t){void 0===t?this._updateSubContextTexture():performance.now()-this._updatedTime>=this._updateInterval&&(this._updatedTime+=this._updateInterval,this._updateSubContextTexture())},i.onDestroy=function(){this._content.destroy(),this._texture.destroy(),this._sprite&&this._sprite.destroy(),this._imageAsset.destroy(),this._openDataContext=null},n(e,[{key:"designResolutionSize",get:function(){return this._designResolutionSize},set:function(){}},{key:"fps",get:function(){return this._fps},set:function(t){this._fps!==t&&(this._fps=t,this._updateInterval=1e3/t)}}]),e}(mp),gKt=ja(mKt.prototype,"_fps",[lo],(function(){return 60})),vKt=ja(mKt.prototype,"_designResolutionSize",[lo],(function(){return new Qn(640,960)})),pKt=mKt))||pKt)||pKt)||pKt);S.SubContextView=TKt,Tt({ButtonComponent:{newName:"Button",since:"1.2.0",removed:!1},EditBoxComponent:{newName:"EditBox",since:"1.2.0",removed:!1},LayoutComponent:{newName:"Layout",since:"1.2.0",removed:!1},ProgressBarComponent:{newName:"ProgressBar",since:"1.2.0",removed:!1},ScrollViewComponent:{newName:"ScrollView",since:"1.2.0",removed:!1},ScrollBarComponent:{newName:"ScrollBar",since:"1.2.0",removed:!1},SliderComponent:{newName:"Slider",since:"1.2.0",removed:!1},ToggleComponent:{newName:"Toggle",since:"1.2.0",removed:!1},ToggleContainerComponent:{newName:"ToggleContainer",since:"1.2.0",removed:!1},WidgetComponent:{newName:"Widget",since:"1.2.0",removed:!1},PageViewComponent:{newName:"PageView",since:"1.2.0",removed:!1},PageViewIndicatorComponent:{newName:"PageViewIndicator",since:"1.2.0",removed:!1},SafeAreaComponent:{newName:"SafeArea",since:"1.2.0",removed:!1},UICoordinateTrackerComponent:{newName:"UICoordinateTracker",since:"1.2.0",removed:!1},BlockInputEventsComponent:{newName:"BlockInputEvents",since:"1.2.0",removed:!1}});var AKt,bKt,EKt,CKt=t("h5",eo("cc.UIReorderComponent")(yKt=function(){tt(1408,"UIReorderComponent")})||yKt);S.UIReorderComponent=CKt,S.ButtonComponent=HHt,ne(HHt,"cc.ButtonComponent"),S.EditBoxComponent=_Xt,ne(_Xt,"cc.EditBoxComponent"),S.LayoutComponent=RXt,ne(RXt,"cc.LayoutComponent"),S.ProgressBarComponent=zXt,ne(zXt,"cc.ProgressBarComponent"),S.ScrollViewComponent=zjt,ne(zjt,"cc.ScrollViewComponent"),S.ScrollBarComponent=ZXt,ne(ZXt,"cc.ScrollBarComponent"),S.SliderComponent=nYt,ne(nYt,"cc.SliderComponent"),S.ToggleComponent=_Yt,ne(_Yt,"cc.ToggleComponent"),S.ToggleContainerComponent=GYt,ne(GYt,"cc.ToggleContainerComponent"),S.WidgetComponent=sqt,ne(sqt,"cc.WidgetComponent"),S.PageViewComponent=Fqt,ne(Fqt,"cc.PageViewComponent"),S.PageViewIndicatorComponent=Mqt,ne(Mqt,"cc.PageViewIndicatorComponent"),S.SafeAreaComponent=lKt,ne(lKt,"cc.SafeAreaComponent"),ne(_Kt,"cc.UICoordinateTrackerComponent"),S.BlockInputEventsComponent=SKt,ne(SKt,"cc.BlockInputEventsComponent"),lt(hB.prototype,"View.prototype",[{name:"isAntiAliasEnabled",suggest:"The API of Texture2d have been largely modified, no alternative"},{name:"enableAntiAlias",suggest:"The API of Texture2d have been largely modified, no alternative"}]),ct(hB.prototype,"View.prototype",[{name:"adjustViewportMeta"},{name:"enableAutoFullScreen",suggest:"use screen.requestFullScreen() instead."},{name:"isAutoFullScreenEnabled"},{name:"setCanvasSize",suggest:"setting size in CSS pixels is not recommended, please use screen.windowSize instead."},{name:"getCanvasSize",suggest:"please use screen.windowSize instead."},{name:"getFrameSize",suggest:"getting size in CSS pixels is not recommended, please use screen.windowSize instead."},{name:"setFrameSize",suggest:"setting size in CSS pixels is not recommended, please use screen.windowSize instead."},{name:"getDevicePixelRatio",suggest:"use screen.devicePixelRatio instead."},{name:"convertToLocationInView"},{name:"enableRetina"},{name:"isRetinaEnabled"},{name:"setRealPixelResolution"}]);var xKt=t("h6",eo("cc.VideoClip")((bKt=function(t){function e(){var e;return(e=t.call(this)||this)._duration=EKt&&EKt(),e._video=null,e}return s(e,t),n(e,[{key:"_nativeAsset",get:function(){return this._video},set:function(t){this._video=t,this._duration=t?t.duration:0}}]),e}(vd),EKt=ja(bKt.prototype,"_duration",[lo],(function(){return 0})),AKt=bKt))||AKt),wKt=A.document;function RKt(t,e,i){var n=wKt.createElement("video"),r=wKt.createElement("source");n.appendChild(r);var s=new XMLHttpRequest;s.open("GET",t,!0),s.responseType="blob",s.onload=function(){200===this.status||0===this.status?(r.src=URL.createObjectURL(this.response),i(null,n)):i(new Error(s.status+"(no response)"))},s.onerror=function(){var e="load video failure - "+t;U(e),i(new Error(e))},s.send()}function IKt(t,e,i,n){var r=new xKt;r._nativeUrl=t,r._nativeAsset=e,n(null,r)}zS.register({".mp4":RKt,".avi":RKt,".mov":RKt,".mpg":RKt,".mpeg":RKt,".rm":RKt,".rmvb":RKt}),tT.register({".mp4":IKt,".avi":IKt,".mov":IKt,".mpg":IKt,".mpeg":IKt,".rm":IKt,".rmvb":IKt});var DKt,BKt,MKt=Ee({REMOTE:0,LOCAL:1});!function(t){t.NONE="none",t.PLAYING="playing",t.PAUSED="paused",t.STOPPED="stopped",t.COMPLETED="completed",t.META_LOADED="meta-loaded",t.READY_TO_PLAY="ready-to-play",t.ERROR="error",t.CLICKED="clicked"}(DKt||(DKt={})),function(t){t[t.HAVE_NOTHING=0]="HAVE_NOTHING",t[t.HAVE_METADATA=1]="HAVE_METADATA",t[t.HAVE_CURRENT_DATA=2]="HAVE_CURRENT_DATA",t[t.HAVE_FUTURE_DATA=3]="HAVE_FUTURE_DATA",t[t.HAVE_ENOUGH_DATA=4]="HAVE_ENOUGH_DATA"}(BKt||(BKt={}));var PKt=function(){function t(t){var e=this;this._componentEventList=new Map,this._state=DKt.NONE,this._video=null,this._onInterruptedBegin=void 0,this._onInterruptedEnd=void 0,this._interrupted=!1,this._loaded=!1,this._loadedMeta=!1,this._ignorePause=!1,this._fullScreenOnAwake=!1,this._visible=!0,this._playing=!1,this._cachedCurrentTime=-1,this._waitingFullscreen=!1,this._waitingPlay=!1,this._keepAspectRatio=!1,this._component=null,this._uiTrans=null,this._node=null,this._stayOnBottom=!1,this._dirty=!1,this._forceUpdate=!1,this._w=0,this._h=0,this._m00=0,this._m01=0,this._m04=0,this._m05=0,this._m12=0,this._m13=0,this._component=t,this._node=t.node,this._uiTrans=t.node.getComponent(wO),this._onInterruptedBegin=function(){e.video&&e._state===DKt.PLAYING&&(e.video.pause(),e._interrupted=!0)},this._onInterruptedEnd=function(){e._interrupted&&e.video&&(e.video.play(),e._interrupted=!1)},S.game.on(S.Game.EVENT_PAUSE,this._onInterruptedBegin),S.game.on(S.Game.EVENT_RESUME,this._onInterruptedEnd)}var e=t.prototype;return e.onLoadedMetadata=function(t){this._loadedMeta=!0,this._forceUpdate=!0,this._visible?this.enable():this.disable(),this.dispatchEvent(DKt.META_LOADED);var e=t.target;this._keepAspectRatio&&e&&this.syncUITransform(e.videoWidth,e.videoHeight),this.delayedFullScreen(),this.delayedPlay()},e.onCanPlay=function(){this._loaded=!0,this.dispatchEvent(DKt.READY_TO_PLAY)},e.onPlay=function(){this._playing=!0,this.dispatchEvent(DKt.PLAYING)},e.onPlaying=function(){this.dispatchEvent(DKt.PLAYING)},e.onPause=function(){this._playing=!1,this._ignorePause?this._ignorePause=!1:this.dispatchEvent(DKt.PAUSED)},e.onStoped=function(){this._playing=!1,this._ignorePause=!1,this.dispatchEvent(DKt.STOPPED)},e.onEnded=function(){this._playing=!1,this.dispatchEvent(DKt.COMPLETED)},e.onClick=function(){this.dispatchEvent(DKt.CLICKED)},e.onError=function(t){this.dispatchEvent(DKt.ERROR);var e=t.target;e&&e.error&&H("Error "+e.error.code+"; details: "+e.error.message)},e.play=function(){this._loadedMeta||this._loaded?this.canPlay():this._waitingPlay=!0},e.delayedPlay=function(){this._waitingPlay&&(this.canPlay(),this._waitingPlay=!1)},e.syncFullScreenOnAwake=function(t){this._fullScreenOnAwake=t,this._loadedMeta||this._loaded?this.canFullScreen(t):this._waitingFullscreen=!0},e.delayedFullScreen=function(){this._waitingFullscreen&&(this.canFullScreen(this._fullScreenOnAwake),this._waitingFullscreen=!1)},e.dispatchEvent=function(t){var e=this._componentEventList.get(t);e&&(this._state=t,e.call(this))},e.syncUITransform=function(t,e){this._uiTrans&&(this._uiTrans.width=t,this._uiTrans.height=e)},e.syncCurrentTime=function(){this.video&&-1!==this._cachedCurrentTime&&this.video.currentTime!==this._cachedCurrentTime&&(this.seekTo(this._cachedCurrentTime),this._cachedCurrentTime=-1)},e.destroy=function(){this.removeVideoPlayer(),this._componentEventList.clear(),S.game.off(S.Game.EVENT_PAUSE,this._onInterruptedBegin),S.game.off(S.Game.EVENT_RESUME,this._onInterruptedEnd)},n(t,[{key:"fullScreenOnAwake",get:function(){return this._fullScreenOnAwake}},{key:"loaded",get:function(){return this._loaded}},{key:"componentEventList",get:function(){return this._componentEventList}},{key:"video",get:function(){return this._video}},{key:"state",get:function(){return this._state}},{key:"isPlaying",get:function(){return this._playing}},{key:"UICamera",get:function(){return ID.root.batcher2D.getFirstRenderCamera(this._node)}}]),t}();S.internal.VideoPlayerImpl=PKt;var OKt,LKt,NKt,FKt,kKt,GKt,VKt,UKt,zKt,HKt,WKt,XKt,jKt,YKt,qKt,KKt,QKt,ZKt,JKt,$Kt,tQt,eQt=A.document,iQt=-Math.pow(2,15),nQt=Wn(),rQt=function(t){function e(e){var i;return(i=t.call(this,e)||this)._eventList=new Map,i._clearColorA=-1,i._clearFlag=void 0,i}s(e,t);var i=e.prototype;return i.addListener=function(t,e){this._video&&(this._eventList.set(t,e),this._video.addEventListener(t,e))},i.removeAllListeners=function(){var t=this;this._eventList.forEach((function(e,i){t._video&&t._video.removeEventListener(i,e)})),this._eventList.clear()},i.canPlay=function(){var t=this;if(this.video){var e=this.video.play();A.Promise&&e instanceof Promise&&e.catch((function(){})).then((function(){t.syncCurrentTime()}))}},i.pause=function(){this.video&&(this.video.pause(),this._cachedCurrentTime=this.video.currentTime)},i.resume=function(){this.play()},i.stop=function(){var t=this;this.video&&(this._ignorePause=!0,this.video.currentTime=0,this.video.pause(),this._cachedCurrentTime=0,setTimeout((function(){t._ignorePause=!1,t.dispatchEvent(DKt.STOPPED)}),0))},i.syncClip=function(t){this.removeVideoPlayer(),t&&this.createVideoPlayer(t.nativeUrl)},i.syncURL=function(t){this.removeVideoPlayer(),t&&this.createVideoPlayer(t)},i.syncPlaybackRate=function(t){Sa.browserType!==Ws.UC?this.video&&(this.video.playbackRate=t):z("playbackRate is not supported by the uc mobile browser.")},i.syncVolume=function(t){this.video&&(this.video.volume=t)},i.syncMute=function(t){this.video&&(this.video.muted=t)},i.syncLoop=function(t){this.video&&(this.video.loop=t)},i.getDuration=function(){return this.video?this.video.duration:0},i.getCurrentTime=function(){return this.video?this.video.currentTime:-1},i.seekTo=function(t){this.video&&(this.video.currentTime=t,this._cachedCurrentTime=this.video.currentTime)},i.canFullScreen=function(t){var e=this,i=this._video;if(i&&i.readyState===BKt.HAVE_ENOUGH_DATA)return Sa.os===Ys.IOS&&Sa.isBrowser?(t?i.webkitEnterFullscreen&&i.webkitEnterFullscreen():i.webkitExitFullscreen&&i.webkitExitFullscreen(),void(this._fullScreenOnAwake=i.webkitDisplayingFullscreen)):ya.supportsFullScreen?void(t?(Sa.browserType===Ws.IE&&(i.style.transform=""),i.setAttribute("x5-video-player-fullscreen","true"),ya.requestFullScreen(i,(function(t){var n=Sa.browserType===Ws.IE?t.msFullscreenElement:t.fullscreenElement;e._fullScreenOnAwake=n===i}),(function(){e._fullScreenOnAwake=!1}))):(i.removeAttribute("x5-video-player-fullscreen"),ya.exitFullScreen())):(this._fullScreenOnAwake=t,this._forceUpdate=!0,void this.syncMatrix())},i.syncStayOnBottom=function(t){this._video&&(this._video.style["z-index"]=t?iQt:0,this._stayOnBottom=t),this._dirty=!0},i.syncKeepAspectRatio=function(t){this._keepAspectRatio=t,t&&this._loadedMeta&&this._video&&this.syncUITransform(this._video.videoWidth,this._video.videoHeight)},i.removeVideoPlayer=function(){var t=this._video;t&&ze(EB.container,t)&&(EB.container.removeChild(t),this.removeAllListeners()),this._cachedCurrentTime=0,this._playing=!1,this._loaded=!1,this._loadedMeta=!1,this._video=null},i.createVideoPlayer=function(t){var e=this._video=eQt.createElement("video");e.className="cocosVideo",e.style.visibility="hidden",e.style.position="absolute",e.style.bottom="0px",e.style.left="0px",e.style["transform-origin"]="0px 100% 0px",e.style["-webkit-transform-origin"]="0px 100% 0px",e.setAttribute("preload","auto"),e.setAttribute("webkit-playsinline",""),e.setAttribute("x5-playsinline",""),e.setAttribute("playsinline",""),this._bindDomEvent(),EB.container.appendChild(e);var i=eQt.createElement("source");e.appendChild(i),i.src=t},i._bindDomEvent=function(){this._video,this.addListener("loadedmetadata",this.onLoadedMetadata.bind(this)),this.addListener("canplay",this.onCanPlay.bind(this)),this.addListener("canplaythrough",this.onCanPlay.bind(this)),this.addListener("play",this.onPlay.bind(this)),this.addListener("playing",this.onPlaying.bind(this)),this.addListener("pause",this.onPause.bind(this)),this.addListener("click",this.onClick.bind(this)),this.addListener("ended",this.onEnded.bind(this)),this.addListener("error",this.onError.bind(this))},i.onCanPlay=function(e){var i=e.target;if(!this._loaded||!i)switch(i.readyState){case BKt.HAVE_METADATA:case BKt.HAVE_ENOUGH_DATA:t.prototype.onCanPlay.call(this,e)}},i.enable=function(){if(this._video){if(this._visible=!0,"visible"===this._video.style.visibility)return;this._video.style.visibility="visible"}},i.disable=function(t){if(this._video){if(!t&&this._playing&&this._video.pause(),this._visible=!1,"hidden"===this._video.style.visibility)return;this._video.style.visibility="hidden"}},i.syncMatrix=function(){if(this._video&&this._visible&&this._component){var t=this.UICamera;if(t&&!ya.fullScreen()){this._dirty&&(this._dirty=!1,this._stayOnBottom?(this._clearColorA=t.clearColor.w,this._clearFlag=t.clearFlag,t.clearColor.w=0,t.clearFlag=Fc.ALL):this._clearFlag&&(t.clearColor.w=this._clearColorA,t.clearFlag=this._clearFlag,this._clearColorA=-1,this._clearFlag=null)),this._component.node.getWorldMatrix(nQt),t.update(!0),t.worldMatrixToScreen(nQt,nQt,EB.canvas.width,EB.canvas.height);var e=0,i=0;if(this._fullScreenOnAwake?(e=Ta.width,i=Ta.height):(e=this._uiTrans.contentSize.width,i=this._uiTrans.contentSize.height),this._forceUpdate||this._m00!==nQt.m00||this._m01!==nQt.m01||this._m04!==nQt.m04||this._m05!==nQt.m05||this._m12!==nQt.m12||this._m13!==nQt.m13||this._w!==e||this._h!==i){this._m00=nQt.m00,this._m01=nQt.m01,this._m04=nQt.m04,this._m05=nQt.m05,this._m12=nQt.m12,this._m13=nQt.m13,this._w=e,this._h=i;var n=ga.devicePixelRatio,r=1/n,s=1/n,a=EB.container,o=nQt.m00*r,h=nQt.m01,u=nQt.m04,l=nQt.m05*s;this._video.style.width=this._w+"px",this._video.style.height=this._h+"px",Sa.browserType!==Ws.MOBILE_QQ?this._video.style.objectFit=this._keepAspectRatio?"none":"fill":z("keepAspectRatio is not supported by the qq mobile browser.");var c=this._w*r,_=this._h*s,f=this._uiTrans.anchorPoint,d=f.x,p=f.y,m=c*nQt.m00*d,g=_*nQt.m05*p,v=a&&a.style.paddingLeft?parseInt(a.style.paddingLeft):0,y=a&&a.style.paddingBottom?parseInt(a.style.paddingBottom):0,S="matrix("+o+","+-h+","+-u+","+l+","+(nQt.m12*r-m+v)+","+-(nQt.m13*s-g+y)+")";this._video.style.transform=S,this._video.style["-webkit-transform"]=S,Sa.browserType!==Ws.IE&&(this._forceUpdate=!1)}}}},e}(PKt),sQt=function(){function t(){}return t.getImpl=function(t){return new rQt(t)},t}();S.internal.VideoPlayerImplManager=sQt;var aQt,oQt=t("h7",(OKt=eo("cc.VideoPlayer"),LKt=io(wO),NKt=Lo(xKt),FKt=Lo(MKt),kKt=Lo(xKt),GKt=Lo([fp]),OKt(VKt=LKt(((tQt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._resourceType=zKt&&zKt(),e._remoteURL=HKt&&HKt(),e._clip=WKt&&WKt(),e._playOnAwake=XKt&&XKt(),e._volume=jKt&&jKt(),e._mute=YKt&&YKt(),e._playbackRate=qKt&&qKt(),e._loop=KKt&&KKt(),e._fullScreenOnAwake=QKt&&QKt(),e._stayOnBottom=ZKt&&ZKt(),e._keepAspectRatio=JKt&&JKt(),e._impl=null,e._cachedCurrentTime=0,e.videoPlayerEvent=$Kt&&$Kt(),e}s(e,t);var i=e.prototype;return i.syncSource=function(){this._impl&&(this._resourceType===MKt.REMOTE?this._impl.syncURL(this._remoteURL):this._impl.syncClip(this._clip),this._cachedCurrentTime=0,this._impl.syncLoop(this._loop),this._impl.syncVolume(this._volume),this._impl.syncMute(this._mute),this._impl.seekTo(this._cachedCurrentTime),this._impl.syncPlaybackRate(this._playbackRate),this._impl.syncStayOnBottom(this._stayOnBottom),this._impl.syncKeepAspectRatio(this._keepAspectRatio),this._impl.syncFullScreenOnAwake(this._fullScreenOnAwake))},i.__preload=function(){this._impl=sQt.getImpl(this),this.syncSource(),this._impl.componentEventList.set(DKt.META_LOADED,this.onMetaLoaded.bind(this)),this._impl.componentEventList.set(DKt.READY_TO_PLAY,this.onReadyToPlay.bind(this)),this._impl.componentEventList.set(DKt.PLAYING,this.onPlaying.bind(this)),this._impl.componentEventList.set(DKt.PAUSED,this.onPaused.bind(this)),this._impl.componentEventList.set(DKt.STOPPED,this.onStopped.bind(this)),this._impl.componentEventList.set(DKt.COMPLETED,this.onCompleted.bind(this)),this._impl.componentEventList.set(DKt.ERROR,this.onError.bind(this)),this._impl.componentEventList.set(DKt.CLICKED,this.onClicked.bind(this)),this._playOnAwake&&this._impl.loaded&&this.play()},i.onEnable=function(){this._impl&&this._impl.enable()},i.onDisable=function(){this._impl&&this._impl.disable()},i.onDestroy=function(){this._impl&&(this._impl.destroy(),this._impl=null)},i.update=function(){this._impl&&this._impl.syncMatrix()},i.onMetaLoaded=function(){fp.emitEvents(this.videoPlayerEvent,this,DKt.META_LOADED),this.node.emit("meta-loaded",this)},i.onReadyToPlay=function(){this._playOnAwake&&!this.isPlaying&&this.play(),fp.emitEvents(this.videoPlayerEvent,this,DKt.READY_TO_PLAY),this.node.emit(DKt.READY_TO_PLAY,this)},i.onPlaying=function(){fp.emitEvents(this.videoPlayerEvent,this,DKt.PLAYING),this.node.emit(DKt.PLAYING,this)},i.onPaused=function(){fp.emitEvents(this.videoPlayerEvent,this,DKt.PAUSED),this.node.emit(DKt.PAUSED,this)},i.onStopped=function(){fp.emitEvents(this.videoPlayerEvent,this,DKt.STOPPED),this.node.emit(DKt.STOPPED,this)},i.onCompleted=function(){fp.emitEvents(this.videoPlayerEvent,this,DKt.COMPLETED),this.node.emit(DKt.COMPLETED,this)},i.onError=function(){fp.emitEvents(this.videoPlayerEvent,this,DKt.ERROR),this.node.emit(DKt.ERROR,this)},i.onClicked=function(){fp.emitEvents(this.videoPlayerEvent,this,DKt.CLICKED),this.node.emit(DKt.CLICKED,this)},i.play=function(){this._impl&&this._impl.play()},i.resume=function(){this._impl&&this._impl.resume()},i.pause=function(){this._impl&&this._impl.pause()},i.stop=function(){this._impl&&this._impl.stop()},n(e,[{key:"resourceType",get:function(){return this._resourceType},set:function(t){this._resourceType!==t&&(this._resourceType=t,this.syncSource())}},{key:"remoteURL",get:function(){return this._remoteURL},set:function(t){this._remoteURL!==t&&(this._remoteURL=t,this.syncSource())}},{key:"clip",get:function(){return this._clip},set:function(t){this._clip!==t&&(this._clip=t,this.syncSource())}},{key:"playOnAwake",get:function(){return this._playOnAwake},set:function(t){this._playOnAwake=t}},{key:"playbackRate",get:function(){return this._playbackRate},set:function(t){this._playbackRate=t,this._impl&&this._impl.syncPlaybackRate(t)}},{key:"volume",get:function(){return this._volume},set:function(t){this._volume=t,this._impl&&this._impl.syncVolume(t)}},{key:"mute",get:function(){return this._mute},set:function(t){this._mute=t,this._impl&&this._impl.syncMute(t)}},{key:"loop",get:function(){return this._loop},set:function(t){this._loop=t,this._impl&&this._impl.syncLoop(t)}},{key:"keepAspectRatio",get:function(){return this._keepAspectRatio},set:function(t){this._keepAspectRatio!==t&&(this._keepAspectRatio=t,this._impl&&this._impl.syncKeepAspectRatio(t))}},{key:"fullScreenOnAwake",get:function(){return this._impl?(this._fullScreenOnAwake=this._impl.fullScreenOnAwake,this._fullScreenOnAwake):this._fullScreenOnAwake},set:function(t){this._fullScreenOnAwake!==t&&(this._fullScreenOnAwake=t,this._impl&&this._impl.syncFullScreenOnAwake(t))}},{key:"stayOnBottom",get:function(){return this._stayOnBottom},set:function(t){this._stayOnBottom!==t&&(this._stayOnBottom=t,this._impl&&this._impl.syncStayOnBottom(t))}},{key:"nativeVideo",get:function(){return this._impl&&this._impl.video||null}},{key:"currentTime",get:function(){return this._impl?this._impl.getCurrentTime():this._cachedCurrentTime},set:function(t){Number.isNaN(t)?z("illegal video time! value:"+t):(t=Fi(t,0,this.duration),this._cachedCurrentTime=t,this._impl&&this._impl.seekTo(t))}},{key:"duration",get:function(){return this._impl?this._impl.getDuration():0}},{key:"state",get:function(){return this._impl?this._impl.state:DKt.NONE}},{key:"isPlaying",get:function(){return!!this._impl&&this._impl.isPlaying}}]),e}(mp)).EventType=DKt,tQt.ResourceType=MKt,zKt=ja((UKt=tQt).prototype,"_resourceType",[lo],(function(){return MKt.LOCAL})),HKt=ja(UKt.prototype,"_remoteURL",[lo],(function(){return""})),WKt=ja(UKt.prototype,"_clip",[NKt,lo],(function(){return null})),XKt=ja(UKt.prototype,"_playOnAwake",[lo],(function(){return!0})),jKt=ja(UKt.prototype,"_volume",[lo],(function(){return 1})),YKt=ja(UKt.prototype,"_mute",[lo],(function(){return!1})),qKt=ja(UKt.prototype,"_playbackRate",[lo],(function(){return 1})),KKt=ja(UKt.prototype,"_loop",[lo],(function(){return!1})),QKt=ja(UKt.prototype,"_fullScreenOnAwake",[lo],(function(){return!1})),ZKt=ja(UKt.prototype,"_stayOnBottom",[lo],(function(){return!1})),JKt=ja(UKt.prototype,"_keepAspectRatio",[lo],(function(){return!0})),m(UKt.prototype,"resourceType",[FKt],Object.getOwnPropertyDescriptor(UKt.prototype,"resourceType"),UKt.prototype),m(UKt.prototype,"clip",[kKt],Object.getOwnPropertyDescriptor(UKt.prototype,"clip"),UKt.prototype),$Kt=ja(UKt.prototype,"videoPlayerEvent",[lo,GKt],(function(){return[]})),VKt=UKt))||VKt)||VKt));S.internal.VideoPlayer=oQt,ut(oQt.prototype,"VideoPlayer.prototype",[{name:"onPasued",newName:"onPaused"}]),function(t){t.NONE="none",t.LOADING="loading",t.LOADED="loaded",t.ERROR="error"}(aQt||(aQt={}));var hQt=function(){function t(t){this._componentEventList=new Map,this._state=aQt.NONE,this._wrapper=void 0,this._webview=null,this._loaded=!1,this._forceUpdate=!1,this._component=null,this._uiTrans=null,this._node=null,this._w=0,this._h=0,this._m00=0,this._m01=0,this._m04=0,this._m05=0,this._m12=0,this._m13=0,this._component=t,this._node=t.node,this._uiTrans=t.node.getComponent(wO),this.reset(),this.createWebView()}var e=t.prototype;return e.reset=function(){this._wrapper=null,this._webview=null,this._loaded=!1,this._w=0,this._h=0,this._m00=0,this._m01=0,this._m04=0,this._m05=0,this._m12=0,this._m13=0,this._state=aQt.NONE,this._forceUpdate=!1},e.dispatchEvent=function(t){var e=this._componentEventList.get(t);if(e){this._state=t;for(var i=arguments.length,n=new Array(i>1?i-1:0),r=1;r<i;r++)n[r-1]=arguments[r];e.call(this,n)}},e.destroy=function(){this.removeWebView(),this._wrapper=null,this._webview=null,this._loaded=!1,this._component=null,this._uiTrans=null,this._forceUpdate=!1,this._componentEventList.clear()},n(t,[{key:"loaded",get:function(){return this._loaded}},{key:"componentEventList",get:function(){return this._componentEventList}},{key:"webview",get:function(){return this._webview}},{key:"state",get:function(){return this._state}},{key:"UICamera",get:function(){return ID.root.batcher2D.getFirstRenderCamera(this._node)}}]),t}();S.internal.WebViewImpl=hQt;var uQt,lQt,cQt,_Qt,fQt,dQt,pQt,mQt,gQt=A.document,vQt=Wn(),yQt=function(t){function e(e){return t.call(this,e)||this}s(e,t);var i=e.prototype;return i._bindDomEvent=function(){var t=this;this.webview&&this.webview.addEventListener("load",(function(e){t._forceUpdate=!0,t.dispatchEvent(aQt.LOADED);var i=e.target,n=i.contentDocument&&i.contentDocument.body;n&&n.innerHTML.includes("404")&&t.dispatchEvent(aQt.ERROR,n.innerHTML)}))},i.loadURL=function(t){this.webview&&(this.webview.src=t,this.dispatchEvent(aQt.LOADING))},i.createWebView=function(){var t=gQt.createElement("div");this._wrapper=t,t.id="webview-wrapper",t.style["-webkit-overflow"]="auto",t.style["-webkit-overflow-scrolling"]="touch",t.style.position="absolute",t.style.bottom="0px",t.style.left="0px",t.style.transformOrigin="0px 100% 0px",t.style["-webkit-transform-origin"]="0px 100% 0px",EB.container.appendChild(t);var e=gQt.createElement("iframe");this._webview=e,e.id="webview",e.style.border="none",e.style.width="100%",e.style.height="100%",t.appendChild(e),this._bindDomEvent()},i.removeWebView=function(){var t=this._wrapper;ze(EB.container,t)&&EB.container.removeChild(t),this.reset()},i.enable=function(){this._wrapper&&(this._wrapper.style.visibility="visible")},i.disable=function(){this._wrapper&&(this._wrapper.style.visibility="hidden")},i.evaluateJS=function(t){if(this.webview){var e=this.webview.contentWindow;if(e)try{e.eval(t)}catch(t){this.dispatchEvent(aQt.ERROR,t),H(t)}}},i.setOnJSCallback=function(){z("The platform does not support")},i.setJavascriptInterfaceScheme=function(){z("The platform does not support")},i.syncMatrix=function(){if(this._wrapper&&this._uiTrans&&this._component&&"hidden"!==this._wrapper.style.visibility){var t=this.UICamera;if(t){this._component.node.getWorldMatrix(vQt),t.update(!0),t.worldMatrixToScreen(vQt,vQt,EB.canvas.width,EB.canvas.height);var e=this._uiTrans.contentSize,i=e.width,n=e.height;if(this._forceUpdate||this._m00!==vQt.m00||this._m01!==vQt.m01||this._m04!==vQt.m04||this._m05!==vQt.m05||this._m12!==vQt.m12||this._m13!==vQt.m13||this._w!==i||this._h!==n){this._m00=vQt.m00,this._m01=vQt.m01,this._m04=vQt.m04,this._m05=vQt.m05,this._m12=vQt.m12,this._m13=vQt.m13,this._w=i,this._h=n;var r=ga.devicePixelRatio,s=1/r,a=1/r,o=EB.container,h=vQt.m00*s,u=vQt.m01,l=vQt.m04,c=vQt.m05*a;this._wrapper.style.width=i+"px",this._wrapper.style.height=n+"px";var _=this._w*s,f=this._h*a,d=_*vQt.m00*this._uiTrans.anchorX,p=f*vQt.m05*this._uiTrans.anchorY,m=o&&o.style.paddingLeft?parseInt(o.style.paddingLeft):0,g=o&&o.style.paddingBottom?parseInt(o.style.paddingBottom):0,v="matrix("+h+","+-u+","+-l+","+c+","+(vQt.m12*s-d+m)+","+-(vQt.m13*a-p+g)+")";this._wrapper.style.transform=v,this._wrapper.style["-webkit-transform"]=v,this._forceUpdate=!1}}}},e}(hQt),SQt=function(){function t(){}return t.getImpl=function(t){return new yQt(t)},t}();S.internal.WebViewImplManager=SQt;var TQt=t("h8",(uQt=eo("cc.WebView"),lQt=io(wO),cQt=Lo([fp]),uQt(_Qt=lQt(((mQt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._url=dQt&&dQt(),e._impl=null,e.webviewEvents=pQt&&pQt(),e}s(e,t);var i=e.prototype;return i.setJavascriptInterfaceScheme=function(t){this._impl&&this._impl.setJavascriptInterfaceScheme(t)},i.setOnJSCallback=function(t){this._impl&&this._impl.setOnJSCallback(t)},i.evaluateJS=function(t){this._impl&&this._impl.evaluateJS(t)},i.__preload=function(){this._impl=SQt.getImpl(this),this._impl.componentEventList.set(aQt.LOADING,this.onLoading.bind(this)),this._impl.componentEventList.set(aQt.LOADED,this.onLoaded.bind(this)),this._impl.componentEventList.set(aQt.ERROR,this.onError.bind(this)),this._impl.loadURL(this._url)},i.onLoading=function(){fp.emitEvents(this.webviewEvents,this,aQt.LOADING),this.node.emit(aQt.LOADING,this)},i.onLoaded=function(){fp.emitEvents(this.webviewEvents,this,aQt.LOADED),this.node.emit(aQt.LOADED,this)},i.onError=function(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];fp.emitEvents(this.webviewEvents,this,aQt.ERROR,e),this.node.emit(aQt.ERROR,this,e)},i.onEnable=function(){this._impl&&this._impl.enable()},i.onDisable=function(){this._impl&&this._impl.disable()},i.onDestroy=function(){this._impl&&(this._impl.destroy(),this._impl=null)},i.update=function(){this._impl&&this._impl.syncMatrix()},n(e,[{key:"url",get:function(){return this._url},set:function(t){this._url=t,this._impl&&this._impl.loadURL(t)}},{key:"nativeWebView",get:function(){return this._impl&&this._impl.webview||null}},{key:"state",get:function(){return this._impl?this._impl.state:aQt.NONE}}]),e}(mp)).EventType=aQt,dQt=ja((fQt=mQt).prototype,"_url",[lo],(function(){return"https://cocos.com"})),pQt=ja(fQt.prototype,"webviewEvents",[lo,cQt],(function(){return[]})),_Qt=fQt))||_Qt)||_Qt));S.internal.WebView=TQt;var AQt,bQt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuDescriptorSet=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._layout=t.layout;var e=t.layout.gpuDescriptorSetLayout,i=e.bindings,n=e.descriptorIndices,r=e.descriptorCount;this._buffers=Array(r).fill(null),this._textures=Array(r).fill(null),this._samplers=Array(r).fill(null);var s=[];this._gpuDescriptorSet={gpuDescriptors:s,descriptorIndices:n};for(var a=0;a<i.length;++a)for(var o=i[a],h=0;h<o.count;h++)s.push({type:o.descriptorType,gpuBuffer:null,gpuTextureView:null,gpuSampler:null})},i.destroy=function(){this._layout=null,this._gpuDescriptorSet=null},i.update=function(){if(this._isDirty&&this._gpuDescriptorSet){for(var t=this._gpuDescriptorSet.gpuDescriptors,e=0;e<t.length;++e)t[e].type&Y_?this._buffers[e]&&(t[e].gpuBuffer=this._buffers[e].gpuBuffer):t[e].type&q_&&(this._textures[e]&&(t[e].gpuTextureView=this._textures[e].gpuTextureView),this._samplers[e]&&(t[e].gpuSampler=this._samplers[e].gpuSampler));this._isDirty=!1}},n(e,[{key:"gpuDescriptorSet",get:function(){return this._gpuDescriptorSet}}]),e}(ff);!function(t){t[t.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]="COMPRESSED_RGB_S3TC_DXT1_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT1_EXT=33777]="COMPRESSED_RGBA_S3TC_DXT1_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT3_EXT=33778]="COMPRESSED_RGBA_S3TC_DXT3_EXT",t[t.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]="COMPRESSED_RGBA_S3TC_DXT5_EXT",t[t.COMPRESSED_SRGB_S3TC_DXT1_EXT=35916]="COMPRESSED_SRGB_S3TC_DXT1_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT=35917]="COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT=35918]="COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT",t[t.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT=35919]="COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT",t[t.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]="COMPRESSED_RGB_PVRTC_4BPPV1_IMG",t[t.COMPRESSED_RGB_PVRTC_2BPPV1_IMG=35841]="COMPRESSED_RGB_PVRTC_2BPPV1_IMG",t[t.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]="COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",t[t.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG=35843]="COMPRESSED_RGBA_PVRTC_2BPPV1_IMG",t[t.COMPRESSED_RGB_ETC1_WEBGL=36196]="COMPRESSED_RGB_ETC1_WEBGL",t[t.COMPRESSED_R11_EAC=37488]="COMPRESSED_R11_EAC",t[t.COMPRESSED_SIGNED_R11_EAC=37489]="COMPRESSED_SIGNED_R11_EAC",t[t.COMPRESSED_RG11_EAC=37490]="COMPRESSED_RG11_EAC",t[t.COMPRESSED_SIGNED_RG11_EAC=37491]="COMPRESSED_SIGNED_RG11_EAC",t[t.COMPRESSED_RGB8_ETC2=37492]="COMPRESSED_RGB8_ETC2",t[t.COMPRESSED_SRGB8_ETC2=37493]="COMPRESSED_SRGB8_ETC2",t[t.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2=37494]="COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2",t[t.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2=37495]="COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2",t[t.COMPRESSED_RGBA8_ETC2_EAC=37496]="COMPRESSED_RGBA8_ETC2_EAC",t[t.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC=37497]="COMPRESSED_SRGB8_ALPHA8_ETC2_EAC",t[t.COMPRESSED_RGBA_ASTC_4x4_KHR=37808]="COMPRESSED_RGBA_ASTC_4x4_KHR",t[t.COMPRESSED_RGBA_ASTC_5x4_KHR=37809]="COMPRESSED_RGBA_ASTC_5x4_KHR",t[t.COMPRESSED_RGBA_ASTC_5x5_KHR=37810]="COMPRESSED_RGBA_ASTC_5x5_KHR",t[t.COMPRESSED_RGBA_ASTC_6x5_KHR=37811]="COMPRESSED_RGBA_ASTC_6x5_KHR",t[t.COMPRESSED_RGBA_ASTC_6x6_KHR=37812]="COMPRESSED_RGBA_ASTC_6x6_KHR",t[t.COMPRESSED_RGBA_ASTC_8x5_KHR=37813]="COMPRESSED_RGBA_ASTC_8x5_KHR",t[t.COMPRESSED_RGBA_ASTC_8x6_KHR=37814]="COMPRESSED_RGBA_ASTC_8x6_KHR",t[t.COMPRESSED_RGBA_ASTC_8x8_KHR=37815]="COMPRESSED_RGBA_ASTC_8x8_KHR",t[t.COMPRESSED_RGBA_ASTC_10x5_KHR=37816]="COMPRESSED_RGBA_ASTC_10x5_KHR",t[t.COMPRESSED_RGBA_ASTC_10x6_KHR=37817]="COMPRESSED_RGBA_ASTC_10x6_KHR",t[t.COMPRESSED_RGBA_ASTC_10x8_KHR=37818]="COMPRESSED_RGBA_ASTC_10x8_KHR",t[t.COMPRESSED_RGBA_ASTC_10x10_KHR=37819]="COMPRESSED_RGBA_ASTC_10x10_KHR",t[t.COMPRESSED_RGBA_ASTC_12x10_KHR=37820]="COMPRESSED_RGBA_ASTC_12x10_KHR",t[t.COMPRESSED_RGBA_ASTC_12x12_KHR=37821]="COMPRESSED_RGBA_ASTC_12x12_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR=37840]="COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR=37841]="COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR=37842]="COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR=37843]="COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR=37844]="COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR=37845]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR=37846]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR=37847]="COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR=37848]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR=37849]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR=37850]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR=37851]="COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR=37852]="COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR",t[t.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR=37853]="COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR"}(AQt||(AQt={}));var EQt=function(){function t(){}return t.setInstance=function(e){t._instance=e},n(t,null,[{key:"instance",get:function(){return t._instance}}]),t}();EQt._instance=null;var CQt=[10497,33648,33071,33071],xQt=new Float32Array(4);function wQt(t,e){switch(t){case ec.R8:return e.UNSIGNED_BYTE;case ec.R8SN:return e.BYTE;case ec.R8UI:return e.UNSIGNED_BYTE;case ec.R8I:return e.BYTE;case ec.R16F:return e.HALF_FLOAT;case ec.R16UI:return e.UNSIGNED_SHORT;case ec.R16I:return e.SHORT;case ec.R32F:return e.FLOAT;case ec.R32UI:return e.UNSIGNED_INT;case ec.R32I:return e.INT;case ec.RG8:return e.UNSIGNED_BYTE;case ec.RG8SN:return e.BYTE;case ec.RG8UI:return e.UNSIGNED_BYTE;case ec.RG8I:return e.BYTE;case ec.RG16F:return e.HALF_FLOAT;case ec.RG16UI:return e.UNSIGNED_SHORT;case ec.RG16I:return e.SHORT;case ec.RG32F:return e.FLOAT;case ec.RG32UI:return e.UNSIGNED_INT;case ec.RG32I:return e.INT;case ec.RGB8:case ec.SRGB8:return e.UNSIGNED_BYTE;case ec.RGB8SN:return e.BYTE;case ec.RGB8UI:return e.UNSIGNED_BYTE;case ec.RGB8I:return e.BYTE;case ec.RGB16F:return e.HALF_FLOAT;case ec.RGB16UI:return e.UNSIGNED_SHORT;case ec.RGB16I:return e.SHORT;case ec.RGB32F:return e.FLOAT;case ec.RGB32UI:return e.UNSIGNED_INT;case ec.RGB32I:return e.INT;case ec.BGRA8:case ec.RGBA8:case ec.SRGB8_A8:return e.UNSIGNED_BYTE;case ec.RGBA8SN:return e.BYTE;case ec.RGBA8UI:return e.UNSIGNED_BYTE;case ec.RGBA8I:return e.BYTE;case ec.RGBA16F:return e.HALF_FLOAT;case ec.RGBA16UI:return e.UNSIGNED_SHORT;case ec.RGBA16I:return e.SHORT;case ec.RGBA32F:return e.FLOAT;case ec.RGBA32UI:return e.UNSIGNED_INT;case ec.RGBA32I:return e.INT;case ec.R5G6B5:return e.UNSIGNED_SHORT_5_6_5;case ec.R11G11B10F:return e.UNSIGNED_INT_10F_11F_11F_REV;case ec.RGB5A1:return e.UNSIGNED_SHORT_5_5_5_1;case ec.RGBA4:return e.UNSIGNED_SHORT_4_4_4_4;case ec.RGB10A2:case ec.RGB10A2UI:return e.UNSIGNED_INT_2_10_10_10_REV;case ec.RGB9E5:case ec.DEPTH:return e.FLOAT;case ec.DEPTH_STENCIL:return e.UNSIGNED_INT_24_8;case ec.BC1:case ec.BC1_SRGB:case ec.BC2:case ec.BC2_SRGB:case ec.BC3:case ec.BC3_SRGB:case ec.BC4:return e.UNSIGNED_BYTE;case ec.BC4_SNORM:return e.BYTE;case ec.BC5:return e.UNSIGNED_BYTE;case ec.BC5_SNORM:return e.BYTE;case ec.BC6H_SF16:case ec.BC6H_UF16:return e.FLOAT;case ec.BC7:case ec.BC7_SRGB:case ec.ETC_RGB8:case ec.ETC2_RGB8:case ec.ETC2_SRGB8:case ec.ETC2_RGB8_A1:case ec.ETC2_SRGB8_A1:case ec.EAC_R11:return e.UNSIGNED_BYTE;case ec.EAC_R11SN:return e.BYTE;case ec.EAC_RG11:return e.UNSIGNED_BYTE;case ec.EAC_RG11SN:return e.BYTE;case ec.PVRTC_RGB2:case ec.PVRTC_RGBA2:case ec.PVRTC_RGB4:case ec.PVRTC_RGBA4:case ec.PVRTC2_2BPP:case ec.PVRTC2_4BPP:return e.UNSIGNED_BYTE;case ec.ASTC_RGBA_4X4:case ec.ASTC_RGBA_5X4:case ec.ASTC_RGBA_5X5:case ec.ASTC_RGBA_6X5:case ec.ASTC_RGBA_6X6:case ec.ASTC_RGBA_8X5:case ec.ASTC_RGBA_8X6:case ec.ASTC_RGBA_8X8:case ec.ASTC_RGBA_10X5:case ec.ASTC_RGBA_10X6:case ec.ASTC_RGBA_10X8:case ec.ASTC_RGBA_10X10:case ec.ASTC_RGBA_12X10:case ec.ASTC_RGBA_12X12:case ec.ASTC_SRGBA_4X4:case ec.ASTC_SRGBA_5X4:case ec.ASTC_SRGBA_5X5:case ec.ASTC_SRGBA_6X5:case ec.ASTC_SRGBA_6X6:case ec.ASTC_SRGBA_8X5:case ec.ASTC_SRGBA_8X6:case ec.ASTC_SRGBA_8X8:case ec.ASTC_SRGBA_10X5:case ec.ASTC_SRGBA_10X6:case ec.ASTC_SRGBA_10X8:case ec.ASTC_SRGBA_10X10:case ec.ASTC_SRGBA_12X10:case ec.ASTC_SRGBA_12X12:default:return e.UNSIGNED_BYTE}}function RQt(t,e){switch(t){case nc.BOOL:return e.BOOL;case nc.BOOL2:return e.BOOL_VEC2;case nc.BOOL3:return e.BOOL_VEC3;case nc.BOOL4:return e.BOOL_VEC4;case nc.INT:return e.INT;case nc.INT2:return e.INT_VEC2;case nc.INT3:return e.INT_VEC3;case nc.INT4:return e.INT_VEC4;case nc.UINT:return e.UNSIGNED_INT;case nc.FLOAT:return e.FLOAT;case nc.FLOAT2:return e.FLOAT_VEC2;case nc.FLOAT3:return e.FLOAT_VEC3;case nc.FLOAT4:return e.FLOAT_VEC4;case nc.MAT2:return e.FLOAT_MAT2;case nc.MAT2X3:return e.FLOAT_MAT2x3;case nc.MAT2X4:return e.FLOAT_MAT2x4;case nc.MAT3X2:return e.FLOAT_MAT3x2;case nc.MAT3:return e.FLOAT_MAT3;case nc.MAT3X4:return e.FLOAT_MAT3x4;case nc.MAT4X2:return e.FLOAT_MAT4x2;case nc.MAT4X3:return e.FLOAT_MAT4x3;case nc.MAT4:return e.FLOAT_MAT4;case nc.SAMPLER2D:return e.SAMPLER_2D;case nc.SAMPLER2D_ARRAY:return e.SAMPLER_2D_ARRAY;case nc.SAMPLER3D:return e.SAMPLER_3D;case nc.SAMPLER_CUBE:return e.SAMPLER_CUBE;default:return it(16311),nc.UNKNOWN}}function IQt(t,e){switch(t){case e.BOOL:return nc.BOOL;case e.BOOL_VEC2:return nc.BOOL2;case e.BOOL_VEC3:return nc.BOOL3;case e.BOOL_VEC4:return nc.BOOL4;case e.INT:return nc.INT;case e.INT_VEC2:return nc.INT2;case e.INT_VEC3:return nc.INT3;case e.INT_VEC4:return nc.INT4;case e.UNSIGNED_INT:return nc.UINT;case e.UNSIGNED_INT_VEC2:return nc.UINT2;case e.UNSIGNED_INT_VEC3:return nc.UINT3;case e.UNSIGNED_INT_VEC4:return nc.UINT4;case e.FLOAT:return nc.FLOAT;case e.FLOAT_VEC2:return nc.FLOAT2;case e.FLOAT_VEC3:return nc.FLOAT3;case e.FLOAT_VEC4:return nc.FLOAT4;case e.FLOAT_MAT2:return nc.MAT2;case e.FLOAT_MAT2x3:return nc.MAT2X3;case e.FLOAT_MAT2x4:return nc.MAT2X4;case e.FLOAT_MAT3x2:return nc.MAT3X2;case e.FLOAT_MAT3:return nc.MAT3;case e.FLOAT_MAT3x4:return nc.MAT3X4;case e.FLOAT_MAT4x2:return nc.MAT4X2;case e.FLOAT_MAT4x3:return nc.MAT4X3;case e.FLOAT_MAT4:return nc.MAT4;case e.SAMPLER_2D:return nc.SAMPLER2D;case e.SAMPLER_2D_ARRAY:return nc.SAMPLER2D_ARRAY;case e.SAMPLER_3D:return nc.SAMPLER3D;case e.SAMPLER_CUBE:return nc.SAMPLER_CUBE;default:return it(16313),nc.UNKNOWN}}function DQt(t,e){switch(t){case e.BOOL:return 4;case e.BOOL_VEC2:return 8;case e.BOOL_VEC3:return 12;case e.BOOL_VEC4:return 16;case e.INT:return 4;case e.INT_VEC2:return 8;case e.INT_VEC3:return 12;case e.INT_VEC4:return 16;case e.UNSIGNED_INT:return 4;case e.UNSIGNED_INT_VEC2:return 8;case e.UNSIGNED_INT_VEC3:return 12;case e.UNSIGNED_INT_VEC4:return 16;case e.FLOAT:return 4;case e.FLOAT_VEC2:return 8;case e.FLOAT_VEC3:return 12;case e.FLOAT_VEC4:case e.FLOAT_MAT2:return 16;case e.FLOAT_MAT2x3:return 24;case e.FLOAT_MAT2x4:return 32;case e.FLOAT_MAT3x2:return 24;case e.FLOAT_MAT3:return 36;case e.FLOAT_MAT3x4:return 48;case e.FLOAT_MAT4x2:return 32;case e.FLOAT_MAT4x3:return 48;case e.FLOAT_MAT4:return 64;case e.SAMPLER_2D:case e.SAMPLER_2D_ARRAY:case e.SAMPLER_2D_ARRAY_SHADOW:case e.SAMPLER_3D:case e.SAMPLER_CUBE:case e.INT_SAMPLER_2D:case e.INT_SAMPLER_2D_ARRAY:case e.INT_SAMPLER_3D:case e.INT_SAMPLER_CUBE:case e.UNSIGNED_INT_SAMPLER_2D:case e.UNSIGNED_INT_SAMPLER_2D_ARRAY:case e.UNSIGNED_INT_SAMPLER_3D:case e.UNSIGNED_INT_SAMPLER_CUBE:return 4;default:return it(16314),0}}function BQt(t,e){switch(t){case e.FLOAT_MAT2:case e.FLOAT_MAT2x3:case e.FLOAT_MAT2x4:return 2;case e.FLOAT_MAT3x2:case e.FLOAT_MAT3:case e.FLOAT_MAT3x4:return 3;case e.FLOAT_MAT4x2:case e.FLOAT_MAT4x3:case e.FLOAT_MAT4:return 4;default:return 1}}var MQt,PQt=[512,513,514,515,516,517,518,519],OQt=[0,7680,7681,7682,7683,5386,34055,34056],LQt=[32774,32778,32779,32775,32776],NQt=[0,1,770,772,771,773,768,774,769,775,776,32769,32770,32771,32772];!function(t){t[t.BEGIN_RENDER_PASS=0]="BEGIN_RENDER_PASS",t[t.END_RENDER_PASS=1]="END_RENDER_PASS",t[t.BIND_STATES=2]="BIND_STATES",t[t.DRAW=3]="DRAW",t[t.UPDATE_BUFFER=4]="UPDATE_BUFFER",t[t.COPY_BUFFER_TO_TEXTURE=5]="COPY_BUFFER_TO_TEXTURE",t[t.BLIT_TEXTURE=6]="BLIT_TEXTURE",t[t.COUNT=7]="COUNT"}(MQt||(MQt={}));var FQt=function(t){this.cmdType=void 0,this.refCount=0,this.cmdType=t},kQt=function(t){function e(){var e;return(e=t.call(this,MQt.BEGIN_RENDER_PASS)||this).gpuRenderPass=null,e.gpuFramebuffer=null,e.renderArea=new jc,e.clearColors=[],e.clearDepth=1,e.clearStencil=0,e}return s(e,t),e.prototype.clear=function(){this.gpuFramebuffer=null,this.clearColors.length=0},e}(FQt),GQt=function(t){function e(){var e;return(e=t.call(this,MQt.BIND_STATES)||this).gpuPipelineState=null,e.gpuInputAssembler=null,e.gpuDescriptorSets=[],e.dynamicOffsets=[],e.dynamicStates=new W_,e}return s(e,t),e.prototype.clear=function(){this.gpuPipelineState=null,this.gpuInputAssembler=null,this.gpuDescriptorSets.length=0,this.dynamicOffsets.length=0},e}(FQt),VQt=function(t){function e(){var e;return(e=t.call(this,MQt.DRAW)||this).drawInfo=new a_,e}return s(e,t),e.prototype.clear=function(){},e}(FQt),UQt=function(t){function e(){var e;return(e=t.call(this,MQt.UPDATE_BUFFER)||this).gpuBuffer=null,e.buffer=null,e.offset=0,e.size=0,e}return s(e,t),e.prototype.clear=function(){this.gpuBuffer=null,this.buffer=null},e}(FQt),zQt=function(t){function e(){var e;return(e=t.call(this,MQt.COPY_BUFFER_TO_TEXTURE)||this).gpuTexture=null,e.buffers=[],e.regions=[],e}return s(e,t),e.prototype.clear=function(){this.gpuTexture=null,this.buffers.length=0,this.regions.length=0},e}(FQt),HQt=function(t){function e(){var e;return(e=t.call(this,MQt.BLIT_TEXTURE)||this).srcTexture=null,e.dstTexture=null,e.regions=[],e.filter=dc.LINEAR,e}return s(e,t),e.prototype.clear=function(){this.srcTexture=null,this.dstTexture=null,this.regions.length=0},e}(FQt),WQt=function(){function t(){this.cmds=new Is(1),this.beginRenderPassCmds=new Is(1),this.bindStatesCmds=new Is(1),this.drawCmds=new Is(1),this.updateBufferCmds=new Is(1),this.copyBufferToTextureCmds=new Is(1),this.blitTextureCmds=new Is(1)}return t.prototype.clearCmds=function(t){this.beginRenderPassCmds.length&&(t.beginRenderPassCmdPool.freeCmds(this.beginRenderPassCmds),this.beginRenderPassCmds.clear()),this.bindStatesCmds.length&&(t.bindStatesCmdPool.freeCmds(this.bindStatesCmds),this.bindStatesCmds.clear()),this.drawCmds.length&&(t.drawCmdPool.freeCmds(this.drawCmds),this.drawCmds.clear()),this.updateBufferCmds.length&&(t.updateBufferCmdPool.freeCmds(this.updateBufferCmds),this.updateBufferCmds.clear()),this.copyBufferToTextureCmds.length&&(t.copyBufferToTextureCmdPool.freeCmds(this.copyBufferToTextureCmds),this.copyBufferToTextureCmds.clear()),this.blitTextureCmds.length&&(t.blitTextureCmdPool.freeCmds(this.blitTextureCmds),this.blitTextureCmds.clear()),this.cmds.clear()},t}();function XQt(t,e,i,n,r){if(e.usage&rc.INDIRECT){e.indirects.clearDraws();for(var s=i.drawInfos,a=0;a<s.length;++a)e.indirects.setDrawInfo(n+a,s[a])}else{var o=i,h=t.gl,u=t.stateCache;switch(e.glTarget){case h.ARRAY_BUFFER:t.extensions.useVAO&&u.glVAO&&(h.bindVertexArray(null),u.glVAO=null),qQt.gpuInputAssembler=null,u.glArrayBuffer!==e.glBuffer&&(h.bindBuffer(h.ARRAY_BUFFER,e.glBuffer),u.glArrayBuffer=e.glBuffer),Zs.os===Ys.IOS&&e.memUsage&oc.HOST&&0===n&&r===o.byteLength?h.bufferData(e.glTarget,o,h.DYNAMIC_DRAW):r===o.byteLength?h.bufferSubData(e.glTarget,n,o):h.bufferSubData(e.glTarget,n,o.slice(0,r));break;case h.ELEMENT_ARRAY_BUFFER:t.extensions.useVAO&&u.glVAO&&(h.bindVertexArray(null),u.glVAO=null),qQt.gpuInputAssembler=null,u.glElementArrayBuffer!==e.glBuffer&&(h.bindBuffer(h.ELEMENT_ARRAY_BUFFER,e.glBuffer),u.glElementArrayBuffer=e.glBuffer),Zs.os===Ys.IOS&&e.memUsage&oc.HOST&&0===n&&r===o.byteLength?h.bufferData(e.glTarget,o,h.DYNAMIC_DRAW):r===o.byteLength?h.bufferSubData(e.glTarget,n,o):h.bufferSubData(e.glTarget,n,o.slice(0,r));break;case h.UNIFORM_BUFFER:u.glUniformBuffer!==e.glBuffer&&(h.bindBuffer(h.UNIFORM_BUFFER,e.glBuffer),u.glUniformBuffer=e.glBuffer),Zs.os===Ys.IOS&&e.memUsage&oc.HOST&&0===n&&r===o.byteLength?h.bufferData(e.glTarget,o,h.DYNAMIC_DRAW):r===o.byteLength?h.bufferSubData(e.glTarget,n,o):h.bufferSubData(e.glTarget,n,new Float32Array(o,0,r/4));break;default:it(16316)}}}function jQt(t,e){var i=t.gl;e.glInternalFmt=function(t,e){switch(t){case ec.A8:return e.ALPHA;case ec.L8:return e.LUMINANCE;case ec.LA8:return e.LUMINANCE_ALPHA;case ec.R8:return e.R8;case ec.R8SN:return e.R8_SNORM;case ec.R8UI:return e.R8UI;case ec.R8I:return e.R8I;case ec.RG8:return e.RG8;case ec.RG8SN:return e.RG8_SNORM;case ec.RG8UI:return e.RG8UI;case ec.RG8I:return e.RG8I;case ec.RGB8:return e.RGB8;case ec.RGB8SN:return e.RGB8_SNORM;case ec.RGB8UI:return e.RGB8UI;case ec.RGB8I:return e.RGB8I;case ec.BGRA8:case ec.RGBA8:return e.RGBA8;case ec.RGBA8SN:return e.RGBA8_SNORM;case ec.RGBA8UI:return e.RGBA8UI;case ec.RGBA8I:return e.RGBA8I;case ec.R16I:return e.R16I;case ec.R16UI:return e.R16UI;case ec.R16F:return e.R16F;case ec.RG16I:return e.RG16I;case ec.RG16UI:return e.RG16UI;case ec.RG16F:return e.RG16F;case ec.RGB16I:return e.RGB16I;case ec.RGB16UI:return e.RGB16UI;case ec.RGB16F:return e.RGB16F;case ec.RGBA16I:return e.RGBA16I;case ec.RGBA16UI:return e.RGBA16UI;case ec.RGBA16F:return e.RGBA16F;case ec.R32I:return e.R32I;case ec.R32UI:return e.R32UI;case ec.R32F:return e.R32F;case ec.RG32I:return e.RG32I;case ec.RG32UI:return e.RG32UI;case ec.RG32F:return e.RG32F;case ec.RGB32I:return e.RGB32I;case ec.RGB32UI:return e.RGB32UI;case ec.RGB32F:return e.RGB32F;case ec.RGBA32I:return e.RGBA32I;case ec.RGBA32UI:return e.RGBA32UI;case ec.RGBA32F:return e.RGBA32F;case ec.R5G6B5:return e.RGB565;case ec.RGB5A1:return e.RGB5_A1;case ec.RGBA4:return e.RGBA4;case ec.SRGB8:return e.SRGB8;case ec.SRGB8_A8:return e.SRGB8_ALPHA8;case ec.RGB10A2:return e.RGB10_A2;case ec.RGB10A2UI:return e.RGB10_A2UI;case ec.R11G11B10F:return e.R11F_G11F_B10F;case ec.DEPTH:return e.DEPTH_COMPONENT32F;case ec.DEPTH_STENCIL:return e.DEPTH24_STENCIL8;case ec.BC1:return AQt.COMPRESSED_RGB_S3TC_DXT1_EXT;case ec.BC1_ALPHA:return AQt.COMPRESSED_RGBA_S3TC_DXT1_EXT;case ec.BC1_SRGB:return AQt.COMPRESSED_SRGB_S3TC_DXT1_EXT;case ec.BC1_SRGB_ALPHA:return AQt.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;case ec.BC2:return AQt.COMPRESSED_RGBA_S3TC_DXT3_EXT;case ec.BC2_SRGB:return AQt.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;case ec.BC3:return AQt.COMPRESSED_RGBA_S3TC_DXT5_EXT;case ec.BC3_SRGB:return AQt.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT;case ec.ETC_RGB8:return AQt.COMPRESSED_RGB_ETC1_WEBGL;case ec.ETC2_RGB8:return AQt.COMPRESSED_RGB8_ETC2;case ec.ETC2_SRGB8:return AQt.COMPRESSED_SRGB8_ETC2;case ec.ETC2_RGB8_A1:return AQt.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2;case ec.ETC2_SRGB8_A1:return AQt.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2;case ec.ETC2_RGBA8:return AQt.COMPRESSED_RGBA8_ETC2_EAC;case ec.ETC2_SRGB8_A8:return AQt.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC;case ec.EAC_R11:return AQt.COMPRESSED_R11_EAC;case ec.EAC_R11SN:return AQt.COMPRESSED_SIGNED_R11_EAC;case ec.EAC_RG11:return AQt.COMPRESSED_RG11_EAC;case ec.EAC_RG11SN:return AQt.COMPRESSED_SIGNED_RG11_EAC;case ec.PVRTC_RGB2:return AQt.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;case ec.PVRTC_RGBA2:return AQt.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG;case ec.PVRTC_RGB4:return AQt.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;case ec.PVRTC_RGBA4:return AQt.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;case ec.ASTC_RGBA_4X4:return AQt.COMPRESSED_RGBA_ASTC_4x4_KHR;case ec.ASTC_RGBA_5X4:return AQt.COMPRESSED_RGBA_ASTC_5x4_KHR;case ec.ASTC_RGBA_5X5:return AQt.COMPRESSED_RGBA_ASTC_5x5_KHR;case ec.ASTC_RGBA_6X5:return AQt.COMPRESSED_RGBA_ASTC_6x5_KHR;case ec.ASTC_RGBA_6X6:return AQt.COMPRESSED_RGBA_ASTC_6x6_KHR;case ec.ASTC_RGBA_8X5:return AQt.COMPRESSED_RGBA_ASTC_8x5_KHR;case ec.ASTC_RGBA_8X6:return AQt.COMPRESSED_RGBA_ASTC_8x6_KHR;case ec.ASTC_RGBA_8X8:return AQt.COMPRESSED_RGBA_ASTC_8x8_KHR;case ec.ASTC_RGBA_10X5:return AQt.COMPRESSED_RGBA_ASTC_10x5_KHR;case ec.ASTC_RGBA_10X6:return AQt.COMPRESSED_RGBA_ASTC_10x6_KHR;case ec.ASTC_RGBA_10X8:return AQt.COMPRESSED_RGBA_ASTC_10x8_KHR;case ec.ASTC_RGBA_10X10:return AQt.COMPRESSED_RGBA_ASTC_10x10_KHR;case ec.ASTC_RGBA_12X10:return AQt.COMPRESSED_RGBA_ASTC_12x10_KHR;case ec.ASTC_RGBA_12X12:return AQt.COMPRESSED_RGBA_ASTC_12x12_KHR;case ec.ASTC_SRGBA_4X4:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR;case ec.ASTC_SRGBA_5X4:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR;case ec.ASTC_SRGBA_5X5:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR;case ec.ASTC_SRGBA_6X5:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR;case ec.ASTC_SRGBA_6X6:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR;case ec.ASTC_SRGBA_8X5:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR;case ec.ASTC_SRGBA_8X6:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR;case ec.ASTC_SRGBA_8X8:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR;case ec.ASTC_SRGBA_10X5:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR;case ec.ASTC_SRGBA_10X6:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR;case ec.ASTC_SRGBA_10X8:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR;case ec.ASTC_SRGBA_10X10:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR;case ec.ASTC_SRGBA_12X10:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR;case ec.ASTC_SRGBA_12X12:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR;default:return it(16309),e.RGBA}}(e.format,i),e.glFormat=function(t,e){switch(t){case ec.A8:return e.ALPHA;case ec.L8:return e.LUMINANCE;case ec.LA8:return e.LUMINANCE_ALPHA;case ec.R8:case ec.R8SN:return e.RED;case ec.R8UI:case ec.R8I:return e.RED;case ec.RG8:case ec.RG8SN:case ec.RG8UI:case ec.RG8I:return e.RG;case ec.RGB8:case ec.RGB8SN:case ec.RGB8UI:case ec.RGB8I:return e.RGB;case ec.BGRA8:case ec.RGBA8:case ec.RGBA8SN:case ec.RGBA8UI:case ec.RGBA8I:return e.RGBA;case ec.R16UI:case ec.R16I:case ec.R16F:return e.RED;case ec.RG16UI:case ec.RG16I:case ec.RG16F:return e.RG;case ec.RGB16UI:case ec.RGB16I:case ec.RGB16F:return e.RGB;case ec.RGBA16UI:case ec.RGBA16I:case ec.RGBA16F:return e.RGBA;case ec.R32UI:case ec.R32I:case ec.R32F:return e.RED;case ec.RG32UI:case ec.RG32I:case ec.RG32F:return e.RG;case ec.RGB32UI:case ec.RGB32I:case ec.RGB32F:return e.RGB;case ec.RGBA32UI:case ec.RGBA32I:case ec.RGBA32F:case ec.RGB10A2:return e.RGBA;case ec.R11G11B10F:case ec.R5G6B5:return e.RGB;case ec.RGB5A1:case ec.RGBA4:return e.RGBA;case ec.SRGB8:return e.RGB;case ec.SRGB8_A8:return e.RGBA;case ec.DEPTH:return e.DEPTH_COMPONENT;case ec.DEPTH_STENCIL:return e.DEPTH_STENCIL;case ec.BC1:return AQt.COMPRESSED_RGB_S3TC_DXT1_EXT;case ec.BC1_ALPHA:return AQt.COMPRESSED_RGBA_S3TC_DXT1_EXT;case ec.BC1_SRGB:return AQt.COMPRESSED_SRGB_S3TC_DXT1_EXT;case ec.BC1_SRGB_ALPHA:return AQt.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT;case ec.BC2:return AQt.COMPRESSED_RGBA_S3TC_DXT3_EXT;case ec.BC2_SRGB:return AQt.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT;case ec.BC3:return AQt.COMPRESSED_RGBA_S3TC_DXT5_EXT;case ec.BC3_SRGB:return AQt.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT;case ec.ETC_RGB8:return AQt.COMPRESSED_RGB_ETC1_WEBGL;case ec.ETC2_RGB8:return AQt.COMPRESSED_RGB8_ETC2;case ec.ETC2_SRGB8:return AQt.COMPRESSED_SRGB8_ETC2;case ec.ETC2_RGB8_A1:return AQt.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2;case ec.ETC2_SRGB8_A1:return AQt.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2;case ec.ETC2_RGBA8:return AQt.COMPRESSED_RGBA8_ETC2_EAC;case ec.ETC2_SRGB8_A8:return AQt.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC;case ec.EAC_R11:return AQt.COMPRESSED_R11_EAC;case ec.EAC_R11SN:return AQt.COMPRESSED_SIGNED_R11_EAC;case ec.EAC_RG11:return AQt.COMPRESSED_RG11_EAC;case ec.EAC_RG11SN:return AQt.COMPRESSED_SIGNED_RG11_EAC;case ec.PVRTC_RGB2:return AQt.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;case ec.PVRTC_RGBA2:return AQt.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG;case ec.PVRTC_RGB4:return AQt.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;case ec.PVRTC_RGBA4:return AQt.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;case ec.ASTC_RGBA_4X4:return AQt.COMPRESSED_RGBA_ASTC_4x4_KHR;case ec.ASTC_RGBA_5X4:return AQt.COMPRESSED_RGBA_ASTC_5x4_KHR;case ec.ASTC_RGBA_5X5:return AQt.COMPRESSED_RGBA_ASTC_5x5_KHR;case ec.ASTC_RGBA_6X5:return AQt.COMPRESSED_RGBA_ASTC_6x5_KHR;case ec.ASTC_RGBA_6X6:return AQt.COMPRESSED_RGBA_ASTC_6x6_KHR;case ec.ASTC_RGBA_8X5:return AQt.COMPRESSED_RGBA_ASTC_8x5_KHR;case ec.ASTC_RGBA_8X6:return AQt.COMPRESSED_RGBA_ASTC_8x6_KHR;case ec.ASTC_RGBA_8X8:return AQt.COMPRESSED_RGBA_ASTC_8x8_KHR;case ec.ASTC_RGBA_10X5:return AQt.COMPRESSED_RGBA_ASTC_10x5_KHR;case ec.ASTC_RGBA_10X6:return AQt.COMPRESSED_RGBA_ASTC_10x6_KHR;case ec.ASTC_RGBA_10X8:return AQt.COMPRESSED_RGBA_ASTC_10x8_KHR;case ec.ASTC_RGBA_10X10:return AQt.COMPRESSED_RGBA_ASTC_10x10_KHR;case ec.ASTC_RGBA_12X10:return AQt.COMPRESSED_RGBA_ASTC_12x10_KHR;case ec.ASTC_RGBA_12X12:return AQt.COMPRESSED_RGBA_ASTC_12x12_KHR;case ec.ASTC_SRGBA_4X4:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR;case ec.ASTC_SRGBA_5X4:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR;case ec.ASTC_SRGBA_5X5:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR;case ec.ASTC_SRGBA_6X5:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR;case ec.ASTC_SRGBA_6X6:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR;case ec.ASTC_SRGBA_8X5:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR;case ec.ASTC_SRGBA_8X6:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR;case ec.ASTC_SRGBA_8X8:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR;case ec.ASTC_SRGBA_10X5:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR;case ec.ASTC_SRGBA_10X6:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR;case ec.ASTC_SRGBA_10X8:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR;case ec.ASTC_SRGBA_10X10:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR;case ec.ASTC_SRGBA_12X10:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR;case ec.ASTC_SRGBA_12X12:return AQt.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR;default:return it(16310),e.RGBA}}(e.format,i),e.glType=wQt(e.format,i);var n=e.width,r=e.height,s=e.depth,a=e.arrayLayer;switch(e.type){case hc.TEX2D:e.glTarget=i.TEXTURE_2D;var o=Math.max(n,r);if(o>t.capabilities.maxTextureSize&&it(9100,o,t.capabilities.maxTextureSize),e.samples===_c.X1){if(e.glTexture=i.createTexture(),e.size>0){var h=t.stateCache.glTexUnits[t.stateCache.texUnit];if(h.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_2D,e.glTexture),h.glTexture=e.glTexture),j_[e.format].isCompressed)for(var u=0;u<e.mipLevel;++u){var l=Z_(e.format,n,r,1),c=new Uint8Array(l);i.compressedTexImage2D(i.TEXTURE_2D,u,e.glInternalFmt,n,r,0,c),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else e.flags&lc.MUTABLE_STORAGE?i.texImage2D(i.TEXTURE_2D,0,e.glInternalFmt,n,r,0,e.glFormat,e.glType,null):i.texStorage2D(i.TEXTURE_2D,e.mipLevel,e.glInternalFmt,n,r)}}else e.glRenderbuffer=i.createRenderbuffer(),e.size>0&&(t.stateCache.glRenderbuffer!==e.glRenderbuffer&&(i.bindRenderbuffer(i.RENDERBUFFER,e.glRenderbuffer),t.stateCache.glRenderbuffer=e.glRenderbuffer),i.renderbufferStorageMultisample(i.RENDERBUFFER,e.samples,e.glInternalFmt,e.width,e.height));break;case hc.TEX2D_ARRAY:e.glTarget=i.TEXTURE_2D_ARRAY;var _=Math.max(n,r);if(_>t.capabilities.maxTextureSize&&it(9100,_,t.capabilities.maxTextureSize),a>t.capabilities.maxArrayTextureLayers&&it(9100,a,t.capabilities.maxArrayTextureLayers),e.glTexture=i.createTexture(),e.size>0){var f=t.stateCache.glTexUnits[t.stateCache.texUnit];if(f.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_2D_ARRAY,e.glTexture),f.glTexture=e.glTexture),j_[e.format].isCompressed)for(var d=0;d<e.mipLevel;++d){var p=Z_(e.format,n,r,a),m=new Uint8Array(p);i.compressedTexImage3D(i.TEXTURE_2D_ARRAY,d,e.glInternalFmt,n,r,a,0,m),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else i.texStorage3D(i.TEXTURE_2D_ARRAY,e.mipLevel,e.glInternalFmt,n,r,a)}break;case hc.TEX3D:e.glTarget=i.TEXTURE_3D;var g=Math.max(Math.max(n,r),s);if(g>t.capabilities.max3DTextureSize&&it(9100,g,t.capabilities.max3DTextureSize),e.glTexture=i.createTexture(),e.size>0){var v=t.stateCache.glTexUnits[t.stateCache.texUnit];if(v.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_3D,e.glTexture),v.glTexture=e.glTexture),j_[e.format].isCompressed)for(var y=0;y<e.mipLevel;++y){var S=Z_(e.format,n,r,s),T=new Uint8Array(S);i.compressedTexImage3D(i.TEXTURE_3D,y,e.glInternalFmt,n,r,s,0,T),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else i.texStorage3D(i.TEXTURE_3D,e.mipLevel,e.glInternalFmt,n,r,s)}break;case hc.CUBE:e.glTarget=i.TEXTURE_CUBE_MAP;var A=Math.max(n,r);if(A>t.capabilities.maxCubeMapTextureSize&&it(9100,A,t.capabilities.maxTextureSize),e.glTexture=i.createTexture(),e.size>0){var b=t.stateCache.glTexUnits[t.stateCache.texUnit];if(b.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_CUBE_MAP,e.glTexture),b.glTexture=e.glTexture),j_[e.format].isCompressed)for(var E=0;E<e.mipLevel;++E){for(var C=Z_(e.format,n,r,1),x=new Uint8Array(C),w=0;w<6;++w)i.compressedTexImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+w,E,e.glInternalFmt,n,r,0,x);n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else i.texStorage2D(i.TEXTURE_CUBE_MAP,e.mipLevel,e.glInternalFmt,n,r)}break;default:it(16317),e.type=hc.TEX2D,e.glTarget=i.TEXTURE_2D}}function YQt(t,e){var i=t.gl;if(e.glTexture){var n=t.stateCache.glTexUnits,r=t.stateCache.texUnit;i.deleteTexture(e.glTexture);for(var s=0;s<n.length;++s)n[s].glTexture===e.glTexture&&(i.activeTexture(i.TEXTURE0+s),r=s,i.bindTexture(e.glTarget,null),n[s].glTexture=null);t.stateCache.texUnit=r,e.glTexture=null}if(e.glRenderbuffer){var a=t.stateCache.glRenderbuffer;i.deleteRenderbuffer(e.glRenderbuffer),a===e.glRenderbuffer&&(i.bindRenderbuffer(i.RENDERBUFFER,null),a=null),e.glRenderbuffer=null}}var qQt={gpuPipelineState:null,gpuInputAssembler:null,glPrimitive:0,invalidateAttachments:[]};function KQt(t,e,i,n,r,s,a){var o=t.gl,h=t.stateCache,u=0;if(i&&e){h.glFramebuffer!==i.glFramebuffer&&(o.bindFramebuffer(o.FRAMEBUFFER,i.glFramebuffer),h.glFramebuffer=i.glFramebuffer),h.viewport.left===n.x&&h.viewport.top===n.y&&h.viewport.width===n.width&&h.viewport.height===n.height||(o.viewport(n.x,n.y,n.width,n.height),h.viewport.left=n.x,h.viewport.top=n.y,h.viewport.width=n.width,h.viewport.height=n.height),h.scissorRect.x===n.x&&h.scissorRect.y===n.y&&h.scissorRect.width===n.width&&h.scissorRect.height===n.height||(o.scissor(n.x,n.y,n.width,n.height),h.scissorRect.x=n.x,h.scissorRect.y=n.y,h.scissorRect.width=n.width,h.scissorRect.height=n.height),qQt.invalidateAttachments.length=0;for(var l=0;l<r.length;++l){var c=e.colorAttachments[l];if(c.format!==ec.UNKNOWN)switch(c.loadOp){case Ac.LOAD:break;case Ac.CLEAR:if(h.bs.targets[0].blendColorMask!==Sc.ALL&&o.colorMask(!0,!0,!0,!0),1===e.colorAttachments.length){var _=r[0];o.clearColor(_.x,_.y,_.z,_.w),u|=o.COLOR_BUFFER_BIT}else xQt[0]=r[l].x,xQt[1]=r[l].y,xQt[2]=r[l].z,xQt[3]=r[l].w,o.clearBufferfv(o.COLOR,l,xQt);break;case Ac.DISCARD:qQt.invalidateAttachments.push(o.COLOR_ATTACHMENT0+l)}}if(e.depthStencilAttachment&&e.depthStencilAttachment.format!==ec.UNKNOWN){switch(e.depthStencilAttachment.depthLoadOp){case Ac.LOAD:break;case Ac.CLEAR:h.dss.depthWrite||o.depthMask(!0),o.clearDepth(s),u|=o.DEPTH_BUFFER_BIT;break;case Ac.DISCARD:qQt.invalidateAttachments.push(o.DEPTH_ATTACHMENT)}if(j_[e.depthStencilAttachment.format].hasStencil)switch(e.depthStencilAttachment.stencilLoadOp){case Ac.LOAD:break;case Ac.CLEAR:h.dss.stencilWriteMaskFront||o.stencilMaskSeparate(o.FRONT,65535),h.dss.stencilWriteMaskBack||o.stencilMaskSeparate(o.BACK,65535),o.clearStencil(a),u|=o.STENCIL_BUFFER_BIT;break;case Ac.DISCARD:qQt.invalidateAttachments.push(o.STENCIL_ATTACHMENT)}}if(i.glFramebuffer&&qQt.invalidateAttachments.length&&o.invalidateFramebuffer(o.FRAMEBUFFER,qQt.invalidateAttachments),u&&o.clear(u),u&o.COLOR_BUFFER_BIT){var f=h.bs.targets[0].blendColorMask;if(f!==Sc.ALL){var d=(f&Sc.R)!==Sc.NONE,p=(f&Sc.G)!==Sc.NONE,m=(f&Sc.B)!==Sc.NONE,g=(f&Sc.A)!==Sc.NONE;o.colorMask(d,p,m,g)}}u&o.DEPTH_BUFFER_BIT&&!h.dss.depthWrite&&o.depthMask(!1),u&o.STENCIL_BUFFER_BIT&&(h.dss.stencilWriteMaskFront||o.stencilMaskSeparate(o.FRONT,0),h.dss.stencilWriteMaskBack||o.stencilMaskSeparate(o.BACK,0))}}function QQt(t,e,i,n,r,s){var a=t.gl,o=t.stateCache,h=e&&e.gpuShader,u=!1;if(e&&qQt.gpuPipelineState!==e){if(qQt.gpuPipelineState=e,qQt.glPrimitive=e.glPrimitive,h){var l=h.glProgram;o.glProgram!==l&&(a.useProgram(l),o.glProgram=l,u=!0)}var c=e.rs;if(c){if(o.rs.cullMode!==c.cullMode){switch(c.cullMode){case Dc.NONE:a.disable(a.CULL_FACE);break;case Dc.FRONT:a.enable(a.CULL_FACE),a.cullFace(a.FRONT);break;case Dc.BACK:a.enable(a.CULL_FACE),a.cullFace(a.BACK)}t.stateCache.rs.cullMode=c.cullMode}var _=c.isFrontFaceCCW;t.stateCache.rs.isFrontFaceCCW!==_&&(a.frontFace(_?a.CCW:a.CW),t.stateCache.rs.isFrontFaceCCW=_),t.stateCache.rs.depthBias===c.depthBias&&t.stateCache.rs.depthBiasSlop===c.depthBiasSlop||(a.polygonOffset(c.depthBias,c.depthBiasSlop),t.stateCache.rs.depthBias=c.depthBias,t.stateCache.rs.depthBiasSlop=c.depthBiasSlop),t.stateCache.rs.lineWidth!==c.lineWidth&&(a.lineWidth(c.lineWidth),t.stateCache.rs.lineWidth=c.lineWidth)}var f=e.dss;f&&(o.dss.depthTest!==f.depthTest&&(f.depthTest?a.enable(a.DEPTH_TEST):a.disable(a.DEPTH_TEST),o.dss.depthTest=f.depthTest),o.dss.depthWrite!==f.depthWrite&&(a.depthMask(f.depthWrite),o.dss.depthWrite=f.depthWrite),o.dss.depthFunc!==f.depthFunc&&(a.depthFunc(PQt[f.depthFunc]),o.dss.depthFunc=f.depthFunc),o.dss.stencilTestFront===f.stencilTestFront&&o.dss.stencilTestBack===f.stencilTestBack||(f.stencilTestFront||f.stencilTestBack?a.enable(a.STENCIL_TEST):a.disable(a.STENCIL_TEST),o.dss.stencilTestFront=f.stencilTestFront,o.dss.stencilTestBack=f.stencilTestBack),o.dss.stencilFuncFront===f.stencilFuncFront&&o.dss.stencilRefFront===f.stencilRefFront&&o.dss.stencilReadMaskFront===f.stencilReadMaskFront||(a.stencilFuncSeparate(a.FRONT,PQt[f.stencilFuncFront],f.stencilRefFront,f.stencilReadMaskFront),o.dss.stencilFuncFront=f.stencilFuncFront,o.dss.stencilRefFront=f.stencilRefFront,o.dss.stencilReadMaskFront=f.stencilReadMaskFront),o.dss.stencilFailOpFront===f.stencilFailOpFront&&o.dss.stencilZFailOpFront===f.stencilZFailOpFront&&o.dss.stencilPassOpFront===f.stencilPassOpFront||(a.stencilOpSeparate(a.FRONT,OQt[f.stencilFailOpFront],OQt[f.stencilZFailOpFront],OQt[f.stencilPassOpFront]),o.dss.stencilFailOpFront=f.stencilFailOpFront,o.dss.stencilZFailOpFront=f.stencilZFailOpFront,o.dss.stencilPassOpFront=f.stencilPassOpFront),o.dss.stencilWriteMaskFront!==f.stencilWriteMaskFront&&(a.stencilMaskSeparate(a.FRONT,f.stencilWriteMaskFront),o.dss.stencilWriteMaskFront=f.stencilWriteMaskFront),o.dss.stencilFuncBack===f.stencilFuncBack&&o.dss.stencilRefBack===f.stencilRefBack&&o.dss.stencilReadMaskBack===f.stencilReadMaskBack||(a.stencilFuncSeparate(a.BACK,PQt[f.stencilFuncBack],f.stencilRefBack,f.stencilReadMaskBack),o.dss.stencilFuncBack=f.stencilFuncBack,o.dss.stencilRefBack=f.stencilRefBack,o.dss.stencilReadMaskBack=f.stencilReadMaskBack),o.dss.stencilFailOpBack===f.stencilFailOpBack&&o.dss.stencilZFailOpBack===f.stencilZFailOpBack&&o.dss.stencilPassOpBack===f.stencilPassOpBack||(a.stencilOpSeparate(a.BACK,OQt[f.stencilFailOpBack],OQt[f.stencilZFailOpBack],OQt[f.stencilPassOpBack]),o.dss.stencilFailOpBack=f.stencilFailOpBack,o.dss.stencilZFailOpBack=f.stencilZFailOpBack,o.dss.stencilPassOpBack=f.stencilPassOpBack),o.dss.stencilWriteMaskBack!==f.stencilWriteMaskBack&&(a.stencilMaskSeparate(a.BACK,f.stencilWriteMaskBack),o.dss.stencilWriteMaskBack=f.stencilWriteMaskBack));var d=e.bs;if(d){o.bs.isA2C!==d.isA2C&&(d.isA2C?a.enable(a.SAMPLE_ALPHA_TO_COVERAGE):a.disable(a.SAMPLE_ALPHA_TO_COVERAGE),o.bs.isA2C=d.isA2C),o.bs.blendColor.x===d.blendColor.x&&o.bs.blendColor.y===d.blendColor.y&&o.bs.blendColor.z===d.blendColor.z&&o.bs.blendColor.w===d.blendColor.w||(a.blendColor(d.blendColor.x,d.blendColor.y,d.blendColor.z,d.blendColor.w),o.bs.blendColor.x=d.blendColor.x,o.bs.blendColor.y=d.blendColor.y,o.bs.blendColor.z=d.blendColor.z,o.bs.blendColor.w=d.blendColor.w);var p=d.targets[0],m=o.bs.targets[0];m.blend!==p.blend&&(p.blend?a.enable(a.BLEND):a.disable(a.BLEND),m.blend=p.blend),m.blendEq===p.blendEq&&m.blendAlphaEq===p.blendAlphaEq||(a.blendEquationSeparate(LQt[p.blendEq],LQt[p.blendAlphaEq]),m.blendEq=p.blendEq,m.blendAlphaEq=p.blendAlphaEq),m.blendSrc===p.blendSrc&&m.blendDst===p.blendDst&&m.blendSrcAlpha===p.blendSrcAlpha&&m.blendDstAlpha===p.blendDstAlpha||(a.blendFuncSeparate(NQt[p.blendSrc],NQt[p.blendDst],NQt[p.blendSrcAlpha],NQt[p.blendDstAlpha]),m.blendSrc=p.blendSrc,m.blendDst=p.blendDst,m.blendSrcAlpha=p.blendSrcAlpha,m.blendDstAlpha=p.blendDstAlpha),m.blendColorMask!==p.blendColorMask&&(a.colorMask((p.blendColorMask&Sc.R)!==Sc.NONE,(p.blendColorMask&Sc.G)!==Sc.NONE,(p.blendColorMask&Sc.B)!==Sc.NONE,(p.blendColorMask&Sc.A)!==Sc.NONE),m.blendColorMask=p.blendColorMask)}}if(e&&e.gpuPipelineLayout&&h){for(var g=h.glBlocks.length,v=e.gpuPipelineLayout.dynamicOffsetIndices,y=0;y<g;y++){var S=h.glBlocks[y],T=n[S.set],A=T&&T.descriptorIndices[S.binding],b=A>=0&&T.gpuDescriptors[A];if(b&&b.gpuBuffer){var E=v[S.set],C=E&&E[S.binding],x=b.gpuBuffer.glOffset;C>=0&&(x+=r[C]),o.glBindUBOs[S.glBinding]===b.gpuBuffer.glBuffer&&o.glBindUBOOffsets[S.glBinding]===x||(x?a.bindBufferRange(a.UNIFORM_BUFFER,S.glBinding,b.gpuBuffer.glBuffer,x,b.gpuBuffer.size):a.bindBufferBase(a.UNIFORM_BUFFER,S.glBinding,b.gpuBuffer.glBuffer),o.glUniformBuffer=o.glBindUBOs[S.glBinding]=b.gpuBuffer.glBuffer,o.glBindUBOOffsets[S.glBinding]=x)}}for(var w=h.glSamplerTextures.length,R=0;R<w;R++)for(var I=h.glSamplerTextures[R],D=n[I.set],B=D&&D.descriptorIndices[I.binding],M=B>=0&&D.gpuDescriptors[B],P=0;P<I.units.length;P++){var O=I.units[P],L=o.glTexUnits[O];if(M&&M.gpuTextureView&&M.gpuTextureView.gpuTexture&&M.gpuSampler){var N=M.gpuTextureView,F=N.gpuTexture,k=N.baseLevel,G=k+N.levelCount;if(F.size>0){L.glTexture!==F.glTexture&&(o.texUnit!==O&&(a.activeTexture(a.TEXTURE0+O),o.texUnit=O),F.glTexture?a.bindTexture(F.glTarget,F.glTexture):a.bindTexture(F.glTarget,t.nullTex2D.gpuTexture.glTexture),L.glTexture=F.glTexture);var V=M.gpuSampler.getGLSampler(t,k,G);o.glSamplerUnits[O]!==V&&(a.bindSampler(O,V),o.glSamplerUnits[O]=V)}M=D.gpuDescriptors[++B]}}}if(i&&h&&(u||qQt.gpuInputAssembler!==i))if(qQt.gpuInputAssembler=i,t.extensions.useVAO){var U=i.glVAOs.get(h.glProgram);if(!U){var z;U=a.createVertexArray(),i.glVAOs.set(h.glProgram,U),a.bindVertexArray(U),a.bindBuffer(a.ARRAY_BUFFER,null),a.bindBuffer(a.ELEMENT_ARRAY_BUFFER,null),o.glArrayBuffer=null,o.glElementArrayBuffer=null;for(var H=0;H<h.glInputs.length;H++){var W=h.glInputs[H];z=null;for(var X=0;X<i.glAttribs.length;X++){var j=i.glAttribs[X];if(j.name===W.name){z=j;break}}if(z){o.glArrayBuffer!==z.glBuffer&&(a.bindBuffer(a.ARRAY_BUFFER,z.glBuffer),o.glArrayBuffer=z.glBuffer);for(var Y=0;Y<z.componentCount;++Y){var q=W.glLoc+Y,K=z.offset+z.size*Y;a.enableVertexAttribArray(q),o.glCurrentAttribLocs[q]=!0,a.vertexAttribPointer(q,z.count,z.glType,z.isNormalized,z.stride,K),a.vertexAttribDivisor(q,z.isInstanced?1:0)}}}var Q=i.gpuIndexBuffer;Q&&a.bindBuffer(a.ELEMENT_ARRAY_BUFFER,Q.glBuffer),a.bindVertexArray(null),a.bindBuffer(a.ARRAY_BUFFER,null),a.bindBuffer(a.ELEMENT_ARRAY_BUFFER,null),o.glArrayBuffer=null,o.glElementArrayBuffer=null}o.glVAO!==U&&(a.bindVertexArray(U),o.glVAO=U)}else{for(var Z=0;Z<t.capabilities.maxVertexAttributes;++Z)o.glCurrentAttribLocs[Z]=!1;for(var J=0;J<h.glInputs.length;J++){for(var $=h.glInputs[J],tt=null,et=0;et<i.glAttribs.length;et++){var it=i.glAttribs[et];if(it.name===$.name){tt=it;break}}if(tt){o.glArrayBuffer!==tt.glBuffer&&(a.bindBuffer(a.ARRAY_BUFFER,tt.glBuffer),o.glArrayBuffer=tt.glBuffer);for(var nt=0;nt<tt.componentCount;++nt){var rt=$.glLoc+nt,st=tt.offset+tt.size*nt;!o.glEnabledAttribLocs[rt]&&rt>=0&&(a.enableVertexAttribArray(rt),o.glEnabledAttribLocs[rt]=!0),o.glCurrentAttribLocs[rt]=!0,a.vertexAttribPointer(rt,tt.count,tt.glType,tt.isNormalized,tt.stride,st),a.vertexAttribDivisor(rt,tt.isInstanced?1:0)}}}var at=i.gpuIndexBuffer;at&&o.glElementArrayBuffer!==at.glBuffer&&(a.bindBuffer(a.ELEMENT_ARRAY_BUFFER,at.glBuffer),o.glElementArrayBuffer=at.glBuffer);for(var ot=0;ot<t.capabilities.maxVertexAttributes;++ot)o.glEnabledAttribLocs[ot]!==o.glCurrentAttribLocs[ot]&&(a.disableVertexAttribArray(ot),o.glEnabledAttribLocs[ot]=!1)}if(e&&e.dynamicStates.length)for(var ht=e.dynamicStates.length,ut=0;ut<ht;ut++)switch(e.dynamicStates[ut]){case Bc.LINE_WIDTH:o.rs.lineWidth!==s.lineWidth&&(a.lineWidth(s.lineWidth),o.rs.lineWidth=s.lineWidth);break;case Bc.DEPTH_BIAS:o.rs.depthBias===s.depthBiasConstant&&o.rs.depthBiasSlop===s.depthBiasSlope||(a.polygonOffset(s.depthBiasConstant,s.depthBiasSlope),o.rs.depthBias=s.depthBiasConstant,o.rs.depthBiasSlop=s.depthBiasSlope);break;case Bc.BLEND_CONSTANTS:var lt=s.blendConstant;o.bs.blendColor.x===lt.x&&o.bs.blendColor.y===lt.y&&o.bs.blendColor.z===lt.z&&o.bs.blendColor.w===lt.w||(a.blendColor(lt.x,lt.y,lt.z,lt.w),o.bs.blendColor.copy(lt));break;case Bc.STENCIL_WRITE_MASK:var ct=s.stencilStatesFront,_t=s.stencilStatesBack;o.dss.stencilWriteMaskFront!==ct.writeMask&&(a.stencilMaskSeparate(a.FRONT,ct.writeMask),o.dss.stencilWriteMaskFront=ct.writeMask),o.dss.stencilWriteMaskBack!==_t.writeMask&&(a.stencilMaskSeparate(a.BACK,_t.writeMask),o.dss.stencilWriteMaskBack=_t.writeMask);break;case Bc.STENCIL_COMPARE_MASK:var ft=s.stencilStatesFront,dt=s.stencilStatesBack;o.dss.stencilRefFront===ft.reference&&o.dss.stencilReadMaskFront===ft.compareMask||(a.stencilFuncSeparate(a.FRONT,PQt[o.dss.stencilFuncFront],ft.reference,ft.compareMask),o.dss.stencilRefFront=ft.reference,o.dss.stencilReadMaskFront=ft.compareMask),o.dss.stencilRefBack===dt.reference&&o.dss.stencilReadMaskBack===dt.compareMask||(a.stencilFuncSeparate(a.BACK,PQt[o.dss.stencilFuncBack],dt.reference,dt.compareMask),o.dss.stencilRefBack=dt.reference,o.dss.stencilReadMaskBack=dt.compareMask)}}function ZQt(t,e){var i=t.gl,n=qQt.gpuInputAssembler,r=qQt.glPrimitive,s=t.extensions.WEBGL_multi_draw;if(n){var a=n.gpuIndexBuffer;if(n.gpuIndirectBuffer){var o=n.gpuIndirectBuffer.indirects;if(o.drawByIndex){for(var h=0;h<o.drawCount;h++)o.byteOffsets[h]=o.offsets[h]*a.stride;if(s)o.instancedDraw?s.multiDrawElementsInstancedWEBGL(r,o.counts,0,n.glIndexType,o.byteOffsets,0,o.instances,0,o.drawCount):s.multiDrawElementsWEBGL(r,o.counts,0,n.glIndexType,o.byteOffsets,0,o.drawCount);else for(var u=0;u<o.drawCount;u++)o.instances[u]?i.drawElementsInstanced(r,o.counts[u],n.glIndexType,o.byteOffsets[u],o.instances[u]):i.drawElements(r,o.counts[u],n.glIndexType,o.byteOffsets[u])}else if(s)o.instancedDraw?s.multiDrawArraysInstancedWEBGL(r,o.offsets,0,o.counts,0,o.instances,0,o.drawCount):s.multiDrawArraysWEBGL(r,o.offsets,0,o.counts,0,o.drawCount);else for(var l=0;l<o.drawCount;l++)o.instances[l]?i.drawArraysInstanced(r,o.offsets[l],o.counts[l],o.instances[l]):i.drawArrays(r,o.offsets[l],o.counts[l])}else if(e.instanceCount)if(a){if(e.indexCount>0){var c=e.firstIndex*a.stride;i.drawElementsInstanced(r,e.indexCount,n.glIndexType,c,e.instanceCount)}}else e.vertexCount>0&&i.drawArraysInstanced(r,e.firstVertex,e.vertexCount,e.instanceCount);else if(a){if(e.indexCount>0){var _=e.firstIndex*a.stride;i.drawElements(r,e.indexCount,n.glIndexType,_)}}else e.vertexCount>0&&i.drawArrays(r,e.firstVertex,e.vertexCount)}}var JQt=new Array(MQt.COUNT);function $Qt(t,e){JQt.fill(0);for(var i=0;i<e.cmds.length;++i){var n=e.cmds.array[i],r=JQt[n]++;switch(n){case MQt.BEGIN_RENDER_PASS:var s=e.beginRenderPassCmds.array[r];KQt(t,s.gpuRenderPass,s.gpuFramebuffer,s.renderArea,s.clearColors,s.clearDepth,s.clearStencil);break;case MQt.BIND_STATES:var a=e.bindStatesCmds.array[r];QQt(t,a.gpuPipelineState,a.gpuInputAssembler,a.gpuDescriptorSets,a.dynamicOffsets,a.dynamicStates);break;case MQt.DRAW:ZQt(t,e.drawCmds.array[r].drawInfo);break;case MQt.UPDATE_BUFFER:var o=e.updateBufferCmds.array[r];XQt(t,o.gpuBuffer,o.buffer,o.offset,o.size);break;case MQt.COPY_BUFFER_TO_TEXTURE:var h=e.copyBufferToTextureCmds.array[r];iZt(t,h.buffers,h.gpuTexture,h.regions);break;case MQt.BLIT_TEXTURE:var u=e.blitTextureCmds.array[r];nZt(t,u.srcTexture,u.dstTexture,u.regions,u.filter)}}}var tZt=new Uint8Array(1);function eZt(t,e,i,n,r){var s=nf(e).height,a=Z_(e,r.width,r.height,r.depth),o=Z_(e,n.width,1,1),h=Z_(e,n.width,n.height,1),u=Z_(e,r.width,1,1),l=ef(j_[e]);tZt.byteLength<a&&(tZt=new Uint8Array(a));for(var c=0,_=i,f=0;f<r.depth;f++){_=i+h*f;for(var d=0;d<r.height;d+=s)tZt.subarray(c,c+u).set(new Uint8Array(t.buffer,t.byteOffset+_,u)),c+=u,_+=o}var p=a/l.BYTES_PER_ELEMENT;return st(Number.isInteger(p),9101),new l(tZt.buffer,0,p)}function iZt(t,e,i,n){var r=t.gl,s=t.stateCache.glTexUnits[t.stateCache.texUnit];s.glTexture!==i.glTexture&&(r.bindTexture(i.glTarget,i.glTexture),s.glTexture=i.glTexture);var a=0,o=0,h=j_[i.format],u=ef(h),l=h.isCompressed,c=nf(i.format),_=new Yc,f=new Xc,d=new Yc;switch(i.glTarget){case r.TEXTURE_2D:for(var p=0;p<n.length;p++){var m=n[p],g=m.texSubres.mipLevel;f.x=0===m.texOffset.x?0:rf(m.texOffset.x,c.width),f.y=0===m.texOffset.y?0:rf(m.texOffset.y,c.height),_.width=m.texExtent.width<c.width?m.texExtent.width:rf(m.texExtent.width,c.width),_.height=m.texExtent.height<c.height?m.texExtent.width:rf(m.texExtent.height,c.height),d.width=m.buffStride>0?m.buffStride:_.width,d.height=m.buffTexHeight>0?m.buffTexHeight:_.height;var v=m.texExtent.width+f.x===i.width>>g?m.texExtent.width:_.width,y=m.texExtent.height+f.y===i.height>>g?m.texExtent.height:_.height,S=void 0,T=e[a++];if(d.width===_.width&&d.height===_.height){var A=Z_(i.format,v,y,1)/u.BYTES_PER_ELEMENT;st(Number.isInteger(A),9101),S=new u(T.buffer,T.byteOffset+m.buffOffset,A)}else S=eZt(T,i.format,m.buffOffset,d,_);l?i.glInternalFmt!==AQt.COMPRESSED_RGB_ETC1_WEBGL?r.compressedTexSubImage2D(r.TEXTURE_2D,g,f.x,f.y,v,y,i.glFormat,S):r.compressedTexImage2D(r.TEXTURE_2D,g,i.glInternalFmt,v,y,0,S):r.texSubImage2D(r.TEXTURE_2D,g,f.x,f.y,v,y,i.glFormat,i.glType,S)}break;case r.TEXTURE_2D_ARRAY:for(var b=0;b<n.length;b++){var E=n[b],C=E.texSubres.mipLevel;f.x=0===E.texOffset.x?0:rf(E.texOffset.x,c.width),f.y=0===E.texOffset.y?0:rf(E.texOffset.y,c.height),_.width=E.texExtent.width<c.width?E.texExtent.width:rf(E.texExtent.width,c.width),_.height=E.texExtent.height<c.height?E.texExtent.width:rf(E.texExtent.height,c.height),_.depth=1,d.width=E.buffStride>0?E.buffStride:_.width,d.height=E.buffTexHeight>0?E.buffTexHeight:_.height;var x=E.texExtent.width+f.x===i.width>>C?E.texExtent.width:_.width,w=E.texExtent.height+f.y===i.height>>C?E.texExtent.height:_.height,R=E.texSubres.baseArrayLayer+E.texSubres.layerCount;for(o=E.texSubres.baseArrayLayer;o<R;++o){f.z=o;var I=void 0,D=e[a++];if(d.width===_.width&&d.height===_.height){var B=Z_(i.format,x,w,1)/u.BYTES_PER_ELEMENT;st(Number.isInteger(B),9101),I=new u(D.buffer,D.byteOffset+E.buffOffset,B)}else I=eZt(D,i.format,E.buffOffset,d,_);l?i.glInternalFmt!==AQt.COMPRESSED_RGB_ETC1_WEBGL?r.compressedTexSubImage3D(r.TEXTURE_2D_ARRAY,C,f.x,f.y,f.z,x,w,_.depth,i.glFormat,I):r.compressedTexImage3D(r.TEXTURE_2D_ARRAY,C,i.glInternalFmt,x,w,_.depth,0,I):r.texSubImage3D(r.TEXTURE_2D_ARRAY,C,f.x,f.y,f.z,x,w,_.depth,i.glFormat,i.glType,I)}}break;case r.TEXTURE_3D:for(var M=0;M<n.length;M++){var P=n[M],O=P.texSubres.mipLevel;f.x=0===P.texOffset.x?0:rf(P.texOffset.x,c.width),f.y=0===P.texOffset.y?0:rf(P.texOffset.y,c.height),f.z=P.texOffset.z,_.width=P.texExtent.width<c.width?P.texExtent.width:rf(P.texExtent.width,c.width),_.height=P.texExtent.height<c.height?P.texExtent.width:rf(P.texExtent.height,c.height),_.depth=P.texExtent.depth,d.width=P.buffStride>0?P.buffStride:_.width,d.height=P.buffTexHeight>0?P.buffTexHeight:_.height;var L=P.texExtent.width+f.x===i.width>>O?P.texExtent.width:_.width,N=P.texExtent.height+f.y===i.height>>O?P.texExtent.height:_.height,F=void 0,k=e[a++];if(d.width===_.width&&d.height===_.height){var G=Z_(i.format,L,N,_.depth)/u.BYTES_PER_ELEMENT;st(Number.isInteger(G),9101),F=new u(k.buffer,k.byteOffset+P.buffOffset,G)}else F=eZt(k,i.format,P.buffOffset,d,_);l?i.glInternalFmt!==AQt.COMPRESSED_RGB_ETC1_WEBGL?r.compressedTexSubImage3D(r.TEXTURE_2D_ARRAY,O,f.x,f.y,f.z,L,N,_.depth,i.glFormat,F):r.compressedTexImage3D(r.TEXTURE_2D_ARRAY,O,i.glInternalFmt,L,N,_.depth,0,F):r.texSubImage3D(r.TEXTURE_2D_ARRAY,O,f.x,f.y,f.z,L,N,_.depth,i.glFormat,i.glType,F)}break;case r.TEXTURE_CUBE_MAP:for(var V=0;V<n.length;V++){var U=n[V],z=U.texSubres.mipLevel;f.x=0===U.texOffset.x?0:rf(U.texOffset.x,c.width),f.y=0===U.texOffset.y?0:rf(U.texOffset.y,c.height),_.width=U.texExtent.width<c.width?U.texExtent.width:rf(U.texExtent.width,c.width),_.height=U.texExtent.height<c.height?U.texExtent.width:rf(U.texExtent.height,c.height),d.width=U.buffStride>0?U.buffStride:_.width,d.height=U.buffTexHeight>0?U.buffTexHeight:_.height;var H=U.texExtent.width+f.x===i.width>>z?U.texExtent.width:_.width,W=U.texExtent.height+f.y===i.height>>z?U.texExtent.height:_.height,X=U.texSubres.baseArrayLayer+U.texSubres.layerCount;for(o=U.texSubres.baseArrayLayer;o<X;++o){var j=void 0,Y=e[a++];if(d.width===_.width&&d.height===_.height){var q=Z_(i.format,H,W,1)/u.BYTES_PER_ELEMENT;st(Number.isInteger(q),9101),j=new u(Y.buffer,Y.byteOffset+U.buffOffset,q)}else j=eZt(Y,i.format,U.buffOffset,d,_);l?i.glInternalFmt!==AQt.COMPRESSED_RGB_ETC1_WEBGL?r.compressedTexSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+o,z,f.x,f.y,H,W,i.glFormat,j):r.compressedTexImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+o,z,i.glInternalFmt,H,W,0,j):r.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+o,z,f.x,f.y,H,W,i.glFormat,i.glType,j)}}break;default:it(16327)}i.flags&lc.GEN_MIPMAP&&r.generateMipmap(i.glTarget)}function nZt(t,e,i,n,r){var s=t.gl,a=t.stateCache,o=t.blitManager;if(o){var h=r===dc.LINEAR||r===dc.ANISOTROPIC?s.LINEAR:s.NEAREST,u=o.srcFramebuffer,l=o.dstFramebuffer,c=a.glReadFramebuffer,_=a.glFramebuffer,f=n[0].srcSubres.mipLevel,d=n[0].dstSubres.mipLevel,p=function(t){var e=0,i=s.COLOR_ATTACHMENT0;return t.hasStencil?i=s.DEPTH_STENCIL_ATTACHMENT:t.hasDepth&&(i=s.DEPTH_ATTACHMENT),t.hasDepth||t.hasStencil?(t.hasDepth&&(e|=s.DEPTH_BUFFER_BIT),t.hasStencil&&(e|=s.STENCIL_BUFFER_BIT)):e|=s.COLOR_BUFFER_BIT,{mask:e,attachment:i}},m=n.map((function(t,e){return e}));m.sort((function(t,e){return n[t].srcSubres.mipLevel-n[e].srcSubres.mipLevel}));var g=p(j_[e.format]),v=g.mask,y=g.attachment,S=p(j_[i.format]).attachment;a.glReadFramebuffer!==u&&(s.bindFramebuffer(s.READ_FRAMEBUFFER,u),a.glReadFramebuffer=u),a.glFramebuffer!==l&&(s.bindFramebuffer(s.DRAW_FRAMEBUFFER,l),a.glFramebuffer=l),e.glTexture?s.framebufferTexture2D(s.READ_FRAMEBUFFER,y,e.glTarget,e.glTexture,f):s.framebufferRenderbuffer(s.READ_FRAMEBUFFER,y,s.RENDERBUFFER,e.glRenderbuffer),i.glTexture?s.framebufferTexture2D(s.DRAW_FRAMEBUFFER,S,i.glTarget,i.glTexture,d):s.framebufferRenderbuffer(s.DRAW_FRAMEBUFFER,S,s.RENDERBUFFER,i.glRenderbuffer);for(var T=0;T<m.length;T++){var A=n[m[T]];e.glTexture&&f!==A.srcSubres.mipLevel&&(f=A.srcSubres.mipLevel,s.framebufferTexture2D(s.READ_FRAMEBUFFER,y,e.glTarget,e.glTexture,f)),i.glTexture&&d!==A.dstSubres.mipLevel&&(d=A.dstSubres.mipLevel,s.framebufferTexture2D(s.DRAW_FRAMEBUFFER,S,i.glTarget,i.glTexture,d)),s.blitFramebuffer(A.srcOffset.x,A.srcOffset.y,A.srcOffset.x+A.srcExtent.width,A.srcOffset.y+A.srcExtent.height,A.dstOffset.x,A.dstOffset.y,A.dstOffset.x+A.dstExtent.width,A.dstOffset.y+A.dstExtent.height,v,h)}a.glReadFramebuffer!==c&&(s.bindFramebuffer(s.READ_FRAMEBUFFER,c),a.glReadFramebuffer=c),a.glFramebuffer!==_&&(s.bindFramebuffer(s.DRAW_FRAMEBUFFER,_),a.glFramebuffer=_)}}var rZt=function(){function t(){this.counts=void 0,this.offsets=void 0,this.instances=void 0,this.drawCount=0,this.drawByIndex=!1,this.instancedDraw=!1,this.byteOffsets=void 0,this._capacity=4,this.counts=new Int32Array(this._capacity),this.offsets=new Int32Array(this._capacity),this.instances=new Int32Array(this._capacity),this.byteOffsets=new Int32Array(this._capacity)}var e=t.prototype;return e.clearDraws=function(){this.drawCount=0,this.drawByIndex=!1,this.instancedDraw=!1},e.setDrawInfo=function(t,e){this._ensureCapacity(t),this.drawByIndex=e.indexCount>0,this.instancedDraw=!!e.instanceCount,this.drawCount=Math.max(t+1,this.drawCount),this.drawByIndex?(this.counts[t]=e.indexCount,this.offsets[t]=e.firstIndex):(this.counts[t]=e.vertexCount,this.offsets[t]=e.firstVertex),this.instances[t]=Math.max(1,e.instanceCount)},e._ensureCapacity=function(t){if(!(this._capacity>t)){this._capacity=Ki(t);var e=new Int32Array(this._capacity),i=new Int32Array(this._capacity),n=new Int32Array(this._capacity);this.byteOffsets=new Int32Array(this._capacity),e.set(this.counts),i.set(this.offsets),n.set(this.instances),this.counts=e,this.offsets=i,this.instances=n}},t}(),sZt=function(){function t(){this._srcFramebuffer=void 0,this._dstFramebuffer=void 0;var t=EQt.instance.gl;this._srcFramebuffer=t.createFramebuffer(),this._dstFramebuffer=t.createFramebuffer()}return t.prototype.destroy=function(){var t=EQt.instance.gl;t.deleteFramebuffer(this._srcFramebuffer),t.deleteFramebuffer(this._dstFramebuffer)},n(t,[{key:"srcFramebuffer",get:function(){return this._srcFramebuffer}},{key:"dstFramebuffer",get:function(){return this._dstFramebuffer}}]),t}(),aZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuBuffer=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){if("buffer"in t){this._isBufferView=!0;var e=t.buffer;this._usage=e.usage,this._memUsage=e.memUsage,this._size=this._stride=t.range,this._count=1,this._flags=e.flags,this._gpuBuffer={usage:this._usage,memUsage:this._memUsage,size:this._size,stride:this._stride,buffer:null,indirects:e.gpuBuffer.indirects,glTarget:e.gpuBuffer.glTarget,glBuffer:e.gpuBuffer.glBuffer,glOffset:t.offset}}else this._usage=t.usage,this._memUsage=t.memUsage,this._size=t.size,this._stride=Math.max(t.stride||this._size,1),this._count=this._size/this._stride,this._flags=t.flags,this._gpuBuffer={usage:this._usage,memUsage:this._memUsage,size:this._size,stride:this._stride,buffer:null,indirects:new rZt,glTarget:0,glBuffer:null,glOffset:0},function(t,e){var i=t.gl,n=t.stateCache,r=e.memUsage&oc.HOST?i.DYNAMIC_DRAW:i.STATIC_DRAW;if(e.usage&rc.VERTEX){e.glTarget=i.ARRAY_BUFFER;var s=i.createBuffer();s&&(e.glBuffer=s,e.size>0&&(t.extensions.useVAO&&n.glVAO&&(i.bindVertexArray(null),n.glVAO=null),qQt.gpuInputAssembler=null,t.stateCache.glArrayBuffer!==e.glBuffer&&(i.bindBuffer(i.ARRAY_BUFFER,e.glBuffer),t.stateCache.glArrayBuffer=e.glBuffer),i.bufferData(i.ARRAY_BUFFER,e.size,r),i.bindBuffer(i.ARRAY_BUFFER,null),t.stateCache.glArrayBuffer=null))}else if(e.usage&rc.INDEX){e.glTarget=i.ELEMENT_ARRAY_BUFFER;var a=i.createBuffer();a&&(e.glBuffer=a,e.size>0&&(t.extensions.useVAO&&n.glVAO&&(i.bindVertexArray(null),n.glVAO=null),qQt.gpuInputAssembler=null,t.stateCache.glElementArrayBuffer!==e.glBuffer&&(i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,e.glBuffer),t.stateCache.glElementArrayBuffer=e.glBuffer),i.bufferData(i.ELEMENT_ARRAY_BUFFER,e.size,r),i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,null),t.stateCache.glElementArrayBuffer=null))}else if(e.usage&rc.UNIFORM){e.glTarget=i.UNIFORM_BUFFER;var o=i.createBuffer();o&&e.size>0&&(e.glBuffer=o,t.stateCache.glUniformBuffer!==e.glBuffer&&(i.bindBuffer(i.UNIFORM_BUFFER,e.glBuffer),t.stateCache.glUniformBuffer=e.glBuffer),i.bufferData(i.UNIFORM_BUFFER,e.size,r),i.bindBuffer(i.UNIFORM_BUFFER,null),t.stateCache.glUniformBuffer=null)}else e.usage&rc.INDIRECT||e.usage&rc.TRANSFER_DST||e.usage&rc.TRANSFER_SRC||it(16315),e.glTarget=i.NONE}(EQt.instance,this._gpuBuffer),EQt.instance.memoryStatus.bufferSize+=this._size},i.destroy=function(){this._gpuBuffer&&(this._isBufferView||(function(t,e){var i=t.gl,n=t.stateCache;if(e.glBuffer){switch(e.glTarget){case i.ARRAY_BUFFER:t.extensions.useVAO&&n.glVAO&&(i.bindVertexArray(null),t.stateCache.glVAO=null),qQt.gpuInputAssembler=null,i.bindBuffer(i.ARRAY_BUFFER,null),t.stateCache.glArrayBuffer=null;break;case i.ELEMENT_ARRAY_BUFFER:t.extensions.useVAO&&n.glVAO&&(i.bindVertexArray(null),t.stateCache.glVAO=null),qQt.gpuInputAssembler=null,i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,null),t.stateCache.glElementArrayBuffer=null;break;case i.UNIFORM_BUFFER:i.bindBuffer(i.UNIFORM_BUFFER,null),t.stateCache.glUniformBuffer=null}i.deleteBuffer(e.glBuffer),e.glBuffer=null}}(EQt.instance,this._gpuBuffer),EQt.instance.memoryStatus.bufferSize-=this._size),this._gpuBuffer=null)},i.resize=function(t){if(this._isBufferView)tt(16379);else{var e=this._size;e!==t&&(this._size=t,this._count=this._size/this._stride,this._gpuBuffer&&(this._gpuBuffer.size=t,t>0&&(function(t,e){var i=t.gl,n=t.stateCache,r=e.memUsage&oc.HOST?i.DYNAMIC_DRAW:i.STATIC_DRAW;e.usage&rc.VERTEX?(t.extensions.useVAO&&n.glVAO&&(i.bindVertexArray(null),n.glVAO=null),qQt.gpuInputAssembler=null,n.glArrayBuffer!==e.glBuffer&&i.bindBuffer(i.ARRAY_BUFFER,e.glBuffer),e.buffer?i.bufferData(i.ARRAY_BUFFER,e.buffer,r):i.bufferData(i.ARRAY_BUFFER,e.size,r),i.bindBuffer(i.ARRAY_BUFFER,null),n.glArrayBuffer=null):e.usage&rc.INDEX?(t.extensions.useVAO&&n.glVAO&&(i.bindVertexArray(null),n.glVAO=null),qQt.gpuInputAssembler=null,t.stateCache.glElementArrayBuffer!==e.glBuffer&&i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,e.glBuffer),e.buffer?i.bufferData(i.ELEMENT_ARRAY_BUFFER,e.buffer,r):i.bufferData(i.ELEMENT_ARRAY_BUFFER,e.size,r),i.bindBuffer(i.ELEMENT_ARRAY_BUFFER,null),t.stateCache.glElementArrayBuffer=null):e.usage&rc.UNIFORM?(t.stateCache.glUniformBuffer!==e.glBuffer&&i.bindBuffer(i.UNIFORM_BUFFER,e.glBuffer),i.bufferData(i.UNIFORM_BUFFER,e.size,r),i.bindBuffer(i.UNIFORM_BUFFER,null),t.stateCache.glUniformBuffer=null):(e.usage&rc.INDIRECT||e.usage&rc.TRANSFER_DST||e.usage&rc.TRANSFER_SRC||it(16315),e.glTarget=i.NONE)}(EQt.instance,this._gpuBuffer),EQt.instance.memoryStatus.bufferSize-=e,EQt.instance.memoryStatus.bufferSize+=t)))}},i.update=function(t,e){var i;this._isBufferView?tt(16380):(i=void 0!==e?e:this._usage&rc.INDIRECT?0:t.byteLength,XQt(EQt.instance,this._gpuBuffer,t,0,i))},n(e,[{key:"gpuBuffer",get:function(){return this._gpuBuffer}}]),e}(af),oZt=function(){function t(t,e){this._frees=void 0,this._freeIdx=0,this._freeCmds=void 0,this._frees=new Array(e),this._freeCmds=new Is(e);for(var i=0;i<e;++i)this._frees[i]=new t;this._freeIdx=e-1}var e=t.prototype;return e.alloc=function(t){if(this._freeIdx<0){var e=2*this._frees.length,i=this._frees;this._frees=new Array(e);for(var n=e-i.length,r=0;r<n;++r)this._frees[r]=new t;for(var s=n,a=0;s<e;++s,++a)this._frees[s]=i[a];this._freeIdx+=n}var o=this._frees[this._freeIdx];return this._frees[this._freeIdx--]=null,++o.refCount,o},e.free=function(t){0==--t.refCount&&this._freeCmds.push(t)},e.freeCmds=function(t){for(var e=0;e<t.length;++e)0==--t.array[e].refCount&&this._freeCmds.push(t.array[e])},e.release=function(){for(var t=0;t<this._freeCmds.length;++t){var e=this._freeCmds.array[t];e.clear(),this._frees[++this._freeIdx]=e}this._freeCmds.clear()},t}(),hZt=function(){function t(){this.beginRenderPassCmdPool=void 0,this.bindStatesCmdPool=void 0,this.drawCmdPool=void 0,this.updateBufferCmdPool=void 0,this.copyBufferToTextureCmdPool=void 0,this.blitTextureCmdPool=void 0,this.beginRenderPassCmdPool=new oZt(kQt,1),this.bindStatesCmdPool=new oZt(GQt,1),this.drawCmdPool=new oZt(VQt,1),this.updateBufferCmdPool=new oZt(UQt,1),this.copyBufferToTextureCmdPool=new oZt(zQt,1),this.blitTextureCmdPool=new oZt(HQt,1)}var e=t.prototype;return e.clearCmds=function(t){t.beginRenderPassCmds.length&&(this.beginRenderPassCmdPool.freeCmds(t.beginRenderPassCmds),t.beginRenderPassCmds.clear()),t.bindStatesCmds.length&&(this.bindStatesCmdPool.freeCmds(t.bindStatesCmds),t.bindStatesCmds.clear()),t.drawCmds.length&&(this.drawCmdPool.freeCmds(t.drawCmds),t.drawCmds.clear()),t.updateBufferCmds.length&&(this.updateBufferCmdPool.freeCmds(t.updateBufferCmds),t.updateBufferCmds.clear()),t.copyBufferToTextureCmds.length&&(this.copyBufferToTextureCmdPool.freeCmds(t.copyBufferToTextureCmds),t.copyBufferToTextureCmds.clear()),t.blitTextureCmds.length&&(this.blitTextureCmdPool.freeCmds(t.blitTextureCmds),t.blitTextureCmds.clear()),t.cmds.clear()},e.releaseCmds=function(){this.beginRenderPassCmdPool.release(),this.bindStatesCmdPool.release(),this.drawCmdPool.release(),this.updateBufferCmdPool.release(),this.copyBufferToTextureCmdPool.release(),this.blitTextureCmdPool.release()},t}(),uZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).cmdPackage=new WQt,e._cmdAllocator=new hZt,e._isInRenderPass=!1,e._curGPUPipelineState=null,e._curGPUDescriptorSets=[],e._curGPUInputAssembler=null,e._curDynamicOffsets=Array(8).fill(0),e._curDynamicStates=new W_,e._isStateInvalied=!1,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._type=t.type,this._queue=t.queue;for(var e=EQt.instance.bindingMappings.blockOffsets.length,i=0;i<e;i++)this._curGPUDescriptorSets.push(null)},i.destroy=function(){this._cmdAllocator.clearCmds(this.cmdPackage)},i.begin=function(){this._cmdAllocator.clearCmds(this.cmdPackage),this._curGPUPipelineState=null,this._curGPUInputAssembler=null,this._curGPUDescriptorSets.length=0,this._numDrawCalls=0,this._numInstances=0,this._numTris=0},i.end=function(){this._isStateInvalied&&this.bindStates(),this._isInRenderPass=!1},i.beginRenderPass=function(t,e,i,n,r,s){var a=this._cmdAllocator.beginRenderPassCmdPool.alloc(kQt);a.gpuRenderPass=t.gpuRenderPass,a.gpuFramebuffer=e.gpuFramebuffer,a.renderArea.copy(i);for(var o=0;o<n.length;++o)a.clearColors[o]=n[o];a.clearDepth=r,a.clearStencil=s,this.cmdPackage.beginRenderPassCmds.push(a),this.cmdPackage.cmds.push(MQt.BEGIN_RENDER_PASS),this._isInRenderPass=!0},i.endRenderPass=function(){this._isInRenderPass=!1},i.bindPipelineState=function(t){var e=t.gpuPipelineState;e!==this._curGPUPipelineState&&(this._curGPUPipelineState=e,this._isStateInvalied=!0)},i.bindDescriptorSet=function(t,e,i){var n=e.gpuDescriptorSet;if(n!==this._curGPUDescriptorSets[t]&&(this._curGPUDescriptorSets[t]=n,this._isStateInvalied=!0),i){var r,s=null===(r=this._curGPUPipelineState)||void 0===r?void 0:r.gpuPipelineLayout;if(s){for(var a=this._curDynamicOffsets,o=s.dynamicOffsetOffsets[t],h=0;h<i.length;h++)a[o+h]=i[h];this._isStateInvalied=!0}}},i.bindInputAssembler=function(t){var e=t.gpuInputAssembler;this._curGPUInputAssembler=e,this._isStateInvalied=!0},i.setViewport=function(t){var e=this._curDynamicStates.viewport;e.left===t.left&&e.top===t.top&&e.width===t.width&&e.height===t.height&&e.minDepth===t.minDepth&&e.maxDepth===t.maxDepth||(e.left=t.left,e.top=t.top,e.width=t.width,e.height=t.height,e.minDepth=t.minDepth,e.maxDepth=t.maxDepth,this._isStateInvalied=!0)},i.setScissor=function(t){var e=this._curDynamicStates.scissor;e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height||(e.x=t.x,e.y=t.y,e.width=t.width,e.height=t.height,this._isStateInvalied=!0)},i.setLineWidth=function(t){this._curDynamicStates.lineWidth!==t&&(this._curDynamicStates.lineWidth=t,this._isStateInvalied=!0)},i.setDepthBias=function(t,e,i){var n=this._curDynamicStates;n.depthBiasConstant===t&&n.depthBiasClamp===e&&n.depthBiasSlope===i||(n.depthBiasConstant=t,n.depthBiasClamp=e,n.depthBiasSlope=i,this._isStateInvalied=!0)},i.setBlendConstants=function(t){var e=this._curDynamicStates.blendConstant;e.x===t.x&&e.y===t.y&&e.z===t.z&&e.w===t.w||(e.copy(t),this._isStateInvalied=!0)},i.setDepthBound=function(t,e){var i=this._curDynamicStates;i.depthMinBounds===t&&i.depthMaxBounds===e||(i.depthMinBounds=t,i.depthMaxBounds=e,this._isStateInvalied=!0)},i.setStencilWriteMask=function(t,e){var i=this._curDynamicStates.stencilStatesFront,n=this._curDynamicStates.stencilStatesBack;t&Mc.FRONT&&i.writeMask!==e&&(i.writeMask=e,this._isStateInvalied=!0),t&Mc.BACK&&n.writeMask!==e&&(n.writeMask=e,this._isStateInvalied=!0)},i.setStencilCompareMask=function(t,e,i){var n=this._curDynamicStates.stencilStatesFront,r=this._curDynamicStates.stencilStatesBack;t&Mc.FRONT&&(n.compareMask===i&&n.reference===e||(n.reference=e,n.compareMask=i,this._isStateInvalied=!0)),t&Mc.BACK&&(r.compareMask===i&&r.reference===e||(r.reference=e,r.compareMask=i,this._isStateInvalied=!0))},i.draw=function(t){if(this._type===Nc.PRIMARY&&this._isInRenderPass||this._type===Nc.SECONDARY){this._isStateInvalied&&this.bindStates();var e="drawInfo"in t?t.drawInfo:t,i=this._cmdAllocator.drawCmdPool.alloc(VQt);i.drawInfo.copy(e),this.cmdPackage.drawCmds.push(i),this.cmdPackage.cmds.push(MQt.DRAW),++this._numDrawCalls,this._numInstances+=e.instanceCount;var n=e.indexCount||e.vertexCount;if(this._curGPUPipelineState)switch(this._curGPUPipelineState.glPrimitive){case 4:this._numTris+=n/3*Math.max(e.instanceCount,1);break;case 5:case 6:this._numTris+=(n-2)*Math.max(e.instanceCount,1)}}else it(16328)},i.updateBuffer=function(t,e,i){if(this._type===Nc.PRIMARY&&!this._isInRenderPass||this._type===Nc.SECONDARY){var n=t.gpuBuffer;if(n){var r,s=this._cmdAllocator.updateBufferCmdPool.alloc(UQt),a=0;t.usage&rc.INDIRECT||(a=void 0!==i?i:e.byteLength),r=e,s.gpuBuffer=n,s.buffer=r,s.offset=0,s.size=a,this.cmdPackage.updateBufferCmds.push(s),this.cmdPackage.cmds.push(MQt.UPDATE_BUFFER)}}else it(16329)},i.copyBuffersToTexture=function(t,e,i){if(this._type===Nc.PRIMARY&&!this._isInRenderPass||this._type===Nc.SECONDARY){var n=e.gpuTexture;if(n){var r=this._cmdAllocator.copyBufferToTextureCmdPool.alloc(zQt);r.gpuTexture=n,r.regions=i,r.buffers=t,this.cmdPackage.copyBufferToTextureCmds.push(r),this.cmdPackage.cmds.push(MQt.COPY_BUFFER_TO_TEXTURE)}}else it(16330)},i.execute=function(t,e){for(var i=0;i<e;++i){for(var n=t[i],r=0;r<n.cmdPackage.beginRenderPassCmds.length;++r){var s=n.cmdPackage.beginRenderPassCmds.array[r];++s.refCount,this.cmdPackage.beginRenderPassCmds.push(s)}for(var a=0;a<n.cmdPackage.bindStatesCmds.length;++a){var o=n.cmdPackage.bindStatesCmds.array[a];++o.refCount,this.cmdPackage.bindStatesCmds.push(o)}for(var h=0;h<n.cmdPackage.drawCmds.length;++h){var u=n.cmdPackage.drawCmds.array[h];++u.refCount,this.cmdPackage.drawCmds.push(u)}for(var l=0;l<n.cmdPackage.updateBufferCmds.length;++l){var c=n.cmdPackage.updateBufferCmds.array[l];++c.refCount,this.cmdPackage.updateBufferCmds.push(c)}for(var _=0;_<n.cmdPackage.copyBufferToTextureCmds.length;++_){var f=n.cmdPackage.copyBufferToTextureCmds.array[_];++f.refCount,this.cmdPackage.copyBufferToTextureCmds.push(f)}for(var d=0;d<n.cmdPackage.blitTextureCmds.length;++d){var p=n.cmdPackage.blitTextureCmds.array[d];++p.refCount,this.cmdPackage.blitTextureCmds.push(p)}this.cmdPackage.cmds.concat(n.cmdPackage.cmds.array),this._numDrawCalls+=n._numDrawCalls,this._numInstances+=n._numInstances,this._numTris+=n._numTris}},i.pipelineBarrier=function(){},i.bindStates=function(){var t=this._cmdAllocator.bindStatesCmdPool.alloc(GQt);t.gpuPipelineState=this._curGPUPipelineState,Array.prototype.push.apply(t.gpuDescriptorSets,this._curGPUDescriptorSets),Array.prototype.push.apply(t.dynamicOffsets,this._curDynamicOffsets),t.gpuInputAssembler=this._curGPUInputAssembler,t.dynamicStates=this._curDynamicStates,this.cmdPackage.bindStatesCmds.push(t),this.cmdPackage.cmds.push(MQt.BIND_STATES),this._isStateInvalied=!1},i.blitTexture=function(t,e,i,n){var r=this._cmdAllocator.blitTextureCmdPool.alloc(HQt);r.srcTexture=t.gpuTexture,r.dstTexture=e.gpuTexture,r.regions=i,r.filter=n,++this._numDrawCalls,this.cmdPackage.blitTextureCmds.push(r),this.cmdPackage.cmds.push(MQt.BLIT_TEXTURE)},e}(of),lZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuFramebuffer=null,e._gpuColorViews=[],e._gpuDepthStencilView=void 0,e}s(e,t);var i=e.prototype;return i.initialize=function(t){var e,i=this;this._renderPass=t.renderPass,this._colorTextures=t.colorTextures||[],this._depthStencilTexture=t.depthStencilTexture||null;for(var n=[],r=0;r<t.colorTextures.length;r++){var s=t.colorTextures[r];s&&n.push(s.gpuTextureView)}var a=null;t.depthStencilTexture&&(a=t.depthStencilTexture.gpuTextureView);var o=Number.MAX_SAFE_INTEGER,h=Number.MAX_SAFE_INTEGER;this._gpuFramebuffer={gpuRenderPass:t.renderPass.gpuRenderPass,gpuColorViews:n,gpuDepthStencilView:a,glFramebuffer:null,isOffscreen:!0,get width(){return this.gpuColorViews.length>0?this.gpuColorViews[0].gpuTexture.width:this.gpuDepthStencilView?this.gpuDepthStencilView.gpuTexture.width:o},set width(t){o=t},get height(){return this.gpuColorViews.length>0?this.gpuColorViews[0].gpuTexture.height:this.gpuDepthStencilView?this.gpuDepthStencilView.gpuTexture.height:h},set height(t){h=t}},function(t,e){for(var i=0;i<e.gpuColorViews.length;++i)if(e.gpuColorViews[i].gpuTexture.isSwapchainTexture)return void(e.isOffscreen=!1);var n=t.gl,r=[],s=n.createFramebuffer();if(s){e.glFramebuffer=s,t.stateCache.glFramebuffer!==e.glFramebuffer&&n.bindFramebuffer(n.FRAMEBUFFER,e.glFramebuffer);for(var a=0;a<e.gpuColorViews.length;++a){var o=e.gpuColorViews[a],h=o.gpuTexture;h&&(h.glTexture?n.framebufferTexture2D(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0+a,h.glTarget,h.glTexture,o.baseLevel):n.framebufferRenderbuffer(n.FRAMEBUFFER,n.COLOR_ATTACHMENT0+a,n.RENDERBUFFER,h.glRenderbuffer),r.push(n.COLOR_ATTACHMENT0+a),e.width=Math.min(e.width,h.width>>o.baseLevel),e.height=Math.min(e.height,h.height>>o.baseLevel))}var u=e.gpuDepthStencilView;if(u){var l=u.gpuTexture,c=j_[l.format].hasStencil?n.DEPTH_STENCIL_ATTACHMENT:n.DEPTH_ATTACHMENT;l.glTexture?n.framebufferTexture2D(n.FRAMEBUFFER,c,l.glTarget,l.glTexture,e.gpuDepthStencilView.baseLevel):n.framebufferRenderbuffer(n.FRAMEBUFFER,c,n.RENDERBUFFER,l.glRenderbuffer),e.width=Math.min(e.width,l.width>>u.baseLevel),e.height=Math.min(e.height,l.height>>u.baseLevel)}n.drawBuffers(r);var _=n.checkFramebufferStatus(n.FRAMEBUFFER);if(_!==n.FRAMEBUFFER_COMPLETE)switch(_){case n.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:it(16318);break;case n.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:it(16319);break;case n.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:it(16320);break;case n.FRAMEBUFFER_UNSUPPORTED:it(16321)}t.stateCache.glFramebuffer!==e.glFramebuffer&&n.bindFramebuffer(n.FRAMEBUFFER,t.stateCache.glFramebuffer)}}(EQt.instance,this._gpuFramebuffer),this.gpuFramebuffer.gpuColorViews.forEach((function(t){return i._gpuColorViews.push(t.gpuTexture.glTexture)})),this._gpuDepthStencilView=null===(e=this.gpuFramebuffer.gpuDepthStencilView)||void 0===e?void 0:e.gpuTexture.glTexture,this._width=this._gpuFramebuffer.width,this._height=this._gpuFramebuffer.height},i.destroy=function(){var t,e;this._gpuFramebuffer&&(t=EQt.instance,(e=this._gpuFramebuffer).glFramebuffer&&(t.gl.deleteFramebuffer(e.glFramebuffer),t.stateCache.glFramebuffer===e.glFramebuffer&&(t.gl.bindFramebuffer(t.gl.FRAMEBUFFER,null),t.stateCache.glFramebuffer=null),e.glFramebuffer=null),this._gpuFramebuffer=null,this._gpuColorViews.length=0,this._gpuDepthStencilView=null)},n(e,[{key:"gpuFramebuffer",get:function(){return this._gpuFramebuffer}},{key:"needRebuild",get:function(){if(this.gpuFramebuffer){for(var t,e=0;e<this.gpuFramebuffer.gpuColorViews.length;e++)if(this.gpuFramebuffer.gpuColorViews[e].gpuTexture.glTexture!==this._gpuColorViews[e])return!0;if((null===(t=this.gpuFramebuffer.gpuDepthStencilView)||void 0===t?void 0:t.gpuTexture.glTexture)!==this._gpuDepthStencilView)return!0}return!1}}]),e}(cf),cZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuInputAssembler=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){if(0!==t.vertexBuffers.length){if(this._attributes=t.attributes,this._attributesHash=this.computeAttributesHash(),this._vertexBuffers=t.vertexBuffers,t.indexBuffer)this._indexBuffer=t.indexBuffer,this._drawInfo.indexCount=this._indexBuffer.size/this._indexBuffer.stride,this._drawInfo.firstIndex=0;else{var e=this._vertexBuffers[0];this._drawInfo.vertexCount=e.size/e.stride,this._drawInfo.firstVertex=0,this._drawInfo.vertexOffset=0}this._drawInfo.instanceCount=0,this._drawInfo.firstInstance=0,this._indirectBuffer=t.indirectBuffer||null;for(var i=new Array(t.vertexBuffers.length),n=0;n<t.vertexBuffers.length;++n){var r=t.vertexBuffers[n];r.gpuBuffer&&(i[n]=r.gpuBuffer)}var s=null,a=0;if(t.indexBuffer&&(s=t.indexBuffer.gpuBuffer))switch(s.stride){case 1:a=5121;break;case 2:a=5123;break;case 4:a=5125;break;default:it(16332)}var o=null;t.indirectBuffer&&(o=t.indirectBuffer.gpuBuffer),this._gpuInputAssembler={attributes:t.attributes,gpuVertexBuffers:i,gpuIndexBuffer:s,gpuIndirectBuffer:o,glAttribs:[],glIndexType:a,glVAOs:new Map},function(t,e){var i=t.gl;e.glAttribs=new Array(e.attributes.length);for(var n=[0,0,0,0,0,0,0,0],r=0;r<e.attributes.length;++r){var s=e.attributes[r],a=void 0!==s.stream?s.stream:0,o=e.gpuVertexBuffers[a],h=wQt(s.format,i),u=j_[s.format].size;e.glAttribs[r]={name:s.name,glBuffer:o.glBuffer,glType:h,size:u,count:j_[s.format].count,stride:o.stride,componentCount:BQt(h,i),isNormalized:void 0!==s.isNormalized&&s.isNormalized,isInstanced:void 0!==s.isInstanced&&s.isInstanced,offset:n[a]},n[a]+=u}}(EQt.instance,this._gpuInputAssembler)}else it(16331)},i.destroy=function(){var t=EQt.instance;this._gpuInputAssembler&&t.extensions.useVAO&&function(t,e){for(var i=e.glVAOs.values(),n=i.next(),r=t.gl,s=t.stateCache.glVAO;!n.done;)r.deleteVertexArray(n.value),s===n.value&&(r.bindVertexArray(null),s=null),n=i.next();t.stateCache.glVAO=s,e.glVAOs.clear()}(t,this._gpuInputAssembler),this._gpuInputAssembler=null},n(e,[{key:"gpuInputAssembler",get:function(){return this._gpuInputAssembler}}]),e}(_f),_Zt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuDescriptorSetLayout=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){Array.prototype.push.apply(this._bindings,t.bindings);for(var e=0,i=-1,n=[],r=0;r<this._bindings.length;r++){var s=this._bindings[r];n.push(e),e+=s.count,s.binding>i&&(i=s.binding)}this._bindingIndices=Array(i+1).fill(-1);for(var a=this._descriptorIndices=Array(i+1).fill(-1),o=0;o<this._bindings.length;o++){var h=this._bindings[o];this._bindingIndices[h.binding]=o,a[h.binding]=n[o]}for(var u=[],l=0;l<this._bindings.length;l++){var c=this._bindings[l];if(c.descriptorType&K_)for(var _=0;_<c.count;_++)u.push(c.binding)}this._gpuDescriptorSetLayout={bindings:this._bindings,dynamicBindings:u,descriptorIndices:a,descriptorCount:e}},i.destroy=function(){this._bindings.length=0},n(e,[{key:"gpuDescriptorSetLayout",get:function(){return this._gpuDescriptorSetLayout}}]),e}(df),fZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuPipelineLayout=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){Array.prototype.push.apply(this._setLayouts,t.setLayouts);for(var e=[],i=[],n=0,r=[],s=0;s<this._setLayouts.length;s++){for(var a=this._setLayouts[s],o=a.gpuDescriptorSetLayout.dynamicBindings,h=Array(a.bindingIndices.length).fill(-1),u=0;u<o.length;u++){var l=o[u];h[l]<0&&(h[l]=n+u)}i.push(a.gpuDescriptorSetLayout),e.push(h),r.push(n),n+=o.length}this._gpuPipelineLayout={gpuSetLayouts:i,dynamicOffsetIndices:e,dynamicOffsetCount:n,dynamicOffsetOffsets:r}},i.destroy=function(){this._setLayouts.length=0},n(e,[{key:"gpuPipelineLayout",get:function(){return this._gpuPipelineLayout}}]),e}(pf),dZt=[0,1,3,2,0,0,0,4,5,6,0,0,0,0],pZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuPipelineState=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._primitive=t.primitive,this._shader=t.shader,this._pipelineLayout=t.pipelineLayout;var e=this._bs;if(t.blendState){var i=t.blendState,n=i.targets;n&&n.forEach((function(t,i){e.setTarget(i,t)})),void 0!==i.isA2C&&(e.isA2C=i.isA2C),void 0!==i.isIndepend&&(e.isIndepend=i.isIndepend),void 0!==i.blendColor&&(e.blendColor=i.blendColor)}Object.assign(this._rs,t.rasterizerState),Object.assign(this._dss,t.depthStencilState),this._is=t.inputState,this._renderPass=t.renderPass,this._dynamicStates=t.dynamicStates;for(var r=[],s=0;s<31;s++)this._dynamicStates&1<<s&&r.push(1<<s);this._gpuPipelineState={glPrimitive:dZt[t.primitive],gpuShader:t.shader.gpuShader,gpuPipelineLayout:t.pipelineLayout.gpuPipelineLayout,rs:t.rasterizerState,dss:t.depthStencilState,bs:t.blendState,gpuRenderPass:t.renderPass.gpuRenderPass,dynamicStates:r}},i.destroy=function(){this._gpuPipelineState=null},n(e,[{key:"gpuPipelineState",get:function(){return this._gpuPipelineState}}]),e}(Tf),mZt=function(t){function e(){return t.apply(this,arguments)||this}s(e,t);var i=e.prototype;return i.beginRenderPass=function(t,e,i,n,r,s){KQt(EQt.instance,t.gpuRenderPass,e.gpuFramebuffer,i,n,r,s),this._isInRenderPass=!0},i.draw=function(t){if(this._isInRenderPass){this._isStateInvalied&&this.bindStates();var e="drawInfo"in t?t.drawInfo:t;ZQt(EQt.instance,e),++this._numDrawCalls,this._numInstances+=e.instanceCount;var i=e.indexCount||e.vertexCount;if(this._curGPUPipelineState)switch(this._curGPUPipelineState.glPrimitive){case 4:this._numTris+=i/3*Math.max(e.instanceCount,1);break;case 5:case 6:this._numTris+=(i-2)*Math.max(e.instanceCount,1)}}else it(16328)},i.setViewport=function(t){var e=EQt.instance,i=e.stateCache,n=e.gl;i.viewport.left===t.left&&i.viewport.top===t.top&&i.viewport.width===t.width&&i.viewport.height===t.height||(n.viewport(t.left,t.top,t.width,t.height),i.viewport.left=t.left,i.viewport.top=t.top,i.viewport.width=t.width,i.viewport.height=t.height)},i.setScissor=function(t){var e=EQt.instance,i=e.stateCache,n=e.gl;i.scissorRect.x===t.x&&i.scissorRect.y===t.y&&i.scissorRect.width===t.width&&i.scissorRect.height===t.height||(n.scissor(t.x,t.y,t.width,t.height),i.scissorRect.x=t.x,i.scissorRect.y=t.y,i.scissorRect.width=t.width,i.scissorRect.height=t.height)},i.updateBuffer=function(t,e,i){if(this._isInRenderPass)it(16329);else{var n,r=t.gpuBuffer;r&&(n=void 0!==i?i:t.usage&rc.INDIRECT?0:e.byteLength,XQt(EQt.instance,r,e,0,n))}},i.copyBuffersToTexture=function(t,e,i){if(this._isInRenderPass)it(16330);else{var n=e.gpuTexture;n&&iZt(EQt.instance,t,n,i)}},i.execute=function(t,e){for(var i=0;i<e;++i){var n=t[i];$Qt(EQt.instance,n.cmdPackage),this._numDrawCalls+=n._numDrawCalls,this._numInstances+=n._numInstances,this._numTris+=n._numTris}},i.bindStates=function(){QQt(EQt.instance,this._curGPUPipelineState,this._curGPUInputAssembler,this._curGPUDescriptorSets,this._curDynamicOffsets,this._curDynamicStates),this._isStateInvalied=!1},i.blitTexture=function(t,e,i,n){var r=t.gpuTexture,s=e.gpuTexture;nZt(EQt.instance,r,s,i,n)},e}(uZt),gZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).numDrawCalls=0,e.numInstances=0,e.numTris=0,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._type=t.type},i.destroy=function(){},i.submit=function(t){for(var e=0;e<t.length;e++){var i=t[e];this.numDrawCalls+=i.numDrawCalls,this.numInstances+=i.numInstances,this.numTris+=i.numTris}},i.clear=function(){this.numDrawCalls=0,this.numInstances=0,this.numTris=0},e}(Af),vZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuRenderPass=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._colorInfos=t.colorAttachments,this._depthStencilInfo=t.depthStencilAttachment,this._subpasses=t.subpasses,this._gpuRenderPass={colorAttachments:this._colorInfos,depthStencilAttachment:this._depthStencilInfo},this._hash=this.computeHash()},i.destroy=function(){this._gpuRenderPass=null},n(e,[{key:"gpuRenderPass",get:function(){return this._gpuRenderPass}}]),e}(bf),yZt=function(t){function e(e,i){var n,r,s,a;return(n=t.call(this,e,i)||this)._gpuSampler=null,n._gpuSampler={glSamplers:new Map,minFilter:n._info.minFilter,magFilter:n._info.magFilter,mipFilter:n._info.mipFilter,addressU:n._info.addressU,addressV:n._info.addressV,addressW:n._info.addressW,glMinFilter:0,glMagFilter:0,glWrapS:0,glWrapT:0,glWrapR:0,getGLSampler:function(t,e,i){var n=t.gl,r=e<<16|i;if(!this.glSamplers.has(r)){var s=n.createSampler();s&&(this.glSamplers.set(r,s),n.samplerParameteri(s,n.TEXTURE_MIN_FILTER,this.glMinFilter),n.samplerParameteri(s,n.TEXTURE_MAG_FILTER,this.glMagFilter),n.samplerParameteri(s,n.TEXTURE_WRAP_S,this.glWrapS),n.samplerParameteri(s,n.TEXTURE_WRAP_T,this.glWrapT),n.samplerParameteri(s,n.TEXTURE_WRAP_R,this.glWrapR),n.samplerParameterf(s,n.TEXTURE_MIN_LOD,e),n.samplerParameterf(s,n.TEXTURE_MAX_LOD,i))}return this.glSamplers.get(r)}},r=EQt.instance,s=n._gpuSampler,a=r.gl,s.minFilter===dc.LINEAR||s.minFilter===dc.ANISOTROPIC?s.mipFilter===dc.LINEAR||s.mipFilter===dc.ANISOTROPIC?s.glMinFilter=a.LINEAR_MIPMAP_LINEAR:s.mipFilter===dc.POINT?s.glMinFilter=a.LINEAR_MIPMAP_NEAREST:s.glMinFilter=a.LINEAR:s.mipFilter===dc.LINEAR||s.mipFilter===dc.ANISOTROPIC?s.glMinFilter=a.NEAREST_MIPMAP_LINEAR:s.mipFilter===dc.POINT?s.glMinFilter=a.NEAREST_MIPMAP_NEAREST:s.glMinFilter=a.NEAREST,s.magFilter===dc.LINEAR||s.magFilter===dc.ANISOTROPIC?s.glMagFilter=a.LINEAR:s.glMagFilter=a.NEAREST,s.glWrapS=CQt[s.addressU],s.glWrapT=CQt[s.addressV],s.glWrapR=CQt[s.addressW],n}return s(e,t),e.prototype.destroy=function(){this._gpuSampler&&(function(t,e){for(var i=t.gl,n=e.glSamplers.values().next();!n.done;){i.deleteSampler(n.value);for(var r=t.stateCache.glSamplerUnits,s=0;s<r.length;++s)r[s]===n.value&&(i.bindSampler(s,null),r[s]=null)}e.glSamplers.clear()}(EQt.instance,this._gpuSampler),this._gpuSampler=null)},n(e,[{key:"gpuSampler",get:function(){return this._gpuSampler}}]),e}(Ef),SZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuShader=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._name=t.name,this._stages=t.stages,this._attributes=t.attributes,this._blocks=t.blocks,this._samplers=t.samplers,this._gpuShader={name:t.name,blocks:t.blocks.slice(),samplerTextures:t.samplerTextures.slice(),subpassInputs:t.subpassInputs.slice(),gpuStages:new Array(t.stages.length),glProgram:null,glInputs:[],glUniforms:[],glBlocks:[],glSamplerTextures:[]};for(var e=0;e<t.stages.length;++e){var i=t.stages[e];this._gpuShader.gpuStages[e]={type:i.stage,source:i.source,glShader:null}}},i.destroy=function(){var t,e;this._gpuShader&&(t=EQt.instance,(e=this._gpuShader).glProgram&&(t.gl.deleteProgram(e.glProgram),t.stateCache.glProgram===e.glProgram&&(t.gl.useProgram(null),t.stateCache.glProgram=null),e.glProgram=null),this._gpuShader=null)},n(e,[{key:"gpuShader",get:function(){return null===this._gpuShader.glProgram&&function(t,e){for(var i,n=t.gl,r=function(){var t=e.gpuStages[s],i=0,r="",a=1;switch(t.type){case Tc.VERTEX:r="VertexShader",i=n.VERTEX_SHADER;break;case Tc.FRAGMENT:r="FragmentShader",i=n.FRAGMENT_SHADER;break;default:return it(16322),{v:void 0}}var o=n.createShader(i);if(o&&(t.glShader=o,n.shaderSource(t.glShader,"#version 300 es\n"+t.source),n.compileShader(t.glShader),!n.getShaderParameter(t.glShader,n.COMPILE_STATUS))){it(16323,r,e.name),it(16324,t.source.replace(/^|\n/g,(function(){return"\n"+a+++" "}))),H(n.getShaderInfoLog(t.glShader));for(var h=0;h<e.gpuStages.length;h++){var u=e.gpuStages[s];u.glShader&&(n.deleteShader(u.glShader),u.glShader=null)}return{v:void 0}}},s=0;s<e.gpuStages.length;s++)if(i=r())return i.v;var a=n.createProgram();if(a){e.glProgram=a;for(var o=!(!S.rendering||!S.rendering.enableEffectImport),h=0;h<e.gpuStages.length;h++){var u=e.gpuStages[h];n.attachShader(e.glProgram,u.glShader)}n.linkProgram(e.glProgram);for(var l=0;l<e.gpuStages.length;l++){var c=e.gpuStages[l];c.glShader&&(n.detachShader(e.glProgram,c.glShader),n.deleteShader(c.glShader),c.glShader=null)}if(!n.getProgramParameter(e.glProgram,n.LINK_STATUS))return it(16326,e.name),void H(n.getProgramInfoLog(e.glProgram));J(16325,e.name);var _=n.getProgramParameter(e.glProgram,n.ACTIVE_ATTRIBUTES);e.glInputs=new Array(_);for(var f=0;f<_;++f){var d=n.getActiveAttrib(e.glProgram,f);if(d){var p,m=d.name.indexOf("[");p=-1!==m?d.name.substr(0,m):d.name;var g=n.getAttribLocation(e.glProgram,p),v=IQt(d.type,n),y=DQt(d.type,n);e.glInputs[f]={name:p,type:v,stride:y,count:d.size,size:y*d.size,glType:d.type,glLoc:g}}}var T,A,b,E,C=n.getProgramParameter(e.glProgram,n.ACTIVE_UNIFORM_BLOCKS);if(C){e.glBlocks=new Array(C);for(var x=0;x<C;++x){var w=(T=n.getActiveUniformBlockName(e.glProgram,x)).indexOf("[");-1!==w&&(T=T.substr(0,w)),E=null;for(var R=0;R<e.blocks.length;R++)if(e.blocks[R].name===T){E=e.blocks[R];break}if(E){A=x,b=n.getActiveUniformBlockParameter(e.glProgram,A,n.UNIFORM_BLOCK_DATA_SIZE);var I=o?E.flattened:E.binding+(t.bindingMappings.blockOffsets[E.set]||0);n.uniformBlockBinding(e.glProgram,A,I),e.glBlocks[x]={set:E.set,binding:E.binding,idx:A,name:T,size:b,glBinding:I}}else H("Block '"+T+"' does not bound")}}for(var D=0;D<e.subpassInputs.length;++D){var B=e.subpassInputs[D];e.samplerTextures.push(new d_(B.set,B.binding,B.name,nc.SAMPLER2D,B.count))}if(e.samplerTextures.length>0){e.glSamplerTextures=new Array(e.samplerTextures.length);for(var M=0;M<e.samplerTextures.length;++M){var P=e.samplerTextures[M];e.glSamplerTextures[M]={set:P.set,binding:P.binding,name:P.name,type:P.type,count:P.count,units:[],glUnits:null,glType:RQt(P.type,n),glLoc:null}}}var O=[],L=[],N=t.stateCache.texUnitCacheMap;if(o)for(var F=0;F<e.samplerTextures.length;++F){var k=e.samplerTextures[F],G=n.getUniformLocation(e.glProgram,k.name);G&&-1!==G.id&&(O.push(e.glSamplerTextures[F]),L.push(G)),void 0===N[k.name]&&(N[k.name]=k.flattened%t.capabilities.maxTextureUnits)}else{for(var V=0,U=0;U<e.blocks.length;++U)e.blocks[U].set===t.bindingMappings.flexibleSet&&V++;for(var z=0,W=0;W<e.samplerTextures.length;++W){var X=e.samplerTextures[W],j=n.getUniformLocation(e.glProgram,X.name);if(j&&-1!==j.id&&(O.push(e.glSamplerTextures[W]),L.push(j)),void 0===N[X.name]){var Y=X.binding+t.bindingMappings.samplerTextureOffsets[X.set]+z;X.set===t.bindingMappings.flexibleSet&&(Y-=V),N[X.name]=Y%t.capabilities.maxTextureUnits,z+=X.count-1}}}if(O.length){for(var q=[],K=0;K<O.length;++K){var Q=O[K],Z=N[Q.name];if(void 0!==Z){Q.glLoc=L[K];for(var $=0;$<Q.count;++$){for(;q[Z];)Z=(Z+1)%t.capabilities.maxTextureUnits;Q.units.push(Z),q[Z]=!0}}}for(var tt=0,et=0;et<O.length;++et){var nt=O[et];if(!nt.glLoc){for(nt.glLoc=L[et];q[tt];)tt++;for(var rt=0;rt<nt.count;++rt){for(;q[tt];)tt=(tt+1)%t.capabilities.maxTextureUnits;void 0===N[nt.name]&&(N[nt.name]=tt),nt.units.push(tt),q[tt]=!0}}}t.stateCache.glProgram!==e.glProgram&&n.useProgram(e.glProgram);for(var st=0;st<O.length;st++){var at=O[st];at.glUnits=new Int32Array(at.units),n.uniform1iv(at.glLoc,at.glUnits)}t.stateCache.glProgram!==e.glProgram&&n.useProgram(t.stateCache.glProgram)}e.glSamplerTextures=O}}(EQt.instance,this._gpuShader),this._gpuShader}}]),e}(Cf),TZt=function(){function t(){this.glArrayBuffer=null,this.glElementArrayBuffer=null,this.glUniformBuffer=null,this.glBindUBOs=[],this.glBindUBOOffsets=[],this.glVAO=null,this.texUnit=0,this.glTexUnits=[],this.glSamplerUnits=[],this.glRenderbuffer=null,this.glFramebuffer=null,this.glReadFramebuffer=null,this.viewport=new $c,this.scissorRect=new jc(0,0,0,0),this.rs=new mf,this.dss=new gf,this.bs=new yf,this.glProgram=null,this.glEnabledAttribLocs=[],this.glCurrentAttribLocs=[],this.texUnitCacheMap={}}return t.prototype.initialize=function(t,e,i){for(var n=0;n<t;++n)this.glTexUnits.push({glTexture:null});this.glSamplerUnits.length=t,this.glSamplerUnits.fill(null),this.glBindUBOs.length=e,this.glBindUBOs.fill(null),this.glBindUBOOffsets.length=e,this.glBindUBOOffsets.fill(0),this.glEnabledAttribLocs.length=i,this.glEnabledAttribLocs.fill(!1),this.glCurrentAttribLocs.length=i,this.glCurrentAttribLocs.fill(!1)},t}(),AZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._gpuTexture=null,e._gpuTextureView=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t,e){var i=t,n=t;if("texture"in t&&(i=n.texture.info,this._isTextureView=!0),this._info.copy(i),this._isPowerOf2=Q_(this._info.width)&&Q_(this._info.height),this._size=J_(this._info.format,this.width,this.height,this.depth,this._info.levelCount)*this._info.layerCount,this._isTextureView){var r;if(this._viewInfo.copy(n),this._gpuTexture=n.texture._gpuTexture,(null===(r=this._gpuTexture)||void 0===r?void 0:r.format)!==i.format)return void console.log("GPU memory alias is not supported");this._gpuTextureView={gpuTexture:this._gpuTexture,type:n.type,format:n.format,baseLevel:n.baseLevel,levelCount:n.levelCount}}else this._gpuTexture={type:i.type,format:i.format,usage:i.usage,width:i.width,height:i.height,depth:i.depth,size:this._size,arrayLayer:i.layerCount,mipLevel:i.levelCount,samples:i.samples,flags:i.flags,isPowerOf2:this._isPowerOf2,glTarget:0,glInternalFmt:0,glFormat:0,glType:0,glUsage:0,glTexture:null,glRenderbuffer:null,glWrapS:0,glWrapT:0,glMinFilter:0,glMagFilter:0,isSwapchainTexture:e||!1},!this._gpuTexture.isSwapchainTexture&&this._gpuTexture&&(jQt(EQt.instance,this._gpuTexture),EQt.instance.memoryStatus.textureSize+=this._size),this._viewInfo.texture=this,this._viewInfo.type=t.type,this._viewInfo.format=t.format,this._viewInfo.baseLevel=0,this._viewInfo.levelCount=t.levelCount,this._viewInfo.baseLayer=0,this._viewInfo.layerCount=t.layerCount,this._gpuTextureView={gpuTexture:this._gpuTexture,type:this._viewInfo.type,format:this._viewInfo.format,baseLevel:this._viewInfo.baseLevel,levelCount:this._viewInfo.levelCount}},i.destroy=function(){!this._isTextureView&&this._gpuTexture&&(YQt(EQt.instance,this._gpuTexture),EQt.instance.memoryStatus.textureSize-=this._size,this._gpuTexture=null)},i.getTextureHandle=function(){var t=this._gpuTexture;return t?t.glTexture?t.glTexture:t.glRenderbuffer?t.glRenderbuffer:0:0},i.resize=function(t,i){if(this._info.width!==t||this._info.height!==i){this._info.levelCount===e.getLevelCount(this._info.width,this._info.height)?this._info.levelCount=e.getLevelCount(t,i):this._info.levelCount>1&&(this._info.levelCount=Math.min(this._info.levelCount,e.getLevelCount(t,i)));var n=this._size;this._info.width=t,this._info.height=i,this._size=J_(this._info.format,this.width,this.height,this.depth,this._info.levelCount)*this._info.layerCount,!this._isTextureView&&this._gpuTexture&&(this._gpuTexture.width=t,this._gpuTexture.height=i,this._gpuTexture.size=this._size,this._gpuTexture.isSwapchainTexture||(function(t,e){if(e.size){var i=t.gl,n=e.width,r=e.height,s=e.depth,a=e.arrayLayer;switch(e.type){case hc.TEX2D:e.glTarget=i.TEXTURE_2D;var o=Math.max(n,r);if(o>t.capabilities.maxTextureSize&&it(9100,o,t.capabilities.maxTextureSize),e.samples===_c.X1){var h=t.stateCache.glTexUnits[t.stateCache.texUnit];if(h.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_2D,e.glTexture),h.glTexture=e.glTexture),j_[e.format].isCompressed)for(var u=0;u<e.mipLevel;++u){var l=Z_(e.format,n,r,1),c=new Uint8Array(l);i.compressedTexImage2D(i.TEXTURE_2D,u,e.glInternalFmt,n,r,0,c),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else YQt(t,e),jQt(t,e)}else e.glRenderbuffer&&(t.stateCache.glRenderbuffer!==e.glRenderbuffer&&(i.bindRenderbuffer(i.RENDERBUFFER,e.glRenderbuffer),t.stateCache.glRenderbuffer=e.glRenderbuffer),i.renderbufferStorageMultisample(i.RENDERBUFFER,e.samples,e.glInternalFmt,e.width,e.height));break;case hc.TEX2D_ARRAY:e.glTarget=i.TEXTURE_2D_ARRAY;var _=Math.max(n,r);if(_>t.capabilities.maxTextureSize&&it(9100,_,t.capabilities.maxTextureSize),a>t.capabilities.maxArrayTextureLayers&&it(9100,a,t.capabilities.maxArrayTextureLayers),e.glTexture=i.createTexture(),e.size>0){var f=t.stateCache.glTexUnits[t.stateCache.texUnit];if(f.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_2D_ARRAY,e.glTexture),f.glTexture=e.glTexture),j_[e.format].isCompressed)for(var d=0;d<e.mipLevel;++d){var p=Z_(e.format,n,r,a),m=new Uint8Array(p);i.compressedTexImage3D(i.TEXTURE_2D_ARRAY,d,e.glInternalFmt,n,r,a,0,m),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else i.texStorage3D(i.TEXTURE_2D_ARRAY,e.mipLevel,e.glInternalFmt,n,r,a)}break;case hc.TEX3D:e.glTarget=i.TEXTURE_3D;var g=Math.max(Math.max(n,r),s);if(g>t.capabilities.max3DTextureSize&&it(9100,g,t.capabilities.max3DTextureSize),e.glTexture=i.createTexture(),e.size>0){var v=t.stateCache.glTexUnits[t.stateCache.texUnit];if(v.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_3D,e.glTexture),v.glTexture=e.glTexture),j_[e.format].isCompressed)for(var y=0;y<e.mipLevel;++y){var S=Z_(e.format,n,r,s),T=new Uint8Array(S);i.compressedTexImage3D(i.TEXTURE_3D,y,e.glInternalFmt,n,r,s,0,T),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}else i.texStorage3D(i.TEXTURE_3D,e.mipLevel,e.glInternalFmt,n,r,s)}break;case hc.CUBE:e.type=hc.CUBE,e.glTarget=i.TEXTURE_CUBE_MAP;var A=Math.max(n,r);A>t.capabilities.maxCubeMapTextureSize&&it(9100,A,t.capabilities.maxTextureSize);var b=t.stateCache.glTexUnits[t.stateCache.texUnit];if(b.glTexture!==e.glTexture&&(i.bindTexture(i.TEXTURE_CUBE_MAP,e.glTexture),b.glTexture=e.glTexture),j_[e.format].isCompressed)for(var E=0;E<6;++E){n=e.width,r=e.height;for(var C=0;C<e.mipLevel;++C){var x=Z_(e.format,n,r,1),w=new Uint8Array(x);i.compressedTexImage2D(i.TEXTURE_CUBE_MAP_POSITIVE_X+E,C,e.glInternalFmt,n,r,0,w),n=Math.max(1,n>>1),r=Math.max(1,r>>1)}}else YQt(t,e),jQt(t,e);break;default:it(16317),e.type=hc.TEX2D,e.glTarget=i.TEXTURE_2D}}}(EQt.instance,this._gpuTexture),EQt.instance.memoryStatus.textureSize-=n,EQt.instance.memoryStatus.textureSize+=this._size))}},i.initAsSwapchainTexture=function(t){var e=new u_;e.format=t.format,e.usage=j_[t.format].hasDepth?uc.DEPTH_STENCIL_ATTACHMENT:uc.COLOR_ATTACHMENT,e.width=t.width,e.height=t.height,this.initialize(e,!0)},n(e,[{key:"gpuTexture",get:function(){return this._gpuTexture}},{key:"gpuTextureView",get:function(){return this._gpuTextureView}}]),e}(xf),bZt="webglcontextlost";function EZt(t,e){for(var i=["","WEBKIT_","MOZ_"],n=0;n<i.length;++n){var r=t.getExtension(i[n]+e);if(r)return r}return null}function CZt(t){var e={EXT_texture_filter_anisotropic:EZt(t,"EXT_texture_filter_anisotropic"),EXT_color_buffer_half_float:EZt(t,"EXT_color_buffer_half_float"),EXT_color_buffer_float:EZt(t,"EXT_color_buffer_float"),WEBGL_compressed_texture_etc1:EZt(t,"WEBGL_compressed_texture_etc1"),WEBGL_compressed_texture_etc:EZt(t,"WEBGL_compressed_texture_etc"),WEBGL_compressed_texture_pvrtc:EZt(t,"WEBGL_compressed_texture_pvrtc"),WEBGL_compressed_texture_astc:EZt(t,"WEBGL_compressed_texture_astc"),WEBGL_compressed_texture_s3tc:EZt(t,"WEBGL_compressed_texture_s3tc"),WEBGL_compressed_texture_s3tc_srgb:EZt(t,"WEBGL_compressed_texture_s3tc_srgb"),WEBGL_debug_shaders:EZt(t,"WEBGL_debug_shaders"),WEBGL_lose_context:EZt(t,"WEBGL_lose_context"),WEBGL_debug_renderer_info:EZt(t,"WEBGL_debug_renderer_info"),OES_texture_half_float_linear:EZt(t,"OES_texture_half_float_linear"),OES_texture_float_linear:EZt(t,"OES_texture_float_linear"),WEBGL_multi_draw:null,useVAO:!0};return Zs.os!==Ys.ANDROID&&Zs.os!==Ys.IOS&&(e.WEBGL_multi_draw=EZt(t,"WEBGL_multi_draw")),e}var xZt=function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this).stateCache=new TZt,e.nullTex2D=null,e.nullTexCube=null,e._canvas=null,e._webGL2ContextLostHandler=null,e._extensions=null,e._blitManager=null,e}s(e,t);var i=e.prototype;return i.initialize=function(t){this._canvas=t.windowHandle,this._webGL2ContextLostHandler=this._onWebGLContextLost.bind(this),this._canvas.addEventListener(bZt,this._onWebGLContextLost);var e=EQt.instance.gl;this.stateCache.initialize(EQt.instance.capabilities.maxTextureUnits,EQt.instance.capabilities.maxUniformBufferBindings,EQt.instance.capabilities.maxVertexAttributes),this._extensions=CZt(e),function(t){t.activeTexture(t.TEXTURE0),t.pixelStorei(t.PACK_ALIGNMENT,1),t.pixelStorei(t.UNPACK_ALIGNMENT,1),t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL,!1),t.bindFramebuffer(t.FRAMEBUFFER,null),t.enable(t.SCISSOR_TEST),t.enable(t.CULL_FACE),t.cullFace(t.BACK),t.frontFace(t.CCW),t.polygonOffset(0,0),t.enable(t.DEPTH_TEST),t.depthMask(!0),t.depthFunc(t.LESS),t.stencilFuncSeparate(t.FRONT,t.ALWAYS,1,65535),t.stencilOpSeparate(t.FRONT,t.KEEP,t.KEEP,t.KEEP),t.stencilMaskSeparate(t.FRONT,65535),t.stencilFuncSeparate(t.BACK,t.ALWAYS,1,65535),t.stencilOpSeparate(t.BACK,t.KEEP,t.KEEP,t.KEEP),t.stencilMaskSeparate(t.BACK,65535),t.disable(t.STENCIL_TEST),t.disable(t.SAMPLE_ALPHA_TO_COVERAGE),t.disable(t.BLEND),t.blendEquationSeparate(t.FUNC_ADD,t.FUNC_ADD),t.blendFuncSeparate(t.ONE,t.ZERO,t.ONE,t.ZERO),t.colorMask(!0,!0,!0,!0),t.blendColor(0,0,0,0)}(e);var i=ec.RGBA8,n=ec.DEPTH_STENCIL,r=e.getParameter(e.DEPTH_BITS),s=e.getParameter(e.STENCIL_BITS);r&&s?n=ec.DEPTH_STENCIL:r&&(n=ec.DEPTH),this._colorTexture=new AZt,this._colorTexture.initAsSwapchainTexture({swapchain:this,format:i,width:t.width,height:t.height}),this._depthStencilTexture=new AZt,this._depthStencilTexture.initAsSwapchainTexture({swapchain:this,format:n,width:t.width,height:t.height}),this.nullTex2D=EQt.instance.createTexture(new u_(hc.TEX2D,uc.SAMPLED,ec.RGBA8,2,2,lc.NONE)),this.nullTexCube=EQt.instance.createTexture(new u_(hc.CUBE,uc.SAMPLED,ec.RGBA8,2,2,lc.NONE,6));var a=new Jc;a.texExtent.width=2,a.texExtent.height=2;var o=new Uint8Array(this.nullTex2D.size);o.fill(0),EQt.instance.copyBuffersToTexture([o],this.nullTex2D,[a]),a.texSubres.layerCount=6,EQt.instance.copyBuffersToTexture([o,o,o,o,o,o],this.nullTexCube,[a]),this._blitManager=new sZt},i.destroy=function(){this._canvas&&this._webGL2ContextLostHandler&&(this._canvas.removeEventListener(bZt,this._webGL2ContextLostHandler),this._webGL2ContextLostHandler=null),this.nullTex2D&&(this.nullTex2D.destroy(),this.nullTex2D=null),this.nullTexCube&&(this.nullTexCube.destroy(),this.nullTexCube=null),this._blitManager&&(this._blitManager.destroy(),this._blitManager=null),this._extensions=null,this._canvas=null},i.resize=function(t,e){this._colorTexture.width===t&&this._colorTexture.height===e||(X("Resizing swapchain: "+t+"x"+e),this._canvas.width=t,this._canvas.height=e,this._colorTexture.resize(t,e),this._depthStencilTexture.resize(t,e))},i._onWebGLContextLost=function(t){tt(11e3),z(t)},n(e,[{key:"extensions",get:function(){return this._extensions}},{key:"blitManager",get:function(){return this._blitManager}}]),e}(lf),wZt=t("h9",function(t){function e(){for(var e,i=arguments.length,n=new Array(i),r=0;r<i;r++)n[r]=arguments[r];return(e=t.call.apply(t,[this].concat(n))||this)._swapchain=null,e._context=null,e._bindingMappings=null,e._textureExclusive=new Array(ec.COUNT),e}s(e,t);var i=e.prototype;return i.initialize=function(t){EQt.setInstance(this),this._gfxAPI=Jl.WEBGL2;var e=this._bindingMappingInfo=t.bindingMappingInfo,i=[],n=[],r=e.setIndices[0];i[r]=0,n[r]=0;for(var s=1;s<e.setIndices.length;++s){var a=e.setIndices[s],o=e.setIndices[s-1];i[a]=e.maxBlockCounts[o]+i[o],n[a]=e.maxSamplerTextureCounts[o]+n[o]}for(var h=0;h<e.setIndices.length;++h){var u=e.setIndices[h];n[u]-=e.maxBlockCounts[u]}this._bindingMappings={blockOffsets:i,samplerTextureOffsets:n,flexibleSet:e.setIndices[e.setIndices.length-1]};var l=this._context=function(t){var e=null;try{var i;if(null!==(i=globalThis.__globalXR)&&void 0!==i&&i.webxrCompatible){var n={alpha:Pe.ENABLE_TRANSPARENT_CANVAS,antialias:Pe.ENABLE_WEBGL_ANTIALIAS,depth:!0,stencil:!0,premultipliedAlpha:!1,preserveDrawingBuffer:!1,powerPreference:"default",failIfMajorPerformanceCaveat:!1,xrCompatible:!0};return t.getContext("webgl2",n)}var r={alpha:Pe.ENABLE_TRANSPARENT_CANVAS,antialias:Pe.ENABLE_WEBGL_ANTIALIAS,depth:!0,stencil:!0,premultipliedAlpha:!1,preserveDrawingBuffer:!1,powerPreference:"default",failIfMajorPerformanceCaveat:!1};e=t.getContext("webgl2",r)}catch(t){return null}return e}(hf.canvas);if(!l)return H("This device does not support WebGL2."),!1;if(this._queue=this.createQueue(new G_(Oc.GRAPHICS)),this._cmdBuff=this.createCommandBuffer(new k_(this._queue)),this._caps.maxVertexAttributes=l.getParameter(l.MAX_VERTEX_ATTRIBS),this._caps.maxVertexUniformVectors=l.getParameter(l.MAX_VERTEX_UNIFORM_VECTORS),Zs.os===Ys.IOS){var c=this._caps.maxVertexUniformVectors;Sa.browserType===Ws.WECHAT?this._caps.maxVertexUniformVectors=c<256?c:256:Sa.browserType===Ws.SAFARI&&(this._caps.maxVertexUniformVectors=c<512?c:512)}this._caps.maxFragmentUniformVectors=l.getParameter(l.MAX_FRAGMENT_UNIFORM_VECTORS),this._caps.maxTextureUnits=l.getParameter(l.MAX_TEXTURE_IMAGE_UNITS),this._caps.maxVertexTextureUnits=l.getParameter(l.MAX_VERTEX_TEXTURE_IMAGE_UNITS),this._caps.maxUniformBufferBindings=l.getParameter(l.MAX_UNIFORM_BUFFER_BINDINGS),this._caps.maxUniformBlockSize=l.getParameter(l.MAX_UNIFORM_BLOCK_SIZE),this._caps.maxTextureSize=l.getParameter(l.MAX_TEXTURE_SIZE),this._caps.maxCubeMapTextureSize=l.getParameter(l.MAX_CUBE_MAP_TEXTURE_SIZE),this._caps.maxArrayTextureLayers=l.getParameter(l.MAX_ARRAY_TEXTURE_LAYERS),this._caps.max3DTextureSize=l.getParameter(l.MAX_3D_TEXTURE_SIZE),this._caps.uboOffsetAlignment=l.getParameter(l.UNIFORM_BUFFER_OFFSET_ALIGNMENT);var _=l.getSupportedExtensions(),d="";if(_)for(var p,m=f(_);!(p=m()).done;)d+=p.value+" ";var g=CZt(l);g.WEBGL_debug_renderer_info?(this._renderer=l.getParameter(g.WEBGL_debug_renderer_info.UNMASKED_RENDERER_WEBGL),this._vendor=l.getParameter(g.WEBGL_debug_renderer_info.UNMASKED_VENDOR_WEBGL)):(this._renderer=l.getParameter(l.RENDERER),this._vendor=l.getParameter(l.VENDOR));var v=l.getParameter(l.VERSION);this._features.fill(!1),this.initFormatFeatures(g),this._features[tc.ELEMENT_INDEX_UINT]=!0,this._features[tc.INSTANCED_ARRAYS]=!0,this._features[tc.MULTIPLE_RENDER_TARGETS]=!0,this._features[tc.BLEND_MINMAX]=!0;var y="";return this.getFormatFeatures(ec.ETC_RGB8)&&(y+="etc1 "),this.getFormatFeatures(ec.ETC2_RGB8)&&(y+="etc2 "),this.getFormatFeatures(ec.BC1)&&(y+="dxt "),this.getFormatFeatures(ec.PVRTC_RGB2)&&(y+="pvrtc "),this.getFormatFeatures(ec.ASTC_RGBA_4X4)&&(y+="astc "),X("WebGL2 device initialized."),X("RENDERER: "+this._renderer),X("VENDOR: "+this._vendor),X("VERSION: "+v),X("COMPRESSED_FORMAT: "+y),X("EXTENSIONS: "+d),!0},i.destroy=function(){this._queue&&(this._queue.destroy(),this._queue=null),this._cmdBuff&&(this._cmdBuff.destroy(),this._cmdBuff=null);for(var t=this._samplers.values(),e=t.next();!e.done;)e.value.destroy(),e=t.next();this._swapchain=null},i.flushCommands=function(){},i.acquire=function(){},i.present=function(){var t=this._queue;this._numDrawCalls=t.numDrawCalls,this._numInstances=t.numInstances,this._numTris=t.numTris,t.clear()},i.initFormatFeatures=function(t){this._formatFeatures.fill(cc.NONE),this._textureExclusive.fill(!0);var e=cc.RENDER_TARGET|cc.SAMPLED_TEXTURE|cc.STORAGE_TEXTURE|cc.LINEAR_FILTER|cc.VERTEX_ATTRIBUTE;this._formatFeatures[ec.R8]=e,this._formatFeatures[ec.RG8]=e,this._formatFeatures[ec.RGB8]=e,this._formatFeatures[ec.RGBA8]=e,e=cc.RENDER_TARGET|cc.SAMPLED_TEXTURE|cc.STORAGE_TEXTURE|cc.LINEAR_FILTER,this._formatFeatures[ec.R8SN]=e,this._formatFeatures[ec.RG8SN]=e,this._formatFeatures[ec.RGB8SN]=e,this._formatFeatures[ec.RGBA8SN]=e,this._formatFeatures[ec.R5G6B5]=e,this._formatFeatures[ec.RGBA4]=e,this._formatFeatures[ec.RGB5A1]=e,this._formatFeatures[ec.RGB10A2]=e,this._formatFeatures[ec.SRGB8]=e,this._formatFeatures[ec.SRGB8_A8]=e,this._formatFeatures[ec.R11G11B10F]=e,this._formatFeatures[ec.RGB9E5]=e,this._formatFeatures[ec.DEPTH]=e,this._formatFeatures[ec.DEPTH_STENCIL]=e,this._formatFeatures[ec.RGB10A2UI]=cc.RENDER_TARGET|cc.STORAGE_TEXTURE|cc.SAMPLED_TEXTURE|cc.LINEAR_FILTER,e=cc.RENDER_TARGET|cc.SAMPLED_TEXTURE|cc.STORAGE_TEXTURE|cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.R16F]=e,this._formatFeatures[ec.RG16F]=e,this._formatFeatures[ec.RGB16F]=e,this._formatFeatures[ec.RGBA16F]=e,e=cc.STORAGE_TEXTURE|cc.SAMPLED_TEXTURE|cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.R32F]=e,this._formatFeatures[ec.RG32F]=e,this._formatFeatures[ec.RGB32F]=e,this._formatFeatures[ec.RGBA32F]=e,this._formatFeatures[ec.RGB10A2UI]=cc.RENDER_TARGET|cc.STORAGE_TEXTURE|cc.SAMPLED_TEXTURE|cc.LINEAR_FILTER,e=cc.RENDER_TARGET|cc.STORAGE_TEXTURE|cc.SAMPLED_TEXTURE|cc.LINEAR_FILTER|cc.VERTEX_ATTRIBUTE,this._formatFeatures[ec.R8I]=e,this._formatFeatures[ec.R8UI]=e,this._formatFeatures[ec.R16I]=e,this._formatFeatures[ec.R16UI]=e,this._formatFeatures[ec.R32I]=e,this._formatFeatures[ec.R32UI]=e,this._formatFeatures[ec.RG8I]=e,this._formatFeatures[ec.RG8UI]=e,this._formatFeatures[ec.RG16I]=e,this._formatFeatures[ec.RG16UI]=e,this._formatFeatures[ec.RG32I]=e,this._formatFeatures[ec.RG32UI]=e,this._formatFeatures[ec.RGB8I]=e,this._formatFeatures[ec.RGB8UI]=e,this._formatFeatures[ec.RGB16I]=e,this._formatFeatures[ec.RGB16UI]=e,this._formatFeatures[ec.RGB32I]=e,this._formatFeatures[ec.RGB32UI]=e,this._formatFeatures[ec.RGBA8I]=e,this._formatFeatures[ec.RGBA8UI]=e,this._formatFeatures[ec.RGBA16I]=e,this._formatFeatures[ec.RGBA16UI]=e,this._formatFeatures[ec.RGBA32I]=e,this._formatFeatures[ec.RGBA32UI]=e,this._textureExclusive[ec.R8]=!1,this._textureExclusive[ec.RG8]=!1,this._textureExclusive[ec.RGB8]=!1,this._textureExclusive[ec.R5G6B5]=!1,this._textureExclusive[ec.RGBA4]=!1,this._textureExclusive[ec.RGB5A1]=!1,this._textureExclusive[ec.RGBA8]=!1,this._textureExclusive[ec.RGB10A2]=!1,this._textureExclusive[ec.RGB10A2UI]=!1,this._textureExclusive[ec.SRGB8_A8]=!1,this._textureExclusive[ec.R8I]=!1,this._textureExclusive[ec.R8UI]=!1,this._textureExclusive[ec.R16I]=!1,this._textureExclusive[ec.R16UI]=!1,this._textureExclusive[ec.R32I]=!1,this._textureExclusive[ec.R32UI]=!1,this._textureExclusive[ec.RG8I]=!1,this._textureExclusive[ec.RG8UI]=!1,this._textureExclusive[ec.RG16I]=!1,this._textureExclusive[ec.RG16UI]=!1,this._textureExclusive[ec.RG32I]=!1,this._textureExclusive[ec.RG32UI]=!1,this._textureExclusive[ec.RGBA8I]=!1,this._textureExclusive[ec.RGBA8UI]=!1,this._textureExclusive[ec.RGBA16I]=!1,this._textureExclusive[ec.RGBA16UI]=!1,this._textureExclusive[ec.RGBA32I]=!1,this._textureExclusive[ec.RGBA32UI]=!1,this._textureExclusive[ec.DEPTH]=!1,this._textureExclusive[ec.DEPTH_STENCIL]=!1,t.EXT_color_buffer_float&&(this._formatFeatures[ec.R32F]|=cc.RENDER_TARGET,this._formatFeatures[ec.RG32F]|=cc.RENDER_TARGET,this._formatFeatures[ec.RGBA32F]|=cc.RENDER_TARGET,this._textureExclusive[ec.R32F]=!1,this._textureExclusive[ec.RG32F]=!1,this._textureExclusive[ec.RGBA32F]=!1),t.EXT_color_buffer_half_float&&(this._textureExclusive[ec.R16F]=!1,this._textureExclusive[ec.RG16F]=!1,this._textureExclusive[ec.RGBA16F]=!1),t.OES_texture_float_linear&&(this._formatFeatures[ec.RGB32F]|=cc.LINEAR_FILTER,this._formatFeatures[ec.RGBA32F]|=cc.LINEAR_FILTER,this._formatFeatures[ec.R32F]|=cc.LINEAR_FILTER,this._formatFeatures[ec.RG32F]|=cc.LINEAR_FILTER),t.OES_texture_half_float_linear&&(this._formatFeatures[ec.RGB16F]|=cc.LINEAR_FILTER,this._formatFeatures[ec.RGBA16F]|=cc.LINEAR_FILTER,this._formatFeatures[ec.R16F]|=cc.LINEAR_FILTER,this._formatFeatures[ec.RG16F]|=cc.LINEAR_FILTER);var i=cc.SAMPLED_TEXTURE|cc.LINEAR_FILTER;t.WEBGL_compressed_texture_etc1&&(this._formatFeatures[ec.ETC_RGB8]=i),t.WEBGL_compressed_texture_etc&&(this._formatFeatures[ec.ETC2_RGB8]=i,this._formatFeatures[ec.ETC2_RGBA8]=i,this._formatFeatures[ec.ETC2_SRGB8]=i,this._formatFeatures[ec.ETC2_SRGB8_A8]=i,this._formatFeatures[ec.ETC2_RGB8_A1]=i,this._formatFeatures[ec.ETC2_SRGB8_A1]=i),t.WEBGL_compressed_texture_s3tc&&(this._formatFeatures[ec.BC1]=i,this._formatFeatures[ec.BC1_ALPHA]=i,this._formatFeatures[ec.BC1_SRGB]=i,this._formatFeatures[ec.BC1_SRGB_ALPHA]=i,this._formatFeatures[ec.BC2]=i,this._formatFeatures[ec.BC2_SRGB]=i,this._formatFeatures[ec.BC3]=i,this._formatFeatures[ec.BC3_SRGB]=i),t.WEBGL_compressed_texture_pvrtc&&(this._formatFeatures[ec.PVRTC_RGB2]=i,this._formatFeatures[ec.PVRTC_RGBA2]=i,this._formatFeatures[ec.PVRTC_RGB4]=i,this._formatFeatures[ec.PVRTC_RGBA4]=i),t.WEBGL_compressed_texture_astc&&(this._formatFeatures[ec.ASTC_RGBA_4X4]=i,this._formatFeatures[ec.ASTC_RGBA_5X4]=i,this._formatFeatures[ec.ASTC_RGBA_5X5]=i,this._formatFeatures[ec.ASTC_RGBA_6X5]=i,this._formatFeatures[ec.ASTC_RGBA_6X6]=i,this._formatFeatures[ec.ASTC_RGBA_8X5]=i,this._formatFeatures[ec.ASTC_RGBA_8X6]=i,this._formatFeatures[ec.ASTC_RGBA_8X8]=i,this._formatFeatures[ec.ASTC_RGBA_10X5]=i,this._formatFeatures[ec.ASTC_RGBA_10X6]=i,this._formatFeatures[ec.ASTC_RGBA_10X8]=i,this._formatFeatures[ec.ASTC_RGBA_10X10]=i,this._formatFeatures[ec.ASTC_RGBA_12X10]=i,this._formatFeatures[ec.ASTC_RGBA_12X12]=i,this._formatFeatures[ec.ASTC_SRGBA_4X4]=i,this._formatFeatures[ec.ASTC_SRGBA_5X4]=i,this._formatFeatures[ec.ASTC_SRGBA_5X5]=i,this._formatFeatures[ec.ASTC_SRGBA_6X5]=i,this._formatFeatures[ec.ASTC_SRGBA_6X6]=i,this._formatFeatures[ec.ASTC_SRGBA_8X5]=i,this._formatFeatures[ec.ASTC_SRGBA_8X6]=i,this._formatFeatures[ec.ASTC_SRGBA_8X8]=i,this._formatFeatures[ec.ASTC_SRGBA_10X5]=i,this._formatFeatures[ec.ASTC_SRGBA_10X6]=i,this._formatFeatures[ec.ASTC_SRGBA_10X8]=i,this._formatFeatures[ec.ASTC_SRGBA_10X10]=i,this._formatFeatures[ec.ASTC_SRGBA_12X10]=i,this._formatFeatures[ec.ASTC_SRGBA_12X12]=i)},i.createCommandBuffer=function(t){var e=new(t.type===Nc.PRIMARY?mZt:uZt);return e.initialize(t),e},i.createSwapchain=function(t){var e=new xZt;return this._swapchain=e,e.initialize(t),e},i.createBuffer=function(t){var e=new aZt;return e.initialize(t),e},i.createTexture=function(t){var e=new AZt;return e.initialize(t),e},i.createDescriptorSet=function(t){var e=new bQt;return e.initialize(t),e},i.createShader=function(t){var e=new SZt;return e.initialize(t),e},i.createInputAssembler=function(t){var e=new cZt;return e.initialize(t),e},i.createRenderPass=function(t){var e=new vZt;return e.initialize(t),e},i.createFramebuffer=function(t){var e=new lZt;return e.initialize(t),e},i.createDescriptorSetLayout=function(t){var e=new _Zt;return e.initialize(t),e},i.createPipelineLayout=function(t){var e=new fZt;return e.initialize(t),e},i.createPipelineState=function(t){var e=new pZt;return e.initialize(t),e},i.createQueue=function(t){var e=new gZt;return e.initialize(t),e},i.getSampler=function(t){var e=Ef.computeHash(t);return this._samplers.has(e)||this._samplers.set(e,new yZt(t,e)),this._samplers.get(e)},i.getSwapchains=function(){return[this._swapchain]},i.getGeneralBarrier=function(t){var e=wf.computeHash(t);return this._generalBarrierss.has(e)||this._generalBarrierss.set(e,new wf(t,e)),this._generalBarrierss.get(e)},i.getTextureBarrier=function(t){var e=Rf.computeHash(t);return this._textureBarriers.has(e)||this._textureBarriers.set(e,new Rf(t,e)),this._textureBarriers.get(e)},i.getBufferBarrier=function(t){var e=If.computeHash(t);return this._bufferBarriers.has(e)||this._bufferBarriers.set(e,new If(t,e)),this._bufferBarriers.get(e)},i.copyBuffersToTexture=function(t,e,i){iZt(this,t,e.gpuTexture,i)},i.copyTextureToBuffers=function(t,e,i){!function(t,e,i,n){var r=t.gl,s=t.stateCache,a=r.createFramebuffer();r.bindFramebuffer(r.FRAMEBUFFER,a);var o=0,h=0,u=1,l=1;switch(e.glTarget){case r.TEXTURE_2D:for(var c=0;c<n.length;c++){var _=n[c];r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,e.glTarget,e.glTexture,_.texSubres.mipLevel),o=_.texOffset.x,h=_.texOffset.y,u=_.texExtent.width,l=_.texExtent.height,r.readPixels(o,h,u,l,e.glFormat,e.glType,i[c])}break;default:H("Unsupported GL texture type, copy texture to buffers failed.")}r.bindFramebuffer(r.FRAMEBUFFER,null),s.glFramebuffer=null,r.deleteFramebuffer(a)}(this,t.gpuTexture,e,i)},i.copyTexImagesToTexture=function(t,e,i){!function(t,e,i,n){var r=t.gl,s=t.stateCache.glTexUnits[t.stateCache.texUnit];s.glTexture!==i.glTexture&&(r.bindTexture(i.glTarget,i.glTexture),s.glTexture=i.glTexture);var a=0,o=0;switch(i.glTarget){case r.TEXTURE_2D:if(i.flags&lc.MUTABLE_STORAGE||function(t,e){if(t.length>1||e.length>1)return!1;if(t[0]instanceof HTMLVideoElement){var i=t[0];return 0===e[0].texOffset.x&&0===e[0].texOffset.y&&e[0].texExtent.width===i.videoWidth&&e[0].texExtent.height===i.videoHeight}return!1}(e,n))r.texImage2D(r.TEXTURE_2D,n[0].texSubres.mipLevel,i.glInternalFmt,n[0].texExtent.width,n[0].texExtent.height,0,i.glFormat,i.glType,e[0]);else for(var h=0;h<n.length;h++){var u=n[h];r.texSubImage2D(r.TEXTURE_2D,u.texSubres.mipLevel,u.texOffset.x,u.texOffset.y,i.glFormat,i.glType,e[a++])}break;case r.TEXTURE_CUBE_MAP:for(var l=0;l<n.length;l++){var c=n[l],_=c.texSubres.baseArrayLayer+c.texSubres.layerCount;for(o=c.texSubres.baseArrayLayer;o<_;++o)r.texSubImage2D(r.TEXTURE_CUBE_MAP_POSITIVE_X+o,c.texSubres.mipLevel,c.texOffset.x,c.texOffset.y,i.glFormat,i.glType,e[a++])}break;default:it(16327)}i.flags&lc.GEN_MIPMAP&&r.generateMipmap(i.glTarget)}(this,t,e.gpuTexture,i)},n(e,[{key:"gl",get:function(){return this._context}},{key:"extensions",get:function(){return this._swapchain.extensions}},{key:"stateCache",get:function(){return this._swapchain.stateCache}},{key:"nullTex2D",get:function(){return this._swapchain.nullTex2D}},{key:"nullTexCube",get:function(){return this._swapchain.nullTexCube}},{key:"textureExclusive",get:function(){return this._textureExclusive}},{key:"bindingMappings",get:function(){return this._bindingMappings}},{key:"blitManager",get:function(){return this._swapchain.blitManager}}]),e}(hf));S.WebGL2Device=wZt}}}));
|