MINI MINI MANI MO

Path : /var/www/html/sistemas/saplxi/public/js/
File Upload :
Current File : /var/www/html/sistemas/saplxi/public/js/particles.js

!function(t){var e={};function n(i){if(e[i])return e[i].exports;var r=e[i]={i,l:!1,exports:{}};return t[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e||4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var r in t)n.d(i,r,(function(e){return t[e]}).bind(null,r));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=403)}([function(t,e,n){"use strict";(function(t,i){n.d(e,"k",function(){return r}),n.d(e,"m",function(){return a}),n.d(e,"l",function(){return o}),n.d(e,"i",function(){return u}),n.d(e,"a",function(){return l}),n.d(e,"b",function(){return h}),n.d(e,"c",function(){return c}),n.d(e,"d",function(){return p}),n.d(e,"e",function(){return d}),n.d(e,"f",function(){return f}),n.d(e,"g",function(){return m}),n.d(e,"h",function(){return g}),n.d(e,"j",function(){return v});var r="undefined"!=typeof window?window:void 0!==t&&t.exports&&void 0!==i?i:{},o=function(t,e){var n={},i=t.document,r=t.GreenSockGlobals=t.GreenSockGlobals||t;if(r.TweenLite)return r.TweenLite;var o,a,s,u,l,h,c,p=function(t){var e,n=t.split("."),i=r;for(e=0;e<n.length;e++)i[n[e]]=i=i[n[e]]||{};return i},d=p("com.greensock"),f=function(t){var e,n=[],i=t.length;for(e=0;e!==i;n.push(t[e++]));return n},m=function(){},g=(a=(o=Object.prototype.toString).call([]),function(t){return null!=t&&(t instanceof Array||"object"==typeof t&&!!t.push&&o.call(t)===a)}),v={},$=function(t,e,i,o){this.sc=v[t]?v[t].sc:[],v[t]=this,this.gsClass=null,this.func=i;var a=[];this.check=function(s){for(var u,l,h,c,d=e.length,f=d;--d>-1;)(u=v[e[d]]||new $(e[d],[])).gsClass?(a[d]=u.gsClass,f--):s&&u.sc.push(this);if(0===f&&i)for(h=(l=("com.greensock."+t).split(".")).pop(),c=p(l.join("."))[h]=this.gsClass=i.apply(i,a),o&&(r[h]=n[h]=c),d=0;d<this.sc.length;d++)this.sc[d].check()},this.check(!0)},y=t._gsDefine=function(t,e,n,i){return new $(t,e,n,i)},_=d._class=function(t,e,n){return e=e||function(){},y(t,[],function(){return e},n),e};y.globals=r;var x=[0,0,1,1],b=_("easing.Ease",function(t,e,n,i){this._func=t,this._type=n||0,this._power=i||0,this._params=e?x.concat(e):x},!0),w=b.map={},A=b.register=function(t,e,n,i){for(var r,o,a,s,u=e.split(","),l=u.length,h=(n||"easeIn,easeOut,easeInOut").split(",");--l>-1;)for(o=u[l],r=i?_("easing."+o,null,!0):d.easing[o]||{},a=h.length;--a>-1;)w[o+"."+(s=h[a])]=w[s+o]=r[s]=t.getRatio?t:t[s]||new t};for((l=b.prototype)._calcEnd=!1,l.getRatio=function(t){if(this._func)return this._params[0]=t,this._func.apply(null,this._params);var e=this._type,n=this._power,i=1===e?1-t:2===e?t:t<.5?2*t:2*(1-t);return 1===n?i*=i:2===n?i*=i*i:3===n?i*=i*i*i:4===n&&(i*=i*i*i*i),1===e?1-i:2===e?i:t<.5?i/2:1-i/2},u=(s=["Linear","Quad","Cubic","Quart","Quint,Strong"]).length;--u>-1;)l=s[u]+",Power"+u,A(new b(null,null,1,u),l,"easeOut",!0),A(new b(null,null,2,u),l,"easeIn"+(0===u?",easeNone":"")),A(new b(null,null,3,u),l,"easeInOut");w.linear=d.easing.Linear.easeIn,w.swing=d.easing.Quad.easeInOut;var T=_("events.EventDispatcher",function(t){this._listeners={},this._eventTarget=t||this});(l=T.prototype).addEventListener=function(t,e,n,i,r){r=r||0;var o,a,s=this._listeners[t],u=0;for(this!==h||c||h.wake(),null==s&&(this._listeners[t]=s=[]),a=s.length;--a>-1;)(o=s[a]).c===e&&o.s===n?s.splice(a,1):0===u&&o.pr<r&&(u=a+1);s.splice(u,0,{c:e,s:n,up:i,pr:r})},l.removeEventListener=function(t,e){var n,i=this._listeners[t];if(i){for(n=i.length;--n>-1;)if(i[n].c===e)return void i.splice(n,1)}},l.dispatchEvent=function(t){var e,n,i,r=this._listeners[t];if(r)for((e=r.length)>1&&(r=r.slice(0)),n=this._eventTarget;--e>-1;)(i=r[e])&&(i.up?i.c.call(i.s||n,{type:t,target:n}):i.c.call(i.s||n))};var S=t.requestAnimationFrame,E=t.cancelAnimationFrame,P=Date.now||function(){return(new Date).getTime()},C=P();for(u=(s=["ms","moz","webkit","o"]).length;--u>-1&&!S;)S=t[s[u]+"RequestAnimationFrame"],E=t[s[u]+"CancelAnimationFrame"]||t[s[u]+"CancelRequestAnimationFrame"];_("Ticker",function(t,e){var n,r,o,a,s,u=this,l=P(),p=!(!1===e||!S)&&"auto",d=500,f=33,g=function(t){var e,i,h=P()-C;h>d&&(l+=h-f),C+=h,u.time=(C-l)/1e3,e=u.time-s,(!n||e>0||!0===t)&&(u.frame++,s+=e+(e>=a?.004:a-e),i=!0),!0!==t&&(o=r(g)),i&&u.dispatchEvent("tick")};T.call(u),u.time=u.frame=0,u.tick=function(){g(!0)},u.lagSmoothing=function(t,e){if(!arguments.length)return d<1e10;f=Math.min(e,d=t||1e10,0)},u.sleep=function(){null!=o&&(p&&E?E(o):clearTimeout(o),r=m,o=null,u===h&&(c=!1))},u.wake=function(t){null!==o?u.sleep():t?l+=-C+(C=P()):u.frame>10&&(C=P()-d+5),r=0===n?m:p&&S?S:function(t){return setTimeout(t,1e3*(s-u.time)+1|0)},u===h&&(c=!0),g(2)},u.fps=function(t){if(!arguments.length)return n;a=1/((n=t)||60),s=this.time+a,u.wake()},u.useRAF=function(t){if(!arguments.length)return p;u.sleep(),p=t,u.fps(n)},u.fps(t),setTimeout(function(){"auto"===p&&u.frame<5&&"hidden"!==(i||{}).visibilityState&&u.useRAF(!1)},1500)}),(l=d.Ticker.prototype=new d.events.EventDispatcher).constructor=d.Ticker;var L=_("core.Animation",function(t,e){if(this.vars=e=e||{},this._duration=this._totalDuration=t||0,this._delay=Number(e.delay)||0,this._timeScale=1,this._active=!0===e.immediateRender,this.data=e.data,this._reversed=!0===e.reversed,j){c||h.wake();var n=this.vars.useFrames?K:j;n.add(this,n._time),this.vars.paused&&this.paused(!0)}});h=L.ticker=new d.Ticker,(l=L.prototype)._dirty=l._gc=l._initted=l._paused=!1,l._totalTime=l._time=0,l._rawPrevTime=-1,l._next=l._last=l._onUpdate=l._timeline=l.timeline=null,l._paused=!1;var M=function(){c&&P()-C>2e3&&("hidden"!==(i||{}).visibilityState||!h.lagSmoothing())&&h.wake();var t=setTimeout(M,2e3);t.unref&&t.unref()};M(),l.play=function(t,e){return null!=t&&this.seek(t,e),this.reversed(!1).paused(!1)},l.pause=function(t,e){return null!=t&&this.seek(t,e),this.paused(!0)},l.resume=function(t,e){return null!=t&&this.seek(t,e),this.paused(!1)},l.seek=function(t,e){return this.totalTime(Number(t),!1!==e)},l.restart=function(t,e){return this.reversed(!1).paused(!1).totalTime(t?-this._delay:0,!1!==e,!0)},l.reverse=function(t,e){return null!=t&&this.seek(t||this.totalDuration(),e),this.reversed(!0).paused(!1)},l.render=function(t,e,n){},l.invalidate=function(){return this._time=this._totalTime=0,this._initted=this._gc=!1,this._rawPrevTime=-1,!this._gc&&this.timeline||this._enabled(!0),this},l.isActive=function(){var t,e=this._timeline,n=this._startTime;return!e||!this._gc&&!this._paused&&e.isActive()&&(t=e.rawTime(!0))>=n&&t<n+this.totalDuration()/this._timeScale-1e-7},l._enabled=function(t,e){return c||h.wake(),this._gc=!t,this._active=this.isActive(),!0!==e&&(t&&!this.timeline?this._timeline.add(this,this._startTime-this._delay):!t&&this.timeline&&this._timeline._remove(this,!0)),!1},l._kill=function(t,e){return this._enabled(!1,!1)},l.kill=function(t,e){return this._kill(t,e),this},l._uncache=function(t){for(var e=t?this:this.timeline;e;)e._dirty=!0,e=e.timeline;return this},l._swapSelfInParams=function(t){for(var e=t.length,n=t.concat();--e>-1;)"{self}"===t[e]&&(n[e]=this);return n},l._callback=function(t){var e=this.vars,n=e[t],i=e[t+"Params"],r=e[t+"Scope"]||e.callbackScope||this;switch(i?i.length:0){case 0:n.call(r);break;case 1:n.call(r,i[0]);break;case 2:n.call(r,i[0],i[1]);break;default:n.apply(r,i)}},l.eventCallback=function(t,e,n,i){if("on"===(t||"").substr(0,2)){var r=this.vars;if(1===arguments.length)return r[t];null==e?delete r[t]:(r[t]=e,r[t+"Params"]=g(n)&&-1!==n.join("").indexOf("{self}")?this._swapSelfInParams(n):n,r[t+"Scope"]=i),"onUpdate"===t&&(this._onUpdate=e)}return this},l.delay=function(t){return arguments.length?(this._timeline.smoothChildTiming&&this.startTime(this._startTime+t-this._delay),this._delay=t,this):this._delay},l.duration=function(t){return arguments.length?(this._duration=this._totalDuration=t,this._uncache(!0),this._timeline.smoothChildTiming&&this._time>0&&this._time<this._duration&&0!==t&&this.totalTime(this._totalTime*(t/this._duration),!0),this):(this._dirty=!1,this._duration)},l.totalDuration=function(t){return this._dirty=!1,arguments.length?this.duration(t):this._totalDuration},l.time=function(t,e){return arguments.length?(this._dirty&&this.totalDuration(),this.totalTime(t>this._duration?this._duration:t,e)):this._time},l.totalTime=function(t,e,n){if(c||h.wake(),!arguments.length)return this._totalTime;if(this._timeline){if(t<0&&!n&&(t+=this.totalDuration()),this._timeline.smoothChildTiming){this._dirty&&this.totalDuration();var i=this._totalDuration,r=this._timeline;if(t>i&&!n&&(t=i),this._startTime=(this._paused?this._pauseTime:r._time)-(this._reversed?i-t:t)/this._timeScale,r._dirty||this._uncache(!1),r._timeline)for(;r._timeline;)r._timeline._time!==(r._startTime+r._totalTime)/r._timeScale&&r.totalTime(r._totalTime,!0),r=r._timeline}this._gc&&this._enabled(!0,!1),this._totalTime===t&&0!==this._duration||(N.length&&q(),this.render(t,e,!1),N.length&&q())}return this},l.progress=l.totalProgress=function(t,e){var n=this.duration();return arguments.length?this.totalTime(n*t,e):n?this._time/n:this.ratio},l.startTime=function(t){return arguments.length?(t!==this._startTime&&(this._startTime=t,this.timeline&&this.timeline._sortChildren&&this.timeline.add(this,t-this._delay)),this):this._startTime},l.endTime=function(t){return this._startTime+(0!=t?this.totalDuration():this.duration())/this._timeScale},l.timeScale=function(t){var e,n;if(!arguments.length)return this._timeScale;for(t=t||1e-10,this._timeline&&this._timeline.smoothChildTiming&&(n=(e=this._pauseTime)||0===e?e:this._timeline.totalTime(),this._startTime=n-(n-this._startTime)*this._timeScale/t),this._timeScale=t,n=this.timeline;n&&n.timeline;)n._dirty=!0,n.totalDuration(),n=n.timeline;return this},l.reversed=function(t){return arguments.length?(t!=this._reversed&&(this._reversed=t,this.totalTime(this._timeline&&!this._timeline.smoothChildTiming?this.totalDuration()-this._totalTime:this._totalTime,!0)),this):this._reversed},l.paused=function(t){if(!arguments.length)return this._paused;var e,n,i=this._timeline;return t!=this._paused&&i&&(c||t||h.wake(),n=(e=i.rawTime())-this._pauseTime,!t&&i.smoothChildTiming&&(this._startTime+=n,this._uncache(!1)),this._pauseTime=t?e:null,this._paused=t,this._active=this.isActive(),!t&&0!==n&&this._initted&&this.duration()&&(e=i.smoothChildTiming?this._totalTime:(e-this._startTime)/this._timeScale,this.render(e,e===this._totalTime,!0))),this._gc&&!t&&this._enabled(!0,!1),this};var R=_("core.SimpleTimeline",function(t){L.call(this,0,t),this.autoRemoveChildren=this.smoothChildTiming=!0});(l=R.prototype=new L).constructor=R,l.kill()._gc=!1,l._first=l._last=l._recent=null,l._sortChildren=!1,l.add=l.insert=function(t,e,n,i){var r,o;if(t._startTime=Number(e||0)+t._delay,t._paused&&this!==t._timeline&&(t._pauseTime=this.rawTime()-(t._timeline.rawTime()-t._pauseTime)),t.timeline&&t.timeline._remove(t,!0),t.timeline=t._timeline=this,t._gc&&t._enabled(!0,!0),r=this._last,this._sortChildren)for(o=t._startTime;r&&r._startTime>o;)r=r._prev;return r?(t._next=r._next,r._next=t):(t._next=this._first,this._first=t),t._next?t._next._prev=t:this._last=t,t._prev=r,this._recent=t,this._timeline&&this._uncache(!0),this},l._remove=function(t,e){return t.timeline===this&&(e||t._enabled(!1,!0),t._prev?t._prev._next=t._next:this._first===t&&(this._first=t._next),t._next?t._next._prev=t._prev:this._last===t&&(this._last=t._prev),t._next=t._prev=t.timeline=null,t===this._recent&&(this._recent=this._last),this._timeline&&this._uncache(!0)),this},l.render=function(t,e,n){var i,r=this._first;for(this._totalTime=this._time=this._rawPrevTime=t;r;)i=r._next,(r._active||t>=r._startTime&&!r._paused&&!r._gc)&&(r._reversed?r.render((r._dirty?r.totalDuration():r._totalDuration)-(t-r._startTime)*r._timeScale,e,n):r.render((t-r._startTime)*r._timeScale,e,n)),r=i},l.rawTime=function(){return c||h.wake(),this._totalTime};var I=_("TweenLite",function(e,n,i){if(L.call(this,n,i),this.render=I.prototype.render,null==e)throw"Cannot tween a null target.";this.target=e="string"!=typeof e?e:I.selector(e)||e;var r,o,a,s=e.jquery||e.length&&e!==t&&e[0]&&(e[0]===t||e[0].nodeType&&e[0].style&&!e.nodeType),u=this.vars.overwrite;if(this._overwrite=u=null==u?Y[I.defaultOverwrite]:"number"==typeof u?u>>0:Y[u],(s||e instanceof Array||e.push&&g(e))&&"number"!=typeof e[0])for(this._targets=a=f(e),this._propLookup=[],this._siblings=[],r=0;r<a.length;r++)(o=a[r])?"string"!=typeof o?o.length&&o!==t&&o[0]&&(o[0]===t||o[0].nodeType&&o[0].style&&!o.nodeType)?(a.splice(r--,1),this._targets=a=a.concat(f(o))):(this._siblings[r]=Q(o,this,!1),1===u&&this._siblings[r].length>1&&tt(o,this,null,1,this._siblings[r])):"string"==typeof(o=a[r--]=I.selector(o))&&a.splice(r+1,1):a.splice(r--,1);else this._propLookup={},this._siblings=Q(e,this,!1),1===u&&this._siblings.length>1&&tt(e,this,null,1,this._siblings);(this.vars.immediateRender||0===n&&0===this._delay&&!1!==this.vars.immediateRender)&&(this._time=-.0000000001,this.render(Math.min(0,-this._delay)))},!0),D=function(e){return e&&e.length&&e!==t&&e[0]&&(e[0]===t||e[0].nodeType&&e[0].style&&!e.nodeType)};(l=I.prototype=new L).constructor=I,l.kill()._gc=!1,l.ratio=0,l._firstPT=l._targets=l._overwrittenProps=l._startAt=null,l._notifyPluginsOfEnabled=l._lazy=!1,I.version="2.0.2",I.defaultEase=l._ease=new b(null,null,1,1),I.defaultOverwrite="auto",I.ticker=h,I.autoSleep=120,I.lagSmoothing=function(t,e){h.lagSmoothing(t,e)},I.selector=t.$||t.jQuery||function(e){var n=t.$||t.jQuery;return n?(I.selector=n,n(e)):(i||(i=t.document),i?i.querySelectorAll?i.querySelectorAll(e):i.getElementById("#"===e.charAt(0)?e.substr(1):e):e)};var N=[],B={},O=/(?:(-|-=|\+=)?\d*\.?\d*(?:e[\-+]?\d+)?)[0-9]/gi,G=/[\+-]=-?[\.\d]/,k=function(t){for(var e,n=this._firstPT;n;)e=n.blob?1===t&&null!=this.end?this.end:t?this.join(""):this.start:n.c*t+n.s,n.m?e=n.m.call(this._tween,e,this._target||n.t,this._tween):e<1e-6&&e>-.000001&&!n.blob&&(e=0),n.f?n.fp?n.t[n.p](n.fp,e):n.t[n.p](e):n.t[n.p]=e,n=n._next},V=function(t,e,n,i){var r,o,a,s,u,l,h,c=[],p=0,d="",f=0;for(c.start=t,c.end=e,t=c[0]=t+"",e=c[1]=e+"",n&&(n(c),t=c[0],e=c[1]),c.length=0,r=t.match(O)||[],o=e.match(O)||[],i&&(i._next=null,i.blob=1,c._firstPT=c._applyPT=i),u=o.length,s=0;s<u;s++)h=o[s],d+=(l=e.substr(p,e.indexOf(h,p)-p))||!s?l:",",p+=l.length,f?f=(f+1)%5:"rgba("===l.substr(-5)&&(f=1),h===r[s]||r.length<=s?d+=h:(d&&(c.push(d),d=""),a=parseFloat(r[s]),c.push(a),c._firstPT={_next:c._firstPT,t:c,p:c.length-1,s:a,c:("="===h.charAt(1)?parseInt(h.charAt(0)+"1",10)*parseFloat(h.substr(2)):parseFloat(h)-a)||0,f:0,m:f&&f<4?Math.round:0}),p+=h.length;return(d+=e.substr(p))&&c.push(d),c.setRatio=k,G.test(e)&&(c.end=null),c},z=function(t,e,n,i,r,o,a,s,u){"function"==typeof i&&(i=i(u||0,t));var l=typeof t[e],h="function"!==l?"":e.indexOf("set")||"function"!=typeof t["get"+e.substr(3)]?e:"get"+e.substr(3),c="get"!==n?n:h?a?t[h](a):t[h]():t[e],p="string"==typeof i&&"="===i.charAt(1),d={t,p:e,s:c,f:"function"===l,pg:0,n:r||e,m:o?"function"==typeof o?o:Math.round:0,pr:0,c:p?parseInt(i.charAt(0)+"1",10)*parseFloat(i.substr(2)):parseFloat(i)-c||0};if(("number"!=typeof c||"number"!=typeof i&&!p)&&(a||isNaN(c)||!p&&isNaN(i)||"boolean"==typeof c||"boolean"==typeof i?(d.fp=a,d={t:V(c,p?parseFloat(d.s)+d.c+(d.s+"").replace(/[0-9\-\.]/g,""):i,s||I.defaultStringFilter,d),p:"setRatio",s:0,c:1,f:2,pg:0,n:r||e,pr:0,m:0}):(d.s=parseFloat(c),p||(d.c=parseFloat(i)-d.s||0))),d.c)return(d._next=this._firstPT)&&(d._next._prev=d),this._firstPT=d,d},U=I._internals={isArray:g,isSelector:D,lazyTweens:N,blobDif:V},H=I._plugins={},F=U.tweenLookup={},W=0,X=U.reservedProps={ease:1,delay:1,overwrite:1,onComplete:1,onCompleteParams:1,onCompleteScope:1,useFrames:1,runBackwards:1,startAt:1,onUpdate:1,onUpdateParams:1,onUpdateScope:1,onStart:1,onStartParams:1,onStartScope:1,onReverseComplete:1,onReverseCompleteParams:1,onReverseCompleteScope:1,onRepeat:1,onRepeatParams:1,onRepeatScope:1,easeParams:1,yoyo:1,immediateRender:1,repeat:1,repeatDelay:1,data:1,paused:1,reversed:1,autoCSS:1,lazy:1,onOverwrite:1,callbackScope:1,stringFilter:1,id:1,yoyoEase:1},Y={none:0,all:1,auto:2,concurrent:3,allOnStart:4,preexisting:5,true:1,false:0},K=L._rootFramesTimeline=new R,j=L._rootTimeline=new R,Z=30,q=U.lazyRender=function(){var t,e=N.length;for(B={};--e>-1;)(t=N[e])&&!1!==t._lazy&&(t.render(t._lazy[0],t._lazy[1],!0),t._lazy=!1);N.length=0};j._startTime=h.time,K._startTime=h.frame,j._active=K._active=!0,setTimeout(q,1),L._updateRoot=I.render=function(){var t,e,n;if(N.length&&q(),j.render((h.time-j._startTime)*j._timeScale,!1,!1),K.render((h.frame-K._startTime)*K._timeScale,!1,!1),N.length&&q(),h.frame>=Z){for(n in Z=h.frame+(parseInt(I.autoSleep,10)||120),F){for(t=(e=F[n].tweens).length;--t>-1;)e[t]._gc&&e.splice(t,1);0===e.length&&delete F[n]}if((!(n=j._first)||n._paused)&&I.autoSleep&&!K._first&&1===h._listeners.tick.length){for(;n&&n._paused;)n=n._next;n||h.sleep()}}},h.addEventListener("tick",L._updateRoot);var Q=function(t,e,n){var i,r,o=t._gsTweenID;if(F[o||(t._gsTweenID=o="t"+W++)]||(F[o]={target:t,tweens:[]}),e&&((i=F[o].tweens)[r=i.length]=e,n))for(;--r>-1;)i[r]===e&&i.splice(r,1);return F[o].tweens},J=function(t,e,n,i){var r,o,a=t.vars.onOverwrite;return a&&(r=a(t,e,n,i)),(a=I.onOverwrite)&&(o=a(t,e,n,i)),!1!==r&&!1!==o},tt=function(t,e,n,i,r){if(1===i||i>=4){for(u=r.length,o=0;o<u;o++)if((s=r[o])!==e)s._gc||s._kill(null,t,e)&&(a=!0);else if(5===i)break;return a}var o,a,s,u,l,h=e._startTime+1e-10,c=[],p=0,d=0===e._duration;for(o=r.length;--o>-1;)(s=r[o])===e||s._gc||s._paused||(s._timeline!==e._timeline?(l=l||te(e,0,d),0===te(s,l,d)&&(c[p++]=s)):s._startTime<=h&&s._startTime+s.totalDuration()/s._timeScale>h&&((d||!s._initted)&&h-s._startTime<=2e-10||(c[p++]=s)));for(o=p;--o>-1;)if(u=(s=c[o])._firstPT,2===i&&s._kill(n,t,e)&&(a=!0),2!==i||!s._firstPT&&s._initted&&u){if(2!==i&&!J(s,e))continue;s._enabled(!1,!1)&&(a=!0)}return a},te=function(t,e,n){for(var i=t._timeline,r=i._timeScale,o=t._startTime;i._timeline;){if(o+=i._startTime,r*=i._timeScale,i._paused)return -100;i=i._timeline}return(o/=r)>e?o-e:n&&o===e||!t._initted&&o-e<2e-10?1e-10:(o+=t.totalDuration()/t._timeScale/r)>e+1e-10?0:o-e-1e-10};l._init=function(){var t,e,n,i,r,o,a=this.vars,s=this._overwrittenProps,u=this._duration,l=!!a.immediateRender,h=a.ease;if(a.startAt){for(i in this._startAt&&(this._startAt.render(-1,!0),this._startAt.kill()),r={},a.startAt)r[i]=a.startAt[i];if(r.data="isStart",r.overwrite=!1,r.immediateRender=!0,r.lazy=l&&!1!==a.lazy,r.startAt=r.delay=null,r.onUpdate=a.onUpdate,r.onUpdateParams=a.onUpdateParams,r.onUpdateScope=a.onUpdateScope||a.callbackScope||this,this._startAt=I.to(this.target||{},0,r),l){if(this._time>0)this._startAt=null;else if(0!==u)return}}else if(a.runBackwards&&0!==u){if(this._startAt)this._startAt.render(-1,!0),this._startAt.kill(),this._startAt=null;else{for(i in 0!==this._time&&(l=!1),n={},a)X[i]&&"autoCSS"!==i||(n[i]=a[i]);if(n.overwrite=0,n.data="isFromStart",n.lazy=l&&!1!==a.lazy,n.immediateRender=l,this._startAt=I.to(this.target,0,n),l){if(0===this._time)return}else this._startAt._init(),this._startAt._enabled(!1),this.vars.immediateRender&&(this._startAt=null)}}if(this._ease=h=h?h instanceof b?h:"function"==typeof h?new b(h,a.easeParams):w[h]||I.defaultEase:I.defaultEase,a.easeParams instanceof Array&&h.config&&(this._ease=h.config.apply(h,a.easeParams)),this._easeType=this._ease._type,this._easePower=this._ease._power,this._firstPT=null,this._targets)for(o=this._targets.length,t=0;t<o;t++)this._initProps(this._targets[t],this._propLookup[t]={},this._siblings[t],s?s[t]:null,t)&&(e=!0);else e=this._initProps(this.target,this._propLookup,this._siblings,s,0);if(e&&I._onPluginEvent("_onInitAllProps",this),s&&(this._firstPT||"function"!=typeof this.target&&this._enabled(!1,!1)),a.runBackwards)for(n=this._firstPT;n;)n.s+=n.c,n.c=-n.c,n=n._next;this._onUpdate=a.onUpdate,this._initted=!0},l._initProps=function(e,n,i,r,o){var a,s,u,l,h,c;if(null==e)return!1;for(a in B[e._gsTweenID]&&q(),this.vars.css||e.style&&e!==t&&e.nodeType&&H.css&&!1!==this.vars.autoCSS&&function(t,e){var n,i={};for(n in t)X[n]||n in e&&"transform"!==n&&"x"!==n&&"y"!==n&&"width"!==n&&"height"!==n&&"className"!==n&&"border"!==n||!(!H[n]||H[n]&&H[n]._autoCSS)||(i[n]=t[n],delete t[n]);t.css=i}(this.vars,e),this.vars)if(c=this.vars[a],X[a])c&&(c instanceof Array||c.push&&g(c))&&-1!==c.join("").indexOf("{self}")&&(this.vars[a]=c=this._swapSelfInParams(c,this));else if(H[a]&&(l=new H[a])._onInitTween(e,this.vars[a],this,o)){for(this._firstPT=h={_next:this._firstPT,t:l,p:"setRatio",s:0,c:1,f:1,n:a,pg:1,pr:l._priority,m:0},s=l._overwriteProps.length;--s>-1;)n[l._overwriteProps[s]]=this._firstPT;(l._priority||l._onInitAllProps)&&(u=!0),(l._onDisable||l._onEnable)&&(this._notifyPluginsOfEnabled=!0),h._next&&(h._next._prev=h)}else n[a]=z.call(this,e,a,"get",c,a,0,null,this.vars.stringFilter,o);return r&&this._kill(r,e)?this._initProps(e,n,i,r,o):this._overwrite>1&&this._firstPT&&i.length>1&&tt(e,this,n,this._overwrite,i)?(this._kill(n,e),this._initProps(e,n,i,r,o)):(this._firstPT&&(!1!==this.vars.lazy&&this._duration||this.vars.lazy&&!this._duration)&&(B[e._gsTweenID]=!0),u)},l.render=function(t,e,n){var i,r,o,a,s=this._time,u=this._duration,l=this._rawPrevTime;if(t>=u-1e-7&&t>=0)this._totalTime=this._time=u,this.ratio=this._ease._calcEnd?this._ease.getRatio(1):1,this._reversed||(i=!0,r="onComplete",n=n||this._timeline.autoRemoveChildren),0===u&&(this._initted||!this.vars.lazy||n)&&(this._startTime===this._timeline._duration&&(t=0),(l<0||t<=0&&t>=-.0000001||1e-10===l&&"isPause"!==this.data)&&l!==t&&(n=!0,l>1e-10&&(r="onReverseComplete")),this._rawPrevTime=a=!e||t||l===t?t:1e-10);else if(t<1e-7)this._totalTime=this._time=0,this.ratio=this._ease._calcEnd?this._ease.getRatio(0):0,(0!==s||0===u&&l>0)&&(r="onReverseComplete",i=this._reversed),t<0&&(this._active=!1,0===u&&(this._initted||!this.vars.lazy||n)&&(l>=0&&(1e-10!==l||"isPause"!==this.data)&&(n=!0),this._rawPrevTime=a=!e||t||l===t?t:1e-10)),(!this._initted||this._startAt&&this._startAt.progress())&&(n=!0);else if(this._totalTime=this._time=t,this._easeType){var h=t/u,c=this._easeType,p=this._easePower;(1===c||3===c&&h>=.5)&&(h=1-h),3===c&&(h*=2),1===p?h*=h:2===p?h*=h*h:3===p?h*=h*h*h:4===p&&(h*=h*h*h*h),this.ratio=1===c?1-h:2===c?h:t/u<.5?h/2:1-h/2}else this.ratio=this._ease.getRatio(t/u);if(this._time!==s||n){if(!this._initted){if(this._init(),!this._initted||this._gc)return;if(!n&&this._firstPT&&(!1!==this.vars.lazy&&this._duration||this.vars.lazy&&!this._duration))return this._time=this._totalTime=s,this._rawPrevTime=l,N.push(this),void(this._lazy=[t,e]);this._time&&!i?this.ratio=this._ease.getRatio(this._time/u):i&&this._ease._calcEnd&&(this.ratio=this._ease.getRatio(0===this._time?0:1))}for(!1!==this._lazy&&(this._lazy=!1),this._active||!this._paused&&this._time!==s&&t>=0&&(this._active=!0),0===s&&(this._startAt&&(t>=0?this._startAt.render(t,!0,n):r||(r="_dummyGS")),this.vars.onStart&&(0===this._time&&0!==u||e||this._callback("onStart"))),o=this._firstPT;o;)o.f?o.t[o.p](o.c*this.ratio+o.s):o.t[o.p]=o.c*this.ratio+o.s,o=o._next;this._onUpdate&&(t<0&&this._startAt&&-.0001!==t&&this._startAt.render(t,!0,n),e||(this._time!==s||i||n)&&this._callback("onUpdate")),r&&(this._gc&&!n||(t<0&&this._startAt&&!this._onUpdate&&-.0001!==t&&this._startAt.render(t,!0,n),i&&(this._timeline.autoRemoveChildren&&this._enabled(!1,!1),this._active=!1),!e&&this.vars[r]&&this._callback(r),0===u&&1e-10===this._rawPrevTime&&1e-10!==a&&(this._rawPrevTime=0)))}},l._kill=function(t,e,n){if("all"===t&&(t=null),null==t&&(null==e||e===this.target))return this._lazy=!1,this._enabled(!1,!1);e="string"!=typeof e?e||this._targets||this.target:I.selector(e)||e;var i,r,o,a,s,u,l,h,c,p=n&&this._time&&n._startTime===this._startTime&&this._timeline===n._timeline,d=this._firstPT;if((g(e)||D(e))&&"number"!=typeof e[0])for(i=e.length;--i>-1;)this._kill(t,e[i],n)&&(u=!0);else{if(this._targets){for(i=this._targets.length;--i>-1;)if(e===this._targets[i]){s=this._propLookup[i]||{},this._overwrittenProps=this._overwrittenProps||[],r=this._overwrittenProps[i]=t?this._overwrittenProps[i]||{}:"all";break}}else{if(e!==this.target)return!1;s=this._propLookup,r=this._overwrittenProps=t?this._overwrittenProps||{}:"all"}if(s){if(l=t||s,h=t!==r&&"all"!==r&&t!==s&&("object"!=typeof t||!t._tempKill),n&&(I.onOverwrite||this.vars.onOverwrite)){for(o in l)s[o]&&(c||(c=[]),c.push(o));if((c||!t)&&!J(this,n,e,c))return!1}for(o in l)(a=s[o])&&(p&&(a.f?a.t[a.p](a.s):a.t[a.p]=a.s,u=!0),a.pg&&a.t._kill(l)&&(u=!0),a.pg&&0!==a.t._overwriteProps.length||(a._prev?a._prev._next=a._next:a===this._firstPT&&(this._firstPT=a._next),a._next&&(a._next._prev=a._prev),a._next=a._prev=null),delete s[o]),h&&(r[o]=1);!this._firstPT&&this._initted&&d&&this._enabled(!1,!1)}}return u},l.invalidate=function(){return this._notifyPluginsOfEnabled&&I._onPluginEvent("_onDisable",this),this._firstPT=this._overwrittenProps=this._startAt=this._onUpdate=null,this._notifyPluginsOfEnabled=this._active=this._lazy=!1,this._propLookup=this._targets?{}:[],L.prototype.invalidate.call(this),this.vars.immediateRender&&(this._time=-.0000000001,this.render(Math.min(0,-this._delay))),this},l._enabled=function(t,e){if(c||h.wake(),t&&this._gc){var n,i=this._targets;if(i)for(n=i.length;--n>-1;)this._siblings[n]=Q(i[n],this,!0);else this._siblings=Q(this.target,this,!0)}return L.prototype._enabled.call(this,t,e),!(!this._notifyPluginsOfEnabled||!this._firstPT)&&I._onPluginEvent(t?"_onEnable":"_onDisable",this)},I.to=function(t,e,n){return new I(t,e,n)},I.from=function(t,e,n){return n.runBackwards=!0,n.immediateRender=0!=n.immediateRender,new I(t,e,n)},I.fromTo=function(t,e,n,i){return i.startAt=n,i.immediateRender=0!=i.immediateRender&&0!=n.immediateRender,new I(t,e,i)},I.delayedCall=function(t,e,n,i,r){return new I(e,0,{delay:t,onComplete:e,onCompleteParams:n,callbackScope:i,onReverseComplete:e,onReverseCompleteParams:n,immediateRender:!1,lazy:!1,useFrames:r,overwrite:0})},I.set=function(t,e){return new I(t,0,e)},I.getTweensOf=function(t,e){var n,i,r,o;if(null==t)return[];if((g(t="string"!=typeof t?t:I.selector(t)||t)||D(t))&&"number"!=typeof t[0]){for(n=t.length,i=[];--n>-1;)i=i.concat(I.getTweensOf(t[n],e));for(n=i.length;--n>-1;)for(o=i[n],r=n;--r>-1;)o===i[r]&&i.splice(n,1)}else if(t._gsTweenID)for(n=(i=Q(t).concat()).length;--n>-1;)(i[n]._gc||e&&!i[n].isActive())&&i.splice(n,1);return i||[]},I.killTweensOf=I.killDelayedCallsTo=function(t,e,n){"object"==typeof e&&(n=e,e=!1);for(var i=I.getTweensOf(t,e),r=i.length;--r>-1;)i[r]._kill(n,t)};var tn=_("plugins.TweenPlugin",function(t,e){this._overwriteProps=(t||"").split(","),this._propName=this._overwriteProps[0],this._priority=e||0,this._super=tn.prototype},!0);if(l=tn.prototype,tn.version="1.19.0",tn.API=2,l._firstPT=null,l._addTween=z,l.setRatio=k,l._kill=function(t){var e,n=this._overwriteProps,i=this._firstPT;if(null!=t[this._propName])this._overwriteProps=[];else for(e=n.length;--e>-1;)null!=t[n[e]]&&n.splice(e,1);for(;i;)null!=t[i.n]&&(i._next&&(i._next._prev=i._prev),i._prev?(i._prev._next=i._next,i._prev=null):this._firstPT===i&&(this._firstPT=i._next)),i=i._next;return!1},l._mod=l._roundProps=function(t){for(var e,n=this._firstPT;n;)(e=t[this._propName]||null!=n.n&&t[n.n.split(this._propName+"_").join("")])&&"function"==typeof e&&(2===n.f?n.t._applyPT.m=e:n.m=e),n=n._next},I._onPluginEvent=function(t,e){var n,i,r,o,a,s=e._firstPT;if("_onInitAllProps"===t){for(;s;){for(a=s._next,i=r;i&&i.pr>s.pr;)i=i._next;(s._prev=i?i._prev:o)?s._prev._next=s:r=s,(s._next=i)?i._prev=s:o=s,s=a}s=e._firstPT=r}for(;s;)s.pg&&"function"==typeof s.t[t]&&s.t[t]()&&(n=!0),s=s._next;return n},tn.activate=function(t){for(var e=t.length;--e>-1;)t[e].API===tn.API&&(H[(new t[e])._propName]=t[e]);return!0},y.plugin=function(t){if(!(t&&t.propName&&t.init&&t.API))throw"illegal plugin definition.";var e,n=t.propName,i=t.priority||0,r=t.overwriteProps,o={init:"_onInitTween",set:"setRatio",kill:"_kill",round:"_mod",mod:"_mod",initAll:"_onInitAllProps"},a=_("plugins."+n.charAt(0).toUpperCase()+n.substr(1)+"Plugin",function(){tn.call(this,n,i),this._overwriteProps=r||[]},!0===t.global),s=a.prototype=new tn(n);for(e in s.constructor=a,a.API=t.API,o)"function"==typeof t[e]&&(s[o[e]]=t[e]);return a.version=t.version,tn.activate([a]),a},s=t._gsQueue){for(u=0;u<s.length;u++)s[u]();for(l in v)v[l].func||t.console.log("GSAP encountered missing dependency: "+l)}return c=!1,I}(r),a=r.GreenSockGlobals,s=a.com.greensock,u=s.core.SimpleTimeline,l=s.core.Animation,h=a.Ease,c=a.Linear,p=c,d=a.Power1,f=a.Power2,m=a.Power3,g=a.Power4,v=a.TweenPlugin;s.events.EventDispatcher}).call(this,n(199)(t),n(164))},function(t,e,n){var i=n(3),r=n(35),o=n(20),a=n(19),s=n(28),u=function(t,e,n){var l,h,c,p,d=t&u.F,f=t&u.G,m=t&u.S,g=t&u.P,v=t&u.B,$=f?i:m?i[e]||(i[e]={}):(i[e]||{}).prototype,y=f?r:r[e]||(r[e]={}),_=y.prototype||(y.prototype={});for(l in f&&(n=e),n)c=((h=!d&&$&&void 0!==$[l])?$:n)[l],p=v&&h?s(c,i):g&&"function"==typeof c?s(Function.call,c):c,$&&a($,l,c,t&u.U),y[l]!=c&&o(y,l,p),g&&_[l]!=c&&(_[l]=c)};i.core=r,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},function(t,e,n){var i=n(5);t.exports=function(t){if(!i(t))throw TypeError(t+" is not an object!");return t}},function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n)},function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},function(t,e,n){var i=n(82)("wks"),r=n(51),o=n(3).Symbol,a="function"==typeof o;(t.exports=function(t){return i[t]||(i[t]=a&&o[t]||(a?o:r)("Symbol."+t))}).store=i},function(t,e){t.exports={ControlKit:"controlKit",Panel:"panel",Head:"head",Label:"label",Menu:"menu",Wrap:"wrap",ButtonMenuClose:"button-menu-close",ButtonMenuHide:"button-menu-hide",ButtonMenuShow:"button-menu-show",ButtonMenuUndo:"button-menu-undo",ButtonMenuLoad:"button-menu-load",ButtonMenuSave:"button-menu-save",MenuActive:"menu-active",Button:"button",ButtonPreset:"button-preset",ButtonPresetActive:"button-preset-active",WrapInputWPreset:"input-with-preset-wrap",WrapColorWPreset:"color-with-preset-wrap",HeadInactive:"head-inactive",PanelHeadInactive:"panel-head-inactive",GroupList:"group-list",Group:"group",SubGroupList:"sub-group-list",SubGroup:"sub-group",TextAreaWrap:"textarea-wrap",WrapSlider:"wrap-slider",SliderWrap:"slider-wrap",SliderSlot:"slider-slot",SliderHandle:"slider-handle",ArrowBMin:"arrow-b-min",ArrowBMax:"arrow-b-max",ArrowBSubMin:"arrow-b-sub-min",ArrowBSubMax:"arrow-b-sub-max",ArrowSMin:"arrow-s-min",ArrowSMax:"arrow-s-max",Select:"select",SelectActive:"select-active",Options:"options",OptionsSelected:"li-selected",CanvasListItem:"canvas-list-item",CanvasWrap:"canvas-wrap",SVGListItem:"svg-list-item",SVGWrap:"svg-wrap",GraphSliderXWrap:"graph-slider-x-wrap",GraphSliderYWrap:"graph-slider-y-wrap",GraphSliderX:"graph-slider-x",GraphSliderY:"graph-slider-y",GraphSliderXHandle:"graph-slider-x-handle",GraphSliderYHandle:"graph-slider-y-handle",Picker:"picker",PickerFieldWrap:"field-wrap",PickerInputWrap:"input-wrap",PickerInputField:"input-field",PickerControlsWrap:"controls-wrap",PickerColorContrast:"color-contrast",PickerHandleField:"indicator",PickerHandleSlider:"indicator",Color:"color",ScrollBar:"scrollBar",ScrollWrap:"scroll-wrap",ScrollBarBtnUp:"btnUp",ScrollBarBtnDown:"btnDown",ScrollBarTrack:"track",ScrollBarThumb:"thumb",ScrollBuffer:"scroll-buffer"}},function(t,e){function n(){switch(this._element=null,arguments.length){case 1:var t=arguments[0];t!=n.INPUT_TEXT&&t!=n.INPUT_BUTTON&&t!=n.INPUT_SELECT&&t!=n.INPUT_CHECKBOX?this._element=document.createElement(t):(this._element=document.createElement("input"),this._element.type=t);break;case 0:this._element=document.createElement("div")}}n.DIV="div",n.INPUT_TEXT="text",n.INPUT_BUTTON="button",n.INPUT_SELECT="select",n.INPUT_CHECKBOX="checkbox",n.OPTION="option",n.LIST="ul",n.LIST_ITEM="li",n.SPAN="span",n.TEXTAREA="textarea",n.prototype={addChild:function(t){return this._element.appendChild(t.getElement()),t},addChildren:function(){for(var t=-1,e=arguments.length,n=this._element;++t<e;)n.appendChild(arguments[t].getElement());return this},addChildAt:function(t,e){return this._element.insertBefore(t.getElement(),this._element.children[e]),t},removeChild:function(t){return this.contains(t)?(this._element.removeChild(t.getElement()),t):null},removeChildren:function(){for(var t=-1,e=arguments.length,n=this._element;++t<e;)n.removeChild(arguments[t].getElement());return this},removeChildAt:function(t,e){return this.contains(t)?(this._element.removeChild(t.getElement()),t):null},removeAllChildren:function(){for(var t=this._element;t.hasChildNodes();)t.removeChild(t.lastChild);return this},setWidth:function(t){return this._element.style.width=t+"px",this},getWidth:function(){return this._element.offsetWidth},setHeight:function(t){return this._element.style.height=t+"px",this},getHeight:function(){return this._element.offsetHeight},setPosition:function(t,e){return this.setPosition(t).setPosition(e)},setPositionX:function(t){return this._element.style.marginLeft=t+"px",this},setPositionY:function(t){return this._element.style.marginTop=t+"px",this},setPositionGlobal:function(t,e){return this.setPositionGlobalX(t).setPositionGlobalY(e)},setPositionGlobalX:function(t){return this._element.style.left=t+"px",this},setPositionGlobalY:function(t){return this._element.style.top=t+"px",this},getPosition:function(){return[this.getPositionX(),this.getPositionY()]},getPositionX:function(){return this._element.offsetLeft},getPositionY:function(){return this._element.offsetTop},getPositionGlobal:function(){for(var t=[0,0],e=this._element;e;)t[0]+=e.offsetLeft,t[1]+=e.offsetTop,e=e.offsetParent;return t},getPositionGlobalX:function(){for(var t=0,e=this._element;e;)t+=e.offsetLeft,e=e.offsetParent;return t},getPositionGlobalY:function(){for(var t=0,e=this._element;e;)t+=e.offsetTop,e=e.offsetParent;return t},addEventListener:function(t,e,n){return this._element.addEventListener(t,e,n),this},removeEventListener:function(t,e,n){return this._element.removeEventListener(t,e,n),this},dispatchEvent:function(t){return this._element.dispatchEvent(t),this},setStyleClass:function(t){return this._element.className=t,this},setStyleProperty:function(t,e){return this._element.style[t]=e,this},getStyleProperty:function(t){return this._element.style[t]},setStyleProperties:function(t){for(var e in t)this._element.style[e]=t[e];return this},deleteStyleClass:function(){return this._element.className="",this},deleteStyleProperty:function(t){return this._element.style[t]="",this},deleteStyleProperties:function(t){for(var e in t)this._element.style[e]="";return this},getChildAt:function(t){return(new n).setElement(this._element.children[t])},getChildIndex:function(t){return this._indexOf(this._element,t.getElement())},getNumChildren:function(){return this._element.children.length},getFirstChild:function(){return(new n).setElement(this._element.firstChild)},getLastChild:function(){return(new n).setElement(this._element.lastChild)},hasChildren:function(){return 0!=this._element.children.length},contains:function(t){return -1!=this._indexOf(this._element,t.getElement())},_indexOf:function(t,e){return Array.prototype.indexOf.call(t.children,e)},setProperty:function(t,e){return this._element[t]=e,this},setProperties:function(t){for(var e in t)this._element[e]=t[e];return this},getProperty:function(t){return this._element[t]},setElement:function(t){return this._element=t,this},getElement:function(){return this._element},getStyle:function(){return this._element.style},getParent:function(){return(new n).setElement(this._element.parentNode)}},n.getNodeByElement=function(t){return(new n).setElement(t)},n.getNodeById=function(t){return(new n).setElement(document.getElementById(t))},t.exports=n},function(t,e,n){var i=n(32),r=Math.min;t.exports=function(t){return t>0?r(i(t),9007199254740991):0}},function(t,e,n){var i=n(2),r=n(163),o=n(34),a=Object.defineProperty;e.f=n(11)?Object.defineProperty:function(t,e,n){if(i(t),e=o(e,!0),i(n),r)try{return a(t,e,n)}catch(s){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},function(t,e,n){t.exports=!n(4)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(t,e){t.exports=function(t,e,n){this.sender=t,this.type=e,this.data=n}},function(t,e,n){var i=n(33);t.exports=function(t){return Object(i(t))}},function(t,e){t.exports={MOUSE_DOWN:"mousedown",MOUSE_UP:"mouseup",MOUSE_OVER:"mouseover",MOUSE_MOVE:"mousemove",MOUSE_OUT:"mouseout",KEY_DOWN:"keydown",KEY_UP:"keyup",CHANGE:"change",FINISH:"finish",DBL_CLICK:"dblclick",ON_CLICK:"click",SELECT_START:"selectstart",DRAG_START:"dragstart",DRAG:"drag",DRAG_END:"dragend",DRAG_ENTER:"dragenter",DRAG_OVER:"dragover",DRAG_LEAVE:"dragleave",RESIZE:"resize"}},function(t,e){t.exports={VALUE_UPDATED:"valueUpdated",UPDATE_VALUE:"updateValue",INPUT_SELECT_DRAG:"inputSelectDrag",ENABLE:"enable",DISABLE:"disable"}},function(t,e){t.exports={MOUSE_MOVE:"mousemove",MOUSE_UP:"mouseup",MOUSE_DOWN:"mousedown",MOUSE_WHEEL:"mousewheel",WINDOW_RESIZE:"resize"}},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},function(t,e,n){var i=n(1),r=n(4),o=n(33),a=/"/g,s=function(t,e,n,i){var r=String(o(t)),s="<"+e;return""!==n&&(s+=" "+n+'="'+String(i).replace(a,"&quot;")+'"'),s+">"+r+"</"+e+">"};t.exports=function(t,e){var n={};n[t]=e(s),i(i.P+i.F*r(function(){var e=""[t]('"');return e!==e.toLowerCase()||e.split('"').length>3}),"String",n)}},function(t,e,n){var i=n(3),r=n(20),o=n(24),a=n(51)("src"),s=Function.toString,u=(""+s).split("toString");n(35).inspectSource=function(t){return s.call(t)},(t.exports=function(t,e,n,s){var l="function"==typeof n;l&&(o(n,"name")||r(n,"name",e)),t[e]!==n&&(l&&(o(n,a)||r(n,a,t[e]?""+t[e]:u.join(String(e)))),t===i?t[e]=n:s?t[e]?t[e]=n:r(t,e,n):(delete t[e],r(t,e,n)))})(Function.prototype,"toString",function(){return"function"==typeof this&&this[a]||s.call(this)})},function(t,e,n){var i=n(10),r=n(52);t.exports=n(11)?function(t,e,n){return i.f(t,e,r(1,n))}:function(t,e,n){return t[e]=n,t}},function(t,e,n){var i=n(24),r=n(13),o=n(112)("IE_PROTO"),a=Object.prototype;t.exports=Object.getPrototypeOf||function(t){return t=r(t),i(t,o)?t[o]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?a:null}},function(t,e,n){var i=n(62),r=n(52),o=n(23),a=n(34),s=n(24),u=n(163),l=Object.getOwnPropertyDescriptor;e.f=n(11)?l:function(t,e){if(t=o(t),e=a(e,!0),u)try{return l(t,e)}catch(n){}if(s(t,e))return r(!i.f.call(t,e),t[e])}},function(t,e,n){var i=n(63),r=n(33);t.exports=function(t){return i(r(t))}},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},function(t,e){t.exports={COMPONENT_MIN_HEIGHT:25,STROKE_SIZE:1,PADDING_WRAPPER:12,PADDING_OPTIONS:2,PADDING_PRESET:20,SCROLLBAR_TRACK_PADDING:2,FUNCTION_PLOTTER_LABEL_TICK_SIZE:6}},function(t,e,n){"use strict";var i=n(4);t.exports=function(t,e){return!!t&&i(function(){e?t.call(null,function(){},1):t.call(null)})}},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},function(t,e,n){var i=n(17);t.exports=function(t,e,n){if(i(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,i){return t.call(e,n,i)};case 3:return function(n,i,r){return t.call(e,n,i,r)}}return function(){return t.apply(e,arguments)}}},function(t,e,n){var i=n(60),r=n(66),o=n(15),a=n(65),s=n(182),u=n(12);function l(t,e,n,i){if(void 0===e[n])throw new s(e,n);(i=i||{}).label=i.label||n,r.apply(this,[t,i.label]),this._obj=e,this._key=n,this._onChange=function(){},a.get().addEventListener(o.UPDATE_VALUE,this,"onValueUpdate"),this.addEventListener(o.VALUE_UPDATED,a.get(),"onValueUpdated")}l.prototype=Object.create(r.prototype),l.prototype.constructor=l,l.prototype.applyValue=function(){},l.prototype.onValueUpdate=function(t){},l.prototype.pushHistoryState=function(){var t=this._obj,e=this._key;i.get().pushState(t,e,t[e])},l.prototype.setValue=function(t){this._obj[this._key]=t,this.dispatchEvent(new u(this,o.VALUE_UPDATED,null))},l.prototype.getData=function(){var t={};return t[this._key]=this._obj[this._key],t},t.exports=l},function(t,e,n){var i=n(28),r=n(63),o=n(13),a=n(9),s=n(95);t.exports=function(t,e){var n=1==t,u=2==t,l=3==t,h=4==t,c=6==t,p=5==t||c,d=e||s;return function(e,s,f){for(var m,g,v=o(e),$=r(v),y=i(s,f,3),_=a($.length),x=0,b=n?d(e,_):u?d(e,0):void 0;_>x;x++)if((p||x in $)&&(g=y(m=$[x],x,v),t)){if(n)b[x]=g;else if(g)switch(t){case 3:return!0;case 5:return m;case 6:return x;case 2:b.push(m)}else if(h)return!1}return c?-1:l||h?h:b}}},function(t,e,n){var i=n(1),r=n(35),o=n(4);t.exports=function(t,e){var n=(r.Object||{})[t]||Object[t],a={};a[t]=e(n),i(i.S+i.F*o(function(){n(1)}),"Object",a)}},function(t,e){var n=Math.ceil,i=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?i:n)(t)}},function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t}},function(t,e,n){var i=n(5);t.exports=function(t,e){var n,r;if(!i(t))return t;if(e&&"function"==typeof(n=t.toString)&&!i(r=n.call(t))||"function"==typeof(n=t.valueOf)&&!i(r=n.call(t))||!e&&"function"==typeof(n=t.toString)&&!i(r=n.call(t)))return r;throw TypeError("Can't convert object to primitive value")}},function(t,e){var n=t.exports={version:"2.5.7"};"number"==typeof __e&&(__e=n)},function(t,e){function n(){this._listeners=[]}n.prototype={addEventListener:function(t,e,n){this._listeners[t]=this._listeners[t]||[],this._listeners[t].push({obj:e,method:n})},dispatchEvent:function(t){var e=t.type;if(this.hasEventListener(e))for(var n,i,r=this._listeners[e],o=-1,a=r.length;++o<a;){if(!(n=r[o].obj)[i=r[o].method])throw n+" has no method "+i;n[i](t)}},removeEventListener:function(t,e,n){if(this.hasEventListener(t)){for(var i=this._listeners[t],r=i.length;--r>-1;)if(i[r].obj==e&&i[r].method==n){i.splice(r,1),0==i.length&&delete this._listeners[t];break}}},removeAllEventListeners:function(){this._listeners=[]},hasEventListener:function(t){return null!=this._listeners[t]&&null!=this._listeners[t]}},t.exports=n},function(t,e,n){var i=n(142),r=n(1),o=n(82)("metadata"),a=o.store||(o.store=new(n(139))),s=function(t,e,n){var r=a.get(t);if(!r){if(!n)return;a.set(t,r=new i)}var o=r.get(e);if(!o){if(!n)return;r.set(e,o=new i)}return o};t.exports={store:a,map:s,has:function(t,e,n){var i=s(e,n,!1);return void 0!==i&&i.has(t)},get:function(t,e,n){var i=s(e,n,!1);return void 0===i?void 0:i.get(t)},set:function(t,e,n,i){s(n,i,!0).set(t,e)},keys:function(t,e){var n=s(t,e,!1),i=[];return n&&n.forEach(function(t,e){i.push(e)}),i},key:function(t){return void 0===t||"symbol"==typeof t?t:String(t)},exp:function(t){r(r.S,"Reflect",t)}}},function(t,e,n){"use strict";if(n(11)){var i=n(40),r=n(3),o=n(4),a=n(1),s=n(71),u=n(89),l=n(28),h=n(45),c=n(52),p=n(20),d=n(43),f=n(32),m=n(9),g=n(137),v=n(49),$=n(34),y=n(24),_=n(61),x=n(5),b=n(13),w=n(98),A=n(48),T=n(21),S=n(47).f,E=n(96),P=n(51),C=n(6),L=n(30),M=n(81),R=n(74),I=n(93),D=n(56),N=n(77),B=n(46),O=n(94),G=n(147),k=n(10),V=n(22),z=k.f,U=V.f,H=r.RangeError,F=r.TypeError,W=r.Uint8Array,X=Array.prototype,Y=u.ArrayBuffer,K=u.DataView,j=L(0),Z=L(2),q=L(3),Q=L(4),J=L(5),tt=L(6),te=M(!0),tn=M(!1),ti=I.values,tr=I.keys,to=I.entries,ta=X.lastIndexOf,ts=X.reduce,tu=X.reduceRight,tl=X.join,th=X.sort,tc=X.slice,tp=X.toString,td=X.toLocaleString,tf=C("iterator"),tm=C("toStringTag"),tg=P("typed_constructor"),tv=P("def_constructor"),t$=s.CONSTR,ty=s.TYPED,t_=s.VIEW,t8=L(1,function(t,e){return tT(R(t,t[tv]),e)}),tx=o(function(){return 1===new W(new Uint16Array([1]).buffer)[0]}),tb=!!W&&!!W.prototype.set&&o(function(){new W(1).set({})}),tw=function(t,e){var n=f(t);if(n<0||n%e)throw H("Wrong offset!");return n},tA=function(t){if(x(t)&&ty in t)return t;throw F(t+" is not a typed array!")},tT=function(t,e){if(!x(t)||!(tg in t))throw F("It is not a typed array constructor!");return new t(e)},tS=function(t,e){return tE(R(t,t[tv]),e)},tE=function(t,e){for(var n=0,i=e.length,r=tT(t,i);i>n;)r[n]=e[n++];return r},t0=function(t,e,n){z(t,e,{get:function(){return this._d[n]}})},tP=function(t){var e,n,i,r,o,a,s=b(t),u=arguments.length,h=u>1?arguments[1]:void 0,c=void 0!==h,p=E(s);if(null!=p&&!w(p)){for(a=p.call(s),i=[],e=0;!(o=a.next()).done;e++)i.push(o.value);s=i}for(c&&u>2&&(h=l(h,arguments[2],2)),e=0,n=m(s.length),r=tT(this,n);n>e;e++)r[e]=c?h(s[e],e):s[e];return r},tC=function(){for(var t=0,e=arguments.length,n=tT(this,e);e>t;)n[t]=arguments[t++];return n},tL=!!W&&o(function(){td.call(new W(1))}),tM=function(){return td.apply(tL?tc.call(tA(this)):tA(this),arguments)},t1={copyWithin:function(t,e){return G.call(tA(this),t,e,arguments.length>2?arguments[2]:void 0)},every:function(t){return Q(tA(this),t,arguments.length>1?arguments[1]:void 0)},fill:function(t){return O.apply(tA(this),arguments)},filter:function(t){return tS(this,Z(tA(this),t,arguments.length>1?arguments[1]:void 0))},find:function(t){return J(tA(this),t,arguments.length>1?arguments[1]:void 0)},findIndex:function(t){return tt(tA(this),t,arguments.length>1?arguments[1]:void 0)},forEach:function(t){j(tA(this),t,arguments.length>1?arguments[1]:void 0)},indexOf:function(t){return tn(tA(this),t,arguments.length>1?arguments[1]:void 0)},includes:function(t){return te(tA(this),t,arguments.length>1?arguments[1]:void 0)},join:function(t){return tl.apply(tA(this),arguments)},lastIndexOf:function(t){return ta.apply(tA(this),arguments)},map:function(t){return t8(tA(this),t,arguments.length>1?arguments[1]:void 0)},reduce:function(t){return ts.apply(tA(this),arguments)},reduceRight:function(t){return tu.apply(tA(this),arguments)},reverse:function(){for(var t,e=tA(this).length,n=Math.floor(e/2),i=0;i<n;)t=this[i],this[i++]=this[--e],this[e]=t;return this},some:function(t){return q(tA(this),t,arguments.length>1?arguments[1]:void 0)},sort:function(t){return th.call(tA(this),t)},subarray:function(t,e){var n=tA(this),i=n.length,r=v(t,i);return new(R(n,n[tv]))(n.buffer,n.byteOffset+r*n.BYTES_PER_ELEMENT,m((void 0===e?i:v(e,i))-r))}},tR=function(t,e){return tS(this,tc.call(tA(this),t,e))},t3=function(t){tA(this);var e=tw(arguments[1],1),n=this.length,i=b(t),r=m(i.length),o=0;if(r+e>n)throw H("Wrong length!");for(;o<r;)this[e+o]=i[o++]},tI={entries:function(){return to.call(tA(this))},keys:function(){return tr.call(tA(this))},values:function(){return ti.call(tA(this))}},tD=function(t,e){return x(t)&&t[ty]&&"symbol"!=typeof e&&e in t&&String(+e)==String(e)},tN=function(t,e){return tD(t,e=$(e,!0))?c(2,t[e]):U(t,e)},tB=function(t,e,n){return!(tD(t,e=$(e,!0))&&x(n)&&y(n,"value"))||y(n,"get")||y(n,"set")||n.configurable||y(n,"writable")&&!n.writable||y(n,"enumerable")&&!n.enumerable?z(t,e,n):(t[e]=n.value,t)};t$||(V.f=tN,k.f=tB),a(a.S+!t$*a.F,"Object",{getOwnPropertyDescriptor:tN,defineProperty:tB}),o(function(){tp.call({})})&&(tp=td=function(){return tl.call(this)});var tO=d({},t1);d(tO,tI),p(tO,tf,tI.values),d(tO,{slice:tR,set:t3,constructor:function(){},toString:tp,toLocaleString:tM}),t0(tO,"buffer","b"),t0(tO,"byteOffset","o"),t0(tO,"byteLength","l"),t0(tO,"length","e"),z(tO,tm,{get:function(){return this[ty]}}),t.exports=function(t,e,n,u){var l=t+((u=!!u)?"Clamped":"")+"Array",c="get"+t,d="set"+t,f=r[l],v=f||{},$=f&&T(f),y=!f||!s.ABV,b={},w=f&&f.prototype,E=function(t,n){z(t,n,{get:function(){var t,i,r;return t=this,i=n,(r=t._d).v[c](i*e+r.o,tx)},set:function(t){var i,r,o,a;return i=this,r=n,o=t,a=i._d,void(u&&(o=(o=Math.round(o))<0?0:o>255?255:255&o),a.v[d](r*e+a.o,o,tx))},enumerable:!0})};y?(w=(f=n(function(t,n,i,r){h(t,f,l,"_d");var o,a,s,u,c=0,d=0;if(x(n)){if(!(n instanceof Y||"ArrayBuffer"==(u=_(n))||"SharedArrayBuffer"==u))return ty in n?tE(f,n):tP.call(f,n);o=n,d=tw(i,e);var v=n.byteLength;if(void 0===r){if(v%e||(a=v-d)<0)throw H("Wrong length!")}else if((a=m(r)*e)+d>v)throw H("Wrong length!");s=a/e}else s=g(n),o=new Y(a=s*e);for(p(t,"_d",{b:o,o:d,l:a,e:s,v:new K(o)});c<s;)E(t,c++)})).prototype=A(tO),p(w,"constructor",f)):o(function(){f(1)})&&o(function(){new f(-1)})&&N(function(t){new f,new f(null),new f(1.5),new f(t)},!0)||(f=n(function(t,n,i,r){var o;return h(t,f,l),x(n)?n instanceof Y||"ArrayBuffer"==(o=_(n))||"SharedArrayBuffer"==o?void 0!==r?new v(n,tw(i,e),r):void 0!==i?new v(n,tw(i,e)):new v(n):ty in n?tE(f,n):tP.call(f,n):new v(g(n))}),j($!==Function.prototype?S(v).concat(S($)):S(v),function(t){t in f||p(f,t,v[t])}),f.prototype=w,i||(w.constructor=f));var P=w[tf],C=!!P&&("values"==P.name||null==P.name),L=tI.values;p(f,tg,!0),p(w,ty,l),p(w,t_,!0),p(w,tv,f),(u?new f(1)[tm]==l:tm in w)||z(w,tm,{get:function(){return l}}),b[l]=f,a(a.G+a.W+a.F*(f!=v),b),a(a.S,l,{BYTES_PER_ELEMENT:e}),a(a.S+a.F*o(function(){v.of.call(f,1)}),l,{from:tP,of:tC}),"BYTES_PER_ELEMENT"in w||p(w,"BYTES_PER_ELEMENT",e),a(a.P,l,t1),B(l),a(a.P+a.F*tb,l,{set:t3}),a(a.P+!C*a.F,l,tI),i||w.toString==tp||(w.toString=tp),a(a.P+a.F*o(function(){new f(1).slice()}),l,{slice:tR}),a(a.P+a.F*(o(function(){return[1,2].toLocaleString()!=new f([1,2]).toLocaleString()})||!o(function(){w.toLocaleString.call([1,2])})),l,{toLocaleString:tM}),D[l]=C?P:L,i||C||p(w,tf,L)}}else t.exports=function(){}},function(t,e,n){var i=n(6)("unscopables"),r=Array.prototype;null==r[i]&&n(20)(r,i,{}),t.exports=function(t){r[i][t]=!0}},function(t,e){t.exports=!1},function(t,e,n){var i=n(51)("meta"),r=n(5),o=n(24),a=n(10).f,s=0,u=Object.isExtensible||function(){return!0},l=!n(4)(function(){return u(Object.preventExtensions({}))}),h=function(t){a(t,i,{value:{i:"O"+ ++s,w:{}}})},c=t.exports={KEY:i,NEED:!1,fastKey:function(t,e){if(!r(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!o(t,i)){if(!u(t))return"F";if(!e)return"E";h(t)}return t[i].i},getWeak:function(t,e){if(!o(t,i)){if(!u(t))return!0;if(!e)return!1;h(t)}return t[i].w},onFreeze:function(t){return l&&c.NEED&&u(t)&&!o(t,i)&&h(t),t}}},function(t,e,n){var i=n(36),r=n(12),o=n(16),a=null;function s(){i.apply(this),this._pos=[0,0],this._wheelDirection=0,this._hoverElement=null;var t=this;this._onDocumentMouseMove=function(e){var n=0,i=0;e||(e=window.event),e.pageX?(n=e.pageX,i=e.pageY):e.clientX&&(n=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,i=e.clientY+document.body.scrollTop+document.documentElement.scrollTop),t._pos[0]=n,t._pos[1]=i,t._hoverElement=document.elementFromPoint(n,i)},this._onDocumentMouseWheel=function(e){t._wheelDirection=e.detail<0||e.wheelDelta>0?1:-1,t.dispatchEvent(new r(t,o.MOUSE_WHEEL,e))},document.addEventListener(o.MOUSE_MOVE,this._onDocumentMouseMove),document.addEventListener(o.MOUSE_WHEEL,this._onDocumentMouseWheel)}s.prototype=Object.create(i.prototype),s.prototype.constructor=s,s.prototype._removeDocumentListener=function(){document.removeEventListener(o.MOUSE_MOVE,this._onDocumentMouseMove),document.removeEventListener(o.MOUSE_WHEEL,this._onDocumentMouseWheel)},s.prototype.getPosition=function(){return this._pos},s.prototype.getX=function(){return this._pos[0]},s.prototype.getY=function(){return this._pos[1]},s.prototype.getWheelDirection=function(){return this._wheelDirection},s.prototype.getHoverElement=function(){return this._hoverElement},s.setup=function(){return a=a||new s},s.get=function(){return a},s.destroy=function(){a._removeDocumentListener(),a=null},t.exports=s},function(t,e,n){var i=n(19);t.exports=function(t,e,n){for(var r in e)i(t,r,e[r],n);return t}},function(t,e,n){var i=n(28),r=n(149),o=n(98),a=n(2),s=n(9),u=n(96),l={},h={};(e=t.exports=function(t,e,n,c,p){var d,f,m,g,v=p?function(){return t}:u(t),$=i(n,c,e?2:1),y=0;if("function"!=typeof v)throw TypeError(t+" is not iterable!");if(o(v)){for(d=s(t.length);d>y;y++)if((g=e?$(a(f=t[y])[0],f[1]):$(t[y]))===l||g===h)return g}else for(m=v.call(t);!(f=m.next()).done;)if((g=r(m,$,f.value,e))===l||g===h)return g}).BREAK=l,e.RETURN=h},function(t,e){t.exports=function(t,e,n,i){if(!(t instanceof e)||void 0!==i&&i in t)throw TypeError(n+": incorrect invocation!");return t}},function(t,e,n){"use strict";var i=n(3),r=n(10),o=n(11),a=n(6)("species");t.exports=function(t){var e=i[t];o&&e&&!e[a]&&r.f(e,a,{configurable:!0,get:function(){return this}})}},function(t,e,n){var i=n(161),r=n(111).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return i(t,r)}},function(t,e,n){var i=n(2),r=n(160),o=n(111),a=n(112)("IE_PROTO"),s=function(){},u=function(){var t,e=n(114)("iframe"),i=o.length;for(e.style.display="none",n(110).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("<script>document.F=Object</script>"),t.close(),u=t.F;i--;)delete u.prototype[o[i]];return u()};t.exports=Object.create||function(t,e){var n;return null!==t?(s.prototype=i(t),n=new s,s.prototype=null,n[a]=t):n=u(),void 0===e?n:r(n,e)}},function(t,e,n){var i=n(32),r=Math.max,o=Math.min;t.exports=function(t,e){return(t=i(t))<0?r(t+e,0):o(t,e)}},function(t,e,n){var i=n(161),r=n(111);t.exports=Object.keys||function(t){return i(t,r)}},function(t,e){var n=0,i=Math.random();t.exports=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++n+i).toString(36))}},function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},function(t,e){t.exports={GROUP_SIZE_CHANGE:"groupSizeChange",GROUP_LIST_SIZE_CHANGE:"groupListSizeChange",GROUP_SIZE_UPDATE:"groupSizeUpdate",SUBGROUP_TRIGGER:"subGroupTrigger",SUBGROUP_ENABLE:"enableSubGroup",SUBGROUP_DISABLE:"disableSubGroup"}},function(t,e,n){"use strict";n.r(e),(function(t){function i(){}n.d(e,"WebGLRenderTargetCube",function(){return nE}),n.d(e,"WebGLRenderTarget",function(){return nS}),n.d(e,"WebGLRenderer",function(){return at}),n.d(e,"ShaderLib",function(){return nN}),n.d(e,"UniformsLib",function(){return nD}),n.d(e,"UniformsUtils",function(){return nR}),n.d(e,"ShaderChunk",function(){return n1}),n.d(e,"FogExp2",function(){return ae}),n.d(e,"Fog",function(){return an}),n.d(e,"Scene",function(){return ai}),n.d(e,"Sprite",function(){return as}),n.d(e,"LOD",function(){return au}),n.d(e,"SkinnedMesh",function(){return ac}),n.d(e,"Skeleton",function(){return al}),n.d(e,"Bone",function(){return ah}),n.d(e,"Mesh",function(){return ih}),n.d(e,"LineSegments",function(){return af}),n.d(e,"LineLoop",function(){return am}),n.d(e,"Line",function(){return ad}),n.d(e,"Points",function(){return av}),n.d(e,"Group",function(){return rv}),n.d(e,"VideoTexture",function(){return a$}),n.d(e,"DataTexture",function(){return n0}),n.d(e,"DataTexture3D",function(){return id}),n.d(e,"CompressedTexture",function(){return ay}),n.d(e,"CubeTexture",function(){return ip}),n.d(e,"CanvasTexture",function(){return a_}),n.d(e,"DepthTexture",function(){return a8}),n.d(e,"Texture",function(){return nA}),n.d(e,"AnimationLoader",function(){return sX}),n.d(e,"CompressedTextureLoader",function(){return sY}),n.d(e,"DataTextureLoader",function(){return sK}),n.d(e,"CubeTextureLoader",function(){return sZ}),n.d(e,"TextureLoader",function(){return sq}),n.d(e,"ObjectLoader",function(){return uI}),n.d(e,"MaterialLoader",function(){return uC}),n.d(e,"BufferGeometryLoader",function(){return uM}),n.d(e,"DefaultLoadingManager",function(){return s6}),n.d(e,"LoadingManager",function(){return s4}),n.d(e,"JSONLoader",function(){return u3}),n.d(e,"ImageLoader",function(){return sj}),n.d(e,"ImageBitmapLoader",function(){return uQ}),n.d(e,"FontLoader",function(){return le}),n.d(e,"FileLoader",function(){return s7}),n.d(e,"Loader",function(){return uR}),n.d(e,"LoaderUtils",function(){return uL}),n.d(e,"Cache",function(){return s5}),n.d(e,"AudioLoader",function(){return lo}),n.d(e,"SpotLightShadow",function(){return ub}),n.d(e,"SpotLight",function(){return uw}),n.d(e,"PointLight",function(){return uA}),n.d(e,"RectAreaLight",function(){return uP}),n.d(e,"HemisphereLight",function(){return u8}),n.d(e,"DirectionalLightShadow",function(){return uS}),n.d(e,"DirectionalLight",function(){return uE}),n.d(e,"AmbientLight",function(){return u0}),n.d(e,"LightShadow",function(){return ux}),n.d(e,"Light",function(){return u_}),n.d(e,"StereoCamera",function(){return la}),n.d(e,"PerspectiveCamera",function(){return ry}),n.d(e,"OrthographicCamera",function(){return uT}),n.d(e,"CubeCamera",function(){return ls}),n.d(e,"ArrayCamera",function(){return r_}),n.d(e,"Camera",function(){return r$}),n.d(e,"AudioListener",function(){return ll}),n.d(e,"PositionalAudio",function(){return lc}),n.d(e,"AudioContext",function(){return lr}),n.d(e,"AudioAnalyser",function(){return lp}),n.d(e,"Audio",function(){return lh}),n.d(e,"VectorKeyframeTrack",function(){return s2}),n.d(e,"StringKeyframeTrack",function(){return sU}),n.d(e,"QuaternionKeyframeTrack",function(){return sz}),n.d(e,"NumberKeyframeTrack",function(){return sk}),n.d(e,"ColorKeyframeTrack",function(){return sG}),n.d(e,"BooleanKeyframeTrack",function(){return sO}),n.d(e,"PropertyMixer",function(){return ld}),n.d(e,"PropertyBinding",function(){return lm}),n.d(e,"KeyframeTrack",function(){return sB}),n.d(e,"AnimationUtils",function(){return sR}),n.d(e,"AnimationObjectGroup",function(){return lg}),n.d(e,"AnimationMixer",function(){return l$}),n.d(e,"AnimationClip",function(){return sH}),n.d(e,"Uniform",function(){return ly}),n.d(e,"InstancedBufferGeometry",function(){return l_}),n.d(e,"BufferGeometry",function(){return nJ}),n.d(e,"Geometry",function(){return nH}),n.d(e,"InterleavedBufferAttribute",function(){return ao}),n.d(e,"InstancedInterleavedBuffer",function(){return l8}),n.d(e,"InterleavedBuffer",function(){return ar}),n.d(e,"InstancedBufferAttribute",function(){return lx}),n.d(e,"Face3",function(){return nG}),n.d(e,"Object3D",function(){return nU}),n.d(e,"Raycaster",function(){return lb}),n.d(e,"Layers",function(){return nV}),n.d(e,"EventDispatcher",function(){return i}),n.d(e,"Clock",function(){return lu}),n.d(e,"QuaternionLinearInterpolant",function(){return sV}),n.d(e,"LinearInterpolant",function(){return sD}),n.d(e,"DiscreteInterpolant",function(){return sN}),n.d(e,"CubicInterpolant",function(){return sI}),n.d(e,"Interpolant",function(){return s3}),n.d(e,"Triangle",function(){return iu}),n.d(e,"Math",function(){return nv}),n.d(e,"Spherical",function(){return lT}),n.d(e,"Cylindrical",function(){return lS}),n.d(e,"Plane",function(){return nL}),n.d(e,"Frustum",function(){return nM}),n.d(e,"Sphere",function(){return nC}),n.d(e,"Ray",function(){return is}),n.d(e,"Matrix4",function(){return ny}),n.d(e,"Matrix3",function(){return nx}),n.d(e,"Box3",function(){return nP}),n.d(e,"Box2",function(){return lE}),n.d(e,"Line3",function(){return l0}),n.d(e,"Euler",function(){return nk}),n.d(e,"Vector4",function(){return nT}),n.d(e,"Vector3",function(){return n8}),n.d(e,"Vector2",function(){return n$}),n.d(e,"Quaternion",function(){return n_}),n.d(e,"Color",function(){return nI}),n.d(e,"ImmediateRenderObject",function(){return lP}),n.d(e,"VertexNormalsHelper",function(){return lC}),n.d(e,"SpotLightHelper",function(){return lL}),n.d(e,"SkeletonHelper",function(){return lM}),n.d(e,"PointLightHelper",function(){return l1}),n.d(e,"RectAreaLightHelper",function(){return lR}),n.d(e,"HemisphereLightHelper",function(){return l3}),n.d(e,"GridHelper",function(){return lI}),n.d(e,"PolarGridHelper",function(){return lD}),n.d(e,"FaceNormalsHelper",function(){return lN}),n.d(e,"DirectionalLightHelper",function(){return lB}),n.d(e,"CameraHelper",function(){return lO}),n.d(e,"BoxHelper",function(){return lG}),n.d(e,"Box3Helper",function(){return lk}),n.d(e,"PlaneHelper",function(){return lV}),n.d(e,"ArrowHelper",function(){return lz}),n.d(e,"AxesHelper",function(){return lU}),n.d(e,"Shape",function(){return uy}),n.d(e,"Path",function(){return u$}),n.d(e,"ShapePath",function(){return uJ}),n.d(e,"Font",function(){return u9}),n.d(e,"CurvePath",function(){return uv}),n.d(e,"Curve",function(){return sQ}),n.d(e,"ImageUtils",function(){return nb}),n.d(e,"ShapeUtils",function(){return aJ}),n.d(e,"WebGLUtils",function(){return rg}),n.d(e,"WireframeGeometry",function(){return ax}),n.d(e,"ParametricGeometry",function(){return ab}),n.d(e,"ParametricBufferGeometry",function(){return aw}),n.d(e,"TetrahedronGeometry",function(){return aS}),n.d(e,"TetrahedronBufferGeometry",function(){return aE}),n.d(e,"OctahedronGeometry",function(){return a0}),n.d(e,"OctahedronBufferGeometry",function(){return aP}),n.d(e,"IcosahedronGeometry",function(){return aC}),n.d(e,"IcosahedronBufferGeometry",function(){return aL}),n.d(e,"DodecahedronGeometry",function(){return aM}),n.d(e,"DodecahedronBufferGeometry",function(){return a1}),n.d(e,"PolyhedronGeometry",function(){return aA}),n.d(e,"PolyhedronBufferGeometry",function(){return aT}),n.d(e,"TubeGeometry",function(){return aR}),n.d(e,"TubeBufferGeometry",function(){return a3}),n.d(e,"TorusKnotGeometry",function(){return aI}),n.d(e,"TorusKnotBufferGeometry",function(){return aD}),n.d(e,"TorusGeometry",function(){return aN}),n.d(e,"TorusBufferGeometry",function(){return aB}),n.d(e,"TextGeometry",function(){return so}),n.d(e,"TextBufferGeometry",function(){return sa}),n.d(e,"SphereGeometry",function(){return ss}),n.d(e,"SphereBufferGeometry",function(){return su}),n.d(e,"RingGeometry",function(){return sl}),n.d(e,"RingBufferGeometry",function(){return sh}),n.d(e,"PlaneGeometry",function(){return ie}),n.d(e,"PlaneBufferGeometry",function(){return ii}),n.d(e,"LatheGeometry",function(){return sc}),n.d(e,"LatheBufferGeometry",function(){return sp}),n.d(e,"ShapeGeometry",function(){return sd}),n.d(e,"ShapeBufferGeometry",function(){return sf}),n.d(e,"ExtrudeGeometry",function(){return se}),n.d(e,"ExtrudeBufferGeometry",function(){return sn}),n.d(e,"EdgesGeometry",function(){return sg}),n.d(e,"ConeGeometry",function(){return sy}),n.d(e,"ConeBufferGeometry",function(){return s_}),n.d(e,"CylinderGeometry",function(){return sv}),n.d(e,"CylinderBufferGeometry",function(){return s$}),n.d(e,"CircleGeometry",function(){return s8}),n.d(e,"CircleBufferGeometry",function(){return sx}),n.d(e,"BoxGeometry",function(){return n9}),n.d(e,"BoxBufferGeometry",function(){return it}),n.d(e,"ShadowMaterial",function(){return sw}),n.d(e,"SpriteMaterial",function(){return aa}),n.d(e,"RawShaderMaterial",function(){return sA}),n.d(e,"ShaderMaterial",function(){return ia}),n.d(e,"PointsMaterial",function(){return ag}),n.d(e,"MeshPhysicalMaterial",function(){return sS}),n.d(e,"MeshStandardMaterial",function(){return sT}),n.d(e,"MeshPhongMaterial",function(){return sE}),n.d(e,"MeshToonMaterial",function(){return s0}),n.d(e,"MeshNormalMaterial",function(){return sP}),n.d(e,"MeshLambertMaterial",function(){return sC}),n.d(e,"MeshDepthMaterial",function(){return rp}),n.d(e,"MeshDistanceMaterial",function(){return rd}),n.d(e,"MeshBasicMaterial",function(){return il}),n.d(e,"MeshMatcapMaterial",function(){return sL}),n.d(e,"LineDashedMaterial",function(){return sM}),n.d(e,"LineBasicMaterial",function(){return ap}),n.d(e,"Material",function(){return io}),n.d(e,"Float64BufferAttribute",function(){return nj}),n.d(e,"Float32BufferAttribute",function(){return nK}),n.d(e,"Uint32BufferAttribute",function(){return nY}),n.d(e,"Int32BufferAttribute",function(){return nX}),n.d(e,"Uint16BufferAttribute",function(){return n7}),n.d(e,"Int16BufferAttribute",function(){return nW}),n.d(e,"Uint8ClampedBufferAttribute",function(){return n6}),n.d(e,"Uint8BufferAttribute",function(){return n4}),n.d(e,"Int8BufferAttribute",function(){return n5}),n.d(e,"BufferAttribute",function(){return nF}),n.d(e,"ArcCurve",function(){return s9}),n.d(e,"CatmullRomCurve3",function(){return uo}),n.d(e,"CubicBezierCurve",function(){return ul}),n.d(e,"CubicBezierCurve3",function(){return uh}),n.d(e,"EllipseCurve",function(){return sJ}),n.d(e,"LineCurve",function(){return uc}),n.d(e,"LineCurve3",function(){return up}),n.d(e,"QuadraticBezierCurve",function(){return ud}),n.d(e,"QuadraticBezierCurve3",function(){return uf}),n.d(e,"SplineCurve",function(){return um}),n.d(e,"REVISION",function(){return ti}),n.d(e,"MOUSE",function(){return tr}),n.d(e,"CullFaceNone",function(){return to}),n.d(e,"CullFaceBack",function(){return ta}),n.d(e,"CullFaceFront",function(){return ts}),n.d(e,"CullFaceFrontBack",function(){return tu}),n.d(e,"FrontFaceDirectionCW",function(){return tl}),n.d(e,"FrontFaceDirectionCCW",function(){return th}),n.d(e,"BasicShadowMap",function(){return tc}),n.d(e,"PCFShadowMap",function(){return tp}),n.d(e,"PCFSoftShadowMap",function(){return td}),n.d(e,"FrontSide",function(){return tf}),n.d(e,"BackSide",function(){return tm}),n.d(e,"DoubleSide",function(){return tg}),n.d(e,"FlatShading",function(){return tv}),n.d(e,"SmoothShading",function(){return t$}),n.d(e,"NoColors",function(){return ty}),n.d(e,"FaceColors",function(){return t_}),n.d(e,"VertexColors",function(){return t8}),n.d(e,"NoBlending",function(){return tx}),n.d(e,"NormalBlending",function(){return tb}),n.d(e,"AdditiveBlending",function(){return tw}),n.d(e,"SubtractiveBlending",function(){return tA}),n.d(e,"MultiplyBlending",function(){return tT}),n.d(e,"CustomBlending",function(){return tS}),n.d(e,"AddEquation",function(){return tE}),n.d(e,"SubtractEquation",function(){return t0}),n.d(e,"ReverseSubtractEquation",function(){return tP}),n.d(e,"MinEquation",function(){return tC}),n.d(e,"MaxEquation",function(){return tL}),n.d(e,"ZeroFactor",function(){return tM}),n.d(e,"OneFactor",function(){return t1}),n.d(e,"SrcColorFactor",function(){return tR}),n.d(e,"OneMinusSrcColorFactor",function(){return t3}),n.d(e,"SrcAlphaFactor",function(){return tI}),n.d(e,"OneMinusSrcAlphaFactor",function(){return tD}),n.d(e,"DstAlphaFactor",function(){return tN}),n.d(e,"OneMinusDstAlphaFactor",function(){return tB}),n.d(e,"DstColorFactor",function(){return tO}),n.d(e,"OneMinusDstColorFactor",function(){return tG}),n.d(e,"SrcAlphaSaturateFactor",function(){return tk}),n.d(e,"NeverDepth",function(){return tV}),n.d(e,"AlwaysDepth",function(){return tz}),n.d(e,"LessDepth",function(){return tU}),n.d(e,"LessEqualDepth",function(){return t2}),n.d(e,"EqualDepth",function(){return tH}),n.d(e,"GreaterEqualDepth",function(){return tF}),n.d(e,"GreaterDepth",function(){return t5}),n.d(e,"NotEqualDepth",function(){return t4}),n.d(e,"MultiplyOperation",function(){return t6}),n.d(e,"MixOperation",function(){return tW}),n.d(e,"AddOperation",function(){return t7}),n.d(e,"NoToneMapping",function(){return tX}),n.d(e,"LinearToneMapping",function(){return tY}),n.d(e,"ReinhardToneMapping",function(){return tK}),n.d(e,"Uncharted2ToneMapping",function(){return tj}),n.d(e,"CineonToneMapping",function(){return tZ}),n.d(e,"UVMapping",function(){return tq}),n.d(e,"CubeReflectionMapping",function(){return tQ}),n.d(e,"CubeRefractionMapping",function(){return tJ}),n.d(e,"EquirectangularReflectionMapping",function(){return t9}),n.d(e,"EquirectangularRefractionMapping",function(){return et}),n.d(e,"SphericalReflectionMapping",function(){return ee}),n.d(e,"CubeUVReflectionMapping",function(){return en}),n.d(e,"CubeUVRefractionMapping",function(){return ei}),n.d(e,"RepeatWrapping",function(){return er}),n.d(e,"ClampToEdgeWrapping",function(){return eo}),n.d(e,"MirroredRepeatWrapping",function(){return ea}),n.d(e,"NearestFilter",function(){return es}),n.d(e,"NearestMipMapNearestFilter",function(){return eu}),n.d(e,"NearestMipMapLinearFilter",function(){return el}),n.d(e,"LinearFilter",function(){return eh}),n.d(e,"LinearMipMapNearestFilter",function(){return ec}),n.d(e,"LinearMipMapLinearFilter",function(){return ep}),n.d(e,"UnsignedByteType",function(){return ed}),n.d(e,"ByteType",function(){return ef}),n.d(e,"ShortType",function(){return em}),n.d(e,"UnsignedShortType",function(){return eg}),n.d(e,"IntType",function(){return ev}),n.d(e,"UnsignedIntType",function(){return e$}),n.d(e,"FloatType",function(){return ey}),n.d(e,"HalfFloatType",function(){return e_}),n.d(e,"UnsignedShort4444Type",function(){return e8}),n.d(e,"UnsignedShort5551Type",function(){return ex}),n.d(e,"UnsignedShort565Type",function(){return eb}),n.d(e,"UnsignedInt248Type",function(){return ew}),n.d(e,"AlphaFormat",function(){return eA}),n.d(e,"RGBFormat",function(){return eT}),n.d(e,"RGBAFormat",function(){return eS}),n.d(e,"LuminanceFormat",function(){return eE}),n.d(e,"LuminanceAlphaFormat",function(){return e0}),n.d(e,"RGBEFormat",function(){return eP}),n.d(e,"DepthFormat",function(){return eC}),n.d(e,"DepthStencilFormat",function(){return eL}),n.d(e,"RedFormat",function(){return eM}),n.d(e,"RGB_S3TC_DXT1_Format",function(){return e1}),n.d(e,"RGBA_S3TC_DXT1_Format",function(){return eR}),n.d(e,"RGBA_S3TC_DXT3_Format",function(){return e3}),n.d(e,"RGBA_S3TC_DXT5_Format",function(){return eI}),n.d(e,"RGB_PVRTC_4BPPV1_Format",function(){return eD}),n.d(e,"RGB_PVRTC_2BPPV1_Format",function(){return eN}),n.d(e,"RGBA_PVRTC_4BPPV1_Format",function(){return eB}),n.d(e,"RGBA_PVRTC_2BPPV1_Format",function(){return eO}),n.d(e,"RGB_ETC1_Format",function(){return eG}),n.d(e,"RGBA_ASTC_4x4_Format",function(){return ek}),n.d(e,"RGBA_ASTC_5x4_Format",function(){return eV}),n.d(e,"RGBA_ASTC_5x5_Format",function(){return ez}),n.d(e,"RGBA_ASTC_6x5_Format",function(){return eU}),n.d(e,"RGBA_ASTC_6x6_Format",function(){return e2}),n.d(e,"RGBA_ASTC_8x5_Format",function(){return eH}),n.d(e,"RGBA_ASTC_8x6_Format",function(){return eF}),n.d(e,"RGBA_ASTC_8x8_Format",function(){return e5}),n.d(e,"RGBA_ASTC_10x5_Format",function(){return e4}),n.d(e,"RGBA_ASTC_10x6_Format",function(){return e6}),n.d(e,"RGBA_ASTC_10x8_Format",function(){return eW}),n.d(e,"RGBA_ASTC_10x10_Format",function(){return e7}),n.d(e,"RGBA_ASTC_12x10_Format",function(){return eX}),n.d(e,"RGBA_ASTC_12x12_Format",function(){return eY}),n.d(e,"LoopOnce",function(){return eK}),n.d(e,"LoopRepeat",function(){return ej}),n.d(e,"LoopPingPong",function(){return eZ}),n.d(e,"InterpolateDiscrete",function(){return eq}),n.d(e,"InterpolateLinear",function(){return eQ}),n.d(e,"InterpolateSmooth",function(){return eJ}),n.d(e,"ZeroCurvatureEnding",function(){return e9}),n.d(e,"ZeroSlopeEnding",function(){return nt}),n.d(e,"WrapAroundEnding",function(){return ne}),n.d(e,"TrianglesDrawMode",function(){return nn}),n.d(e,"TriangleStripDrawMode",function(){return ni}),n.d(e,"TriangleFanDrawMode",function(){return nr}),n.d(e,"LinearEncoding",function(){return no}),n.d(e,"sRGBEncoding",function(){return na}),n.d(e,"GammaEncoding",function(){return ns}),n.d(e,"RGBEEncoding",function(){return nu}),n.d(e,"LogLuvEncoding",function(){return nl}),n.d(e,"RGBM7Encoding",function(){return nh}),n.d(e,"RGBM16Encoding",function(){return nc}),n.d(e,"RGBDEncoding",function(){return np}),n.d(e,"BasicDepthPacking",function(){return nd}),n.d(e,"RGBADepthPacking",function(){return nf}),n.d(e,"TangentSpaceNormalMap",function(){return nm}),n.d(e,"ObjectSpaceNormalMap",function(){return ng}),n.d(e,"CubeGeometry",function(){return n9}),n.d(e,"Face4",function(){return l2}),n.d(e,"LineStrip",function(){return lH}),n.d(e,"LinePieces",function(){return lF}),n.d(e,"MeshFaceMaterial",function(){return l5}),n.d(e,"MultiMaterial",function(){return l4}),n.d(e,"PointCloud",function(){return l6}),n.d(e,"Particle",function(){return lW}),n.d(e,"ParticleSystem",function(){return l7}),n.d(e,"PointCloudMaterial",function(){return lX}),n.d(e,"ParticleBasicMaterial",function(){return lY}),n.d(e,"ParticleSystemMaterial",function(){return lK}),n.d(e,"Vertex",function(){return lj}),n.d(e,"DynamicBufferAttribute",function(){return lZ}),n.d(e,"Int8Attribute",function(){return lq}),n.d(e,"Uint8Attribute",function(){return lQ}),n.d(e,"Uint8ClampedAttribute",function(){return lJ}),n.d(e,"Int16Attribute",function(){return l9}),n.d(e,"Uint16Attribute",function(){return ht}),n.d(e,"Int32Attribute",function(){return he}),n.d(e,"Uint32Attribute",function(){return hn}),n.d(e,"Float32Attribute",function(){return hi}),n.d(e,"Float64Attribute",function(){return hr}),n.d(e,"ClosedSplineCurve3",function(){return ho}),n.d(e,"SplineCurve3",function(){return ha}),n.d(e,"Spline",function(){return hs}),n.d(e,"AxisHelper",function(){return hu}),n.d(e,"BoundingBoxHelper",function(){return hl}),n.d(e,"EdgesHelper",function(){return hh}),n.d(e,"WireframeHelper",function(){return hc}),n.d(e,"XHRLoader",function(){return hp}),n.d(e,"BinaryTextureLoader",function(){return hd}),n.d(e,"GeometryUtils",function(){return hf}),n.d(e,"Projector",function(){return hm}),n.d(e,"CanvasRenderer",function(){return hg}),n.d(e,"SceneUtils",function(){return hv}),n.d(e,"LensFlare",function(){return h$}),void 0===Number.EPSILON&&(Number.EPSILON=2220446049250313e-31),void 0===Number.isInteger&&(Number.isInteger=function(t){return"number"==typeof t&&isFinite(t)&&Math.floor(t)===t}),void 0===Math.sign&&(Math.sign=function(t){return t<0?-1:t>0?1:+t}),"name"in Function.prototype==0&&Object.defineProperty(Function.prototype,"name",{get:function(){return this.toString().match(/^\s*function\s*([^\(\s]*)/)[1]}}),void 0===Object.assign&&(Object.assign=function(t){if(null==t)throw TypeError("Cannot convert undefined or null to object");for(var e=Object(t),n=1;n<arguments.length;n++){var i=arguments[n];if(null!=i)for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(e[r]=i[r])}return e}),Object.assign(i.prototype,{addEventListener:function(t,e){void 0===this._listeners&&(this._listeners={});var n=this._listeners;void 0===n[t]&&(n[t]=[]),-1===n[t].indexOf(e)&&n[t].push(e)},hasEventListener:function(t,e){if(void 0===this._listeners)return!1;var n=this._listeners;return void 0!==n[t]&&-1!==n[t].indexOf(e)},removeEventListener:function(t,e){if(void 0!==this._listeners){var n=this._listeners[t];if(void 0!==n){var i=n.indexOf(e);-1!==i&&n.splice(i,1)}}},dispatchEvent:function(t){if(void 0!==this._listeners){var e=this._listeners[t.type];if(void 0!==e){t.target=this;for(var n=e.slice(0),i=0,r=n.length;i<r;i++)n[i].call(this,t)}}}});var r,o,a,s,u,l,h,c,p,d,f,m,g,v,$,y,_,x,b,w,A,T,S,E,P,C,L,M,R,I,D,N,B,O,G,k,V,z,U,H,F,W,X,Y,K,j,Z,q,Q,J,tt,te,tn,ti="98",tr={LEFT:0,MIDDLE:1,RIGHT:2},to=0,ta=1,ts=2,tu=3,tl=0,th=1,tc=0,tp=1,td=2,tf=0,tm=1,tg=2,tv=1,t$=2,ty=0,t_=1,t8=2,tx=0,tb=1,tw=2,tA=3,tT=4,tS=5,tE=100,t0=101,tP=102,tC=103,tL=104,tM=200,t1=201,tR=202,t3=203,tI=204,tD=205,tN=206,tB=207,tO=208,tG=209,tk=210,tV=0,tz=1,tU=2,t2=3,tH=4,tF=5,t5=6,t4=7,t6=0,tW=1,t7=2,tX=0,tY=1,tK=2,tj=3,tZ=4,tq=300,tQ=301,tJ=302,t9=303,et=304,ee=305,en=306,ei=307,er=1e3,eo=1001,ea=1002,es=1003,eu=1004,el=1005,eh=1006,ec=1007,ep=1008,ed=1009,ef=1010,em=1011,eg=1012,ev=1013,e$=1014,ey=1015,e_=1016,e8=1017,ex=1018,eb=1019,ew=1020,eA=1021,eT=1022,eS=1023,eE=1024,e0=1025,eP=eS,eC=1026,eL=1027,eM=1028,e1=33776,eR=33777,e3=33778,eI=33779,eD=35840,eN=35841,eB=35842,eO=35843,eG=36196,ek=37808,eV=37809,ez=37810,eU=37811,e2=37812,eH=37813,eF=37814,e5=37815,e4=37816,e6=37817,eW=37818,e7=37819,eX=37820,eY=37821,eK=2200,ej=2201,eZ=2202,eq=2300,eQ=2301,eJ=2302,e9=2400,nt=2401,ne=2402,nn=0,ni=1,nr=2,no=3e3,na=3001,ns=3007,nu=3002,nl=3003,nh=3004,nc=3005,np=3006,nd=3200,nf=3201,nm=0,ng=1,nv={DEG2RAD:Math.PI/180,RAD2DEG:180/Math.PI,generateUUID:function(){for(var t=[],e=0;e<256;e++)t[e]=(e<16?"0":"")+e.toString(16);return function(){var e=4294967295*Math.random()|0,n=4294967295*Math.random()|0,i=4294967295*Math.random()|0,r=4294967295*Math.random()|0;return(t[255&e]+t[e>>8&255]+t[e>>16&255]+t[e>>24&255]+"-"+t[255&n]+t[n>>8&255]+"-"+t[n>>16&15|64]+t[n>>24&255]+"-"+t[63&i|128]+t[i>>8&255]+"-"+t[i>>16&255]+t[i>>24&255]+t[255&r]+t[r>>8&255]+t[r>>16&255]+t[r>>24&255]).toUpperCase()}}(),clamp:function(t,e,n){return Math.max(e,Math.min(n,t))},euclideanModulo:function(t,e){return(t%e+e)%e},mapLinear:function(t,e,n,i,r){return i+(t-e)*(r-i)/(n-e)},lerp:function(t,e,n){return(1-n)*t+n*e},smoothstep:function(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e))*t*(3-2*t)},smootherstep:function(t,e,n){return t<=e?0:t>=n?1:(t=(t-e)/(n-e))*t*t*(t*(6*t-15)+10)},randInt:function(t,e){return t+Math.floor(Math.random()*(e-t+1))},randFloat:function(t,e){return t+Math.random()*(e-t)},randFloatSpread:function(t){return t*(.5-Math.random())},degToRad:function(t){return t*nv.DEG2RAD},radToDeg:function(t){return t*nv.RAD2DEG},isPowerOfTwo:function(t){return 0==(t&t-1)&&0!==t},ceilPowerOfTwo:function(t){return Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))},floorPowerOfTwo:function(t){return Math.pow(2,Math.floor(Math.log(t)/Math.LN2))}};function n$(t,e){this.x=t||0,this.y=e||0}function ny(){this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix4: the constructor no longer reads arguments. use .set() instead.")}function n_(t,e,n,i){this._x=t||0,this._y=e||0,this._z=n||0,this._w=void 0!==i?i:1}function n8(t,e,n){this.x=t||0,this.y=e||0,this.z=n||0}function nx(){this.elements=[1,0,0,0,1,0,0,0,1],arguments.length>0&&console.error("THREE.Matrix3: the constructor no longer reads arguments. use .set() instead.")}Object.defineProperties(n$.prototype,{width:{get:function(){return this.x},set:function(t){this.x=t}},height:{get:function(){return this.y},set:function(t){this.y=t}}}),Object.assign(n$.prototype,{isVector2:!0,set:function(t,e){return this.x=t,this.y=e,this},setScalar:function(t){return this.x=t,this.y=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;default:throw Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;default:throw Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y)},copy:function(t){return this.x=t.x,this.y=t.y,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector2: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this)},addScalar:function(t){return this.x+=t,this.y+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector2: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this)},subScalar:function(t){return this.x-=t,this.y-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this},multiply:function(t){return this.x*=t.x,this.y*=t.y,this},multiplyScalar:function(t){return this.x*=t,this.y*=t,this},divide:function(t){return this.x/=t.x,this.y/=t.y,this},divideScalar:function(t){return this.multiplyScalar(1/t)},applyMatrix3:function(t){var e=this.x,n=this.y,i=t.elements;return this.x=i[0]*e+i[3]*n+i[6],this.y=i[1]*e+i[4]*n+i[7],this},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this},clampScalar:(r8=new n$,rx=new n$,function(t,e){return r8.set(t,t),rx.set(e,e),this.clamp(r8,rx)}),clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this},negate:function(){return this.x=-this.x,this.y=-this.y,this},dot:function(t){return this.x*t.x+this.y*t.y},cross:function(t){return this.x*t.y-this.y*t.x},lengthSq:function(){return this.x*this.x+this.y*this.y},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)},normalize:function(){return this.divideScalar(this.length()||1)},angle:function(){var t=Math.atan2(this.y,this.x);return t<0&&(t+=2*Math.PI),t},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,n=this.y-t.y;return e*e+n*n},manhattanDistanceTo:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},equals:function(t){return t.x===this.x&&t.y===this.y},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector2: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this},rotateAround:function(t,e){var n=Math.cos(e),i=Math.sin(e),r=this.x-t.x,o=this.y-t.y;return this.x=r*n-o*i+t.x,this.y=r*i+o*n+t.y,this}}),Object.assign(ny.prototype,{isMatrix4:!0,set:function(t,e,n,i,r,o,a,s,u,l,h,c,p,d,f,m){var g=this.elements;return g[0]=t,g[4]=e,g[8]=n,g[12]=i,g[1]=r,g[5]=o,g[9]=a,g[13]=s,g[2]=u,g[6]=l,g[10]=h,g[14]=c,g[3]=p,g[7]=d,g[11]=f,g[15]=m,this},identity:function(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this},clone:function(){return(new ny).fromArray(this.elements)},copy:function(t){var e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],e[9]=n[9],e[10]=n[10],e[11]=n[11],e[12]=n[12],e[13]=n[13],e[14]=n[14],e[15]=n[15],this},copyPosition:function(t){var e=this.elements,n=t.elements;return e[12]=n[12],e[13]=n[13],e[14]=n[14],this},extractBasis:function(t,e,n){return t.setFromMatrixColumn(this,0),e.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this},makeBasis:function(t,e,n){return this.set(t.x,e.x,n.x,0,t.y,e.y,n.y,0,t.z,e.z,n.z,0,0,0,0,1),this},extractRotation:(rb=new n8,function(t){var e=this.elements,n=t.elements,i=1/rb.setFromMatrixColumn(t,0).length(),r=1/rb.setFromMatrixColumn(t,1).length(),o=1/rb.setFromMatrixColumn(t,2).length();return e[0]=n[0]*i,e[1]=n[1]*i,e[2]=n[2]*i,e[3]=0,e[4]=n[4]*r,e[5]=n[5]*r,e[6]=n[6]*r,e[7]=0,e[8]=n[8]*o,e[9]=n[9]*o,e[10]=n[10]*o,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this}),makeRotationFromEuler:function(t){t&&t.isEuler||console.error("THREE.Matrix4: .makeRotationFromEuler() now expects a Euler rotation rather than a Vector3 and order.");var e=this.elements,n=t.x,i=t.y,r=t.z,o=Math.cos(n),a=Math.sin(n),s=Math.cos(i),u=Math.sin(i),l=Math.cos(r),h=Math.sin(r);if("XYZ"===t.order){var c=o*l,p=o*h,d=a*l,f=a*h;e[0]=s*l,e[4]=-s*h,e[8]=u,e[1]=p+d*u,e[5]=c-f*u,e[9]=-a*s,e[2]=f-c*u,e[6]=d+p*u,e[10]=o*s}else if("YXZ"===t.order){var m=s*l,g=s*h,v=u*l,$=u*h;e[0]=m+$*a,e[4]=v*a-g,e[8]=o*u,e[1]=o*h,e[5]=o*l,e[9]=-a,e[2]=g*a-v,e[6]=$+m*a,e[10]=o*s}else if("ZXY"===t.order)m=s*l,g=s*h,v=u*l,$=u*h,e[0]=m-$*a,e[4]=-o*h,e[8]=v+g*a,e[1]=g+v*a,e[5]=o*l,e[9]=$-m*a,e[2]=-o*u,e[6]=a,e[10]=o*s;else if("ZYX"===t.order)c=o*l,p=o*h,d=a*l,f=a*h,e[0]=s*l,e[4]=d*u-p,e[8]=c*u+f,e[1]=s*h,e[5]=f*u+c,e[9]=p*u-d,e[2]=-u,e[6]=a*s,e[10]=o*s;else if("YZX"===t.order){var y=o*s,_=o*u,x=a*s,b=a*u;e[0]=s*l,e[4]=b-y*h,e[8]=x*h+_,e[1]=h,e[5]=o*l,e[9]=-a*l,e[2]=-u*l,e[6]=_*h+x,e[10]=y-b*h}else"XZY"===t.order&&(y=o*s,_=o*u,x=a*s,b=a*u,e[0]=s*l,e[4]=-h,e[8]=u*l,e[1]=y*h+b,e[5]=o*l,e[9]=_*h-x,e[2]=x*h-_,e[6]=a*l,e[10]=b*h+y);return e[3]=0,e[7]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,this},makeRotationFromQuaternion:(rw=new n8(0,0,0),rA=new n8(1,1,1),function(t){return this.compose(rw,t,rA)}),lookAt:(rT=new n8,rS=new n8,rE=new n8,function(t,e,n){var i=this.elements;return rE.subVectors(t,e),0===rE.lengthSq()&&(rE.z=1),rE.normalize(),rT.crossVectors(n,rE),0===rT.lengthSq()&&(1===Math.abs(n.z)?rE.x+=1e-4:rE.z+=1e-4,rE.normalize(),rT.crossVectors(n,rE)),rT.normalize(),rS.crossVectors(rE,rT),i[0]=rT.x,i[4]=rS.x,i[8]=rE.x,i[1]=rT.y,i[5]=rS.y,i[9]=rE.y,i[2]=rT.z,i[6]=rS.z,i[10]=rE.z,this}),multiply:function(t,e){return void 0!==e?(console.warn("THREE.Matrix4: .multiply() now only accepts one argument. Use .multiplyMatrices( a, b ) instead."),this.multiplyMatrices(t,e)):this.multiplyMatrices(this,t)},premultiply:function(t){return this.multiplyMatrices(t,this)},multiplyMatrices:function(t,e){var n=t.elements,i=e.elements,r=this.elements,o=n[0],a=n[4],s=n[8],u=n[12],l=n[1],h=n[5],c=n[9],p=n[13],d=n[2],f=n[6],m=n[10],g=n[14],v=n[3],$=n[7],y=n[11],_=n[15],x=i[0],b=i[4],w=i[8],A=i[12],T=i[1],S=i[5],E=i[9],P=i[13],C=i[2],L=i[6],M=i[10],R=i[14],I=i[3],D=i[7],N=i[11],B=i[15];return r[0]=o*x+a*T+s*C+u*I,r[4]=o*b+a*S+s*L+u*D,r[8]=o*w+a*E+s*M+u*N,r[12]=o*A+a*P+s*R+u*B,r[1]=l*x+h*T+c*C+p*I,r[5]=l*b+h*S+c*L+p*D,r[9]=l*w+h*E+c*M+p*N,r[13]=l*A+h*P+c*R+p*B,r[2]=d*x+f*T+m*C+g*I,r[6]=d*b+f*S+m*L+g*D,r[10]=d*w+f*E+m*M+g*N,r[14]=d*A+f*P+m*R+g*B,r[3]=v*x+$*T+y*C+_*I,r[7]=v*b+$*S+y*L+_*D,r[11]=v*w+$*E+y*M+_*N,r[15]=v*A+$*P+y*R+_*B,this},multiplyScalar:function(t){var e=this.elements;return e[0]*=t,e[4]*=t,e[8]*=t,e[12]*=t,e[1]*=t,e[5]*=t,e[9]*=t,e[13]*=t,e[2]*=t,e[6]*=t,e[10]*=t,e[14]*=t,e[3]*=t,e[7]*=t,e[11]*=t,e[15]*=t,this},applyToBufferAttribute:(r0=new n8,function(t){for(var e=0,n=t.count;e<n;e++)r0.x=t.getX(e),r0.y=t.getY(e),r0.z=t.getZ(e),r0.applyMatrix4(this),t.setXYZ(e,r0.x,r0.y,r0.z);return t}),determinant:function(){var t=this.elements,e=t[0],n=t[4],i=t[8],r=t[12],o=t[1],a=t[5],s=t[9],u=t[13],l=t[2],h=t[6],c=t[10],p=t[14];return t[3]*(+r*s*h-i*u*h-r*a*c+n*u*c+i*a*p-n*s*p)+t[7]*(+e*s*p-e*u*c+r*o*c-i*o*p+i*u*l-r*s*l)+t[11]*(+e*u*h-e*a*p-r*o*h+n*o*p+r*a*l-n*u*l)+t[15]*(-i*a*l-e*s*h+e*a*c+i*o*h-n*o*c+n*s*l)},transpose:function(){var t,e=this.elements;return t=e[1],e[1]=e[4],e[4]=t,t=e[2],e[2]=e[8],e[8]=t,t=e[6],e[6]=e[9],e[9]=t,t=e[3],e[3]=e[12],e[12]=t,t=e[7],e[7]=e[13],e[13]=t,t=e[11],e[11]=e[14],e[14]=t,this},setPosition:function(t){var e=this.elements;return e[12]=t.x,e[13]=t.y,e[14]=t.z,this},getInverse:function(t,e){var n=this.elements,i=t.elements,r=i[0],o=i[1],a=i[2],s=i[3],u=i[4],l=i[5],h=i[6],c=i[7],p=i[8],d=i[9],f=i[10],m=i[11],g=i[12],v=i[13],$=i[14],y=i[15],_=d*$*c-v*f*c+v*h*m-l*$*m-d*h*y+l*f*y,x=g*f*c-p*$*c-g*h*m+u*$*m+p*h*y-u*f*y,b=p*v*c-g*d*c+g*l*m-u*v*m-p*l*y+u*d*y,w=g*d*h-p*v*h-g*l*f+u*v*f+p*l*$-u*d*$,A=r*_+o*x+a*b+s*w;if(0===A){var T="THREE.Matrix4: .getInverse() can't invert matrix, determinant is 0";if(!0===e)throw Error(T);return console.warn(T),this.identity()}var S=1/A;return n[0]=_*S,n[1]=(v*f*s-d*$*s-v*a*m+o*$*m+d*a*y-o*f*y)*S,n[2]=(l*$*s-v*h*s+v*a*c-o*$*c-l*a*y+o*h*y)*S,n[3]=(d*h*s-l*f*s-d*a*c+o*f*c+l*a*m-o*h*m)*S,n[4]=x*S,n[5]=(p*$*s-g*f*s+g*a*m-r*$*m-p*a*y+r*f*y)*S,n[6]=(g*h*s-u*$*s-g*a*c+r*$*c+u*a*y-r*h*y)*S,n[7]=(u*f*s-p*h*s+p*a*c-r*f*c-u*a*m+r*h*m)*S,n[8]=b*S,n[9]=(g*d*s-p*v*s-g*o*m+r*v*m+p*o*y-r*d*y)*S,n[10]=(u*v*s-g*l*s+g*o*c-r*v*c-u*o*y+r*l*y)*S,n[11]=(p*l*s-u*d*s-p*o*c+r*d*c+u*o*m-r*l*m)*S,n[12]=w*S,n[13]=(p*v*a-g*d*a+g*o*f-r*v*f-p*o*$+r*d*$)*S,n[14]=(g*l*a-u*v*a-g*o*h+r*v*h+u*o*$-r*l*$)*S,n[15]=(u*d*a-p*l*a+p*o*h-r*d*h-u*o*f+r*l*f)*S,this},scale:function(t){var e=this.elements,n=t.x,i=t.y,r=t.z;return e[0]*=n,e[4]*=i,e[8]*=r,e[1]*=n,e[5]*=i,e[9]*=r,e[2]*=n,e[6]*=i,e[10]*=r,e[3]*=n,e[7]*=i,e[11]*=r,this},getMaxScaleOnAxis:function(){var t,e=this.elements,n=e[0]*e[0]+e[1]*e[1]+e[2]*e[2];return Math.sqrt(Math.max(n,e[4]*e[4]+e[5]*e[5]+e[6]*e[6],e[8]*e[8]+e[9]*e[9]+e[10]*e[10]))},makeTranslation:function(t,e,n){return this.set(1,0,0,t,0,1,0,e,0,0,1,n,0,0,0,1),this},makeRotationX:function(t){var e=Math.cos(t),n=Math.sin(t);return this.set(1,0,0,0,0,e,-n,0,0,n,e,0,0,0,0,1),this},makeRotationY:function(t){var e=Math.cos(t),n=Math.sin(t);return this.set(e,0,n,0,0,1,0,0,-n,0,e,0,0,0,0,1),this},makeRotationZ:function(t){var e=Math.cos(t),n=Math.sin(t);return this.set(e,-n,0,0,n,e,0,0,0,0,1,0,0,0,0,1),this},makeRotationAxis:function(t,e){var n=Math.cos(e),i=Math.sin(e),r=1-n,o=t.x,a=t.y,s=t.z,u=r*o,l=r*a;return this.set(u*o+n,u*a-i*s,u*s+i*a,0,u*a+i*s,l*a+n,l*s-i*o,0,u*s-i*a,l*s+i*o,r*s*s+n,0,0,0,0,1),this},makeScale:function(t,e,n){return this.set(t,0,0,0,0,e,0,0,0,0,n,0,0,0,0,1),this},makeShear:function(t,e,n){return this.set(1,e,n,0,t,1,n,0,t,e,1,0,0,0,0,1),this},compose:function(t,e,n){var i=this.elements,r=e._x,o=e._y,a=e._z,s=e._w,u=r+r,l=o+o,h=a+a,c=r*u,p=r*l,d=r*h,f=o*l,m=o*h,g=a*h,v=s*u,$=s*l,y=s*h,_=n.x,x=n.y,b=n.z;return i[0]=(1-(f+g))*_,i[1]=(p+y)*_,i[2]=(d-$)*_,i[3]=0,i[4]=(p-y)*x,i[5]=(1-(c+g))*x,i[6]=(m+v)*x,i[7]=0,i[8]=(d+$)*b,i[9]=(m-v)*b,i[10]=(1-(c+f))*b,i[11]=0,i[12]=t.x,i[13]=t.y,i[14]=t.z,i[15]=1,this},decompose:(rP=new n8,rC=new ny,function(t,e,n){var i=this.elements,r=rP.set(i[0],i[1],i[2]).length(),o=rP.set(i[4],i[5],i[6]).length(),a=rP.set(i[8],i[9],i[10]).length();0>this.determinant()&&(r=-r),t.x=i[12],t.y=i[13],t.z=i[14],rC.copy(this);var s=1/r,u=1/o,l=1/a;return rC.elements[0]*=s,rC.elements[1]*=s,rC.elements[2]*=s,rC.elements[4]*=u,rC.elements[5]*=u,rC.elements[6]*=u,rC.elements[8]*=l,rC.elements[9]*=l,rC.elements[10]*=l,e.setFromRotationMatrix(rC),n.x=r,n.y=o,n.z=a,this}),makePerspective:function(t,e,n,i,r,o){void 0===o&&console.warn("THREE.Matrix4: .makePerspective() has been redefined and has a new signature. Please check the docs.");var a=this.elements;return a[0]=2*r/(e-t),a[4]=0,a[8]=(e+t)/(e-t),a[12]=0,a[1]=0,a[5]=2*r/(n-i),a[9]=(n+i)/(n-i),a[13]=0,a[2]=0,a[6]=0,a[10]=-(o+r)/(o-r),a[14]=-2*o*r/(o-r),a[3]=0,a[7]=0,a[11]=-1,a[15]=0,this},makeOrthographic:function(t,e,n,i,r,o){var a=this.elements,s=1/(e-t),u=1/(n-i),l=1/(o-r);return a[0]=2*s,a[4]=0,a[8]=0,a[12]=-((e+t)*s),a[1]=0,a[5]=2*u,a[9]=0,a[13]=-((n+i)*u),a[2]=0,a[6]=0,a[10]=-2*l,a[14]=-((o+r)*l),a[3]=0,a[7]=0,a[11]=0,a[15]=1,this},equals:function(t){for(var e=this.elements,n=t.elements,i=0;i<16;i++)if(e[i]!==n[i])return!1;return!0},fromArray:function(t,e){void 0===e&&(e=0);for(var n=0;n<16;n++)this.elements[n]=t[n+e];return this},toArray:function(t,e){void 0===t&&(t=[]),void 0===e&&(e=0);var n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t[e+9]=n[9],t[e+10]=n[10],t[e+11]=n[11],t[e+12]=n[12],t[e+13]=n[13],t[e+14]=n[14],t[e+15]=n[15],t}}),Object.assign(n_,{slerp:function(t,e,n,i){return n.copy(t).slerp(e,i)},slerpFlat:function(t,e,n,i,r,o,a){var s=n[i+0],u=n[i+1],l=n[i+2],h=n[i+3],c=r[o+0],p=r[o+1],d=r[o+2],f=r[o+3];if(h!==f||s!==c||u!==p||l!==d){var m=1-a,g=s*c+u*p+l*d+h*f,v=g>=0?1:-1,$=1-g*g;if($>Number.EPSILON){var y=Math.sqrt($),_=Math.atan2(y,g*v);m=Math.sin(m*_)/y,a=Math.sin(a*_)/y}var x=a*v;if(s=s*m+c*x,u=u*m+p*x,l=l*m+d*x,h=h*m+f*x,m===1-a){var b=1/Math.sqrt(s*s+u*u+l*l+h*h);s*=b,u*=b,l*=b,h*=b}}t[e]=s,t[e+1]=u,t[e+2]=l,t[e+3]=h}}),Object.defineProperties(n_.prototype,{x:{get:function(){return this._x},set:function(t){this._x=t,this.onChangeCallback()}},y:{get:function(){return this._y},set:function(t){this._y=t,this.onChangeCallback()}},z:{get:function(){return this._z},set:function(t){this._z=t,this.onChangeCallback()}},w:{get:function(){return this._w},set:function(t){this._w=t,this.onChangeCallback()}}}),Object.assign(n_.prototype,{isQuaternion:!0,set:function(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._w=i,this.onChangeCallback(),this},clone:function(){return new this.constructor(this._x,this._y,this._z,this._w)},copy:function(t){return this._x=t.x,this._y=t.y,this._z=t.z,this._w=t.w,this.onChangeCallback(),this},setFromEuler:function(t,e){if(!t||!t.isEuler)throw Error("THREE.Quaternion: .setFromEuler() now expects an Euler rotation rather than a Vector3 and order.");var n=t._x,i=t._y,r=t._z,o=t.order,a=Math.cos,s=Math.sin,u=a(n/2),l=a(i/2),h=a(r/2),c=s(n/2),p=s(i/2),d=s(r/2);return"XYZ"===o?(this._x=c*l*h+u*p*d,this._y=u*p*h-c*l*d,this._z=u*l*d+c*p*h,this._w=u*l*h-c*p*d):"YXZ"===o?(this._x=c*l*h+u*p*d,this._y=u*p*h-c*l*d,this._z=u*l*d-c*p*h,this._w=u*l*h+c*p*d):"ZXY"===o?(this._x=c*l*h-u*p*d,this._y=u*p*h+c*l*d,this._z=u*l*d+c*p*h,this._w=u*l*h-c*p*d):"ZYX"===o?(this._x=c*l*h-u*p*d,this._y=u*p*h+c*l*d,this._z=u*l*d-c*p*h,this._w=u*l*h+c*p*d):"YZX"===o?(this._x=c*l*h+u*p*d,this._y=u*p*h+c*l*d,this._z=u*l*d-c*p*h,this._w=u*l*h-c*p*d):"XZY"===o&&(this._x=c*l*h-u*p*d,this._y=u*p*h-c*l*d,this._z=u*l*d+c*p*h,this._w=u*l*h+c*p*d),!1!==e&&this.onChangeCallback(),this},setFromAxisAngle:function(t,e){var n=e/2,i=Math.sin(n);return this._x=t.x*i,this._y=t.y*i,this._z=t.z*i,this._w=Math.cos(n),this.onChangeCallback(),this},setFromRotationMatrix:function(t){var e,n=t.elements,i=n[0],r=n[4],o=n[8],a=n[1],s=n[5],u=n[9],l=n[2],h=n[6],c=n[10],p=i+s+c;return p>0?(e=.5/Math.sqrt(p+1),this._w=.25/e,this._x=(h-u)*e,this._y=(o-l)*e,this._z=(a-r)*e):i>s&&i>c?(e=2*Math.sqrt(1+i-s-c),this._w=(h-u)/e,this._x=.25*e,this._y=(r+a)/e,this._z=(o+l)/e):s>c?(e=2*Math.sqrt(1+s-i-c),this._w=(o-l)/e,this._x=(r+a)/e,this._y=.25*e,this._z=(u+h)/e):(e=2*Math.sqrt(1+c-i-s),this._w=(a-r)/e,this._x=(o+l)/e,this._y=(u+h)/e,this._z=.25*e),this.onChangeCallback(),this},setFromUnitVectors:(rM=new n8,function(t,e){return void 0===rM&&(rM=new n8),(rL=t.dot(e)+1)<1e-6?(rL=0,Math.abs(t.x)>Math.abs(t.z)?rM.set(-t.y,t.x,0):rM.set(0,-t.z,t.y)):rM.crossVectors(t,e),this._x=rM.x,this._y=rM.y,this._z=rM.z,this._w=rL,this.normalize()}),angleTo:function(t){return 2*Math.acos(Math.abs(nv.clamp(this.dot(t),-1,1)))},rotateTowards:function(t,e){var n=this.angleTo(t);if(0===n)return this;var i=Math.min(1,e/n);return this.slerp(t,i),this},inverse:function(){return this.conjugate()},conjugate:function(){return this._x*=-1,this._y*=-1,this._z*=-1,this.onChangeCallback(),this},dot:function(t){return this._x*t._x+this._y*t._y+this._z*t._z+this._w*t._w},lengthSq:function(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w},length:function(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)},normalize:function(){var t=this.length();return 0===t?(this._x=0,this._y=0,this._z=0,this._w=1):(t=1/t,this._x=this._x*t,this._y=this._y*t,this._z=this._z*t,this._w=this._w*t),this.onChangeCallback(),this},multiply:function(t,e){return void 0!==e?(console.warn("THREE.Quaternion: .multiply() now only accepts one argument. Use .multiplyQuaternions( a, b ) instead."),this.multiplyQuaternions(t,e)):this.multiplyQuaternions(this,t)},premultiply:function(t){return this.multiplyQuaternions(t,this)},multiplyQuaternions:function(t,e){var n=t._x,i=t._y,r=t._z,o=t._w,a=e._x,s=e._y,u=e._z,l=e._w;return this._x=n*l+o*a+i*u-r*s,this._y=i*l+o*s+r*a-n*u,this._z=r*l+o*u+n*s-i*a,this._w=o*l-n*a-i*s-r*u,this.onChangeCallback(),this},slerp:function(t,e){if(0===e)return this;if(1===e)return this.copy(t);var n=this._x,i=this._y,r=this._z,o=this._w,a=o*t._w+n*t._x+i*t._y+r*t._z;if(a<0?(this._w=-t._w,this._x=-t._x,this._y=-t._y,this._z=-t._z,a=-a):this.copy(t),a>=1)return this._w=o,this._x=n,this._y=i,this._z=r,this;var s=1-a*a;if(s<=Number.EPSILON){var u=1-e;return this._w=u*o+e*this._w,this._x=u*n+e*this._x,this._y=u*i+e*this._y,this._z=u*r+e*this._z,this.normalize()}var l=Math.sqrt(s),h=Math.atan2(l,a),c=Math.sin((1-e)*h)/l,p=Math.sin(e*h)/l;return this._w=o*c+this._w*p,this._x=n*c+this._x*p,this._y=i*c+this._y*p,this._z=r*c+this._z*p,this.onChangeCallback(),this},equals:function(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._w===this._w},fromArray:function(t,e){return void 0===e&&(e=0),this._x=t[e],this._y=t[e+1],this._z=t[e+2],this._w=t[e+3],this.onChangeCallback(),this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._w,t},onChange:function(t){return this.onChangeCallback=t,this},onChangeCallback:function(){}}),Object.assign(n8.prototype,{isVector3:!0,set:function(t,e,n){return this.x=t,this.y=e,this.z=n,this},setScalar:function(t){return this.x=t,this.y=t,this.z=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setZ:function(t){return this.z=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;default:throw Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y,this.z)},copy:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this)},addScalar:function(t){return this.x+=t,this.y+=t,this.z+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this)},subScalar:function(t){return this.x-=t,this.y-=t,this.z-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this},multiply:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .multiply() now only accepts one argument. Use .multiplyVectors( a, b ) instead."),this.multiplyVectors(t,e)):(this.x*=t.x,this.y*=t.y,this.z*=t.z,this)},multiplyScalar:function(t){return this.x*=t,this.y*=t,this.z*=t,this},multiplyVectors:function(t,e){return this.x=t.x*e.x,this.y=t.y*e.y,this.z=t.z*e.z,this},applyEuler:(r1=new n_,function(t){return t&&t.isEuler||console.error("THREE.Vector3: .applyEuler() now expects an Euler rotation rather than a Vector3 and order."),this.applyQuaternion(r1.setFromEuler(t))}),applyAxisAngle:(rR=new n_,function(t,e){return this.applyQuaternion(rR.setFromAxisAngle(t,e))}),applyMatrix3:function(t){var e=this.x,n=this.y,i=this.z,r=t.elements;return this.x=r[0]*e+r[3]*n+r[6]*i,this.y=r[1]*e+r[4]*n+r[7]*i,this.z=r[2]*e+r[5]*n+r[8]*i,this},applyMatrix4:function(t){var e=this.x,n=this.y,i=this.z,r=t.elements,o=1/(r[3]*e+r[7]*n+r[11]*i+r[15]);return this.x=(r[0]*e+r[4]*n+r[8]*i+r[12])*o,this.y=(r[1]*e+r[5]*n+r[9]*i+r[13])*o,this.z=(r[2]*e+r[6]*n+r[10]*i+r[14])*o,this},applyQuaternion:function(t){var e=this.x,n=this.y,i=this.z,r=t.x,o=t.y,a=t.z,s=t.w,u=s*e+o*i-a*n,l=s*n+a*e-r*i,h=s*i+r*n-o*e,c=-r*e-o*n-a*i;return this.x=u*s+-(c*r)+-(l*a)- -(h*o),this.y=l*s+-(c*o)+-(h*r)- -(u*a),this.z=h*s+-(c*a)+-(u*o)- -(l*r),this},project:function(t){return this.applyMatrix4(t.matrixWorldInverse).applyMatrix4(t.projectionMatrix)},unproject:(r3=new ny,function(t){return this.applyMatrix4(r3.getInverse(t.projectionMatrix)).applyMatrix4(t.matrixWorld)}),transformDirection:function(t){var e=this.x,n=this.y,i=this.z,r=t.elements;return this.x=r[0]*e+r[4]*n+r[8]*i,this.y=r[1]*e+r[5]*n+r[9]*i,this.z=r[2]*e+r[6]*n+r[10]*i,this.normalize()},divide:function(t){return this.x/=t.x,this.y/=t.y,this.z/=t.z,this},divideScalar:function(t){return this.multiplyScalar(1/t)},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this},clampScalar:(rI=new n8,rD=new n8,function(t,e){return rI.set(t,t,t),rD.set(e,e,e),this.clamp(rI,rD)}),clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this},dot:function(t){return this.x*t.x+this.y*t.y+this.z*t.z},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)},normalize:function(){return this.divideScalar(this.length()||1)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},cross:function(t,e){return void 0!==e?(console.warn("THREE.Vector3: .cross() now only accepts one argument. Use .crossVectors( a, b ) instead."),this.crossVectors(t,e)):this.crossVectors(this,t)},crossVectors:function(t,e){var n=t.x,i=t.y,r=t.z,o=e.x,a=e.y,s=e.z;return this.x=i*s-r*a,this.y=r*o-n*s,this.z=n*a-i*o,this},projectOnVector:function(t){var e=t.dot(this)/t.lengthSq();return this.copy(t).multiplyScalar(e)},projectOnPlane:(rN=new n8,function(t){return rN.copy(this).projectOnVector(t),this.sub(rN)}),reflect:(rB=new n8,function(t){return this.sub(rB.copy(t).multiplyScalar(2*this.dot(t)))}),angleTo:function(t){var e=this.dot(t)/Math.sqrt(this.lengthSq()*t.lengthSq());return Math.acos(nv.clamp(e,-1,1))},distanceTo:function(t){return Math.sqrt(this.distanceToSquared(t))},distanceToSquared:function(t){var e=this.x-t.x,n=this.y-t.y,i=this.z-t.z;return e*e+n*n+i*i},manhattanDistanceTo:function(t){return Math.abs(this.x-t.x)+Math.abs(this.y-t.y)+Math.abs(this.z-t.z)},setFromSpherical:function(t){return this.setFromSphericalCoords(t.radius,t.phi,t.theta)},setFromSphericalCoords:function(t,e,n){var i=Math.sin(e)*t;return this.x=i*Math.sin(n),this.y=Math.cos(e)*t,this.z=i*Math.cos(n),this},setFromCylindrical:function(t){return this.setFromCylindricalCoords(t.radius,t.theta,t.y)},setFromCylindricalCoords:function(t,e,n){return this.x=t*Math.sin(e),this.y=n,this.z=t*Math.cos(e),this},setFromMatrixPosition:function(t){var e=t.elements;return this.x=e[12],this.y=e[13],this.z=e[14],this},setFromMatrixScale:function(t){var e=this.setFromMatrixColumn(t,0).length(),n=this.setFromMatrixColumn(t,1).length(),i=this.setFromMatrixColumn(t,2).length();return this.x=e,this.y=n,this.z=i,this},setFromMatrixColumn:function(t,e){return this.fromArray(t.elements,4*e)},equals:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector3: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this}}),Object.assign(nx.prototype,{isMatrix3:!0,set:function(t,e,n,i,r,o,a,s,u){var l=this.elements;return l[0]=t,l[1]=i,l[2]=a,l[3]=e,l[4]=r,l[5]=s,l[6]=n,l[7]=o,l[8]=u,this},identity:function(){return this.set(1,0,0,0,1,0,0,0,1),this},clone:function(){return(new this.constructor).fromArray(this.elements)},copy:function(t){var e=this.elements,n=t.elements;return e[0]=n[0],e[1]=n[1],e[2]=n[2],e[3]=n[3],e[4]=n[4],e[5]=n[5],e[6]=n[6],e[7]=n[7],e[8]=n[8],this},setFromMatrix4:function(t){var e=t.elements;return this.set(e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]),this},applyToBufferAttribute:(rO=new n8,function(t){for(var e=0,n=t.count;e<n;e++)rO.x=t.getX(e),rO.y=t.getY(e),rO.z=t.getZ(e),rO.applyMatrix3(this),t.setXYZ(e,rO.x,rO.y,rO.z);return t}),multiply:function(t){return this.multiplyMatrices(this,t)},premultiply:function(t){return this.multiplyMatrices(t,this)},multiplyMatrices:function(t,e){var n=t.elements,i=e.elements,r=this.elements,o=n[0],a=n[3],s=n[6],u=n[1],l=n[4],h=n[7],c=n[2],p=n[5],d=n[8],f=i[0],m=i[3],g=i[6],v=i[1],$=i[4],y=i[7],_=i[2],x=i[5],b=i[8];return r[0]=o*f+a*v+s*_,r[3]=o*m+a*$+s*x,r[6]=o*g+a*y+s*b,r[1]=u*f+l*v+h*_,r[4]=u*m+l*$+h*x,r[7]=u*g+l*y+h*b,r[2]=c*f+p*v+d*_,r[5]=c*m+p*$+d*x,r[8]=c*g+p*y+d*b,this},multiplyScalar:function(t){var e=this.elements;return e[0]*=t,e[3]*=t,e[6]*=t,e[1]*=t,e[4]*=t,e[7]*=t,e[2]*=t,e[5]*=t,e[8]*=t,this},determinant:function(){var t=this.elements,e=t[0],n=t[1],i=t[2],r=t[3],o=t[4],a=t[5],s=t[6],u=t[7],l=t[8];return e*o*l-e*a*u-n*r*l+n*a*s+i*r*u-i*o*s},getInverse:function(t,e){t&&t.isMatrix4&&console.error("THREE.Matrix3: .getInverse() no longer takes a Matrix4 argument.");var n=t.elements,i=this.elements,r=n[0],o=n[1],a=n[2],s=n[3],u=n[4],l=n[5],h=n[6],c=n[7],p=n[8],d=p*u-l*c,f=l*h-p*s,m=c*s-u*h,g=r*d+o*f+a*m;if(0===g){var v="THREE.Matrix3: .getInverse() can't invert matrix, determinant is 0";if(!0===e)throw Error(v);return console.warn(v),this.identity()}var $=1/g;return i[0]=d*$,i[1]=(a*c-p*o)*$,i[2]=(l*o-a*u)*$,i[3]=f*$,i[4]=(p*r-a*h)*$,i[5]=(a*s-l*r)*$,i[6]=m*$,i[7]=(o*h-c*r)*$,i[8]=(u*r-o*s)*$,this},transpose:function(){var t,e=this.elements;return t=e[1],e[1]=e[3],e[3]=t,t=e[2],e[2]=e[6],e[6]=t,t=e[5],e[5]=e[7],e[7]=t,this},getNormalMatrix:function(t){return this.setFromMatrix4(t).getInverse(this).transpose()},transposeIntoArray:function(t){var e=this.elements;return t[0]=e[0],t[1]=e[3],t[2]=e[6],t[3]=e[1],t[4]=e[4],t[5]=e[7],t[6]=e[2],t[7]=e[5],t[8]=e[8],this},setUvTransform:function(t,e,n,i,r,o,a){var s=Math.cos(r),u=Math.sin(r);this.set(n*s,n*u,-n*(s*o+u*a)+o+t,-i*u,i*s,-i*(-u*o+s*a)+a+e,0,0,1)},scale:function(t,e){var n=this.elements;return n[0]*=t,n[3]*=t,n[6]*=t,n[1]*=e,n[4]*=e,n[7]*=e,this},rotate:function(t){var e=Math.cos(t),n=Math.sin(t),i=this.elements,r=i[0],o=i[3],a=i[6],s=i[1],u=i[4],l=i[7];return i[0]=e*r+n*s,i[3]=e*o+n*u,i[6]=e*a+n*l,i[1]=-n*r+e*s,i[4]=-n*o+e*u,i[7]=-n*a+e*l,this},translate:function(t,e){var n=this.elements;return n[0]+=t*n[2],n[3]+=t*n[5],n[6]+=t*n[8],n[1]+=e*n[2],n[4]+=e*n[5],n[7]+=e*n[8],this},equals:function(t){for(var e=this.elements,n=t.elements,i=0;i<9;i++)if(e[i]!==n[i])return!1;return!0},fromArray:function(t,e){void 0===e&&(e=0);for(var n=0;n<9;n++)this.elements[n]=t[n+e];return this},toArray:function(t,e){void 0===t&&(t=[]),void 0===e&&(e=0);var n=this.elements;return t[e]=n[0],t[e+1]=n[1],t[e+2]=n[2],t[e+3]=n[3],t[e+4]=n[4],t[e+5]=n[5],t[e+6]=n[6],t[e+7]=n[7],t[e+8]=n[8],t}});var nb={getDataURL:function(t){var e;if("undefined"==typeof HTMLCanvasElement)return t.src;if(t instanceof HTMLCanvasElement)e=t;else{(e=document.createElementNS("http://www.w3.org/1999/xhtml","canvas")).width=t.width,e.height=t.height;var n=e.getContext("2d");t instanceof ImageData?n.putImageData(t,0,0):n.drawImage(t,0,0,t.width,t.height)}return e.width>2048||e.height>2048?e.toDataURL("image/jpeg",.6):e.toDataURL("image/png")}},nw=0;function nA(t,e,n,i,r,o,a,s,u,l){Object.defineProperty(this,"id",{value:nw++}),this.uuid=nv.generateUUID(),this.name="",this.image=void 0!==t?t:nA.DEFAULT_IMAGE,this.mipmaps=[],this.mapping=void 0!==e?e:nA.DEFAULT_MAPPING,this.wrapS=void 0!==n?n:eo,this.wrapT=void 0!==i?i:eo,this.magFilter=void 0!==r?r:eh,this.minFilter=void 0!==o?o:ep,this.anisotropy=void 0!==u?u:1,this.format=void 0!==a?a:eS,this.type=void 0!==s?s:ed,this.offset=new n$(0,0),this.repeat=new n$(1,1),this.center=new n$(0,0),this.rotation=0,this.matrixAutoUpdate=!0,this.matrix=new nx,this.generateMipmaps=!0,this.premultiplyAlpha=!1,this.flipY=!0,this.unpackAlignment=4,this.encoding=void 0!==l?l:no,this.version=0,this.onUpdate=null}function nT(t,e,n,i){this.x=t||0,this.y=e||0,this.z=n||0,this.w=void 0!==i?i:1}function nS(t,e,n){this.width=t,this.height=e,this.scissor=new nT(0,0,t,e),this.scissorTest=!1,this.viewport=new nT(0,0,t,e),void 0===(n=n||{}).minFilter&&(n.minFilter=eh),this.texture=new nA(void 0,void 0,n.wrapS,n.wrapT,n.magFilter,n.minFilter,n.format,n.type,n.anisotropy,n.encoding),this.texture.generateMipmaps=void 0===n.generateMipmaps||n.generateMipmaps,this.depthBuffer=void 0===n.depthBuffer||n.depthBuffer,this.stencilBuffer=void 0===n.stencilBuffer||n.stencilBuffer,this.depthTexture=void 0!==n.depthTexture?n.depthTexture:null}function nE(t,e,n){nS.call(this,t,e,n),this.activeCubeFace=0,this.activeMipMapLevel=0}function n0(t,e,n,i,r,o,a,s,u,l,h,c){nA.call(this,null,o,a,s,u,l,i,r,h,c),this.image={data:t,width:e,height:n},this.magFilter=void 0!==u?u:es,this.minFilter=void 0!==l?l:es,this.generateMipmaps=!1,this.flipY=!1,this.unpackAlignment=1}function nP(t,e){this.min=void 0!==t?t:new n8(1/0,1/0,1/0),this.max=void 0!==e?e:new n8(-1/0,-1/0,-1/0)}function nC(t,e){this.center=void 0!==t?t:new n8,this.radius=void 0!==e?e:0}function nL(t,e){this.normal=void 0!==t?t:new n8(1,0,0),this.constant=void 0!==e?e:0}function nM(t,e,n,i,r,o){this.planes=[void 0!==t?t:new nL,void 0!==e?e:new nL,void 0!==n?n:new nL,void 0!==i?i:new nL,void 0!==r?r:new nL,void 0!==o?o:new nL]}nA.DEFAULT_IMAGE=void 0,nA.DEFAULT_MAPPING=tq,nA.prototype=Object.assign(Object.create(i.prototype),{constructor:nA,isTexture:!0,updateMatrix:function(){this.matrix.setUvTransform(this.offset.x,this.offset.y,this.repeat.x,this.repeat.y,this.rotation,this.center.x,this.center.y)},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.name=t.name,this.image=t.image,this.mipmaps=t.mipmaps.slice(0),this.mapping=t.mapping,this.wrapS=t.wrapS,this.wrapT=t.wrapT,this.magFilter=t.magFilter,this.minFilter=t.minFilter,this.anisotropy=t.anisotropy,this.format=t.format,this.type=t.type,this.offset.copy(t.offset),this.repeat.copy(t.repeat),this.center.copy(t.center),this.rotation=t.rotation,this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrix.copy(t.matrix),this.generateMipmaps=t.generateMipmaps,this.premultiplyAlpha=t.premultiplyAlpha,this.flipY=t.flipY,this.unpackAlignment=t.unpackAlignment,this.encoding=t.encoding,this},toJSON:function(t){var e=void 0===t||"string"==typeof t;if(!e&&void 0!==t.textures[this.uuid])return t.textures[this.uuid];var n={metadata:{version:4.5,type:"Texture",generator:"Texture.toJSON"},uuid:this.uuid,name:this.name,mapping:this.mapping,repeat:[this.repeat.x,this.repeat.y],offset:[this.offset.x,this.offset.y],center:[this.center.x,this.center.y],rotation:this.rotation,wrap:[this.wrapS,this.wrapT],format:this.format,minFilter:this.minFilter,magFilter:this.magFilter,anisotropy:this.anisotropy,flipY:this.flipY};if(void 0!==this.image){var i,r=this.image;if(void 0===r.uuid&&(r.uuid=nv.generateUUID()),!e&&void 0===t.images[r.uuid]){if(Array.isArray(r)){i=[];for(var o=0,a=r.length;o<a;o++)i.push(nb.getDataURL(r[o]))}else i=nb.getDataURL(r);t.images[r.uuid]={uuid:r.uuid,url:i}}n.image=r.uuid}return e||(t.textures[this.uuid]=n),n},dispose:function(){this.dispatchEvent({type:"dispose"})},transformUv:function(t){if(this.mapping!==tq)return t;if(t.applyMatrix3(this.matrix),t.x<0||t.x>1)switch(this.wrapS){case er:t.x=t.x-Math.floor(t.x);break;case eo:t.x=t.x<0?0:1;break;case ea:1===Math.abs(Math.floor(t.x)%2)?t.x=Math.ceil(t.x)-t.x:t.x=t.x-Math.floor(t.x)}if(t.y<0||t.y>1)switch(this.wrapT){case er:t.y=t.y-Math.floor(t.y);break;case eo:t.y=t.y<0?0:1;break;case ea:1===Math.abs(Math.floor(t.y)%2)?t.y=Math.ceil(t.y)-t.y:t.y=t.y-Math.floor(t.y)}return this.flipY&&(t.y=1-t.y),t}}),Object.defineProperty(nA.prototype,"needsUpdate",{set:function(t){!0===t&&this.version++}}),Object.assign(nT.prototype,{isVector4:!0,set:function(t,e,n,i){return this.x=t,this.y=e,this.z=n,this.w=i,this},setScalar:function(t){return this.x=t,this.y=t,this.z=t,this.w=t,this},setX:function(t){return this.x=t,this},setY:function(t){return this.y=t,this},setZ:function(t){return this.z=t,this},setW:function(t){return this.w=t,this},setComponent:function(t,e){switch(t){case 0:this.x=e;break;case 1:this.y=e;break;case 2:this.z=e;break;case 3:this.w=e;break;default:throw Error("index is out of range: "+t)}return this},getComponent:function(t){switch(t){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error("index is out of range: "+t)}},clone:function(){return new this.constructor(this.x,this.y,this.z,this.w)},copy:function(t){return this.x=t.x,this.y=t.y,this.z=t.z,this.w=void 0!==t.w?t.w:1,this},add:function(t,e){return void 0!==e?(console.warn("THREE.Vector4: .add() now only accepts one argument. Use .addVectors( a, b ) instead."),this.addVectors(t,e)):(this.x+=t.x,this.y+=t.y,this.z+=t.z,this.w+=t.w,this)},addScalar:function(t){return this.x+=t,this.y+=t,this.z+=t,this.w+=t,this},addVectors:function(t,e){return this.x=t.x+e.x,this.y=t.y+e.y,this.z=t.z+e.z,this.w=t.w+e.w,this},addScaledVector:function(t,e){return this.x+=t.x*e,this.y+=t.y*e,this.z+=t.z*e,this.w+=t.w*e,this},sub:function(t,e){return void 0!==e?(console.warn("THREE.Vector4: .sub() now only accepts one argument. Use .subVectors( a, b ) instead."),this.subVectors(t,e)):(this.x-=t.x,this.y-=t.y,this.z-=t.z,this.w-=t.w,this)},subScalar:function(t){return this.x-=t,this.y-=t,this.z-=t,this.w-=t,this},subVectors:function(t,e){return this.x=t.x-e.x,this.y=t.y-e.y,this.z=t.z-e.z,this.w=t.w-e.w,this},multiplyScalar:function(t){return this.x*=t,this.y*=t,this.z*=t,this.w*=t,this},applyMatrix4:function(t){var e=this.x,n=this.y,i=this.z,r=this.w,o=t.elements;return this.x=o[0]*e+o[4]*n+o[8]*i+o[12]*r,this.y=o[1]*e+o[5]*n+o[9]*i+o[13]*r,this.z=o[2]*e+o[6]*n+o[10]*i+o[14]*r,this.w=o[3]*e+o[7]*n+o[11]*i+o[15]*r,this},divideScalar:function(t){return this.multiplyScalar(1/t)},setAxisAngleFromQuaternion:function(t){this.w=2*Math.acos(t.w);var e=Math.sqrt(1-t.w*t.w);return e<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=t.x/e,this.y=t.y/e,this.z=t.z/e),this},setAxisAngleFromRotationMatrix:function(t){var e,n,i,r,o=t.elements,a=o[0],s=o[4],u=o[8],l=o[1],h=o[5],c=o[9],p=o[2],d=o[6],f=o[10];if(.01>Math.abs(s-l)&&.01>Math.abs(u-p)&&.01>Math.abs(c-d)){if(.1>Math.abs(s+l)&&.1>Math.abs(u+p)&&.1>Math.abs(c+d)&&.1>Math.abs(a+h+f-3))return this.set(1,0,0,0),this;e=Math.PI;var m=(a+1)/2,g=(h+1)/2,v=(f+1)/2,$=(s+l)/4,y=(u+p)/4,_=(c+d)/4;return m>g&&m>v?m<.01?(n=0,i=.707106781,r=.707106781):(i=$/(n=Math.sqrt(m)),r=y/n):g>v?g<.01?(n=.707106781,i=0,r=.707106781):(n=$/(i=Math.sqrt(g)),r=_/i):v<.01?(n=.707106781,i=.707106781,r=0):(n=y/(r=Math.sqrt(v)),i=_/r),this.set(n,i,r,e),this}var x=Math.sqrt((d-c)*(d-c)+(u-p)*(u-p)+(l-s)*(l-s));return .001>Math.abs(x)&&(x=1),this.x=(d-c)/x,this.y=(u-p)/x,this.z=(l-s)/x,this.w=Math.acos((a+h+f-1)/2),this},min:function(t){return this.x=Math.min(this.x,t.x),this.y=Math.min(this.y,t.y),this.z=Math.min(this.z,t.z),this.w=Math.min(this.w,t.w),this},max:function(t){return this.x=Math.max(this.x,t.x),this.y=Math.max(this.y,t.y),this.z=Math.max(this.z,t.z),this.w=Math.max(this.w,t.w),this},clamp:function(t,e){return this.x=Math.max(t.x,Math.min(e.x,this.x)),this.y=Math.max(t.y,Math.min(e.y,this.y)),this.z=Math.max(t.z,Math.min(e.z,this.z)),this.w=Math.max(t.w,Math.min(e.w,this.w)),this},clampScalar:function(t,e){return void 0===rG&&(rG=new nT,rk=new nT),rG.set(t,t,t,t),rk.set(e,e,e,e),this.clamp(rG,rk)},clampLength:function(t,e){var n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(t,Math.min(e,n)))},floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this},ceil:function(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this},round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this},roundToZero:function(){return this.x=this.x<0?Math.ceil(this.x):Math.floor(this.x),this.y=this.y<0?Math.ceil(this.y):Math.floor(this.y),this.z=this.z<0?Math.ceil(this.z):Math.floor(this.z),this.w=this.w<0?Math.ceil(this.w):Math.floor(this.w),this},negate:function(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this},dot:function(t){return this.x*t.x+this.y*t.y+this.z*t.z+this.w*t.w},lengthSq:function(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w},length:function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)},manhattanLength:function(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)},normalize:function(){return this.divideScalar(this.length()||1)},setLength:function(t){return this.normalize().multiplyScalar(t)},lerp:function(t,e){return this.x+=(t.x-this.x)*e,this.y+=(t.y-this.y)*e,this.z+=(t.z-this.z)*e,this.w+=(t.w-this.w)*e,this},lerpVectors:function(t,e,n){return this.subVectors(e,t).multiplyScalar(n).add(t)},equals:function(t){return t.x===this.x&&t.y===this.y&&t.z===this.z&&t.w===this.w},fromArray:function(t,e){return void 0===e&&(e=0),this.x=t[e],this.y=t[e+1],this.z=t[e+2],this.w=t[e+3],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.x,t[e+1]=this.y,t[e+2]=this.z,t[e+3]=this.w,t},fromBufferAttribute:function(t,e,n){return void 0!==n&&console.warn("THREE.Vector4: offset has been removed from .fromBufferAttribute()."),this.x=t.getX(e),this.y=t.getY(e),this.z=t.getZ(e),this.w=t.getW(e),this}}),nS.prototype=Object.assign(Object.create(i.prototype),{constructor:nS,isWebGLRenderTarget:!0,setSize:function(t,e){this.width===t&&this.height===e||(this.width=t,this.height=e,this.dispose()),this.viewport.set(0,0,t,e),this.scissor.set(0,0,t,e)},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.width=t.width,this.height=t.height,this.viewport.copy(t.viewport),this.texture=t.texture.clone(),this.depthBuffer=t.depthBuffer,this.stencilBuffer=t.stencilBuffer,this.depthTexture=t.depthTexture,this},dispose:function(){this.dispatchEvent({type:"dispose"})}}),nE.prototype=Object.create(nS.prototype),nE.prototype.constructor=nE,nE.prototype.isWebGLRenderTargetCube=!0,n0.prototype=Object.create(nA.prototype),n0.prototype.constructor=n0,n0.prototype.isDataTexture=!0,Object.assign(nP.prototype,{isBox3:!0,set:function(t,e){return this.min.copy(t),this.max.copy(e),this},setFromArray:function(t){for(var e=1/0,n=1/0,i=1/0,r=-1/0,o=-1/0,a=-1/0,s=0,u=t.length;s<u;s+=3){var l=t[s],h=t[s+1],c=t[s+2];l<e&&(e=l),h<n&&(n=h),c<i&&(i=c),l>r&&(r=l),h>o&&(o=h),c>a&&(a=c)}return this.min.set(e,n,i),this.max.set(r,o,a),this},setFromBufferAttribute:function(t){for(var e=1/0,n=1/0,i=1/0,r=-1/0,o=-1/0,a=-1/0,s=0,u=t.count;s<u;s++){var l=t.getX(s),h=t.getY(s),c=t.getZ(s);l<e&&(e=l),h<n&&(n=h),c<i&&(i=c),l>r&&(r=l),h>o&&(o=h),c>a&&(a=c)}return this.min.set(e,n,i),this.max.set(r,o,a),this},setFromPoints:function(t){this.makeEmpty();for(var e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this},setFromCenterAndSize:(rV=new n8,function(t,e){var n=rV.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}),setFromObject:function(t){return this.makeEmpty(),this.expandByObject(t)},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.min.copy(t.min),this.max.copy(t.max),this},makeEmpty:function(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this},isEmpty:function(){return this.max.x<this.min.x||this.max.y<this.min.y||this.max.z<this.min.z},getCenter:function(t){return void 0===t&&(console.warn("THREE.Box3: .getCenter() target is now required"),t=new n8),this.isEmpty()?t.set(0,0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)},getSize:function(t){return void 0===t&&(console.warn("THREE.Box3: .getSize() target is now required"),t=new n8),this.isEmpty()?t.set(0,0,0):t.subVectors(this.max,this.min)},expandByPoint:function(t){return this.min.min(t),this.max.max(t),this},expandByVector:function(t){return this.min.sub(t),this.max.add(t),this},expandByScalar:function(t){return this.min.addScalar(-t),this.max.addScalar(t),this},expandByObject:function(){var t,e,n,i=new n8;function r(r){var o=r.geometry;if(void 0!==o){if(o.isGeometry){var a=o.vertices;for(e=0,n=a.length;e<n;e++)i.copy(a[e]),i.applyMatrix4(r.matrixWorld),t.expandByPoint(i)}else if(o.isBufferGeometry){var s=o.attributes.position;if(void 0!==s)for(e=0,n=s.count;e<n;e++)i.fromBufferAttribute(s,e).applyMatrix4(r.matrixWorld),t.expandByPoint(i)}}}return function(e){return t=this,e.updateMatrixWorld(!0),e.traverse(r),this}}(),containsPoint:function(t){return!(t.x<this.min.x||t.x>this.max.x||t.y<this.min.y||t.y>this.max.y||t.z<this.min.z||t.z>this.max.z)},containsBox:function(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y&&this.min.z<=t.min.z&&t.max.z<=this.max.z},getParameter:function(t,e){return void 0===e&&(console.warn("THREE.Box3: .getParameter() target is now required"),e=new n8),e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y),(t.z-this.min.z)/(this.max.z-this.min.z))},intersectsBox:function(t){return!(t.max.x<this.min.x||t.min.x>this.max.x||t.max.y<this.min.y||t.min.y>this.max.y||t.max.z<this.min.z||t.min.z>this.max.z)},intersectsSphere:(rz=new n8,function(t){return this.clampPoint(t.center,rz),rz.distanceToSquared(t.center)<=t.radius*t.radius}),intersectsPlane:function(t){var e,n;return t.normal.x>0?(e=t.normal.x*this.min.x,n=t.normal.x*this.max.x):(e=t.normal.x*this.max.x,n=t.normal.x*this.min.x),t.normal.y>0?(e+=t.normal.y*this.min.y,n+=t.normal.y*this.max.y):(e+=t.normal.y*this.max.y,n+=t.normal.y*this.min.y),t.normal.z>0?(e+=t.normal.z*this.min.z,n+=t.normal.z*this.max.z):(e+=t.normal.z*this.max.z,n+=t.normal.z*this.min.z),e<=-t.constant&&n>=-t.constant},intersectsTriangle:function(){var t=new n8,e=new n8,n=new n8,i=new n8,r=new n8,o=new n8,a=new n8,s=new n8,u=new n8,l=new n8;function h(i){var r,o;for(r=0,o=i.length-3;r<=o;r+=3){a.fromArray(i,r);var s=u.x*Math.abs(a.x)+u.y*Math.abs(a.y)+u.z*Math.abs(a.z),l=t.dot(a),h=e.dot(a),c=n.dot(a);if(Math.max(-Math.max(l,h,c),Math.min(l,h,c))>s)return!1}return!0}return function(a){if(this.isEmpty())return!1;this.getCenter(s),u.subVectors(this.max,s),t.subVectors(a.a,s),e.subVectors(a.b,s),n.subVectors(a.c,s),i.subVectors(e,t),r.subVectors(n,e),o.subVectors(t,n);var c=[0,-i.z,i.y,0,-r.z,r.y,0,-o.z,o.y,i.z,0,-i.x,r.z,0,-r.x,o.z,0,-o.x,-i.y,i.x,0,-r.y,r.x,0,-o.y,o.x,0];return!!h(c)&&!!h(c=[1,0,0,0,1,0,0,0,1])&&(l.crossVectors(i,r),h(c=[l.x,l.y,l.z]))}}(),clampPoint:function(t,e){return void 0===e&&(console.warn("THREE.Box3: .clampPoint() target is now required"),e=new n8),e.copy(t).clamp(this.min,this.max)},distanceToPoint:(rU=new n8,function(t){return rU.copy(t).clamp(this.min,this.max).sub(t).length()}),getBoundingSphere:(r2=new n8,function(t){return void 0===t&&(console.warn("THREE.Box3: .getBoundingSphere() target is now required"),t=new nC),this.getCenter(t.center),t.radius=.5*this.getSize(r2).length(),t}),intersect:function(t){return this.min.max(t.min),this.max.min(t.max),this.isEmpty()&&this.makeEmpty(),this},union:function(t){return this.min.min(t.min),this.max.max(t.max),this},applyMatrix4:(rH=[new n8,new n8,new n8,new n8,new n8,new n8,new n8,new n8],function(t){return this.isEmpty()||(rH[0].set(this.min.x,this.min.y,this.min.z).applyMatrix4(t),rH[1].set(this.min.x,this.min.y,this.max.z).applyMatrix4(t),rH[2].set(this.min.x,this.max.y,this.min.z).applyMatrix4(t),rH[3].set(this.min.x,this.max.y,this.max.z).applyMatrix4(t),rH[4].set(this.max.x,this.min.y,this.min.z).applyMatrix4(t),rH[5].set(this.max.x,this.min.y,this.max.z).applyMatrix4(t),rH[6].set(this.max.x,this.max.y,this.min.z).applyMatrix4(t),rH[7].set(this.max.x,this.max.y,this.max.z).applyMatrix4(t),this.setFromPoints(rH)),this}),translate:function(t){return this.min.add(t),this.max.add(t),this},equals:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}),Object.assign(nC.prototype,{set:function(t,e){return this.center.copy(t),this.radius=e,this},setFromPoints:(rF=new nP,function(t,e){var n=this.center;void 0!==e?n.copy(e):rF.setFromPoints(t).getCenter(n);for(var i=0,r=0,o=t.length;r<o;r++)i=Math.max(i,n.distanceToSquared(t[r]));return this.radius=Math.sqrt(i),this}),clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.center.copy(t.center),this.radius=t.radius,this},empty:function(){return this.radius<=0},containsPoint:function(t){return t.distanceToSquared(this.center)<=this.radius*this.radius},distanceToPoint:function(t){return t.distanceTo(this.center)-this.radius},intersectsSphere:function(t){var e=this.radius+t.radius;return t.center.distanceToSquared(this.center)<=e*e},intersectsBox:function(t){return t.intersectsSphere(this)},intersectsPlane:function(t){return Math.abs(t.distanceToPoint(this.center))<=this.radius},clampPoint:function(t,e){var n=this.center.distanceToSquared(t);return void 0===e&&(console.warn("THREE.Sphere: .clampPoint() target is now required"),e=new n8),e.copy(t),n>this.radius*this.radius&&(e.sub(this.center).normalize(),e.multiplyScalar(this.radius).add(this.center)),e},getBoundingBox:function(t){return void 0===t&&(console.warn("THREE.Sphere: .getBoundingBox() target is now required"),t=new nP),t.set(this.center,this.center),t.expandByScalar(this.radius),t},applyMatrix4:function(t){return this.center.applyMatrix4(t),this.radius=this.radius*t.getMaxScaleOnAxis(),this},translate:function(t){return this.center.add(t),this},equals:function(t){return t.center.equals(this.center)&&t.radius===this.radius}}),Object.assign(nL.prototype,{set:function(t,e){return this.normal.copy(t),this.constant=e,this},setComponents:function(t,e,n,i){return this.normal.set(t,e,n),this.constant=i,this},setFromNormalAndCoplanarPoint:function(t,e){return this.normal.copy(t),this.constant=-e.dot(this.normal),this},setFromCoplanarPoints:(r5=new n8,r4=new n8,function(t,e,n){var i=r5.subVectors(n,e).cross(r4.subVectors(t,e)).normalize();return this.setFromNormalAndCoplanarPoint(i,t),this}),clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.normal.copy(t.normal),this.constant=t.constant,this},normalize:function(){var t=1/this.normal.length();return this.normal.multiplyScalar(t),this.constant*=t,this},negate:function(){return this.constant*=-1,this.normal.negate(),this},distanceToPoint:function(t){return this.normal.dot(t)+this.constant},distanceToSphere:function(t){return this.distanceToPoint(t.center)-t.radius},projectPoint:function(t,e){return void 0===e&&(console.warn("THREE.Plane: .projectPoint() target is now required"),e=new n8),e.copy(this.normal).multiplyScalar(-this.distanceToPoint(t)).add(t)},intersectLine:(r6=new n8,function(t,e){void 0===e&&(console.warn("THREE.Plane: .intersectLine() target is now required"),e=new n8);var n=t.delta(r6),i=this.normal.dot(n);if(0===i)return 0===this.distanceToPoint(t.start)?e.copy(t.start):void 0;var r=-(t.start.dot(this.normal)+this.constant)/i;return r<0||r>1?void 0:e.copy(n).multiplyScalar(r).add(t.start)}),intersectsLine:function(t){var e=this.distanceToPoint(t.start),n=this.distanceToPoint(t.end);return e<0&&n>0||n<0&&e>0},intersectsBox:function(t){return t.intersectsPlane(this)},intersectsSphere:function(t){return t.intersectsPlane(this)},coplanarPoint:function(t){return void 0===t&&(console.warn("THREE.Plane: .coplanarPoint() target is now required"),t=new n8),t.copy(this.normal).multiplyScalar(-this.constant)},applyMatrix4:(rW=new n8,r7=new nx,function(t,e){var n=e||r7.getNormalMatrix(t),i=this.coplanarPoint(rW).applyMatrix4(t),r=this.normal.applyMatrix3(n).normalize();return this.constant=-i.dot(r),this}),translate:function(t){return this.constant-=t.dot(this.normal),this},equals:function(t){return t.normal.equals(this.normal)&&t.constant===this.constant}}),Object.assign(nM.prototype,{set:function(t,e,n,i,r,o){var a=this.planes;return a[0].copy(t),a[1].copy(e),a[2].copy(n),a[3].copy(i),a[4].copy(r),a[5].copy(o),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){for(var e=this.planes,n=0;n<6;n++)e[n].copy(t.planes[n]);return this},setFromMatrix:function(t){var e=this.planes,n=t.elements,i=n[0],r=n[1],o=n[2],a=n[3],s=n[4],u=n[5],l=n[6],h=n[7],c=n[8],p=n[9],d=n[10],f=n[11],m=n[12],g=n[13],v=n[14],$=n[15];return e[0].setComponents(a-i,h-s,f-c,$-m).normalize(),e[1].setComponents(a+i,h+s,f+c,$+m).normalize(),e[2].setComponents(a+r,h+u,f+p,$+g).normalize(),e[3].setComponents(a-r,h-u,f-p,$-g).normalize(),e[4].setComponents(a-o,h-l,f-d,$-v).normalize(),e[5].setComponents(a+o,h+l,f+d,$+v).normalize(),this},intersectsObject:(rX=new nC,function(t){var e=t.geometry;return null===e.boundingSphere&&e.computeBoundingSphere(),rX.copy(e.boundingSphere).applyMatrix4(t.matrixWorld),this.intersectsSphere(rX)}),intersectsSprite:(rY=new nC,function(t){return rY.center.set(0,0,0),rY.radius=.7071067811865476,rY.applyMatrix4(t.matrixWorld),this.intersectsSphere(rY)}),intersectsSphere:function(t){for(var e=this.planes,n=t.center,i=-t.radius,r=0;r<6;r++)if(e[r].distanceToPoint(n)<i)return!1;return!0},intersectsBox:(rK=new n8,function(t){for(var e=this.planes,n=0;n<6;n++){var i=e[n];if(rK.x=i.normal.x>0?t.max.x:t.min.x,rK.y=i.normal.y>0?t.max.y:t.min.y,rK.z=i.normal.z>0?t.max.z:t.min.z,0>i.distanceToPoint(rK))return!1}return!0}),containsPoint:function(t){for(var e=this.planes,n=0;n<6;n++)if(0>e[n].distanceToPoint(t))return!1;return!0}});var n1={alphamap_fragment:"#ifdef USE_ALPHAMAP\n	diffuseColor.a *= texture2D( alphaMap, vUv ).g;\n#endif\n",alphamap_pars_fragment:"#ifdef USE_ALPHAMAP\n	uniform sampler2D alphaMap;\n#endif\n",alphatest_fragment:"#ifdef ALPHATEST\n	if ( diffuseColor.a < ALPHATEST ) discard;\n#endif\n",aomap_fragment:"#ifdef USE_AOMAP\n	float ambientOcclusion = ( texture2D( aoMap, vUv2 ).r - 1.0 ) * aoMapIntensity + 1.0;\n	reflectedLight.indirectDiffuse *= ambientOcclusion;\n	#if defined( USE_ENVMAP ) && defined( PHYSICAL )\n		float dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n		reflectedLight.indirectSpecular *= computeSpecularOcclusion( dotNV, ambientOcclusion, material.specularRoughness );\n	#endif\n#endif\n",aomap_pars_fragment:"#ifdef USE_AOMAP\n	uniform sampler2D aoMap;\n	uniform float aoMapIntensity;\n#endif",begin_vertex:"\nvec3 transformed = vec3( position );\n",beginnormal_vertex:"\nvec3 objectNormal = vec3( normal );\n",bsdfs:"float punctualLightIntensityToIrradianceFactor( const in float lightDistance, const in float cutoffDistance, const in float decayExponent ) {\n#if defined ( PHYSICALLY_CORRECT_LIGHTS )\n	float distanceFalloff = 1.0 / max( pow( lightDistance, decayExponent ), 0.01 );\n	if( cutoffDistance > 0.0 ) {\n		distanceFalloff *= pow2( saturate( 1.0 - pow4( lightDistance / cutoffDistance ) ) );\n	}\n	return distanceFalloff;\n#else\n	if( cutoffDistance > 0.0 && decayExponent > 0.0 ) {\n		return pow( saturate( -lightDistance / cutoffDistance + 1.0 ), decayExponent );\n	}\n	return 1.0;\n#endif\n}\nvec3 BRDF_Diffuse_Lambert( const in vec3 diffuseColor ) {\n	return RECIPROCAL_PI * diffuseColor;\n}\nvec3 F_Schlick( const in vec3 specularColor, const in float dotLH ) {\n	float fresnel = exp2( ( -5.55473 * dotLH - 6.98316 ) * dotLH );\n	return ( 1.0 - specularColor ) * fresnel + specularColor;\n}\nfloat G_GGX_Smith( const in float alpha, const in float dotNL, const in float dotNV ) {\n	float a2 = pow2( alpha );\n	float gl = dotNL + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n	float gv = dotNV + sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n	return 1.0 / ( gl * gv );\n}\nfloat G_GGX_SmithCorrelated( const in float alpha, const in float dotNL, const in float dotNV ) {\n	float a2 = pow2( alpha );\n	float gv = dotNL * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNV ) );\n	float gl = dotNV * sqrt( a2 + ( 1.0 - a2 ) * pow2( dotNL ) );\n	return 0.5 / max( gv + gl, EPSILON );\n}\nfloat D_GGX( const in float alpha, const in float dotNH ) {\n	float a2 = pow2( alpha );\n	float denom = pow2( dotNH ) * ( a2 - 1.0 ) + 1.0;\n	return RECIPROCAL_PI * a2 / pow2( denom );\n}\nvec3 BRDF_Specular_GGX( const in IncidentLight incidentLight, const in GeometricContext geometry, const in vec3 specularColor, const in float roughness ) {\n	float alpha = pow2( roughness );\n	vec3 halfDir = normalize( incidentLight.direction + geometry.viewDir );\n	float dotNL = saturate( dot( geometry.normal, incidentLight.direction ) );\n	float dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n	float dotNH = saturate( dot( geometry.normal, halfDir ) );\n	float dotLH = saturate( dot( incidentLight.direction, halfDir ) );\n	vec3 F = F_Schlick( specularColor, dotLH );\n	float G = G_GGX_SmithCorrelated( alpha, dotNL, dotNV );\n	float D = D_GGX( alpha, dotNH );\n	return F * ( G * D );\n}\nvec2 LTC_Uv( const in vec3 N, const in vec3 V, const in float roughness ) {\n	const float LUT_SIZE  = 64.0;\n	const float LUT_SCALE = ( LUT_SIZE - 1.0 ) / LUT_SIZE;\n	const float LUT_BIAS  = 0.5 / LUT_SIZE;\n	float dotNV = saturate( dot( N, V ) );\n	vec2 uv = vec2( roughness, sqrt( 1.0 - dotNV ) );\n	uv = uv * LUT_SCALE + LUT_BIAS;\n	return uv;\n}\nfloat LTC_ClippedSphereFormFactor( const in vec3 f ) {\n	float l = length( f );\n	return max( ( l * l + f.z ) / ( l + 1.0 ), 0.0 );\n}\nvec3 LTC_EdgeVectorFormFactor( const in vec3 v1, const in vec3 v2 ) {\n	float x = dot( v1, v2 );\n	float y = abs( x );\n	float a = 0.8543985 + ( 0.4965155 + 0.0145206 * y ) * y;\n	float b = 3.4175940 + ( 4.1616724 + y ) * y;\n	float v = a / b;\n	float theta_sintheta = ( x > 0.0 ) ? v : 0.5 * inversesqrt( max( 1.0 - x * x, 1e-7 ) ) - v;\n	return cross( v1, v2 ) * theta_sintheta;\n}\nvec3 LTC_Evaluate( const in vec3 N, const in vec3 V, const in vec3 P, const in mat3 mInv, const in vec3 rectCoords[ 4 ] ) {\n	vec3 v1 = rectCoords[ 1 ] - rectCoords[ 0 ];\n	vec3 v2 = rectCoords[ 3 ] - rectCoords[ 0 ];\n	vec3 lightNormal = cross( v1, v2 );\n	if( dot( lightNormal, P - rectCoords[ 0 ] ) < 0.0 ) return vec3( 0.0 );\n	vec3 T1, T2;\n	T1 = normalize( V - N * dot( V, N ) );\n	T2 = - cross( N, T1 );\n	mat3 mat = mInv * transposeMat3( mat3( T1, T2, N ) );\n	vec3 coords[ 4 ];\n	coords[ 0 ] = mat * ( rectCoords[ 0 ] - P );\n	coords[ 1 ] = mat * ( rectCoords[ 1 ] - P );\n	coords[ 2 ] = mat * ( rectCoords[ 2 ] - P );\n	coords[ 3 ] = mat * ( rectCoords[ 3 ] - P );\n	coords[ 0 ] = normalize( coords[ 0 ] );\n	coords[ 1 ] = normalize( coords[ 1 ] );\n	coords[ 2 ] = normalize( coords[ 2 ] );\n	coords[ 3 ] = normalize( coords[ 3 ] );\n	vec3 vectorFormFactor = vec3( 0.0 );\n	vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 0 ], coords[ 1 ] );\n	vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 1 ], coords[ 2 ] );\n	vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 2 ], coords[ 3 ] );\n	vectorFormFactor += LTC_EdgeVectorFormFactor( coords[ 3 ], coords[ 0 ] );\n	float result = LTC_ClippedSphereFormFactor( vectorFormFactor );\n	return vec3( result );\n}\nvec3 BRDF_Specular_GGX_Environment( const in GeometricContext geometry, const in vec3 specularColor, const in float roughness ) {\n	float dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n	const vec4 c0 = vec4( - 1, - 0.0275, - 0.572, 0.022 );\n	const vec4 c1 = vec4( 1, 0.0425, 1.04, - 0.04 );\n	vec4 r = roughness * c0 + c1;\n	float a004 = min( r.x * r.x, exp2( - 9.28 * dotNV ) ) * r.x + r.y;\n	vec2 AB = vec2( -1.04, 1.04 ) * a004 + r.zw;\n	return specularColor * AB.x + AB.y;\n}\nfloat G_BlinnPhong_Implicit( ) {\n	return 0.25;\n}\nfloat D_BlinnPhong( const in float shininess, const in float dotNH ) {\n	return RECIPROCAL_PI * ( shininess * 0.5 + 1.0 ) * pow( dotNH, shininess );\n}\nvec3 BRDF_Specular_BlinnPhong( const in IncidentLight incidentLight, const in GeometricContext geometry, const in vec3 specularColor, const in float shininess ) {\n	vec3 halfDir = normalize( incidentLight.direction + geometry.viewDir );\n	float dotNH = saturate( dot( geometry.normal, halfDir ) );\n	float dotLH = saturate( dot( incidentLight.direction, halfDir ) );\n	vec3 F = F_Schlick( specularColor, dotLH );\n	float G = G_BlinnPhong_Implicit( );\n	float D = D_BlinnPhong( shininess, dotNH );\n	return F * ( G * D );\n}\nfloat GGXRoughnessToBlinnExponent( const in float ggxRoughness ) {\n	return ( 2.0 / pow2( ggxRoughness + 0.0001 ) - 2.0 );\n}\nfloat BlinnExponentToGGXRoughness( const in float blinnExponent ) {\n	return sqrt( 2.0 / ( blinnExponent + 2.0 ) );\n}\n",bumpmap_pars_fragment:"#ifdef USE_BUMPMAP\n	uniform sampler2D bumpMap;\n	uniform float bumpScale;\n	vec2 dHdxy_fwd() {\n		vec2 dSTdx = dFdx( vUv );\n		vec2 dSTdy = dFdy( vUv );\n		float Hll = bumpScale * texture2D( bumpMap, vUv ).x;\n		float dBx = bumpScale * texture2D( bumpMap, vUv + dSTdx ).x - Hll;\n		float dBy = bumpScale * texture2D( bumpMap, vUv + dSTdy ).x - Hll;\n		return vec2( dBx, dBy );\n	}\n	vec3 perturbNormalArb( vec3 surf_pos, vec3 surf_norm, vec2 dHdxy ) {\n		vec3 vSigmaX = vec3( dFdx( surf_pos.x ), dFdx( surf_pos.y ), dFdx( surf_pos.z ) );\n		vec3 vSigmaY = vec3( dFdy( surf_pos.x ), dFdy( surf_pos.y ), dFdy( surf_pos.z ) );\n		vec3 vN = surf_norm;\n		vec3 R1 = cross( vSigmaY, vN );\n		vec3 R2 = cross( vN, vSigmaX );\n		float fDet = dot( vSigmaX, R1 );\n		fDet *= ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n		vec3 vGrad = sign( fDet ) * ( dHdxy.x * R1 + dHdxy.y * R2 );\n		return normalize( abs( fDet ) * surf_norm - vGrad );\n	}\n#endif\n",clipping_planes_fragment:"#if NUM_CLIPPING_PLANES > 0\n	vec4 plane;\n	#pragma unroll_loop\n	for ( int i = 0; i < UNION_CLIPPING_PLANES; i ++ ) {\n		plane = clippingPlanes[ i ];\n		if ( dot( vViewPosition, plane.xyz ) > plane.w ) discard;\n	}\n	#if UNION_CLIPPING_PLANES < NUM_CLIPPING_PLANES\n		bool clipped = true;\n		#pragma unroll_loop\n		for ( int i = UNION_CLIPPING_PLANES; i < NUM_CLIPPING_PLANES; i ++ ) {\n			plane = clippingPlanes[ i ];\n			clipped = ( dot( vViewPosition, plane.xyz ) > plane.w ) && clipped;\n		}\n		if ( clipped ) discard;\n	#endif\n#endif\n",clipping_planes_pars_fragment:"#if NUM_CLIPPING_PLANES > 0\n	#if ! defined( PHYSICAL ) && ! defined( PHONG ) && ! defined( MATCAP )\n		varying vec3 vViewPosition;\n	#endif\n	uniform vec4 clippingPlanes[ NUM_CLIPPING_PLANES ];\n#endif\n",clipping_planes_pars_vertex:"#if NUM_CLIPPING_PLANES > 0 && ! defined( PHYSICAL ) && ! defined( PHONG ) && ! defined( MATCAP )\n	varying vec3 vViewPosition;\n#endif\n",clipping_planes_vertex:"#if NUM_CLIPPING_PLANES > 0 && ! defined( PHYSICAL ) && ! defined( PHONG ) && ! defined( MATCAP )\n	vViewPosition = - mvPosition.xyz;\n#endif\n",color_fragment:"#ifdef USE_COLOR\n	diffuseColor.rgb *= vColor;\n#endif",color_pars_fragment:"#ifdef USE_COLOR\n	varying vec3 vColor;\n#endif\n",color_pars_vertex:"#ifdef USE_COLOR\n	varying vec3 vColor;\n#endif",color_vertex:"#ifdef USE_COLOR\n	vColor.xyz = color.xyz;\n#endif",common:"#define PI 3.14159265359\n#define PI2 6.28318530718\n#define PI_HALF 1.5707963267949\n#define RECIPROCAL_PI 0.31830988618\n#define RECIPROCAL_PI2 0.15915494\n#define LOG2 1.442695\n#define EPSILON 1e-6\n#define saturate(a) clamp( a, 0.0, 1.0 )\n#define whiteCompliment(a) ( 1.0 - saturate( a ) )\nfloat pow2( const in float x ) { return x*x; }\nfloat pow3( const in float x ) { return x*x*x; }\nfloat pow4( const in float x ) { float x2 = x*x; return x2*x2; }\nfloat average( const in vec3 color ) { return dot( color, vec3( 0.3333 ) ); }\nhighp float rand( const in vec2 uv ) {\n	const highp float a = 12.9898, b = 78.233, c = 43758.5453;\n	highp float dt = dot( uv.xy, vec2( a,b ) ), sn = mod( dt, PI );\n	return fract(sin(sn) * c);\n}\nstruct IncidentLight {\n	vec3 color;\n	vec3 direction;\n	bool visible;\n};\nstruct ReflectedLight {\n	vec3 directDiffuse;\n	vec3 directSpecular;\n	vec3 indirectDiffuse;\n	vec3 indirectSpecular;\n};\nstruct GeometricContext {\n	vec3 position;\n	vec3 normal;\n	vec3 viewDir;\n};\nvec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n	return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n}\nvec3 inverseTransformDirection( in vec3 dir, in mat4 matrix ) {\n	return normalize( ( vec4( dir, 0.0 ) * matrix ).xyz );\n}\nvec3 projectOnPlane(in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n	float distance = dot( planeNormal, point - pointOnPlane );\n	return - distance * planeNormal + point;\n}\nfloat sideOfPlane( in vec3 point, in vec3 pointOnPlane, in vec3 planeNormal ) {\n	return sign( dot( point - pointOnPlane, planeNormal ) );\n}\nvec3 linePlaneIntersect( in vec3 pointOnLine, in vec3 lineDirection, in vec3 pointOnPlane, in vec3 planeNormal ) {\n	return lineDirection * ( dot( planeNormal, pointOnPlane - pointOnLine ) / dot( planeNormal, lineDirection ) ) + pointOnLine;\n}\nmat3 transposeMat3( const in mat3 m ) {\n	mat3 tmp;\n	tmp[ 0 ] = vec3( m[ 0 ].x, m[ 1 ].x, m[ 2 ].x );\n	tmp[ 1 ] = vec3( m[ 0 ].y, m[ 1 ].y, m[ 2 ].y );\n	tmp[ 2 ] = vec3( m[ 0 ].z, m[ 1 ].z, m[ 2 ].z );\n	return tmp;\n}\nfloat linearToRelativeLuminance( const in vec3 color ) {\n	vec3 weights = vec3( 0.2126, 0.7152, 0.0722 );\n	return dot( weights, color.rgb );\n}\n",cube_uv_reflection_fragment:"#ifdef ENVMAP_TYPE_CUBE_UV\n#define cubeUV_textureSize (1024.0)\nint getFaceFromDirection(vec3 direction) {\n	vec3 absDirection = abs(direction);\n	int face = -1;\n	if( absDirection.x > absDirection.z ) {\n		if(absDirection.x > absDirection.y )\n			face = direction.x > 0.0 ? 0 : 3;\n		else\n			face = direction.y > 0.0 ? 1 : 4;\n	}\n	else {\n		if(absDirection.z > absDirection.y )\n			face = direction.z > 0.0 ? 2 : 5;\n		else\n			face = direction.y > 0.0 ? 1 : 4;\n	}\n	return face;\n}\n#define cubeUV_maxLods1  (log2(cubeUV_textureSize*0.25) - 1.0)\n#define cubeUV_rangeClamp (exp2((6.0 - 1.0) * 2.0))\nvec2 MipLevelInfo( vec3 vec, float roughnessLevel, float roughness ) {\n	float scale = exp2(cubeUV_maxLods1 - roughnessLevel);\n	float dxRoughness = dFdx(roughness);\n	float dyRoughness = dFdy(roughness);\n	vec3 dx = dFdx( vec * scale * dxRoughness );\n	vec3 dy = dFdy( vec * scale * dyRoughness );\n	float d = max( dot( dx, dx ), dot( dy, dy ) );\n	d = clamp(d, 1.0, cubeUV_rangeClamp);\n	float mipLevel = 0.5 * log2(d);\n	return vec2(floor(mipLevel), fract(mipLevel));\n}\n#define cubeUV_maxLods2 (log2(cubeUV_textureSize*0.25) - 2.0)\n#define cubeUV_rcpTextureSize (1.0 / cubeUV_textureSize)\nvec2 getCubeUV(vec3 direction, float roughnessLevel, float mipLevel) {\n	mipLevel = roughnessLevel > cubeUV_maxLods2 - 3.0 ? 0.0 : mipLevel;\n	float a = 16.0 * cubeUV_rcpTextureSize;\n	vec2 exp2_packed = exp2( vec2( roughnessLevel, mipLevel ) );\n	vec2 rcp_exp2_packed = vec2( 1.0 ) / exp2_packed;\n	float powScale = exp2_packed.x * exp2_packed.y;\n	float scale = rcp_exp2_packed.x * rcp_exp2_packed.y * 0.25;\n	float mipOffset = 0.75*(1.0 - rcp_exp2_packed.y) * rcp_exp2_packed.x;\n	bool bRes = mipLevel == 0.0;\n	scale =  bRes && (scale < a) ? a : scale;\n	vec3 r;\n	vec2 offset;\n	int face = getFaceFromDirection(direction);\n	float rcpPowScale = 1.0 / powScale;\n	if( face == 0) {\n		r = vec3(direction.x, -direction.z, direction.y);\n		offset = vec2(0.0+mipOffset,0.75 * rcpPowScale);\n		offset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\n	}\n	else if( face == 1) {\n		r = vec3(direction.y, direction.x, direction.z);\n		offset = vec2(scale+mipOffset, 0.75 * rcpPowScale);\n		offset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\n	}\n	else if( face == 2) {\n		r = vec3(direction.z, direction.x, direction.y);\n		offset = vec2(2.0*scale+mipOffset, 0.75 * rcpPowScale);\n		offset.y = bRes && (offset.y < 2.0*a) ? a : offset.y;\n	}\n	else if( face == 3) {\n		r = vec3(direction.x, direction.z, direction.y);\n		offset = vec2(0.0+mipOffset,0.5 * rcpPowScale);\n		offset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\n	}\n	else if( face == 4) {\n		r = vec3(direction.y, direction.x, -direction.z);\n		offset = vec2(scale+mipOffset, 0.5 * rcpPowScale);\n		offset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\n	}\n	else {\n		r = vec3(direction.z, -direction.x, direction.y);\n		offset = vec2(2.0*scale+mipOffset, 0.5 * rcpPowScale);\n		offset.y = bRes && (offset.y < 2.0*a) ? 0.0 : offset.y;\n	}\n	r = normalize(r);\n	float texelOffset = 0.5 * cubeUV_rcpTextureSize;\n	vec2 s = ( r.yz / abs( r.x ) + vec2( 1.0 ) ) * 0.5;\n	vec2 base = offset + vec2( texelOffset );\n	return base + s * ( scale - 2.0 * texelOffset );\n}\n#define cubeUV_maxLods3 (log2(cubeUV_textureSize*0.25) - 3.0)\nvec4 textureCubeUV( sampler2D envMap, vec3 reflectedDirection, float roughness ) {\n	float roughnessVal = roughness* cubeUV_maxLods3;\n	float r1 = floor(roughnessVal);\n	float r2 = r1 + 1.0;\n	float t = fract(roughnessVal);\n	vec2 mipInfo = MipLevelInfo(reflectedDirection, r1, roughness);\n	float s = mipInfo.y;\n	float level0 = mipInfo.x;\n	float level1 = level0 + 1.0;\n	level1 = level1 > 5.0 ? 5.0 : level1;\n	level0 += min( floor( s + 0.5 ), 5.0 );\n	vec2 uv_10 = getCubeUV(reflectedDirection, r1, level0);\n	vec4 color10 = envMapTexelToLinear(texture2D(envMap, uv_10));\n	vec2 uv_20 = getCubeUV(reflectedDirection, r2, level0);\n	vec4 color20 = envMapTexelToLinear(texture2D(envMap, uv_20));\n	vec4 result = mix(color10, color20, t);\n	return vec4(result.rgb, 1.0);\n}\n#endif\n",defaultnormal_vertex:"vec3 transformedNormal = normalMatrix * objectNormal;\n#ifdef FLIP_SIDED\n	transformedNormal = - transformedNormal;\n#endif\n",displacementmap_pars_vertex:"#ifdef USE_DISPLACEMENTMAP\n	uniform sampler2D displacementMap;\n	uniform float displacementScale;\n	uniform float displacementBias;\n#endif\n",displacementmap_vertex:"#ifdef USE_DISPLACEMENTMAP\n	transformed += normalize( objectNormal ) * ( texture2D( displacementMap, uv ).x * displacementScale + displacementBias );\n#endif\n",emissivemap_fragment:"#ifdef USE_EMISSIVEMAP\n	vec4 emissiveColor = texture2D( emissiveMap, vUv );\n	emissiveColor.rgb = emissiveMapTexelToLinear( emissiveColor ).rgb;\n	totalEmissiveRadiance *= emissiveColor.rgb;\n#endif\n",emissivemap_pars_fragment:"#ifdef USE_EMISSIVEMAP\n	uniform sampler2D emissiveMap;\n#endif\n",encodings_fragment:"  gl_FragColor = linearToOutputTexel( gl_FragColor );\n",encodings_pars_fragment:"\nvec4 LinearToLinear( in vec4 value ) {\n	return value;\n}\nvec4 GammaToLinear( in vec4 value, in float gammaFactor ) {\n	return vec4( pow( value.rgb, vec3( gammaFactor ) ), value.a );\n}\nvec4 LinearToGamma( in vec4 value, in float gammaFactor ) {\n	return vec4( pow( value.rgb, vec3( 1.0 / gammaFactor ) ), value.a );\n}\nvec4 sRGBToLinear( in vec4 value ) {\n	return vec4( mix( pow( value.rgb * 0.9478672986 + vec3( 0.0521327014 ), vec3( 2.4 ) ), value.rgb * 0.0773993808, vec3( lessThanEqual( value.rgb, vec3( 0.04045 ) ) ) ), value.a );\n}\nvec4 LinearTosRGB( in vec4 value ) {\n	return vec4( mix( pow( value.rgb, vec3( 0.41666 ) ) * 1.055 - vec3( 0.055 ), value.rgb * 12.92, vec3( lessThanEqual( value.rgb, vec3( 0.0031308 ) ) ) ), value.a );\n}\nvec4 RGBEToLinear( in vec4 value ) {\n	return vec4( value.rgb * exp2( value.a * 255.0 - 128.0 ), 1.0 );\n}\nvec4 LinearToRGBE( in vec4 value ) {\n	float maxComponent = max( max( value.r, value.g ), value.b );\n	float fExp = clamp( ceil( log2( maxComponent ) ), -128.0, 127.0 );\n	return vec4( value.rgb / exp2( fExp ), ( fExp + 128.0 ) / 255.0 );\n}\nvec4 RGBMToLinear( in vec4 value, in float maxRange ) {\n	return vec4( value.rgb * value.a * maxRange, 1.0 );\n}\nvec4 LinearToRGBM( in vec4 value, in float maxRange ) {\n	float maxRGB = max( value.r, max( value.g, value.b ) );\n	float M = clamp( maxRGB / maxRange, 0.0, 1.0 );\n	M = ceil( M * 255.0 ) / 255.0;\n	return vec4( value.rgb / ( M * maxRange ), M );\n}\nvec4 RGBDToLinear( in vec4 value, in float maxRange ) {\n	return vec4( value.rgb * ( ( maxRange / 255.0 ) / value.a ), 1.0 );\n}\nvec4 LinearToRGBD( in vec4 value, in float maxRange ) {\n	float maxRGB = max( value.r, max( value.g, value.b ) );\n	float D = max( maxRange / maxRGB, 1.0 );\n	D = min( floor( D ) / 255.0, 1.0 );\n	return vec4( value.rgb * ( D * ( 255.0 / maxRange ) ), D );\n}\nconst mat3 cLogLuvM = mat3( 0.2209, 0.3390, 0.4184, 0.1138, 0.6780, 0.7319, 0.0102, 0.1130, 0.2969 );\nvec4 LinearToLogLuv( in vec4 value )  {\n	vec3 Xp_Y_XYZp = value.rgb * cLogLuvM;\n	Xp_Y_XYZp = max( Xp_Y_XYZp, vec3( 1e-6, 1e-6, 1e-6 ) );\n	vec4 vResult;\n	vResult.xy = Xp_Y_XYZp.xy / Xp_Y_XYZp.z;\n	float Le = 2.0 * log2(Xp_Y_XYZp.y) + 127.0;\n	vResult.w = fract( Le );\n	vResult.z = ( Le - ( floor( vResult.w * 255.0 ) ) / 255.0 ) / 255.0;\n	return vResult;\n}\nconst mat3 cLogLuvInverseM = mat3( 6.0014, -2.7008, -1.7996, -1.3320, 3.1029, -5.7721, 0.3008, -1.0882, 5.6268 );\nvec4 LogLuvToLinear( in vec4 value ) {\n	float Le = value.z * 255.0 + value.w;\n	vec3 Xp_Y_XYZp;\n	Xp_Y_XYZp.y = exp2( ( Le - 127.0 ) / 2.0 );\n	Xp_Y_XYZp.z = Xp_Y_XYZp.y / value.y;\n	Xp_Y_XYZp.x = value.x * Xp_Y_XYZp.z;\n	vec3 vRGB = Xp_Y_XYZp.rgb * cLogLuvInverseM;\n	return vec4( max( vRGB, 0.0 ), 1.0 );\n}\n",envmap_fragment:"#ifdef USE_ENVMAP\n	#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n		vec3 cameraToVertex = normalize( vWorldPosition - cameraPosition );\n		vec3 worldNormal = inverseTransformDirection( normal, viewMatrix );\n		#ifdef ENVMAP_MODE_REFLECTION\n			vec3 reflectVec = reflect( cameraToVertex, worldNormal );\n		#else\n			vec3 reflectVec = refract( cameraToVertex, worldNormal, refractionRatio );\n		#endif\n	#else\n		vec3 reflectVec = vReflect;\n	#endif\n	#ifdef ENVMAP_TYPE_CUBE\n		vec4 envColor = textureCube( envMap, vec3( flipEnvMap * reflectVec.x, reflectVec.yz ) );\n	#elif defined( ENVMAP_TYPE_EQUIREC )\n		vec2 sampleUV;\n		reflectVec = normalize( reflectVec );\n		sampleUV.y = asin( clamp( reflectVec.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n		sampleUV.x = atan( reflectVec.z, reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\n		vec4 envColor = texture2D( envMap, sampleUV );\n	#elif defined( ENVMAP_TYPE_SPHERE )\n		reflectVec = normalize( reflectVec );\n		vec3 reflectView = normalize( ( viewMatrix * vec4( reflectVec, 0.0 ) ).xyz + vec3( 0.0, 0.0, 1.0 ) );\n		vec4 envColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5 );\n	#else\n		vec4 envColor = vec4( 0.0 );\n	#endif\n	envColor = envMapTexelToLinear( envColor );\n	#ifdef ENVMAP_BLENDING_MULTIPLY\n		outgoingLight = mix( outgoingLight, outgoingLight * envColor.xyz, specularStrength * reflectivity );\n	#elif defined( ENVMAP_BLENDING_MIX )\n		outgoingLight = mix( outgoingLight, envColor.xyz, specularStrength * reflectivity );\n	#elif defined( ENVMAP_BLENDING_ADD )\n		outgoingLight += envColor.xyz * specularStrength * reflectivity;\n	#endif\n#endif\n",envmap_pars_fragment:"#if defined( USE_ENVMAP ) || defined( PHYSICAL )\n	uniform float reflectivity;\n	uniform float envMapIntensity;\n#endif\n#ifdef USE_ENVMAP\n	#if ! defined( PHYSICAL ) && ( defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) )\n		varying vec3 vWorldPosition;\n	#endif\n	#ifdef ENVMAP_TYPE_CUBE\n		uniform samplerCube envMap;\n	#else\n		uniform sampler2D envMap;\n	#endif\n	uniform float flipEnvMap;\n	uniform int maxMipLevel;\n	#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG ) || defined( PHYSICAL )\n		uniform float refractionRatio;\n	#else\n		varying vec3 vReflect;\n	#endif\n#endif\n",envmap_pars_vertex:"#ifdef USE_ENVMAP\n	#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n		varying vec3 vWorldPosition;\n	#else\n		varying vec3 vReflect;\n		uniform float refractionRatio;\n	#endif\n#endif\n",envmap_physical_pars_fragment:"#if defined( USE_ENVMAP ) && defined( PHYSICAL )\n	vec3 getLightProbeIndirectIrradiance( const in GeometricContext geometry, const in int maxMIPLevel ) {\n		vec3 worldNormal = inverseTransformDirection( geometry.normal, viewMatrix );\n		#ifdef ENVMAP_TYPE_CUBE\n			vec3 queryVec = vec3( flipEnvMap * worldNormal.x, worldNormal.yz );\n			#ifdef TEXTURE_LOD_EXT\n				vec4 envMapColor = textureCubeLodEXT( envMap, queryVec, float( maxMIPLevel ) );\n			#else\n				vec4 envMapColor = textureCube( envMap, queryVec, float( maxMIPLevel ) );\n			#endif\n			envMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n		#elif defined( ENVMAP_TYPE_CUBE_UV )\n			vec3 queryVec = vec3( flipEnvMap * worldNormal.x, worldNormal.yz );\n			vec4 envMapColor = textureCubeUV( envMap, queryVec, 1.0 );\n		#else\n			vec4 envMapColor = vec4( 0.0 );\n		#endif\n		return PI * envMapColor.rgb * envMapIntensity;\n	}\n	float getSpecularMIPLevel( const in float blinnShininessExponent, const in int maxMIPLevel ) {\n		float maxMIPLevelScalar = float( maxMIPLevel );\n		float desiredMIPLevel = maxMIPLevelScalar + 0.79248 - 0.5 * log2( pow2( blinnShininessExponent ) + 1.0 );\n		return clamp( desiredMIPLevel, 0.0, maxMIPLevelScalar );\n	}\n	vec3 getLightProbeIndirectRadiance( const in GeometricContext geometry, const in float blinnShininessExponent, const in int maxMIPLevel ) {\n		#ifdef ENVMAP_MODE_REFLECTION\n			vec3 reflectVec = reflect( -geometry.viewDir, geometry.normal );\n		#else\n			vec3 reflectVec = refract( -geometry.viewDir, geometry.normal, refractionRatio );\n		#endif\n		reflectVec = inverseTransformDirection( reflectVec, viewMatrix );\n		float specularMIPLevel = getSpecularMIPLevel( blinnShininessExponent, maxMIPLevel );\n		#ifdef ENVMAP_TYPE_CUBE\n			vec3 queryReflectVec = vec3( flipEnvMap * reflectVec.x, reflectVec.yz );\n			#ifdef TEXTURE_LOD_EXT\n				vec4 envMapColor = textureCubeLodEXT( envMap, queryReflectVec, specularMIPLevel );\n			#else\n				vec4 envMapColor = textureCube( envMap, queryReflectVec, specularMIPLevel );\n			#endif\n			envMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n		#elif defined( ENVMAP_TYPE_CUBE_UV )\n			vec3 queryReflectVec = vec3( flipEnvMap * reflectVec.x, reflectVec.yz );\n			vec4 envMapColor = textureCubeUV( envMap, queryReflectVec, BlinnExponentToGGXRoughness(blinnShininessExponent ));\n		#elif defined( ENVMAP_TYPE_EQUIREC )\n			vec2 sampleUV;\n			sampleUV.y = asin( clamp( reflectVec.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n			sampleUV.x = atan( reflectVec.z, reflectVec.x ) * RECIPROCAL_PI2 + 0.5;\n			#ifdef TEXTURE_LOD_EXT\n				vec4 envMapColor = texture2DLodEXT( envMap, sampleUV, specularMIPLevel );\n			#else\n				vec4 envMapColor = texture2D( envMap, sampleUV, specularMIPLevel );\n			#endif\n			envMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n		#elif defined( ENVMAP_TYPE_SPHERE )\n			vec3 reflectView = normalize( ( viewMatrix * vec4( reflectVec, 0.0 ) ).xyz + vec3( 0.0,0.0,1.0 ) );\n			#ifdef TEXTURE_LOD_EXT\n				vec4 envMapColor = texture2DLodEXT( envMap, reflectView.xy * 0.5 + 0.5, specularMIPLevel );\n			#else\n				vec4 envMapColor = texture2D( envMap, reflectView.xy * 0.5 + 0.5, specularMIPLevel );\n			#endif\n			envMapColor.rgb = envMapTexelToLinear( envMapColor ).rgb;\n		#endif\n		return envMapColor.rgb * envMapIntensity;\n	}\n#endif\n",envmap_vertex:"#ifdef USE_ENVMAP\n	#if defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( PHONG )\n		vWorldPosition = worldPosition.xyz;\n	#else\n		vec3 cameraToVertex = normalize( worldPosition.xyz - cameraPosition );\n		vec3 worldNormal = inverseTransformDirection( transformedNormal, viewMatrix );\n		#ifdef ENVMAP_MODE_REFLECTION\n			vReflect = reflect( cameraToVertex, worldNormal );\n		#else\n			vReflect = refract( cameraToVertex, worldNormal, refractionRatio );\n		#endif\n	#endif\n#endif\n",fog_vertex:"#ifdef USE_FOG\n	fogDepth = -mvPosition.z;\n#endif\n",fog_pars_vertex:"#ifdef USE_FOG\n	varying float fogDepth;\n#endif\n",fog_fragment:"#ifdef USE_FOG\n	#ifdef FOG_EXP2\n		float fogFactor = whiteCompliment( exp2( - fogDensity * fogDensity * fogDepth * fogDepth * LOG2 ) );\n	#else\n		float fogFactor = smoothstep( fogNear, fogFar, fogDepth );\n	#endif\n	gl_FragColor.rgb = mix( gl_FragColor.rgb, fogColor, fogFactor );\n#endif\n",fog_pars_fragment:"#ifdef USE_FOG\n	uniform vec3 fogColor;\n	varying float fogDepth;\n	#ifdef FOG_EXP2\n		uniform float fogDensity;\n	#else\n		uniform float fogNear;\n		uniform float fogFar;\n	#endif\n#endif\n",gradientmap_pars_fragment:"#ifdef TOON\n	uniform sampler2D gradientMap;\n	vec3 getGradientIrradiance( vec3 normal, vec3 lightDirection ) {\n		float dotNL = dot( normal, lightDirection );\n		vec2 coord = vec2( dotNL * 0.5 + 0.5, 0.0 );\n		#ifdef USE_GRADIENTMAP\n			return texture2D( gradientMap, coord ).rgb;\n		#else\n			return ( coord.x < 0.7 ) ? vec3( 0.7 ) : vec3( 1.0 );\n		#endif\n	}\n#endif\n",lightmap_fragment:"#ifdef USE_LIGHTMAP\n	reflectedLight.indirectDiffuse += PI * texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\n#endif\n",lightmap_pars_fragment:"#ifdef USE_LIGHTMAP\n	uniform sampler2D lightMap;\n	uniform float lightMapIntensity;\n#endif",lights_lambert_vertex:"vec3 diffuse = vec3( 1.0 );\nGeometricContext geometry;\ngeometry.position = mvPosition.xyz;\ngeometry.normal = normalize( transformedNormal );\ngeometry.viewDir = normalize( -mvPosition.xyz );\nGeometricContext backGeometry;\nbackGeometry.position = geometry.position;\nbackGeometry.normal = -geometry.normal;\nbackGeometry.viewDir = geometry.viewDir;\nvLightFront = vec3( 0.0 );\n#ifdef DOUBLE_SIDED\n	vLightBack = vec3( 0.0 );\n#endif\nIncidentLight directLight;\nfloat dotNL;\nvec3 directLightColor_Diffuse;\n#if NUM_POINT_LIGHTS > 0\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n		getPointDirectLightIrradiance( pointLights[ i ], geometry, directLight );\n		dotNL = dot( geometry.normal, directLight.direction );\n		directLightColor_Diffuse = PI * directLight.color;\n		vLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n		#ifdef DOUBLE_SIDED\n			vLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n		#endif\n	}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n		getSpotDirectLightIrradiance( spotLights[ i ], geometry, directLight );\n		dotNL = dot( geometry.normal, directLight.direction );\n		directLightColor_Diffuse = PI * directLight.color;\n		vLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n		#ifdef DOUBLE_SIDED\n			vLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n		#endif\n	}\n#endif\n#if NUM_DIR_LIGHTS > 0\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n		getDirectionalDirectLightIrradiance( directionalLights[ i ], geometry, directLight );\n		dotNL = dot( geometry.normal, directLight.direction );\n		directLightColor_Diffuse = PI * directLight.color;\n		vLightFront += saturate( dotNL ) * directLightColor_Diffuse;\n		#ifdef DOUBLE_SIDED\n			vLightBack += saturate( -dotNL ) * directLightColor_Diffuse;\n		#endif\n	}\n#endif\n#if NUM_HEMI_LIGHTS > 0\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n		vLightFront += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\n		#ifdef DOUBLE_SIDED\n			vLightBack += getHemisphereLightIrradiance( hemisphereLights[ i ], backGeometry );\n		#endif\n	}\n#endif\n",lights_pars_begin:"uniform vec3 ambientLightColor;\nvec3 getAmbientLightIrradiance( const in vec3 ambientLightColor ) {\n	vec3 irradiance = ambientLightColor;\n	#ifndef PHYSICALLY_CORRECT_LIGHTS\n		irradiance *= PI;\n	#endif\n	return irradiance;\n}\n#if NUM_DIR_LIGHTS > 0\n	struct DirectionalLight {\n		vec3 direction;\n		vec3 color;\n		int shadow;\n		float shadowBias;\n		float shadowRadius;\n		vec2 shadowMapSize;\n	};\n	uniform DirectionalLight directionalLights[ NUM_DIR_LIGHTS ];\n	void getDirectionalDirectLightIrradiance( const in DirectionalLight directionalLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n		directLight.color = directionalLight.color;\n		directLight.direction = directionalLight.direction;\n		directLight.visible = true;\n	}\n#endif\n#if NUM_POINT_LIGHTS > 0\n	struct PointLight {\n		vec3 position;\n		vec3 color;\n		float distance;\n		float decay;\n		int shadow;\n		float shadowBias;\n		float shadowRadius;\n		vec2 shadowMapSize;\n		float shadowCameraNear;\n		float shadowCameraFar;\n	};\n	uniform PointLight pointLights[ NUM_POINT_LIGHTS ];\n	void getPointDirectLightIrradiance( const in PointLight pointLight, const in GeometricContext geometry, out IncidentLight directLight ) {\n		vec3 lVector = pointLight.position - geometry.position;\n		directLight.direction = normalize( lVector );\n		float lightDistance = length( lVector );\n		directLight.color = pointLight.color;\n		directLight.color *= punctualLightIntensityToIrradianceFactor( lightDistance, pointLight.distance, pointLight.decay );\n		directLight.visible = ( directLight.color != vec3( 0.0 ) );\n	}\n#endif\n#if NUM_SPOT_LIGHTS > 0\n	struct SpotLight {\n		vec3 position;\n		vec3 direction;\n		vec3 color;\n		float distance;\n		float decay;\n		float coneCos;\n		float penumbraCos;\n		int shadow;\n		float shadowBias;\n		float shadowRadius;\n		vec2 shadowMapSize;\n	};\n	uniform SpotLight spotLights[ NUM_SPOT_LIGHTS ];\n	void getSpotDirectLightIrradiance( const in SpotLight spotLight, const in GeometricContext geometry, out IncidentLight directLight  ) {\n		vec3 lVector = spotLight.position - geometry.position;\n		directLight.direction = normalize( lVector );\n		float lightDistance = length( lVector );\n		float angleCos = dot( directLight.direction, spotLight.direction );\n		if ( angleCos > spotLight.coneCos ) {\n			float spotEffect = smoothstep( spotLight.coneCos, spotLight.penumbraCos, angleCos );\n			directLight.color = spotLight.color;\n			directLight.color *= spotEffect * punctualLightIntensityToIrradianceFactor( lightDistance, spotLight.distance, spotLight.decay );\n			directLight.visible = true;\n		} else {\n			directLight.color = vec3( 0.0 );\n			directLight.visible = false;\n		}\n	}\n#endif\n#if NUM_RECT_AREA_LIGHTS > 0\n	struct RectAreaLight {\n		vec3 color;\n		vec3 position;\n		vec3 halfWidth;\n		vec3 halfHeight;\n	};\n	uniform sampler2D ltc_1;	uniform sampler2D ltc_2;\n	uniform RectAreaLight rectAreaLights[ NUM_RECT_AREA_LIGHTS ];\n#endif\n#if NUM_HEMI_LIGHTS > 0\n	struct HemisphereLight {\n		vec3 direction;\n		vec3 skyColor;\n		vec3 groundColor;\n	};\n	uniform HemisphereLight hemisphereLights[ NUM_HEMI_LIGHTS ];\n	vec3 getHemisphereLightIrradiance( const in HemisphereLight hemiLight, const in GeometricContext geometry ) {\n		float dotNL = dot( geometry.normal, hemiLight.direction );\n		float hemiDiffuseWeight = 0.5 * dotNL + 0.5;\n		vec3 irradiance = mix( hemiLight.groundColor, hemiLight.skyColor, hemiDiffuseWeight );\n		#ifndef PHYSICALLY_CORRECT_LIGHTS\n			irradiance *= PI;\n		#endif\n		return irradiance;\n	}\n#endif\n",lights_phong_fragment:"BlinnPhongMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb;\nmaterial.specularColor = specular;\nmaterial.specularShininess = shininess;\nmaterial.specularStrength = specularStrength;\n",lights_phong_pars_fragment:"varying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\nstruct BlinnPhongMaterial {\n	vec3	diffuseColor;\n	vec3	specularColor;\n	float	specularShininess;\n	float	specularStrength;\n};\nvoid RE_Direct_BlinnPhong( const in IncidentLight directLight, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n	#ifdef TOON\n		vec3 irradiance = getGradientIrradiance( geometry.normal, directLight.direction ) * directLight.color;\n	#else\n		float dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n		vec3 irradiance = dotNL * directLight.color;\n	#endif\n	#ifndef PHYSICALLY_CORRECT_LIGHTS\n		irradiance *= PI;\n	#endif\n	reflectedLight.directDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n	reflectedLight.directSpecular += irradiance * BRDF_Specular_BlinnPhong( directLight, geometry, material.specularColor, material.specularShininess ) * material.specularStrength;\n}\nvoid RE_IndirectDiffuse_BlinnPhong( const in vec3 irradiance, const in GeometricContext geometry, const in BlinnPhongMaterial material, inout ReflectedLight reflectedLight ) {\n	reflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\n#define RE_Direct				RE_Direct_BlinnPhong\n#define RE_IndirectDiffuse		RE_IndirectDiffuse_BlinnPhong\n#define Material_LightProbeLOD( material )	(0)\n",lights_physical_fragment:"PhysicalMaterial material;\nmaterial.diffuseColor = diffuseColor.rgb * ( 1.0 - metalnessFactor );\nmaterial.specularRoughness = clamp( roughnessFactor, 0.04, 1.0 );\n#ifdef STANDARD\n	material.specularColor = mix( vec3( DEFAULT_SPECULAR_COEFFICIENT ), diffuseColor.rgb, metalnessFactor );\n#else\n	material.specularColor = mix( vec3( MAXIMUM_SPECULAR_COEFFICIENT * pow2( reflectivity ) ), diffuseColor.rgb, metalnessFactor );\n	material.clearCoat = saturate( clearCoat );	material.clearCoatRoughness = clamp( clearCoatRoughness, 0.04, 1.0 );\n#endif\n",lights_physical_pars_fragment:"struct PhysicalMaterial {\n	vec3	diffuseColor;\n	float	specularRoughness;\n	vec3	specularColor;\n	#ifndef STANDARD\n		float clearCoat;\n		float clearCoatRoughness;\n	#endif\n};\n#define MAXIMUM_SPECULAR_COEFFICIENT 0.16\n#define DEFAULT_SPECULAR_COEFFICIENT 0.04\nfloat clearCoatDHRApprox( const in float roughness, const in float dotNL ) {\n	return DEFAULT_SPECULAR_COEFFICIENT + ( 1.0 - DEFAULT_SPECULAR_COEFFICIENT ) * ( pow( 1.0 - dotNL, 5.0 ) * pow( 1.0 - roughness, 2.0 ) );\n}\n#if NUM_RECT_AREA_LIGHTS > 0\n	void RE_Direct_RectArea_Physical( const in RectAreaLight rectAreaLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n		vec3 normal = geometry.normal;\n		vec3 viewDir = geometry.viewDir;\n		vec3 position = geometry.position;\n		vec3 lightPos = rectAreaLight.position;\n		vec3 halfWidth = rectAreaLight.halfWidth;\n		vec3 halfHeight = rectAreaLight.halfHeight;\n		vec3 lightColor = rectAreaLight.color;\n		float roughness = material.specularRoughness;\n		vec3 rectCoords[ 4 ];\n		rectCoords[ 0 ] = lightPos - halfWidth - halfHeight;		rectCoords[ 1 ] = lightPos + halfWidth - halfHeight;\n		rectCoords[ 2 ] = lightPos + halfWidth + halfHeight;\n		rectCoords[ 3 ] = lightPos - halfWidth + halfHeight;\n		vec2 uv = LTC_Uv( normal, viewDir, roughness );\n		vec4 t1 = texture2D( ltc_1, uv );\n		vec4 t2 = texture2D( ltc_2, uv );\n		mat3 mInv = mat3(\n			vec3( t1.x, 0, t1.y ),\n			vec3(    0, 1,    0 ),\n			vec3( t1.z, 0, t1.w )\n		);\n		vec3 fresnel = ( material.specularColor * t2.x + ( vec3( 1.0 ) - material.specularColor ) * t2.y );\n		reflectedLight.directSpecular += lightColor * fresnel * LTC_Evaluate( normal, viewDir, position, mInv, rectCoords );\n		reflectedLight.directDiffuse += lightColor * material.diffuseColor * LTC_Evaluate( normal, viewDir, position, mat3( 1.0 ), rectCoords );\n	}\n#endif\nvoid RE_Direct_Physical( const in IncidentLight directLight, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n	float dotNL = saturate( dot( geometry.normal, directLight.direction ) );\n	vec3 irradiance = dotNL * directLight.color;\n	#ifndef PHYSICALLY_CORRECT_LIGHTS\n		irradiance *= PI;\n	#endif\n	#ifndef STANDARD\n		float clearCoatDHR = material.clearCoat * clearCoatDHRApprox( material.clearCoatRoughness, dotNL );\n	#else\n		float clearCoatDHR = 0.0;\n	#endif\n	reflectedLight.directSpecular += ( 1.0 - clearCoatDHR ) * irradiance * BRDF_Specular_GGX( directLight, geometry, material.specularColor, material.specularRoughness );\n	reflectedLight.directDiffuse += ( 1.0 - clearCoatDHR ) * irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n	#ifndef STANDARD\n		reflectedLight.directSpecular += irradiance * material.clearCoat * BRDF_Specular_GGX( directLight, geometry, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearCoatRoughness );\n	#endif\n}\nvoid RE_IndirectDiffuse_Physical( const in vec3 irradiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n	reflectedLight.indirectDiffuse += irradiance * BRDF_Diffuse_Lambert( material.diffuseColor );\n}\nvoid RE_IndirectSpecular_Physical( const in vec3 radiance, const in vec3 clearCoatRadiance, const in GeometricContext geometry, const in PhysicalMaterial material, inout ReflectedLight reflectedLight ) {\n	#ifndef STANDARD\n		float dotNV = saturate( dot( geometry.normal, geometry.viewDir ) );\n		float dotNL = dotNV;\n		float clearCoatDHR = material.clearCoat * clearCoatDHRApprox( material.clearCoatRoughness, dotNL );\n	#else\n		float clearCoatDHR = 0.0;\n	#endif\n	reflectedLight.indirectSpecular += ( 1.0 - clearCoatDHR ) * radiance * BRDF_Specular_GGX_Environment( geometry, material.specularColor, material.specularRoughness );\n	#ifndef STANDARD\n		reflectedLight.indirectSpecular += clearCoatRadiance * material.clearCoat * BRDF_Specular_GGX_Environment( geometry, vec3( DEFAULT_SPECULAR_COEFFICIENT ), material.clearCoatRoughness );\n	#endif\n}\n#define RE_Direct				RE_Direct_Physical\n#define RE_Direct_RectArea		RE_Direct_RectArea_Physical\n#define RE_IndirectDiffuse		RE_IndirectDiffuse_Physical\n#define RE_IndirectSpecular		RE_IndirectSpecular_Physical\n#define Material_BlinnShininessExponent( material )   GGXRoughnessToBlinnExponent( material.specularRoughness )\n#define Material_ClearCoat_BlinnShininessExponent( material )   GGXRoughnessToBlinnExponent( material.clearCoatRoughness )\nfloat computeSpecularOcclusion( const in float dotNV, const in float ambientOcclusion, const in float roughness ) {\n	return saturate( pow( dotNV + ambientOcclusion, exp2( - 16.0 * roughness - 1.0 ) ) - 1.0 + ambientOcclusion );\n}\n",lights_fragment_begin:"\nGeometricContext geometry;\ngeometry.position = - vViewPosition;\ngeometry.normal = normal;\ngeometry.viewDir = normalize( vViewPosition );\nIncidentLight directLight;\n#if ( NUM_POINT_LIGHTS > 0 ) && defined( RE_Direct )\n	PointLight pointLight;\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n		pointLight = pointLights[ i ];\n		getPointDirectLightIrradiance( pointLight, geometry, directLight );\n		#ifdef USE_SHADOWMAP\n		directLight.color *= all( bvec2( pointLight.shadow, directLight.visible ) ) ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n		#endif\n		RE_Direct( directLight, geometry, material, reflectedLight );\n	}\n#endif\n#if ( NUM_SPOT_LIGHTS > 0 ) && defined( RE_Direct )\n	SpotLight spotLight;\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n		spotLight = spotLights[ i ];\n		getSpotDirectLightIrradiance( spotLight, geometry, directLight );\n		#ifdef USE_SHADOWMAP\n		directLight.color *= all( bvec2( spotLight.shadow, directLight.visible ) ) ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n		#endif\n		RE_Direct( directLight, geometry, material, reflectedLight );\n	}\n#endif\n#if ( NUM_DIR_LIGHTS > 0 ) && defined( RE_Direct )\n	DirectionalLight directionalLight;\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n		directionalLight = directionalLights[ i ];\n		getDirectionalDirectLightIrradiance( directionalLight, geometry, directLight );\n		#ifdef USE_SHADOWMAP\n		directLight.color *= all( bvec2( directionalLight.shadow, directLight.visible ) ) ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n		#endif\n		RE_Direct( directLight, geometry, material, reflectedLight );\n	}\n#endif\n#if ( NUM_RECT_AREA_LIGHTS > 0 ) && defined( RE_Direct_RectArea )\n	RectAreaLight rectAreaLight;\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_RECT_AREA_LIGHTS; i ++ ) {\n		rectAreaLight = rectAreaLights[ i ];\n		RE_Direct_RectArea( rectAreaLight, geometry, material, reflectedLight );\n	}\n#endif\n#if defined( RE_IndirectDiffuse )\n	vec3 irradiance = getAmbientLightIrradiance( ambientLightColor );\n	#if ( NUM_HEMI_LIGHTS > 0 )\n		#pragma unroll_loop\n		for ( int i = 0; i < NUM_HEMI_LIGHTS; i ++ ) {\n			irradiance += getHemisphereLightIrradiance( hemisphereLights[ i ], geometry );\n		}\n	#endif\n#endif\n#if defined( RE_IndirectSpecular )\n	vec3 radiance = vec3( 0.0 );\n	vec3 clearCoatRadiance = vec3( 0.0 );\n#endif\n",lights_fragment_maps:"#if defined( RE_IndirectDiffuse )\n	#ifdef USE_LIGHTMAP\n		vec3 lightMapIrradiance = texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\n		#ifndef PHYSICALLY_CORRECT_LIGHTS\n			lightMapIrradiance *= PI;\n		#endif\n		irradiance += lightMapIrradiance;\n	#endif\n	#if defined( USE_ENVMAP ) && defined( PHYSICAL ) && defined( ENVMAP_TYPE_CUBE_UV )\n		irradiance += getLightProbeIndirectIrradiance( geometry, maxMipLevel );\n	#endif\n#endif\n#if defined( USE_ENVMAP ) && defined( RE_IndirectSpecular )\n	radiance += getLightProbeIndirectRadiance( geometry, Material_BlinnShininessExponent( material ), maxMipLevel );\n	#ifndef STANDARD\n		clearCoatRadiance += getLightProbeIndirectRadiance( geometry, Material_ClearCoat_BlinnShininessExponent( material ), maxMipLevel );\n	#endif\n#endif\n",lights_fragment_end:"#if defined( RE_IndirectDiffuse )\n	RE_IndirectDiffuse( irradiance, geometry, material, reflectedLight );\n#endif\n#if defined( RE_IndirectSpecular )\n	RE_IndirectSpecular( radiance, clearCoatRadiance, geometry, material, reflectedLight );\n#endif\n",logdepthbuf_fragment:"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n	gl_FragDepthEXT = log2( vFragDepth ) * logDepthBufFC * 0.5;\n#endif",logdepthbuf_pars_fragment:"#if defined( USE_LOGDEPTHBUF ) && defined( USE_LOGDEPTHBUF_EXT )\n	uniform float logDepthBufFC;\n	varying float vFragDepth;\n#endif\n",logdepthbuf_pars_vertex:"#ifdef USE_LOGDEPTHBUF\n	#ifdef USE_LOGDEPTHBUF_EXT\n		varying float vFragDepth;\n	#else\n		uniform float logDepthBufFC;\n	#endif\n#endif\n",logdepthbuf_vertex:"#ifdef USE_LOGDEPTHBUF\n	#ifdef USE_LOGDEPTHBUF_EXT\n		vFragDepth = 1.0 + gl_Position.w;\n	#else\n		gl_Position.z = log2( max( EPSILON, gl_Position.w + 1.0 ) ) * logDepthBufFC - 1.0;\n		gl_Position.z *= gl_Position.w;\n	#endif\n#endif\n",map_fragment:"#ifdef USE_MAP\n	vec4 texelColor = texture2D( map, vUv );\n	texelColor = mapTexelToLinear( texelColor );\n	diffuseColor *= texelColor;\n#endif\n",map_pars_fragment:"#ifdef USE_MAP\n	uniform sampler2D map;\n#endif\n",map_particle_fragment:"#ifdef USE_MAP\n	vec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n	vec4 mapTexel = texture2D( map, uv );\n	diffuseColor *= mapTexelToLinear( mapTexel );\n#endif\n",map_particle_pars_fragment:"#ifdef USE_MAP\n	uniform mat3 uvTransform;\n	uniform sampler2D map;\n#endif\n",metalnessmap_fragment:"float metalnessFactor = metalness;\n#ifdef USE_METALNESSMAP\n	vec4 texelMetalness = texture2D( metalnessMap, vUv );\n	metalnessFactor *= texelMetalness.b;\n#endif\n",metalnessmap_pars_fragment:"#ifdef USE_METALNESSMAP\n	uniform sampler2D metalnessMap;\n#endif",morphnormal_vertex:"#ifdef USE_MORPHNORMALS\n	objectNormal += ( morphNormal0 - normal ) * morphTargetInfluences[ 0 ];\n	objectNormal += ( morphNormal1 - normal ) * morphTargetInfluences[ 1 ];\n	objectNormal += ( morphNormal2 - normal ) * morphTargetInfluences[ 2 ];\n	objectNormal += ( morphNormal3 - normal ) * morphTargetInfluences[ 3 ];\n#endif\n",morphtarget_pars_vertex:"#ifdef USE_MORPHTARGETS\n	#ifndef USE_MORPHNORMALS\n	uniform float morphTargetInfluences[ 8 ];\n	#else\n	uniform float morphTargetInfluences[ 4 ];\n	#endif\n#endif",morphtarget_vertex:"#ifdef USE_MORPHTARGETS\n	transformed += ( morphTarget0 - position ) * morphTargetInfluences[ 0 ];\n	transformed += ( morphTarget1 - position ) * morphTargetInfluences[ 1 ];\n	transformed += ( morphTarget2 - position ) * morphTargetInfluences[ 2 ];\n	transformed += ( morphTarget3 - position ) * morphTargetInfluences[ 3 ];\n	#ifndef USE_MORPHNORMALS\n	transformed += ( morphTarget4 - position ) * morphTargetInfluences[ 4 ];\n	transformed += ( morphTarget5 - position ) * morphTargetInfluences[ 5 ];\n	transformed += ( morphTarget6 - position ) * morphTargetInfluences[ 6 ];\n	transformed += ( morphTarget7 - position ) * morphTargetInfluences[ 7 ];\n	#endif\n#endif\n",normal_fragment_begin:"#ifdef FLAT_SHADED\n	vec3 fdx = vec3( dFdx( vViewPosition.x ), dFdx( vViewPosition.y ), dFdx( vViewPosition.z ) );\n	vec3 fdy = vec3( dFdy( vViewPosition.x ), dFdy( vViewPosition.y ), dFdy( vViewPosition.z ) );\n	vec3 normal = normalize( cross( fdx, fdy ) );\n#else\n	vec3 normal = normalize( vNormal );\n	#ifdef DOUBLE_SIDED\n		normal = normal * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n	#endif\n#endif\n",normal_fragment_maps:"#ifdef USE_NORMALMAP\n	#ifdef OBJECTSPACE_NORMALMAP\n		normal = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n		#ifdef FLIP_SIDED\n			normal = - normal;\n		#endif\n		#ifdef DOUBLE_SIDED\n			normal = normal * ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n		#endif\n		normal = normalize( normalMatrix * normal );\n	#else\n		normal = perturbNormal2Arb( -vViewPosition, normal );\n	#endif\n#elif defined( USE_BUMPMAP )\n	normal = perturbNormalArb( -vViewPosition, normal, dHdxy_fwd() );\n#endif\n",normalmap_pars_fragment:"#ifdef USE_NORMALMAP\n	uniform sampler2D normalMap;\n	uniform vec2 normalScale;\n	#ifdef OBJECTSPACE_NORMALMAP\n		uniform mat3 normalMatrix;\n	#else\n		vec3 perturbNormal2Arb( vec3 eye_pos, vec3 surf_norm ) {\n			vec3 q0 = vec3( dFdx( eye_pos.x ), dFdx( eye_pos.y ), dFdx( eye_pos.z ) );\n			vec3 q1 = vec3( dFdy( eye_pos.x ), dFdy( eye_pos.y ), dFdy( eye_pos.z ) );\n			vec2 st0 = dFdx( vUv.st );\n			vec2 st1 = dFdy( vUv.st );\n			float scale = sign( st1.t * st0.s - st0.t * st1.s );\n			vec3 S = normalize( ( q0 * st1.t - q1 * st0.t ) * scale );\n			vec3 T = normalize( ( - q0 * st1.s + q1 * st0.s ) * scale );\n			vec3 N = normalize( surf_norm );\n			mat3 tsn = mat3( S, T, N );\n			vec3 mapN = texture2D( normalMap, vUv ).xyz * 2.0 - 1.0;\n			mapN.xy *= normalScale;\n			mapN.xy *= ( float( gl_FrontFacing ) * 2.0 - 1.0 );\n			return normalize( tsn * mapN );\n		}\n	#endif\n#endif\n",packing:"vec3 packNormalToRGB( const in vec3 normal ) {\n	return normalize( normal ) * 0.5 + 0.5;\n}\nvec3 unpackRGBToNormal( const in vec3 rgb ) {\n	return 2.0 * rgb.xyz - 1.0;\n}\nconst float PackUpscale = 256. / 255.;const float UnpackDownscale = 255. / 256.;\nconst vec3 PackFactors = vec3( 256. * 256. * 256., 256. * 256.,  256. );\nconst vec4 UnpackFactors = UnpackDownscale / vec4( PackFactors, 1. );\nconst float ShiftRight8 = 1. / 256.;\nvec4 packDepthToRGBA( const in float v ) {\n	vec4 r = vec4( fract( v * PackFactors ), v );\n	r.yzw -= r.xyz * ShiftRight8;	return r * PackUpscale;\n}\nfloat unpackRGBAToDepth( const in vec4 v ) {\n	return dot( v, UnpackFactors );\n}\nfloat viewZToOrthographicDepth( const in float viewZ, const in float near, const in float far ) {\n	return ( viewZ + near ) / ( near - far );\n}\nfloat orthographicDepthToViewZ( const in float linearClipZ, const in float near, const in float far ) {\n	return linearClipZ * ( near - far ) - near;\n}\nfloat viewZToPerspectiveDepth( const in float viewZ, const in float near, const in float far ) {\n	return (( near + viewZ ) * far ) / (( far - near ) * viewZ );\n}\nfloat perspectiveDepthToViewZ( const in float invClipZ, const in float near, const in float far ) {\n	return ( near * far ) / ( ( far - near ) * invClipZ - far );\n}\n",premultiplied_alpha_fragment:"#ifdef PREMULTIPLIED_ALPHA\n	gl_FragColor.rgb *= gl_FragColor.a;\n#endif\n",project_vertex:"vec4 mvPosition = modelViewMatrix * vec4( transformed, 1.0 );\ngl_Position = projectionMatrix * mvPosition;\n",dithering_fragment:"#if defined( DITHERING )\n  gl_FragColor.rgb = dithering( gl_FragColor.rgb );\n#endif\n",dithering_pars_fragment:"#if defined( DITHERING )\n	vec3 dithering( vec3 color ) {\n		float grid_position = rand( gl_FragCoord.xy );\n		vec3 dither_shift_RGB = vec3( 0.25 / 255.0, -0.25 / 255.0, 0.25 / 255.0 );\n		dither_shift_RGB = mix( 2.0 * dither_shift_RGB, -2.0 * dither_shift_RGB, grid_position );\n		return color + dither_shift_RGB;\n	}\n#endif\n",roughnessmap_fragment:"float roughnessFactor = roughness;\n#ifdef USE_ROUGHNESSMAP\n	vec4 texelRoughness = texture2D( roughnessMap, vUv );\n	roughnessFactor *= texelRoughness.g;\n#endif\n",roughnessmap_pars_fragment:"#ifdef USE_ROUGHNESSMAP\n	uniform sampler2D roughnessMap;\n#endif",shadowmap_pars_fragment:"#ifdef USE_SHADOWMAP\n	#if NUM_DIR_LIGHTS > 0\n		uniform sampler2D directionalShadowMap[ NUM_DIR_LIGHTS ];\n		varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHTS ];\n	#endif\n	#if NUM_SPOT_LIGHTS > 0\n		uniform sampler2D spotShadowMap[ NUM_SPOT_LIGHTS ];\n		varying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHTS ];\n	#endif\n	#if NUM_POINT_LIGHTS > 0\n		uniform sampler2D pointShadowMap[ NUM_POINT_LIGHTS ];\n		varying vec4 vPointShadowCoord[ NUM_POINT_LIGHTS ];\n	#endif\n	float texture2DCompare( sampler2D depths, vec2 uv, float compare ) {\n		return step( compare, unpackRGBAToDepth( texture2D( depths, uv ) ) );\n	}\n	float texture2DShadowLerp( sampler2D depths, vec2 size, vec2 uv, float compare ) {\n		const vec2 offset = vec2( 0.0, 1.0 );\n		vec2 texelSize = vec2( 1.0 ) / size;\n		vec2 centroidUV = floor( uv * size + 0.5 ) / size;\n		float lb = texture2DCompare( depths, centroidUV + texelSize * offset.xx, compare );\n		float lt = texture2DCompare( depths, centroidUV + texelSize * offset.xy, compare );\n		float rb = texture2DCompare( depths, centroidUV + texelSize * offset.yx, compare );\n		float rt = texture2DCompare( depths, centroidUV + texelSize * offset.yy, compare );\n		vec2 f = fract( uv * size + 0.5 );\n		float a = mix( lb, lt, f.y );\n		float b = mix( rb, rt, f.y );\n		float c = mix( a, b, f.x );\n		return c;\n	}\n	float getShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord ) {\n		float shadow = 1.0;\n		shadowCoord.xyz /= shadowCoord.w;\n		shadowCoord.z += shadowBias;\n		bvec4 inFrustumVec = bvec4 ( shadowCoord.x >= 0.0, shadowCoord.x <= 1.0, shadowCoord.y >= 0.0, shadowCoord.y <= 1.0 );\n		bool inFrustum = all( inFrustumVec );\n		bvec2 frustumTestVec = bvec2( inFrustum, shadowCoord.z <= 1.0 );\n		bool frustumTest = all( frustumTestVec );\n		if ( frustumTest ) {\n		#if defined( SHADOWMAP_TYPE_PCF )\n			vec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n			float dx0 = - texelSize.x * shadowRadius;\n			float dy0 = - texelSize.y * shadowRadius;\n			float dx1 = + texelSize.x * shadowRadius;\n			float dy1 = + texelSize.y * shadowRadius;\n			shadow = (\n				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n				texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n				texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z ) +\n				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n				texture2DCompare( shadowMap, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n				texture2DCompare( shadowMap, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n			) * ( 1.0 / 9.0 );\n		#elif defined( SHADOWMAP_TYPE_PCF_SOFT )\n			vec2 texelSize = vec2( 1.0 ) / shadowMapSize;\n			float dx0 = - texelSize.x * shadowRadius;\n			float dy0 = - texelSize.y * shadowRadius;\n			float dx1 = + texelSize.x * shadowRadius;\n			float dy1 = + texelSize.y * shadowRadius;\n			shadow = (\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, dy0 ), shadowCoord.z ) +\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( 0.0, dy0 ), shadowCoord.z ) +\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, dy0 ), shadowCoord.z ) +\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, 0.0 ), shadowCoord.z ) +\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy, shadowCoord.z ) +\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, 0.0 ), shadowCoord.z ) +\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx0, dy1 ), shadowCoord.z ) +\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( 0.0, dy1 ), shadowCoord.z ) +\n				texture2DShadowLerp( shadowMap, shadowMapSize, shadowCoord.xy + vec2( dx1, dy1 ), shadowCoord.z )\n			) * ( 1.0 / 9.0 );\n		#else\n			shadow = texture2DCompare( shadowMap, shadowCoord.xy, shadowCoord.z );\n		#endif\n		}\n		return shadow;\n	}\n	vec2 cubeToUV( vec3 v, float texelSizeY ) {\n		vec3 absV = abs( v );\n		float scaleToCube = 1.0 / max( absV.x, max( absV.y, absV.z ) );\n		absV *= scaleToCube;\n		v *= scaleToCube * ( 1.0 - 2.0 * texelSizeY );\n		vec2 planar = v.xy;\n		float almostATexel = 1.5 * texelSizeY;\n		float almostOne = 1.0 - almostATexel;\n		if ( absV.z >= almostOne ) {\n			if ( v.z > 0.0 )\n				planar.x = 4.0 - v.x;\n		} else if ( absV.x >= almostOne ) {\n			float signX = sign( v.x );\n			planar.x = v.z * signX + 2.0 * signX;\n		} else if ( absV.y >= almostOne ) {\n			float signY = sign( v.y );\n			planar.x = v.x + 2.0 * signY + 2.0;\n			planar.y = v.z * signY - 2.0;\n		}\n		return vec2( 0.125, 0.25 ) * planar + vec2( 0.375, 0.75 );\n	}\n	float getPointShadow( sampler2D shadowMap, vec2 shadowMapSize, float shadowBias, float shadowRadius, vec4 shadowCoord, float shadowCameraNear, float shadowCameraFar ) {\n		vec2 texelSize = vec2( 1.0 ) / ( shadowMapSize * vec2( 4.0, 2.0 ) );\n		vec3 lightToPosition = shadowCoord.xyz;\n		float dp = ( length( lightToPosition ) - shadowCameraNear ) / ( shadowCameraFar - shadowCameraNear );		dp += shadowBias;\n		vec3 bd3D = normalize( lightToPosition );\n		#if defined( SHADOWMAP_TYPE_PCF ) || defined( SHADOWMAP_TYPE_PCF_SOFT )\n			vec2 offset = vec2( - 1, 1 ) * shadowRadius * texelSize.y;\n			return (\n				texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyy, texelSize.y ), dp ) +\n				texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyy, texelSize.y ), dp ) +\n				texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xyx, texelSize.y ), dp ) +\n				texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yyx, texelSize.y ), dp ) +\n				texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp ) +\n				texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxy, texelSize.y ), dp ) +\n				texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxy, texelSize.y ), dp ) +\n				texture2DCompare( shadowMap, cubeToUV( bd3D + offset.xxx, texelSize.y ), dp ) +\n				texture2DCompare( shadowMap, cubeToUV( bd3D + offset.yxx, texelSize.y ), dp )\n			) * ( 1.0 / 9.0 );\n		#else\n			return texture2DCompare( shadowMap, cubeToUV( bd3D, texelSize.y ), dp );\n		#endif\n	}\n#endif\n",shadowmap_pars_vertex:"#ifdef USE_SHADOWMAP\n	#if NUM_DIR_LIGHTS > 0\n		uniform mat4 directionalShadowMatrix[ NUM_DIR_LIGHTS ];\n		varying vec4 vDirectionalShadowCoord[ NUM_DIR_LIGHTS ];\n	#endif\n	#if NUM_SPOT_LIGHTS > 0\n		uniform mat4 spotShadowMatrix[ NUM_SPOT_LIGHTS ];\n		varying vec4 vSpotShadowCoord[ NUM_SPOT_LIGHTS ];\n	#endif\n	#if NUM_POINT_LIGHTS > 0\n		uniform mat4 pointShadowMatrix[ NUM_POINT_LIGHTS ];\n		varying vec4 vPointShadowCoord[ NUM_POINT_LIGHTS ];\n	#endif\n#endif\n",shadowmap_vertex:"#ifdef USE_SHADOWMAP\n	#if NUM_DIR_LIGHTS > 0\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n		vDirectionalShadowCoord[ i ] = directionalShadowMatrix[ i ] * worldPosition;\n	}\n	#endif\n	#if NUM_SPOT_LIGHTS > 0\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n		vSpotShadowCoord[ i ] = spotShadowMatrix[ i ] * worldPosition;\n	}\n	#endif\n	#if NUM_POINT_LIGHTS > 0\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n		vPointShadowCoord[ i ] = pointShadowMatrix[ i ] * worldPosition;\n	}\n	#endif\n#endif\n",shadowmask_pars_fragment:"float getShadowMask() {\n	float shadow = 1.0;\n	#ifdef USE_SHADOWMAP\n	#if NUM_DIR_LIGHTS > 0\n	DirectionalLight directionalLight;\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_DIR_LIGHTS; i ++ ) {\n		directionalLight = directionalLights[ i ];\n		shadow *= bool( directionalLight.shadow ) ? getShadow( directionalShadowMap[ i ], directionalLight.shadowMapSize, directionalLight.shadowBias, directionalLight.shadowRadius, vDirectionalShadowCoord[ i ] ) : 1.0;\n	}\n	#endif\n	#if NUM_SPOT_LIGHTS > 0\n	SpotLight spotLight;\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_SPOT_LIGHTS; i ++ ) {\n		spotLight = spotLights[ i ];\n		shadow *= bool( spotLight.shadow ) ? getShadow( spotShadowMap[ i ], spotLight.shadowMapSize, spotLight.shadowBias, spotLight.shadowRadius, vSpotShadowCoord[ i ] ) : 1.0;\n	}\n	#endif\n	#if NUM_POINT_LIGHTS > 0\n	PointLight pointLight;\n	#pragma unroll_loop\n	for ( int i = 0; i < NUM_POINT_LIGHTS; i ++ ) {\n		pointLight = pointLights[ i ];\n		shadow *= bool( pointLight.shadow ) ? getPointShadow( pointShadowMap[ i ], pointLight.shadowMapSize, pointLight.shadowBias, pointLight.shadowRadius, vPointShadowCoord[ i ], pointLight.shadowCameraNear, pointLight.shadowCameraFar ) : 1.0;\n	}\n	#endif\n	#endif\n	return shadow;\n}\n",skinbase_vertex:"#ifdef USE_SKINNING\n	mat4 boneMatX = getBoneMatrix( skinIndex.x );\n	mat4 boneMatY = getBoneMatrix( skinIndex.y );\n	mat4 boneMatZ = getBoneMatrix( skinIndex.z );\n	mat4 boneMatW = getBoneMatrix( skinIndex.w );\n#endif",skinning_pars_vertex:"#ifdef USE_SKINNING\n	uniform mat4 bindMatrix;\n	uniform mat4 bindMatrixInverse;\n	#ifdef BONE_TEXTURE\n		uniform sampler2D boneTexture;\n		uniform int boneTextureSize;\n		mat4 getBoneMatrix( const in float i ) {\n			float j = i * 4.0;\n			float x = mod( j, float( boneTextureSize ) );\n			float y = floor( j / float( boneTextureSize ) );\n			float dx = 1.0 / float( boneTextureSize );\n			float dy = 1.0 / float( boneTextureSize );\n			y = dy * ( y + 0.5 );\n			vec4 v1 = texture2D( boneTexture, vec2( dx * ( x + 0.5 ), y ) );\n			vec4 v2 = texture2D( boneTexture, vec2( dx * ( x + 1.5 ), y ) );\n			vec4 v3 = texture2D( boneTexture, vec2( dx * ( x + 2.5 ), y ) );\n			vec4 v4 = texture2D( boneTexture, vec2( dx * ( x + 3.5 ), y ) );\n			mat4 bone = mat4( v1, v2, v3, v4 );\n			return bone;\n		}\n	#else\n		uniform mat4 boneMatrices[ MAX_BONES ];\n		mat4 getBoneMatrix( const in float i ) {\n			mat4 bone = boneMatrices[ int(i) ];\n			return bone;\n		}\n	#endif\n#endif\n",skinning_vertex:"#ifdef USE_SKINNING\n	vec4 skinVertex = bindMatrix * vec4( transformed, 1.0 );\n	vec4 skinned = vec4( 0.0 );\n	skinned += boneMatX * skinVertex * skinWeight.x;\n	skinned += boneMatY * skinVertex * skinWeight.y;\n	skinned += boneMatZ * skinVertex * skinWeight.z;\n	skinned += boneMatW * skinVertex * skinWeight.w;\n	transformed = ( bindMatrixInverse * skinned ).xyz;\n#endif\n",skinnormal_vertex:"#ifdef USE_SKINNING\n	mat4 skinMatrix = mat4( 0.0 );\n	skinMatrix += skinWeight.x * boneMatX;\n	skinMatrix += skinWeight.y * boneMatY;\n	skinMatrix += skinWeight.z * boneMatZ;\n	skinMatrix += skinWeight.w * boneMatW;\n	skinMatrix  = bindMatrixInverse * skinMatrix * bindMatrix;\n	objectNormal = vec4( skinMatrix * vec4( objectNormal, 0.0 ) ).xyz;\n#endif\n",specularmap_fragment:"float specularStrength;\n#ifdef USE_SPECULARMAP\n	vec4 texelSpecular = texture2D( specularMap, vUv );\n	specularStrength = texelSpecular.r;\n#else\n	specularStrength = 1.0;\n#endif",specularmap_pars_fragment:"#ifdef USE_SPECULARMAP\n	uniform sampler2D specularMap;\n#endif",tonemapping_fragment:"#if defined( TONE_MAPPING )\n  gl_FragColor.rgb = toneMapping( gl_FragColor.rgb );\n#endif\n",tonemapping_pars_fragment:"#ifndef saturate\n	#define saturate(a) clamp( a, 0.0, 1.0 )\n#endif\nuniform float toneMappingExposure;\nuniform float toneMappingWhitePoint;\nvec3 LinearToneMapping( vec3 color ) {\n	return toneMappingExposure * color;\n}\nvec3 ReinhardToneMapping( vec3 color ) {\n	color *= toneMappingExposure;\n	return saturate( color / ( vec3( 1.0 ) + color ) );\n}\n#define Uncharted2Helper( x ) max( ( ( x * ( 0.15 * x + 0.10 * 0.50 ) + 0.20 * 0.02 ) / ( x * ( 0.15 * x + 0.50 ) + 0.20 * 0.30 ) ) - 0.02 / 0.30, vec3( 0.0 ) )\nvec3 Uncharted2ToneMapping( vec3 color ) {\n	color *= toneMappingExposure;\n	return saturate( Uncharted2Helper( color ) / Uncharted2Helper( vec3( toneMappingWhitePoint ) ) );\n}\nvec3 OptimizedCineonToneMapping( vec3 color ) {\n	color *= toneMappingExposure;\n	color = max( vec3( 0.0 ), color - 0.004 );\n	return pow( ( color * ( 6.2 * color + 0.5 ) ) / ( color * ( 6.2 * color + 1.7 ) + 0.06 ), vec3( 2.2 ) );\n}\n",uv_pars_fragment:"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\n	varying vec2 vUv;\n#endif",uv_pars_vertex:"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\n	varying vec2 vUv;\n	uniform mat3 uvTransform;\n#endif\n",uv_vertex:"#if defined( USE_MAP ) || defined( USE_BUMPMAP ) || defined( USE_NORMALMAP ) || defined( USE_SPECULARMAP ) || defined( USE_ALPHAMAP ) || defined( USE_EMISSIVEMAP ) || defined( USE_ROUGHNESSMAP ) || defined( USE_METALNESSMAP )\n	vUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n#endif",uv2_pars_fragment:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n	varying vec2 vUv2;\n#endif",uv2_pars_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n	attribute vec2 uv2;\n	varying vec2 vUv2;\n#endif",uv2_vertex:"#if defined( USE_LIGHTMAP ) || defined( USE_AOMAP )\n	vUv2 = uv2;\n#endif",worldpos_vertex:"#if defined( USE_ENVMAP ) || defined( DISTANCE ) || defined ( USE_SHADOWMAP )\n	vec4 worldPosition = modelMatrix * vec4( transformed, 1.0 );\n#endif\n",background_frag:"uniform sampler2D t2D;\nvarying vec2 vUv;\nvoid main() {\n	gl_FragColor = texture2D( t2D, vUv );\n}\n",background_vert:"varying vec2 vUv;\nuniform mat3 uvTransform;\nvoid main() {\n	vUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n	gl_Position = vec4( position, 1.0 );\n	gl_Position.z = 1.0;\n}\n",cube_frag:"uniform samplerCube tCube;\nuniform float tFlip;\nuniform float opacity;\nvarying vec3 vWorldDirection;\nvoid main() {\n	gl_FragColor = textureCube( tCube, vec3( tFlip * vWorldDirection.x, vWorldDirection.yz ) );\n	gl_FragColor.a *= opacity;\n}\n",cube_vert:"varying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n	vWorldDirection = transformDirection( position, modelMatrix );\n	#include <begin_vertex>\n	#include <project_vertex>\n	gl_Position.z = gl_Position.w;\n}\n",depth_frag:"#if DEPTH_PACKING == 3200\n	uniform float opacity;\n#endif\n#include <common>\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	vec4 diffuseColor = vec4( 1.0 );\n	#if DEPTH_PACKING == 3200\n		diffuseColor.a = opacity;\n	#endif\n	#include <map_fragment>\n	#include <alphamap_fragment>\n	#include <alphatest_fragment>\n	#include <logdepthbuf_fragment>\n	#if DEPTH_PACKING == 3200\n		gl_FragColor = vec4( vec3( 1.0 - gl_FragCoord.z ), opacity );\n	#elif DEPTH_PACKING == 3201\n		gl_FragColor = packDepthToRGBA( gl_FragCoord.z );\n	#endif\n}\n",depth_vert:"#include <common>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	#include <skinbase_vertex>\n	#ifdef USE_DISPLACEMENTMAP\n		#include <beginnormal_vertex>\n		#include <morphnormal_vertex>\n		#include <skinnormal_vertex>\n	#endif\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <skinning_vertex>\n	#include <displacementmap_vertex>\n	#include <project_vertex>\n	#include <logdepthbuf_vertex>\n	#include <clipping_planes_vertex>\n}\n",distanceRGBA_frag:"#define DISTANCE\nuniform vec3 referencePosition;\nuniform float nearDistance;\nuniform float farDistance;\nvarying vec3 vWorldPosition;\n#include <common>\n#include <packing>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main () {\n	#include <clipping_planes_fragment>\n	vec4 diffuseColor = vec4( 1.0 );\n	#include <map_fragment>\n	#include <alphamap_fragment>\n	#include <alphatest_fragment>\n	float dist = length( vWorldPosition - referencePosition );\n	dist = ( dist - nearDistance ) / ( farDistance - nearDistance );\n	dist = saturate( dist );\n	gl_FragColor = packDepthToRGBA( dist );\n}\n",distanceRGBA_vert:"#define DISTANCE\nvarying vec3 vWorldPosition;\n#include <common>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	#include <skinbase_vertex>\n	#ifdef USE_DISPLACEMENTMAP\n		#include <beginnormal_vertex>\n		#include <morphnormal_vertex>\n		#include <skinnormal_vertex>\n	#endif\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <skinning_vertex>\n	#include <displacementmap_vertex>\n	#include <project_vertex>\n	#include <worldpos_vertex>\n	#include <clipping_planes_vertex>\n	vWorldPosition = worldPosition.xyz;\n}\n",equirect_frag:"uniform sampler2D tEquirect;\nvarying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n	vec3 direction = normalize( vWorldDirection );\n	vec2 sampleUV;\n	sampleUV.y = asin( clamp( direction.y, - 1.0, 1.0 ) ) * RECIPROCAL_PI + 0.5;\n	sampleUV.x = atan( direction.z, direction.x ) * RECIPROCAL_PI2 + 0.5;\n	gl_FragColor = texture2D( tEquirect, sampleUV );\n}\n",equirect_vert:"varying vec3 vWorldDirection;\n#include <common>\nvoid main() {\n	vWorldDirection = transformDirection( position, modelMatrix );\n	#include <begin_vertex>\n	#include <project_vertex>\n}\n",linedashed_frag:"uniform vec3 diffuse;\nuniform float opacity;\nuniform float dashSize;\nuniform float totalSize;\nvarying float vLineDistance;\n#include <common>\n#include <color_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	if ( mod( vLineDistance, totalSize ) > dashSize ) {\n		discard;\n	}\n	vec3 outgoingLight = vec3( 0.0 );\n	vec4 diffuseColor = vec4( diffuse, opacity );\n	#include <logdepthbuf_fragment>\n	#include <color_fragment>\n	outgoingLight = diffuseColor.rgb;\n	gl_FragColor = vec4( outgoingLight, diffuseColor.a );\n	#include <premultiplied_alpha_fragment>\n	#include <tonemapping_fragment>\n	#include <encodings_fragment>\n	#include <fog_fragment>\n}\n",linedashed_vert:"uniform float scale;\nattribute float lineDistance;\nvarying float vLineDistance;\n#include <common>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <color_vertex>\n	vLineDistance = scale * lineDistance;\n	vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );\n	gl_Position = projectionMatrix * mvPosition;\n	#include <logdepthbuf_vertex>\n	#include <clipping_planes_vertex>\n	#include <fog_vertex>\n}\n",meshbasic_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\n#include <common>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <envmap_pars_fragment>\n#include <fog_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	vec4 diffuseColor = vec4( diffuse, opacity );\n	#include <logdepthbuf_fragment>\n	#include <map_fragment>\n	#include <color_fragment>\n	#include <alphamap_fragment>\n	#include <alphatest_fragment>\n	#include <specularmap_fragment>\n	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n	#ifdef USE_LIGHTMAP\n		reflectedLight.indirectDiffuse += texture2D( lightMap, vUv2 ).xyz * lightMapIntensity;\n	#else\n		reflectedLight.indirectDiffuse += vec3( 1.0 );\n	#endif\n	#include <aomap_fragment>\n	reflectedLight.indirectDiffuse *= diffuseColor.rgb;\n	vec3 outgoingLight = reflectedLight.indirectDiffuse;\n	#include <envmap_fragment>\n	gl_FragColor = vec4( outgoingLight, diffuseColor.a );\n	#include <premultiplied_alpha_fragment>\n	#include <tonemapping_fragment>\n	#include <encodings_fragment>\n	#include <fog_fragment>\n}\n",meshbasic_vert:"#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <envmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	#include <uv2_vertex>\n	#include <color_vertex>\n	#include <skinbase_vertex>\n	#ifdef USE_ENVMAP\n	#include <beginnormal_vertex>\n	#include <morphnormal_vertex>\n	#include <skinnormal_vertex>\n	#include <defaultnormal_vertex>\n	#endif\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <skinning_vertex>\n	#include <project_vertex>\n	#include <logdepthbuf_vertex>\n	#include <worldpos_vertex>\n	#include <clipping_planes_vertex>\n	#include <envmap_vertex>\n	#include <fog_vertex>\n}\n",meshlambert_frag:"uniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float opacity;\nvarying vec3 vLightFront;\n#ifdef DOUBLE_SIDED\n	varying vec3 vLightBack;\n#endif\n#include <common>\n#include <packing>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <envmap_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <fog_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <shadowmask_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	vec4 diffuseColor = vec4( diffuse, opacity );\n	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n	vec3 totalEmissiveRadiance = emissive;\n	#include <logdepthbuf_fragment>\n	#include <map_fragment>\n	#include <color_fragment>\n	#include <alphamap_fragment>\n	#include <alphatest_fragment>\n	#include <specularmap_fragment>\n	#include <emissivemap_fragment>\n	reflectedLight.indirectDiffuse = getAmbientLightIrradiance( ambientLightColor );\n	#include <lightmap_fragment>\n	reflectedLight.indirectDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb );\n	#ifdef DOUBLE_SIDED\n		reflectedLight.directDiffuse = ( gl_FrontFacing ) ? vLightFront : vLightBack;\n	#else\n		reflectedLight.directDiffuse = vLightFront;\n	#endif\n	reflectedLight.directDiffuse *= BRDF_Diffuse_Lambert( diffuseColor.rgb ) * getShadowMask();\n	#include <aomap_fragment>\n	vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + totalEmissiveRadiance;\n	#include <envmap_fragment>\n	gl_FragColor = vec4( outgoingLight, diffuseColor.a );\n	#include <tonemapping_fragment>\n	#include <encodings_fragment>\n	#include <fog_fragment>\n	#include <premultiplied_alpha_fragment>\n	#include <dithering_fragment>\n}\n",meshlambert_vert:"#define LAMBERT\nvarying vec3 vLightFront;\n#ifdef DOUBLE_SIDED\n	varying vec3 vLightBack;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <envmap_pars_vertex>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	#include <uv2_vertex>\n	#include <color_vertex>\n	#include <beginnormal_vertex>\n	#include <morphnormal_vertex>\n	#include <skinbase_vertex>\n	#include <skinnormal_vertex>\n	#include <defaultnormal_vertex>\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <skinning_vertex>\n	#include <project_vertex>\n	#include <logdepthbuf_vertex>\n	#include <clipping_planes_vertex>\n	#include <worldpos_vertex>\n	#include <envmap_vertex>\n	#include <lights_lambert_vertex>\n	#include <shadowmap_vertex>\n	#include <fog_vertex>\n}\n",meshmatcap_frag:"#define MATCAP\nuniform vec3 diffuse;\nuniform float opacity;\nuniform sampler2D matcap;\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\n#include <common>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <fog_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	vec4 diffuseColor = vec4( diffuse, opacity );\n	#include <logdepthbuf_fragment>\n	#include <map_fragment>\n	#include <alphamap_fragment>\n	#include <alphatest_fragment>\n	#include <normal_fragment_begin>\n	#include <normal_fragment_maps>\n	vec3 viewDir = normalize( vViewPosition );\n	vec3 x = normalize( vec3( viewDir.z, 0.0, - viewDir.x ) );\n	vec3 y = cross( viewDir, x );\n	vec2 uv = vec2( dot( x, normal ), dot( y, normal ) ) * 0.495 + 0.5;\n	vec4 matcapColor = texture2D( matcap, uv );\n	matcapColor = matcapTexelToLinear( matcapColor );\n	vec3 outgoingLight = diffuseColor.rgb * matcapColor.rgb;\n	gl_FragColor = vec4( outgoingLight, diffuseColor.a );\n	#include <premultiplied_alpha_fragment>\n	#include <tonemapping_fragment>\n	#include <encodings_fragment>\n	#include <fog_fragment>\n}\n",meshmatcap_vert:"#define MATCAP\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	#include <beginnormal_vertex>\n	#include <morphnormal_vertex>\n	#include <skinbase_vertex>\n	#include <skinnormal_vertex>\n	#include <defaultnormal_vertex>\n	#ifndef FLAT_SHADED\n		vNormal = normalize( transformedNormal );\n	#endif\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <skinning_vertex>\n	#include <displacementmap_vertex>\n	#include <project_vertex>\n	#include <logdepthbuf_vertex>\n	#include <clipping_planes_vertex>\n	#include <fog_vertex>\n	vViewPosition = - mvPosition.xyz;\n}\n",meshphong_frag:"#define PHONG\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform vec3 specular;\nuniform float shininess;\nuniform float opacity;\n#include <common>\n#include <packing>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <envmap_pars_fragment>\n#include <gradientmap_pars_fragment>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <lights_phong_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <specularmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	vec4 diffuseColor = vec4( diffuse, opacity );\n	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n	vec3 totalEmissiveRadiance = emissive;\n	#include <logdepthbuf_fragment>\n	#include <map_fragment>\n	#include <color_fragment>\n	#include <alphamap_fragment>\n	#include <alphatest_fragment>\n	#include <specularmap_fragment>\n	#include <normal_fragment_begin>\n	#include <normal_fragment_maps>\n	#include <emissivemap_fragment>\n	#include <lights_phong_fragment>\n	#include <lights_fragment_begin>\n	#include <lights_fragment_maps>\n	#include <lights_fragment_end>\n	#include <aomap_fragment>\n	vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n	#include <envmap_fragment>\n	gl_FragColor = vec4( outgoingLight, diffuseColor.a );\n	#include <tonemapping_fragment>\n	#include <encodings_fragment>\n	#include <fog_fragment>\n	#include <premultiplied_alpha_fragment>\n	#include <dithering_fragment>\n}\n",meshphong_vert:"#define PHONG\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <envmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	#include <uv2_vertex>\n	#include <color_vertex>\n	#include <beginnormal_vertex>\n	#include <morphnormal_vertex>\n	#include <skinbase_vertex>\n	#include <skinnormal_vertex>\n	#include <defaultnormal_vertex>\n#ifndef FLAT_SHADED\n	vNormal = normalize( transformedNormal );\n#endif\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <skinning_vertex>\n	#include <displacementmap_vertex>\n	#include <project_vertex>\n	#include <logdepthbuf_vertex>\n	#include <clipping_planes_vertex>\n	vViewPosition = - mvPosition.xyz;\n	#include <worldpos_vertex>\n	#include <envmap_vertex>\n	#include <shadowmap_vertex>\n	#include <fog_vertex>\n}\n",meshphysical_frag:"#define PHYSICAL\nuniform vec3 diffuse;\nuniform vec3 emissive;\nuniform float roughness;\nuniform float metalness;\nuniform float opacity;\n#ifndef STANDARD\n	uniform float clearCoat;\n	uniform float clearCoatRoughness;\n#endif\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\n#include <common>\n#include <packing>\n#include <dithering_pars_fragment>\n#include <color_pars_fragment>\n#include <uv_pars_fragment>\n#include <uv2_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <aomap_pars_fragment>\n#include <lightmap_pars_fragment>\n#include <emissivemap_pars_fragment>\n#include <bsdfs>\n#include <cube_uv_reflection_fragment>\n#include <envmap_pars_fragment>\n#include <envmap_physical_pars_fragment>\n#include <fog_pars_fragment>\n#include <lights_pars_begin>\n#include <lights_physical_pars_fragment>\n#include <shadowmap_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <roughnessmap_pars_fragment>\n#include <metalnessmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	vec4 diffuseColor = vec4( diffuse, opacity );\n	ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );\n	vec3 totalEmissiveRadiance = emissive;\n	#include <logdepthbuf_fragment>\n	#include <map_fragment>\n	#include <color_fragment>\n	#include <alphamap_fragment>\n	#include <alphatest_fragment>\n	#include <roughnessmap_fragment>\n	#include <metalnessmap_fragment>\n	#include <normal_fragment_begin>\n	#include <normal_fragment_maps>\n	#include <emissivemap_fragment>\n	#include <lights_physical_fragment>\n	#include <lights_fragment_begin>\n	#include <lights_fragment_maps>\n	#include <lights_fragment_end>\n	#include <aomap_fragment>\n	vec3 outgoingLight = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse + reflectedLight.directSpecular + reflectedLight.indirectSpecular + totalEmissiveRadiance;\n	gl_FragColor = vec4( outgoingLight, diffuseColor.a );\n	#include <tonemapping_fragment>\n	#include <encodings_fragment>\n	#include <fog_fragment>\n	#include <premultiplied_alpha_fragment>\n	#include <dithering_fragment>\n}\n",meshphysical_vert:"#define PHYSICAL\nvarying vec3 vViewPosition;\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\n#include <common>\n#include <uv_pars_vertex>\n#include <uv2_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <shadowmap_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	#include <uv2_vertex>\n	#include <color_vertex>\n	#include <beginnormal_vertex>\n	#include <morphnormal_vertex>\n	#include <skinbase_vertex>\n	#include <skinnormal_vertex>\n	#include <defaultnormal_vertex>\n#ifndef FLAT_SHADED\n	vNormal = normalize( transformedNormal );\n#endif\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <skinning_vertex>\n	#include <displacementmap_vertex>\n	#include <project_vertex>\n	#include <logdepthbuf_vertex>\n	#include <clipping_planes_vertex>\n	vViewPosition = - mvPosition.xyz;\n	#include <worldpos_vertex>\n	#include <shadowmap_vertex>\n	#include <fog_vertex>\n}\n",normal_frag:"#define NORMAL\nuniform float opacity;\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || ( defined( USE_NORMALMAP ) && ! defined( OBJECTSPACE_NORMALMAP ) )\n	varying vec3 vViewPosition;\n#endif\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\n#include <packing>\n#include <uv_pars_fragment>\n#include <bumpmap_pars_fragment>\n#include <normalmap_pars_fragment>\n#include <logdepthbuf_pars_fragment>\nvoid main() {\n	#include <logdepthbuf_fragment>\n	#include <normal_fragment_begin>\n	#include <normal_fragment_maps>\n	gl_FragColor = vec4( packNormalToRGB( normal ), opacity );\n}\n",normal_vert:"#define NORMAL\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || ( defined( USE_NORMALMAP ) && ! defined( OBJECTSPACE_NORMALMAP ) )\n	varying vec3 vViewPosition;\n#endif\n#ifndef FLAT_SHADED\n	varying vec3 vNormal;\n#endif\n#include <uv_pars_vertex>\n#include <displacementmap_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <skinning_pars_vertex>\n#include <logdepthbuf_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	#include <beginnormal_vertex>\n	#include <morphnormal_vertex>\n	#include <skinbase_vertex>\n	#include <skinnormal_vertex>\n	#include <defaultnormal_vertex>\n#ifndef FLAT_SHADED\n	vNormal = normalize( transformedNormal );\n#endif\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <skinning_vertex>\n	#include <displacementmap_vertex>\n	#include <project_vertex>\n	#include <logdepthbuf_vertex>\n#if defined( FLAT_SHADED ) || defined( USE_BUMPMAP ) || ( defined( USE_NORMALMAP ) && ! defined( OBJECTSPACE_NORMALMAP ) )\n	vViewPosition = - mvPosition.xyz;\n#endif\n}\n",points_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include <common>\n#include <color_pars_fragment>\n#include <map_particle_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	vec3 outgoingLight = vec3( 0.0 );\n	vec4 diffuseColor = vec4( diffuse, opacity );\n	#include <logdepthbuf_fragment>\n	#include <map_particle_fragment>\n	#include <color_fragment>\n	#include <alphatest_fragment>\n	outgoingLight = diffuseColor.rgb;\n	gl_FragColor = vec4( outgoingLight, diffuseColor.a );\n	#include <premultiplied_alpha_fragment>\n	#include <tonemapping_fragment>\n	#include <encodings_fragment>\n	#include <fog_fragment>\n}\n",points_vert:"uniform float size;\nuniform float scale;\n#include <common>\n#include <color_pars_vertex>\n#include <fog_pars_vertex>\n#include <morphtarget_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <color_vertex>\n	#include <begin_vertex>\n	#include <morphtarget_vertex>\n	#include <project_vertex>\n	gl_PointSize = size;\n	#ifdef USE_SIZEATTENUATION\n		bool isPerspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 );\n		if ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n	#endif\n	#include <logdepthbuf_vertex>\n	#include <clipping_planes_vertex>\n	#include <worldpos_vertex>\n	#include <fog_vertex>\n}\n",shadow_frag:"uniform vec3 color;\nuniform float opacity;\n#include <common>\n#include <packing>\n#include <fog_pars_fragment>\n#include <bsdfs>\n#include <lights_pars_begin>\n#include <shadowmap_pars_fragment>\n#include <shadowmask_pars_fragment>\nvoid main() {\n	gl_FragColor = vec4( color, opacity * ( 1.0 - getShadowMask() ) );\n	#include <fog_fragment>\n}\n",shadow_vert:"#include <fog_pars_vertex>\n#include <shadowmap_pars_vertex>\nvoid main() {\n	#include <begin_vertex>\n	#include <project_vertex>\n	#include <worldpos_vertex>\n	#include <shadowmap_vertex>\n	#include <fog_vertex>\n}\n",sprite_frag:"uniform vec3 diffuse;\nuniform float opacity;\n#include <common>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n	#include <clipping_planes_fragment>\n	vec3 outgoingLight = vec3( 0.0 );\n	vec4 diffuseColor = vec4( diffuse, opacity );\n	#include <logdepthbuf_fragment>\n	#include <map_fragment>\n	#include <alphatest_fragment>\n	outgoingLight = diffuseColor.rgb;\n	gl_FragColor = vec4( outgoingLight, diffuseColor.a );\n	#include <tonemapping_fragment>\n	#include <encodings_fragment>\n	#include <fog_fragment>\n}\n",sprite_vert:"uniform float rotation;\nuniform vec2 center;\n#include <common>\n#include <uv_pars_vertex>\n#include <fog_pars_vertex>\n#include <logdepthbuf_pars_vertex>\n#include <clipping_planes_pars_vertex>\nvoid main() {\n	#include <uv_vertex>\n	vec4 mvPosition = modelViewMatrix * vec4( 0.0, 0.0, 0.0, 1.0 );\n	vec2 scale;\n	scale.x = length( vec3( modelMatrix[ 0 ].x, modelMatrix[ 0 ].y, modelMatrix[ 0 ].z ) );\n	scale.y = length( vec3( modelMatrix[ 1 ].x, modelMatrix[ 1 ].y, modelMatrix[ 1 ].z ) );\n	#ifndef USE_SIZEATTENUATION\n		bool isPerspective = ( projectionMatrix[ 2 ][ 3 ] == - 1.0 );\n		if ( isPerspective ) scale *= - mvPosition.z;\n	#endif\n	vec2 alignedPosition = ( position.xy - ( center - vec2( 0.5 ) ) ) * scale;\n	vec2 rotatedPosition;\n	rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;\n	rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;\n	mvPosition.xy += rotatedPosition;\n	gl_Position = projectionMatrix * mvPosition;\n	#include <logdepthbuf_vertex>\n	#include <clipping_planes_vertex>\n	#include <fog_vertex>\n}\n"},nR={merge:function(t){for(var e={},n=0;n<t.length;n++){var i=this.clone(t[n]);for(var r in i)e[r]=i[r]}return e},clone:function(t){var e={};for(var n in t)for(var i in e[n]={},t[n]){var r=t[n][i];r&&(r.isColor||r.isMatrix3||r.isMatrix4||r.isVector2||r.isVector3||r.isVector4||r.isTexture)?e[n][i]=r.clone():Array.isArray(r)?e[n][i]=r.slice():e[n][i]=r}return e}},n3={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function nI(t,e,n){return void 0===e&&void 0===n?this.set(t):this.setRGB(t,e,n)}Object.assign(nI.prototype,{isColor:!0,r:1,g:1,b:1,set:function(t){return t&&t.isColor?this.copy(t):"number"==typeof t?this.setHex(t):"string"==typeof t&&this.setStyle(t),this},setScalar:function(t){return this.r=t,this.g=t,this.b=t,this},setHex:function(t){return t=Math.floor(t),this.r=(t>>16&255)/255,this.g=(t>>8&255)/255,this.b=(255&t)/255,this},setRGB:function(t,e,n){return this.r=t,this.g=e,this.b=n,this},setHSL:function(){function t(t,e,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?t+6*(e-t)*n:n<.5?e:n<2/3?t+6*(e-t)*(2/3-n):t}return function(e,n,i){if(e=nv.euclideanModulo(e,1),n=nv.clamp(n,0,1),i=nv.clamp(i,0,1),0===n)this.r=this.g=this.b=i;else{var r=i<=.5?i*(1+n):i+n-i*n,o=2*i-r;this.r=t(o,r,e+1/3),this.g=t(o,r,e),this.b=t(o,r,e-1/3)}return this}}(),setStyle:function(t){function e(e){void 0!==e&&1>parseFloat(e)&&console.warn("THREE.Color: Alpha component of "+t+" will be ignored.")}if(n=/^((?:rgb|hsl)a?)\(\s*([^\)]*)\)/.exec(t)){var n,i,r=n[1],o=n[2];switch(r){case"rgb":case"rgba":if(i=/^(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o))return this.r=Math.min(255,parseInt(i[1],10))/255,this.g=Math.min(255,parseInt(i[2],10))/255,this.b=Math.min(255,parseInt(i[3],10))/255,e(i[5]),this;if(i=/^(\d+)\%\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o))return this.r=Math.min(100,parseInt(i[1],10))/100,this.g=Math.min(100,parseInt(i[2],10))/100,this.b=Math.min(100,parseInt(i[3],10))/100,e(i[5]),this;break;case"hsl":case"hsla":if(i=/^([0-9]*\.?[0-9]+)\s*,\s*(\d+)\%\s*,\s*(\d+)\%\s*(,\s*([0-9]*\.?[0-9]+)\s*)?$/.exec(o)){var a=parseFloat(i[1])/360,s=parseInt(i[2],10)/100,u=parseInt(i[3],10)/100;return e(i[5]),this.setHSL(a,s,u)}}}else if(n=/^\#([A-Fa-f0-9]+)$/.exec(t)){var l,h=(l=n[1]).length;if(3===h)return this.r=parseInt(l.charAt(0)+l.charAt(0),16)/255,this.g=parseInt(l.charAt(1)+l.charAt(1),16)/255,this.b=parseInt(l.charAt(2)+l.charAt(2),16)/255,this;if(6===h)return this.r=parseInt(l.charAt(0)+l.charAt(1),16)/255,this.g=parseInt(l.charAt(2)+l.charAt(3),16)/255,this.b=parseInt(l.charAt(4)+l.charAt(5),16)/255,this}return t&&t.length>0&&(void 0!==(l=n3[t])?this.setHex(l):console.warn("THREE.Color: Unknown color "+t)),this},clone:function(){return new this.constructor(this.r,this.g,this.b)},copy:function(t){return this.r=t.r,this.g=t.g,this.b=t.b,this},copyGammaToLinear:function(t,e){return void 0===e&&(e=2),this.r=Math.pow(t.r,e),this.g=Math.pow(t.g,e),this.b=Math.pow(t.b,e),this},copyLinearToGamma:function(t,e){void 0===e&&(e=2);var n=e>0?1/e:1;return this.r=Math.pow(t.r,n),this.g=Math.pow(t.g,n),this.b=Math.pow(t.b,n),this},convertGammaToLinear:function(t){return this.copyGammaToLinear(this,t),this},convertLinearToGamma:function(t){return this.copyLinearToGamma(this,t),this},copySRGBToLinear:function(){function t(t){return t<.04045?.0773993808*t:Math.pow(.9478672986*t+.0521327014,2.4)}return function(e){return this.r=t(e.r),this.g=t(e.g),this.b=t(e.b),this}}(),copyLinearToSRGB:function(){function t(t){return t<.0031308?12.92*t:1.055*Math.pow(t,.41666)-.055}return function(e){return this.r=t(e.r),this.g=t(e.g),this.b=t(e.b),this}}(),convertSRGBToLinear:function(){return this.copySRGBToLinear(this),this},convertLinearToSRGB:function(){return this.copyLinearToSRGB(this),this},getHex:function(){return 255*this.r<<16^255*this.g<<8^255*this.b<<0},getHexString:function(){return("000000"+this.getHex().toString(16)).slice(-6)},getHSL:function(t){void 0===t&&(console.warn("THREE.Color: .getHSL() target is now required"),t={h:0,s:0,l:0});var e,n,i=this.r,r=this.g,o=this.b,a=Math.max(i,r,o),s=Math.min(i,r,o),u=(s+a)/2;if(s===a)e=0,n=0;else{var l=a-s;switch(n=u<=.5?l/(a+s):l/(2-a-s),a){case i:e=(r-o)/l+(r<o?6:0);break;case r:e=(o-i)/l+2;break;case o:e=(i-r)/l+4}e/=6}return t.h=e,t.s=n,t.l=u,t},getStyle:function(){return"rgb("+(255*this.r|0)+","+(255*this.g|0)+","+(255*this.b|0)+")"},offsetHSL:(rj={},function(t,e,n){return this.getHSL(rj),rj.h+=t,rj.s+=e,rj.l+=n,this.setHSL(rj.h,rj.s,rj.l),this}),add:function(t){return this.r+=t.r,this.g+=t.g,this.b+=t.b,this},addColors:function(t,e){return this.r=t.r+e.r,this.g=t.g+e.g,this.b=t.b+e.b,this},addScalar:function(t){return this.r+=t,this.g+=t,this.b+=t,this},sub:function(t){return this.r=Math.max(0,this.r-t.r),this.g=Math.max(0,this.g-t.g),this.b=Math.max(0,this.b-t.b),this},multiply:function(t){return this.r*=t.r,this.g*=t.g,this.b*=t.b,this},multiplyScalar:function(t){return this.r*=t,this.g*=t,this.b*=t,this},lerp:function(t,e){return this.r+=(t.r-this.r)*e,this.g+=(t.g-this.g)*e,this.b+=(t.b-this.b)*e,this},lerpHSL:(rZ={h:0,s:0,l:0},rq={h:0,s:0,l:0},function(t,e){this.getHSL(rZ),t.getHSL(rq);var n=nv.lerp(rZ.h,rq.h,e),i=nv.lerp(rZ.s,rq.s,e),r=nv.lerp(rZ.l,rq.l,e);return this.setHSL(n,i,r),this}),equals:function(t){return t.r===this.r&&t.g===this.g&&t.b===this.b},fromArray:function(t,e){return void 0===e&&(e=0),this.r=t[e],this.g=t[e+1],this.b=t[e+2],this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this.r,t[e+1]=this.g,t[e+2]=this.b,t},toJSON:function(){return this.getHex()}});var nD={common:{diffuse:{value:new nI(15658734)},opacity:{value:1},map:{value:null},uvTransform:{value:new nx},alphaMap:{value:null}},specularmap:{specularMap:{value:null}},envmap:{envMap:{value:null},flipEnvMap:{value:-1},reflectivity:{value:1},refractionRatio:{value:.98},maxMipLevel:{value:0}},aomap:{aoMap:{value:null},aoMapIntensity:{value:1}},lightmap:{lightMap:{value:null},lightMapIntensity:{value:1}},emissivemap:{emissiveMap:{value:null}},bumpmap:{bumpMap:{value:null},bumpScale:{value:1}},normalmap:{normalMap:{value:null},normalScale:{value:new n$(1,1)}},displacementmap:{displacementMap:{value:null},displacementScale:{value:1},displacementBias:{value:0}},roughnessmap:{roughnessMap:{value:null}},metalnessmap:{metalnessMap:{value:null}},gradientmap:{gradientMap:{value:null}},fog:{fogDensity:{value:25e-5},fogNear:{value:1},fogFar:{value:2e3},fogColor:{value:new nI(16777215)}},lights:{ambientLightColor:{value:[]},directionalLights:{value:[],properties:{direction:{},color:{},shadow:{},shadowBias:{},shadowRadius:{},shadowMapSize:{}}},directionalShadowMap:{value:[]},directionalShadowMatrix:{value:[]},spotLights:{value:[],properties:{color:{},position:{},direction:{},distance:{},coneCos:{},penumbraCos:{},decay:{},shadow:{},shadowBias:{},shadowRadius:{},shadowMapSize:{}}},spotShadowMap:{value:[]},spotShadowMatrix:{value:[]},pointLights:{value:[],properties:{color:{},position:{},decay:{},distance:{},shadow:{},shadowBias:{},shadowRadius:{},shadowMapSize:{},shadowCameraNear:{},shadowCameraFar:{}}},pointShadowMap:{value:[]},pointShadowMatrix:{value:[]},hemisphereLights:{value:[],properties:{direction:{},skyColor:{},groundColor:{}}},rectAreaLights:{value:[],properties:{color:{},position:{},width:{},height:{}}}},points:{diffuse:{value:new nI(15658734)},opacity:{value:1},size:{value:1},scale:{value:1},map:{value:null},uvTransform:{value:new nx}},sprite:{diffuse:{value:new nI(15658734)},opacity:{value:1},center:{value:new n$(.5,.5)},rotation:{value:0},map:{value:null},uvTransform:{value:new nx}}},nN={basic:{uniforms:nR.merge([nD.common,nD.specularmap,nD.envmap,nD.aomap,nD.lightmap,nD.fog]),vertexShader:n1.meshbasic_vert,fragmentShader:n1.meshbasic_frag},lambert:{uniforms:nR.merge([nD.common,nD.specularmap,nD.envmap,nD.aomap,nD.lightmap,nD.emissivemap,nD.fog,nD.lights,{emissive:{value:new nI(0)}}]),vertexShader:n1.meshlambert_vert,fragmentShader:n1.meshlambert_frag},phong:{uniforms:nR.merge([nD.common,nD.specularmap,nD.envmap,nD.aomap,nD.lightmap,nD.emissivemap,nD.bumpmap,nD.normalmap,nD.displacementmap,nD.gradientmap,nD.fog,nD.lights,{emissive:{value:new nI(0)},specular:{value:new nI(1118481)},shininess:{value:30}}]),vertexShader:n1.meshphong_vert,fragmentShader:n1.meshphong_frag},standard:{uniforms:nR.merge([nD.common,nD.envmap,nD.aomap,nD.lightmap,nD.emissivemap,nD.bumpmap,nD.normalmap,nD.displacementmap,nD.roughnessmap,nD.metalnessmap,nD.fog,nD.lights,{emissive:{value:new nI(0)},roughness:{value:.5},metalness:{value:.5},envMapIntensity:{value:1}}]),vertexShader:n1.meshphysical_vert,fragmentShader:n1.meshphysical_frag},matcap:{uniforms:nR.merge([nD.common,nD.bumpmap,nD.normalmap,nD.displacementmap,nD.fog,{matcap:{value:null}}]),vertexShader:n1.meshmatcap_vert,fragmentShader:n1.meshmatcap_frag},points:{uniforms:nR.merge([nD.points,nD.fog]),vertexShader:n1.points_vert,fragmentShader:n1.points_frag},dashed:{uniforms:nR.merge([nD.common,nD.fog,{scale:{value:1},dashSize:{value:1},totalSize:{value:2}}]),vertexShader:n1.linedashed_vert,fragmentShader:n1.linedashed_frag},depth:{uniforms:nR.merge([nD.common,nD.displacementmap]),vertexShader:n1.depth_vert,fragmentShader:n1.depth_frag},normal:{uniforms:nR.merge([nD.common,nD.bumpmap,nD.normalmap,nD.displacementmap,{opacity:{value:1}}]),vertexShader:n1.normal_vert,fragmentShader:n1.normal_frag},sprite:{uniforms:nR.merge([nD.sprite,nD.fog]),vertexShader:n1.sprite_vert,fragmentShader:n1.sprite_frag},background:{uniforms:{uvTransform:{value:new nx},t2D:{value:null}},vertexShader:n1.background_vert,fragmentShader:n1.background_frag},cube:{uniforms:{tCube:{value:null},tFlip:{value:-1},opacity:{value:1}},vertexShader:n1.cube_vert,fragmentShader:n1.cube_frag},equirect:{uniforms:{tEquirect:{value:null}},vertexShader:n1.equirect_vert,fragmentShader:n1.equirect_frag},distanceRGBA:{uniforms:nR.merge([nD.common,nD.displacementmap,{referencePosition:{value:new n8},nearDistance:{value:1},farDistance:{value:1e3}}]),vertexShader:n1.distanceRGBA_vert,fragmentShader:n1.distanceRGBA_frag},shadow:{uniforms:nR.merge([nD.lights,nD.fog,{color:{value:new nI(0)},opacity:{value:1}}]),vertexShader:n1.shadow_vert,fragmentShader:n1.shadow_frag}};function nB(){var t=null,e=!1,n=null;function i(r,o){!1!==e&&(n(r,o),t.requestAnimationFrame(i))}return{start:function(){!0!==e&&null!==n&&(t.requestAnimationFrame(i),e=!0)},stop:function(){e=!1},setAnimationLoop:function(t){n=t},setContext:function(e){t=e}}}function nO(t){var e=new WeakMap;return{get:function(t){return t.isInterleavedBufferAttribute&&(t=t.data),e.get(t)},remove:function(n){n.isInterleavedBufferAttribute&&(n=n.data);var i=e.get(n);i&&(t.deleteBuffer(i.buffer),e.delete(n))},update:function(n,i){n.isInterleavedBufferAttribute&&(n=n.data);var r,o,a,s,u,l,h,c,p,d,f,m=e.get(n);void 0===m?e.set(n,(r=n,o=i,a=r.array,s=r.dynamic?35048:35044,u=t.createBuffer(),t.bindBuffer(o,u),t.bufferData(o,a,s),r.onUploadCallback(),l=5126,a instanceof Float32Array?l=5126:a instanceof Float64Array?console.warn("THREE.WebGLAttributes: Unsupported data buffer format: Float64Array."):a instanceof Uint16Array?l=5123:a instanceof Int16Array?l=5122:a instanceof Uint32Array?l=5125:a instanceof Int32Array?l=5124:a instanceof Int8Array?l=5120:a instanceof Uint8Array&&(l=5121),{buffer:u,type:l,bytesPerElement:a.BYTES_PER_ELEMENT,version:r.version})):m.version<n.version&&(h=m.buffer,c=n,p=i,d=c.array,f=c.updateRange,t.bindBuffer(p,h),!1===c.dynamic?t.bufferData(p,d,35044):-1===f.count?t.bufferSubData(p,0,d):0===f.count?console.error("THREE.WebGLObjects.updateBuffer: dynamic THREE.BufferAttribute marked as needsUpdate but updateRange.count is 0, ensure you are using set methods or updating manually."):(t.bufferSubData(p,f.offset*d.BYTES_PER_ELEMENT,d.subarray(f.offset,f.offset+f.count)),f.count=-1),m.version=n.version)}}}function nG(t,e,n,i,r,o){this.a=t,this.b=e,this.c=n,this.normal=i&&i.isVector3?i:new n8,this.vertexNormals=Array.isArray(i)?i:[],this.color=r&&r.isColor?r:new nI,this.vertexColors=Array.isArray(r)?r:[],this.materialIndex=void 0!==o?o:0}function nk(t,e,n,i){this._x=t||0,this._y=e||0,this._z=n||0,this._order=i||nk.DefaultOrder}function nV(){this.mask=1}nN.physical={uniforms:nR.merge([nN.standard.uniforms,{clearCoat:{value:0},clearCoatRoughness:{value:0}}]),vertexShader:n1.meshphysical_vert,fragmentShader:n1.meshphysical_frag},Object.assign(nG.prototype,{clone:function(){return(new this.constructor).copy(this)},copy:function(t){this.a=t.a,this.b=t.b,this.c=t.c,this.normal.copy(t.normal),this.color.copy(t.color),this.materialIndex=t.materialIndex;for(var e=0,n=t.vertexNormals.length;e<n;e++)this.vertexNormals[e]=t.vertexNormals[e].clone();for(e=0,n=t.vertexColors.length;e<n;e++)this.vertexColors[e]=t.vertexColors[e].clone();return this}}),nk.RotationOrders=["XYZ","YZX","ZXY","XZY","YXZ","ZYX"],nk.DefaultOrder="XYZ",Object.defineProperties(nk.prototype,{x:{get:function(){return this._x},set:function(t){this._x=t,this.onChangeCallback()}},y:{get:function(){return this._y},set:function(t){this._y=t,this.onChangeCallback()}},z:{get:function(){return this._z},set:function(t){this._z=t,this.onChangeCallback()}},order:{get:function(){return this._order},set:function(t){this._order=t,this.onChangeCallback()}}}),Object.assign(nk.prototype,{isEuler:!0,set:function(t,e,n,i){return this._x=t,this._y=e,this._z=n,this._order=i||this._order,this.onChangeCallback(),this},clone:function(){return new this.constructor(this._x,this._y,this._z,this._order)},copy:function(t){return this._x=t._x,this._y=t._y,this._z=t._z,this._order=t._order,this.onChangeCallback(),this},setFromRotationMatrix:function(t,e,n){var i=nv.clamp,r=t.elements,o=r[0],a=r[4],s=r[8],u=r[1],l=r[5],h=r[9],c=r[2],p=r[6],d=r[10];return"XYZ"===(e=e||this._order)?(this._y=Math.asin(i(s,-1,1)),.99999>Math.abs(s)?(this._x=Math.atan2(-h,d),this._z=Math.atan2(-a,o)):(this._x=Math.atan2(p,l),this._z=0)):"YXZ"===e?(this._x=Math.asin(-i(h,-1,1)),.99999>Math.abs(h)?(this._y=Math.atan2(s,d),this._z=Math.atan2(u,l)):(this._y=Math.atan2(-c,o),this._z=0)):"ZXY"===e?(this._x=Math.asin(i(p,-1,1)),.99999>Math.abs(p)?(this._y=Math.atan2(-c,d),this._z=Math.atan2(-a,l)):(this._y=0,this._z=Math.atan2(u,o))):"ZYX"===e?(this._y=Math.asin(-i(c,-1,1)),.99999>Math.abs(c)?(this._x=Math.atan2(p,d),this._z=Math.atan2(u,o)):(this._x=0,this._z=Math.atan2(-a,l))):"YZX"===e?(this._z=Math.asin(i(u,-1,1)),.99999>Math.abs(u)?(this._x=Math.atan2(-h,l),this._y=Math.atan2(-c,o)):(this._x=0,this._y=Math.atan2(s,d))):"XZY"===e?(this._z=Math.asin(-i(a,-1,1)),.99999>Math.abs(a)?(this._x=Math.atan2(p,l),this._y=Math.atan2(s,o)):(this._x=Math.atan2(-h,d),this._y=0)):console.warn("THREE.Euler: .setFromRotationMatrix() given unsupported order: "+e),this._order=e,!1!==n&&this.onChangeCallback(),this},setFromQuaternion:(rQ=new ny,function(t,e,n){return rQ.makeRotationFromQuaternion(t),this.setFromRotationMatrix(rQ,e,n)}),setFromVector3:function(t,e){return this.set(t.x,t.y,t.z,e||this._order)},reorder:(rJ=new n_,function(t){return rJ.setFromEuler(this),this.setFromQuaternion(rJ,t)}),equals:function(t){return t._x===this._x&&t._y===this._y&&t._z===this._z&&t._order===this._order},fromArray:function(t){return this._x=t[0],this._y=t[1],this._z=t[2],void 0!==t[3]&&(this._order=t[3]),this.onChangeCallback(),this},toArray:function(t,e){return void 0===t&&(t=[]),void 0===e&&(e=0),t[e]=this._x,t[e+1]=this._y,t[e+2]=this._z,t[e+3]=this._order,t},toVector3:function(t){return t?t.set(this._x,this._y,this._z):new n8(this._x,this._y,this._z)},onChange:function(t){return this.onChangeCallback=t,this},onChangeCallback:function(){}}),Object.assign(nV.prototype,{set:function(t){this.mask=1<<t|0},enable:function(t){this.mask|=1<<t|0},toggle:function(t){this.mask^=1<<t|0},disable:function(t){this.mask&=~(1<<t|0)},test:function(t){return 0!=(this.mask&t.mask)}});var nz=0;function nU(){Object.defineProperty(this,"id",{value:nz++}),this.uuid=nv.generateUUID(),this.name="",this.type="Object3D",this.parent=null,this.children=[],this.up=nU.DefaultUp.clone();var t=new n8,e=new nk,n=new n_,i=new n8(1,1,1);e.onChange(function(){n.setFromEuler(e,!1)}),n.onChange(function(){e.setFromQuaternion(n,void 0,!1)}),Object.defineProperties(this,{position:{configurable:!0,enumerable:!0,value:t},rotation:{configurable:!0,enumerable:!0,value:e},quaternion:{configurable:!0,enumerable:!0,value:n},scale:{configurable:!0,enumerable:!0,value:i},modelViewMatrix:{value:new ny},normalMatrix:{value:new nx}}),this.matrix=new ny,this.matrixWorld=new ny,this.matrixAutoUpdate=nU.DefaultMatrixAutoUpdate,this.matrixWorldNeedsUpdate=!1,this.layers=new nV,this.visible=!0,this.castShadow=!1,this.receiveShadow=!1,this.frustumCulled=!0,this.renderOrder=0,this.userData={}}nU.DefaultUp=new n8(0,1,0),nU.DefaultMatrixAutoUpdate=!0,nU.prototype=Object.assign(Object.create(i.prototype),{constructor:nU,isObject3D:!0,onBeforeRender:function(){},onAfterRender:function(){},applyMatrix:function(t){this.matrix.multiplyMatrices(t,this.matrix),this.matrix.decompose(this.position,this.quaternion,this.scale)},applyQuaternion:function(t){return this.quaternion.premultiply(t),this},setRotationFromAxisAngle:function(t,e){this.quaternion.setFromAxisAngle(t,e)},setRotationFromEuler:function(t){this.quaternion.setFromEuler(t,!0)},setRotationFromMatrix:function(t){this.quaternion.setFromRotationMatrix(t)},setRotationFromQuaternion:function(t){this.quaternion.copy(t)},rotateOnAxis:(r9=new n_,function(t,e){return r9.setFromAxisAngle(t,e),this.quaternion.multiply(r9),this}),rotateOnWorldAxis:(ot=new n_,function(t,e){return ot.setFromAxisAngle(t,e),this.quaternion.premultiply(ot),this}),rotateX:(oe=new n8(1,0,0),function(t){return this.rotateOnAxis(oe,t)}),rotateY:(on=new n8(0,1,0),function(t){return this.rotateOnAxis(on,t)}),rotateZ:(oi=new n8(0,0,1),function(t){return this.rotateOnAxis(oi,t)}),translateOnAxis:(or=new n8,function(t,e){return or.copy(t).applyQuaternion(this.quaternion),this.position.add(or.multiplyScalar(e)),this}),translateX:(oo=new n8(1,0,0),function(t){return this.translateOnAxis(oo,t)}),translateY:(oa=new n8(0,1,0),function(t){return this.translateOnAxis(oa,t)}),translateZ:(os=new n8(0,0,1),function(t){return this.translateOnAxis(os,t)}),localToWorld:function(t){return t.applyMatrix4(this.matrixWorld)},worldToLocal:(ou=new ny,function(t){return t.applyMatrix4(ou.getInverse(this.matrixWorld))}),lookAt:(ol=new n_,oh=new ny,oc=new n8,op=new n8,function(t,e,n){t.isVector3?oc.copy(t):oc.set(t,e,n);var i=this.parent;this.updateWorldMatrix(!0,!1),op.setFromMatrixPosition(this.matrixWorld),this.isCamera?oh.lookAt(op,oc,this.up):oh.lookAt(oc,op,this.up),this.quaternion.setFromRotationMatrix(oh),i&&(oh.extractRotation(i.matrixWorld),ol.setFromRotationMatrix(oh),this.quaternion.premultiply(ol.inverse()))}),add:function(t){if(arguments.length>1){for(var e=0;e<arguments.length;e++)this.add(arguments[e]);return this}return t===this?(console.error("THREE.Object3D.add: object can't be added as a child of itself.",t),this):(t&&t.isObject3D?(null!==t.parent&&t.parent.remove(t),t.parent=this,t.dispatchEvent({type:"added"}),this.children.push(t)):console.error("THREE.Object3D.add: object not an instance of THREE.Object3D.",t),this)},remove:function(t){if(arguments.length>1){for(var e=0;e<arguments.length;e++)this.remove(arguments[e]);return this}var n=this.children.indexOf(t);return -1!==n&&(t.parent=null,t.dispatchEvent({type:"removed"}),this.children.splice(n,1)),this},getObjectById:function(t){return this.getObjectByProperty("id",t)},getObjectByName:function(t){return this.getObjectByProperty("name",t)},getObjectByProperty:function(t,e){if(this[t]===e)return this;for(var n=0,i=this.children.length;n<i;n++){var r=this.children[n].getObjectByProperty(t,e);if(void 0!==r)return r}},getWorldPosition:function(t){return void 0===t&&(console.warn("THREE.Object3D: .getWorldPosition() target is now required"),t=new n8),this.updateMatrixWorld(!0),t.setFromMatrixPosition(this.matrixWorld)},getWorldQuaternion:(od=new n8,of=new n8,function(t){return void 0===t&&(console.warn("THREE.Object3D: .getWorldQuaternion() target is now required"),t=new n_),this.updateMatrixWorld(!0),this.matrixWorld.decompose(od,t,of),t}),getWorldScale:(om=new n8,og=new n_,function(t){return void 0===t&&(console.warn("THREE.Object3D: .getWorldScale() target is now required"),t=new n8),this.updateMatrixWorld(!0),this.matrixWorld.decompose(om,og,t),t}),getWorldDirection:function(t){void 0===t&&(console.warn("THREE.Object3D: .getWorldDirection() target is now required"),t=new n8),this.updateMatrixWorld(!0);var e=this.matrixWorld.elements;return t.set(e[8],e[9],e[10]).normalize()},raycast:function(){},traverse:function(t){t(this);for(var e=this.children,n=0,i=e.length;n<i;n++)e[n].traverse(t)},traverseVisible:function(t){if(!1!==this.visible){t(this);for(var e=this.children,n=0,i=e.length;n<i;n++)e[n].traverseVisible(t)}},traverseAncestors:function(t){var e=this.parent;null!==e&&(t(e),e.traverseAncestors(t))},updateMatrix:function(){this.matrix.compose(this.position,this.quaternion,this.scale),this.matrixWorldNeedsUpdate=!0},updateMatrixWorld:function(t){this.matrixAutoUpdate&&this.updateMatrix(),(this.matrixWorldNeedsUpdate||t)&&(null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),this.matrixWorldNeedsUpdate=!1,t=!0);for(var e=this.children,n=0,i=e.length;n<i;n++)e[n].updateMatrixWorld(t)},updateWorldMatrix:function(t,e){var n=this.parent;if(!0===t&&null!==n&&n.updateWorldMatrix(!0,!1),this.matrixAutoUpdate&&this.updateMatrix(),null===this.parent?this.matrixWorld.copy(this.matrix):this.matrixWorld.multiplyMatrices(this.parent.matrixWorld,this.matrix),!0===e)for(var i=this.children,r=0,o=i.length;r<o;r++)i[r].updateWorldMatrix(!1,!0)},toJSON:function(t){var e=void 0===t||"string"==typeof t,n={};e&&(t={geometries:{},materials:{},textures:{},images:{},shapes:{}},n.metadata={version:4.5,type:"Object",generator:"Object3D.toJSON"});var i={};function r(e,n){return void 0===e[n.uuid]&&(e[n.uuid]=n.toJSON(t)),n.uuid}if(i.uuid=this.uuid,i.type=this.type,""!==this.name&&(i.name=this.name),!0===this.castShadow&&(i.castShadow=!0),!0===this.receiveShadow&&(i.receiveShadow=!0),!1===this.visible&&(i.visible=!1),!1===this.frustumCulled&&(i.frustumCulled=!1),0!==this.renderOrder&&(i.renderOrder=this.renderOrder),"{}"!==JSON.stringify(this.userData)&&(i.userData=this.userData),i.layers=this.layers.mask,i.matrix=this.matrix.toArray(),!1===this.matrixAutoUpdate&&(i.matrixAutoUpdate=!1),this.isMesh||this.isLine||this.isPoints){i.geometry=r(t.geometries,this.geometry);var o=this.geometry.parameters;if(void 0!==o&&void 0!==o.shapes){var a=o.shapes;if(Array.isArray(a))for(var s=0,u=a.length;s<u;s++){var l=a[s];r(t.shapes,l)}else r(t.shapes,a)}}if(void 0!==this.material){if(Array.isArray(this.material)){var h=[];for(s=0,u=this.material.length;s<u;s++)h.push(r(t.materials,this.material[s]));i.material=h}else i.material=r(t.materials,this.material)}if(this.children.length>0)for(i.children=[],s=0;s<this.children.length;s++)i.children.push(this.children[s].toJSON(t).object);if(e){var c=m(t.geometries),p=m(t.materials),d=m(t.textures),f=m(t.images);a=m(t.shapes),c.length>0&&(n.geometries=c),p.length>0&&(n.materials=p),d.length>0&&(n.textures=d),f.length>0&&(n.images=f),a.length>0&&(n.shapes=a)}return n.object=i,n;function m(t){var e=[];for(var n in t){var i=t[n];delete i.metadata,e.push(i)}return e}},clone:function(t){return(new this.constructor).copy(this,t)},copy:function(t,e){if(void 0===e&&(e=!0),this.name=t.name,this.up.copy(t.up),this.position.copy(t.position),this.quaternion.copy(t.quaternion),this.scale.copy(t.scale),this.matrix.copy(t.matrix),this.matrixWorld.copy(t.matrixWorld),this.matrixAutoUpdate=t.matrixAutoUpdate,this.matrixWorldNeedsUpdate=t.matrixWorldNeedsUpdate,this.layers.mask=t.layers.mask,this.visible=t.visible,this.castShadow=t.castShadow,this.receiveShadow=t.receiveShadow,this.frustumCulled=t.frustumCulled,this.renderOrder=t.renderOrder,this.userData=JSON.parse(JSON.stringify(t.userData)),!0===e)for(var n=0;n<t.children.length;n++){var i=t.children[n];this.add(i.clone())}return this}});var n2=0;function nH(){Object.defineProperty(this,"id",{value:n2+=2}),this.uuid=nv.generateUUID(),this.name="",this.type="Geometry",this.vertices=[],this.colors=[],this.faces=[],this.faceVertexUvs=[[]],this.morphTargets=[],this.morphNormals=[],this.skinWeights=[],this.skinIndices=[],this.lineDistances=[],this.boundingBox=null,this.boundingSphere=null,this.elementsNeedUpdate=!1,this.verticesNeedUpdate=!1,this.uvsNeedUpdate=!1,this.normalsNeedUpdate=!1,this.colorsNeedUpdate=!1,this.lineDistancesNeedUpdate=!1,this.groupsNeedUpdate=!1}function nF(t,e,n){if(Array.isArray(t))throw TypeError("THREE.BufferAttribute: array should be a Typed Array.");this.name="",this.array=t,this.itemSize=e,this.count=void 0!==t?t.length/e:0,this.normalized=!0===n,this.dynamic=!1,this.updateRange={offset:0,count:-1},this.version=0}function n5(t,e,n){nF.call(this,new Int8Array(t),e,n)}function n4(t,e,n){nF.call(this,new Uint8Array(t),e,n)}function n6(t,e,n){nF.call(this,new Uint8ClampedArray(t),e,n)}function nW(t,e,n){nF.call(this,new Int16Array(t),e,n)}function n7(t,e,n){nF.call(this,new Uint16Array(t),e,n)}function nX(t,e,n){nF.call(this,new Int32Array(t),e,n)}function nY(t,e,n){nF.call(this,new Uint32Array(t),e,n)}function nK(t,e,n){nF.call(this,new Float32Array(t),e,n)}function nj(t,e,n){nF.call(this,new Float64Array(t),e,n)}function nZ(){this.vertices=[],this.normals=[],this.colors=[],this.uvs=[],this.uvs2=[],this.groups=[],this.morphTargets={},this.skinWeights=[],this.skinIndices=[],this.boundingBox=null,this.boundingSphere=null,this.verticesNeedUpdate=!1,this.normalsNeedUpdate=!1,this.colorsNeedUpdate=!1,this.uvsNeedUpdate=!1,this.groupsNeedUpdate=!1}function nq(t){if(0===t.length)return-1/0;for(var e=t[0],n=1,i=t.length;n<i;++n)t[n]>e&&(e=t[n]);return e}nH.prototype=Object.assign(Object.create(i.prototype),{constructor:nH,isGeometry:!0,applyMatrix:function(t){for(var e=(new nx).getNormalMatrix(t),n=0,i=this.vertices.length;n<i;n++)this.vertices[n].applyMatrix4(t);for(n=0,i=this.faces.length;n<i;n++){var r=this.faces[n];r.normal.applyMatrix3(e).normalize();for(var o=0,a=r.vertexNormals.length;o<a;o++)r.vertexNormals[o].applyMatrix3(e).normalize()}return null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this.verticesNeedUpdate=!0,this.normalsNeedUpdate=!0,this},rotateX:(ov=new ny,function(t){return ov.makeRotationX(t),this.applyMatrix(ov),this}),rotateY:(o$=new ny,function(t){return o$.makeRotationY(t),this.applyMatrix(o$),this}),rotateZ:(oy=new ny,function(t){return oy.makeRotationZ(t),this.applyMatrix(oy),this}),translate:(o_=new ny,function(t,e,n){return o_.makeTranslation(t,e,n),this.applyMatrix(o_),this}),scale:(o8=new ny,function(t,e,n){return o8.makeScale(t,e,n),this.applyMatrix(o8),this}),lookAt:(ox=new nU,function(t){ox.lookAt(t),ox.updateMatrix(),this.applyMatrix(ox.matrix)}),fromBufferGeometry:function(t){var e=this,n=null!==t.index?t.index.array:void 0,i=t.attributes,r=i.position.array,o=void 0!==i.normal?i.normal.array:void 0,a=void 0!==i.color?i.color.array:void 0,s=void 0!==i.uv?i.uv.array:void 0,u=void 0!==i.uv2?i.uv2.array:void 0;void 0!==u&&(this.faceVertexUvs[1]=[]);for(var l=0,h=0;l<r.length;l+=3,h+=2)e.vertices.push((new n8).fromArray(r,l)),void 0!==a&&e.colors.push((new nI).fromArray(a,l));function c(t,n,i,r){var l=void 0===a?[]:[e.colors[t].clone(),e.colors[n].clone(),e.colors[i].clone()],h=new nG(t,n,i,void 0===o?[]:[(new n8).fromArray(o,3*t),(new n8).fromArray(o,3*n),(new n8).fromArray(o,3*i)],l,r);e.faces.push(h),void 0!==s&&e.faceVertexUvs[0].push([(new n$).fromArray(s,2*t),(new n$).fromArray(s,2*n),(new n$).fromArray(s,2*i)]),void 0!==u&&e.faceVertexUvs[1].push([(new n$).fromArray(u,2*t),(new n$).fromArray(u,2*n),(new n$).fromArray(u,2*i)])}var p=t.groups;if(p.length>0)for(l=0;l<p.length;l++)for(var d=p[l],f=d.start,m=(h=f,f+d.count);h<m;h+=3)void 0!==n?c(n[h],n[h+1],n[h+2],d.materialIndex):c(h,h+1,h+2,d.materialIndex);else if(void 0!==n)for(l=0;l<n.length;l+=3)c(n[l],n[l+1],n[l+2]);else for(l=0;l<r.length/3;l+=3)c(l,l+1,l+2);return this.computeFaceNormals(),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),this},center:(ob=new n8,function(){return this.computeBoundingBox(),this.boundingBox.getCenter(ob).negate(),this.translate(ob.x,ob.y,ob.z),this}),normalize:function(){this.computeBoundingSphere();var t=this.boundingSphere.center,e=this.boundingSphere.radius,n=0===e?1:1/e,i=new ny;return i.set(n,0,0,-n*t.x,0,n,0,-n*t.y,0,0,n,-n*t.z,0,0,0,1),this.applyMatrix(i),this},computeFaceNormals:function(){for(var t=new n8,e=new n8,n=0,i=this.faces.length;n<i;n++){var r=this.faces[n],o=this.vertices[r.a],a=this.vertices[r.b],s=this.vertices[r.c];t.subVectors(s,a),e.subVectors(o,a),t.cross(e),t.normalize(),r.normal.copy(t)}},computeVertexNormals:function(t){var e,n,i,r,o,a;for(void 0===t&&(t=!0),a=Array(this.vertices.length),e=0,n=this.vertices.length;e<n;e++)a[e]=new n8;if(t){var s,u,l,h=new n8,c=new n8;for(i=0,r=this.faces.length;i<r;i++)o=this.faces[i],s=this.vertices[o.a],u=this.vertices[o.b],l=this.vertices[o.c],h.subVectors(l,u),c.subVectors(s,u),h.cross(c),a[o.a].add(h),a[o.b].add(h),a[o.c].add(h)}else for(this.computeFaceNormals(),i=0,r=this.faces.length;i<r;i++)a[(o=this.faces[i]).a].add(o.normal),a[o.b].add(o.normal),a[o.c].add(o.normal);for(e=0,n=this.vertices.length;e<n;e++)a[e].normalize();for(i=0,r=this.faces.length;i<r;i++){var p=(o=this.faces[i]).vertexNormals;3===p.length?(p[0].copy(a[o.a]),p[1].copy(a[o.b]),p[2].copy(a[o.c])):(p[0]=a[o.a].clone(),p[1]=a[o.b].clone(),p[2]=a[o.c].clone())}this.faces.length>0&&(this.normalsNeedUpdate=!0)},computeFlatVertexNormals:function(){var t,e,n;for(this.computeFaceNormals(),t=0,e=this.faces.length;t<e;t++){var i=(n=this.faces[t]).vertexNormals;3===i.length?(i[0].copy(n.normal),i[1].copy(n.normal),i[2].copy(n.normal)):(i[0]=n.normal.clone(),i[1]=n.normal.clone(),i[2]=n.normal.clone())}this.faces.length>0&&(this.normalsNeedUpdate=!0)},computeMorphNormals:function(){for(o=0,a=this.faces.length;o<a;o++)for((s=this.faces[o]).__originalFaceNormal?s.__originalFaceNormal.copy(s.normal):s.__originalFaceNormal=s.normal.clone(),s.__originalVertexNormals||(s.__originalVertexNormals=[]),i=0,r=s.vertexNormals.length;i<r;i++)s.__originalVertexNormals[i]?s.__originalVertexNormals[i].copy(s.vertexNormals[i]):s.__originalVertexNormals[i]=s.vertexNormals[i].clone();var t=new nH;for(t.faces=this.faces,i=0,r=this.morphTargets.length;i<r;i++){if(!this.morphNormals[i]){this.morphNormals[i]={},this.morphNormals[i].faceNormals=[],this.morphNormals[i].vertexNormals=[];var e=this.morphNormals[i].faceNormals,n=this.morphNormals[i].vertexNormals;for(o=0,a=this.faces.length;o<a;o++)u=new n8,l={a:new n8,b:new n8,c:new n8},e.push(u),n.push(l)}var i,r,o,a,s,u,l,h=this.morphNormals[i];for(t.vertices=this.morphTargets[i].vertices,t.computeFaceNormals(),t.computeVertexNormals(),o=0,a=this.faces.length;o<a;o++)s=this.faces[o],u=h.faceNormals[o],l=h.vertexNormals[o],u.copy(s.normal),l.a.copy(s.vertexNormals[0]),l.b.copy(s.vertexNormals[1]),l.c.copy(s.vertexNormals[2])}for(o=0,a=this.faces.length;o<a;o++)(s=this.faces[o]).normal=s.__originalFaceNormal,s.vertexNormals=s.__originalVertexNormals},computeBoundingBox:function(){null===this.boundingBox&&(this.boundingBox=new nP),this.boundingBox.setFromPoints(this.vertices)},computeBoundingSphere:function(){null===this.boundingSphere&&(this.boundingSphere=new nC),this.boundingSphere.setFromPoints(this.vertices)},merge:function(t,e,n){if(t&&t.isGeometry){var i,r=this.vertices.length,o=this.vertices,a=t.vertices,s=this.faces,u=t.faces,l=this.faceVertexUvs[0],h=t.faceVertexUvs[0],c=this.colors,p=t.colors;void 0===n&&(n=0),void 0!==e&&(i=(new nx).getNormalMatrix(e));for(var d=0,f=a.length;d<f;d++){var m=a[d].clone();void 0!==e&&m.applyMatrix4(e),o.push(m)}for(d=0,f=p.length;d<f;d++)c.push(p[d].clone());for(d=0,f=u.length;d<f;d++){var g,v,$,y=u[d],_=y.vertexNormals,x=y.vertexColors;(g=new nG(y.a+r,y.b+r,y.c+r)).normal.copy(y.normal),void 0!==i&&g.normal.applyMatrix3(i).normalize();for(var b=0,w=_.length;b<w;b++)v=_[b].clone(),void 0!==i&&v.applyMatrix3(i).normalize(),g.vertexNormals.push(v);for(g.color.copy(y.color),b=0,w=x.length;b<w;b++)$=x[b],g.vertexColors.push($.clone());g.materialIndex=y.materialIndex+n,s.push(g)}for(d=0,f=h.length;d<f;d++){var A=h[d],T=[];if(void 0!==A){for(b=0,w=A.length;b<w;b++)T.push(A[b].clone());l.push(T)}}}else console.error("THREE.Geometry.merge(): geometry not an instance of THREE.Geometry.",t)},mergeMesh:function(t){t&&t.isMesh?(t.matrixAutoUpdate&&t.updateMatrix(),this.merge(t.geometry,t.matrix)):console.error("THREE.Geometry.mergeMesh(): mesh not an instance of THREE.Mesh.",t)},mergeVertices:function(){var t,e,n,i,r,o,a,s,u={},l=[],h=[];for(n=0,i=this.vertices.length;n<i;n++)void 0===u[e=Math.round(1e4*(t=this.vertices[n]).x)+"_"+Math.round(1e4*t.y)+"_"+Math.round(1e4*t.z)]?(u[e]=n,l.push(this.vertices[n]),h[n]=l.length-1):h[n]=h[u[e]];var c=[];for(n=0,i=this.faces.length;n<i;n++){(r=this.faces[n]).a=h[r.a],r.b=h[r.b],r.c=h[r.c],o=[r.a,r.b,r.c];for(var p=0;p<3;p++)if(o[p]===o[(p+1)%3]){c.push(n);break}}for(n=c.length-1;n>=0;n--){var d=c[n];for(this.faces.splice(d,1),a=0,s=this.faceVertexUvs.length;a<s;a++)this.faceVertexUvs[a].splice(d,1)}var f=this.vertices.length-l.length;return this.vertices=l,f},setFromPoints:function(t){this.vertices=[];for(var e=0,n=t.length;e<n;e++){var i=t[e];this.vertices.push(new n8(i.x,i.y,i.z||0))}return this},sortFacesByMaterialIndex:function(){for(var t=this.faces,e=t.length,n=0;n<e;n++)t[n]._id=n;t.sort(function(t,e){return t.materialIndex-e.materialIndex});var i,r,o=this.faceVertexUvs[0],a=this.faceVertexUvs[1];for(o&&o.length===e&&(i=[]),a&&a.length===e&&(r=[]),n=0;n<e;n++){var s=t[n]._id;i&&i.push(o[s]),r&&r.push(a[s])}i&&(this.faceVertexUvs[0]=i),r&&(this.faceVertexUvs[1]=r)},toJSON:function(){var t={metadata:{version:4.5,type:"Geometry",generator:"Geometry.toJSON"}};if(t.uuid=this.uuid,t.type=this.type,""!==this.name&&(t.name=this.name),void 0!==this.parameters){var e=this.parameters;for(var n in e)void 0!==e[n]&&(t[n]=e[n]);return t}for(var i=[],r=0;r<this.vertices.length;r++){var o=this.vertices[r];i.push(o.x,o.y,o.z)}var a=[],s=[],u={},l=[],h={},c=[],p={};for(r=0;r<this.faces.length;r++){var d=this.faces[r],f=void 0!==this.faceVertexUvs[0][r],m=d.normal.length()>0,g=d.vertexNormals.length>0,v=1!==d.color.r||1!==d.color.g||1!==d.color.b,$=d.vertexColors.length>0,y=0;if(y=w(y=w(y=w(y=w(y=w(y=w(y=w(y=w(y,0,0),1,!0),2,!1),3,f),4,m),5,g),6,v),7,$),a.push(y),a.push(d.a,d.b,d.c),a.push(d.materialIndex),f){var _=this.faceVertexUvs[0][r];a.push(S(_[0]),S(_[1]),S(_[2]))}if(m&&a.push(A(d.normal)),g){var x=d.vertexNormals;a.push(A(x[0]),A(x[1]),A(x[2]))}if(v&&a.push(T(d.color)),$){var b=d.vertexColors;a.push(T(b[0]),T(b[1]),T(b[2]))}}function w(t,e,n){return n?t|1<<e:t&~(1<<e)}function A(t){var e=t.x.toString()+t.y.toString()+t.z.toString();return void 0!==u[e]||(u[e]=s.length/3,s.push(t.x,t.y,t.z)),u[e]}function T(t){var e=t.r.toString()+t.g.toString()+t.b.toString();return void 0!==h[e]||(h[e]=l.length,l.push(t.getHex())),h[e]}function S(t){var e=t.x.toString()+t.y.toString();return void 0!==p[e]||(p[e]=c.length/2,c.push(t.x,t.y)),p[e]}return t.data={},t.data.vertices=i,t.data.normals=s,l.length>0&&(t.data.colors=l),c.length>0&&(t.data.uvs=[c]),t.data.faces=a,t},clone:function(){return(new nH).copy(this)},copy:function(t){this.vertices=[],this.colors=[],this.faces=[],this.faceVertexUvs=[[]],this.morphTargets=[],this.morphNormals=[],this.skinWeights=[],this.skinIndices=[],this.lineDistances=[],this.boundingBox=null,this.boundingSphere=null,this.name=t.name;var e,n,i,r,o,a,s=t.vertices;for(e=0,n=s.length;e<n;e++)this.vertices.push(s[e].clone());var u=t.colors;for(e=0,n=u.length;e<n;e++)this.colors.push(u[e].clone());var l=t.faces;for(e=0,n=l.length;e<n;e++)this.faces.push(l[e].clone());for(e=0,n=t.faceVertexUvs.length;e<n;e++){var h=t.faceVertexUvs[e];for(void 0===this.faceVertexUvs[e]&&(this.faceVertexUvs[e]=[]),i=0,r=h.length;i<r;i++){var c=h[i],p=[];for(o=0,a=c.length;o<a;o++){var d=c[o];p.push(d.clone())}this.faceVertexUvs[e].push(p)}}var f=t.morphTargets;for(e=0,n=f.length;e<n;e++){var m={};if(m.name=f[e].name,void 0!==f[e].vertices)for(m.vertices=[],i=0,r=f[e].vertices.length;i<r;i++)m.vertices.push(f[e].vertices[i].clone());if(void 0!==f[e].normals)for(m.normals=[],i=0,r=f[e].normals.length;i<r;i++)m.normals.push(f[e].normals[i].clone());this.morphTargets.push(m)}var g=t.morphNormals;for(e=0,n=g.length;e<n;e++){var v={};if(void 0!==g[e].vertexNormals)for(v.vertexNormals=[],i=0,r=g[e].vertexNormals.length;i<r;i++){var $=g[e].vertexNormals[i],y={};y.a=$.a.clone(),y.b=$.b.clone(),y.c=$.c.clone(),v.vertexNormals.push(y)}if(void 0!==g[e].faceNormals)for(v.faceNormals=[],i=0,r=g[e].faceNormals.length;i<r;i++)v.faceNormals.push(g[e].faceNormals[i].clone());this.morphNormals.push(v)}var _=t.skinWeights;for(e=0,n=_.length;e<n;e++)this.skinWeights.push(_[e].clone());var x=t.skinIndices;for(e=0,n=x.length;e<n;e++)this.skinIndices.push(x[e].clone());var b=t.lineDistances;for(e=0,n=b.length;e<n;e++)this.lineDistances.push(b[e]);var w=t.boundingBox;null!==w&&(this.boundingBox=w.clone());var A=t.boundingSphere;return null!==A&&(this.boundingSphere=A.clone()),this.elementsNeedUpdate=t.elementsNeedUpdate,this.verticesNeedUpdate=t.verticesNeedUpdate,this.uvsNeedUpdate=t.uvsNeedUpdate,this.normalsNeedUpdate=t.normalsNeedUpdate,this.colorsNeedUpdate=t.colorsNeedUpdate,this.lineDistancesNeedUpdate=t.lineDistancesNeedUpdate,this.groupsNeedUpdate=t.groupsNeedUpdate,this},dispose:function(){this.dispatchEvent({type:"dispose"})}}),Object.defineProperty(nF.prototype,"needsUpdate",{set:function(t){!0===t&&this.version++}}),Object.assign(nF.prototype,{isBufferAttribute:!0,onUploadCallback:function(){},setArray:function(t){if(Array.isArray(t))throw TypeError("THREE.BufferAttribute: array should be a Typed Array.");return this.count=void 0!==t?t.length/this.itemSize:0,this.array=t,this},setDynamic:function(t){return this.dynamic=t,this},copy:function(t){return this.name=t.name,this.array=new t.array.constructor(t.array),this.itemSize=t.itemSize,this.count=t.count,this.normalized=t.normalized,this.dynamic=t.dynamic,this},copyAt:function(t,e,n){t*=this.itemSize,n*=e.itemSize;for(var i=0,r=this.itemSize;i<r;i++)this.array[t+i]=e.array[n+i];return this},copyArray:function(t){return this.array.set(t),this},copyColorsArray:function(t){for(var e=this.array,n=0,i=0,r=t.length;i<r;i++){var o=t[i];void 0===o&&(console.warn("THREE.BufferAttribute.copyColorsArray(): color is undefined",i),o=new nI),e[n++]=o.r,e[n++]=o.g,e[n++]=o.b}return this},copyVector2sArray:function(t){for(var e=this.array,n=0,i=0,r=t.length;i<r;i++){var o=t[i];void 0===o&&(console.warn("THREE.BufferAttribute.copyVector2sArray(): vector is undefined",i),o=new n$),e[n++]=o.x,e[n++]=o.y}return this},copyVector3sArray:function(t){for(var e=this.array,n=0,i=0,r=t.length;i<r;i++){var o=t[i];void 0===o&&(console.warn("THREE.BufferAttribute.copyVector3sArray(): vector is undefined",i),o=new n8),e[n++]=o.x,e[n++]=o.y,e[n++]=o.z}return this},copyVector4sArray:function(t){for(var e=this.array,n=0,i=0,r=t.length;i<r;i++){var o=t[i];void 0===o&&(console.warn("THREE.BufferAttribute.copyVector4sArray(): vector is undefined",i),o=new nT),e[n++]=o.x,e[n++]=o.y,e[n++]=o.z,e[n++]=o.w}return this},set:function(t,e){return void 0===e&&(e=0),this.array.set(t,e),this},getX:function(t){return this.array[t*this.itemSize]},setX:function(t,e){return this.array[t*this.itemSize]=e,this},getY:function(t){return this.array[t*this.itemSize+1]},setY:function(t,e){return this.array[t*this.itemSize+1]=e,this},getZ:function(t){return this.array[t*this.itemSize+2]},setZ:function(t,e){return this.array[t*this.itemSize+2]=e,this},getW:function(t){return this.array[t*this.itemSize+3]},setW:function(t,e){return this.array[t*this.itemSize+3]=e,this},setXY:function(t,e,n){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this},setXYZ:function(t,e,n,i){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this},setXYZW:function(t,e,n,i,r){return t*=this.itemSize,this.array[t+0]=e,this.array[t+1]=n,this.array[t+2]=i,this.array[t+3]=r,this},onUpload:function(t){return this.onUploadCallback=t,this},clone:function(){return new this.constructor(this.array,this.itemSize).copy(this)}}),n5.prototype=Object.create(nF.prototype),n5.prototype.constructor=n5,n4.prototype=Object.create(nF.prototype),n4.prototype.constructor=n4,n6.prototype=Object.create(nF.prototype),n6.prototype.constructor=n6,nW.prototype=Object.create(nF.prototype),nW.prototype.constructor=nW,n7.prototype=Object.create(nF.prototype),n7.prototype.constructor=n7,nX.prototype=Object.create(nF.prototype),nX.prototype.constructor=nX,nY.prototype=Object.create(nF.prototype),nY.prototype.constructor=nY,nK.prototype=Object.create(nF.prototype),nK.prototype.constructor=nK,nj.prototype=Object.create(nF.prototype),nj.prototype.constructor=nj,Object.assign(nZ.prototype,{computeGroups:function(t){for(var e,n=[],i=void 0,r=t.faces,o=0;o<r.length;o++){var a=r[o];a.materialIndex!==i&&(i=a.materialIndex,void 0!==e&&(e.count=3*o-e.start,n.push(e)),e={start:3*o,materialIndex:i})}void 0!==e&&(e.count=3*o-e.start,n.push(e)),this.groups=n},fromGeometry:function(t){var e,n=t.faces,i=t.vertices,r=t.faceVertexUvs,o=r[0]&&r[0].length>0,a=r[1]&&r[1].length>0,s=t.morphTargets,u=s.length;if(u>0){e=[];for(var l=0;l<u;l++)e[l]={name:s[l].name,data:[]};this.morphTargets.position=e}var h,c=t.morphNormals,p=c.length;if(p>0){for(h=[],l=0;l<p;l++)h[l]={name:c[l].name,data:[]};this.morphTargets.normal=h}var d=t.skinIndices,f=t.skinWeights,m=d.length===i.length,g=f.length===i.length;for(i.length>0&&0===n.length&&console.error("THREE.DirectGeometry: Faceless geometries are not supported."),l=0;l<n.length;l++){var v=n[l];this.vertices.push(i[v.a],i[v.b],i[v.c]);var $=v.vertexNormals;if(3===$.length)this.normals.push($[0],$[1],$[2]);else{var y=v.normal;this.normals.push(y,y,y)}var _,x=v.vertexColors;if(3===x.length)this.colors.push(x[0],x[1],x[2]);else{var b=v.color;this.colors.push(b,b,b)}!0===o&&(void 0!==(_=r[0][l])?this.uvs.push(_[0],_[1],_[2]):(console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv ",l),this.uvs.push(new n$,new n$,new n$))),!0===a&&(void 0!==(_=r[1][l])?this.uvs2.push(_[0],_[1],_[2]):(console.warn("THREE.DirectGeometry.fromGeometry(): Undefined vertexUv2 ",l),this.uvs2.push(new n$,new n$,new n$)));for(var w=0;w<u;w++){var A=s[w].vertices;e[w].data.push(A[v.a],A[v.b],A[v.c])}for(w=0;w<p;w++){var T=c[w].vertexNormals[l];h[w].data.push(T.a,T.b,T.c)}m&&this.skinIndices.push(d[v.a],d[v.b],d[v.c]),g&&this.skinWeights.push(f[v.a],f[v.b],f[v.c])}return this.computeGroups(t),this.verticesNeedUpdate=t.verticesNeedUpdate,this.normalsNeedUpdate=t.normalsNeedUpdate,this.colorsNeedUpdate=t.colorsNeedUpdate,this.uvsNeedUpdate=t.uvsNeedUpdate,this.groupsNeedUpdate=t.groupsNeedUpdate,this}});var nQ=1;function nJ(){Object.defineProperty(this,"id",{value:nQ+=2}),this.uuid=nv.generateUUID(),this.name="",this.type="BufferGeometry",this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.drawRange={start:0,count:1/0},this.userData={}}function n9(t,e,n,i,r,o){nH.call(this),this.type="BoxGeometry",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:r,depthSegments:o},this.fromBufferGeometry(new it(t,e,n,i,r,o)),this.mergeVertices()}function it(t,e,n,i,r,o){nJ.call(this),this.type="BoxBufferGeometry",this.parameters={width:t,height:e,depth:n,widthSegments:i,heightSegments:r,depthSegments:o};var a=this;t=t||1,e=e||1,n=n||1,i=Math.floor(i)||1,r=Math.floor(r)||1;var s=[],u=[],l=[],h=[],c=0,p=0;function d(t,e,n,i,r,o,d,f,m,g,v){var $,y,_=o/m,x=d/g,b=o/2,w=d/2,A=f/2,T=m+1,S=g+1,E=0,P=0,C=new n8;for(y=0;y<S;y++){var L=y*x-w;for($=0;$<T;$++){var M=$*_-b;C[t]=M*i,C[e]=L*r,C[n]=A,u.push(C.x,C.y,C.z),C[t]=0,C[e]=0,C[n]=f>0?1:-1,l.push(C.x,C.y,C.z),h.push($/m),h.push(1-y/g),E+=1}}for(y=0;y<g;y++)for($=0;$<m;$++){var R=c+$+T*y,I=c+$+T*(y+1),D=c+($+1)+T*(y+1),N=c+($+1)+T*y;s.push(R,I,N),s.push(I,D,N),P+=6}a.addGroup(p,P,v),p+=P,c+=E}d("z","y","x",-1,-1,n,e,t,o=Math.floor(o)||1,r,0),d("z","y","x",1,-1,n,e,-t,o,r,1),d("x","z","y",1,1,t,n,e,i,o,2),d("x","z","y",1,-1,t,n,-e,i,o,3),d("x","y","z",1,-1,t,e,n,i,r,4),d("x","y","z",-1,-1,t,e,-n,i,r,5),this.setIndex(s),this.addAttribute("position",new nK(u,3)),this.addAttribute("normal",new nK(l,3)),this.addAttribute("uv",new nK(h,2))}function ie(t,e,n,i){nH.call(this),this.type="PlaneGeometry",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i},this.fromBufferGeometry(new ii(t,e,n,i)),this.mergeVertices()}function ii(t,e,n,i){nJ.call(this),this.type="PlaneBufferGeometry",this.parameters={width:t,height:e,widthSegments:n,heightSegments:i};var r,o,a=(t=t||1)/2,s=(e=e||1)/2,u=Math.floor(n)||1,l=Math.floor(i)||1,h=u+1,c=l+1,p=t/u,d=e/l,f=[],m=[],g=[],v=[];for(o=0;o<c;o++){var $=o*d-s;for(r=0;r<h;r++){var y=r*p-a;m.push(y,-$,0),g.push(0,0,1),v.push(r/u),v.push(1-o/l)}}for(o=0;o<l;o++)for(r=0;r<u;r++){var _=r+h*o,x=r+h*(o+1),b=r+1+h*(o+1),w=r+1+h*o;f.push(_,x,w),f.push(x,b,w)}this.setIndex(f),this.addAttribute("position",new nK(m,3)),this.addAttribute("normal",new nK(g,3)),this.addAttribute("uv",new nK(v,2))}nJ.prototype=Object.assign(Object.create(i.prototype),{constructor:nJ,isBufferGeometry:!0,getIndex:function(){return this.index},setIndex:function(t){Array.isArray(t)?this.index=new(nq(t)>65535?nY:n7)(t,1):this.index=t},addAttribute:function(t,e){return e&&e.isBufferAttribute||e&&e.isInterleavedBufferAttribute?"index"===t?(console.warn("THREE.BufferGeometry.addAttribute: Use .setIndex() for index attribute."),this.setIndex(e),this):(this.attributes[t]=e,this):(console.warn("THREE.BufferGeometry: .addAttribute() now expects ( name, attribute )."),this.addAttribute(t,new nF(arguments[1],arguments[2])))},getAttribute:function(t){return this.attributes[t]},removeAttribute:function(t){return delete this.attributes[t],this},addGroup:function(t,e,n){this.groups.push({start:t,count:e,materialIndex:void 0!==n?n:0})},clearGroups:function(){this.groups=[]},setDrawRange:function(t,e){this.drawRange.start=t,this.drawRange.count=e},applyMatrix:function(t){var e=this.attributes.position;void 0!==e&&(t.applyToBufferAttribute(e),e.needsUpdate=!0);var n=this.attributes.normal;return void 0!==n&&((new nx).getNormalMatrix(t).applyToBufferAttribute(n),n.needsUpdate=!0),null!==this.boundingBox&&this.computeBoundingBox(),null!==this.boundingSphere&&this.computeBoundingSphere(),this},rotateX:(ow=new ny,function(t){return ow.makeRotationX(t),this.applyMatrix(ow),this}),rotateY:(oA=new ny,function(t){return oA.makeRotationY(t),this.applyMatrix(oA),this}),rotateZ:(oT=new ny,function(t){return oT.makeRotationZ(t),this.applyMatrix(oT),this}),translate:(oS=new ny,function(t,e,n){return oS.makeTranslation(t,e,n),this.applyMatrix(oS),this}),scale:(oE=new ny,function(t,e,n){return oE.makeScale(t,e,n),this.applyMatrix(oE),this}),lookAt:(o0=new nU,function(t){o0.lookAt(t),o0.updateMatrix(),this.applyMatrix(o0.matrix)}),center:(oP=new n8,function(){return this.computeBoundingBox(),this.boundingBox.getCenter(oP).negate(),this.translate(oP.x,oP.y,oP.z),this}),setFromObject:function(t){var e=t.geometry;if(t.isPoints||t.isLine){var n=new nK(3*e.vertices.length,3),i=new nK(3*e.colors.length,3);if(this.addAttribute("position",n.copyVector3sArray(e.vertices)),this.addAttribute("color",i.copyColorsArray(e.colors)),e.lineDistances&&e.lineDistances.length===e.vertices.length){var r=new nK(e.lineDistances.length,1);this.addAttribute("lineDistance",r.copyArray(e.lineDistances))}null!==e.boundingSphere&&(this.boundingSphere=e.boundingSphere.clone()),null!==e.boundingBox&&(this.boundingBox=e.boundingBox.clone())}else t.isMesh&&e&&e.isGeometry&&this.fromGeometry(e);return this},setFromPoints:function(t){for(var e=[],n=0,i=t.length;n<i;n++){var r=t[n];e.push(r.x,r.y,r.z||0)}return this.addAttribute("position",new nK(e,3)),this},updateFromObject:function(t){var e,n=t.geometry;if(t.isMesh){var i=n.__directGeometry;if(!0===n.elementsNeedUpdate&&(i=void 0,n.elementsNeedUpdate=!1),void 0===i)return this.fromGeometry(n);i.verticesNeedUpdate=n.verticesNeedUpdate,i.normalsNeedUpdate=n.normalsNeedUpdate,i.colorsNeedUpdate=n.colorsNeedUpdate,i.uvsNeedUpdate=n.uvsNeedUpdate,i.groupsNeedUpdate=n.groupsNeedUpdate,n.verticesNeedUpdate=!1,n.normalsNeedUpdate=!1,n.colorsNeedUpdate=!1,n.uvsNeedUpdate=!1,n.groupsNeedUpdate=!1,n=i}return!0===n.verticesNeedUpdate&&(void 0!==(e=this.attributes.position)&&(e.copyVector3sArray(n.vertices),e.needsUpdate=!0),n.verticesNeedUpdate=!1),!0===n.normalsNeedUpdate&&(void 0!==(e=this.attributes.normal)&&(e.copyVector3sArray(n.normals),e.needsUpdate=!0),n.normalsNeedUpdate=!1),!0===n.colorsNeedUpdate&&(void 0!==(e=this.attributes.color)&&(e.copyColorsArray(n.colors),e.needsUpdate=!0),n.colorsNeedUpdate=!1),n.uvsNeedUpdate&&(void 0!==(e=this.attributes.uv)&&(e.copyVector2sArray(n.uvs),e.needsUpdate=!0),n.uvsNeedUpdate=!1),n.lineDistancesNeedUpdate&&(void 0!==(e=this.attributes.lineDistance)&&(e.copyArray(n.lineDistances),e.needsUpdate=!0),n.lineDistancesNeedUpdate=!1),n.groupsNeedUpdate&&(n.computeGroups(t.geometry),this.groups=n.groups,n.groupsNeedUpdate=!1),this},fromGeometry:function(t){return t.__directGeometry=(new nZ).fromGeometry(t),this.fromDirectGeometry(t.__directGeometry)},fromDirectGeometry:function(t){var e=new Float32Array(3*t.vertices.length);if(this.addAttribute("position",new nF(e,3).copyVector3sArray(t.vertices)),t.normals.length>0){var n=new Float32Array(3*t.normals.length);this.addAttribute("normal",new nF(n,3).copyVector3sArray(t.normals))}if(t.colors.length>0){var i=new Float32Array(3*t.colors.length);this.addAttribute("color",new nF(i,3).copyColorsArray(t.colors))}if(t.uvs.length>0){var r=new Float32Array(2*t.uvs.length);this.addAttribute("uv",new nF(r,2).copyVector2sArray(t.uvs))}if(t.uvs2.length>0){var o=new Float32Array(2*t.uvs2.length);this.addAttribute("uv2",new nF(o,2).copyVector2sArray(t.uvs2))}for(var a in this.groups=t.groups,t.morphTargets){for(var s=[],u=t.morphTargets[a],l=0,h=u.length;l<h;l++){var c=u[l],p=new nK(3*c.data.length,3);p.name=c.name,s.push(p.copyVector3sArray(c.data))}this.morphAttributes[a]=s}if(t.skinIndices.length>0){var d=new nK(4*t.skinIndices.length,4);this.addAttribute("skinIndex",d.copyVector4sArray(t.skinIndices))}if(t.skinWeights.length>0){var f=new nK(4*t.skinWeights.length,4);this.addAttribute("skinWeight",f.copyVector4sArray(t.skinWeights))}return null!==t.boundingSphere&&(this.boundingSphere=t.boundingSphere.clone()),null!==t.boundingBox&&(this.boundingBox=t.boundingBox.clone()),this},computeBoundingBox:function(){null===this.boundingBox&&(this.boundingBox=new nP);var t=this.attributes.position;void 0!==t?this.boundingBox.setFromBufferAttribute(t):this.boundingBox.makeEmpty(),(isNaN(this.boundingBox.min.x)||isNaN(this.boundingBox.min.y)||isNaN(this.boundingBox.min.z))&&console.error('THREE.BufferGeometry.computeBoundingBox: Computed min/max have NaN values. The "position" attribute is likely to have NaN values.',this)},computeBoundingSphere:(oC=new nP,oL=new n8,function(){null===this.boundingSphere&&(this.boundingSphere=new nC);var t=this.attributes.position;if(t){var e=this.boundingSphere.center;oC.setFromBufferAttribute(t),oC.getCenter(e);for(var n=0,i=0,r=t.count;i<r;i++)oL.x=t.getX(i),oL.y=t.getY(i),oL.z=t.getZ(i),n=Math.max(n,e.distanceToSquared(oL));this.boundingSphere.radius=Math.sqrt(n),isNaN(this.boundingSphere.radius)&&console.error('THREE.BufferGeometry.computeBoundingSphere(): Computed radius is NaN. The "position" attribute is likely to have NaN values.',this)}}),computeFaceNormals:function(){},computeVertexNormals:function(){var t=this.index,e=this.attributes;if(e.position){var n=e.position.array;if(void 0===e.normal)this.addAttribute("normal",new nF(new Float32Array(n.length),3));else for(var i=e.normal.array,r=0,o=i.length;r<o;r++)i[r]=0;var a,s,u,l=e.normal.array,h=new n8,c=new n8,p=new n8,d=new n8,f=new n8;if(t){var m=t.array;for(r=0,o=t.count;r<o;r+=3)a=3*m[r+0],s=3*m[r+1],u=3*m[r+2],h.fromArray(n,a),c.fromArray(n,s),p.fromArray(n,u),d.subVectors(p,c),f.subVectors(h,c),d.cross(f),l[a]+=d.x,l[a+1]+=d.y,l[a+2]+=d.z,l[s]+=d.x,l[s+1]+=d.y,l[s+2]+=d.z,l[u]+=d.x,l[u+1]+=d.y,l[u+2]+=d.z}else for(r=0,o=n.length;r<o;r+=9)h.fromArray(n,r),c.fromArray(n,r+3),p.fromArray(n,r+6),d.subVectors(p,c),f.subVectors(h,c),d.cross(f),l[r]=d.x,l[r+1]=d.y,l[r+2]=d.z,l[r+3]=d.x,l[r+4]=d.y,l[r+5]=d.z,l[r+6]=d.x,l[r+7]=d.y,l[r+8]=d.z;this.normalizeNormals(),e.normal.needsUpdate=!0}},merge:function(t,e){if(t&&t.isBufferGeometry){void 0===e&&(e=0,console.warn("THREE.BufferGeometry.merge(): Overwriting original geometry, starting at offset=0. Use BufferGeometryUtils.mergeBufferGeometries() for lossless merge."));var n=this.attributes;for(var i in n)if(void 0!==t.attributes[i])for(var r=n[i].array,o=t.attributes[i],a=o.array,s=0,u=o.itemSize*e;s<a.length;s++,u++)r[u]=a[s];return this}console.error("THREE.BufferGeometry.merge(): geometry not an instance of THREE.BufferGeometry.",t)},normalizeNormals:(oM=new n8,function(){for(var t=this.attributes.normal,e=0,n=t.count;e<n;e++)oM.x=t.getX(e),oM.y=t.getY(e),oM.z=t.getZ(e),oM.normalize(),t.setXYZ(e,oM.x,oM.y,oM.z)}),toNonIndexed:function(){if(null===this.index)return console.warn("THREE.BufferGeometry.toNonIndexed(): Geometry is already non-indexed."),this;var t=new nJ,e=this.index.array,n=this.attributes;for(var i in n){for(var r=n[i],o=r.array,a=r.itemSize,s=new o.constructor(e.length*a),u=0,l=0,h=0,c=e.length;h<c;h++){u=e[h]*a;for(var p=0;p<a;p++)s[l++]=o[u++]}t.addAttribute(i,new nF(s,a))}var d=this.groups;for(h=0,c=d.length;h<c;h++){var f=d[h];t.addGroup(f.start,f.count,f.materialIndex)}return t},toJSON:function(){var t={metadata:{version:4.5,type:"BufferGeometry",generator:"BufferGeometry.toJSON"}};if(t.uuid=this.uuid,t.type=this.type,""!==this.name&&(t.name=this.name),Object.keys(this.userData).length>0&&(t.userData=this.userData),void 0!==this.parameters){var e=this.parameters;for(var n in e)void 0!==e[n]&&(t[n]=e[n]);return t}t.data={attributes:{}};var i=this.index;if(null!==i){var r=Array.prototype.slice.call(i.array);t.data.index={type:i.array.constructor.name,array:r}}var o=this.attributes;for(var n in o){var a=o[n];r=Array.prototype.slice.call(a.array),t.data.attributes[n]={itemSize:a.itemSize,type:a.array.constructor.name,array:r,normalized:a.normalized}}var s=this.groups;s.length>0&&(t.data.groups=JSON.parse(JSON.stringify(s)));var u=this.boundingSphere;return null!==u&&(t.data.boundingSphere={center:u.center.toArray(),radius:u.radius}),t},clone:function(){return(new nJ).copy(this)},copy:function(t){this.index=null,this.attributes={},this.morphAttributes={},this.groups=[],this.boundingBox=null,this.boundingSphere=null,this.name=t.name;var e,n,i,r=t.index;null!==r&&this.setIndex(r.clone());var o=t.attributes;for(e in o){var a=o[e];this.addAttribute(e,a.clone())}var s=t.morphAttributes;for(e in s){var u=[],l=s[e];for(n=0,i=l.length;n<i;n++)u.push(l[n].clone());this.morphAttributes[e]=u}var h=t.groups;for(n=0,i=h.length;n<i;n++){var c=h[n];this.addGroup(c.start,c.count,c.materialIndex)}var p=t.boundingBox;null!==p&&(this.boundingBox=p.clone());var d=t.boundingSphere;return null!==d&&(this.boundingSphere=d.clone()),this.drawRange.start=t.drawRange.start,this.drawRange.count=t.drawRange.count,this.userData=t.userData,this},dispose:function(){this.dispatchEvent({type:"dispose"})}}),n9.prototype=Object.create(nH.prototype),n9.prototype.constructor=n9,it.prototype=Object.create(nJ.prototype),it.prototype.constructor=it,ie.prototype=Object.create(nH.prototype),ie.prototype.constructor=ie,ii.prototype=Object.create(nJ.prototype),ii.prototype.constructor=ii;var ir=0;function io(){Object.defineProperty(this,"id",{value:ir++}),this.uuid=nv.generateUUID(),this.name="",this.type="Material",this.fog=!0,this.lights=!0,this.blending=tb,this.side=tf,this.flatShading=!1,this.vertexColors=ty,this.opacity=1,this.transparent=!1,this.blendSrc=tI,this.blendDst=tD,this.blendEquation=tE,this.blendSrcAlpha=null,this.blendDstAlpha=null,this.blendEquationAlpha=null,this.depthFunc=t2,this.depthTest=!0,this.depthWrite=!0,this.clippingPlanes=null,this.clipIntersection=!1,this.clipShadows=!1,this.shadowSide=null,this.colorWrite=!0,this.precision=null,this.polygonOffset=!1,this.polygonOffsetFactor=0,this.polygonOffsetUnits=0,this.dithering=!1,this.alphaTest=0,this.premultipliedAlpha=!1,this.visible=!0,this.userData={},this.needsUpdate=!0}function ia(t){io.call(this),this.type="ShaderMaterial",this.defines={},this.uniforms={},this.vertexShader="void main() {\n	gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n}",this.fragmentShader="void main() {\n	gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );\n}",this.linewidth=1,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.clipping=!1,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.extensions={derivatives:!1,fragDepth:!1,drawBuffers:!1,shaderTextureLOD:!1},this.defaultAttributeValues={color:[1,1,1],uv:[0,0],uv2:[0,0]},this.index0AttributeName=void 0,this.uniformsNeedUpdate=!1,void 0!==t&&(void 0!==t.attributes&&console.error("THREE.ShaderMaterial: attributes should now be defined in THREE.BufferGeometry instead."),this.setValues(t))}function is(t,e){this.origin=void 0!==t?t:new n8,this.direction=void 0!==e?e:new n8}function iu(t,e,n){this.a=void 0!==t?t:new n8,this.b=void 0!==e?e:new n8,this.c=void 0!==n?n:new n8}function il(t){io.call(this),this.type="MeshBasicMaterial",this.color=new nI(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=t6,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.lights=!1,this.setValues(t)}function ih(t,e){nU.call(this),this.type="Mesh",this.geometry=void 0!==t?t:new nJ,this.material=void 0!==e?e:new il({color:16777215*Math.random()}),this.drawMode=nn,this.updateMorphTargets()}function ic(t,e){return Math.abs(e[1])-Math.abs(t[1])}function ip(t,e,n,i,r,o,a,s,u,l){t=void 0!==t?t:[],e=void 0!==e?e:tQ,nA.call(this,t,e,n,i,r,o,a,s,u,l),this.flipY=!1}function id(t,e,n,i){nA.call(this,null),this.image={data:t,width:e,height:n,depth:i},this.magFilter=es,this.minFilter=es,this.generateMipmaps=!1,this.flipY=!1}io.prototype=Object.assign(Object.create(i.prototype),{constructor:io,isMaterial:!0,onBeforeCompile:function(){},setValues:function(t){if(void 0!==t)for(var e in t){var n=t[e];if(void 0!==n){if("shading"!==e){var i=this[e];void 0!==i?i&&i.isColor?i.set(n):i&&i.isVector3&&n&&n.isVector3?i.copy(n):this[e]=n:console.warn("THREE."+this.type+": '"+e+"' is not a property of this material.")}else console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=n===tv}else console.warn("THREE.Material: '"+e+"' parameter is undefined.")}},toJSON:function(t){var e=void 0===t||"string"==typeof t;e&&(t={textures:{},images:{}});var n={metadata:{version:4.5,type:"Material",generator:"Material.toJSON"}};function i(t){var e=[];for(var n in t){var i=t[n];delete i.metadata,e.push(i)}return e}if(n.uuid=this.uuid,n.type=this.type,""!==this.name&&(n.name=this.name),this.color&&this.color.isColor&&(n.color=this.color.getHex()),void 0!==this.roughness&&(n.roughness=this.roughness),void 0!==this.metalness&&(n.metalness=this.metalness),this.emissive&&this.emissive.isColor&&(n.emissive=this.emissive.getHex()),1!==this.emissiveIntensity&&(n.emissiveIntensity=this.emissiveIntensity),this.specular&&this.specular.isColor&&(n.specular=this.specular.getHex()),void 0!==this.shininess&&(n.shininess=this.shininess),void 0!==this.clearCoat&&(n.clearCoat=this.clearCoat),void 0!==this.clearCoatRoughness&&(n.clearCoatRoughness=this.clearCoatRoughness),this.map&&this.map.isTexture&&(n.map=this.map.toJSON(t).uuid),this.alphaMap&&this.alphaMap.isTexture&&(n.alphaMap=this.alphaMap.toJSON(t).uuid),this.lightMap&&this.lightMap.isTexture&&(n.lightMap=this.lightMap.toJSON(t).uuid),this.aoMap&&this.aoMap.isTexture&&(n.aoMap=this.aoMap.toJSON(t).uuid,n.aoMapIntensity=this.aoMapIntensity),this.bumpMap&&this.bumpMap.isTexture&&(n.bumpMap=this.bumpMap.toJSON(t).uuid,n.bumpScale=this.bumpScale),this.normalMap&&this.normalMap.isTexture&&(n.normalMap=this.normalMap.toJSON(t).uuid,n.normalMapType=this.normalMapType,n.normalScale=this.normalScale.toArray()),this.displacementMap&&this.displacementMap.isTexture&&(n.displacementMap=this.displacementMap.toJSON(t).uuid,n.displacementScale=this.displacementScale,n.displacementBias=this.displacementBias),this.roughnessMap&&this.roughnessMap.isTexture&&(n.roughnessMap=this.roughnessMap.toJSON(t).uuid),this.metalnessMap&&this.metalnessMap.isTexture&&(n.metalnessMap=this.metalnessMap.toJSON(t).uuid),this.emissiveMap&&this.emissiveMap.isTexture&&(n.emissiveMap=this.emissiveMap.toJSON(t).uuid),this.specularMap&&this.specularMap.isTexture&&(n.specularMap=this.specularMap.toJSON(t).uuid),this.envMap&&this.envMap.isTexture&&(n.envMap=this.envMap.toJSON(t).uuid,n.reflectivity=this.reflectivity,void 0!==this.combine&&(n.combine=this.combine),void 0!==this.envMapIntensity&&(n.envMapIntensity=this.envMapIntensity)),this.gradientMap&&this.gradientMap.isTexture&&(n.gradientMap=this.gradientMap.toJSON(t).uuid),void 0!==this.size&&(n.size=this.size),void 0!==this.sizeAttenuation&&(n.sizeAttenuation=this.sizeAttenuation),this.blending!==tb&&(n.blending=this.blending),!0===this.flatShading&&(n.flatShading=this.flatShading),this.side!==tf&&(n.side=this.side),this.vertexColors!==ty&&(n.vertexColors=this.vertexColors),this.opacity<1&&(n.opacity=this.opacity),!0===this.transparent&&(n.transparent=this.transparent),n.depthFunc=this.depthFunc,n.depthTest=this.depthTest,n.depthWrite=this.depthWrite,0!==this.rotation&&(n.rotation=this.rotation),!0===this.polygonOffset&&(n.polygonOffset=!0),0!==this.polygonOffsetFactor&&(n.polygonOffsetFactor=this.polygonOffsetFactor),0!==this.polygonOffsetUnits&&(n.polygonOffsetUnits=this.polygonOffsetUnits),1!==this.linewidth&&(n.linewidth=this.linewidth),void 0!==this.dashSize&&(n.dashSize=this.dashSize),void 0!==this.gapSize&&(n.gapSize=this.gapSize),void 0!==this.scale&&(n.scale=this.scale),!0===this.dithering&&(n.dithering=!0),this.alphaTest>0&&(n.alphaTest=this.alphaTest),!0===this.premultipliedAlpha&&(n.premultipliedAlpha=this.premultipliedAlpha),!0===this.wireframe&&(n.wireframe=this.wireframe),this.wireframeLinewidth>1&&(n.wireframeLinewidth=this.wireframeLinewidth),"round"!==this.wireframeLinecap&&(n.wireframeLinecap=this.wireframeLinecap),"round"!==this.wireframeLinejoin&&(n.wireframeLinejoin=this.wireframeLinejoin),!0===this.morphTargets&&(n.morphTargets=!0),!0===this.skinning&&(n.skinning=!0),!1===this.visible&&(n.visible=!1),"{}"!==JSON.stringify(this.userData)&&(n.userData=this.userData),e){var r=i(t.textures),o=i(t.images);r.length>0&&(n.textures=r),o.length>0&&(n.images=o)}return n},clone:function(){return(new this.constructor).copy(this)},copy:function(t){this.name=t.name,this.fog=t.fog,this.lights=t.lights,this.blending=t.blending,this.side=t.side,this.flatShading=t.flatShading,this.vertexColors=t.vertexColors,this.opacity=t.opacity,this.transparent=t.transparent,this.blendSrc=t.blendSrc,this.blendDst=t.blendDst,this.blendEquation=t.blendEquation,this.blendSrcAlpha=t.blendSrcAlpha,this.blendDstAlpha=t.blendDstAlpha,this.blendEquationAlpha=t.blendEquationAlpha,this.depthFunc=t.depthFunc,this.depthTest=t.depthTest,this.depthWrite=t.depthWrite,this.colorWrite=t.colorWrite,this.precision=t.precision,this.polygonOffset=t.polygonOffset,this.polygonOffsetFactor=t.polygonOffsetFactor,this.polygonOffsetUnits=t.polygonOffsetUnits,this.dithering=t.dithering,this.alphaTest=t.alphaTest,this.premultipliedAlpha=t.premultipliedAlpha,this.visible=t.visible,this.userData=JSON.parse(JSON.stringify(t.userData)),this.clipShadows=t.clipShadows,this.clipIntersection=t.clipIntersection;var e=t.clippingPlanes,n=null;if(null!==e){var i=e.length;n=Array(i);for(var r=0;r!==i;++r)n[r]=e[r].clone()}return this.clippingPlanes=n,this.shadowSide=t.shadowSide,this},dispose:function(){this.dispatchEvent({type:"dispose"})}}),ia.prototype=Object.create(io.prototype),ia.prototype.constructor=ia,ia.prototype.isShaderMaterial=!0,ia.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.fragmentShader=t.fragmentShader,this.vertexShader=t.vertexShader,this.uniforms=nR.clone(t.uniforms),this.defines=Object.assign({},t.defines),this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.lights=t.lights,this.clipping=t.clipping,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this.extensions=t.extensions,this},ia.prototype.toJSON=function(t){var e=io.prototype.toJSON.call(this,t);for(var n in e.uniforms={},this.uniforms){var i=this.uniforms[n].value;i.isTexture?e.uniforms[n]={type:"t",value:i.toJSON(t).uuid}:i.isColor?e.uniforms[n]={type:"c",value:i.getHex()}:i.isVector2?e.uniforms[n]={type:"v2",value:i.toArray()}:i.isVector3?e.uniforms[n]={type:"v3",value:i.toArray()}:i.isVector4?e.uniforms[n]={type:"v4",value:i.toArray()}:i.isMatrix4?e.uniforms[n]={type:"m4",value:i.toArray()}:e.uniforms[n]={value:i}}return Object.keys(this.defines).length>0&&(e.defines=this.defines),e.vertexShader=this.vertexShader,e.fragmentShader=this.fragmentShader,e},Object.assign(is.prototype,{set:function(t,e){return this.origin.copy(t),this.direction.copy(e),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.origin.copy(t.origin),this.direction.copy(t.direction),this},at:function(t,e){return void 0===e&&(console.warn("THREE.Ray: .at() target is now required"),e=new n8),e.copy(this.direction).multiplyScalar(t).add(this.origin)},lookAt:function(t){return this.direction.copy(t).sub(this.origin).normalize(),this},recast:(o1=new n8,function(t){return this.origin.copy(this.at(t,o1)),this}),closestPointToPoint:function(t,e){void 0===e&&(console.warn("THREE.Ray: .closestPointToPoint() target is now required"),e=new n8),e.subVectors(t,this.origin);var n=e.dot(this.direction);return n<0?e.copy(this.origin):e.copy(this.direction).multiplyScalar(n).add(this.origin)},distanceToPoint:function(t){return Math.sqrt(this.distanceSqToPoint(t))},distanceSqToPoint:(oR=new n8,function(t){var e=oR.subVectors(t,this.origin).dot(this.direction);return e<0?this.origin.distanceToSquared(t):(oR.copy(this.direction).multiplyScalar(e).add(this.origin),oR.distanceToSquared(t))}),distanceSqToSegment:(o3=new n8,oI=new n8,oD=new n8,function(t,e,n,i){o3.copy(t).add(e).multiplyScalar(.5),oI.copy(e).sub(t).normalize(),oD.copy(this.origin).sub(o3);var r,o,a,s,u=.5*t.distanceTo(e),l=-this.direction.dot(oI),h=oD.dot(this.direction),c=-oD.dot(oI),p=oD.lengthSq(),d=Math.abs(1-l*l);if(d>0){if(o=l*h-c,s=u*d,(r=l*c-h)>=0){if(o>=-s){if(o<=s){var f=1/d;a=(r*=f)*(r+l*(o*=f)+2*h)+o*(l*r+o+2*c)+p}else a=-(r=Math.max(0,-(l*(o=u)+h)))*r+o*(o+2*c)+p}else a=-(r=Math.max(0,-(l*(o=-u)+h)))*r+o*(o+2*c)+p}else o<=-s?a=-(r=Math.max(0,-(-l*u+h)))*r+(o=r>0?-u:Math.min(Math.max(-u,-c),u))*(o+2*c)+p:o<=s?(r=0,a=(o=Math.min(Math.max(-u,-c),u))*(o+2*c)+p):a=-(r=Math.max(0,-(l*u+h)))*r+(o=r>0?u:Math.min(Math.max(-u,-c),u))*(o+2*c)+p}else o=l>0?-u:u,a=-(r=Math.max(0,-(l*o+h)))*r+o*(o+2*c)+p;return n&&n.copy(this.direction).multiplyScalar(r).add(this.origin),i&&i.copy(oI).multiplyScalar(o).add(o3),a}),intersectSphere:(oN=new n8,function(t,e){oN.subVectors(t.center,this.origin);var n=oN.dot(this.direction),i=oN.dot(oN)-n*n,r=t.radius*t.radius;if(i>r)return null;var o=Math.sqrt(r-i),a=n-o,s=n+o;return a<0&&s<0?null:a<0?this.at(s,e):this.at(a,e)}),intersectsSphere:function(t){return this.distanceSqToPoint(t.center)<=t.radius*t.radius},distanceToPlane:function(t){var e=t.normal.dot(this.direction);if(0===e)return 0===t.distanceToPoint(this.origin)?0:null;var n=-(this.origin.dot(t.normal)+t.constant)/e;return n>=0?n:null},intersectPlane:function(t,e){var n=this.distanceToPlane(t);return null===n?null:this.at(n,e)},intersectsPlane:function(t){var e=t.distanceToPoint(this.origin);return 0===e||t.normal.dot(this.direction)*e<0},intersectBox:function(t,e){var n,i,r,o,a,s,u=1/this.direction.x,l=1/this.direction.y,h=1/this.direction.z,c=this.origin;return u>=0?(n=(t.min.x-c.x)*u,i=(t.max.x-c.x)*u):(n=(t.max.x-c.x)*u,i=(t.min.x-c.x)*u),l>=0?(r=(t.min.y-c.y)*l,o=(t.max.y-c.y)*l):(r=(t.max.y-c.y)*l,o=(t.min.y-c.y)*l),n>o||r>i?null:((r>n||n!=n)&&(n=r),(o<i||i!=i)&&(i=o),h>=0?(a=(t.min.z-c.z)*h,s=(t.max.z-c.z)*h):(a=(t.max.z-c.z)*h,s=(t.min.z-c.z)*h),n>s||a>i?null:((a>n||n!=n)&&(n=a),(s<i||i!=i)&&(i=s),i<0?null:this.at(n>=0?n:i,e)))},intersectsBox:(oB=new n8,function(t){return null!==this.intersectBox(t,oB)}),intersectTriangle:(oO=new n8,oG=new n8,ok=new n8,oV=new n8,function(t,e,n,i,r){oG.subVectors(e,t),ok.subVectors(n,t),oV.crossVectors(oG,ok);var o,a=this.direction.dot(oV);if(a>0){if(i)return null;o=1}else{if(!(a<0))return null;o=-1,a=-a}oO.subVectors(this.origin,t);var s=o*this.direction.dot(ok.crossVectors(oO,ok));if(s<0)return null;var u=o*this.direction.dot(oG.cross(oO));if(u<0||s+u>a)return null;var l=-o*oO.dot(oV);return l<0?null:this.at(l/a,r)}),applyMatrix4:function(t){return this.origin.applyMatrix4(t),this.direction.transformDirection(t),this},equals:function(t){return t.origin.equals(this.origin)&&t.direction.equals(this.direction)}}),Object.assign(iu,{getNormal:(oz=new n8,function(t,e,n,i){void 0===i&&(console.warn("THREE.Triangle: .getNormal() target is now required"),i=new n8),i.subVectors(n,e),oz.subVectors(t,e),i.cross(oz);var r=i.lengthSq();return r>0?i.multiplyScalar(1/Math.sqrt(r)):i.set(0,0,0)}),getBarycoord:(oU=new n8,o2=new n8,oH=new n8,function(t,e,n,i,r){oU.subVectors(i,e),o2.subVectors(n,e),oH.subVectors(t,e);var o=oU.dot(oU),a=oU.dot(o2),s=oU.dot(oH),u=o2.dot(o2),l=o2.dot(oH),h=o*u-a*a;if(void 0===r&&(console.warn("THREE.Triangle: .getBarycoord() target is now required"),r=new n8),0===h)return r.set(-2,-1,-1);var c=1/h,p=(u*s-a*l)*c,d=(o*l-a*s)*c;return r.set(1-p-d,d,p)}),containsPoint:(oF=new n8,function(t,e,n,i){return iu.getBarycoord(t,e,n,i,oF),oF.x>=0&&oF.y>=0&&oF.x+oF.y<=1}),getUV:(o5=new n8,function(t,e,n,i,r,o,a,s){return this.getBarycoord(t,e,n,i,o5),s.set(0,0),s.addScaledVector(r,o5.x),s.addScaledVector(o,o5.y),s.addScaledVector(a,o5.z),s})}),Object.assign(iu.prototype,{set:function(t,e,n){return this.a.copy(t),this.b.copy(e),this.c.copy(n),this},setFromPointsAndIndices:function(t,e,n,i){return this.a.copy(t[e]),this.b.copy(t[n]),this.c.copy(t[i]),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.a.copy(t.a),this.b.copy(t.b),this.c.copy(t.c),this},getArea:(o4=new n8,o6=new n8,function(){return o4.subVectors(this.c,this.b),o6.subVectors(this.a,this.b),.5*o4.cross(o6).length()}),getMidpoint:function(t){return void 0===t&&(console.warn("THREE.Triangle: .getMidpoint() target is now required"),t=new n8),t.addVectors(this.a,this.b).add(this.c).multiplyScalar(1/3)},getNormal:function(t){return iu.getNormal(this.a,this.b,this.c,t)},getPlane:function(t){return void 0===t&&(console.warn("THREE.Triangle: .getPlane() target is now required"),t=new n8),t.setFromCoplanarPoints(this.a,this.b,this.c)},getBarycoord:function(t,e){return iu.getBarycoord(t,this.a,this.b,this.c,e)},containsPoint:function(t){return iu.containsPoint(t,this.a,this.b,this.c)},getUV:function(t,e,n,i,r){return iu.getUV(t,this.a,this.b,this.c,e,n,i,r)},intersectsBox:function(t){return t.intersectsTriangle(this)},closestPointToPoint:(oW=new n8,o7=new n8,oX=new n8,oY=new n8,oK=new n8,oj=new n8,function(t,e){void 0===e&&(console.warn("THREE.Triangle: .closestPointToPoint() target is now required"),e=new n8);var n,i,r=this.a,o=this.b,a=this.c;oW.subVectors(o,r),o7.subVectors(a,r),oY.subVectors(t,r);var s=oW.dot(oY),u=o7.dot(oY);if(s<=0&&u<=0)return e.copy(r);oK.subVectors(t,o);var l=oW.dot(oK),h=o7.dot(oK);if(l>=0&&h<=l)return e.copy(o);var c=s*h-l*u;if(c<=0&&s>=0&&l<=0)return n=s/(s-l),e.copy(r).addScaledVector(oW,n);oj.subVectors(t,a);var p=oW.dot(oj),d=o7.dot(oj);if(d>=0&&p<=d)return e.copy(a);var f=p*u-s*d;if(f<=0&&u>=0&&d<=0)return i=u/(u-d),e.copy(r).addScaledVector(o7,i);var m=l*d-p*h;if(m<=0&&h-l>=0&&p-d>=0)return oX.subVectors(a,o),i=(h-l)/(h-l+(p-d)),e.copy(o).addScaledVector(oX,i);var g=1/(m+f+c);return n=f*g,i=c*g,e.copy(r).addScaledVector(oW,n).addScaledVector(o7,i)}),equals:function(t){return t.a.equals(this.a)&&t.b.equals(this.b)&&t.c.equals(this.c)}}),il.prototype=Object.create(io.prototype),il.prototype.constructor=il,il.prototype.isMeshBasicMaterial=!0,il.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this},ih.prototype=Object.assign(Object.create(nU.prototype),{constructor:ih,isMesh:!0,setDrawMode:function(t){this.drawMode=t},copy:function(t){return nU.prototype.copy.call(this,t),this.drawMode=t.drawMode,void 0!==t.morphTargetInfluences&&(this.morphTargetInfluences=t.morphTargetInfluences.slice()),void 0!==t.morphTargetDictionary&&(this.morphTargetDictionary=Object.assign({},t.morphTargetDictionary)),this},updateMorphTargets:function(){var t,e,n,i=this.geometry;if(i.isBufferGeometry){var r=i.morphAttributes,o=Object.keys(r);if(o.length>0){var a=r[o[0]];if(void 0!==a)for(this.morphTargetInfluences=[],this.morphTargetDictionary={},t=0,e=a.length;t<e;t++)n=a[t].name||String(t),this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=t}}else{var s=i.morphTargets;if(void 0!==s&&s.length>0)for(this.morphTargetInfluences=[],this.morphTargetDictionary={},t=0,e=s.length;t<e;t++)n=s[t].name||String(t),this.morphTargetInfluences.push(0),this.morphTargetDictionary[n]=t}},raycast:function(){var t=new ny,e=new is,n=new nC,i=new n8,r=new n8,o=new n8,a=new n8,s=new n8,u=new n8,l=new n$,h=new n$,c=new n$,p=new n8,d=new n8;function f(t,e,n,i,r,o,a,s){if(null===(e.side===tm?i.intersectTriangle(a,o,r,!0,s):i.intersectTriangle(r,o,a,e.side!==tg,s)))return null;d.copy(s),d.applyMatrix4(t.matrixWorld);var u=n.ray.origin.distanceTo(d);return u<n.near||u>n.far?null:{distance:u,point:d.clone(),object:t}}function m(t,e,n,a,s,u,d,m,g){i.fromBufferAttribute(s,d),r.fromBufferAttribute(s,m),o.fromBufferAttribute(s,g);var v=f(t,e,n,a,i,r,o,p);if(v){u&&(l.fromBufferAttribute(u,d),h.fromBufferAttribute(u,m),c.fromBufferAttribute(u,g),v.uv=iu.getUV(p,i,r,o,l,h,c,new n$));var $=new nG(d,m,g);iu.getNormal(i,r,o,$.normal),v.face=$}return v}return function(d,g){var v,$=this.geometry,y=this.material,_=this.matrixWorld;if(void 0!==y&&(null===$.boundingSphere&&$.computeBoundingSphere(),n.copy($.boundingSphere),n.applyMatrix4(_),!1!==d.ray.intersectsSphere(n)&&(t.getInverse(_),e.copy(d.ray).applyMatrix4(t),null===$.boundingBox||!1!==e.intersectsBox($.boundingBox)))){if($.isBufferGeometry){var x,b,w,A,T,S,E,P,C,L=$.index,M=$.attributes.position,R=$.attributes.uv,I=$.groups,D=$.drawRange;if(null!==L){if(Array.isArray(y))for(A=0,S=I.length;A<S;A++)for(C=y[(P=I[A]).materialIndex],T=Math.max(P.start,D.start),E=Math.min(P.start+P.count,D.start+D.count);T<E;T+=3)x=L.getX(T),(v=m(this,C,d,e,M,R,x,b=L.getX(T+1),w=L.getX(T+2)))&&(v.faceIndex=Math.floor(T/3),g.push(v));else for(A=Math.max(0,D.start),S=Math.min(L.count,D.start+D.count);A<S;A+=3)x=L.getX(A),(v=m(this,y,d,e,M,R,x,b=L.getX(A+1),w=L.getX(A+2)))&&(v.faceIndex=Math.floor(A/3),g.push(v))}else if(void 0!==M){if(Array.isArray(y))for(A=0,S=I.length;A<S;A++)for(C=y[(P=I[A]).materialIndex],T=Math.max(P.start,D.start),E=Math.min(P.start+P.count,D.start+D.count);T<E;T+=3)(v=m(this,C,d,e,M,R,x=T,b=T+1,w=T+2))&&(v.faceIndex=Math.floor(T/3),g.push(v));else for(A=Math.max(0,D.start),S=Math.min(M.count,D.start+D.count);A<S;A+=3)(v=m(this,y,d,e,M,R,x=A,b=A+1,w=A+2))&&(v.faceIndex=Math.floor(A/3),g.push(v))}}else if($.isGeometry){var N,B,O,G,k=Array.isArray(y),V=$.vertices,z=$.faces,U=$.faceVertexUvs[0];U.length>0&&(G=U);for(var H=0,F=z.length;H<F;H++){var W=z[H],X=k?y[W.materialIndex]:y;if(void 0!==X){if(N=V[W.a],B=V[W.b],O=V[W.c],!0===X.morphTargets){var Y=$.morphTargets,K=this.morphTargetInfluences;i.set(0,0,0),r.set(0,0,0),o.set(0,0,0);for(var j=0,Z=Y.length;j<Z;j++){var q=K[j];if(0!==q){var Q=Y[j].vertices;i.addScaledVector(a.subVectors(Q[W.a],N),q),r.addScaledVector(s.subVectors(Q[W.b],B),q),o.addScaledVector(u.subVectors(Q[W.c],O),q)}}i.add(N),r.add(B),o.add(O),N=i,B=r,O=o}if(v=f(this,X,d,e,N,B,O,p)){if(G&&G[H]){var J=G[H];l.copy(J[0]),h.copy(J[1]),c.copy(J[2]),v.uv=iu.getUV(p,N,B,O,l,h,c,new n$)}v.face=W,v.faceIndex=H,g.push(v)}}}}}}}(),clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}}),ip.prototype=Object.create(nA.prototype),ip.prototype.constructor=ip,ip.prototype.isCubeTexture=!0,Object.defineProperty(ip.prototype,"images",{get:function(){return this.image},set:function(t){this.image=t}}),id.prototype=Object.create(nA.prototype),id.prototype.constructor=id,id.prototype.isDataTexture3D=!0;var im=new nA,ig=new id,iv=new ip;function i$(){this.seq=[],this.map={}}var iy=[],i_=[],i8=new Float32Array(16),ix=new Float32Array(9),ib=new Float32Array(4);function iw(t,e,n){var i=t[0];if(i<=0||i>0)return t;var r=e*n,o=iy[r];if(void 0===o&&(o=new Float32Array(r),iy[r]=o),0!==e){i.toArray(o,0);for(var a=1,s=0;a!==e;++a)s+=n,t[a].toArray(o,s)}return o}function iA(t,e){if(t.length!==e.length)return!1;for(var n=0,i=t.length;n<i;n++)if(t[n]!==e[n])return!1;return!0}function iT(t,e){for(var n=0,i=e.length;n<i;n++)t[n]=e[n]}function iS(t,e){var n=i_[e];void 0===n&&(n=new Int32Array(e),i_[e]=n);for(var i=0;i!==e;++i)n[i]=t.allocTextureUnit();return n}function iE(t,e){var n=this.cache;n[0]!==e&&(t.uniform1f(this.addr,e),n[0]=e)}function i0(t,e){var n=this.cache;n[0]!==e&&(t.uniform1i(this.addr,e),n[0]=e)}function iP(t,e){var n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y||(t.uniform2f(this.addr,e.x,e.y),n[0]=e.x,n[1]=e.y);else{if(iA(n,e))return;t.uniform2fv(this.addr,e),iT(n,e)}}function iC(t,e){var n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z||(t.uniform3f(this.addr,e.x,e.y,e.z),n[0]=e.x,n[1]=e.y,n[2]=e.z);else if(void 0!==e.r)n[0]===e.r&&n[1]===e.g&&n[2]===e.b||(t.uniform3f(this.addr,e.r,e.g,e.b),n[0]=e.r,n[1]=e.g,n[2]=e.b);else{if(iA(n,e))return;t.uniform3fv(this.addr,e),iT(n,e)}}function iL(t,e){var n=this.cache;if(void 0!==e.x)n[0]===e.x&&n[1]===e.y&&n[2]===e.z&&n[3]===e.w||(t.uniform4f(this.addr,e.x,e.y,e.z,e.w),n[0]=e.x,n[1]=e.y,n[2]=e.z,n[3]=e.w);else{if(iA(n,e))return;t.uniform4fv(this.addr,e),iT(n,e)}}function iM(t,e){var n=this.cache,i=e.elements;if(void 0===i){if(iA(n,e))return;t.uniformMatrix2fv(this.addr,!1,e),iT(n,e)}else{if(iA(n,i))return;ib.set(i),t.uniformMatrix2fv(this.addr,!1,ib),iT(n,i)}}function i1(t,e){var n=this.cache,i=e.elements;if(void 0===i){if(iA(n,e))return;t.uniformMatrix3fv(this.addr,!1,e),iT(n,e)}else{if(iA(n,i))return;ix.set(i),t.uniformMatrix3fv(this.addr,!1,ix),iT(n,i)}}function iR(t,e){var n=this.cache,i=e.elements;if(void 0===i){if(iA(n,e))return;t.uniformMatrix4fv(this.addr,!1,e),iT(n,e)}else{if(iA(n,i))return;i8.set(i),t.uniformMatrix4fv(this.addr,!1,i8),iT(n,i)}}function i3(t,e,n){var i=this.cache,r=n.allocTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture2D(e||im,r)}function iI(t,e,n){var i=this.cache,r=n.allocTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTexture3D(e||ig,r)}function iD(t,e,n){var i=this.cache,r=n.allocTextureUnit();i[0]!==r&&(t.uniform1i(this.addr,r),i[0]=r),n.setTextureCube(e||iv,r)}function iN(t,e){var n=this.cache;iA(n,e)||(t.uniform2iv(this.addr,e),iT(n,e))}function iB(t,e){var n=this.cache;iA(n,e)||(t.uniform3iv(this.addr,e),iT(n,e))}function iO(t,e){var n=this.cache;iA(n,e)||(t.uniform4iv(this.addr,e),iT(n,e))}function iG(t,e){var n=this.cache;iA(n,e)||(t.uniform1fv(this.addr,e),iT(n,e))}function ik(t,e){var n=this.cache;iA(n,e)||(t.uniform1iv(this.addr,e),iT(n,e))}function iV(t,e){var n=this.cache,i=iw(e,this.size,2);iA(n,i)||(t.uniform2fv(this.addr,i),this.updateCache(i))}function iz(t,e){var n=this.cache,i=iw(e,this.size,3);iA(n,i)||(t.uniform3fv(this.addr,i),this.updateCache(i))}function iU(t,e){var n=this.cache,i=iw(e,this.size,4);iA(n,i)||(t.uniform4fv(this.addr,i),this.updateCache(i))}function i2(t,e){var n=this.cache,i=iw(e,this.size,4);iA(n,i)||(t.uniformMatrix2fv(this.addr,!1,i),this.updateCache(i))}function iH(t,e){var n=this.cache,i=iw(e,this.size,9);iA(n,i)||(t.uniformMatrix3fv(this.addr,!1,i),this.updateCache(i))}function iF(t,e){var n=this.cache,i=iw(e,this.size,16);iA(n,i)||(t.uniformMatrix4fv(this.addr,!1,i),this.updateCache(i))}function i5(t,e,n){var i=this.cache,r=e.length,o=iS(n,r);!1===iA(i,o)&&(t.uniform1iv(this.addr,o),iT(i,o));for(var a=0;a!==r;++a)n.setTexture2D(e[a]||im,o[a])}function i4(t,e,n){var i=this.cache,r=e.length,o=iS(n,r);!1===iA(i,o)&&(t.uniform1iv(this.addr,o),iT(i,o));for(var a=0;a!==r;++a)n.setTextureCube(e[a]||iv,o[a])}function i6(t,e,n){this.id=t,this.addr=n,this.cache=[],this.setValue=function(t){switch(t){case 5126:return iE;case 35664:return iP;case 35665:return iC;case 35666:return iL;case 35674:return iM;case 35675:return i1;case 35676:return iR;case 35678:case 36198:return i3;case 35679:return iI;case 35680:return iD;case 5124:case 35670:return i0;case 35667:case 35671:return iN;case 35668:case 35672:return iB;case 35669:case 35673:return iO}}(e.type)}function iW(t,e,n){this.id=t,this.addr=n,this.cache=[],this.size=e.size,this.setValue=function(t){switch(t){case 5126:return iG;case 35664:return iV;case 35665:return iz;case 35666:return iU;case 35674:return i2;case 35675:return iH;case 35676:return iF;case 35678:return i5;case 35680:return i4;case 5124:case 35670:return ik;case 35667:case 35671:return iN;case 35668:case 35672:return iB;case 35669:case 35673:return iO}}(e.type)}function i7(t){this.id=t,i$.call(this)}iW.prototype.updateCache=function(t){var e=this.cache;t instanceof Float32Array&&e.length!==t.length&&(this.cache=new Float32Array(t.length)),iT(e,t)},i7.prototype.setValue=function(t,e,n){for(var i=this.seq,r=0,o=i.length;r!==o;++r){var a=i[r];a.setValue(t,e[a.id],n)}};var iX=/([\w\d_]+)(\])?(\[|\.)?/g;function iY(t,e){t.seq.push(e),t.map[e.id]=e}function iK(t,e,n){var i=t.name,r=i.length;for(iX.lastIndex=0;;){var o=iX.exec(i),a=iX.lastIndex,s=o[1],u="]"===o[2],l=o[3];if(u&&(s|=0),void 0===l||"["===l&&a+2===r){iY(n,void 0===l?new i6(s,t,e):new iW(s,t,e));break}var h=n.map[s];void 0===h&&iY(n,h=new i7(s)),n=h}}function ij(t,e,n){i$.call(this),this.renderer=n;for(var i=t.getProgramParameter(e,35718),r=0;r<i;++r){var o=t.getActiveUniform(e,r);iK(o,t.getUniformLocation(e,o.name),this)}}function iZ(t,e,n){var i=t.createShader(e);return t.shaderSource(i,n),t.compileShader(i),!1===t.getShaderParameter(i,35713)&&console.error("THREE.WebGLShader: Shader couldn't compile."),""!==t.getShaderInfoLog(i)&&console.warn("THREE.WebGLShader: gl.getShaderInfoLog()",35633===e?"vertex":"fragment",t.getShaderInfoLog(i),function(t){for(var e=t.split("\n"),n=0;n<e.length;n++)e[n]=n+1+": "+e[n];return e.join("\n")}(n)),i}ij.prototype.setValue=function(t,e,n){var i=this.map[e];void 0!==i&&i.setValue(t,n,this.renderer)},ij.prototype.setOptional=function(t,e,n){var i=e[n];void 0!==i&&this.setValue(t,n,i)},ij.upload=function(t,e,n,i){for(var r=0,o=e.length;r!==o;++r){var a=e[r],s=n[a.id];!1!==s.needsUpdate&&a.setValue(t,s.value,i)}},ij.seqWithValue=function(t,e){for(var n=[],i=0,r=t.length;i!==r;++i){var o=t[i];o.id in e&&n.push(o)}return n};var iq=0;function iQ(t){switch(t){case no:return["Linear","( value )"];case na:return["sRGB","( value )"];case nu:return["RGBE","( value )"];case nh:return["RGBM","( value, 7.0 )"];case nc:return["RGBM","( value, 16.0 )"];case np:return["RGBD","( value, 256.0 )"];case ns:return["Gamma","( value, float( GAMMA_FACTOR ) )"];default:throw Error("unsupported encoding: "+t)}}function iJ(t,e){var n=iQ(e);return"vec4 "+t+"( vec4 value ) { return "+n[0]+"ToLinear"+n[1]+"; }"}function i9(t){return""!==t}function rt(t,e){return t.replace(/NUM_DIR_LIGHTS/g,e.numDirLights).replace(/NUM_SPOT_LIGHTS/g,e.numSpotLights).replace(/NUM_RECT_AREA_LIGHTS/g,e.numRectAreaLights).replace(/NUM_POINT_LIGHTS/g,e.numPointLights).replace(/NUM_HEMI_LIGHTS/g,e.numHemiLights)}function re(t,e){return t.replace(/NUM_CLIPPING_PLANES/g,e.numClippingPlanes).replace(/UNION_CLIPPING_PLANES/g,e.numClippingPlanes-e.numClipIntersection)}function rn(t){return t.replace(/^[ \t]*#include +<([\w\d./]+)>/gm,function(t,e){var n=n1[e];if(void 0===n)throw Error("Can not resolve #include <"+e+">");return rn(n)})}function ri(t){return t.replace(/#pragma unroll_loop[\s]+?for \( int i \= (\d+)\; i < (\d+)\; i \+\+ \) \{([\s\S]+?)(?=\})\}/g,function(t,e,n,i){for(var r="",o=parseInt(e);o<parseInt(n);o++)r+=i.replace(/\[ i \]/g,"[ "+o+" ]");return r})}function rr(t,e,n,i,r,o,a){var s=t.context,u=i.defines,l=r.vertexShader,h=r.fragmentShader,c="SHADOWMAP_TYPE_BASIC";o.shadowMapType===tp?c="SHADOWMAP_TYPE_PCF":o.shadowMapType===td&&(c="SHADOWMAP_TYPE_PCF_SOFT");var p="ENVMAP_TYPE_CUBE",d="ENVMAP_MODE_REFLECTION",f="ENVMAP_BLENDING_MULTIPLY";if(o.envMap){switch(i.envMap.mapping){case tQ:case tJ:p="ENVMAP_TYPE_CUBE";break;case en:case ei:p="ENVMAP_TYPE_CUBE_UV";break;case t9:case et:p="ENVMAP_TYPE_EQUIREC";break;case ee:p="ENVMAP_TYPE_SPHERE"}switch(i.envMap.mapping){case tJ:case et:d="ENVMAP_MODE_REFRACTION"}switch(i.combine){case t6:f="ENVMAP_BLENDING_MULTIPLY";break;case tW:f="ENVMAP_BLENDING_MIX";break;case t7:f="ENVMAP_BLENDING_ADD"}}var m,g,v,$,y,_,x,b=t.gammaFactor>0?t.gammaFactor:1,w=a.isWebGL2?"":(m=i.extensions,g=o,v=e,[(m=m||{}).derivatives||g.envMapCubeUV||g.bumpMap||g.normalMap&&!g.objectSpaceNormalMap||g.flatShading?"#extension GL_OES_standard_derivatives : enable":"",(m.fragDepth||g.logarithmicDepthBuffer)&&v.get("EXT_frag_depth")?"#extension GL_EXT_frag_depth : enable":"",m.drawBuffers&&v.get("WEBGL_draw_buffers")?"#extension GL_EXT_draw_buffers : require":"",(m.shaderTextureLOD||g.envMap)&&v.get("EXT_shader_texture_lod")?"#extension GL_EXT_shader_texture_lod : enable":""].filter(i9).join("\n")),A=function(t){var e=[];for(var n in t){var i=t[n];!1!==i&&e.push("#define "+n+" "+i)}return e.join("\n")}(u),T=s.createProgram();if(i.isRawShaderMaterial?(($=[A].filter(i9).join("\n")).length>0&&($+="\n"),(y=[w,A].filter(i9).join("\n")).length>0&&(y+="\n")):($=["precision "+o.precision+" float;","precision "+o.precision+" int;","#define SHADER_NAME "+r.name,A,o.supportsVertexTextures?"#define VERTEX_TEXTURES":"","#define GAMMA_FACTOR "+b,"#define MAX_BONES "+o.maxBones,o.useFog&&o.fog?"#define USE_FOG":"",o.useFog&&o.fogExp?"#define FOG_EXP2":"",o.map?"#define USE_MAP":"",o.envMap?"#define USE_ENVMAP":"",o.envMap?"#define "+d:"",o.lightMap?"#define USE_LIGHTMAP":"",o.aoMap?"#define USE_AOMAP":"",o.emissiveMap?"#define USE_EMISSIVEMAP":"",o.bumpMap?"#define USE_BUMPMAP":"",o.normalMap?"#define USE_NORMALMAP":"",o.normalMap&&o.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",o.displacementMap&&o.supportsVertexTextures?"#define USE_DISPLACEMENTMAP":"",o.specularMap?"#define USE_SPECULARMAP":"",o.roughnessMap?"#define USE_ROUGHNESSMAP":"",o.metalnessMap?"#define USE_METALNESSMAP":"",o.alphaMap?"#define USE_ALPHAMAP":"",o.vertexColors?"#define USE_COLOR":"",o.flatShading?"#define FLAT_SHADED":"",o.skinning?"#define USE_SKINNING":"",o.useVertexTexture?"#define BONE_TEXTURE":"",o.morphTargets?"#define USE_MORPHTARGETS":"",o.morphNormals&&!1===o.flatShading?"#define USE_MORPHNORMALS":"",o.doubleSided?"#define DOUBLE_SIDED":"",o.flipSided?"#define FLIP_SIDED":"",o.shadowMapEnabled?"#define USE_SHADOWMAP":"",o.shadowMapEnabled?"#define "+c:"",o.sizeAttenuation?"#define USE_SIZEATTENUATION":"",o.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",o.logarithmicDepthBuffer&&(a.isWebGL2||e.get("EXT_frag_depth"))?"#define USE_LOGDEPTHBUF_EXT":"","uniform mat4 modelMatrix;","uniform mat4 modelViewMatrix;","uniform mat4 projectionMatrix;","uniform mat4 viewMatrix;","uniform mat3 normalMatrix;","uniform vec3 cameraPosition;","attribute vec3 position;","attribute vec3 normal;","attribute vec2 uv;","#ifdef USE_COLOR","	attribute vec3 color;","#endif","#ifdef USE_MORPHTARGETS","	attribute vec3 morphTarget0;","	attribute vec3 morphTarget1;","	attribute vec3 morphTarget2;","	attribute vec3 morphTarget3;","	#ifdef USE_MORPHNORMALS","		attribute vec3 morphNormal0;","		attribute vec3 morphNormal1;","		attribute vec3 morphNormal2;","		attribute vec3 morphNormal3;","	#else","		attribute vec3 morphTarget4;","		attribute vec3 morphTarget5;","		attribute vec3 morphTarget6;","		attribute vec3 morphTarget7;","	#endif","#endif","#ifdef USE_SKINNING","	attribute vec4 skinIndex;","	attribute vec4 skinWeight;","#endif","\n"].filter(i9).join("\n"),y=[w,"precision "+o.precision+" float;","precision "+o.precision+" int;","#define SHADER_NAME "+r.name,A,o.alphaTest?"#define ALPHATEST "+o.alphaTest+(o.alphaTest%1?"":".0"):"","#define GAMMA_FACTOR "+b,o.useFog&&o.fog?"#define USE_FOG":"",o.useFog&&o.fogExp?"#define FOG_EXP2":"",o.map?"#define USE_MAP":"",o.envMap?"#define USE_ENVMAP":"",o.envMap?"#define "+p:"",o.envMap?"#define "+d:"",o.envMap?"#define "+f:"",o.lightMap?"#define USE_LIGHTMAP":"",o.aoMap?"#define USE_AOMAP":"",o.emissiveMap?"#define USE_EMISSIVEMAP":"",o.bumpMap?"#define USE_BUMPMAP":"",o.normalMap?"#define USE_NORMALMAP":"",o.normalMap&&o.objectSpaceNormalMap?"#define OBJECTSPACE_NORMALMAP":"",o.specularMap?"#define USE_SPECULARMAP":"",o.roughnessMap?"#define USE_ROUGHNESSMAP":"",o.metalnessMap?"#define USE_METALNESSMAP":"",o.alphaMap?"#define USE_ALPHAMAP":"",o.vertexColors?"#define USE_COLOR":"",o.gradientMap?"#define USE_GRADIENTMAP":"",o.flatShading?"#define FLAT_SHADED":"",o.doubleSided?"#define DOUBLE_SIDED":"",o.flipSided?"#define FLIP_SIDED":"",o.shadowMapEnabled?"#define USE_SHADOWMAP":"",o.shadowMapEnabled?"#define "+c:"",o.premultipliedAlpha?"#define PREMULTIPLIED_ALPHA":"",o.physicallyCorrectLights?"#define PHYSICALLY_CORRECT_LIGHTS":"",o.logarithmicDepthBuffer?"#define USE_LOGDEPTHBUF":"",o.logarithmicDepthBuffer&&(a.isWebGL2||e.get("EXT_frag_depth"))?"#define USE_LOGDEPTHBUF_EXT":"",o.envMap&&(a.isWebGL2||e.get("EXT_shader_texture_lod"))?"#define TEXTURE_LOD_EXT":"","uniform mat4 viewMatrix;","uniform vec3 cameraPosition;",o.toneMapping!==tX?"#define TONE_MAPPING":"",o.toneMapping!==tX?n1.tonemapping_pars_fragment:"",o.toneMapping!==tX?function(t,e){var n;switch(e){case tY:n="Linear";break;case tK:n="Reinhard";break;case tj:n="Uncharted2";break;case tZ:n="OptimizedCineon";break;default:throw Error("unsupported toneMapping: "+e)}return"vec3 toneMapping( vec3 color ) { return "+n+"ToneMapping( color ); }"}(0,o.toneMapping):"",o.dithering?"#define DITHERING":"",o.outputEncoding||o.mapEncoding||o.matcapEncoding||o.envMapEncoding||o.emissiveMapEncoding?n1.encodings_pars_fragment:"",o.mapEncoding?iJ("mapTexelToLinear",o.mapEncoding):"",o.matcapEncoding?iJ("matcapTexelToLinear",o.matcapEncoding):"",o.envMapEncoding?iJ("envMapTexelToLinear",o.envMapEncoding):"",o.emissiveMapEncoding?iJ("emissiveMapTexelToLinear",o.emissiveMapEncoding):"",o.outputEncoding?"vec4 linearToOutputTexel( vec4 value ) { return LinearTo"+(x=iQ(_=o.outputEncoding))[0]+x[1]+"; }":"",o.depthPacking?"#define DEPTH_PACKING "+i.depthPacking:"","\n"].filter(i9).join("\n")),l=re(l=rt(l=rn(l),o),o),h=re(h=rt(h=rn(h),o),o),l=ri(l),h=ri(h),a.isWebGL2&&!i.isRawShaderMaterial){var S=!1,E=/^\s*#version\s+300\s+es\s*\n/;i.isShaderMaterial&&null!==l.match(E)&&null!==h.match(E)&&(S=!0,l=l.replace(E,""),h=h.replace(E,"")),$="#version 300 es\n\n#define attribute in\n#define varying out\n#define texture2D texture\n"+$,y=["#version 300 es\n","#define varying in",S?"":"out highp vec4 pc_fragColor;",S?"":"#define gl_FragColor pc_fragColor","#define gl_FragDepthEXT gl_FragDepth","#define texture2D texture","#define textureCube texture","#define texture2DProj textureProj","#define texture2DLodEXT textureLod","#define texture2DProjLodEXT textureProjLod","#define textureCubeLodEXT textureLod","#define texture2DGradEXT textureGrad","#define texture2DProjGradEXT textureProjGrad","#define textureCubeGradEXT textureGrad"].join("\n")+"\n"+y}var P=y+h,C=iZ(s,35633,$+l),L=iZ(s,35632,P);s.attachShader(T,C),s.attachShader(T,L),void 0!==i.index0AttributeName?s.bindAttribLocation(T,0,i.index0AttributeName):!0===o.morphTargets&&s.bindAttribLocation(T,0,"position"),s.linkProgram(T);var M,R,I=s.getProgramInfoLog(T).trim(),D=s.getShaderInfoLog(C).trim(),N=s.getShaderInfoLog(L).trim(),B=!0,O=!0;return!1===s.getProgramParameter(T,35714)?(B=!1,console.error("THREE.WebGLProgram: shader error: ",s.getError(),"35715",s.getProgramParameter(T,35715),"gl.getProgramInfoLog",I,D,N)):""!==I?console.warn("THREE.WebGLProgram: gl.getProgramInfoLog()",I):""!==D&&""!==N||(O=!1),O&&(this.diagnostics={runnable:B,material:i,programLog:I,vertexShader:{log:D,prefix:$},fragmentShader:{log:N,prefix:y}}),s.deleteShader(C),s.deleteShader(L),this.getUniforms=function(){return void 0===M&&(M=new ij(s,T,t)),M},this.getAttributes=function(){return void 0===R&&(R=function(t,e){for(var n={},i=t.getProgramParameter(e,35721),r=0;r<i;r++){var o=t.getActiveAttrib(e,r).name;n[o]=t.getAttribLocation(e,o)}return n}(s,T)),R},this.destroy=function(){s.deleteProgram(T),this.program=void 0},Object.defineProperties(this,{uniforms:{get:function(){return console.warn("THREE.WebGLProgram: .uniforms is now .getUniforms()."),this.getUniforms()}},attributes:{get:function(){return console.warn("THREE.WebGLProgram: .attributes is now .getAttributes()."),this.getAttributes()}}}),this.name=r.name,this.id=iq++,this.code=n,this.usedTimes=1,this.program=T,this.vertexShader=C,this.fragmentShader=L,this}function ro(t,e,n){var i=[],r={MeshDepthMaterial:"depth",MeshDistanceMaterial:"distanceRGBA",MeshNormalMaterial:"normal",MeshBasicMaterial:"basic",MeshLambertMaterial:"lambert",MeshPhongMaterial:"phong",MeshToonMaterial:"phong",MeshStandardMaterial:"physical",MeshPhysicalMaterial:"physical",MeshMatcapMaterial:"matcap",LineBasicMaterial:"basic",LineDashedMaterial:"dashed",PointsMaterial:"points",ShadowMaterial:"shadow",SpriteMaterial:"sprite"},o=["precision","supportsVertexTextures","map","mapEncoding","matcapEncoding","envMap","envMapMode","envMapEncoding","lightMap","aoMap","emissiveMap","emissiveMapEncoding","bumpMap","normalMap","objectSpaceNormalMap","displacementMap","specularMap","roughnessMap","metalnessMap","gradientMap","alphaMap","combine","vertexColors","fog","useFog","fogExp","flatShading","sizeAttenuation","logarithmicDepthBuffer","skinning","maxBones","useVertexTexture","morphTargets","morphNormals","maxMorphTargets","maxMorphNormals","premultipliedAlpha","numDirLights","numPointLights","numSpotLights","numHemiLights","numRectAreaLights","shadowMapEnabled","shadowMapType","toneMapping","physicallyCorrectLights","alphaTest","doubleSided","flipSided","numClippingPlanes","numClipIntersection","depthPacking","dithering"];function a(t,e){var n;return t?t.isTexture?n=t.encoding:t.isWebGLRenderTarget&&(console.warn("THREE.WebGLPrograms.getTextureEncodingFromMap: don't use render targets as textures. Use their .texture property instead."),n=t.texture.encoding):n=no,n===no&&e&&(n=ns),n}this.getParameters=function(e,i,o,s,u,l,h){var c=r[e.type],p=h.isSkinnedMesh?function(t){var e=t.skeleton.bones;if(n.floatVertexTextures)return 1024;var i=Math.min(Math.floor((n.maxVertexUniforms-20)/4),e.length);return i<e.length?(console.warn("THREE.WebGLRenderer: Skeleton has "+e.length+" bones. This GPU supports "+i+"."),0):i}(h):0,d=n.precision;null!==e.precision&&(d=n.getMaxPrecision(e.precision))!==e.precision&&console.warn("THREE.WebGLProgram.getParameters:",e.precision,"not supported, using",d,"instead.");var f=t.getRenderTarget();return{shaderID:c,precision:d,supportsVertexTextures:n.vertexTextures,outputEncoding:a(f?f.texture:null,t.gammaOutput),map:!!e.map,mapEncoding:a(e.map,t.gammaInput),matcap:!!e.matcap,matcapEncoding:a(e.matcap,t.gammaInput),envMap:!!e.envMap,envMapMode:e.envMap&&e.envMap.mapping,envMapEncoding:a(e.envMap,t.gammaInput),envMapCubeUV:!!e.envMap&&(e.envMap.mapping===en||e.envMap.mapping===ei),lightMap:!!e.lightMap,aoMap:!!e.aoMap,emissiveMap:!!e.emissiveMap,emissiveMapEncoding:a(e.emissiveMap,t.gammaInput),bumpMap:!!e.bumpMap,normalMap:!!e.normalMap,objectSpaceNormalMap:e.normalMapType===ng,displacementMap:!!e.displacementMap,roughnessMap:!!e.roughnessMap,metalnessMap:!!e.metalnessMap,specularMap:!!e.specularMap,alphaMap:!!e.alphaMap,gradientMap:!!e.gradientMap,combine:e.combine,vertexColors:e.vertexColors,fog:!!s,useFog:e.fog,fogExp:s&&s.isFogExp2,flatShading:e.flatShading,sizeAttenuation:e.sizeAttenuation,logarithmicDepthBuffer:n.logarithmicDepthBuffer,skinning:e.skinning&&p>0,maxBones:p,useVertexTexture:n.floatVertexTextures,morphTargets:e.morphTargets,morphNormals:e.morphNormals,maxMorphTargets:t.maxMorphTargets,maxMorphNormals:t.maxMorphNormals,numDirLights:i.directional.length,numPointLights:i.point.length,numSpotLights:i.spot.length,numRectAreaLights:i.rectArea.length,numHemiLights:i.hemi.length,numClippingPlanes:u,numClipIntersection:l,dithering:e.dithering,shadowMapEnabled:t.shadowMap.enabled&&h.receiveShadow&&o.length>0,shadowMapType:t.shadowMap.type,toneMapping:t.toneMapping,physicallyCorrectLights:t.physicallyCorrectLights,premultipliedAlpha:e.premultipliedAlpha,alphaTest:e.alphaTest,doubleSided:e.side===tg,flipSided:e.side===tm,depthPacking:void 0!==e.depthPacking&&e.depthPacking}},this.getProgramCode=function(e,n){var i=[];if(n.shaderID?i.push(n.shaderID):(i.push(e.fragmentShader),i.push(e.vertexShader)),void 0!==e.defines)for(var r in e.defines)i.push(r),i.push(e.defines[r]);for(var a=0;a<o.length;a++)i.push(n[o[a]]);return i.push(e.onBeforeCompile.toString()),i.push(t.gammaOutput),i.push(t.gammaFactor),i.join()},this.acquireProgram=function(r,o,a,s){for(var u,l=0,h=i.length;l<h;l++){var c=i[l];if(c.code===s){++(u=c).usedTimes;break}}return void 0===u&&(u=new rr(t,e,s,r,o,a,n),i.push(u)),u},this.releaseProgram=function(t){0==--t.usedTimes&&(i[i.indexOf(t)]=i[i.length-1],i.pop(),t.destroy())},this.programs=i}function ra(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.program&&e.program&&t.program!==e.program?t.program.id-e.program.id:t.material.id!==e.material.id?t.material.id-e.material.id:t.z!==e.z?t.z-e.z:t.id-e.id}function rs(t,e){return t.renderOrder!==e.renderOrder?t.renderOrder-e.renderOrder:t.z!==e.z?e.z-t.z:t.id-e.id}function ru(){var t={};return{get:function(e,n){var i=e.id+","+n.id,r=t[i];return void 0===r&&(r=new function(){var t=[],e=0,n=[],i=[];return{opaque:n,transparent:i,init:function(){e=0,n.length=0,i.length=0},push:function(r,o,a,s,u){var l=t[e];void 0===l?(l={id:r.id,object:r,geometry:o,material:a,program:a.program,renderOrder:r.renderOrder,z:s,group:u},t[e]=l):(l.id=r.id,l.object=r,l.geometry=o,l.material=a,l.program=a.program,l.renderOrder=r.renderOrder,l.z=s,l.group=u),(!0===a.transparent?i:n).push(l),e++},sort:function(){n.length>1&&n.sort(ra),i.length>1&&i.sort(rs)}}},t[i]=r),r},dispose:function(){t={}}}}var rl=0;function rh(){var t=new function(){var t={};return{get:function(e){var n;if(void 0!==t[e.id])return t[e.id];switch(e.type){case"DirectionalLight":n={direction:new n8,color:new nI,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new n$};break;case"SpotLight":n={position:new n8,direction:new n8,color:new nI,distance:0,coneCos:0,penumbraCos:0,decay:0,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new n$};break;case"PointLight":n={position:new n8,color:new nI,distance:0,decay:0,shadow:!1,shadowBias:0,shadowRadius:1,shadowMapSize:new n$,shadowCameraNear:1,shadowCameraFar:1e3};break;case"HemisphereLight":n={direction:new n8,skyColor:new nI,groundColor:new nI};break;case"RectAreaLight":n={color:new nI,position:new n8,halfWidth:new n8,halfHeight:new n8}}return t[e.id]=n,n}}},e={id:rl++,hash:{stateID:-1,directionalLength:-1,pointLength:-1,spotLength:-1,rectAreaLength:-1,hemiLength:-1,shadowsLength:-1},ambient:[0,0,0],directional:[],directionalShadowMap:[],directionalShadowMatrix:[],spot:[],spotShadowMap:[],spotShadowMatrix:[],rectArea:[],point:[],pointShadowMap:[],pointShadowMatrix:[],hemi:[]},n=new n8,i=new ny,r=new ny;return{setup:function(o,a,s){for(var u=0,l=0,h=0,c=0,p=0,d=0,f=0,m=0,g=s.matrixWorldInverse,v=0,$=o.length;v<$;v++){var y,_=o[v],x=_.color,b=_.intensity,w=_.distance,A=_.shadow&&_.shadow.map?_.shadow.map.texture:null;if(_.isAmbientLight)u+=x.r*b,l+=x.g*b,h+=x.b*b;else if(_.isDirectionalLight){if((y=t.get(_)).color.copy(_.color).multiplyScalar(_.intensity),y.direction.setFromMatrixPosition(_.matrixWorld),n.setFromMatrixPosition(_.target.matrixWorld),y.direction.sub(n),y.direction.transformDirection(g),y.shadow=_.castShadow,_.castShadow){var T=_.shadow;y.shadowBias=T.bias,y.shadowRadius=T.radius,y.shadowMapSize=T.mapSize}e.directionalShadowMap[c]=A,e.directionalShadowMatrix[c]=_.shadow.matrix,e.directional[c]=y,c++}else _.isSpotLight?((y=t.get(_)).position.setFromMatrixPosition(_.matrixWorld),y.position.applyMatrix4(g),y.color.copy(x).multiplyScalar(b),y.distance=w,y.direction.setFromMatrixPosition(_.matrixWorld),n.setFromMatrixPosition(_.target.matrixWorld),y.direction.sub(n),y.direction.transformDirection(g),y.coneCos=Math.cos(_.angle),y.penumbraCos=Math.cos(_.angle*(1-_.penumbra)),y.decay=_.decay,y.shadow=_.castShadow,_.castShadow&&(T=_.shadow,y.shadowBias=T.bias,y.shadowRadius=T.radius,y.shadowMapSize=T.mapSize),e.spotShadowMap[d]=A,e.spotShadowMatrix[d]=_.shadow.matrix,e.spot[d]=y,d++):_.isRectAreaLight?((y=t.get(_)).color.copy(x).multiplyScalar(b),y.position.setFromMatrixPosition(_.matrixWorld),y.position.applyMatrix4(g),r.identity(),i.copy(_.matrixWorld),i.premultiply(g),r.extractRotation(i),y.halfWidth.set(.5*_.width,0,0),y.halfHeight.set(0,.5*_.height,0),y.halfWidth.applyMatrix4(r),y.halfHeight.applyMatrix4(r),e.rectArea[f]=y,f++):_.isPointLight?((y=t.get(_)).position.setFromMatrixPosition(_.matrixWorld),y.position.applyMatrix4(g),y.color.copy(_.color).multiplyScalar(_.intensity),y.distance=_.distance,y.decay=_.decay,y.shadow=_.castShadow,_.castShadow&&(T=_.shadow,y.shadowBias=T.bias,y.shadowRadius=T.radius,y.shadowMapSize=T.mapSize,y.shadowCameraNear=T.camera.near,y.shadowCameraFar=T.camera.far),e.pointShadowMap[p]=A,e.pointShadowMatrix[p]=_.shadow.matrix,e.point[p]=y,p++):_.isHemisphereLight&&((y=t.get(_)).direction.setFromMatrixPosition(_.matrixWorld),y.direction.transformDirection(g),y.direction.normalize(),y.skyColor.copy(_.color).multiplyScalar(b),y.groundColor.copy(_.groundColor).multiplyScalar(b),e.hemi[m]=y,m++)}e.ambient[0]=u,e.ambient[1]=l,e.ambient[2]=h,e.directional.length=c,e.spot.length=d,e.rectArea.length=f,e.point.length=p,e.hemi.length=m,e.hash.stateID=e.id,e.hash.directionalLength=c,e.hash.pointLength=p,e.hash.spotLength=d,e.hash.rectAreaLength=f,e.hash.hemiLength=m,e.hash.shadowsLength=a.length},state:e}}function rc(){var t=new rh,e=[],n=[];return{init:function(){e.length=0,n.length=0},state:{lightsArray:e,shadowsArray:n,lights:t},setupLights:function(i){t.setup(e,n,i)},pushLight:function(t){e.push(t)},pushShadow:function(t){n.push(t)}}}function rp(t){io.call(this),this.type="MeshDepthMaterial",this.depthPacking=nd,this.skinning=!1,this.morphTargets=!1,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.setValues(t)}function rd(t){io.call(this),this.type="MeshDistanceMaterial",this.referencePosition=new n8,this.nearDistance=1,this.farDistance=1e3,this.skinning=!1,this.morphTargets=!1,this.map=null,this.alphaMap=null,this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.fog=!1,this.lights=!1,this.setValues(t)}function rf(t,e,n){for(var i=new nM,r=new ny,o=new n$,a=new n$(n,n),s=new n8,u=new n8,l=[,,,,],h=[,,,,],c={},p={0:tm,1:tf,2:tg},d=[new n8(1,0,0),new n8(-1,0,0),new n8(0,0,1),new n8(0,0,-1),new n8(0,1,0),new n8(0,-1,0)],f=[new n8(0,1,0),new n8(0,1,0),new n8(0,1,0),new n8(0,1,0),new n8(0,0,1),new n8(0,0,-1)],m=[new nT,new nT,new nT,new nT,new nT,new nT],g=0;4!==g;++g){var v=0!=(1&g),$=0!=(2&g),y=new rp({depthPacking:nf,morphTargets:v,skinning:$});l[g]=y;var _=new rd({morphTargets:v,skinning:$});h[g]=_}var x=this;function b(e,n,i,r,o,a){var s=e.geometry,u=null,d=l,f=e.customDepthMaterial;if(i&&(d=h,f=e.customDistanceMaterial),f)u=f;else{var m=!1;n.morphTargets&&(s&&s.isBufferGeometry?m=s.morphAttributes&&s.morphAttributes.position&&s.morphAttributes.position.length>0:s&&s.isGeometry&&(m=s.morphTargets&&s.morphTargets.length>0)),e.isSkinnedMesh&&!1===n.skinning&&console.warn("THREE.WebGLShadowMap: THREE.SkinnedMesh with material.skinning set to false:",e);var g=0;m&&(g|=1),e.isSkinnedMesh&&n.skinning&&(g|=2),u=d[g]}if(t.localClippingEnabled&&!0===n.clipShadows&&0!==n.clippingPlanes.length){var v=u.uuid,$=n.uuid,y=c[v];void 0===y&&(y={},c[v]=y);var _=y[$];void 0===_&&(_=u.clone(),y[$]=_),u=_}return u.visible=n.visible,u.wireframe=n.wireframe,u.side=null!=n.shadowSide?n.shadowSide:p[n.side],u.clipShadows=n.clipShadows,u.clippingPlanes=n.clippingPlanes,u.clipIntersection=n.clipIntersection,u.wireframeLinewidth=n.wireframeLinewidth,u.linewidth=n.linewidth,i&&u.isMeshDistanceMaterial&&(u.referencePosition.copy(r),u.nearDistance=o,u.farDistance=a),u}function w(n,r,o,a){if(!1!==n.visible){if(n.layers.test(r.layers)&&(n.isMesh||n.isLine||n.isPoints)&&n.castShadow&&(!n.frustumCulled||i.intersectsObject(n))){n.modelViewMatrix.multiplyMatrices(o.matrixWorldInverse,n.matrixWorld);var s=e.update(n),l=n.material;if(Array.isArray(l))for(var h=s.groups,c=0,p=h.length;c<p;c++){var d=h[c],f=l[d.materialIndex];if(f&&f.visible){var m=b(n,f,a,u,o.near,o.far);t.renderBufferDirect(o,null,s,m,n,d)}}else l.visible&&(m=b(n,l,a,u,o.near,o.far),t.renderBufferDirect(o,null,s,m,n,null))}for(var g=n.children,v=0,$=g.length;v<$;v++)w(g[v],r,o,a)}}this.enabled=!1,this.autoUpdate=!0,this.needsUpdate=!1,this.type=tp,this.render=function(e,n,l){if(!1!==x.enabled&&(!1!==x.autoUpdate||!1!==x.needsUpdate)&&0!==e.length){t.context;var h,c=t.state;c.disable(3042),c.buffers.color.setClear(1,1,1,1),c.buffers.depth.setTest(!0),c.setScissorTest(!1);for(var p=0,g=e.length;p<g;p++){var v=e[p],$=v.shadow,y=v&&v.isPointLight;if(void 0!==$){var _=$.camera;if(o.copy($.mapSize),o.min(a),y){var b=o.x,A=o.y;m[0].set(2*b,A,b,A),m[1].set(0,A,b,A),m[2].set(3*b,A,b,A),m[3].set(b,A,b,A),m[4].set(3*b,0,b,A),m[5].set(b,0,b,A),o.x*=4,o.y*=2}if(null===$.map){var T={minFilter:es,magFilter:es,format:eS};$.map=new nS(o.x,o.y,T),$.map.texture.name=v.name+".shadowMap",_.updateProjectionMatrix()}$.isSpotLightShadow&&$.update(v);var S=$.map,E=$.matrix;u.setFromMatrixPosition(v.matrixWorld),_.position.copy(u),y?(h=6,E.makeTranslation(-u.x,-u.y,-u.z)):(h=1,s.setFromMatrixPosition(v.target.matrixWorld),_.lookAt(s),_.updateMatrixWorld(),E.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1),E.multiply(_.projectionMatrix),E.multiply(_.matrixWorldInverse)),t.setRenderTarget(S),t.clear();for(var P=0;P<h;P++){if(y){s.copy(_.position),s.add(d[P]),_.up.copy(f[P]),_.lookAt(s),_.updateMatrixWorld();var C=m[P];c.viewport(C)}r.multiplyMatrices(_.projectionMatrix,_.matrixWorldInverse),i.setFromMatrix(r),w(n,l,_,y)}}else console.warn("THREE.WebGLShadowMap:",v,"has no shadow.")}x.needsUpdate=!1}}}function rm(t,e,n,i,r,o,a){var s,u={};function l(t,e){if(t.width>e||t.height>e){if("data"in t)return void console.warn("THREE.WebGLRenderer: image in DataTexture is too big ("+t.width+"x"+t.height+").");var n=e/Math.max(t.width,t.height),i=document.createElementNS("http://www.w3.org/1999/xhtml","canvas");return i.width=Math.floor(t.width*n),i.height=Math.floor(t.height*n),i.getContext("2d").drawImage(t,0,0,t.width,t.height,0,0,i.width,i.height),console.warn("THREE.WebGLRenderer: image is too big ("+t.width+"x"+t.height+"). Resized to "+i.width+"x"+i.height),i}return t}function h(t){return nv.isPowerOfTwo(t.width)&&nv.isPowerOfTwo(t.height)}function c(t,e){return t.generateMipmaps&&e&&t.minFilter!==es&&t.minFilter!==eh}function p(e,n,r,o){t.generateMipmap(e),i.get(n).__maxMipLevel=Math.log(Math.max(r,o))*Math.LOG2E}function d(t,e){if(!r.isWebGL2)return t;if(6403===t){if(5126===e)return 33326;if(5131===e)return 33325;if(5121===e)return 33321}if(6407===t){if(5126===e)return 34837;if(5131===e)return 34843;if(5121===e)return 32849}if(6408===t){if(5126===e)return 34836;if(5131===e)return 34842;if(5121===e)return 32856}return t}function f(t){return t===es||t===eu||t===el?9728:9729}function m(e){var n=e.target;n.removeEventListener("dispose",m),function(e){var n=i.get(e);if(e.image&&n.__image__webglTextureCube)t.deleteTexture(n.__image__webglTextureCube);else{if(void 0===n.__webglInit)return;t.deleteTexture(n.__webglTexture)}i.remove(e)}(n),n.isVideoTexture&&delete u[n.id],a.memory.textures--}function g(e){var n=e.target;n.removeEventListener("dispose",g),function(e){var n=i.get(e),r=i.get(e.texture);if(e){if(void 0!==r.__webglTexture&&t.deleteTexture(r.__webglTexture),e.depthTexture&&e.depthTexture.dispose(),e.isWebGLRenderTargetCube)for(var o=0;o<6;o++)t.deleteFramebuffer(n.__webglFramebuffer[o]),n.__webglDepthbuffer&&t.deleteRenderbuffer(n.__webglDepthbuffer[o]);else t.deleteFramebuffer(n.__webglFramebuffer),n.__webglDepthbuffer&&t.deleteRenderbuffer(n.__webglDepthbuffer);i.remove(e.texture),i.remove(e)}}(n),a.memory.textures--}function v(t,e){var r,o,s,l=i.get(t);if(t.isVideoTexture&&(o=(r=t).id,s=a.render.frame,u[o]!==s&&(u[o]=s,r.update())),t.version>0&&l.__version!==t.version){var h=t.image;if(void 0===h)console.warn("THREE.WebGLRenderer: Texture marked for update but image is undefined");else{if(!1!==h.complete)return void y(l,t,e);console.warn("THREE.WebGLRenderer: Texture marked for update but image is incomplete")}}n.activeTexture(33984+e),n.bindTexture(3553,l.__webglTexture)}function $(n,a,s){var u;if(s?(t.texParameteri(n,10242,o.convert(a.wrapS)),t.texParameteri(n,10243,o.convert(a.wrapT)),t.texParameteri(n,10240,o.convert(a.magFilter)),t.texParameteri(n,10241,o.convert(a.minFilter))):(t.texParameteri(n,10242,33071),t.texParameteri(n,10243,33071),a.wrapS===eo&&a.wrapT===eo||console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.wrapS and Texture.wrapT should be set to THREE.ClampToEdgeWrapping."),t.texParameteri(n,10240,f(a.magFilter)),t.texParameteri(n,10241,f(a.minFilter)),a.minFilter!==es&&a.minFilter!==eh&&console.warn("THREE.WebGLRenderer: Texture is not power of two. Texture.minFilter should be set to THREE.NearestFilter or THREE.LinearFilter.")),u=e.get("EXT_texture_filter_anisotropic")){if(a.type===ey&&null===e.get("OES_texture_float_linear")||a.type===e_&&null===(r.isWebGL2||e.get("OES_texture_half_float_linear")))return;(a.anisotropy>1||i.get(a).__currentAnisotropy)&&(t.texParameterf(n,u.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.anisotropy,r.getMaxAnisotropy())),i.get(a).__currentAnisotropy=a.anisotropy)}}function y(e,i,u){w=i.isDataTexture3D?32879:3553,void 0===e.__webglInit&&(e.__webglInit=!0,i.addEventListener("dispose",m),e.__webglTexture=t.createTexture(),a.memory.textures++),n.activeTexture(33984+u),n.bindTexture(w,e.__webglTexture),t.pixelStorei(37440,i.flipY),t.pixelStorei(37441,i.premultiplyAlpha),t.pixelStorei(3317,i.unpackAlignment);var f,g,v=l(i.image,r.maxTextureSize);f=i,r.isWebGL2||f.wrapS===eo&&f.wrapT===eo&&(f.minFilter===es||f.minFilter===eh)||!1!==h(v)||(v=(g=v)instanceof HTMLImageElement||g instanceof HTMLCanvasElement||g instanceof ImageBitmap?(void 0===s&&(s=document.createElementNS("http://www.w3.org/1999/xhtml","canvas")),s.width=nv.floorPowerOfTwo(g.width),s.height=nv.floorPowerOfTwo(g.height),s.getContext("2d").drawImage(g,0,0,s.width,s.height),console.warn("THREE.WebGLRenderer: image is not power of two ("+g.width+"x"+g.height+"). Resized to "+s.width+"x"+s.height),s):g);var y=h(v),_=o.convert(i.format),x=o.convert(i.type),b=d(_,x);$(w,i,y);var w,A,T=i.mipmaps;if(i.isDepthTexture){if(b=6402,i.type===ey){if(!r.isWebGL2)throw Error("Float Depth Texture only supported in WebGL2.0");b=36012}else r.isWebGL2&&(b=33189);i.format===eC&&6402===b&&i.type!==eg&&i.type!==e$&&(console.warn("THREE.WebGLRenderer: Use UnsignedShortType or UnsignedIntType for DepthFormat DepthTexture."),i.type=eg,x=o.convert(i.type)),i.format===eL&&(b=34041,i.type!==ew&&(console.warn("THREE.WebGLRenderer: Use UnsignedInt248Type for DepthStencilFormat DepthTexture."),i.type=ew,x=o.convert(i.type))),n.texImage2D(3553,0,b,v.width,v.height,0,_,x,null)}else if(i.isDataTexture){if(T.length>0&&y){for(var S=0,E=T.length;S<E;S++)A=T[S],n.texImage2D(3553,S,b,A.width,A.height,0,_,x,A.data);i.generateMipmaps=!1,e.__maxMipLevel=T.length-1}else n.texImage2D(3553,0,b,v.width,v.height,0,_,x,v.data),e.__maxMipLevel=0}else if(i.isCompressedTexture){for(S=0,E=T.length;S<E;S++)A=T[S],i.format!==eS&&i.format!==eT?n.getCompressedTextureFormats().indexOf(_)>-1?n.compressedTexImage2D(3553,S,b,A.width,A.height,0,A.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()"):n.texImage2D(3553,S,b,A.width,A.height,0,_,x,A.data);e.__maxMipLevel=T.length-1}else if(i.isDataTexture3D)n.texImage3D(32879,0,b,v.width,v.height,v.depth,0,_,x,v.data),e.__maxMipLevel=0;else if(T.length>0&&y){for(S=0,E=T.length;S<E;S++)A=T[S],n.texImage2D(3553,S,b,_,x,A);i.generateMipmaps=!1,e.__maxMipLevel=T.length-1}else n.texImage2D(3553,0,b,_,x,v),e.__maxMipLevel=0;c(i,y)&&p(3553,i,v.width,v.height),e.__version=i.version,i.onUpdate&&i.onUpdate(i)}function _(e,r,a,s){var u=o.convert(r.texture.format),l=o.convert(r.texture.type),h=d(u,l);n.texImage2D(s,0,h,r.width,r.height,0,u,l,null),t.bindFramebuffer(36160,e),t.framebufferTexture2D(36160,a,s,i.get(r.texture).__webglTexture,0),t.bindFramebuffer(36160,null)}function x(e,n){t.bindRenderbuffer(36161,e),n.depthBuffer&&!n.stencilBuffer?(t.renderbufferStorage(36161,33189,n.width,n.height),t.framebufferRenderbuffer(36160,36096,36161,e)):n.depthBuffer&&n.stencilBuffer?(t.renderbufferStorage(36161,34041,n.width,n.height),t.framebufferRenderbuffer(36160,33306,36161,e)):t.renderbufferStorage(36161,32854,n.width,n.height),t.bindRenderbuffer(36161,null)}this.setTexture2D=v,this.setTexture3D=function(t,e){var r=i.get(t);t.version>0&&r.__version!==t.version?y(r,t,e):(n.activeTexture(33984+e),n.bindTexture(32879,r.__webglTexture))},this.setTextureCube=function(e,s){var u=i.get(e);if(6===e.image.length){if(e.version>0&&u.__version!==e.version){u.__image__webglTextureCube||(e.addEventListener("dispose",m),u.__image__webglTextureCube=t.createTexture(),a.memory.textures++),n.activeTexture(33984+s),n.bindTexture(34067,u.__image__webglTextureCube),t.pixelStorei(37440,e.flipY);for(var f=e&&e.isCompressedTexture,g=e.image[0]&&e.image[0].isDataTexture,v=[],y=0;y<6;y++)v[y]=f||g?g?e.image[y].image:e.image[y]:l(e.image[y],r.maxCubemapSize);var _=v[0],x=h(_),b=o.convert(e.format),w=o.convert(e.type),A=d(b,w);for($(34067,e,x),y=0;y<6;y++)if(f)for(var T,S=v[y].mipmaps,E=0,P=S.length;E<P;E++)T=S[E],e.format!==eS&&e.format!==eT?n.getCompressedTextureFormats().indexOf(b)>-1?n.compressedTexImage2D(34069+y,E,A,T.width,T.height,0,T.data):console.warn("THREE.WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()"):n.texImage2D(34069+y,E,A,T.width,T.height,0,b,w,T.data);else g?n.texImage2D(34069+y,0,A,v[y].width,v[y].height,0,b,w,v[y].data):n.texImage2D(34069+y,0,A,b,w,v[y]);u.__maxMipLevel=f?S.length-1:0,c(e,x)&&p(34067,e,_.width,_.height),u.__version=e.version,e.onUpdate&&e.onUpdate(e)}else n.activeTexture(33984+s),n.bindTexture(34067,u.__image__webglTextureCube)}},this.setTextureCubeDynamic=function(t,e){n.activeTexture(33984+e),n.bindTexture(34067,i.get(t).__webglTexture)},this.setupRenderTarget=function(e){var r=i.get(e),o=i.get(e.texture);e.addEventListener("dispose",g),o.__webglTexture=t.createTexture(),a.memory.textures++;var s=!0===e.isWebGLRenderTargetCube,u=h(e);if(s){r.__webglFramebuffer=[];for(var l=0;l<6;l++)r.__webglFramebuffer[l]=t.createFramebuffer()}else r.__webglFramebuffer=t.createFramebuffer();if(s){for(n.bindTexture(34067,o.__webglTexture),$(34067,e.texture,u),l=0;l<6;l++)_(r.__webglFramebuffer[l],e,36064,34069+l);c(e.texture,u)&&p(34067,e.texture,e.width,e.height),n.bindTexture(34067,null)}else n.bindTexture(3553,o.__webglTexture),$(3553,e.texture,u),_(r.__webglFramebuffer,e,36064,3553),c(e.texture,u)&&p(3553,e.texture,e.width,e.height),n.bindTexture(3553,null);e.depthBuffer&&function(e){var n=i.get(e),r=!0===e.isWebGLRenderTargetCube;if(e.depthTexture){if(r)throw Error("target.depthTexture not supported in Cube render targets");!function(e,n){if(n&&n.isWebGLRenderTargetCube)throw Error("Depth Texture with cube render targets is not supported");if(t.bindFramebuffer(36160,e),!n.depthTexture||!n.depthTexture.isDepthTexture)throw Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");i.get(n.depthTexture).__webglTexture&&n.depthTexture.image.width===n.width&&n.depthTexture.image.height===n.height||(n.depthTexture.image.width=n.width,n.depthTexture.image.height=n.height,n.depthTexture.needsUpdate=!0),v(n.depthTexture,0);var r=i.get(n.depthTexture).__webglTexture;if(n.depthTexture.format===eC)t.framebufferTexture2D(36160,36096,3553,r,0);else{if(n.depthTexture.format!==eL)throw Error("Unknown depthTexture format");t.framebufferTexture2D(36160,33306,3553,r,0)}}(n.__webglFramebuffer,e)}else if(r){n.__webglDepthbuffer=[];for(var o=0;o<6;o++)t.bindFramebuffer(36160,n.__webglFramebuffer[o]),n.__webglDepthbuffer[o]=t.createRenderbuffer(),x(n.__webglDepthbuffer[o],e)}else t.bindFramebuffer(36160,n.__webglFramebuffer),n.__webglDepthbuffer=t.createRenderbuffer(),x(n.__webglDepthbuffer,e);t.bindFramebuffer(36160,null)}(e)},this.updateRenderTargetMipmap=function(t){var e=t.texture;if(c(e,h(t))){var r=t.isWebGLRenderTargetCube?34067:3553,o=i.get(e).__webglTexture;n.bindTexture(r,o),p(r,e,t.width,t.height),n.bindTexture(r,null)}}}function rg(t,e,n){return{convert:function(t){var i;if(t===er)return 10497;if(t===eo)return 33071;if(t===ea)return 33648;if(t===es)return 9728;if(t===eu)return 9984;if(t===el)return 9986;if(t===eh)return 9729;if(t===ec)return 9985;if(t===ep)return 9987;if(t===ed)return 5121;if(t===e8)return 32819;if(t===ex)return 32820;if(t===eb)return 33635;if(t===ef)return 5120;if(t===em)return 5122;if(t===eg)return 5123;if(t===ev)return 5124;if(t===e$)return 5125;if(t===ey)return 5126;if(t===e_){if(n.isWebGL2)return 5131;if(null!==(i=e.get("OES_texture_half_float")))return i.HALF_FLOAT_OES}if(t===eA)return 6406;if(t===eT)return 6407;if(t===eS)return 6408;if(t===eE)return 6409;if(t===e0)return 6410;if(t===eC)return 6402;if(t===eL)return 34041;if(t===eM)return 6403;if(t===tE)return 32774;if(t===t0)return 32778;if(t===tP)return 32779;if(t===tM)return 0;if(t===t1)return 1;if(t===tR)return 768;if(t===t3)return 769;if(t===tI)return 770;if(t===tD)return 771;if(t===tN)return 772;if(t===tB)return 773;if(t===tO)return 774;if(t===tG)return 775;if(t===tk)return 776;if((t===e1||t===eR||t===e3||t===eI)&&null!==(i=e.get("WEBGL_compressed_texture_s3tc"))){if(t===e1)return i.COMPRESSED_RGB_S3TC_DXT1_EXT;if(t===eR)return i.COMPRESSED_RGBA_S3TC_DXT1_EXT;if(t===e3)return i.COMPRESSED_RGBA_S3TC_DXT3_EXT;if(t===eI)return i.COMPRESSED_RGBA_S3TC_DXT5_EXT}if((t===eD||t===eN||t===eB||t===eO)&&null!==(i=e.get("WEBGL_compressed_texture_pvrtc"))){if(t===eD)return i.COMPRESSED_RGB_PVRTC_4BPPV1_IMG;if(t===eN)return i.COMPRESSED_RGB_PVRTC_2BPPV1_IMG;if(t===eB)return i.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;if(t===eO)return i.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG}if(t===eG&&null!==(i=e.get("WEBGL_compressed_texture_etc1")))return i.COMPRESSED_RGB_ETC1_WEBGL;if((t===ek||t===eV||t===ez||t===eU||t===e2||t===eH||t===eF||t===e5||t===e4||t===e6||t===eW||t===e7||t===eX||t===eY)&&null!==(i=e.get("WEBGL_compressed_texture_astc")))return t;if(t===tC||t===tL){if(n.isWebGL2){if(t===tC)return 32775;if(t===tL)return 32776}if(null!==(i=e.get("EXT_blend_minmax"))){if(t===tC)return i.MIN_EXT;if(t===tL)return i.MAX_EXT}}if(t===ew){if(n.isWebGL2)return 34042;if(null!==(i=e.get("WEBGL_depth_texture")))return i.UNSIGNED_INT_24_8_WEBGL}return 0}}}function rv(){nU.call(this),this.type="Group"}function r$(){nU.call(this),this.type="Camera",this.matrixWorldInverse=new ny,this.projectionMatrix=new ny,this.projectionMatrixInverse=new ny}function ry(t,e,n,i){r$.call(this),this.type="PerspectiveCamera",this.fov=void 0!==t?t:50,this.zoom=1,this.near=void 0!==n?n:.1,this.far=void 0!==i?i:2e3,this.focus=10,this.aspect=void 0!==e?e:1,this.view=null,this.filmGauge=35,this.filmOffset=0,this.updateProjectionMatrix()}function r_(t){ry.call(this),this.cameras=t||[]}rp.prototype=Object.create(io.prototype),rp.prototype.constructor=rp,rp.prototype.isMeshDepthMaterial=!0,rp.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.depthPacking=t.depthPacking,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this},rd.prototype=Object.create(io.prototype),rd.prototype.constructor=rd,rd.prototype.isMeshDistanceMaterial=!0,rd.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.referencePosition.copy(t.referencePosition),this.nearDistance=t.nearDistance,this.farDistance=t.farDistance,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.map=t.map,this.alphaMap=t.alphaMap,this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this},rv.prototype=Object.assign(Object.create(nU.prototype),{constructor:rv,isGroup:!0}),r$.prototype=Object.assign(Object.create(nU.prototype),{constructor:r$,isCamera:!0,copy:function(t,e){return nU.prototype.copy.call(this,t,e),this.matrixWorldInverse.copy(t.matrixWorldInverse),this.projectionMatrix.copy(t.projectionMatrix),this.projectionMatrixInverse.copy(t.projectionMatrixInverse),this},getWorldDirection:function(t){void 0===t&&(console.warn("THREE.Camera: .getWorldDirection() target is now required"),t=new n8),this.updateMatrixWorld(!0);var e=this.matrixWorld.elements;return t.set(-e[8],-e[9],-e[10]).normalize()},updateMatrixWorld:function(t){nU.prototype.updateMatrixWorld.call(this,t),this.matrixWorldInverse.getInverse(this.matrixWorld)},clone:function(){return(new this.constructor).copy(this)}}),ry.prototype=Object.assign(Object.create(r$.prototype),{constructor:ry,isPerspectiveCamera:!0,copy:function(t,e){return r$.prototype.copy.call(this,t,e),this.fov=t.fov,this.zoom=t.zoom,this.near=t.near,this.far=t.far,this.focus=t.focus,this.aspect=t.aspect,this.view=null===t.view?null:Object.assign({},t.view),this.filmGauge=t.filmGauge,this.filmOffset=t.filmOffset,this},setFocalLength:function(t){var e=.5*this.getFilmHeight()/t;this.fov=2*nv.RAD2DEG*Math.atan(e),this.updateProjectionMatrix()},getFocalLength:function(){var t=Math.tan(.5*nv.DEG2RAD*this.fov);return .5*this.getFilmHeight()/t},getEffectiveFOV:function(){return 2*nv.RAD2DEG*Math.atan(Math.tan(.5*nv.DEG2RAD*this.fov)/this.zoom)},getFilmWidth:function(){return this.filmGauge*Math.min(this.aspect,1)},getFilmHeight:function(){return this.filmGauge/Math.max(this.aspect,1)},setViewOffset:function(t,e,n,i,r,o){this.aspect=t/e,null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=o,this.updateProjectionMatrix()},clearViewOffset:function(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()},updateProjectionMatrix:function(){var t=this.near,e=t*Math.tan(.5*nv.DEG2RAD*this.fov)/this.zoom,n=2*e,i=this.aspect*n,r=-.5*i,o=this.view;if(null!==this.view&&this.view.enabled){var a=o.fullWidth,s=o.fullHeight;r+=o.offsetX*i/a,e-=o.offsetY*n/s,i*=o.width/a,n*=o.height/s}var u=this.filmOffset;0!==u&&(r+=t*u/this.getFilmWidth()),this.projectionMatrix.makePerspective(r,r+i,e,e-n,t,this.far),this.projectionMatrixInverse.getInverse(this.projectionMatrix)},toJSON:function(t){var e=nU.prototype.toJSON.call(this,t);return e.object.fov=this.fov,e.object.zoom=this.zoom,e.object.near=this.near,e.object.far=this.far,e.object.focus=this.focus,e.object.aspect=this.aspect,null!==this.view&&(e.object.view=Object.assign({},this.view)),e.object.filmGauge=this.filmGauge,e.object.filmOffset=this.filmOffset,e}}),r_.prototype=Object.assign(Object.create(ry.prototype),{constructor:r_,isArrayCamera:!0});var r8,rx,rb,rw,rA,rT,rS,rE,r0,rP,rC,rL,rM,r1,rR,r3,rI,rD,rN,rB,rO,rG,rk,rV,rz,rU,r2,rH,rF,r5,r4,r6,rW,r7,rX,rY,rK,rj,rZ,rq,rQ,rJ,r9,ot,oe,on,oi,or,oo,oa,os,ou,ol,oh,oc,op,od,of,om,og,ov,o$,oy,o_,o8,ox,ob,ow,oA,oT,oS,oE,o0,oP,oC,oL,oM,o1,oR,o3,oI,oD,oN,oB,oO,oG,ok,oV,oz,oU,o2,oH,oF,o5,o4,o6,oW,o7,oX,oY,oK,oj,oZ,oq=new n8,oQ=new n8;function oJ(t,e,n){oq.setFromMatrixPosition(e.matrixWorld),oQ.setFromMatrixPosition(n.matrixWorld);var i=oq.distanceTo(oQ),r=e.projectionMatrix.elements,o=n.projectionMatrix.elements,a=r[14]/(r[10]-1),s=r[14]/(r[10]+1),u=(r[9]+1)/r[5],l=(r[9]-1)/r[5],h=(r[8]-1)/r[0],c=(o[8]+1)/o[0],p=i/(-h+c),d=-(p*h);e.matrixWorld.decompose(t.position,t.quaternion,t.scale),t.translateX(d),t.translateZ(p),t.matrixWorld.compose(t.position,t.quaternion,t.scale),t.matrixWorldInverse.getInverse(t.matrixWorld);var f=a+p,m=s+p;t.projectionMatrix.makePerspective(a*h-d,a*c+(i-d),u*s/m*f,l*s/m*f,f,m)}function o9(t){var e=this,n=null,i=null,r=null,o=[],a=new ny,s=new ny,u=1,l="stage";"undefined"!=typeof window&&"VRFrameData"in window&&(i=new window.VRFrameData,window.addEventListener("vrdisplaypresentchange",y,!1));var h=new ny,c=new n_,p=new n8,d=new ry;d.bounds=new nT(0,0,.5,1),d.layers.enable(1);var f=new ry;f.bounds=new nT(.5,0,.5,1),f.layers.enable(2);var m,g,v=new r_([d,f]);function $(){return null!==n&&!0===n.isPresenting}function y(){if($()){var i=n.getEyeParameters("left"),r=i.renderWidth*u,o=i.renderHeight*u;g=t.getPixelRatio(),m=t.getSize(),t.setDrawingBufferSize(2*r,o,1),b.start()}else e.enabled&&t.setDrawingBufferSize(m.width,m.height,g),b.stop()}v.layers.enable(1),v.layers.enable(2);var _=[];function x(t){for(var e=navigator.getGamepads&&navigator.getGamepads(),n=0,i=0,r=e.length;n<r;n++){var o=e[n];if(o&&("Daydream Controller"===o.id||"Gear VR Controller"===o.id||"Oculus Go Controller"===o.id||"OpenVR Gamepad"===o.id||o.id.startsWith("Oculus Touch")||o.id.startsWith("Spatial Controller"))){if(i===t)return o;i++}}}this.enabled=!1,this.getController=function(t){var e=o[t];return void 0===e&&((e=new rv).matrixAutoUpdate=!1,e.visible=!1,o[t]=e),e},this.getDevice=function(){return n},this.setDevice=function(t){void 0!==t&&(n=t),b.setContext(t)},this.setFramebufferScaleFactor=function(t){u=t},this.setFrameOfReferenceType=function(t){l=t},this.setPoseTarget=function(t){void 0!==t&&(r=t)},this.getCamera=function(t){var e="stage"===l?1.6:0;if(null===n)return t.position.set(0,e,0),t;if(n.depthNear=t.near,n.depthFar=t.far,n.getFrameData(i),"stage"===l){var u=n.stageParameters;u?a.fromArray(u.sittingToStandingTransform):a.makeTranslation(0,e,0)}var m=i.pose,g=null!==r?r:t;if(g.matrix.copy(a),g.matrix.decompose(g.position,g.quaternion,g.scale),null!==m.orientation&&(c.fromArray(m.orientation),g.quaternion.multiply(c)),null!==m.position&&(c.setFromRotationMatrix(a),p.fromArray(m.position),p.applyQuaternion(c),g.position.add(p)),g.updateMatrixWorld(),!1===n.isPresenting)return t;d.near=t.near,f.near=t.near,d.far=t.far,f.far=t.far,d.matrixWorldInverse.fromArray(i.leftViewMatrix),f.matrixWorldInverse.fromArray(i.rightViewMatrix),s.getInverse(a),"stage"===l&&(d.matrixWorldInverse.multiply(s),f.matrixWorldInverse.multiply(s));var $=g.parent;null!==$&&(h.getInverse($.matrixWorld),d.matrixWorldInverse.multiply(h),f.matrixWorldInverse.multiply(h)),d.matrixWorld.getInverse(d.matrixWorldInverse),f.matrixWorld.getInverse(f.matrixWorldInverse),d.projectionMatrix.fromArray(i.leftProjectionMatrix),f.projectionMatrix.fromArray(i.rightProjectionMatrix),oJ(v,d,f);var y=n.getLayers();if(y.length){var b=y[0];null!==b.leftBounds&&4===b.leftBounds.length&&d.bounds.fromArray(b.leftBounds),null!==b.rightBounds&&4===b.rightBounds.length&&f.bounds.fromArray(b.rightBounds)}return function(){for(var t=0;t<o.length;t++){var e=o[t],n=x(t);if(void 0!==n&&void 0!==n.pose){if(null===n.pose)return;var i=n.pose;!1===i.hasPosition&&e.position.set(.2,-.6,-.05),null!==i.position&&e.position.fromArray(i.position),null!==i.orientation&&e.quaternion.fromArray(i.orientation),e.matrix.compose(e.position,e.quaternion,e.scale),e.matrix.premultiply(a),e.matrix.decompose(e.position,e.quaternion,e.scale),e.matrixWorldNeedsUpdate=!0,e.visible=!0;var r="Daydream Controller"===n.id?0:1;_[t]!==n.buttons[r].pressed&&(_[t]=n.buttons[r].pressed,!0===_[t]?e.dispatchEvent({type:"selectstart"}):(e.dispatchEvent({type:"selectend"}),e.dispatchEvent({type:"select"})))}else e.visible=!1}}(),v},this.getStandingMatrix=function(){return a},this.isPresenting=$;var b=new nB;this.setAnimationLoop=function(t){b.setAnimationLoop(t)},this.submitFrame=function(){$()&&n.submitFrame()},this.dispose=function(){"undefined"!=typeof window&&window.removeEventListener("vrdisplaypresentchange",y)}}function at(e){console.log("THREE.WebGLRenderer",ti);var n,i,r,o=void 0!==(e=e||{}).canvas?e.canvas:document.createElementNS("http://www.w3.org/1999/xhtml","canvas"),a=void 0!==e.context?e.context:null,s=void 0!==e.alpha&&e.alpha,u=void 0===e.depth||e.depth,l=void 0===e.stencil||e.stencil,h=void 0!==e.antialias&&e.antialias,c=void 0===e.premultipliedAlpha||e.premultipliedAlpha,p=void 0!==e.preserveDrawingBuffer&&e.preserveDrawingBuffer,d=void 0!==e.powerPreference?e.powerPreference:"default",f=null,m=null;this.domElement=o,this.context=null,this.autoClear=!0,this.autoClearColor=!0,this.autoClearDepth=!0,this.autoClearStencil=!0,this.sortObjects=!0,this.clippingPlanes=[],this.localClippingEnabled=!1,this.gammaFactor=2,this.gammaInput=!1,this.gammaOutput=!1,this.physicallyCorrectLights=!1,this.toneMapping=tY,this.toneMappingExposure=1,this.toneMappingWhitePoint=1,this.maxMorphTargets=8,this.maxMorphNormals=4;var g,v,$,y,_,x,b,w,A,T,S,E,P,C,L,M,R,I,D=this,N=!1,B=null,O=null,G=null,k=-1,V={geometry:null,program:null,wireframe:!1},z=null,U=null,H=new nT,F=new nT,W=null,X=0,Y=o.width,K=o.height,j=1,Z=new nT(0,0,Y,K),q=new nT(0,0,Y,K),Q=!1,J=new nM,tt=new function(){var t=this,e=null,n=0,i=!1,r=!1,o=new nL,a=new nx,s={value:null,needsUpdate:!1};function u(){s.value!==e&&(s.value=e,s.needsUpdate=n>0),t.numPlanes=n,t.numIntersection=0}function l(e,n,i,r){var u=null!==e?e.length:0,l=null;if(0!==u){if(l=s.value,!0!==r||null===l){var h=i+4*u,c=n.matrixWorldInverse;a.getNormalMatrix(c),(null===l||l.length<h)&&(l=new Float32Array(h));for(var p=0,d=i;p!==u;++p,d+=4)o.copy(e[p]).applyMatrix4(c,a),o.normal.toArray(l,d),l[d+3]=o.constant}s.value=l,s.needsUpdate=!0}return t.numPlanes=u,l}this.uniform=s,this.numPlanes=0,this.numIntersection=0,this.init=function(t,r,o){var a=0!==t.length||r||0!==n||i;return i=r,e=l(t,o,0),n=t.length,a},this.beginShadows=function(){r=!0,l(null)},this.endShadows=function(){r=!1,u()},this.setState=function(t,o,a,h,c,p){if(i&&null!==t&&0!==t.length&&(!r||a)){var d=r?0:n,f=4*d,m=c.clippingState||null;s.value=m,m=l(t,h,f,p);for(var g=0;g!==f;++g)m[g]=e[g];c.clippingState=m,this.numIntersection=o?this.numPlanes:0,this.numPlanes+=d}else r?l(null):u()}},te=!1,tn=!1,tr=new ny,tu=new n8;function tl(){return null===O?j:1}try{var th={alpha:s,depth:u,stencil:l,antialias:h,premultipliedAlpha:c,preserveDrawingBuffer:p,powerPreference:d};if(o.addEventListener("webglcontextlost",t$,!1),o.addEventListener("webglcontextrestored",ty,!1),null===(g=a||o.getContext("webgl",th)||o.getContext("experimental-webgl",th)))throw null!==o.getContext("webgl")?Error("Error creating WebGL context with your selected attributes."):Error("Error creating WebGL context.");void 0===g.getShaderPrecisionFormat&&(g.getShaderPrecisionFormat=function(){return{rangeMin:1,rangeMax:1,precision:1}})}catch(tc){console.error("THREE.WebGLRenderer: "+tc.message)}function tp(){v=new function(t){var e={};return{get:function(n){var i;if(void 0!==e[n])return e[n];switch(n){case"WEBGL_depth_texture":i=t.getExtension("WEBGL_depth_texture")||t.getExtension("MOZ_WEBGL_depth_texture")||t.getExtension("WEBKIT_WEBGL_depth_texture");break;case"EXT_texture_filter_anisotropic":i=t.getExtension("EXT_texture_filter_anisotropic")||t.getExtension("MOZ_EXT_texture_filter_anisotropic")||t.getExtension("WEBKIT_EXT_texture_filter_anisotropic");break;case"WEBGL_compressed_texture_s3tc":i=t.getExtension("WEBGL_compressed_texture_s3tc")||t.getExtension("MOZ_WEBGL_compressed_texture_s3tc")||t.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");break;case"WEBGL_compressed_texture_pvrtc":i=t.getExtension("WEBGL_compressed_texture_pvrtc")||t.getExtension("WEBKIT_WEBGL_compressed_texture_pvrtc");break;default:i=t.getExtension(n)}return null===i&&console.warn("THREE.WebGLRenderer: "+n+" extension not supported."),e[n]=i,i}}}(g),($=new function(t,e,n){function i(e){if("highp"===e){if(t.getShaderPrecisionFormat(35633,36338).precision>0&&t.getShaderPrecisionFormat(35632,36338).precision>0)return"highp";e="mediump"}return"mediump"===e&&t.getShaderPrecisionFormat(35633,36337).precision>0&&t.getShaderPrecisionFormat(35632,36337).precision>0?"mediump":"lowp"}var r,o="undefined"!=typeof WebGL2RenderingContext&&t instanceof WebGL2RenderingContext,a=void 0!==n.precision?n.precision:"highp",s=i(a);s!==a&&(console.warn("THREE.WebGLRenderer:",a,"not supported, using",s,"instead."),a=s);var u=!0===n.logarithmicDepthBuffer,l=t.getParameter(34930),h=t.getParameter(35660),c=t.getParameter(3379),p=t.getParameter(34076),d=t.getParameter(34921),f=t.getParameter(36347),m=t.getParameter(36348),g=t.getParameter(36349),v=h>0,$=o||!!e.get("OES_texture_float");return{isWebGL2:o,getMaxAnisotropy:function(){if(void 0!==r)return r;var n=e.get("EXT_texture_filter_anisotropic");return r=null!==n?t.getParameter(n.MAX_TEXTURE_MAX_ANISOTROPY_EXT):0},getMaxPrecision:i,precision:a,logarithmicDepthBuffer:u,maxTextures:l,maxVertexTextures:h,maxTextureSize:c,maxCubemapSize:p,maxAttributes:d,maxVertexUniforms:f,maxVaryings:m,maxFragmentUniforms:g,vertexTextures:v,floatFragmentTextures:$,floatVertexTextures:v&&$}}(g,v,e)).isWebGL2||(v.get("WEBGL_depth_texture"),v.get("OES_texture_float"),v.get("OES_texture_half_float"),v.get("OES_texture_half_float_linear"),v.get("OES_standard_derivatives"),v.get("OES_element_index_uint"),v.get("ANGLE_instanced_arrays")),v.get("OES_texture_float_linear"),I=new rg(g,v,$),(y=new function(t,e,n,i){var r=new function(){var e=!1,n=new nT,i=null,r=new nT(0,0,0,0);return{setMask:function(n){i===n||e||(t.colorMask(n,n,n,n),i=n)},setLocked:function(t){e=t},setClear:function(e,i,o,a,s){!0===s&&(e*=a,i*=a,o*=a),n.set(e,i,o,a),!1===r.equals(n)&&(t.clearColor(e,i,o,a),r.copy(n))},reset:function(){e=!1,i=null,r.set(-1,0,0,0)}}},o=new function(){var e=!1,n=null,i=null,r=null;return{setTest:function(t){t?k(2929):V(2929)},setMask:function(i){n===i||e||(t.depthMask(i),n=i)},setFunc:function(e){if(i!==e){if(e)switch(e){case tV:t.depthFunc(512);break;case tz:t.depthFunc(519);break;case tU:t.depthFunc(513);break;case t2:t.depthFunc(515);break;case tH:t.depthFunc(514);break;case tF:t.depthFunc(518);break;case t5:t.depthFunc(516);break;case t4:t.depthFunc(517);break;default:t.depthFunc(515)}else t.depthFunc(515);i=e}},setLocked:function(t){e=t},setClear:function(e){r!==e&&(t.clearDepth(e),r=e)},reset:function(){e=!1,n=null,i=null,r=null}}},a=new function(){var e=!1,n=null,i=null,r=null,o=null,a=null,s=null,u=null,l=null;return{setTest:function(t){t?k(2960):V(2960)},setMask:function(i){n===i||e||(t.stencilMask(i),n=i)},setFunc:function(e,n,a){i===e&&r===n&&o===a||(t.stencilFunc(e,n,a),i=e,r=n,o=a)},setOp:function(e,n,i){a===e&&s===n&&u===i||(t.stencilOp(e,n,i),a=e,s=n,u=i)},setLocked:function(t){e=t},setClear:function(e){l!==e&&(t.clearStencil(e),l=e)},reset:function(){e=!1,n=null,i=null,r=null,o=null,a=null,s=null,u=null,l=null}}},s=t.getParameter(34921),u=new Uint8Array(s),l=new Uint8Array(s),h=new Uint8Array(s),c={},p=null,d=null,f=null,m=null,g=null,v=null,$=null,y=null,_=null,x=null,b=!1,w=null,A=null,T=null,S=null,E=null,P=t.getParameter(35661),C=!1,L=0,M=t.getParameter(7938);-1!==M.indexOf("WebGL")?C=(L=parseFloat(/^WebGL\ ([0-9])/.exec(M)[1]))>=1:-1!==M.indexOf("OpenGL ES")&&(C=(L=parseFloat(/^OpenGL\ ES\ ([0-9])/.exec(M)[1]))>=2);var R=null,I={},D=new nT,N=new nT;function B(e,n,i){var r=new Uint8Array(4),o=t.createTexture();t.bindTexture(e,o),t.texParameteri(e,10241,9728),t.texParameteri(e,10240,9728);for(var a=0;a<i;a++)t.texImage2D(n+a,0,6408,1,1,0,6408,5121,r);return o}var O={};function G(n,r){u[n]=1,0===l[n]&&(t.enableVertexAttribArray(n),l[n]=1),h[n]!==r&&((i.isWebGL2?t:e.get("ANGLE_instanced_arrays"))[i.isWebGL2?"vertexAttribDivisor":"vertexAttribDivisorANGLE"](n,r),h[n]=r)}function k(e){!0!==c[e]&&(t.enable(e),c[e]=!0)}function V(e){!1!==c[e]&&(t.disable(e),c[e]=!1)}function z(e,i,r,o,a,s,u,l){if(e!==tx){if(f||(k(3042),f=!0),e===tS)a=a||i,s=s||r,u=u||o,i===g&&a===y||(t.blendEquationSeparate(n.convert(i),n.convert(a)),g=i,y=a),r===v&&o===$&&s===_&&u===x||(t.blendFuncSeparate(n.convert(r),n.convert(o),n.convert(s),n.convert(u)),v=r,$=o,_=s,x=u),m=e,b=null;else if(e!==m||l!==b){if(g===tE&&y===tE||(t.blendEquation(32774),g=tE,y=tE),l)switch(e){case tb:t.blendFuncSeparate(1,771,1,771);break;case tw:t.blendFunc(1,1);break;case tA:t.blendFuncSeparate(0,0,769,771);break;case tT:t.blendFuncSeparate(0,768,0,770);break;default:console.error("THREE.WebGLState: Invalid blending: ",e)}else switch(e){case tb:t.blendFuncSeparate(770,771,1,771);break;case tw:t.blendFunc(770,1);break;case tA:t.blendFunc(0,769);break;case tT:t.blendFunc(0,768);break;default:console.error("THREE.WebGLState: Invalid blending: ",e)}v=null,$=null,_=null,x=null,m=e,b=l}}else f&&(V(3042),f=!1)}function U(e){w!==e&&(e?t.frontFace(2304):t.frontFace(2305),w=e)}function H(e){e!==to?(k(2884),e!==A&&(e===ta?t.cullFace(1029):e===ts?t.cullFace(1028):t.cullFace(1032))):V(2884),A=e}function F(e,n,i){e?(k(32823),S===n&&E===i||(t.polygonOffset(n,i),S=n,E=i)):V(32823)}function W(e){void 0===e&&(e=33984+P-1),R!==e&&(t.activeTexture(e),R=e)}return O[3553]=B(3553,3553,1),O[34067]=B(34067,34069,6),r.setClear(0,0,0,1),o.setClear(1),a.setClear(0),k(2929),o.setFunc(t2),U(!1),H(ta),k(2884),z(tx),{buffers:{color:r,depth:o,stencil:a},initAttributes:function(){for(var t=0,e=u.length;t<e;t++)u[t]=0},enableAttribute:function(t){G(t,0)},enableAttributeAndDivisor:G,disableUnusedAttributes:function(){for(var e=0,n=l.length;e!==n;++e)l[e]!==u[e]&&(t.disableVertexAttribArray(e),l[e]=0)},enable:k,disable:V,getCompressedTextureFormats:function(){if(null===p&&(p=[],e.get("WEBGL_compressed_texture_pvrtc")||e.get("WEBGL_compressed_texture_s3tc")||e.get("WEBGL_compressed_texture_etc1")||e.get("WEBGL_compressed_texture_astc")))for(var n=t.getParameter(34467),i=0;i<n.length;i++)p.push(n[i]);return p},useProgram:function(e){return d!==e&&(t.useProgram(e),d=e,!0)},setBlending:z,setMaterial:function(t,e){t.side===tg?V(2884):k(2884);var n=t.side===tm;e&&(n=!n),U(n),t.blending===tb&&!1===t.transparent?z(tx):z(t.blending,t.blendEquation,t.blendSrc,t.blendDst,t.blendEquationAlpha,t.blendSrcAlpha,t.blendDstAlpha,t.premultipliedAlpha),o.setFunc(t.depthFunc),o.setTest(t.depthTest),o.setMask(t.depthWrite),r.setMask(t.colorWrite),F(t.polygonOffset,t.polygonOffsetFactor,t.polygonOffsetUnits)},setFlipSided:U,setCullFace:H,setLineWidth:function(e){e!==T&&(C&&t.lineWidth(e),T=e)},setPolygonOffset:F,setScissorTest:function(t){t?k(3089):V(3089)},activeTexture:W,bindTexture:function(e,n){null===R&&W();var i=I[R];void 0===i&&(i={type:void 0,texture:void 0},I[R]=i),i.type===e&&i.texture===n||(t.bindTexture(e,n||O[e]),i.type=e,i.texture=n)},compressedTexImage2D:function(){try{t.compressedTexImage2D.apply(t,arguments)}catch(e){console.error("THREE.WebGLState:",e)}},texImage2D:function(){try{t.texImage2D.apply(t,arguments)}catch(e){console.error("THREE.WebGLState:",e)}},texImage3D:function(){try{t.texImage3D.apply(t,arguments)}catch(e){console.error("THREE.WebGLState:",e)}},scissor:function(e){!1===D.equals(e)&&(t.scissor(e.x,e.y,e.z,e.w),D.copy(e))},viewport:function(e){!1===N.equals(e)&&(t.viewport(e.x,e.y,e.z,e.w),N.copy(e))},reset:function(){for(var e=0;e<l.length;e++)1===l[e]&&(t.disableVertexAttribArray(e),l[e]=0);c={},p=null,R=null,I={},d=null,m=null,w=null,A=null,r.reset(),o.reset(),a.reset()}}}(g,v,I,$)).scissor(F.copy(q).multiplyScalar(j)),y.viewport(H.copy(Z).multiplyScalar(j)),_=new function(t){var e={frame:0,calls:0,triangles:0,points:0,lines:0};return{memory:{geometries:0,textures:0},render:e,programs:null,autoReset:!0,reset:function(){e.frame++,e.calls=0,e.triangles=0,e.points=0,e.lines=0},update:function(t,n,i){switch(i=i||1,e.calls++,n){case 4:e.triangles+=i*(t/3);break;case 5:case 6:e.triangles+=i*(t-2);break;case 1:e.lines+=i*(t/2);break;case 3:e.lines+=i*(t-1);break;case 2:e.lines+=i*t;break;case 0:e.points+=i*t;break;default:console.error("THREE.WebGLInfo: Unknown draw mode:",n)}}}}(g),x=new function(){var t=new WeakMap;return{get:function(e){var n=t.get(e);return void 0===n&&(n={},t.set(e,n)),n},remove:function(e){t.delete(e)},update:function(e,n,i){t.get(e)[n]=i},dispose:function(){t=new WeakMap}}},b=new rm(g,v,y,x,$,I,_),w=new nO(g),A=new function(t,e,n){var i={},r={};function o(t){var a=t.target,s=i[a.id];for(var u in null!==s.index&&e.remove(s.index),s.attributes)e.remove(s.attributes[u]);a.removeEventListener("dispose",o),delete i[a.id];var l=r[s.id];l&&(e.remove(l),delete r[s.id]),n.memory.geometries--}return{get:function(t,e){var r=i[e.id];return r||(e.addEventListener("dispose",o),e.isBufferGeometry?r=e:e.isGeometry&&(void 0===e._bufferGeometry&&(e._bufferGeometry=(new nJ).setFromObject(t)),r=e._bufferGeometry),i[e.id]=r,n.memory.geometries++,r)},update:function(t){var n=t.index,i=t.attributes;for(var r in null!==n&&e.update(n,34963),i)e.update(i[r],34962);var o=t.morphAttributes;for(var r in o)for(var a=o[r],s=0,u=a.length;s<u;s++)e.update(a[s],34962)},getWireframeAttribute:function(t){var n=r[t.id];if(n)return n;var i,o=[],a=t.index,s=t.attributes;if(null!==a)for(var u=0,l=(i=a.array).length;u<l;u+=3){var h=i[u+0],c=i[u+1],p=i[u+2];o.push(h,c,c,p,p,h)}else for(u=0,l=(i=s.position.array).length/3-1;u<l;u+=3)h=u+0,c=u+1,p=u+2,o.push(h,c,c,p,p,h);return n=new(nq(o)>65535?nY:n7)(o,1),e.update(n,34963),r[t.id]=n,n}}}(g,w,_),T=new function(t,e){var n={};return{update:function(i){var r=e.render.frame,o=i.geometry,a=t.get(i,o);return n[a.id]!==r&&(o.isGeometry&&a.updateFromObject(i),t.update(a),n[a.id]=r),a},dispose:function(){n={}}}}(A,_),L=new function(t){var e={},n=new Float32Array(8);return{update:function(i,r,o,a){var s,u=i.morphTargetInfluences,l=u.length,h=e[r.id];if(void 0===h){h=[];for(var c=0;c<l;c++)h[c]=[c,0];e[r.id]=h}var p=o.morphTargets&&r.morphAttributes.position,d=o.morphNormals&&r.morphAttributes.normal;for(c=0;c<l;c++)0!==(s=h[c])[1]&&(p&&r.removeAttribute("morphTarget"+c),d&&r.removeAttribute("morphNormal"+c));for(c=0;c<l;c++)(s=h[c])[0]=c,s[1]=u[c];for(h.sort(ic),c=0;c<8;c++){if(s=h[c]){var f=s[0],m=s[1];if(m){p&&r.addAttribute("morphTarget"+c,p[f]),d&&r.addAttribute("morphNormal"+c,d[f]),n[c]=m;continue}}n[c]=0}a.getUniforms().setValue(t,"morphTargetInfluences",n)}}}(g),S=new ro(D,v,$),E=new ru,P=new function(){var t={};return{get:function(e,n){var i;return void 0===t[e.id]?(i=new rc,t[e.id]={},t[e.id][n.id]=i):void 0===t[e.id][n.id]?(i=new rc,t[e.id][n.id]=i):i=t[e.id][n.id],i},dispose:function(){t={}}}},C=new function(t,e,n,i){var r,o,a=new nI(0),s=0;function u(t,n){e.buffers.color.setClear(t.r,t.g,t.b,n,i)}return{getClearColor:function(){return a},setClearColor:function(t,e){a.set(t),u(a,s=void 0!==e?e:1)},getClearAlpha:function(){return s},setClearAlpha:function(t){u(a,s=t)},render:function(e,i,l,h){var c=i.background;null===c?u(a,s):c&&c.isColor&&(u(c,1),h=!0),(t.autoClear||h)&&t.clear(t.autoClearColor,t.autoClearDepth,t.autoClearStencil),c&&(c.isCubeTexture||c.isWebGLRenderTargetCube)?(void 0===o&&((o=new ih(new it(1,1,1),new ia({type:"BackgroundCubeMaterial",uniforms:nR.clone(nN.cube.uniforms),vertexShader:nN.cube.vertexShader,fragmentShader:nN.cube.fragmentShader,side:tm,depthTest:!0,depthWrite:!1,fog:!1}))).geometry.removeAttribute("normal"),o.geometry.removeAttribute("uv"),o.onBeforeRender=function(t,e,n){this.matrixWorld.copyPosition(n.matrixWorld)},n.update(o)),o.material.uniforms.tCube.value=c.isWebGLRenderTargetCube?c.texture:c,o.material.uniforms.tFlip.value=c.isWebGLRenderTargetCube?1:-1,e.push(o,o.geometry,o.material,0,null)):c&&c.isTexture&&(void 0===r&&((r=new ih(new ii(2,2),new ia({type:"BackgroundMaterial",uniforms:nR.clone(nN.background.uniforms),vertexShader:nN.background.vertexShader,fragmentShader:nN.background.fragmentShader,side:tf,depthTest:!0,depthWrite:!1,fog:!1}))).geometry.removeAttribute("normal"),n.update(r)),r.material.uniforms.t2D.value=c,!0===c.matrixAutoUpdate&&c.updateMatrix(),r.material.uniforms.uvTransform.value.copy(c.matrix),e.push(r,r.geometry,r.material,0,null))}}}(D,y,T,c),M=new function(t,e,n,i){var r;this.setMode=function(t){r=t},this.render=function(e,i){t.drawArrays(r,e,i),n.update(i,r)},this.renderInstances=function(o,a,s){var u;if(i.isWebGL2)u=t;else if(null===(u=e.get("ANGLE_instanced_arrays")))return void console.error("THREE.WebGLBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");u[i.isWebGL2?"drawArraysInstanced":"drawArraysInstancedANGLE"](r,a,s,o.maxInstancedCount),n.update(s,r,o.maxInstancedCount)}}(g,v,_,$),R=new function(t,e,n,i){var r,o,a;this.setMode=function(t){r=t},this.setIndex=function(t){o=t.type,a=t.bytesPerElement},this.render=function(e,i){t.drawElements(r,i,o,e*a),n.update(i,r)},this.renderInstances=function(s,u,l){var h;if(i.isWebGL2)h=t;else if(null===(h=e.get("ANGLE_instanced_arrays")))return void console.error("THREE.WebGLIndexedBufferRenderer: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");h[i.isWebGL2?"drawElementsInstanced":"drawElementsInstancedANGLE"](r,l,o,u*a,s.maxInstancedCount),n.update(l,r,s.maxInstancedCount)}}(g,v,_,$),_.programs=S.programs,D.context=g,D.capabilities=$,D.extensions=v,D.properties=x,D.renderLists=E,D.state=y,D.info=_}tp();var td=null;"undefined"!=typeof navigator&&(td="xr"in navigator?new function(e){var n=e.context,i=null,r=null,o=1,a=null,s="stage",u=null,l=[],h=[];function c(){return null!==r&&null!==a}var p=new ry;p.layers.enable(1),p.viewport=new nT;var d=new ry;d.layers.enable(2),d.viewport=new nT;var f=new r_([p,d]);function m(t){var e=l[h.indexOf(t.inputSource)];e&&e.dispatchEvent({type:t.type})}function g(){e.setFramebuffer(null),y.stop()}function v(t,e){null===e?t.matrixWorld.copy(t.matrix):t.matrixWorld.multiplyMatrices(e.matrixWorld,t.matrix),t.matrixWorldInverse.getInverse(t.matrixWorld)}f.layers.enable(1),f.layers.enable(2),this.enabled=!1,this.getController=function(t){var e=l[t];return void 0===e&&((e=new rv).matrixAutoUpdate=!1,e.visible=!1,l[t]=e),e},this.getDevice=function(){return i},this.setDevice=function(t){void 0!==t&&(i=t),t instanceof XRDevice&&n.setCompatibleXRDevice(t)},this.setFramebufferScaleFactor=function(t){o=t},this.setFrameOfReferenceType=function(t){s=t},this.setSession=function(t){null!==(r=t)&&(r.addEventListener("select",m),r.addEventListener("selectstart",m),r.addEventListener("selectend",m),r.addEventListener("end",g),r.baseLayer=new XRWebGLLayer(r,n,{framebufferScaleFactor:o}),r.requestFrameOfReference(s).then(function(t){a=t,e.setFramebuffer(r.baseLayer.framebuffer),y.setContext(r),y.start()}),h=r.getInputSources(),r.addEventListener("inputsourceschange",function(){h=r.getInputSources(),console.log(h);for(var t=0;t<l.length;t++)l[t].userData.inputSource=h[t]}))},this.getCamera=function(t){if(c()){var e=t.parent,n=f.cameras;v(f,e);for(var i=0;i<n.length;i++)v(n[i],e);t.matrixWorld.copy(f.matrixWorld);for(var r=t.children,o=(i=0,r.length);i<o;i++)r[i].updateMatrixWorld(!0);return oJ(f,p,d),f}return t},this.isPresenting=c;var $=null,y=new nB;y.setAnimationLoop(function(t,e){if(null!==(u=e.getDevicePose(a)))for(var n=r.baseLayer,i=e.views,o=0;o<i.length;o++){var s=i[o],c=n.getViewport(s),p=u.getViewMatrix(s),d=f.cameras[o];d.matrix.fromArray(p).getInverse(d.matrix),d.projectionMatrix.fromArray(s.projectionMatrix),d.viewport.set(c.x,c.y,c.width,c.height),0===o&&f.matrix.copy(d.matrix)}for(o=0;o<l.length;o++){var m=l[o],g=h[o];if(g){var v=e.getInputPose(g,a);if(null!==v){"targetRay"in v?m.matrix.elements=v.targetRay.transformMatrix:"pointerMatrix"in v&&(m.matrix.elements=v.pointerMatrix),m.matrix.decompose(m.position,m.rotation,m.scale),m.visible=!0;continue}}m.visible=!1}$&&$(t)}),this.setAnimationLoop=function(t){$=t},this.dispose=function(){},this.getStandingMatrix=function(){return console.warn("THREE.WebXRManager: getStandingMatrix() is no longer needed."),new t.Matrix4},this.submitFrame=function(){}}(D):new o9(D)),this.vr=td;var tv=new rf(D,T,$.maxTextureSize);function t$(t){t.preventDefault(),console.log("THREE.WebGLRenderer: Context Lost."),N=!0}function ty(){console.log("THREE.WebGLRenderer: Context Restored."),N=!1,tp()}function t_(t){var e,n=t.target;n.removeEventListener("dispose",t_),t8(e=n),x.remove(e)}function t8(t){var e=x.get(t).program;t.program=void 0,void 0!==e&&S.releaseProgram(e)}this.shadowMap=tv,this.getContext=function(){return g},this.getContextAttributes=function(){return g.getContextAttributes()},this.forceContextLoss=function(){var t=v.get("WEBGL_lose_context");t&&t.loseContext()},this.forceContextRestore=function(){var t=v.get("WEBGL_lose_context");t&&t.restoreContext()},this.getPixelRatio=function(){return j},this.setPixelRatio=function(t){void 0!==t&&(j=t,this.setSize(Y,K,!1))},this.getSize=function(){return{width:Y,height:K}},this.setSize=function(t,e,n){td.isPresenting()?console.warn("THREE.WebGLRenderer: Can't change size while VR device is presenting."):(Y=t,K=e,o.width=t*j,o.height=e*j,!1!==n&&(o.style.width=t+"px",o.style.height=e+"px"),this.setViewport(0,0,t,e))},this.getDrawingBufferSize=function(){return{width:Y*j,height:K*j}},this.setDrawingBufferSize=function(t,e,n){Y=t,K=e,j=n,o.width=t*n,o.height=e*n,this.setViewport(0,0,t,e)},this.getCurrentViewport=function(){return H},this.setViewport=function(t,e,n,i){Z.set(t,K-e-i,n,i),y.viewport(H.copy(Z).multiplyScalar(j))},this.setScissor=function(t,e,n,i){q.set(t,K-e-i,n,i),y.scissor(F.copy(q).multiplyScalar(j))},this.setScissorTest=function(t){y.setScissorTest(Q=t)},this.getClearColor=function(){return C.getClearColor()},this.setClearColor=function(){C.setClearColor.apply(C,arguments)},this.getClearAlpha=function(){return C.getClearAlpha()},this.setClearAlpha=function(){C.setClearAlpha.apply(C,arguments)},this.clear=function(t,e,n){var i=0;(void 0===t||t)&&(i|=16384),(void 0===e||e)&&(i|=256),(void 0===n||n)&&(i|=1024),g.clear(i)},this.clearColor=function(){this.clear(!0,!1,!1)},this.clearDepth=function(){this.clear(!1,!0,!1)},this.clearStencil=function(){this.clear(!1,!1,!0)},this.dispose=function(){o.removeEventListener("webglcontextlost",t$,!1),o.removeEventListener("webglcontextrestored",ty,!1),E.dispose(),P.dispose(),x.dispose(),T.dispose(),td.dispose(),tP.stop()},this.renderBufferImmediate=function(t,e){y.initAttributes();var n=x.get(t);t.hasPositions&&!n.position&&(n.position=g.createBuffer()),t.hasNormals&&!n.normal&&(n.normal=g.createBuffer()),t.hasUvs&&!n.uv&&(n.uv=g.createBuffer()),t.hasColors&&!n.color&&(n.color=g.createBuffer());var i=e.getAttributes();t.hasPositions&&(g.bindBuffer(34962,n.position),g.bufferData(34962,t.positionArray,35048),y.enableAttribute(i.position),g.vertexAttribPointer(i.position,3,5126,!1,0,0)),t.hasNormals&&(g.bindBuffer(34962,n.normal),g.bufferData(34962,t.normalArray,35048),y.enableAttribute(i.normal),g.vertexAttribPointer(i.normal,3,5126,!1,0,0)),t.hasUvs&&(g.bindBuffer(34962,n.uv),g.bufferData(34962,t.uvArray,35048),y.enableAttribute(i.uv),g.vertexAttribPointer(i.uv,2,5126,!1,0,0)),t.hasColors&&(g.bindBuffer(34962,n.color),g.bufferData(34962,t.colorArray,35048),y.enableAttribute(i.color),g.vertexAttribPointer(i.color,3,5126,!1,0,0)),y.disableUnusedAttributes(),g.drawArrays(4,0,t.count),t.count=0},this.renderBufferDirect=function(t,e,n,i,r,o){var a=r.isMesh&&0>r.normalMatrix.determinant();y.setMaterial(i,a);var s=t1(t,e,i,r),u=!1;V.geometry===n.id&&V.program===s.id&&V.wireframe===(!0===i.wireframe)||(V.geometry=n.id,V.program=s.id,V.wireframe=!0===i.wireframe,u=!0),r.morphTargetInfluences&&(L.update(r,n,i,s),u=!0);var l,h=n.index,c=n.attributes.position,p=1;!0===i.wireframe&&(h=A.getWireframeAttribute(n),p=2);var d=M;null!==h&&(l=w.get(h),(d=R).setIndex(l)),u&&(function(t,e,n){if(n&&!$.isWebGL2&n.isInstancedBufferGeometry&&null===v.get("ANGLE_instanced_arrays"))console.error("THREE.WebGLRenderer.setupVertexAttributes: using THREE.InstancedBufferGeometry but hardware does not support extension ANGLE_instanced_arrays.");else{y.initAttributes();var i=n.attributes,r=e.getAttributes(),o=t.defaultAttributeValues;for(var a in r){var s=r[a];if(s>=0){var u=i[a];if(void 0!==u){var l=u.normalized,h=u.itemSize,c=w.get(u);if(void 0===c)continue;var p=c.buffer,d=c.type,f=c.bytesPerElement;if(u.isInterleavedBufferAttribute){var m=u.data,_=m.stride,x=u.offset;m&&m.isInstancedInterleavedBuffer?(y.enableAttributeAndDivisor(s,m.meshPerAttribute),void 0===n.maxInstancedCount&&(n.maxInstancedCount=m.meshPerAttribute*m.count)):y.enableAttribute(s),g.bindBuffer(34962,p),g.vertexAttribPointer(s,h,d,l,_*f,x*f)}else u.isInstancedBufferAttribute?(y.enableAttributeAndDivisor(s,u.meshPerAttribute),void 0===n.maxInstancedCount&&(n.maxInstancedCount=u.meshPerAttribute*u.count)):y.enableAttribute(s),g.bindBuffer(34962,p),g.vertexAttribPointer(s,h,d,l,0,0)}else if(void 0!==o){var b=o[a];if(void 0!==b)switch(b.length){case 2:g.vertexAttrib2fv(s,b);break;case 3:g.vertexAttrib3fv(s,b);break;case 4:g.vertexAttrib4fv(s,b);break;default:g.vertexAttrib1fv(s,b)}}}}y.disableUnusedAttributes()}}(i,s,n),null!==h&&g.bindBuffer(34963,l.buffer));var f=1/0;null!==h?f=h.count:void 0!==c&&(f=c.count);var m=n.drawRange.start*p,_=n.drawRange.count*p,x=null!==o?o.start*p:0,b=null!==o?o.count*p:1/0,T=Math.max(m,x),S=Math.max(0,Math.min(f,m+_,x+b)-1-T+1);if(0!==S){if(r.isMesh){if(!0===i.wireframe)y.setLineWidth(i.wireframeLinewidth*tl()),d.setMode(1);else switch(r.drawMode){case nn:d.setMode(4);break;case ni:d.setMode(5);break;case nr:d.setMode(6)}}else if(r.isLine){var E=i.linewidth;void 0===E&&(E=1),y.setLineWidth(E*tl()),r.isLineSegments?d.setMode(1):r.isLineLoop?d.setMode(2):d.setMode(3)}else r.isPoints?d.setMode(0):r.isSprite&&d.setMode(4);n&&n.isInstancedBufferGeometry?n.maxInstancedCount>0&&d.renderInstances(n,T,S):d.render(T,S)}},this.compile=function(t,e){(m=P.get(t,e)).init(),t.traverse(function(t){t.isLight&&(m.pushLight(t),t.castShadow&&m.pushShadow(t))}),m.setupLights(e),t.traverse(function(e){if(e.material){if(Array.isArray(e.material))for(var n=0;n<e.material.length;n++)tM(e.material[n],t.fog,e);else tM(e.material,t.fog,e)}})};var t0=null,tP=new nB;function tC(t,e,n,i){for(var r=0,o=t.length;r<o;r++){var a=t[r],s=a.object,u=a.geometry,l=void 0===i?a.material:i,h=a.group;if(n.isArrayCamera){U=n;for(var c=n.cameras,p=0,d=c.length;p<d;p++){var f=c[p];if(s.layers.test(f.layers)){if("viewport"in f)y.viewport(H.copy(f.viewport));else{var g=f.bounds,v=g.x*Y,$=g.y*K,_=g.z*Y,x=g.w*K;y.viewport(H.set(v,$,_,x).multiplyScalar(j))}m.setupLights(f),tL(s,e,f,u,l,h)}}}else U=null,tL(s,e,n,u,l,h)}}function tL(t,e,n,i,r,o){if(t.onBeforeRender(D,e,n,i,r,o),m=P.get(e,U||n),t.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse,t.matrixWorld),t.normalMatrix.getNormalMatrix(t.modelViewMatrix),t.isImmediateRenderObject){y.setMaterial(r);var a=t1(n,e.fog,r,t);V.geometry=null,V.program=null,V.wireframe=!1,function(t,e){t.render(function(t){D.renderBufferImmediate(t,e)})}(t,a)}else D.renderBufferDirect(n,e.fog,i,r,t,o);t.onAfterRender(D,e,n,i,r,o),m=P.get(e,U||n)}function tM(t,e,n){var i=x.get(t),r=m.state.lights,o=m.state.shadowsArray,a=i.lightsHash,s=r.state.hash,u=S.getParameters(t,r.state,o,e,tt.numPlanes,tt.numIntersection,n),l=S.getProgramCode(t,u),h=i.program,c=!0;if(void 0===h)t.addEventListener("dispose",t_);else if(h.code!==l)t8(t);else if(a.stateID!==s.stateID||a.directionalLength!==s.directionalLength||a.pointLength!==s.pointLength||a.spotLength!==s.spotLength||a.rectAreaLength!==s.rectAreaLength||a.hemiLength!==s.hemiLength||a.shadowsLength!==s.shadowsLength)a.stateID=s.stateID,a.directionalLength=s.directionalLength,a.pointLength=s.pointLength,a.spotLength=s.spotLength,a.rectAreaLength=s.rectAreaLength,a.hemiLength=s.hemiLength,a.shadowsLength=s.shadowsLength,c=!1;else{if(void 0!==u.shaderID)return;c=!1}if(c){if(u.shaderID){var p=nN[u.shaderID];i.shader={name:t.type,uniforms:nR.clone(p.uniforms),vertexShader:p.vertexShader,fragmentShader:p.fragmentShader}}else i.shader={name:t.type,uniforms:t.uniforms,vertexShader:t.vertexShader,fragmentShader:t.fragmentShader};t.onBeforeCompile(i.shader,D),l=S.getProgramCode(t,u),h=S.acquireProgram(t,i.shader,u,l),i.program=h,t.program=h}var d=h.getAttributes();if(t.morphTargets){t.numSupportedMorphTargets=0;for(var f=0;f<D.maxMorphTargets;f++)d["morphTarget"+f]>=0&&t.numSupportedMorphTargets++}if(t.morphNormals)for(t.numSupportedMorphNormals=0,f=0;f<D.maxMorphNormals;f++)d["morphNormal"+f]>=0&&t.numSupportedMorphNormals++;var g=i.shader.uniforms;(t.isShaderMaterial||t.isRawShaderMaterial)&&!0!==t.clipping||(i.numClippingPlanes=tt.numPlanes,i.numIntersection=tt.numIntersection,g.clippingPlanes=tt.uniform),i.fog=e,void 0===a&&(i.lightsHash=a={}),a.stateID=s.stateID,a.directionalLength=s.directionalLength,a.pointLength=s.pointLength,a.spotLength=s.spotLength,a.rectAreaLength=s.rectAreaLength,a.hemiLength=s.hemiLength,a.shadowsLength=s.shadowsLength,t.lights&&(g.ambientLightColor.value=r.state.ambient,g.directionalLights.value=r.state.directional,g.spotLights.value=r.state.spot,g.rectAreaLights.value=r.state.rectArea,g.pointLights.value=r.state.point,g.hemisphereLights.value=r.state.hemi,g.directionalShadowMap.value=r.state.directionalShadowMap,g.directionalShadowMatrix.value=r.state.directionalShadowMatrix,g.spotShadowMap.value=r.state.spotShadowMap,g.spotShadowMatrix.value=r.state.spotShadowMatrix,g.pointShadowMap.value=r.state.pointShadowMap,g.pointShadowMatrix.value=r.state.pointShadowMatrix);var v=i.program.getUniforms(),$=ij.seqWithValue(v.seq,g);i.uniformsList=$}function t1(t,e,n,i){X=0;var r,o,a,s,u,l,h,c,p,d,f,v,_,b,w,A,T,S,E,P,C,L,M,R,I,N,B=x.get(n),O=m.state.lights,G=B.lightsHash,V=O.state.hash;if(te&&(tn||t!==z)){var U=t===z&&n.id===k;tt.setState(n.clippingPlanes,n.clipIntersection,n.clipShadows,t,B,U)}!1!==n.needsUpdate||(void 0===B.program||n.fog&&B.fog!==e?n.needsUpdate=!0:(n.lights&&(G.stateID!==V.stateID||G.directionalLength!==V.directionalLength||G.pointLength!==V.pointLength||G.spotLength!==V.spotLength||G.rectAreaLength!==V.rectAreaLength||G.hemiLength!==V.hemiLength||G.shadowsLength!==V.shadowsLength)||void 0!==B.numClippingPlanes&&(B.numClippingPlanes!==tt.numPlanes||B.numIntersection!==tt.numIntersection))&&(n.needsUpdate=!0)),n.needsUpdate&&(tM(n,e,i),n.needsUpdate=!1);var H=!1,F=!1,W=!1,Y=B.program,Z=Y.getUniforms(),q=B.shader.uniforms;if(y.useProgram(Y.program)&&(H=!0,F=!0,W=!0),n.id!==k&&(k=n.id,F=!0),H||z!==t){if(Z.setValue(g,"projectionMatrix",t.projectionMatrix),$.logarithmicDepthBuffer&&Z.setValue(g,"logDepthBufFC",2/(Math.log(t.far+1)/Math.LN2)),z!==t&&(z=t,F=!0,W=!0),n.isShaderMaterial||n.isMeshPhongMaterial||n.isMeshStandardMaterial||n.envMap){var Q=Z.map.cameraPosition;void 0!==Q&&Q.setValue(g,tu.setFromMatrixPosition(t.matrixWorld))}(n.isMeshPhongMaterial||n.isMeshLambertMaterial||n.isMeshBasicMaterial||n.isMeshStandardMaterial||n.isShaderMaterial||n.skinning)&&Z.setValue(g,"viewMatrix",t.matrixWorldInverse)}if(n.skinning){Z.setOptional(g,i,"bindMatrix"),Z.setOptional(g,i,"bindMatrixInverse");var J=i.skeleton;if(J){var ti=J.bones;if($.floatVertexTextures){if(void 0===J.boneTexture){var tr=Math.sqrt(4*ti.length);tr=Math.max(tr=nv.ceilPowerOfTwo(tr),4);var to=new Float32Array(tr*tr*4);to.set(J.boneMatrices);var ta=new n0(to,tr,tr,eS,ey);ta.needsUpdate=!0,J.boneMatrices=to,J.boneTexture=ta,J.boneTextureSize=tr}Z.setValue(g,"boneTexture",J.boneTexture),Z.setValue(g,"boneTextureSize",J.boneTextureSize)}else Z.setOptional(g,J,"boneMatrices")}}return F&&(Z.setValue(g,"toneMappingExposure",D.toneMappingExposure),Z.setValue(g,"toneMappingWhitePoint",D.toneMappingWhitePoint),n.lights&&(r=q,o=W,r.ambientLightColor.needsUpdate=o,r.directionalLights.needsUpdate=o,r.pointLights.needsUpdate=o,r.spotLights.needsUpdate=o,r.rectAreaLights.needsUpdate=o,r.hemisphereLights.needsUpdate=o),e&&n.fog&&(a=q,s=e,a.fogColor.value=s.color,s.isFog?(a.fogNear.value=s.near,a.fogFar.value=s.far):s.isFogExp2&&(a.fogDensity.value=s.density)),n.isMeshBasicMaterial?tR(q,n):n.isMeshLambertMaterial?(tR(q,n),u=q,(l=n).emissiveMap&&(u.emissiveMap.value=l.emissiveMap)):n.isMeshPhongMaterial?(tR(q,n),n.isMeshToonMaterial?(h=q,t3(h,c=n),c.gradientMap&&(h.gradientMap.value=c.gradientMap)):t3(q,n)):n.isMeshStandardMaterial?(tR(q,n),n.isMeshPhysicalMaterial?(p=q,tI(p,d=n),p.reflectivity.value=d.reflectivity,p.clearCoat.value=d.clearCoat,p.clearCoatRoughness.value=d.clearCoatRoughness):tI(q,n)):n.isMeshMatcapMaterial?(tR(q,n),f=q,(v=n).matcap&&(f.matcap.value=v.matcap),v.bumpMap&&(f.bumpMap.value=v.bumpMap,f.bumpScale.value=v.bumpScale,v.side===tm&&(f.bumpScale.value*=-1)),v.normalMap&&(f.normalMap.value=v.normalMap,f.normalScale.value.copy(v.normalScale),v.side===tm&&f.normalScale.value.negate()),v.displacementMap&&(f.displacementMap.value=v.displacementMap,f.displacementScale.value=v.displacementScale,f.displacementBias.value=v.displacementBias)):n.isMeshDepthMaterial?(tR(q,n),_=q,(b=n).displacementMap&&(_.displacementMap.value=b.displacementMap,_.displacementScale.value=b.displacementScale,_.displacementBias.value=b.displacementBias)):n.isMeshDistanceMaterial?(tR(q,n),w=q,(A=n).displacementMap&&(w.displacementMap.value=A.displacementMap,w.displacementScale.value=A.displacementScale,w.displacementBias.value=A.displacementBias),w.referencePosition.value.copy(A.referencePosition),w.nearDistance.value=A.nearDistance,w.farDistance.value=A.farDistance):n.isMeshNormalMaterial?(tR(q,n),T=q,(S=n).bumpMap&&(T.bumpMap.value=S.bumpMap,T.bumpScale.value=S.bumpScale,S.side===tm&&(T.bumpScale.value*=-1)),S.normalMap&&(T.normalMap.value=S.normalMap,T.normalScale.value.copy(S.normalScale),S.side===tm&&T.normalScale.value.negate()),S.displacementMap&&(T.displacementMap.value=S.displacementMap,T.displacementScale.value=S.displacementScale,T.displacementBias.value=S.displacementBias)):n.isLineBasicMaterial?(E=q,P=n,E.diffuse.value=P.color,E.opacity.value=P.opacity,n.isLineDashedMaterial&&(C=q,L=n,C.dashSize.value=L.dashSize,C.totalSize.value=L.dashSize+L.gapSize,C.scale.value=L.scale)):n.isPointsMaterial?(M=q,R=n,M.diffuse.value=R.color,M.opacity.value=R.opacity,M.size.value=R.size*j,M.scale.value=.5*K,M.map.value=R.map,null!==R.map&&(!0===R.map.matrixAutoUpdate&&R.map.updateMatrix(),M.uvTransform.value.copy(R.map.matrix))):n.isSpriteMaterial?(I=q,N=n,I.diffuse.value=N.color,I.opacity.value=N.opacity,I.rotation.value=N.rotation,I.map.value=N.map,null!==N.map&&(!0===N.map.matrixAutoUpdate&&N.map.updateMatrix(),I.uvTransform.value.copy(N.map.matrix))):n.isShadowMaterial&&(q.color.value=n.color,q.opacity.value=n.opacity),void 0!==q.ltc_1&&(q.ltc_1.value=nD.LTC_1),void 0!==q.ltc_2&&(q.ltc_2.value=nD.LTC_2),ij.upload(g,B.uniformsList,q,D)),n.isShaderMaterial&&!0===n.uniformsNeedUpdate&&(ij.upload(g,B.uniformsList,q,D),n.uniformsNeedUpdate=!1),n.isSpriteMaterial&&Z.setValue(g,"center",i.center),Z.setValue(g,"modelViewMatrix",i.modelViewMatrix),Z.setValue(g,"normalMatrix",i.normalMatrix),Z.setValue(g,"modelMatrix",i.matrixWorld),Y}function tR(t,e){var n;t.opacity.value=e.opacity,e.color&&(t.diffuse.value=e.color),e.emissive&&t.emissive.value.copy(e.emissive).multiplyScalar(e.emissiveIntensity),e.map&&(t.map.value=e.map),e.alphaMap&&(t.alphaMap.value=e.alphaMap),e.specularMap&&(t.specularMap.value=e.specularMap),e.envMap&&(t.envMap.value=e.envMap,t.flipEnvMap.value=e.envMap&&e.envMap.isCubeTexture?-1:1,t.reflectivity.value=e.reflectivity,t.refractionRatio.value=e.refractionRatio,t.maxMipLevel.value=x.get(e.envMap).__maxMipLevel),e.lightMap&&(t.lightMap.value=e.lightMap,t.lightMapIntensity.value=e.lightMapIntensity),e.aoMap&&(t.aoMap.value=e.aoMap,t.aoMapIntensity.value=e.aoMapIntensity),e.map?n=e.map:e.specularMap?n=e.specularMap:e.displacementMap?n=e.displacementMap:e.normalMap?n=e.normalMap:e.bumpMap?n=e.bumpMap:e.roughnessMap?n=e.roughnessMap:e.metalnessMap?n=e.metalnessMap:e.alphaMap?n=e.alphaMap:e.emissiveMap&&(n=e.emissiveMap),void 0!==n&&(n.isWebGLRenderTarget&&(n=n.texture),!0===n.matrixAutoUpdate&&n.updateMatrix(),t.uvTransform.value.copy(n.matrix))}function t3(t,e){t.specular.value=e.specular,t.shininess.value=Math.max(e.shininess,1e-4),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===tm&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===tm&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias)}function tI(t,e){t.roughness.value=e.roughness,t.metalness.value=e.metalness,e.roughnessMap&&(t.roughnessMap.value=e.roughnessMap),e.metalnessMap&&(t.metalnessMap.value=e.metalnessMap),e.emissiveMap&&(t.emissiveMap.value=e.emissiveMap),e.bumpMap&&(t.bumpMap.value=e.bumpMap,t.bumpScale.value=e.bumpScale,e.side===tm&&(t.bumpScale.value*=-1)),e.normalMap&&(t.normalMap.value=e.normalMap,t.normalScale.value.copy(e.normalScale),e.side===tm&&t.normalScale.value.negate()),e.displacementMap&&(t.displacementMap.value=e.displacementMap,t.displacementScale.value=e.displacementScale,t.displacementBias.value=e.displacementBias),e.envMap&&(t.envMapIntensity.value=e.envMapIntensity)}tP.setAnimationLoop(function(t){td.isPresenting()||t0&&t0(t)}),"undefined"!=typeof window&&tP.setContext(window),this.setAnimationLoop=function(t){t0=t,td.setAnimationLoop(t),tP.start()},this.render=function(t,e,n,i){if(e&&e.isCamera){if(!N){V.geometry=null,V.program=null,V.wireframe=!1,k=-1,z=null,!0===t.autoUpdate&&t.updateMatrixWorld(),null===e.parent&&e.updateMatrixWorld(),td.enabled&&(e=td.getCamera(e)),(m=P.get(t,e)).init(),t.onBeforeRender(D,t,e,n),tr.multiplyMatrices(e.projectionMatrix,e.matrixWorldInverse),J.setFromMatrix(tr),tn=this.localClippingEnabled,te=tt.init(this.clippingPlanes,tn,e),(f=E.get(t,e)).init(),function t(e,n,i){if(!1!==e.visible){if(e.layers.test(n.layers)){if(e.isLight)m.pushLight(e),e.castShadow&&m.pushShadow(e);else if(e.isSprite){if(!e.frustumCulled||J.intersectsSprite(e)){i&&tu.setFromMatrixPosition(e.matrixWorld).applyMatrix4(tr);var r=T.update(e),o=e.material;f.push(e,r,o,tu.z,null)}}else if(e.isImmediateRenderObject)i&&tu.setFromMatrixPosition(e.matrixWorld).applyMatrix4(tr),f.push(e,null,e.material,tu.z,null);else if((e.isMesh||e.isLine||e.isPoints)&&(e.isSkinnedMesh&&e.skeleton.update(),!e.frustumCulled||J.intersectsObject(e))){if(i&&tu.setFromMatrixPosition(e.matrixWorld).applyMatrix4(tr),r=T.update(e),Array.isArray(o=e.material))for(var a=r.groups,s=0,u=a.length;s<u;s++){var l=a[s],h=o[l.materialIndex];h&&h.visible&&f.push(e,r,h,tu.z,l)}else o.visible&&f.push(e,r,o,tu.z,null)}}var c=e.children;for(s=0,u=c.length;s<u;s++)t(c[s],n,i)}}(t,e,D.sortObjects),!0===D.sortObjects&&f.sort(),te&&tt.beginShadows();var r=m.state.shadowsArray;tv.render(r,t,e),m.setupLights(e),te&&tt.endShadows(),this.info.autoReset&&this.info.reset(),void 0===n&&(n=null),this.setRenderTarget(n),C.render(f,t,e,i);var o=f.opaque,a=f.transparent;if(t.overrideMaterial){var s=t.overrideMaterial;o.length&&tC(o,t,e,s),a.length&&tC(a,t,e,s)}else o.length&&tC(o,t,e),a.length&&tC(a,t,e);n&&b.updateRenderTargetMipmap(n),y.buffers.depth.setTest(!0),y.buffers.depth.setMask(!0),y.buffers.color.setMask(!0),y.setPolygonOffset(!1),t.onAfterRender(D,t,e),td.enabled&&td.submitFrame(),f=null,m=null}}else console.error("THREE.WebGLRenderer.render: camera is not an instance of THREE.Camera.")},this.allocTextureUnit=function(){var t=X;return t>=$.maxTextures&&console.warn("THREE.WebGLRenderer: Trying to use "+t+" texture units while this GPU supports only "+$.maxTextures),X+=1,t},this.setTexture2D=(n=!1,function(t,e){t&&t.isWebGLRenderTarget&&(n||(console.warn("THREE.WebGLRenderer.setTexture2D: don't use render targets as textures. Use their .texture property instead."),n=!0),t=t.texture),b.setTexture2D(t,e)}),this.setTexture3D=function(t,e){b.setTexture3D(t,e)},this.setTexture=(i=!1,function(t,e){i||(console.warn("THREE.WebGLRenderer: .setTexture is deprecated, use setTexture2D instead."),i=!0),b.setTexture2D(t,e)}),this.setTextureCube=(r=!1,function(t,e){t&&t.isWebGLRenderTargetCube&&(r||(console.warn("THREE.WebGLRenderer.setTextureCube: don't use cube render targets as textures. Use their .texture property instead."),r=!0),t=t.texture),t&&t.isCubeTexture||Array.isArray(t.image)&&6===t.image.length?b.setTextureCube(t,e):b.setTextureCubeDynamic(t,e)}),this.setFramebuffer=function(t){B=t},this.getRenderTarget=function(){return O},this.setRenderTarget=function(t){O=t,t&&void 0===x.get(t).__webglFramebuffer&&b.setupRenderTarget(t);var e=B,n=!1;if(t){var i=x.get(t).__webglFramebuffer;t.isWebGLRenderTargetCube?(e=i[t.activeCubeFace],n=!0):e=i,H.copy(t.viewport),F.copy(t.scissor),W=t.scissorTest}else H.copy(Z).multiplyScalar(j),F.copy(q).multiplyScalar(j),W=Q;if(G!==e&&(g.bindFramebuffer(36160,e),G=e),y.viewport(H),y.scissor(F),y.setScissorTest(W),n){var r=x.get(t.texture);g.framebufferTexture2D(36160,36064,34069+t.activeCubeFace,r.__webglTexture,t.activeMipMapLevel)}},this.readRenderTargetPixels=function(t,e,n,i,r,o){if(t&&t.isWebGLRenderTarget){var a=x.get(t).__webglFramebuffer;if(a){var s=!1;a!==G&&(g.bindFramebuffer(36160,a),s=!0);try{var u=t.texture,l=u.format,h=u.type;if(l!==eS&&I.convert(l)!==g.getParameter(35739))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");if(!(h===ed||I.convert(h)===g.getParameter(35738)||h===ey&&($.isWebGL2||v.get("OES_texture_float")||v.get("WEBGL_color_buffer_float"))||h===e_&&($.isWebGL2?v.get("EXT_color_buffer_float"):v.get("EXT_color_buffer_half_float"))))return void console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");36053===g.checkFramebufferStatus(36160)?e>=0&&e<=t.width-i&&n>=0&&n<=t.height-r&&g.readPixels(e,n,i,r,I.convert(l),I.convert(h),o):console.error("THREE.WebGLRenderer.readRenderTargetPixels: readPixels from renderTarget failed. Framebuffer not complete.")}finally{s&&g.bindFramebuffer(36160,G)}}}else console.error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.")},this.copyFramebufferToTexture=function(t,e,n){var i=e.image.width,r=e.image.height,o=I.convert(e.format);this.setTexture2D(e,0),g.copyTexImage2D(3553,n||0,o,t.x,t.y,i,r,0)},this.copyTextureToTexture=function(t,e,n,i){var r=e.image.width,o=e.image.height,a=I.convert(n.format),s=I.convert(n.type);this.setTexture2D(n,0),e.isDataTexture?g.texSubImage2D(3553,i||0,t.x,t.y,r,o,a,s,e.image.data):g.texSubImage2D(3553,i||0,t.x,t.y,a,s,e.image)}}function ae(t,e){this.name="",this.color=new nI(t),this.density=void 0!==e?e:25e-5}function an(t,e,n){this.name="",this.color=new nI(t),this.near=void 0!==e?e:1,this.far=void 0!==n?n:1e3}function ai(){nU.call(this),this.type="Scene",this.background=null,this.fog=null,this.overrideMaterial=null,this.autoUpdate=!0}function ar(t,e){this.array=t,this.stride=e,this.count=void 0!==t?t.length/e:0,this.dynamic=!1,this.updateRange={offset:0,count:-1},this.version=0}function ao(t,e,n,i){this.data=t,this.itemSize=e,this.offset=n,this.normalized=!0===i}function aa(t){io.call(this),this.type="SpriteMaterial",this.color=new nI(16777215),this.map=null,this.rotation=0,this.sizeAttenuation=!0,this.lights=!1,this.transparent=!0,this.setValues(t)}function as(t){if(nU.call(this),this.type="Sprite",void 0===oZ){oZ=new nJ;var e=new ar(new Float32Array([-.5,-.5,0,0,0,.5,-.5,0,1,0,.5,.5,0,1,1,-.5,.5,0,0,1]),5);oZ.setIndex([0,1,2,0,2,3]),oZ.addAttribute("position",new ao(e,3,0,!1)),oZ.addAttribute("uv",new ao(e,2,3,!1))}this.geometry=oZ,this.material=void 0!==t?t:new aa,this.center=new n$(.5,.5)}function au(){nU.call(this),this.type="LOD",Object.defineProperties(this,{levels:{enumerable:!0,value:[]}})}function al(t,e){if(t=t||[],this.bones=t.slice(0),this.boneMatrices=new Float32Array(16*this.bones.length),void 0===e)this.calculateInverses();else if(this.bones.length===e.length)this.boneInverses=e.slice(0);else{console.warn("THREE.Skeleton boneInverses is the wrong length."),this.boneInverses=[];for(var n=0,i=this.bones.length;n<i;n++)this.boneInverses.push(new ny)}}function ah(){nU.call(this),this.type="Bone"}function ac(t,e){ih.call(this,t,e),this.type="SkinnedMesh",this.bindMode="attached",this.bindMatrix=new ny,this.bindMatrixInverse=new ny;var n=new al(this.initBones());this.bind(n,this.matrixWorld),this.normalizeSkinWeights()}function ap(t){io.call(this),this.type="LineBasicMaterial",this.color=new nI(16777215),this.linewidth=1,this.linecap="round",this.linejoin="round",this.lights=!1,this.setValues(t)}function ad(t,e,n){1===n&&console.error("THREE.Line: parameter THREE.LinePieces no longer supported. Use THREE.LineSegments instead."),nU.call(this),this.type="Line",this.geometry=void 0!==t?t:new nJ,this.material=void 0!==e?e:new ap({color:16777215*Math.random()})}function af(t,e){ad.call(this,t,e),this.type="LineSegments"}function am(t,e){ad.call(this,t,e),this.type="LineLoop"}function ag(t){io.call(this),this.type="PointsMaterial",this.color=new nI(16777215),this.map=null,this.size=1,this.sizeAttenuation=!0,this.morphTargets=!1,this.lights=!1,this.setValues(t)}function av(t,e){nU.call(this),this.type="Points",this.geometry=void 0!==t?t:new nJ,this.material=void 0!==e?e:new ag({color:16777215*Math.random()})}function a$(t,e,n,i,r,o,a,s,u){nA.call(this,t,e,n,i,r,o,a,s,u),this.generateMipmaps=!1}function ay(t,e,n,i,r,o,a,s,u,l,h,c){nA.call(this,null,o,a,s,u,l,i,r,h,c),this.image={width:e,height:n},this.mipmaps=t,this.flipY=!1,this.generateMipmaps=!1}function a_(t,e,n,i,r,o,a,s,u){nA.call(this,t,e,n,i,r,o,a,s,u),this.needsUpdate=!0}function a8(t,e,n,i,r,o,a,s,u,l){if((l=void 0!==l?l:eC)!==eC&&l!==eL)throw Error("DepthTexture format must be either THREE.DepthFormat or THREE.DepthStencilFormat");void 0===n&&l===eC&&(n=eg),void 0===n&&l===eL&&(n=ew),nA.call(this,null,i,r,o,a,s,l,n,u),this.image={width:t,height:e},this.magFilter=void 0!==a?a:es,this.minFilter=void 0!==s?s:es,this.flipY=!1,this.generateMipmaps=!1}function ax(t){nJ.call(this),this.type="WireframeGeometry";var e,n,i,r,o,a,s,u,l,h,c,p,d,f,m,g,v,$=[],y=[0,0],_={},x=["a","b","c"];if(t&&t.isGeometry){var b=t.faces;for(u=0,h=b.length;u<h;u++){var w=b[u];for(l=0;l<3;l++)f=w[x[l]],m=w[x[(l+1)%3]],y[0]=Math.min(f,m),y[1]=Math.max(f,m),void 0===_[g=y[0]+","+y[1]]&&(_[g]={index1:y[0],index2:y[1]})}for(g in _)d=_[g],v=t.vertices[d.index1],$.push(v.x,v.y,v.z),v=t.vertices[d.index2],$.push(v.x,v.y,v.z)}else if(t&&t.isBufferGeometry){if(v=new n8,null!==t.index){for(e=t.attributes.position,n=t.index,0===(i=t.groups).length&&(i=[{start:0,count:n.count,materialIndex:0}]),c=0,p=i.length;c<p;++c)for(u=o=(r=i[c]).start,h=o+r.count;u<h;u+=3)for(l=0;l<3;l++)f=n.getX(u+l),m=n.getX(u+(l+1)%3),y[0]=Math.min(f,m),y[1]=Math.max(f,m),void 0===_[g=y[0]+","+y[1]]&&(_[g]={index1:y[0],index2:y[1]});for(g in _)d=_[g],v.fromBufferAttribute(e,d.index1),$.push(v.x,v.y,v.z),v.fromBufferAttribute(e,d.index2),$.push(v.x,v.y,v.z)}else for(u=0,h=(e=t.attributes.position).count/3;u<h;u++)for(l=0;l<3;l++)a=3*u+l,v.fromBufferAttribute(e,a),$.push(v.x,v.y,v.z),s=3*u+(l+1)%3,v.fromBufferAttribute(e,s),$.push(v.x,v.y,v.z)}this.addAttribute("position",new nK($,3))}function ab(t,e,n){nH.call(this),this.type="ParametricGeometry",this.parameters={func:t,slices:e,stacks:n},this.fromBufferGeometry(new aw(t,e,n)),this.mergeVertices()}function aw(t,e,n){nJ.call(this),this.type="ParametricBufferGeometry",this.parameters={func:t,slices:e,stacks:n};var i,r,o=[],a=[],s=[],u=[],l=new n8,h=new n8,c=new n8,p=new n8,d=new n8;t.length<3&&console.error("THREE.ParametricGeometry: Function must now modify a Vector3 as third parameter.");var f=e+1;for(i=0;i<=n;i++){var m=i/n;for(r=0;r<=e;r++){var g=r/e;t(g,m,h),a.push(h.x,h.y,h.z),g-1e-5>=0?(t(g-1e-5,m,c),p.subVectors(h,c)):(t(g+1e-5,m,c),p.subVectors(c,h)),m-1e-5>=0?(t(g,m-1e-5,c),d.subVectors(h,c)):(t(g,m+1e-5,c),d.subVectors(c,h)),l.crossVectors(p,d).normalize(),s.push(l.x,l.y,l.z),u.push(g,m)}}for(i=0;i<n;i++)for(r=0;r<e;r++){var v=i*f+r,$=i*f+r+1,y=(i+1)*f+r+1,_=(i+1)*f+r;o.push(v,$,_),o.push($,y,_)}this.setIndex(o),this.addAttribute("position",new nK(a,3)),this.addAttribute("normal",new nK(s,3)),this.addAttribute("uv",new nK(u,2))}function aA(t,e,n,i){nH.call(this),this.type="PolyhedronGeometry",this.parameters={vertices:t,indices:e,radius:n,detail:i},this.fromBufferGeometry(new aT(t,e,n,i)),this.mergeVertices()}function aT(t,e,n,i){nJ.call(this),this.type="PolyhedronBufferGeometry",this.parameters={vertices:t,indices:e,radius:n,detail:i},n=n||1;var r=[],o=[];function a(t,e,n,i){var r,o,a=Math.pow(2,i),u=[];for(r=0;r<=a;r++){u[r]=[];var l=t.clone().lerp(n,r/a),h=e.clone().lerp(n,r/a),c=a-r;for(o=0;o<=c;o++)u[r][o]=0===o&&r===a?l:l.clone().lerp(h,o/c)}for(r=0;r<a;r++)for(o=0;o<2*(a-r)-1;o++){var p=Math.floor(o/2);o%2==0?(s(u[r][p+1]),s(u[r+1][p]),s(u[r][p])):(s(u[r][p+1]),s(u[r+1][p+1]),s(u[r+1][p]))}}function s(t){r.push(t.x,t.y,t.z)}function u(e,n){var i=3*e;n.x=t[i+0],n.y=t[i+1],n.z=t[i+2]}function l(t,e,n,i){i<0&&1===t.x&&(o[e]=t.x-1),0===n.x&&0===n.z&&(o[e]=i/2/Math.PI+.5)}function h(t){return Math.atan2(t.z,-t.x)}function c(t){return Math.atan2(-t.y,Math.sqrt(t.x*t.x+t.z*t.z))}(function(t){for(var n=new n8,i=new n8,r=new n8,o=0;o<e.length;o+=3)u(e[o+0],n),u(e[o+1],i),u(e[o+2],r),a(n,i,r,t)})(i=i||0),function(t){for(var e=new n8,n=0;n<r.length;n+=3)e.x=r[n+0],e.y=r[n+1],e.z=r[n+2],e.normalize().multiplyScalar(t),r[n+0]=e.x,r[n+1]=e.y,r[n+2]=e.z}(n),function(){for(var t=new n8,e=0;e<r.length;e+=3){t.x=r[e+0],t.y=r[e+1],t.z=r[e+2];var n=h(t)/2/Math.PI+.5,i=c(t)/Math.PI+.5;o.push(n,1-i)}(function(){for(var t=new n8,e=new n8,n=new n8,i=new n8,a=new n$,s=new n$,u=new n$,c=0,p=0;c<r.length;c+=9,p+=6){t.set(r[c+0],r[c+1],r[c+2]),e.set(r[c+3],r[c+4],r[c+5]),n.set(r[c+6],r[c+7],r[c+8]),a.set(o[p+0],o[p+1]),s.set(o[p+2],o[p+3]),u.set(o[p+4],o[p+5]),i.copy(t).add(e).add(n).divideScalar(3);var d=h(i);l(a,p+0,t,d),l(s,p+2,e,d),l(u,p+4,n,d)}})(),function(){for(var t=0;t<o.length;t+=6){var e=o[t+0],n=o[t+2],i=o[t+4],r=Math.min(e,n,i);Math.max(e,n,i)>.9&&r<.1&&(e<.2&&(o[t+0]+=1),n<.2&&(o[t+2]+=1),i<.2&&(o[t+4]+=1))}}()}(),this.addAttribute("position",new nK(r,3)),this.addAttribute("normal",new nK(r.slice(),3)),this.addAttribute("uv",new nK(o,2)),0===i?this.computeVertexNormals():this.normalizeNormals()}function aS(t,e){nH.call(this),this.type="TetrahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new aE(t,e)),this.mergeVertices()}function aE(t,e){aT.call(this,[1,1,1,-1,-1,1,-1,1,-1,1,-1,-1],[2,1,0,0,3,2,1,3,0,2,3,1],t,e),this.type="TetrahedronBufferGeometry",this.parameters={radius:t,detail:e}}function a0(t,e){nH.call(this),this.type="OctahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new aP(t,e)),this.mergeVertices()}function aP(t,e){aT.call(this,[1,0,0,-1,0,0,0,1,0,0,-1,0,0,0,1,0,0,-1],[0,2,4,0,4,3,0,3,5,0,5,2,1,2,5,1,5,3,1,3,4,1,4,2],t,e),this.type="OctahedronBufferGeometry",this.parameters={radius:t,detail:e}}function aC(t,e){nH.call(this),this.type="IcosahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new aL(t,e)),this.mergeVertices()}function aL(t,e){var n=(1+Math.sqrt(5))/2;aT.call(this,[-1,n,0,1,n,0,-1,-n,0,1,-n,0,0,-1,n,0,1,n,0,-1,-n,0,1,-n,n,0,-1,n,0,1,-n,0,-1,-n,0,1],[0,11,5,0,5,1,0,1,7,0,7,10,0,10,11,1,5,9,5,11,4,11,10,2,10,7,6,7,1,8,3,9,4,3,4,2,3,2,6,3,6,8,3,8,9,4,9,5,2,4,11,6,2,10,8,6,7,9,8,1],t,e),this.type="IcosahedronBufferGeometry",this.parameters={radius:t,detail:e}}function aM(t,e){nH.call(this),this.type="DodecahedronGeometry",this.parameters={radius:t,detail:e},this.fromBufferGeometry(new a1(t,e)),this.mergeVertices()}function a1(t,e){var n=(1+Math.sqrt(5))/2,i=1/n;aT.call(this,[-1,-1,-1,-1,-1,1,-1,1,-1,-1,1,1,1,-1,-1,1,-1,1,1,1,-1,1,1,1,0,-i,-n,0,-i,n,0,i,-n,0,i,n,-i,-n,0,-i,n,0,i,-n,0,i,n,0,-n,0,-i,n,0,-i,-n,0,i,n,0,i],[3,11,7,3,7,15,3,15,13,7,19,17,7,17,6,7,6,15,17,4,8,17,8,10,17,10,6,8,0,16,8,16,2,8,2,10,0,12,1,0,1,18,0,18,16,6,10,2,6,2,13,6,13,15,2,16,18,2,18,3,2,3,13,18,1,9,18,9,11,18,11,3,4,14,12,4,12,0,4,0,8,11,9,5,11,5,19,11,19,7,19,5,14,19,14,4,19,4,17,1,12,14,1,14,5,1,5,9],t,e),this.type="DodecahedronBufferGeometry",this.parameters={radius:t,detail:e}}function aR(t,e,n,i,r,o){nH.call(this),this.type="TubeGeometry",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:i,closed:r},void 0!==o&&console.warn("THREE.TubeGeometry: taper has been removed.");var a=new a3(t,e,n,i,r);this.tangents=a.tangents,this.normals=a.normals,this.binormals=a.binormals,this.fromBufferGeometry(a),this.mergeVertices()}function a3(t,e,n,i,r){nJ.call(this),this.type="TubeBufferGeometry",this.parameters={path:t,tubularSegments:e,radius:n,radialSegments:i,closed:r},e=e||64,n=n||1,i=i||8,r=r||!1;var o=t.computeFrenetFrames(e,r);this.tangents=o.tangents,this.normals=o.normals,this.binormals=o.binormals;var a,s,u=new n8,l=new n8,h=new n$,c=new n8,p=[],d=[],f=[],m=[];function g(r){c=t.getPointAt(r/e,c);var a=o.normals[r],h=o.binormals[r];for(s=0;s<=i;s++){var f=s/i*Math.PI*2,m=Math.sin(f),g=-Math.cos(f);l.x=g*a.x+m*h.x,l.y=g*a.y+m*h.y,l.z=g*a.z+m*h.z,l.normalize(),d.push(l.x,l.y,l.z),u.x=c.x+n*l.x,u.y=c.y+n*l.y,u.z=c.z+n*l.z,p.push(u.x,u.y,u.z)}}(function(){for(a=0;a<e;a++)g(a);g(!1===r?e:0),function(){for(a=0;a<=e;a++)for(s=0;s<=i;s++)h.x=a/e,h.y=s/i,f.push(h.x,h.y)}(),function(){for(s=1;s<=e;s++)for(a=1;a<=i;a++){var t=(i+1)*(s-1)+(a-1),n=(i+1)*s+(a-1),r=(i+1)*s+a,o=(i+1)*(s-1)+a;m.push(t,n,o),m.push(n,r,o)}}()})(),this.setIndex(m),this.addAttribute("position",new nK(p,3)),this.addAttribute("normal",new nK(d,3)),this.addAttribute("uv",new nK(f,2))}function aI(t,e,n,i,r,o,a){nH.call(this),this.type="TorusKnotGeometry",this.parameters={radius:t,tube:e,tubularSegments:n,radialSegments:i,p:r,q:o},void 0!==a&&console.warn("THREE.TorusKnotGeometry: heightScale has been deprecated. Use .scale( x, y, z ) instead."),this.fromBufferGeometry(new aD(t,e,n,i,r,o)),this.mergeVertices()}function aD(t,e,n,i,r,o){nJ.call(this),this.type="TorusKnotBufferGeometry",this.parameters={radius:t,tube:e,tubularSegments:n,radialSegments:i,p:r,q:o},t=t||1,e=e||.4,n=Math.floor(n)||64,i=Math.floor(i)||8,r=r||2,o=o||3;var a,s,u=[],l=[],h=[],c=[],p=new n8,d=new n8,f=new n8,m=new n8,g=new n8,v=new n8,$=new n8;for(a=0;a<=n;++a){var y=a/n*r*Math.PI*2;for(E(y,r,o,t,f),E(y+.01,r,o,t,m),v.subVectors(m,f),$.addVectors(m,f),g.crossVectors(v,$),$.crossVectors(g,v),g.normalize(),$.normalize(),s=0;s<=i;++s){var _=s/i*Math.PI*2,x=-e*Math.cos(_),b=e*Math.sin(_);p.x=f.x+(x*$.x+b*g.x),p.y=f.y+(x*$.y+b*g.y),p.z=f.z+(x*$.z+b*g.z),l.push(p.x,p.y,p.z),d.subVectors(p,f).normalize(),h.push(d.x,d.y,d.z),c.push(a/n),c.push(s/i)}}for(s=1;s<=n;s++)for(a=1;a<=i;a++){var w=(i+1)*(s-1)+(a-1),A=(i+1)*s+(a-1),T=(i+1)*s+a,S=(i+1)*(s-1)+a;u.push(w,A,S),u.push(A,T,S)}function E(t,e,n,i,r){var o=Math.cos(t),a=Math.sin(t),s=n/e*t,u=Math.cos(s);r.x=i*(2+u)*.5*o,r.y=i*(2+u)*a*.5,r.z=i*Math.sin(s)*.5}this.setIndex(u),this.addAttribute("position",new nK(l,3)),this.addAttribute("normal",new nK(h,3)),this.addAttribute("uv",new nK(c,2))}function aN(t,e,n,i,r){nH.call(this),this.type="TorusGeometry",this.parameters={radius:t,tube:e,radialSegments:n,tubularSegments:i,arc:r},this.fromBufferGeometry(new aB(t,e,n,i,r)),this.mergeVertices()}function aB(t,e,n,i,r){nJ.call(this),this.type="TorusBufferGeometry",this.parameters={radius:t,tube:e,radialSegments:n,tubularSegments:i,arc:r},t=t||1,e=e||.4,n=Math.floor(n)||8,i=Math.floor(i)||6,r=r||2*Math.PI;var o,a,s=[],u=[],l=[],h=[],c=new n8,p=new n8,d=new n8;for(o=0;o<=n;o++)for(a=0;a<=i;a++){var f=a/i*r,m=o/n*Math.PI*2;p.x=(t+e*Math.cos(m))*Math.cos(f),p.y=(t+e*Math.cos(m))*Math.sin(f),p.z=e*Math.sin(m),u.push(p.x,p.y,p.z),c.x=t*Math.cos(f),c.y=t*Math.sin(f),d.subVectors(p,c).normalize(),l.push(d.x,d.y,d.z),h.push(a/i),h.push(o/n)}for(o=1;o<=n;o++)for(a=1;a<=i;a++){var g=(i+1)*o+a-1,v=(i+1)*(o-1)+a-1,$=(i+1)*(o-1)+a,y=(i+1)*o+a;s.push(g,v,y),s.push(v,$,y)}this.setIndex(s),this.addAttribute("position",new nK(u,3)),this.addAttribute("normal",new nK(l,3)),this.addAttribute("uv",new nK(h,2))}function aO(t,e,n,i,r){var o,a;if(r===function(t,e,n,i){for(var r=0,o=e,a=n-i;o<n;o+=i)r+=(t[a]-t[o])*(t[o+1]+t[a+1]),a=o;return r}(t,e,n,i)>0)for(o=e;o<n;o+=i)a=aZ(o,t[o],t[o+1],a);else for(o=n-i;o>=e;o-=i)a=aZ(o,t[o],t[o+1],a);return a&&aX(a,a.next)&&(aq(a),a=a.next),a}function aG(t,e){if(!t)return t;e||(e=t);var n,i=t;do if(n=!1,i.steiner||!aX(i,i.next)&&0!==a7(i.prev,i,i.next))i=i.next;else{if(aq(i),(i=e=i.prev)===i.next)break;n=!0}while(n||i!==e);return e}function ak(t,e,n,i,r,o,a){if(t){!a&&o&&function(t,e,n,i){var r=t;do null===r.z&&(r.z=a5(r.x,r.y,e,n,i)),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,n,i,r,o,a,s,u,l=1;do{for(n=t,t=null,o=null,a=0;n;){for(a++,i=n,s=0,e=0;e<l&&(s++,i=i.nextZ);e++);for(u=l;s>0||u>0&&i;)0!==s&&(0===u||!i||n.z<=i.z)?(r=n,n=n.nextZ,s--):(r=i,i=i.nextZ,u--),o?o.nextZ=r:t=r,r.prevZ=o,o=r;n=i}o.nextZ=null,l*=2}while(a>1)}(r)}(t,i,r,o);for(var s,u,l=t;t.prev!==t.next;)if(s=t.prev,u=t.next,o?az(t,i,r,o):aV(t))e.push(s.i/n),e.push(t.i/n),e.push(u.i/n),aq(t),t=u.next,l=u.next;else if((t=u)===l){a?1===a?ak(t=aU(t,e,n),e,n,i,r,o,2):2===a&&a2(t,e,n,i,r,o):ak(aG(t),e,n,i,r,o,1);break}}}function aV(t){var e=t.prev,n=t,i=t.next;if(a7(e,n,i)>=0)return!1;for(var r=t.next.next;r!==t.prev;){if(a6(e.x,e.y,n.x,n.y,i.x,i.y,r.x,r.y)&&a7(r.prev,r,r.next)>=0)return!1;r=r.next}return!0}function az(t,e,n,i){var r=t.prev,o=t,a=t.next;if(a7(r,o,a)>=0)return!1;for(var s=r.x<o.x?r.x<a.x?r.x:a.x:o.x<a.x?o.x:a.x,u=r.y<o.y?r.y<a.y?r.y:a.y:o.y<a.y?o.y:a.y,l=r.x>o.x?r.x>a.x?r.x:a.x:o.x>a.x?o.x:a.x,h=r.y>o.y?r.y>a.y?r.y:a.y:o.y>a.y?o.y:a.y,c=a5(s,u,e,n,i),p=a5(l,h,e,n,i),d=t.nextZ;d&&d.z<=p;){if(d!==t.prev&&d!==t.next&&a6(r.x,r.y,o.x,o.y,a.x,a.y,d.x,d.y)&&a7(d.prev,d,d.next)>=0)return!1;d=d.nextZ}for(d=t.prevZ;d&&d.z>=c;){if(d!==t.prev&&d!==t.next&&a6(r.x,r.y,o.x,o.y,a.x,a.y,d.x,d.y)&&a7(d.prev,d,d.next)>=0)return!1;d=d.prevZ}return!0}function aU(t,e,n){var i=t;do{var r=i.prev,o=i.next.next;!aX(r,o)&&aY(r,i,i.next,o)&&aK(r,o)&&aK(o,r)&&(e.push(r.i/n),e.push(i.i/n),e.push(o.i/n),aq(i),aq(i.next),i=t=o),i=i.next}while(i!==t);return i}function a2(t,e,n,i,r,o){var a=t;do{for(var s=a.next.next;s!==a.prev;){if(a.i!==s.i&&aW(a,s)){var u=aj(a,s);return a=aG(a,a.next),u=aG(u,u.next),ak(a,e,n,i,r,o),void ak(u,e,n,i,r,o)}s=s.next}a=a.next}while(a!==t)}function aH(t,e){return t.x-e.x}function aF(t,e){if(e=function(t,e){var n,i=e,r=t.x,o=t.y,a=-1/0;do{if(o<=i.y&&o>=i.next.y&&i.next.y!==i.y){var s=i.x+(o-i.y)*(i.next.x-i.x)/(i.next.y-i.y);if(s<=r&&s>a){if(a=s,s===r){if(o===i.y)return i;if(o===i.next.y)return i.next}n=i.x<i.next.x?i:i.next}}i=i.next}while(i!==e);if(!n)return null;if(r===a)return n.prev;var u,l=n,h=n.x,c=n.y,p=1/0;for(i=n.next;i!==l;)r>=i.x&&i.x>=h&&r!==i.x&&a6(o<c?r:a,o,h,c,o<c?a:r,o,i.x,i.y)&&((u=Math.abs(o-i.y)/(r-i.x))<p||u===p&&i.x>n.x)&&aK(i,t)&&(n=i,p=u),i=i.next;return n}(t,e)){var n=aj(e,t);aG(n,n.next)}}function a5(t,e,n,i,r){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-n)*r)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-i)*r)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function a4(t){var e=t,n=t;do e.x<n.x&&(n=e),e=e.next;while(e!==t);return n}function a6(t,e,n,i,r,o,a,s){return(r-a)*(e-s)-(t-a)*(o-s)>=0&&(t-a)*(i-s)-(n-a)*(e-s)>=0&&(n-a)*(o-s)-(r-a)*(i-s)>=0}function aW(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var n=t;do{if(n.i!==t.i&&n.next.i!==t.i&&n.i!==e.i&&n.next.i!==e.i&&aY(n,n.next,t,e))return!0;n=n.next}while(n!==t);return!1}(t,e)&&aK(t,e)&&aK(e,t)&&function(t,e){var n=t,i=!1,r=(t.x+e.x)/2,o=(t.y+e.y)/2;do n.y>o!=n.next.y>o&&n.next.y!==n.y&&r<(n.next.x-n.x)*(o-n.y)/(n.next.y-n.y)+n.x&&(i=!i),n=n.next;while(n!==t);return i}(t,e)}function a7(t,e,n){return(e.y-t.y)*(n.x-e.x)-(e.x-t.x)*(n.y-e.y)}function aX(t,e){return t.x===e.x&&t.y===e.y}function aY(t,e,n,i){return!!(aX(t,e)&&aX(n,i)||aX(t,i)&&aX(n,e))||a7(t,e,n)>0!=a7(t,e,i)>0&&a7(n,i,t)>0!=a7(n,i,e)>0}function aK(t,e){return 0>a7(t.prev,t,t.next)?a7(t,e,t.next)>=0&&a7(t,t.prev,e)>=0:0>a7(t,e,t.prev)||0>a7(t,t.next,e)}function aj(t,e){var n=new aQ(t.i,t.x,t.y),i=new aQ(e.i,e.x,e.y),r=t.next,o=e.prev;return t.next=e,e.prev=t,n.next=r,r.prev=n,i.next=n,n.prev=i,o.next=i,i.prev=o,i}function aZ(t,e,n,i){var r=new aQ(t,e,n);return i?(r.next=i.next,r.prev=i,i.next.prev=r,i.next=r):(r.prev=r,r.next=r),r}function aq(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 aQ(t,e,n){this.i=t,this.x=e,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}ae.prototype.isFogExp2=!0,ae.prototype.clone=function(){return new ae(this.color,this.density)},ae.prototype.toJSON=function(){return{type:"FogExp2",color:this.color.getHex(),density:this.density}},an.prototype.isFog=!0,an.prototype.clone=function(){return new an(this.color,this.near,this.far)},an.prototype.toJSON=function(){return{type:"Fog",color:this.color.getHex(),near:this.near,far:this.far}},ai.prototype=Object.assign(Object.create(nU.prototype),{constructor:ai,copy:function(t,e){return nU.prototype.copy.call(this,t,e),null!==t.background&&(this.background=t.background.clone()),null!==t.fog&&(this.fog=t.fog.clone()),null!==t.overrideMaterial&&(this.overrideMaterial=t.overrideMaterial.clone()),this.autoUpdate=t.autoUpdate,this.matrixAutoUpdate=t.matrixAutoUpdate,this},toJSON:function(t){var e=nU.prototype.toJSON.call(this,t);return null!==this.background&&(e.object.background=this.background.toJSON(t)),null!==this.fog&&(e.object.fog=this.fog.toJSON()),e}}),Object.defineProperty(ar.prototype,"needsUpdate",{set:function(t){!0===t&&this.version++}}),Object.assign(ar.prototype,{isInterleavedBuffer:!0,onUploadCallback:function(){},setArray:function(t){if(Array.isArray(t))throw TypeError("THREE.BufferAttribute: array should be a Typed Array.");return this.count=void 0!==t?t.length/this.stride:0,this.array=t,this},setDynamic:function(t){return this.dynamic=t,this},copy:function(t){return this.array=new t.array.constructor(t.array),this.count=t.count,this.stride=t.stride,this.dynamic=t.dynamic,this},copyAt:function(t,e,n){t*=this.stride,n*=e.stride;for(var i=0,r=this.stride;i<r;i++)this.array[t+i]=e.array[n+i];return this},set:function(t,e){return void 0===e&&(e=0),this.array.set(t,e),this},clone:function(){return(new this.constructor).copy(this)},onUpload:function(t){return this.onUploadCallback=t,this}}),Object.defineProperties(ao.prototype,{count:{get:function(){return this.data.count}},array:{get:function(){return this.data.array}}}),Object.assign(ao.prototype,{isInterleavedBufferAttribute:!0,setX:function(t,e){return this.data.array[t*this.data.stride+this.offset]=e,this},setY:function(t,e){return this.data.array[t*this.data.stride+this.offset+1]=e,this},setZ:function(t,e){return this.data.array[t*this.data.stride+this.offset+2]=e,this},setW:function(t,e){return this.data.array[t*this.data.stride+this.offset+3]=e,this},getX:function(t){return this.data.array[t*this.data.stride+this.offset]},getY:function(t){return this.data.array[t*this.data.stride+this.offset+1]},getZ:function(t){return this.data.array[t*this.data.stride+this.offset+2]},getW:function(t){return this.data.array[t*this.data.stride+this.offset+3]},setXY:function(t,e,n){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this},setXYZ:function(t,e,n,i){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this.data.array[t+2]=i,this},setXYZW:function(t,e,n,i,r){return t=t*this.data.stride+this.offset,this.data.array[t+0]=e,this.data.array[t+1]=n,this.data.array[t+2]=i,this.data.array[t+3]=r,this}}),aa.prototype=Object.create(io.prototype),aa.prototype.constructor=aa,aa.prototype.isSpriteMaterial=!0,aa.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.rotation=t.rotation,this.sizeAttenuation=t.sizeAttenuation,this},as.prototype=Object.assign(Object.create(nU.prototype),{constructor:as,isSprite:!0,raycast:function(){var t=new n8,e=new n8,n=new n8,i=new n$,r=new n$,o=new ny,a=new n8,s=new n8,u=new n8,l=new n$,h=new n$,c=new n$;function p(t,e,n,a,s,u){i.subVectors(t,n).addScalar(.5).multiply(a),void 0!==s?(r.x=u*i.x-s*i.y,r.y=s*i.x+u*i.y):r.copy(i),t.copy(e),t.x+=r.x,t.y+=r.y,t.applyMatrix4(o)}return function(i,r){e.setFromMatrixScale(this.matrixWorld),o.getInverse(this.modelViewMatrix).premultiply(this.matrixWorld),n.setFromMatrixPosition(this.modelViewMatrix);var d,f,m=this.material.rotation;0!==m&&(f=Math.cos(m),d=Math.sin(m));var g=this.center;p(a.set(-.5,-.5,0),n,g,e,d,f),p(s.set(.5,-.5,0),n,g,e,d,f),p(u.set(.5,.5,0),n,g,e,d,f),l.set(0,0),h.set(1,0),c.set(1,1);var v=i.ray.intersectTriangle(a,s,u,!1,t);if(null!==v||(p(s.set(-.5,.5,0),n,g,e,d,f),h.set(0,1),null!==(v=i.ray.intersectTriangle(a,u,s,!1,t)))){var $=i.ray.origin.distanceTo(t);$<i.near||$>i.far||r.push({distance:$,point:t.clone(),uv:iu.getUV(t,a,s,u,l,h,c,new n$),face:null,object:this})}}}(),clone:function(){return new this.constructor(this.material).copy(this)},copy:function(t){return nU.prototype.copy.call(this,t),void 0!==t.center&&this.center.copy(t.center),this}}),au.prototype=Object.assign(Object.create(nU.prototype),{constructor:au,copy:function(t){nU.prototype.copy.call(this,t,!1);for(var e=t.levels,n=0,i=e.length;n<i;n++){var r=e[n];this.addLevel(r.object.clone(),r.distance)}return this},addLevel:function(t,e){void 0===e&&(e=0),e=Math.abs(e);for(var n=this.levels,i=0;i<n.length&&!(e<n[i].distance);i++);n.splice(i,0,{distance:e,object:t}),this.add(t)},getObjectForDistance:function(t){for(var e=this.levels,n=1,i=e.length;n<i&&!(t<e[n].distance);n++);return e[n-1].object},raycast:(uD=new n8,function(t,e){uD.setFromMatrixPosition(this.matrixWorld);var n=t.ray.origin.distanceTo(uD);this.getObjectForDistance(n).raycast(t,e)}),update:(uN=new n8,uB=new n8,function(t){var e=this.levels;if(e.length>1){uN.setFromMatrixPosition(t.matrixWorld),uB.setFromMatrixPosition(this.matrixWorld);var n=uN.distanceTo(uB);e[0].object.visible=!0;for(var i=1,r=e.length;i<r&&n>=e[i].distance;i++)e[i-1].object.visible=!1,e[i].object.visible=!0;for(;i<r;i++)e[i].object.visible=!1}}),toJSON:function(t){var e=nU.prototype.toJSON.call(this,t);e.object.levels=[];for(var n=this.levels,i=0,r=n.length;i<r;i++){var o=n[i];e.object.levels.push({object:o.object.uuid,distance:o.distance})}return e}}),Object.assign(al.prototype,{calculateInverses:function(){this.boneInverses=[];for(var t=0,e=this.bones.length;t<e;t++){var n=new ny;this.bones[t]&&n.getInverse(this.bones[t].matrixWorld),this.boneInverses.push(n)}},pose:function(){var t,e,n;for(e=0,n=this.bones.length;e<n;e++)(t=this.bones[e])&&t.matrixWorld.getInverse(this.boneInverses[e]);for(e=0,n=this.bones.length;e<n;e++)(t=this.bones[e])&&(t.parent&&t.parent.isBone?(t.matrix.getInverse(t.parent.matrixWorld),t.matrix.multiply(t.matrixWorld)):t.matrix.copy(t.matrixWorld),t.matrix.decompose(t.position,t.quaternion,t.scale))},update:(uO=new ny,uG=new ny,function(){for(var t=this.bones,e=this.boneInverses,n=this.boneMatrices,i=this.boneTexture,r=0,o=t.length;r<o;r++){var a=t[r]?t[r].matrixWorld:uG;uO.multiplyMatrices(a,e[r]),uO.toArray(n,16*r)}void 0!==i&&(i.needsUpdate=!0)}),clone:function(){return new al(this.bones,this.boneInverses)},getBoneByName:function(t){for(var e=0,n=this.bones.length;e<n;e++){var i=this.bones[e];if(i.name===t)return i}}}),ah.prototype=Object.assign(Object.create(nU.prototype),{constructor:ah,isBone:!0}),ac.prototype=Object.assign(Object.create(ih.prototype),{constructor:ac,isSkinnedMesh:!0,initBones:function(){var t,e,n,i,r=[];if(this.geometry&&void 0!==this.geometry.bones){for(n=0,i=this.geometry.bones.length;n<i;n++)e=this.geometry.bones[n],t=new ah,r.push(t),t.name=e.name,t.position.fromArray(e.pos),t.quaternion.fromArray(e.rotq),void 0!==e.scl&&t.scale.fromArray(e.scl);for(n=0,i=this.geometry.bones.length;n<i;n++)-1!==(e=this.geometry.bones[n]).parent&&null!==e.parent&&void 0!==r[e.parent]?r[e.parent].add(r[n]):this.add(r[n])}return this.updateMatrixWorld(!0),r},bind:function(t,e){this.skeleton=t,void 0===e&&(this.updateMatrixWorld(!0),this.skeleton.calculateInverses(),e=this.matrixWorld),this.bindMatrix.copy(e),this.bindMatrixInverse.getInverse(e)},pose:function(){this.skeleton.pose()},normalizeSkinWeights:function(){var t,e;if(this.geometry&&this.geometry.isGeometry)for(e=0;e<this.geometry.skinWeights.length;e++){var n=this.geometry.skinWeights[e];(t=1/n.manhattanLength())!=1/0?n.multiplyScalar(t):n.set(1,0,0,0)}else if(this.geometry&&this.geometry.isBufferGeometry){var i=new nT,r=this.geometry.attributes.skinWeight;for(e=0;e<r.count;e++)i.x=r.getX(e),i.y=r.getY(e),i.z=r.getZ(e),i.w=r.getW(e),(t=1/i.manhattanLength())!=1/0?i.multiplyScalar(t):i.set(1,0,0,0),r.setXYZW(e,i.x,i.y,i.z,i.w)}},updateMatrixWorld:function(t){ih.prototype.updateMatrixWorld.call(this,t),"attached"===this.bindMode?this.bindMatrixInverse.getInverse(this.matrixWorld):"detached"===this.bindMode?this.bindMatrixInverse.getInverse(this.bindMatrix):console.warn("THREE.SkinnedMesh: Unrecognized bindMode: "+this.bindMode)},clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}}),ap.prototype=Object.create(io.prototype),ap.prototype.constructor=ap,ap.prototype.isLineBasicMaterial=!0,ap.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.color.copy(t.color),this.linewidth=t.linewidth,this.linecap=t.linecap,this.linejoin=t.linejoin,this},ad.prototype=Object.assign(Object.create(nU.prototype),{constructor:ad,isLine:!0,computeLineDistances:(uk=new n8,uV=new n8,function(){var t=this.geometry;if(t.isBufferGeometry){if(null===t.index){for(var e=t.attributes.position,n=[0],i=1,r=e.count;i<r;i++)uk.fromBufferAttribute(e,i-1),uV.fromBufferAttribute(e,i),n[i]=n[i-1],n[i]+=uk.distanceTo(uV);t.addAttribute("lineDistance",new nK(n,1))}else console.warn("THREE.Line.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.")}else if(t.isGeometry){var o=t.vertices;for((n=t.lineDistances)[0]=0,i=1,r=o.length;i<r;i++)n[i]=n[i-1],n[i]+=o[i-1].distanceTo(o[i])}return this}),raycast:(uz=new ny,uU=new is,u2=new nC,function(t,e){var n=t.linePrecision,i=this.geometry,r=this.matrixWorld;if(null===i.boundingSphere&&i.computeBoundingSphere(),u2.copy(i.boundingSphere),u2.applyMatrix4(r),u2.radius+=n,!1!==t.ray.intersectsSphere(u2)){uz.getInverse(r),uU.copy(t.ray).applyMatrix4(uz);var o=n/((this.scale.x+this.scale.y+this.scale.z)/3),a=o*o,s=new n8,u=new n8,l=new n8,h=new n8,c=this&&this.isLineSegments?2:1;if(i.isBufferGeometry){var p=i.index,d=i.attributes.position.array;if(null!==p)for(var f=p.array,m=0,g=f.length-1;m<g;m+=c){var v=f[m],$=f[m+1];s.fromArray(d,3*v),u.fromArray(d,3*$),uU.distanceSqToSegment(s,u,h,l)>a||(h.applyMatrix4(this.matrixWorld),(y=t.ray.origin.distanceTo(h))<t.near||y>t.far||e.push({distance:y,point:l.clone().applyMatrix4(this.matrixWorld),index:m,face:null,faceIndex:null,object:this}))}else for(m=0,g=d.length/3-1;m<g;m+=c)s.fromArray(d,3*m),u.fromArray(d,3*m+3),uU.distanceSqToSegment(s,u,h,l)>a||(h.applyMatrix4(this.matrixWorld),(y=t.ray.origin.distanceTo(h))<t.near||y>t.far||e.push({distance:y,point:l.clone().applyMatrix4(this.matrixWorld),index:m,face:null,faceIndex:null,object:this}))}else if(i.isGeometry){var y,_=i.vertices,x=_.length;for(m=0;m<x-1;m+=c)uU.distanceSqToSegment(_[m],_[m+1],h,l)>a||(h.applyMatrix4(this.matrixWorld),(y=t.ray.origin.distanceTo(h))<t.near||y>t.far||e.push({distance:y,point:l.clone().applyMatrix4(this.matrixWorld),index:m,face:null,faceIndex:null,object:this}))}}}),copy:function(t){return nU.prototype.copy.call(this,t),this.geometry.copy(t.geometry),this.material.copy(t.material),this},clone:function(){return(new this.constructor).copy(this)}}),af.prototype=Object.assign(Object.create(ad.prototype),{constructor:af,isLineSegments:!0,computeLineDistances:(uH=new n8,uF=new n8,function(){var t=this.geometry;if(t.isBufferGeometry){if(null===t.index){for(var e=t.attributes.position,n=[],i=0,r=e.count;i<r;i+=2)uH.fromBufferAttribute(e,i),uF.fromBufferAttribute(e,i+1),n[i]=0===i?0:n[i-1],n[i+1]=n[i]+uH.distanceTo(uF);t.addAttribute("lineDistance",new nK(n,1))}else console.warn("THREE.LineSegments.computeLineDistances(): Computation only possible with non-indexed BufferGeometry.")}else if(t.isGeometry){var o=t.vertices;for(n=t.lineDistances,i=0,r=o.length;i<r;i+=2)uH.copy(o[i]),uF.copy(o[i+1]),n[i]=0===i?0:n[i-1],n[i+1]=n[i]+uH.distanceTo(uF)}return this})}),am.prototype=Object.assign(Object.create(ad.prototype),{constructor:am,isLineLoop:!0}),ag.prototype=Object.create(io.prototype),ag.prototype.constructor=ag,ag.prototype.isPointsMaterial=!0,ag.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.size=t.size,this.sizeAttenuation=t.sizeAttenuation,this.morphTargets=t.morphTargets,this},av.prototype=Object.assign(Object.create(nU.prototype),{constructor:av,isPoints:!0,raycast:(u5=new ny,u4=new is,u6=new nC,function(t,e){var n=this,i=this.geometry,r=this.matrixWorld,o=t.params.Points.threshold;if(null===i.boundingSphere&&i.computeBoundingSphere(),u6.copy(i.boundingSphere),u6.applyMatrix4(r),u6.radius+=o,!1!==t.ray.intersectsSphere(u6)){u5.getInverse(r),u4.copy(t.ray).applyMatrix4(u5);var a=o/((this.scale.x+this.scale.y+this.scale.z)/3),s=a*a,u=new n8,l=new n8;if(i.isBufferGeometry){var h=i.index,c=i.attributes.position.array;if(null!==h)for(var p=h.array,d=0,f=p.length;d<f;d++){var m=p[d];u.fromArray(c,3*m),$(u,m)}else{d=0;for(var g=c.length/3;d<g;d++)u.fromArray(c,3*d),$(u,d)}}else{var v=i.vertices;for(d=0,g=v.length;d<g;d++)$(v[d],d)}}function $(i,o){var a=u4.distanceSqToPoint(i);if(a<s){u4.closestPointToPoint(i,l),l.applyMatrix4(r);var u=t.ray.origin.distanceTo(l);if(u<t.near||u>t.far)return;e.push({distance:u,distanceToRay:Math.sqrt(a),point:l.clone(),index:o,face:null,object:n})}}}),clone:function(){return new this.constructor(this.geometry,this.material).copy(this)}}),a$.prototype=Object.assign(Object.create(nA.prototype),{constructor:a$,isVideoTexture:!0,update:function(){var t=this.image;t.readyState>=t.HAVE_CURRENT_DATA&&(this.needsUpdate=!0)}}),ay.prototype=Object.create(nA.prototype),ay.prototype.constructor=ay,ay.prototype.isCompressedTexture=!0,a_.prototype=Object.create(nA.prototype),a_.prototype.constructor=a_,a_.prototype.isCanvasTexture=!0,a8.prototype=Object.create(nA.prototype),a8.prototype.constructor=a8,a8.prototype.isDepthTexture=!0,ax.prototype=Object.create(nJ.prototype),ax.prototype.constructor=ax,ab.prototype=Object.create(nH.prototype),ab.prototype.constructor=ab,aw.prototype=Object.create(nJ.prototype),aw.prototype.constructor=aw,aA.prototype=Object.create(nH.prototype),aA.prototype.constructor=aA,aT.prototype=Object.create(nJ.prototype),aT.prototype.constructor=aT,aS.prototype=Object.create(nH.prototype),aS.prototype.constructor=aS,aE.prototype=Object.create(aT.prototype),aE.prototype.constructor=aE,a0.prototype=Object.create(nH.prototype),a0.prototype.constructor=a0,aP.prototype=Object.create(aT.prototype),aP.prototype.constructor=aP,aC.prototype=Object.create(nH.prototype),aC.prototype.constructor=aC,aL.prototype=Object.create(aT.prototype),aL.prototype.constructor=aL,aM.prototype=Object.create(nH.prototype),aM.prototype.constructor=aM,a1.prototype=Object.create(aT.prototype),a1.prototype.constructor=a1,aR.prototype=Object.create(nH.prototype),aR.prototype.constructor=aR,a3.prototype=Object.create(nJ.prototype),a3.prototype.constructor=a3,aI.prototype=Object.create(nH.prototype),aI.prototype.constructor=aI,aD.prototype=Object.create(nJ.prototype),aD.prototype.constructor=aD,aN.prototype=Object.create(nH.prototype),aN.prototype.constructor=aN,aB.prototype=Object.create(nJ.prototype),aB.prototype.constructor=aB;var aJ={area:function(t){for(var e=t.length,n=0,i=e-1,r=0;r<e;i=r++)n+=t[i].x*t[r].y-t[r].x*t[i].y;return .5*n},isClockWise:function(t){return 0>aJ.area(t)},triangulateShape:function(t,e){var n=[],i=[],r=[];a9(t),st(n,t);var o=t.length;e.forEach(a9);for(var a=0;a<e.length;a++)i.push(o),o+=e[a].length,st(n,e[a]);var s=function(t,e,n){n=n||2;var i,r,o,a,s,u,l,h=e&&e.length,c=h?e[0]*n:t.length,p=aO(t,0,c,n,!0),d=[];if(!p)return d;if(h&&(p=function(t,e,n,i){var r,o,a,s=[];for(r=0,o=e.length;r<o;r++)(a=aO(t,e[r]*i,r<o-1?e[r+1]*i:t.length,i,!1))===a.next&&(a.steiner=!0),s.push(a4(a));for(s.sort(aH),r=0;r<s.length;r++)aF(s[r],n),n=aG(n,n.next);return n}(t,e,p,n)),t.length>80*n){i=o=t[0],r=a=t[1];for(var f=n;f<c;f+=n)(s=t[f])<i&&(i=s),(u=t[f+1])<r&&(r=u),s>o&&(o=s),u>a&&(a=u);l=0!==(l=Math.max(o-i,a-r))?1/l:0}return ak(p,d,n,i,r,l),d}(n,i);for(a=0;a<s.length;a+=3)r.push(s.slice(a,a+3));return r}};function a9(t){var e=t.length;e>2&&t[e-1].equals(t[0])&&t.pop()}function st(t,e){for(var n=0;n<e.length;n++)t.push(e[n].x),t.push(e[n].y)}function se(t,e){nH.call(this),this.type="ExtrudeGeometry",this.parameters={shapes:t,options:e},this.fromBufferGeometry(new sn(t,e)),this.mergeVertices()}function sn(t,e){nJ.call(this),this.type="ExtrudeBufferGeometry",this.parameters={shapes:t,options:e};for(var n=this,i=[],r=[],o=0,a=(t=Array.isArray(t)?t:[t]).length;o<a;o++)s(t[o]);function s(t){var o=[],a=void 0!==e.curveSegments?e.curveSegments:12,s=void 0!==e.steps?e.steps:1,u=void 0!==e.depth?e.depth:100,l=void 0===e.bevelEnabled||e.bevelEnabled,h=void 0!==e.bevelThickness?e.bevelThickness:6,c=void 0!==e.bevelSize?e.bevelSize:h-2,p=void 0!==e.bevelSegments?e.bevelSegments:3,d=e.extrudePath,f=void 0!==e.UVGenerator?e.UVGenerator:si;void 0!==e.amount&&(console.warn("THREE.ExtrudeBufferGeometry: amount has been renamed to depth."),u=e.amount);var m,g,v,$,y,_,x,b,w=!1;d&&(m=d.getSpacedPoints(s),w=!0,l=!1,g=d.computeFrenetFrames(s,!1),v=new n8,$=new n8,y=new n8),l||(p=0,h=0,c=0);var A=t.extractPoints(a),T=A.shape,S=A.holes;if(!aJ.isClockWise(T))for(T=T.reverse(),x=0,b=S.length;x<b;x++)_=S[x],aJ.isClockWise(_)&&(S[x]=_.reverse());var E=aJ.triangulateShape(T,S),P=T;for(x=0,b=S.length;x<b;x++)_=S[x],T=T.concat(_);function C(t,e,n){return e||console.error("THREE.ExtrudeGeometry: vec does not exist"),e.clone().multiplyScalar(n).add(t)}var L,M,R,I,D,N,B=T.length,O=E.length;function G(t,e,n){var i,r,o,a=t.x-e.x,s=t.y-e.y,u=n.x-t.x,l=n.y-t.y,h=a*a+s*s;if(Math.abs(a*l-s*u)>Number.EPSILON){var c=Math.sqrt(h),p=Math.sqrt(u*u+l*l),d=e.x-s/c,f=e.y+a/c,m=((n.x-l/p-d)*l-(n.y+u/p-f)*u)/(a*l-s*u),g=(i=d+a*m-t.x)*i+(r=f+s*m-t.y)*r;if(g<=2)return new n$(i,r);o=Math.sqrt(g/2)}else{var v=!1;a>Number.EPSILON?u>Number.EPSILON&&(v=!0):a<-Number.EPSILON?u<-Number.EPSILON&&(v=!0):Math.sign(s)===Math.sign(l)&&(v=!0),v?(i=-s,r=a,o=Math.sqrt(h)):(i=a,r=s,o=Math.sqrt(h/2))}return new n$(i/o,r/o)}for(var k=[],V=0,z=P.length,U=z-1,H=V+1;V<z;V++,U++,H++)U===z&&(U=0),H===z&&(H=0),k[V]=G(P[V],P[U],P[H]);var F,W,X=[],Y=k.concat();for(x=0,b=S.length;x<b;x++){for(_=S[x],F=[],V=0,U=(z=_.length)-1,H=V+1;V<z;V++,U++,H++)U===z&&(U=0),H===z&&(H=0),F[V]=G(_[V],_[U],_[H]);X.push(F),Y=Y.concat(F)}for(L=0;L<p;L++){for(I=h*Math.cos((R=L/p)*Math.PI/2),M=c*Math.sin(R*Math.PI/2),V=0,z=P.length;V<z;V++)j((D=C(P[V],k[V],M)).x,D.y,-I);for(x=0,b=S.length;x<b;x++)for(_=S[x],F=X[x],V=0,z=_.length;V<z;V++)j((D=C(_[V],F[V],M)).x,D.y,-I)}for(M=c,V=0;V<B;V++)D=l?C(T[V],Y[V],M):T[V],w?($.copy(g.normals[0]).multiplyScalar(D.x),v.copy(g.binormals[0]).multiplyScalar(D.y),y.copy(m[0]).add($).add(v),j(y.x,y.y,y.z)):j(D.x,D.y,0);for(W=1;W<=s;W++)for(V=0;V<B;V++)D=l?C(T[V],Y[V],M):T[V],w?($.copy(g.normals[W]).multiplyScalar(D.x),v.copy(g.binormals[W]).multiplyScalar(D.y),y.copy(m[W]).add($).add(v),j(y.x,y.y,y.z)):j(D.x,D.y,u/s*W);for(L=p-1;L>=0;L--){for(I=h*Math.cos((R=L/p)*Math.PI/2),M=c*Math.sin(R*Math.PI/2),V=0,z=P.length;V<z;V++)j((D=C(P[V],k[V],M)).x,D.y,u+I);for(x=0,b=S.length;x<b;x++)for(_=S[x],F=X[x],V=0,z=_.length;V<z;V++)D=C(_[V],F[V],M),w?j(D.x,D.y+m[s-1].y,m[s-1].x+I):j(D.x,D.y,u+I)}function K(t,e){var n,i;for(V=t.length;--V>=0;){n=V,(i=V-1)<0&&(i=t.length-1);var r=0,o=s+2*p;for(r=0;r<o;r++){var a=B*r,u=B*(r+1);q(e+n+a,e+i+a,e+i+u,e+n+u)}}}function j(t,e,n){o.push(t),o.push(e),o.push(n)}function Z(t,e,r){Q(t),Q(e),Q(r);var o=i.length/3,a=f.generateTopUV(n,i,o-3,o-2,o-1);J(a[0]),J(a[1]),J(a[2])}function q(t,e,r,o){Q(t),Q(e),Q(o),Q(e),Q(r),Q(o);var a=i.length/3,s=f.generateSideWallUV(n,i,a-6,a-3,a-2,a-1);J(s[0]),J(s[1]),J(s[3]),J(s[1]),J(s[2]),J(s[3])}function Q(t){i.push(o[3*t+0]),i.push(o[3*t+1]),i.push(o[3*t+2])}function J(t){r.push(t.x),r.push(t.y)}(function(){var t=i.length/3;if(l){var e=0,r=B*e;for(V=0;V<O;V++)Z((N=E[V])[2]+r,N[1]+r,N[0]+r);for(r=B*(e=s+2*p),V=0;V<O;V++)Z((N=E[V])[0]+r,N[1]+r,N[2]+r)}else{for(V=0;V<O;V++)Z((N=E[V])[2],N[1],N[0]);for(V=0;V<O;V++)Z((N=E[V])[0]+B*s,N[1]+B*s,N[2]+B*s)}n.addGroup(t,i.length/3-t,0)})(),function(){var t=i.length/3,e=0;for(K(P,e),e+=P.length,x=0,b=S.length;x<b;x++)K(_=S[x],e),e+=_.length;n.addGroup(t,i.length/3-t,1)}()}this.addAttribute("position",new nK(i,3)),this.addAttribute("uv",new nK(r,2)),this.computeVertexNormals()}se.prototype=Object.create(nH.prototype),se.prototype.constructor=se,se.prototype.toJSON=function(){var t=nH.prototype.toJSON.call(this);return sr(this.parameters.shapes,this.parameters.options,t)},sn.prototype=Object.create(nJ.prototype),sn.prototype.constructor=sn,sn.prototype.toJSON=function(){var t=nJ.prototype.toJSON.call(this);return sr(this.parameters.shapes,this.parameters.options,t)};var si={generateTopUV:function(t,e,n,i,r){var o=e[3*n],a=e[3*n+1],s=e[3*i],u=e[3*i+1],l=e[3*r],h=e[3*r+1];return[new n$(o,a),new n$(s,u),new n$(l,h)]},generateSideWallUV:function(t,e,n,i,r,o){var a=e[3*n],s=e[3*n+1],u=e[3*n+2],l=e[3*i],h=e[3*i+1],c=e[3*i+2],p=e[3*r],d=e[3*r+1],f=e[3*r+2],m=e[3*o],g=e[3*o+1],v=e[3*o+2];return .01>Math.abs(s-h)?[new n$(a,1-u),new n$(l,1-c),new n$(p,1-f),new n$(m,1-v)]:[new n$(s,1-u),new n$(h,1-c),new n$(d,1-f),new n$(g,1-v)]}};function sr(t,e,n){if(n.shapes=[],Array.isArray(t))for(var i=0,r=t.length;i<r;i++){var o=t[i];n.shapes.push(o.uuid)}else n.shapes.push(t.uuid);return void 0!==e.extrudePath&&(n.options.extrudePath=e.extrudePath.toJSON()),n}function so(t,e){nH.call(this),this.type="TextGeometry",this.parameters={text:t,parameters:e},this.fromBufferGeometry(new sa(t,e)),this.mergeVertices()}function sa(t,e){var n=(e=e||{}).font;if(!n||!n.isFont)return console.error("THREE.TextGeometry: font parameter is not an instance of THREE.Font."),new nH;var i=n.generateShapes(t,e.size);e.depth=void 0!==e.height?e.height:50,void 0===e.bevelThickness&&(e.bevelThickness=10),void 0===e.bevelSize&&(e.bevelSize=8),void 0===e.bevelEnabled&&(e.bevelEnabled=!1),sn.call(this,i,e),this.type="TextBufferGeometry"}function ss(t,e,n,i,r,o,a){nH.call(this),this.type="SphereGeometry",this.parameters={radius:t,widthSegments:e,heightSegments:n,phiStart:i,phiLength:r,thetaStart:o,thetaLength:a},this.fromBufferGeometry(new su(t,e,n,i,r,o,a)),this.mergeVertices()}function su(t,e,n,i,r,o,a){nJ.call(this),this.type="SphereBufferGeometry",this.parameters={radius:t,widthSegments:e,heightSegments:n,phiStart:i,phiLength:r,thetaStart:o,thetaLength:a},t=t||1,e=Math.max(3,Math.floor(e)||8),n=Math.max(2,Math.floor(n)||6),i=void 0!==i?i:0,r=void 0!==r?r:2*Math.PI;var s,u,l=(o=void 0!==o?o:0)+(a=void 0!==a?a:Math.PI),h=0,c=[],p=new n8,d=new n8,f=[],m=[],g=[],v=[];for(u=0;u<=n;u++){var $=[],y=u/n;for(s=0;s<=e;s++){var _=s/e;p.x=-t*Math.cos(i+_*r)*Math.sin(o+y*a),p.y=t*Math.cos(o+y*a),p.z=t*Math.sin(i+_*r)*Math.sin(o+y*a),m.push(p.x,p.y,p.z),d.set(p.x,p.y,p.z).normalize(),g.push(d.x,d.y,d.z),v.push(_,1-y),$.push(h++)}c.push($)}for(u=0;u<n;u++)for(s=0;s<e;s++){var x=c[u][s+1],b=c[u][s],w=c[u+1][s],A=c[u+1][s+1];(0!==u||o>0)&&f.push(x,b,A),(u!==n-1||l<Math.PI)&&f.push(b,w,A)}this.setIndex(f),this.addAttribute("position",new nK(m,3)),this.addAttribute("normal",new nK(g,3)),this.addAttribute("uv",new nK(v,2))}function sl(t,e,n,i,r,o){nH.call(this),this.type="RingGeometry",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:i,thetaStart:r,thetaLength:o},this.fromBufferGeometry(new sh(t,e,n,i,r,o)),this.mergeVertices()}function sh(t,e,n,i,r,o){nJ.call(this),this.type="RingBufferGeometry",this.parameters={innerRadius:t,outerRadius:e,thetaSegments:n,phiSegments:i,thetaStart:r,thetaLength:o},t=t||.5,e=e||1,r=void 0!==r?r:0,o=void 0!==o?o:2*Math.PI,n=void 0!==n?Math.max(3,n):8;var a,s,u,l=[],h=[],c=[],p=[],d=t,f=(e-t)/(i=void 0!==i?Math.max(1,i):1),m=new n8,g=new n$;for(s=0;s<=i;s++){for(u=0;u<=n;u++)a=r+u/n*o,m.x=d*Math.cos(a),m.y=d*Math.sin(a),h.push(m.x,m.y,m.z),c.push(0,0,1),g.x=(m.x/e+1)/2,g.y=(m.y/e+1)/2,p.push(g.x,g.y);d+=f}for(s=0;s<i;s++){var v=s*(n+1);for(u=0;u<n;u++){var $=a=u+v,y=a+n+1,_=a+n+2,x=a+1;l.push($,y,x),l.push(y,_,x)}}this.setIndex(l),this.addAttribute("position",new nK(h,3)),this.addAttribute("normal",new nK(c,3)),this.addAttribute("uv",new nK(p,2))}function sc(t,e,n,i){nH.call(this),this.type="LatheGeometry",this.parameters={points:t,segments:e,phiStart:n,phiLength:i},this.fromBufferGeometry(new sp(t,e,n,i)),this.mergeVertices()}function sp(t,e,n,i){nJ.call(this),this.type="LatheBufferGeometry",this.parameters={points:t,segments:e,phiStart:n,phiLength:i},e=Math.floor(e)||12,n=n||0,i=i||2*Math.PI,i=nv.clamp(i,0,2*Math.PI);var r,o,a,s=[],u=[],l=[],h=1/e,c=new n8,p=new n$;for(o=0;o<=e;o++){var d=n+o*h*i,f=Math.sin(d),m=Math.cos(d);for(a=0;a<=t.length-1;a++)c.x=t[a].x*f,c.y=t[a].y,c.z=t[a].x*m,u.push(c.x,c.y,c.z),p.x=o/e,p.y=a/(t.length-1),l.push(p.x,p.y)}for(o=0;o<e;o++)for(a=0;a<t.length-1;a++){var g=r=a+o*t.length,v=r+t.length,$=r+t.length+1,y=r+1;s.push(g,v,y),s.push(v,$,y)}if(this.setIndex(s),this.addAttribute("position",new nK(u,3)),this.addAttribute("uv",new nK(l,2)),this.computeVertexNormals(),i===2*Math.PI){var _=this.attributes.normal.array,x=new n8,b=new n8,w=new n8;for(r=e*t.length*3,o=0,a=0;o<t.length;o++,a+=3)x.x=_[a+0],x.y=_[a+1],x.z=_[a+2],b.x=_[r+a+0],b.y=_[r+a+1],b.z=_[r+a+2],w.addVectors(x,b).normalize(),_[a+0]=_[r+a+0]=w.x,_[a+1]=_[r+a+1]=w.y,_[a+2]=_[r+a+2]=w.z}}function sd(t,e){nH.call(this),this.type="ShapeGeometry","object"==typeof e&&(console.warn("THREE.ShapeGeometry: Options parameter has been removed."),e=e.curveSegments),this.parameters={shapes:t,curveSegments:e},this.fromBufferGeometry(new sf(t,e)),this.mergeVertices()}function sf(t,e){nJ.call(this),this.type="ShapeBufferGeometry",this.parameters={shapes:t,curveSegments:e},e=e||12;var n=[],i=[],r=[],o=[],a=0,s=0;if(!1===Array.isArray(t))l(t);else for(var u=0;u<t.length;u++)l(t[u]),this.addGroup(a,s,u),a+=s,s=0;function l(t){var a,u,l,h=i.length/3,c=t.extractPoints(e),p=c.shape,d=c.holes;if(!1===aJ.isClockWise(p))for(p=p.reverse(),a=0,u=d.length;a<u;a++)l=d[a],!0===aJ.isClockWise(l)&&(d[a]=l.reverse());var f=aJ.triangulateShape(p,d);for(a=0,u=d.length;a<u;a++)l=d[a],p=p.concat(l);for(a=0,u=p.length;a<u;a++){var m=p[a];i.push(m.x,m.y,0),r.push(0,0,1),o.push(m.x,m.y)}for(a=0,u=f.length;a<u;a++){var g=f[a],v=g[0]+h,$=g[1]+h,y=g[2]+h;n.push(v,$,y),s+=3}}this.setIndex(n),this.addAttribute("position",new nK(i,3)),this.addAttribute("normal",new nK(r,3)),this.addAttribute("uv",new nK(o,2))}function sm(t,e){if(e.shapes=[],Array.isArray(t))for(var n=0,i=t.length;n<i;n++){var r=t[n];e.shapes.push(r.uuid)}else e.shapes.push(t.uuid);return e}function sg(t,e){nJ.call(this),this.type="EdgesGeometry",this.parameters={thresholdAngle:e},e=void 0!==e?e:1;var n,i,r,o,a=[],s=Math.cos(nv.DEG2RAD*e),u=[0,0],l={},h=["a","b","c"];t.isBufferGeometry?(o=new nH).fromBufferGeometry(t):o=t.clone(),o.mergeVertices(),o.computeFaceNormals();for(var c=o.vertices,p=o.faces,d=0,f=p.length;d<f;d++)for(var m=p[d],g=0;g<3;g++)n=m[h[g]],i=m[h[(g+1)%3]],u[0]=Math.min(n,i),u[1]=Math.max(n,i),void 0===l[r=u[0]+","+u[1]]?l[r]={index1:u[0],index2:u[1],face1:d,face2:void 0}:l[r].face2=d;for(r in l){var v=l[r];if(void 0===v.face2||p[v.face1].normal.dot(p[v.face2].normal)<=s){var $=c[v.index1];a.push($.x,$.y,$.z),$=c[v.index2],a.push($.x,$.y,$.z)}}this.addAttribute("position",new nK(a,3))}function sv(t,e,n,i,r,o,a,s){nH.call(this),this.type="CylinderGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:n,radialSegments:i,heightSegments:r,openEnded:o,thetaStart:a,thetaLength:s},this.fromBufferGeometry(new s$(t,e,n,i,r,o,a,s)),this.mergeVertices()}function s$(t,e,n,i,r,o,a,s){nJ.call(this),this.type="CylinderBufferGeometry",this.parameters={radiusTop:t,radiusBottom:e,height:n,radialSegments:i,heightSegments:r,openEnded:o,thetaStart:a,thetaLength:s};var u=this;t=void 0!==t?t:1,e=void 0!==e?e:1,n=n||1,i=Math.floor(i)||8,r=Math.floor(r)||1,o=void 0!==o&&o,a=void 0!==a?a:0,s=void 0!==s?s:2*Math.PI;var l=[],h=[],c=[],p=[],d=0,f=[],m=n/2,g=0;function v(n){var r,o,f,v=new n$,$=new n8,y=0,_=!0===n?t:e,x=!0===n?1:-1;for(o=d,r=1;r<=i;r++)h.push(0,m*x,0),c.push(0,x,0),p.push(.5,.5),d++;for(f=d,r=0;r<=i;r++){var b=r/i*s+a,w=Math.cos(b),A=Math.sin(b);$.x=_*A,$.y=m*x,$.z=_*w,h.push($.x,$.y,$.z),c.push(0,x,0),v.x=.5*w+.5,v.y=.5*A*x+.5,p.push(v.x,v.y),d++}for(r=0;r<i;r++){var T=o+r,S=f+r;!0===n?l.push(S,S+1,T):l.push(S+1,S,T),y+=3}u.addGroup(g,y,!0===n?1:2),g+=y}(function(){var o,v,$=new n8,y=new n8,_=0,x=(e-t)/n;for(v=0;v<=r;v++){var b=[],w=v/r,A=w*(e-t)+t;for(o=0;o<=i;o++){var T=o/i,S=T*s+a,E=Math.sin(S),P=Math.cos(S);y.x=A*E,y.y=-w*n+m,y.z=A*P,h.push(y.x,y.y,y.z),$.set(E,x,P).normalize(),c.push($.x,$.y,$.z),p.push(T,1-w),b.push(d++)}f.push(b)}for(o=0;o<i;o++)for(v=0;v<r;v++){var C=f[v][o],L=f[v+1][o],M=f[v+1][o+1],R=f[v][o+1];l.push(C,L,R),l.push(L,M,R),_+=6}u.addGroup(g,_,0),g+=_})(),!1===o&&(t>0&&v(!0),e>0&&v(!1)),this.setIndex(l),this.addAttribute("position",new nK(h,3)),this.addAttribute("normal",new nK(c,3)),this.addAttribute("uv",new nK(p,2))}function sy(t,e,n,i,r,o,a){sv.call(this,0,t,e,n,i,r,o,a),this.type="ConeGeometry",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:i,openEnded:r,thetaStart:o,thetaLength:a}}function s_(t,e,n,i,r,o,a){s$.call(this,0,t,e,n,i,r,o,a),this.type="ConeBufferGeometry",this.parameters={radius:t,height:e,radialSegments:n,heightSegments:i,openEnded:r,thetaStart:o,thetaLength:a}}function s8(t,e,n,i){nH.call(this),this.type="CircleGeometry",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:i},this.fromBufferGeometry(new sx(t,e,n,i)),this.mergeVertices()}function sx(t,e,n,i){nJ.call(this),this.type="CircleBufferGeometry",this.parameters={radius:t,segments:e,thetaStart:n,thetaLength:i},t=t||1,e=void 0!==e?Math.max(3,e):8,n=void 0!==n?n:0,i=void 0!==i?i:2*Math.PI;var r,o,a=[],s=[],u=[],l=[],h=new n8,c=new n$;for(s.push(0,0,0),u.push(0,0,1),l.push(.5,.5),o=0,r=3;o<=e;o++,r+=3){var p=n+o/e*i;h.x=t*Math.cos(p),h.y=t*Math.sin(p),s.push(h.x,h.y,h.z),u.push(0,0,1),c.x=(s[r]/t+1)/2,c.y=(s[r+1]/t+1)/2,l.push(c.x,c.y)}for(r=1;r<=e;r++)a.push(r,r+1,0);this.setIndex(a),this.addAttribute("position",new nK(s,3)),this.addAttribute("normal",new nK(u,3)),this.addAttribute("uv",new nK(l,2))}so.prototype=Object.create(nH.prototype),so.prototype.constructor=so,sa.prototype=Object.create(sn.prototype),sa.prototype.constructor=sa,ss.prototype=Object.create(nH.prototype),ss.prototype.constructor=ss,su.prototype=Object.create(nJ.prototype),su.prototype.constructor=su,sl.prototype=Object.create(nH.prototype),sl.prototype.constructor=sl,sh.prototype=Object.create(nJ.prototype),sh.prototype.constructor=sh,sc.prototype=Object.create(nH.prototype),sc.prototype.constructor=sc,sp.prototype=Object.create(nJ.prototype),sp.prototype.constructor=sp,sd.prototype=Object.create(nH.prototype),sd.prototype.constructor=sd,sd.prototype.toJSON=function(){var t=nH.prototype.toJSON.call(this);return sm(this.parameters.shapes,t)},sf.prototype=Object.create(nJ.prototype),sf.prototype.constructor=sf,sf.prototype.toJSON=function(){var t=nJ.prototype.toJSON.call(this);return sm(this.parameters.shapes,t)},sg.prototype=Object.create(nJ.prototype),sg.prototype.constructor=sg,sv.prototype=Object.create(nH.prototype),sv.prototype.constructor=sv,s$.prototype=Object.create(nJ.prototype),s$.prototype.constructor=s$,sy.prototype=Object.create(sv.prototype),sy.prototype.constructor=sy,s_.prototype=Object.create(s$.prototype),s_.prototype.constructor=s_,s8.prototype=Object.create(nH.prototype),s8.prototype.constructor=s8,sx.prototype=Object.create(nJ.prototype),sx.prototype.constructor=sx;var sb=Object.freeze({WireframeGeometry:ax,ParametricGeometry:ab,ParametricBufferGeometry:aw,TetrahedronGeometry:aS,TetrahedronBufferGeometry:aE,OctahedronGeometry:a0,OctahedronBufferGeometry:aP,IcosahedronGeometry:aC,IcosahedronBufferGeometry:aL,DodecahedronGeometry:aM,DodecahedronBufferGeometry:a1,PolyhedronGeometry:aA,PolyhedronBufferGeometry:aT,TubeGeometry:aR,TubeBufferGeometry:a3,TorusKnotGeometry:aI,TorusKnotBufferGeometry:aD,TorusGeometry:aN,TorusBufferGeometry:aB,TextGeometry:so,TextBufferGeometry:sa,SphereGeometry:ss,SphereBufferGeometry:su,RingGeometry:sl,RingBufferGeometry:sh,PlaneGeometry:ie,PlaneBufferGeometry:ii,LatheGeometry:sc,LatheBufferGeometry:sp,ShapeGeometry:sd,ShapeBufferGeometry:sf,ExtrudeGeometry:se,ExtrudeBufferGeometry:sn,EdgesGeometry:sg,ConeGeometry:sy,ConeBufferGeometry:s_,CylinderGeometry:sv,CylinderBufferGeometry:s$,CircleGeometry:s8,CircleBufferGeometry:sx,BoxGeometry:n9,BoxBufferGeometry:it});function sw(t){io.call(this),this.type="ShadowMaterial",this.color=new nI(0),this.transparent=!0,this.setValues(t)}function sA(t){ia.call(this,t),this.type="RawShaderMaterial"}function sT(t){io.call(this),this.defines={STANDARD:""},this.type="MeshStandardMaterial",this.color=new nI(16777215),this.roughness=.5,this.metalness=.5,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new nI(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=nm,this.normalScale=new n$(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.roughnessMap=null,this.metalnessMap=null,this.alphaMap=null,this.envMap=null,this.envMapIntensity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function sS(t){sT.call(this),this.defines={PHYSICAL:""},this.type="MeshPhysicalMaterial",this.reflectivity=.5,this.clearCoat=0,this.clearCoatRoughness=0,this.setValues(t)}function sE(t){io.call(this),this.type="MeshPhongMaterial",this.color=new nI(16777215),this.specular=new nI(1118481),this.shininess=30,this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new nI(0),this.emissiveIntensity=1,this.emissiveMap=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=nm,this.normalScale=new n$(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=t6,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function s0(t){sE.call(this),this.defines={TOON:""},this.type="MeshToonMaterial",this.gradientMap=null,this.setValues(t)}function sP(t){io.call(this),this.type="MeshNormalMaterial",this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=nm,this.normalScale=new n$(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.wireframe=!1,this.wireframeLinewidth=1,this.fog=!1,this.lights=!1,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function sC(t){io.call(this),this.type="MeshLambertMaterial",this.color=new nI(16777215),this.map=null,this.lightMap=null,this.lightMapIntensity=1,this.aoMap=null,this.aoMapIntensity=1,this.emissive=new nI(0),this.emissiveIntensity=1,this.emissiveMap=null,this.specularMap=null,this.alphaMap=null,this.envMap=null,this.combine=t6,this.reflectivity=1,this.refractionRatio=.98,this.wireframe=!1,this.wireframeLinewidth=1,this.wireframeLinecap="round",this.wireframeLinejoin="round",this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.setValues(t)}function sL(e){if(io.call(this),this.defines={MATCAP:""},this.type="MeshMatcapMaterial",this.color=new nI(16777215),this.matcap=null,this.map=null,this.bumpMap=null,this.bumpScale=1,this.normalMap=null,this.normalMapType=nm,this.normalScale=new n$(1,1),this.displacementMap=null,this.displacementScale=1,this.displacementBias=0,this.alphaMap=null,this.skinning=!1,this.morphTargets=!1,this.morphNormals=!1,this.lights=!1,this.setValues(e),null===this.matcap){var n=document.createElement("canvas");n.width=1,n.height=1;var i=n.getContext("2d");i.fillStyle="#fff",i.fillRect(0,0,1,1),this.matcap=new t.CanvasTexture(n)}}function sM(t){ap.call(this),this.type="LineDashedMaterial",this.scale=1,this.dashSize=3,this.gapSize=1,this.setValues(t)}sw.prototype=Object.create(io.prototype),sw.prototype.constructor=sw,sw.prototype.isShadowMaterial=!0,sw.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.color.copy(t.color),this},sA.prototype=Object.create(ia.prototype),sA.prototype.constructor=sA,sA.prototype.isRawShaderMaterial=!0,sT.prototype=Object.create(io.prototype),sT.prototype.constructor=sT,sT.prototype.isMeshStandardMaterial=!0,sT.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.defines={STANDARD:""},this.color.copy(t.color),this.roughness=t.roughness,this.metalness=t.metalness,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.roughnessMap=t.roughnessMap,this.metalnessMap=t.metalnessMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.envMapIntensity=t.envMapIntensity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},sS.prototype=Object.create(sT.prototype),sS.prototype.constructor=sS,sS.prototype.isMeshPhysicalMaterial=!0,sS.prototype.copy=function(t){return sT.prototype.copy.call(this,t),this.defines={PHYSICAL:""},this.reflectivity=t.reflectivity,this.clearCoat=t.clearCoat,this.clearCoatRoughness=t.clearCoatRoughness,this},sE.prototype=Object.create(io.prototype),sE.prototype.constructor=sE,sE.prototype.isMeshPhongMaterial=!0,sE.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.color.copy(t.color),this.specular.copy(t.specular),this.shininess=t.shininess,this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},s0.prototype=Object.create(sE.prototype),s0.prototype.constructor=s0,s0.prototype.isMeshToonMaterial=!0,s0.prototype.copy=function(t){return sE.prototype.copy.call(this,t),this.gradientMap=t.gradientMap,this},sP.prototype=Object.create(io.prototype),sP.prototype.constructor=sP,sP.prototype.isMeshNormalMaterial=!0,sP.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},sC.prototype=Object.create(io.prototype),sC.prototype.constructor=sC,sC.prototype.isMeshLambertMaterial=!0,sC.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.color.copy(t.color),this.map=t.map,this.lightMap=t.lightMap,this.lightMapIntensity=t.lightMapIntensity,this.aoMap=t.aoMap,this.aoMapIntensity=t.aoMapIntensity,this.emissive.copy(t.emissive),this.emissiveMap=t.emissiveMap,this.emissiveIntensity=t.emissiveIntensity,this.specularMap=t.specularMap,this.alphaMap=t.alphaMap,this.envMap=t.envMap,this.combine=t.combine,this.reflectivity=t.reflectivity,this.refractionRatio=t.refractionRatio,this.wireframe=t.wireframe,this.wireframeLinewidth=t.wireframeLinewidth,this.wireframeLinecap=t.wireframeLinecap,this.wireframeLinejoin=t.wireframeLinejoin,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},sL.prototype=Object.create(io.prototype),sL.prototype.constructor=sL,sL.prototype.isMeshMatcapMaterial=!0,sL.prototype.copy=function(t){return io.prototype.copy.call(this,t),this.defines={MATCAP:""},this.color.copy(t.color),this.matcap=t.matcap,this.map=t.map,this.bumpMap=t.bumpMap,this.bumpScale=t.bumpScale,this.normalMap=t.normalMap,this.normalMapType=t.normalMapType,this.normalScale.copy(t.normalScale),this.displacementMap=t.displacementMap,this.displacementScale=t.displacementScale,this.displacementBias=t.displacementBias,this.alphaMap=t.alphaMap,this.skinning=t.skinning,this.morphTargets=t.morphTargets,this.morphNormals=t.morphNormals,this},sM.prototype=Object.create(ap.prototype),sM.prototype.constructor=sM,sM.prototype.isLineDashedMaterial=!0,sM.prototype.copy=function(t){return ap.prototype.copy.call(this,t),this.scale=t.scale,this.dashSize=t.dashSize,this.gapSize=t.gapSize,this};var s1=Object.freeze({ShadowMaterial:sw,SpriteMaterial:aa,RawShaderMaterial:sA,ShaderMaterial:ia,PointsMaterial:ag,MeshPhysicalMaterial:sS,MeshStandardMaterial:sT,MeshPhongMaterial:sE,MeshToonMaterial:s0,MeshNormalMaterial:sP,MeshLambertMaterial:sC,MeshDepthMaterial:rp,MeshDistanceMaterial:rd,MeshBasicMaterial:il,MeshMatcapMaterial:sL,LineDashedMaterial:sM,LineBasicMaterial:ap,Material:io}),sR={arraySlice:function(t,e,n){return sR.isTypedArray(t)?new t.constructor(t.subarray(e,void 0!==n?n:t.length)):t.slice(e,n)},convertArray:function(t,e,n){return t&&(n||t.constructor!==e)?"number"==typeof e.BYTES_PER_ELEMENT?new e(t):Array.prototype.slice.call(t):t},isTypedArray:function(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)},getKeyframeOrder:function(t){for(var e=t.length,n=Array(e),i=0;i!==e;++i)n[i]=i;return n.sort(function(e,n){return t[e]-t[n]}),n},sortedArray:function(t,e,n){for(var i=t.length,r=new t.constructor(i),o=0,a=0;a!==i;++o)for(var s=n[o]*e,u=0;u!==e;++u)r[a++]=t[s+u];return r},flattenJSON:function(t,e,n,i){for(var r=1,o=t[0];void 0!==o&&void 0===o[i];)o=t[r++];if(void 0!==o){var a=o[i];if(void 0!==a){if(Array.isArray(a))do void 0!==(a=o[i])&&(e.push(o.time),n.push.apply(n,a)),o=t[r++];while(void 0!==o);else if(void 0!==a.toArray)do void 0!==(a=o[i])&&(e.push(o.time),a.toArray(n,n.length)),o=t[r++];while(void 0!==o);else do void 0!==(a=o[i])&&(e.push(o.time),n.push(a)),o=t[r++];while(void 0!==o)}}}};function s3(t,e,n,i){this.parameterPositions=t,this._cachedIndex=0,this.resultBuffer=void 0!==i?i:new e.constructor(n),this.sampleValues=e,this.valueSize=n}function sI(t,e,n,i){s3.call(this,t,e,n,i),this._weightPrev=-0,this._offsetPrev=-0,this._weightNext=-0,this._offsetNext=-0}function sD(t,e,n,i){s3.call(this,t,e,n,i)}function sN(t,e,n,i){s3.call(this,t,e,n,i)}function sB(t,e,n,i){if(void 0===t)throw Error("THREE.KeyframeTrack: track name is undefined");if(void 0===e||0===e.length)throw Error("THREE.KeyframeTrack: no keyframes in track named "+t);this.name=t,this.times=sR.convertArray(e,this.TimeBufferType),this.values=sR.convertArray(n,this.ValueBufferType),this.setInterpolation(i||this.DefaultInterpolation)}function sO(t,e,n){sB.call(this,t,e,n)}function sG(t,e,n,i){sB.call(this,t,e,n,i)}function sk(t,e,n,i){sB.call(this,t,e,n,i)}function sV(t,e,n,i){s3.call(this,t,e,n,i)}function sz(t,e,n,i){sB.call(this,t,e,n,i)}function sU(t,e,n,i){sB.call(this,t,e,n,i)}function s2(t,e,n,i){sB.call(this,t,e,n,i)}function sH(t,e,n){this.name=t,this.tracks=n,this.duration=void 0!==e?e:-1,this.uuid=nv.generateUUID(),this.duration<0&&this.resetDuration()}function sF(t){if(void 0===t.type)throw Error("THREE.KeyframeTrack: track type undefined, can not parse");var e=function(t){switch(t.toLowerCase()){case"scalar":case"double":case"float":case"number":case"integer":return sk;case"vector":case"vector2":case"vector3":case"vector4":return s2;case"color":return sG;case"quaternion":return sz;case"bool":case"boolean":return sO;case"string":return sU}throw Error("THREE.KeyframeTrack: Unsupported typeName: "+t)}(t.type);if(void 0===t.times){var n=[],i=[];sR.flattenJSON(t.keys,n,i,"value"),t.times=n,t.values=i}return void 0!==e.parse?e.parse(t):new e(t.name,t.times,t.values,t.interpolation)}Object.assign(s3.prototype,{evaluate:function(t){var e,n=this.parameterPositions,i=this._cachedIndex,r=n[i],o=n[i-1];t:{e:{n:{i:if(!(t<r)){for(var a=i+2;;){if(void 0===r){if(t<o)break i;return i=n.length,this._cachedIndex=i,this.afterEnd_(i-1,t,o)}if(i===a)break;if(o=r,t<(r=n[++i]))break e}e=n.length;break n}if(t>=o)break t;var s=n[1];for(t<s&&(i=2,o=s),a=i-2;;){if(void 0===o)return this._cachedIndex=0,this.beforeStart_(0,t,r);if(i===a)break;if(r=o,t>=(o=n[--i-1]))break e}e=i,i=0}for(;i<e;){var u=i+e>>>1;t<n[u]?e=u:i=u+1}if(r=n[i],void 0===(o=n[i-1]))return this._cachedIndex=0,this.beforeStart_(0,t,r);if(void 0===r)return i=n.length,this._cachedIndex=i,this.afterEnd_(i-1,o,t)}this._cachedIndex=i,this.intervalChanged_(i,o,r)}return this.interpolate_(i,o,t,r)},settings:null,DefaultSettings_:{},getSettings_:function(){return this.settings||this.DefaultSettings_},copySampleValue_:function(t){for(var e=this.resultBuffer,n=this.sampleValues,i=this.valueSize,r=t*i,o=0;o!==i;++o)e[o]=n[r+o];return e},interpolate_:function(){throw Error("call to abstract method")},intervalChanged_:function(){}}),Object.assign(s3.prototype,{beforeStart_:s3.prototype.copySampleValue_,afterEnd_:s3.prototype.copySampleValue_}),sI.prototype=Object.assign(Object.create(s3.prototype),{constructor:sI,DefaultSettings_:{endingStart:e9,endingEnd:e9},intervalChanged_:function(t,e,n){var i=this.parameterPositions,r=t-2,o=t+1,a=i[r],s=i[o];if(void 0===a)switch(this.getSettings_().endingStart){case nt:r=t,a=2*e-n;break;case ne:a=e+i[r=i.length-2]-i[r+1];break;default:r=t,a=n}if(void 0===s)switch(this.getSettings_().endingEnd){case nt:o=t,s=2*n-e;break;case ne:o=1,s=n+i[1]-i[0];break;default:o=t-1,s=e}var u=.5*(n-e),l=this.valueSize;this._weightPrev=u/(e-a),this._weightNext=u/(s-n),this._offsetPrev=r*l,this._offsetNext=o*l},interpolate_:function(t,e,n,i){for(var r=this.resultBuffer,o=this.sampleValues,a=this.valueSize,s=t*a,u=s-a,l=this._offsetPrev,h=this._offsetNext,c=this._weightPrev,p=this._weightNext,d=(n-e)/(i-e),f=d*d,m=f*d,g=-c*m+2*c*f-c*d,v=(1+c)*m+(-1.5-2*c)*f+(-.5+c)*d+1,$=(-1-p)*m+(1.5+p)*f+.5*d,y=p*m-p*f,_=0;_!==a;++_)r[_]=g*o[l+_]+v*o[u+_]+$*o[s+_]+y*o[h+_];return r}}),sD.prototype=Object.assign(Object.create(s3.prototype),{constructor:sD,interpolate_:function(t,e,n,i){for(var r=this.resultBuffer,o=this.sampleValues,a=this.valueSize,s=t*a,u=s-a,l=(n-e)/(i-e),h=1-l,c=0;c!==a;++c)r[c]=o[u+c]*h+o[s+c]*l;return r}}),sN.prototype=Object.assign(Object.create(s3.prototype),{constructor:sN,interpolate_:function(t){return this.copySampleValue_(t-1)}}),Object.assign(sB,{toJSON:function(t){var e,n=t.constructor;if(void 0!==n.toJSON)e=n.toJSON(t);else{e={name:t.name,times:sR.convertArray(t.times,Array),values:sR.convertArray(t.values,Array)};var i=t.getInterpolation();i!==t.DefaultInterpolation&&(e.interpolation=i)}return e.type=t.ValueTypeName,e}}),Object.assign(sB.prototype,{constructor:sB,TimeBufferType:Float32Array,ValueBufferType:Float32Array,DefaultInterpolation:eQ,InterpolantFactoryMethodDiscrete:function(t){return new sN(this.times,this.values,this.getValueSize(),t)},InterpolantFactoryMethodLinear:function(t){return new sD(this.times,this.values,this.getValueSize(),t)},InterpolantFactoryMethodSmooth:function(t){return new sI(this.times,this.values,this.getValueSize(),t)},setInterpolation:function(t){var e;switch(t){case eq:e=this.InterpolantFactoryMethodDiscrete;break;case eQ:e=this.InterpolantFactoryMethodLinear;break;case eJ:e=this.InterpolantFactoryMethodSmooth}if(void 0===e){var n="unsupported interpolation for "+this.ValueTypeName+" keyframe track named "+this.name;if(void 0===this.createInterpolant){if(t===this.DefaultInterpolation)throw Error(n);this.setInterpolation(this.DefaultInterpolation)}return console.warn("THREE.KeyframeTrack:",n),this}return this.createInterpolant=e,this},getInterpolation:function(){switch(this.createInterpolant){case this.InterpolantFactoryMethodDiscrete:return eq;case this.InterpolantFactoryMethodLinear:return eQ;case this.InterpolantFactoryMethodSmooth:return eJ}},getValueSize:function(){return this.values.length/this.times.length},shift:function(t){if(0!==t)for(var e=this.times,n=0,i=e.length;n!==i;++n)e[n]+=t;return this},scale:function(t){if(1!==t)for(var e=this.times,n=0,i=e.length;n!==i;++n)e[n]*=t;return this},trim:function(t,e){for(var n=this.times,i=n.length,r=0,o=i-1;r!==i&&n[r]<t;)++r;for(;-1!==o&&n[o]>e;)--o;if(++o,0!==r||o!==i){r>=o&&(r=(o=Math.max(o,1))-1);var a=this.getValueSize();this.times=sR.arraySlice(n,r,o),this.values=sR.arraySlice(this.values,r*a,o*a)}return this},validate:function(){var t=!0,e=this.getValueSize();e-Math.floor(e)!=0&&(console.error("THREE.KeyframeTrack: Invalid value size in track.",this),t=!1);var n=this.times,i=this.values,r=n.length;0===r&&(console.error("THREE.KeyframeTrack: Track is empty.",this),t=!1);for(var o=null,a=0;a!==r;a++){var s=n[a];if("number"==typeof s&&isNaN(s)){console.error("THREE.KeyframeTrack: Time is not a valid number.",this,a,s),t=!1;break}if(null!==o&&o>s){console.error("THREE.KeyframeTrack: Out of order keys.",this,a,s,o),t=!1;break}o=s}if(void 0!==i&&sR.isTypedArray(i)){a=0;for(var u=i.length;a!==u;++a){var l=i[a];if(isNaN(l)){console.error("THREE.KeyframeTrack: Value is not a valid number.",this,a,l),t=!1;break}}}return t},optimize:function(){for(var t=this.times,e=this.values,n=this.getValueSize(),i=this.getInterpolation()===eJ,r=1,o=t.length-1,a=1;a<o;++a){var s=!1,u=t[a];if(u!==t[a+1]&&(1!==a||u!==u[0])){if(i)s=!0;else for(var l=a*n,h=l-n,c=l+n,p=0;p!==n;++p){var d=e[l+p];if(d!==e[h+p]||d!==e[c+p]){s=!0;break}}}if(s){if(a!==r){t[r]=t[a];var f=a*n,m=r*n;for(p=0;p!==n;++p)e[m+p]=e[f+p]}++r}}if(o>0){for(t[r]=t[o],f=o*n,m=r*n,p=0;p!==n;++p)e[m+p]=e[f+p];++r}return r!==t.length&&(this.times=sR.arraySlice(t,0,r),this.values=sR.arraySlice(e,0,r*n)),this}}),sO.prototype=Object.assign(Object.create(sB.prototype),{constructor:sO,ValueTypeName:"bool",ValueBufferType:Array,DefaultInterpolation:eq,InterpolantFactoryMethodLinear:void 0,InterpolantFactoryMethodSmooth:void 0}),sG.prototype=Object.assign(Object.create(sB.prototype),{constructor:sG,ValueTypeName:"color"}),sk.prototype=Object.assign(Object.create(sB.prototype),{constructor:sk,ValueTypeName:"number"}),sV.prototype=Object.assign(Object.create(s3.prototype),{constructor:sV,interpolate_:function(t,e,n,i){for(var r=this.resultBuffer,o=this.sampleValues,a=this.valueSize,s=t*a,u=(n-e)/(i-e),l=s+a;s!==l;s+=4)n_.slerpFlat(r,0,o,s-a,o,s,u);return r}}),sz.prototype=Object.assign(Object.create(sB.prototype),{constructor:sz,ValueTypeName:"quaternion",DefaultInterpolation:eQ,InterpolantFactoryMethodLinear:function(t){return new sV(this.times,this.values,this.getValueSize(),t)},InterpolantFactoryMethodSmooth:void 0}),sU.prototype=Object.assign(Object.create(sB.prototype),{constructor:sU,ValueTypeName:"string",ValueBufferType:Array,DefaultInterpolation:eq,InterpolantFactoryMethodLinear:void 0,InterpolantFactoryMethodSmooth:void 0}),s2.prototype=Object.assign(Object.create(sB.prototype),{constructor:s2,ValueTypeName:"vector"}),Object.assign(sH,{parse:function(t){for(var e=[],n=t.tracks,i=1/(t.fps||1),r=0,o=n.length;r!==o;++r)e.push(sF(n[r]).scale(i));return new sH(t.name,t.duration,e)},toJSON:function(t){for(var e=[],n=t.tracks,i={name:t.name,duration:t.duration,tracks:e,uuid:t.uuid},r=0,o=n.length;r!==o;++r)e.push(sB.toJSON(n[r]));return i},CreateFromMorphTargetSequence:function(t,e,n,i){for(var r=e.length,o=[],a=0;a<r;a++){var s=[],u=[];s.push((a+r-1)%r,a,(a+1)%r),u.push(0,1,0);var l=sR.getKeyframeOrder(s);s=sR.sortedArray(s,1,l),u=sR.sortedArray(u,1,l),i||0!==s[0]||(s.push(r),u.push(u[0])),o.push(new sk(".morphTargetInfluences["+e[a].name+"]",s,u).scale(1/n))}return new sH(t,-1,o)},findByName:function(t,e){var n=t;if(!Array.isArray(t)){var i=t;n=i.geometry&&i.geometry.animations||i.animations}for(var r=0;r<n.length;r++)if(n[r].name===e)return n[r];return null},CreateClipsFromMorphTargetSequences:function(t,e,n){for(var i={},r=/^([\w-]*?)([\d]+)$/,o=0,a=t.length;o<a;o++){var s=t[o],u=s.name.match(r);if(u&&u.length>1){var l=i[c=u[1]];l||(i[c]=l=[]),l.push(s)}}var h=[];for(var c in i)h.push(sH.CreateFromMorphTargetSequence(c,i[c],e,n));return h},parseAnimation:function(t,e){if(!t)return console.error("THREE.AnimationClip: No animation in JSONLoader data."),null;for(var n=function(t,e,n,i,r){if(0!==n.length){var o=[],a=[];sR.flattenJSON(n,o,a,i),0!==o.length&&r.push(new t(e,o,a))}},i=[],r=t.name||"default",o=t.length||-1,a=t.fps||30,s=t.hierarchy||[],u=0;u<s.length;u++){var l=s[u].keys;if(l&&0!==l.length){if(l[0].morphTargets){for(var h={},c=0;c<l.length;c++)if(l[c].morphTargets)for(var p=0;p<l[c].morphTargets.length;p++)h[l[c].morphTargets[p]]=-1;for(var d in h){var f=[],m=[];for(p=0;p!==l[c].morphTargets.length;++p){var g=l[c];f.push(g.time),m.push(g.morphTarget===d?1:0)}i.push(new sk(".morphTargetInfluence["+d+"]",f,m))}o=h.length*(a||1)}else{var v=".bones["+e[u].name+"]";n(s2,v+".position",l,"pos",i),n(sz,v+".quaternion",l,"rot",i),n(s2,v+".scale",l,"scl",i)}}}return 0===i.length?null:new sH(r,o,i)}}),Object.assign(sH.prototype,{resetDuration:function(){for(var t=0,e=0,n=this.tracks.length;e!==n;++e){var i=this.tracks[e];t=Math.max(t,i.times[i.times.length-1])}return this.duration=t,this},trim:function(){for(var t=0;t<this.tracks.length;t++)this.tracks[t].trim(0,this.duration);return this},validate:function(){for(var t=!0,e=0;e<this.tracks.length;e++)t=t&&this.tracks[e].validate();return t},optimize:function(){for(var t=0;t<this.tracks.length;t++)this.tracks[t].optimize();return this}});var s5={enabled:!1,files:{},add:function(t,e){!1!==this.enabled&&(this.files[t]=e)},get:function(t){if(!1!==this.enabled)return this.files[t]},remove:function(t){delete this.files[t]},clear:function(){this.files={}}};function s4(t,e,n){var i=this,r=!1,o=0,a=0,s=void 0;this.onStart=void 0,this.onLoad=t,this.onProgress=e,this.onError=n,this.itemStart=function(t){a++,!1===r&&void 0!==i.onStart&&i.onStart(t,o,a),r=!0},this.itemEnd=function(t){o++,void 0!==i.onProgress&&i.onProgress(t,o,a),o===a&&(r=!1,void 0!==i.onLoad&&i.onLoad())},this.itemError=function(t){void 0!==i.onError&&i.onError(t)},this.resolveURL=function(t){return s?s(t):t},this.setURLModifier=function(t){return s=t,this}}var s6=new s4,sW={};function s7(t){this.manager=void 0!==t?t:s6}function sX(t){this.manager=void 0!==t?t:s6}function sY(t){this.manager=void 0!==t?t:s6,this._parser=null}function sK(t){this.manager=void 0!==t?t:s6,this._parser=null}function sj(t){this.manager=void 0!==t?t:s6}function sZ(t){this.manager=void 0!==t?t:s6}function sq(t){this.manager=void 0!==t?t:s6}function sQ(){this.type="Curve",this.arcLengthDivisions=200}function sJ(t,e,n,i,r,o,a,s){sQ.call(this),this.type="EllipseCurve",this.aX=t||0,this.aY=e||0,this.xRadius=n||1,this.yRadius=i||1,this.aStartAngle=r||0,this.aEndAngle=o||2*Math.PI,this.aClockwise=a||!1,this.aRotation=s||0}function s9(t,e,n,i,r,o){sJ.call(this,t,e,n,n,i,r,o),this.type="ArcCurve"}function ut(){var t=0,e=0,n=0,i=0;function r(r,o,a,s){t=r,e=a,n=-3*r+3*o-2*a-s,i=2*r-2*o+a+s}return{initCatmullRom:function(t,e,n,i,o){r(e,n,o*(n-t),o*(i-e))},initNonuniformCatmullRom:function(t,e,n,i,o,a,s){var u=(e-t)/o-(n-t)/(o+a)+(n-e)/a,l=(n-e)/a-(i-e)/(a+s)+(i-n)/s;r(e,n,u*=a,l*=a)},calc:function(r){var o=r*r;return t+e*r+n*o+i*(o*r)}}}Object.assign(s7.prototype,{load:function(t,e,n,i){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);var r=this,o=s5.get(t);if(void 0!==o)return r.manager.itemStart(t),setTimeout(function(){e&&e(o),r.manager.itemEnd(t)},0),o;if(void 0===sW[t]){var a=t.match(/^data:(.*?)(;base64)?,(.*)$/);if(a){var s=a[1],u=!!a[2],l=a[3];l=decodeURIComponent(l),u&&(l=atob(l));try{var h,c=(this.responseType||"").toLowerCase();switch(c){case"arraybuffer":case"blob":for(var p=new Uint8Array(l.length),d=0;d<l.length;d++)p[d]=l.charCodeAt(d);h="blob"===c?new Blob([p.buffer],{type:s}):p.buffer;break;case"document":h=(new DOMParser).parseFromString(l,s);break;case"json":h=JSON.parse(l);break;default:h=l}setTimeout(function(){e&&e(h),r.manager.itemEnd(t)},0)}catch(f){setTimeout(function(){i&&i(f),r.manager.itemError(t),r.manager.itemEnd(t)},0)}}else{sW[t]=[],sW[t].push({onLoad:e,onProgress:n,onError:i});var m=new XMLHttpRequest;for(var g in m.open("GET",t,!0),m.addEventListener("load",function(e){var n,i=this.response;s5.add(t,i);var o=sW[t];if(delete sW[t],200===this.status||0===this.status){0===this.status&&console.warn("THREE.FileLoader: HTTP Status 0 received.");for(var a=0,s=o.length;a<s;a++)(n=o[a]).onLoad&&n.onLoad(i);r.manager.itemEnd(t)}else{for(a=0,s=o.length;a<s;a++)(n=o[a]).onError&&n.onError(e);r.manager.itemError(t),r.manager.itemEnd(t)}},!1),m.addEventListener("progress",function(e){for(var n=sW[t],i=0,r=n.length;i<r;i++){var o=n[i];o.onProgress&&o.onProgress(e)}},!1),m.addEventListener("error",function(e){var n=sW[t];delete sW[t];for(var i=0,o=n.length;i<o;i++){var a=n[i];a.onError&&a.onError(e)}r.manager.itemError(t),r.manager.itemEnd(t)},!1),m.addEventListener("abort",function(e){var n=sW[t];delete sW[t];for(var i=0,o=n.length;i<o;i++){var a=n[i];a.onError&&a.onError(e)}r.manager.itemError(t),r.manager.itemEnd(t)},!1),void 0!==this.responseType&&(m.responseType=this.responseType),void 0!==this.withCredentials&&(m.withCredentials=this.withCredentials),m.overrideMimeType&&m.overrideMimeType(void 0!==this.mimeType?this.mimeType:"text/plain"),this.requestHeader)m.setRequestHeader(g,this.requestHeader[g]);m.send(null)}return r.manager.itemStart(t),m}sW[t].push({onLoad:e,onProgress:n,onError:i})},setPath:function(t){return this.path=t,this},setResponseType:function(t){return this.responseType=t,this},setWithCredentials:function(t){return this.withCredentials=t,this},setMimeType:function(t){return this.mimeType=t,this},setRequestHeader:function(t){return this.requestHeader=t,this}}),Object.assign(sX.prototype,{load:function(t,e,n,i){var r=this,o=new s7(r.manager);o.setPath(r.path),o.load(t,function(t){e(r.parse(JSON.parse(t)))},n,i)},parse:function(t,e){for(var n=[],i=0;i<t.length;i++){var r=sH.parse(t[i]);n.push(r)}e(n)},setPath:function(t){return this.path=t,this}}),Object.assign(sY.prototype,{load:function(t,e,n,i){var r=this,o=[],a=new ay;a.image=o;var s=new s7(this.manager);function u(u){s.load(t[u],function(t){var n=r._parser(t,!0);o[u]={width:n.width,height:n.height,format:n.format,mipmaps:n.mipmaps},6===(l+=1)&&(1===n.mipmapCount&&(a.minFilter=eh),a.format=n.format,a.needsUpdate=!0,e&&e(a))},n,i)}if(s.setPath(this.path),s.setResponseType("arraybuffer"),Array.isArray(t))for(var l=0,h=0,c=t.length;h<c;++h)u(h);else s.load(t,function(t){var n=r._parser(t,!0);if(n.isCubemap)for(var i=n.mipmaps.length/n.mipmapCount,s=0;s<i;s++){o[s]={mipmaps:[]};for(var u=0;u<n.mipmapCount;u++)o[s].mipmaps.push(n.mipmaps[s*n.mipmapCount+u]),o[s].format=n.format,o[s].width=n.width,o[s].height=n.height}else a.image.width=n.width,a.image.height=n.height,a.mipmaps=n.mipmaps;1===n.mipmapCount&&(a.minFilter=eh),a.format=n.format,a.needsUpdate=!0,e&&e(a)},n,i);return a},setPath:function(t){return this.path=t,this}}),Object.assign(sK.prototype,{load:function(t,e,n,i){var r=this,o=new n0,a=new s7(this.manager);return a.setResponseType("arraybuffer"),a.setPath(this.path),a.load(t,function(t){var n=r._parser(t);n&&(void 0!==n.image?o.image=n.image:void 0!==n.data&&(o.image.width=n.width,o.image.height=n.height,o.image.data=n.data),o.wrapS=void 0!==n.wrapS?n.wrapS:eo,o.wrapT=void 0!==n.wrapT?n.wrapT:eo,o.magFilter=void 0!==n.magFilter?n.magFilter:eh,o.minFilter=void 0!==n.minFilter?n.minFilter:ep,o.anisotropy=void 0!==n.anisotropy?n.anisotropy:1,void 0!==n.format&&(o.format=n.format),void 0!==n.type&&(o.type=n.type),void 0!==n.mipmaps&&(o.mipmaps=n.mipmaps),1===n.mipmapCount&&(o.minFilter=eh),o.needsUpdate=!0,e&&e(o,n))},n,i),o},setPath:function(t){return this.path=t,this}}),Object.assign(sj.prototype,{crossOrigin:"anonymous",load:function(t,e,n,i){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);var r=this,o=s5.get(t);if(void 0!==o)return r.manager.itemStart(t),setTimeout(function(){e&&e(o),r.manager.itemEnd(t)},0),o;var a=document.createElementNS("http://www.w3.org/1999/xhtml","img");function s(){a.removeEventListener("load",s,!1),a.removeEventListener("error",u,!1),s5.add(t,this),e&&e(this),r.manager.itemEnd(t)}function u(e){a.removeEventListener("load",s,!1),a.removeEventListener("error",u,!1),i&&i(e),r.manager.itemError(t),r.manager.itemEnd(t)}return a.addEventListener("load",s,!1),a.addEventListener("error",u,!1),"data:"!==t.substr(0,5)&&void 0!==this.crossOrigin&&(a.crossOrigin=this.crossOrigin),r.manager.itemStart(t),a.src=t,a},setCrossOrigin:function(t){return this.crossOrigin=t,this},setPath:function(t){return this.path=t,this}}),Object.assign(sZ.prototype,{crossOrigin:"anonymous",load:function(t,e,n,i){var r=new ip,o=new sj(this.manager);o.setCrossOrigin(this.crossOrigin),o.setPath(this.path);var a=0;function s(n){o.load(t[n],function(t){r.images[n]=t,6==++a&&(r.needsUpdate=!0,e&&e(r))},void 0,i)}for(var u=0;u<t.length;++u)s(u);return r},setCrossOrigin:function(t){return this.crossOrigin=t,this},setPath:function(t){return this.path=t,this}}),Object.assign(sq.prototype,{crossOrigin:"anonymous",load:function(t,e,n,i){var r=new nA,o=new sj(this.manager);return o.setCrossOrigin(this.crossOrigin),o.setPath(this.path),o.load(t,function(n){r.image=n;var i=t.search(/\.jpe?g$/i)>0||0===t.search(/^data\:image\/jpeg/);r.format=i?eT:eS,r.needsUpdate=!0,void 0!==e&&e(r)},n,i),r},setCrossOrigin:function(t){return this.crossOrigin=t,this},setPath:function(t){return this.path=t,this}}),Object.assign(sQ.prototype,{getPoint:function(){return console.warn("THREE.Curve: .getPoint() not implemented."),null},getPointAt:function(t,e){var n=this.getUtoTmapping(t);return this.getPoint(n,e)},getPoints:function(t){void 0===t&&(t=5);for(var e=[],n=0;n<=t;n++)e.push(this.getPoint(n/t));return e},getSpacedPoints:function(t){void 0===t&&(t=5);for(var e=[],n=0;n<=t;n++)e.push(this.getPointAt(n/t));return e},getLength:function(){var t=this.getLengths();return t[t.length-1]},getLengths:function(t){if(void 0===t&&(t=this.arcLengthDivisions),this.cacheArcLengths&&this.cacheArcLengths.length===t+1&&!this.needsUpdate)return this.cacheArcLengths;this.needsUpdate=!1;var e,n,i=[],r=this.getPoint(0),o=0;for(i.push(0),n=1;n<=t;n++)i.push(o+=(e=this.getPoint(n/t)).distanceTo(r)),r=e;return this.cacheArcLengths=i,i},updateArcLengths:function(){this.needsUpdate=!0,this.getLengths()},getUtoTmapping:function(t,e){var n,i=this.getLengths(),r=0,o=i.length;n=e||t*i[o-1];for(var a,s=0,u=o-1;s<=u;)if((a=i[r=Math.floor(s+(u-s)/2)]-n)<0)s=r+1;else{if(!(a>0)){u=r;break}u=r-1}if(i[r=u]===n)return r/(o-1);var l=i[r];return(r+(n-l)/(i[r+1]-l))/(o-1)},getTangent:function(t){var e=t-1e-4,n=t+1e-4;e<0&&(e=0),n>1&&(n=1);var i=this.getPoint(e);return this.getPoint(n).clone().sub(i).normalize()},getTangentAt:function(t){var e=this.getUtoTmapping(t);return this.getTangent(e)},computeFrenetFrames:function(t,e){var n,i,r,o=new n8,a=[],s=[],u=[],l=new n8,h=new ny;for(n=0;n<=t;n++)i=n/t,a[n]=this.getTangentAt(i),a[n].normalize();s[0]=new n8,u[0]=new n8;var c=Number.MAX_VALUE,p=Math.abs(a[0].x),d=Math.abs(a[0].y),f=Math.abs(a[0].z);for(p<=c&&(c=p,o.set(1,0,0)),d<=c&&(c=d,o.set(0,1,0)),f<=c&&o.set(0,0,1),l.crossVectors(a[0],o).normalize(),s[0].crossVectors(a[0],l),u[0].crossVectors(a[0],s[0]),n=1;n<=t;n++)s[n]=s[n-1].clone(),u[n]=u[n-1].clone(),l.crossVectors(a[n-1],a[n]),l.length()>Number.EPSILON&&(l.normalize(),r=Math.acos(nv.clamp(a[n-1].dot(a[n]),-1,1)),s[n].applyMatrix4(h.makeRotationAxis(l,r))),u[n].crossVectors(a[n],s[n]);if(!0===e)for(r=Math.acos(nv.clamp(s[0].dot(s[t]),-1,1)),r/=t,a[0].dot(l.crossVectors(s[0],s[t]))>0&&(r=-r),n=1;n<=t;n++)s[n].applyMatrix4(h.makeRotationAxis(a[n],r*n)),u[n].crossVectors(a[n],s[n]);return{tangents:a,normals:s,binormals:u}},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.arcLengthDivisions=t.arcLengthDivisions,this},toJSON:function(){var t={metadata:{version:4.5,type:"Curve",generator:"Curve.toJSON"}};return t.arcLengthDivisions=this.arcLengthDivisions,t.type=this.type,t},fromJSON:function(t){return this.arcLengthDivisions=t.arcLengthDivisions,this}}),sJ.prototype=Object.create(sQ.prototype),sJ.prototype.constructor=sJ,sJ.prototype.isEllipseCurve=!0,sJ.prototype.getPoint=function(t,e){for(var n=e||new n$,i=2*Math.PI,r=this.aEndAngle-this.aStartAngle,o=Math.abs(r)<Number.EPSILON;r<0;)r+=i;for(;r>i;)r-=i;r<Number.EPSILON&&(r=o?0:i),!0!==this.aClockwise||o||(r===i?r=-i:r-=i);var a=this.aStartAngle+t*r,s=this.aX+this.xRadius*Math.cos(a),u=this.aY+this.yRadius*Math.sin(a);if(0!==this.aRotation){var l=Math.cos(this.aRotation),h=Math.sin(this.aRotation),c=s-this.aX,p=u-this.aY;s=c*l-p*h+this.aX,u=c*h+p*l+this.aY}return n.set(s,u)},sJ.prototype.copy=function(t){return sQ.prototype.copy.call(this,t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this},sJ.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);return t.aX=this.aX,t.aY=this.aY,t.xRadius=this.xRadius,t.yRadius=this.yRadius,t.aStartAngle=this.aStartAngle,t.aEndAngle=this.aEndAngle,t.aClockwise=this.aClockwise,t.aRotation=this.aRotation,t},sJ.prototype.fromJSON=function(t){return sQ.prototype.fromJSON.call(this,t),this.aX=t.aX,this.aY=t.aY,this.xRadius=t.xRadius,this.yRadius=t.yRadius,this.aStartAngle=t.aStartAngle,this.aEndAngle=t.aEndAngle,this.aClockwise=t.aClockwise,this.aRotation=t.aRotation,this},s9.prototype=Object.create(sJ.prototype),s9.prototype.constructor=s9,s9.prototype.isArcCurve=!0;var ue=new n8,un=new ut,ui=new ut,ur=new ut;function uo(t,e,n,i){sQ.call(this),this.type="CatmullRomCurve3",this.points=t||[],this.closed=e||!1,this.curveType=n||"centripetal",this.tension=i||.5}function ua(t,e,n,i,r){var o=.5*(i-e),a=.5*(r-n),s=t*t;return(2*n-2*i+o+a)*(t*s)+(-3*n+3*i-2*o-a)*s+o*t+n}function us(t,e,n,i){var r,o,a,s,u,l,h;return r=t,o=e,(a=1-r)*a*o+(s=t,2*(1-s)*s*(u=n))+(l=t,l*l*(h=i))}function uu(t,e,n,i,r){var o,a,s,u,l,h,c,p,d,f;return o=t,a=e,(s=1-o)*s*s*a+(u=t,l=n,3*(h=1-u)*h*u*l)+(c=t,3*(1-c)*c*c*(p=i))+(d=t,d*d*d*(f=r))}function ul(t,e,n,i){sQ.call(this),this.type="CubicBezierCurve",this.v0=t||new n$,this.v1=e||new n$,this.v2=n||new n$,this.v3=i||new n$}function uh(t,e,n,i){sQ.call(this),this.type="CubicBezierCurve3",this.v0=t||new n8,this.v1=e||new n8,this.v2=n||new n8,this.v3=i||new n8}function uc(t,e){sQ.call(this),this.type="LineCurve",this.v1=t||new n$,this.v2=e||new n$}function up(t,e){sQ.call(this),this.type="LineCurve3",this.v1=t||new n8,this.v2=e||new n8}function ud(t,e,n){sQ.call(this),this.type="QuadraticBezierCurve",this.v0=t||new n$,this.v1=e||new n$,this.v2=n||new n$}function uf(t,e,n){sQ.call(this),this.type="QuadraticBezierCurve3",this.v0=t||new n8,this.v1=e||new n8,this.v2=n||new n8}function um(t){sQ.call(this),this.type="SplineCurve",this.points=t||[]}uo.prototype=Object.create(sQ.prototype),uo.prototype.constructor=uo,uo.prototype.isCatmullRomCurve3=!0,uo.prototype.getPoint=function(t,e){var n,i,r,o,a=e||new n8,s=this.points,u=s.length,l=(u-(this.closed?0:1))*t,h=Math.floor(l),c=l-h;if(this.closed?h+=h>0?0:(Math.floor(Math.abs(h)/u)+1)*u:0===c&&h===u-1&&(h=u-2,c=1),this.closed||h>0?n=s[(h-1)%u]:(ue.subVectors(s[0],s[1]).add(s[0]),n=ue),i=s[h%u],r=s[(h+1)%u],this.closed||h+2<u?o=s[(h+2)%u]:(ue.subVectors(s[u-1],s[u-2]).add(s[u-1]),o=ue),"centripetal"===this.curveType||"chordal"===this.curveType){var p="chordal"===this.curveType?.5:.25,d=Math.pow(n.distanceToSquared(i),p),f=Math.pow(i.distanceToSquared(r),p),m=Math.pow(r.distanceToSquared(o),p);f<1e-4&&(f=1),d<1e-4&&(d=f),m<1e-4&&(m=f),un.initNonuniformCatmullRom(n.x,i.x,r.x,o.x,d,f,m),ui.initNonuniformCatmullRom(n.y,i.y,r.y,o.y,d,f,m),ur.initNonuniformCatmullRom(n.z,i.z,r.z,o.z,d,f,m)}else"catmullrom"===this.curveType&&(un.initCatmullRom(n.x,i.x,r.x,o.x,this.tension),ui.initCatmullRom(n.y,i.y,r.y,o.y,this.tension),ur.initCatmullRom(n.z,i.z,r.z,o.z,this.tension));return a.set(un.calc(c),ui.calc(c),ur.calc(c)),a},uo.prototype.copy=function(t){sQ.prototype.copy.call(this,t),this.points=[];for(var e=0,n=t.points.length;e<n;e++){var i=t.points[e];this.points.push(i.clone())}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this},uo.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);t.points=[];for(var e=0,n=this.points.length;e<n;e++){var i=this.points[e];t.points.push(i.toArray())}return t.closed=this.closed,t.curveType=this.curveType,t.tension=this.tension,t},uo.prototype.fromJSON=function(t){sQ.prototype.fromJSON.call(this,t),this.points=[];for(var e=0,n=t.points.length;e<n;e++){var i=t.points[e];this.points.push((new n8).fromArray(i))}return this.closed=t.closed,this.curveType=t.curveType,this.tension=t.tension,this},ul.prototype=Object.create(sQ.prototype),ul.prototype.constructor=ul,ul.prototype.isCubicBezierCurve=!0,ul.prototype.getPoint=function(t,e){var n=e||new n$,i=this.v0,r=this.v1,o=this.v2,a=this.v3;return n.set(uu(t,i.x,r.x,o.x,a.x),uu(t,i.y,r.y,o.y,a.y)),n},ul.prototype.copy=function(t){return sQ.prototype.copy.call(this,t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this},ul.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t},ul.prototype.fromJSON=function(t){return sQ.prototype.fromJSON.call(this,t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this},uh.prototype=Object.create(sQ.prototype),uh.prototype.constructor=uh,uh.prototype.isCubicBezierCurve3=!0,uh.prototype.getPoint=function(t,e){var n=e||new n8,i=this.v0,r=this.v1,o=this.v2,a=this.v3;return n.set(uu(t,i.x,r.x,o.x,a.x),uu(t,i.y,r.y,o.y,a.y),uu(t,i.z,r.z,o.z,a.z)),n},uh.prototype.copy=function(t){return sQ.prototype.copy.call(this,t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this.v3.copy(t.v3),this},uh.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t.v3=this.v3.toArray(),t},uh.prototype.fromJSON=function(t){return sQ.prototype.fromJSON.call(this,t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this.v3.fromArray(t.v3),this},uc.prototype=Object.create(sQ.prototype),uc.prototype.constructor=uc,uc.prototype.isLineCurve=!0,uc.prototype.getPoint=function(t,e){var n=e||new n$;return 1===t?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n},uc.prototype.getPointAt=function(t,e){return this.getPoint(t,e)},uc.prototype.getTangent=function(){return this.v2.clone().sub(this.v1).normalize()},uc.prototype.copy=function(t){return sQ.prototype.copy.call(this,t),this.v1.copy(t.v1),this.v2.copy(t.v2),this},uc.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t},uc.prototype.fromJSON=function(t){return sQ.prototype.fromJSON.call(this,t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this},up.prototype=Object.create(sQ.prototype),up.prototype.constructor=up,up.prototype.isLineCurve3=!0,up.prototype.getPoint=function(t,e){var n=e||new n8;return 1===t?n.copy(this.v2):(n.copy(this.v2).sub(this.v1),n.multiplyScalar(t).add(this.v1)),n},up.prototype.getPointAt=function(t,e){return this.getPoint(t,e)},up.prototype.copy=function(t){return sQ.prototype.copy.call(this,t),this.v1.copy(t.v1),this.v2.copy(t.v2),this},up.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);return t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t},up.prototype.fromJSON=function(t){return sQ.prototype.fromJSON.call(this,t),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this},ud.prototype=Object.create(sQ.prototype),ud.prototype.constructor=ud,ud.prototype.isQuadraticBezierCurve=!0,ud.prototype.getPoint=function(t,e){var n=e||new n$,i=this.v0,r=this.v1,o=this.v2;return n.set(us(t,i.x,r.x,o.x),us(t,i.y,r.y,o.y)),n},ud.prototype.copy=function(t){return sQ.prototype.copy.call(this,t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this},ud.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t},ud.prototype.fromJSON=function(t){return sQ.prototype.fromJSON.call(this,t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this},uf.prototype=Object.create(sQ.prototype),uf.prototype.constructor=uf,uf.prototype.isQuadraticBezierCurve3=!0,uf.prototype.getPoint=function(t,e){var n=e||new n8,i=this.v0,r=this.v1,o=this.v2;return n.set(us(t,i.x,r.x,o.x),us(t,i.y,r.y,o.y),us(t,i.z,r.z,o.z)),n},uf.prototype.copy=function(t){return sQ.prototype.copy.call(this,t),this.v0.copy(t.v0),this.v1.copy(t.v1),this.v2.copy(t.v2),this},uf.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);return t.v0=this.v0.toArray(),t.v1=this.v1.toArray(),t.v2=this.v2.toArray(),t},uf.prototype.fromJSON=function(t){return sQ.prototype.fromJSON.call(this,t),this.v0.fromArray(t.v0),this.v1.fromArray(t.v1),this.v2.fromArray(t.v2),this},um.prototype=Object.create(sQ.prototype),um.prototype.constructor=um,um.prototype.isSplineCurve=!0,um.prototype.getPoint=function(t,e){var n=e||new n$,i=this.points,r=(i.length-1)*t,o=Math.floor(r),a=r-o,s=i[0===o?o:o-1],u=i[o],l=i[o>i.length-2?i.length-1:o+1],h=i[o>i.length-3?i.length-1:o+2];return n.set(ua(a,s.x,u.x,l.x,h.x),ua(a,s.y,u.y,l.y,h.y)),n},um.prototype.copy=function(t){sQ.prototype.copy.call(this,t),this.points=[];for(var e=0,n=t.points.length;e<n;e++){var i=t.points[e];this.points.push(i.clone())}return this},um.prototype.toJSON=function(){var t=sQ.prototype.toJSON.call(this);t.points=[];for(var e=0,n=this.points.length;e<n;e++){var i=this.points[e];t.points.push(i.toArray())}return t},um.prototype.fromJSON=function(t){sQ.prototype.fromJSON.call(this,t),this.points=[];for(var e=0,n=t.points.length;e<n;e++){var i=t.points[e];this.points.push((new n$).fromArray(i))}return this};var ug=Object.freeze({ArcCurve:s9,CatmullRomCurve3:uo,CubicBezierCurve:ul,CubicBezierCurve3:uh,EllipseCurve:sJ,LineCurve:uc,LineCurve3:up,QuadraticBezierCurve:ud,QuadraticBezierCurve3:uf,SplineCurve:um});function uv(){sQ.call(this),this.type="CurvePath",this.curves=[],this.autoClose=!1}function u$(t){uv.call(this),this.type="Path",this.currentPoint=new n$,t&&this.setFromPoints(t)}function uy(t){u$.call(this,t),this.uuid=nv.generateUUID(),this.type="Shape",this.holes=[]}function u_(t,e){nU.call(this),this.type="Light",this.color=new nI(t),this.intensity=void 0!==e?e:1,this.receiveShadow=void 0}function u8(t,e,n){u_.call(this,t,n),this.type="HemisphereLight",this.castShadow=void 0,this.position.copy(nU.DefaultUp),this.updateMatrix(),this.groundColor=new nI(e)}function ux(t){this.camera=t,this.bias=0,this.radius=1,this.mapSize=new n$(512,512),this.map=null,this.matrix=new ny}function ub(){ux.call(this,new ry(50,1,.5,500))}function uw(t,e,n,i,r,o){u_.call(this,t,e),this.type="SpotLight",this.position.copy(nU.DefaultUp),this.updateMatrix(),this.target=new nU,Object.defineProperty(this,"power",{get:function(){return this.intensity*Math.PI},set:function(t){this.intensity=t/Math.PI}}),this.distance=void 0!==n?n:0,this.angle=void 0!==i?i:Math.PI/3,this.penumbra=void 0!==r?r:0,this.decay=void 0!==o?o:1,this.shadow=new ub}function uA(t,e,n,i){u_.call(this,t,e),this.type="PointLight",Object.defineProperty(this,"power",{get:function(){return 4*this.intensity*Math.PI},set:function(t){this.intensity=t/(4*Math.PI)}}),this.distance=void 0!==n?n:0,this.decay=void 0!==i?i:1,this.shadow=new ux(new ry(90,1,.5,500))}function uT(t,e,n,i,r,o){r$.call(this),this.type="OrthographicCamera",this.zoom=1,this.view=null,this.left=void 0!==t?t:-1,this.right=void 0!==e?e:1,this.top=void 0!==n?n:1,this.bottom=void 0!==i?i:-1,this.near=void 0!==r?r:.1,this.far=void 0!==o?o:2e3,this.updateProjectionMatrix()}function uS(){ux.call(this,new uT(-5,5,5,-5,.5,500))}function uE(t,e){u_.call(this,t,e),this.type="DirectionalLight",this.position.copy(nU.DefaultUp),this.updateMatrix(),this.target=new nU,this.shadow=new uS}function u0(t,e){u_.call(this,t,e),this.type="AmbientLight",this.castShadow=void 0}function uP(t,e,n,i){u_.call(this,t,e),this.type="RectAreaLight",this.width=void 0!==n?n:10,this.height=void 0!==i?i:10}function uC(t){this.manager=void 0!==t?t:s6,this.textures={}}uv.prototype=Object.assign(Object.create(sQ.prototype),{constructor:uv,add:function(t){this.curves.push(t)},closePath:function(){var t=this.curves[0].getPoint(0),e=this.curves[this.curves.length-1].getPoint(1);t.equals(e)||this.curves.push(new uc(e,t))},getPoint:function(t){for(var e=t*this.getLength(),n=this.getCurveLengths(),i=0;i<n.length;){if(n[i]>=e){var r=n[i]-e,o=this.curves[i],a=o.getLength(),s=0===a?0:1-r/a;return o.getPointAt(s)}i++}return null},getLength:function(){var t=this.getCurveLengths();return t[t.length-1]},updateArcLengths:function(){this.needsUpdate=!0,this.cacheLengths=null,this.getCurveLengths()},getCurveLengths:function(){if(this.cacheLengths&&this.cacheLengths.length===this.curves.length)return this.cacheLengths;for(var t=[],e=0,n=0,i=this.curves.length;n<i;n++)t.push(e+=this.curves[n].getLength());return this.cacheLengths=t,t},getSpacedPoints:function(t){void 0===t&&(t=40);for(var e=[],n=0;n<=t;n++)e.push(this.getPoint(n/t));return this.autoClose&&e.push(e[0]),e},getPoints:function(t){t=t||12;for(var e,n=[],i=0,r=this.curves;i<r.length;i++)for(var o=r[i],a=o&&o.isEllipseCurve?2*t:o&&(o.isLineCurve||o.isLineCurve3)?1:o&&o.isSplineCurve?t*o.points.length:t,s=o.getPoints(a),u=0;u<s.length;u++){var l=s[u];e&&e.equals(l)||(n.push(l),e=l)}return this.autoClose&&n.length>1&&!n[n.length-1].equals(n[0])&&n.push(n[0]),n},copy:function(t){sQ.prototype.copy.call(this,t),this.curves=[];for(var e=0,n=t.curves.length;e<n;e++){var i=t.curves[e];this.curves.push(i.clone())}return this.autoClose=t.autoClose,this},toJSON:function(){var t=sQ.prototype.toJSON.call(this);t.autoClose=this.autoClose,t.curves=[];for(var e=0,n=this.curves.length;e<n;e++){var i=this.curves[e];t.curves.push(i.toJSON())}return t},fromJSON:function(t){sQ.prototype.fromJSON.call(this,t),this.autoClose=t.autoClose,this.curves=[];for(var e=0,n=t.curves.length;e<n;e++){var i=t.curves[e];this.curves.push((new ug[i.type]).fromJSON(i))}return this}}),u$.prototype=Object.assign(Object.create(uv.prototype),{constructor:u$,setFromPoints:function(t){this.moveTo(t[0].x,t[0].y);for(var e=1,n=t.length;e<n;e++)this.lineTo(t[e].x,t[e].y)},moveTo:function(t,e){this.currentPoint.set(t,e)},lineTo:function(t,e){var n=new uc(this.currentPoint.clone(),new n$(t,e));this.curves.push(n),this.currentPoint.set(t,e)},quadraticCurveTo:function(t,e,n,i){var r=new ud(this.currentPoint.clone(),new n$(t,e),new n$(n,i));this.curves.push(r),this.currentPoint.set(n,i)},bezierCurveTo:function(t,e,n,i,r,o){var a=new ul(this.currentPoint.clone(),new n$(t,e),new n$(n,i),new n$(r,o));this.curves.push(a),this.currentPoint.set(r,o)},splineThru:function(t){var e=new um([this.currentPoint.clone()].concat(t));this.curves.push(e),this.currentPoint.copy(t[t.length-1])},arc:function(t,e,n,i,r,o){var a=this.currentPoint.x,s=this.currentPoint.y;this.absarc(t+a,e+s,n,i,r,o)},absarc:function(t,e,n,i,r,o){this.absellipse(t,e,n,n,i,r,o)},ellipse:function(t,e,n,i,r,o,a,s){var u=this.currentPoint.x,l=this.currentPoint.y;this.absellipse(t+u,e+l,n,i,r,o,a,s)},absellipse:function(t,e,n,i,r,o,a,s){var u=new sJ(t,e,n,i,r,o,a,s);if(this.curves.length>0){var l=u.getPoint(0);l.equals(this.currentPoint)||this.lineTo(l.x,l.y)}this.curves.push(u);var h=u.getPoint(1);this.currentPoint.copy(h)},copy:function(t){return uv.prototype.copy.call(this,t),this.currentPoint.copy(t.currentPoint),this},toJSON:function(){var t=uv.prototype.toJSON.call(this);return t.currentPoint=this.currentPoint.toArray(),t},fromJSON:function(t){return uv.prototype.fromJSON.call(this,t),this.currentPoint.fromArray(t.currentPoint),this}}),uy.prototype=Object.assign(Object.create(u$.prototype),{constructor:uy,getPointsHoles:function(t){for(var e=[],n=0,i=this.holes.length;n<i;n++)e[n]=this.holes[n].getPoints(t);return e},extractPoints:function(t){return{shape:this.getPoints(t),holes:this.getPointsHoles(t)}},copy:function(t){u$.prototype.copy.call(this,t),this.holes=[];for(var e=0,n=t.holes.length;e<n;e++){var i=t.holes[e];this.holes.push(i.clone())}return this},toJSON:function(){var t=u$.prototype.toJSON.call(this);t.uuid=this.uuid,t.holes=[];for(var e=0,n=this.holes.length;e<n;e++){var i=this.holes[e];t.holes.push(i.toJSON())}return t},fromJSON:function(t){u$.prototype.fromJSON.call(this,t),this.uuid=t.uuid,this.holes=[];for(var e=0,n=t.holes.length;e<n;e++){var i=t.holes[e];this.holes.push((new u$).fromJSON(i))}return this}}),u_.prototype=Object.assign(Object.create(nU.prototype),{constructor:u_,isLight:!0,copy:function(t){return nU.prototype.copy.call(this,t),this.color.copy(t.color),this.intensity=t.intensity,this},toJSON:function(t){var e=nU.prototype.toJSON.call(this,t);return e.object.color=this.color.getHex(),e.object.intensity=this.intensity,void 0!==this.groundColor&&(e.object.groundColor=this.groundColor.getHex()),void 0!==this.distance&&(e.object.distance=this.distance),void 0!==this.angle&&(e.object.angle=this.angle),void 0!==this.decay&&(e.object.decay=this.decay),void 0!==this.penumbra&&(e.object.penumbra=this.penumbra),void 0!==this.shadow&&(e.object.shadow=this.shadow.toJSON()),e}}),u8.prototype=Object.assign(Object.create(u_.prototype),{constructor:u8,isHemisphereLight:!0,copy:function(t){return u_.prototype.copy.call(this,t),this.groundColor.copy(t.groundColor),this}}),Object.assign(ux.prototype,{copy:function(t){return this.camera=t.camera.clone(),this.bias=t.bias,this.radius=t.radius,this.mapSize.copy(t.mapSize),this},clone:function(){return(new this.constructor).copy(this)},toJSON:function(){var t={};return 0!==this.bias&&(t.bias=this.bias),1!==this.radius&&(t.radius=this.radius),512===this.mapSize.x&&512===this.mapSize.y||(t.mapSize=this.mapSize.toArray()),t.camera=this.camera.toJSON(!1).object,delete t.camera.matrix,t}}),ub.prototype=Object.assign(Object.create(ux.prototype),{constructor:ub,isSpotLightShadow:!0,update:function(t){var e=this.camera,n=2*nv.RAD2DEG*t.angle,i=this.mapSize.width/this.mapSize.height,r=t.distance||e.far;n===e.fov&&i===e.aspect&&r===e.far||(e.fov=n,e.aspect=i,e.far=r,e.updateProjectionMatrix())}}),uw.prototype=Object.assign(Object.create(u_.prototype),{constructor:uw,isSpotLight:!0,copy:function(t){return u_.prototype.copy.call(this,t),this.distance=t.distance,this.angle=t.angle,this.penumbra=t.penumbra,this.decay=t.decay,this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}),uA.prototype=Object.assign(Object.create(u_.prototype),{constructor:uA,isPointLight:!0,copy:function(t){return u_.prototype.copy.call(this,t),this.distance=t.distance,this.decay=t.decay,this.shadow=t.shadow.clone(),this}}),uT.prototype=Object.assign(Object.create(r$.prototype),{constructor:uT,isOrthographicCamera:!0,copy:function(t,e){return r$.prototype.copy.call(this,t,e),this.left=t.left,this.right=t.right,this.top=t.top,this.bottom=t.bottom,this.near=t.near,this.far=t.far,this.zoom=t.zoom,this.view=null===t.view?null:Object.assign({},t.view),this},setViewOffset:function(t,e,n,i,r,o){null===this.view&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=t,this.view.fullHeight=e,this.view.offsetX=n,this.view.offsetY=i,this.view.width=r,this.view.height=o,this.updateProjectionMatrix()},clearViewOffset:function(){null!==this.view&&(this.view.enabled=!1),this.updateProjectionMatrix()},updateProjectionMatrix:function(){var t=(this.right-this.left)/(2*this.zoom),e=(this.top-this.bottom)/(2*this.zoom),n=(this.right+this.left)/2,i=(this.top+this.bottom)/2,r=n-t,o=n+t,a=i+e,s=i-e;if(null!==this.view&&this.view.enabled){var u=this.zoom/(this.view.width/this.view.fullWidth),l=this.zoom/(this.view.height/this.view.fullHeight),h=(this.right-this.left)/this.view.width,c=(this.top-this.bottom)/this.view.height;o=(r+=h*(this.view.offsetX/u))+h*(this.view.width/u),s=(a-=c*(this.view.offsetY/l))-c*(this.view.height/l)}this.projectionMatrix.makeOrthographic(r,o,a,s,this.near,this.far),this.projectionMatrixInverse.getInverse(this.projectionMatrix)},toJSON:function(t){var e=nU.prototype.toJSON.call(this,t);return e.object.zoom=this.zoom,e.object.left=this.left,e.object.right=this.right,e.object.top=this.top,e.object.bottom=this.bottom,e.object.near=this.near,e.object.far=this.far,null!==this.view&&(e.object.view=Object.assign({},this.view)),e}}),uS.prototype=Object.assign(Object.create(ux.prototype),{constructor:uS}),uE.prototype=Object.assign(Object.create(u_.prototype),{constructor:uE,isDirectionalLight:!0,copy:function(t){return u_.prototype.copy.call(this,t),this.target=t.target.clone(),this.shadow=t.shadow.clone(),this}}),u0.prototype=Object.assign(Object.create(u_.prototype),{constructor:u0,isAmbientLight:!0}),uP.prototype=Object.assign(Object.create(u_.prototype),{constructor:uP,isRectAreaLight:!0,copy:function(t){return u_.prototype.copy.call(this,t),this.width=t.width,this.height=t.height,this},toJSON:function(t){var e=u_.prototype.toJSON.call(this,t);return e.object.width=this.width,e.object.height=this.height,e}}),Object.assign(uC.prototype,{load:function(t,e,n,i){var r=this,o=new s7(r.manager);o.setPath(r.path),o.load(t,function(t){e(r.parse(JSON.parse(t)))},n,i)},parse:function(t){var e=this.textures;function n(t){return void 0===e[t]&&console.warn("THREE.MaterialLoader: Undefined texture",t),e[t]}var i=new s1[t.type];if(void 0!==t.uuid&&(i.uuid=t.uuid),void 0!==t.name&&(i.name=t.name),void 0!==t.color&&i.color.setHex(t.color),void 0!==t.roughness&&(i.roughness=t.roughness),void 0!==t.metalness&&(i.metalness=t.metalness),void 0!==t.emissive&&i.emissive.setHex(t.emissive),void 0!==t.specular&&i.specular.setHex(t.specular),void 0!==t.shininess&&(i.shininess=t.shininess),void 0!==t.clearCoat&&(i.clearCoat=t.clearCoat),void 0!==t.clearCoatRoughness&&(i.clearCoatRoughness=t.clearCoatRoughness),void 0!==t.vertexColors&&(i.vertexColors=t.vertexColors),void 0!==t.fog&&(i.fog=t.fog),void 0!==t.flatShading&&(i.flatShading=t.flatShading),void 0!==t.blending&&(i.blending=t.blending),void 0!==t.combine&&(i.combine=t.combine),void 0!==t.side&&(i.side=t.side),void 0!==t.opacity&&(i.opacity=t.opacity),void 0!==t.transparent&&(i.transparent=t.transparent),void 0!==t.alphaTest&&(i.alphaTest=t.alphaTest),void 0!==t.depthTest&&(i.depthTest=t.depthTest),void 0!==t.depthWrite&&(i.depthWrite=t.depthWrite),void 0!==t.colorWrite&&(i.colorWrite=t.colorWrite),void 0!==t.wireframe&&(i.wireframe=t.wireframe),void 0!==t.wireframeLinewidth&&(i.wireframeLinewidth=t.wireframeLinewidth),void 0!==t.wireframeLinecap&&(i.wireframeLinecap=t.wireframeLinecap),void 0!==t.wireframeLinejoin&&(i.wireframeLinejoin=t.wireframeLinejoin),void 0!==t.rotation&&(i.rotation=t.rotation),1!==t.linewidth&&(i.linewidth=t.linewidth),void 0!==t.dashSize&&(i.dashSize=t.dashSize),void 0!==t.gapSize&&(i.gapSize=t.gapSize),void 0!==t.scale&&(i.scale=t.scale),void 0!==t.polygonOffset&&(i.polygonOffset=t.polygonOffset),void 0!==t.polygonOffsetFactor&&(i.polygonOffsetFactor=t.polygonOffsetFactor),void 0!==t.polygonOffsetUnits&&(i.polygonOffsetUnits=t.polygonOffsetUnits),void 0!==t.skinning&&(i.skinning=t.skinning),void 0!==t.morphTargets&&(i.morphTargets=t.morphTargets),void 0!==t.dithering&&(i.dithering=t.dithering),void 0!==t.visible&&(i.visible=t.visible),void 0!==t.userData&&(i.userData=t.userData),void 0!==t.uniforms)for(var r in t.uniforms){var o=t.uniforms[r];switch(i.uniforms[r]={},o.type){case"t":i.uniforms[r].value=n(o.value);break;case"c":i.uniforms[r].value=(new nI).setHex(o.value);break;case"v2":i.uniforms[r].value=(new n$).fromArray(o.value);break;case"v3":i.uniforms[r].value=(new n8).fromArray(o.value);break;case"v4":i.uniforms[r].value=(new nT).fromArray(o.value);break;case"m4":i.uniforms[r].value=(new ny).fromArray(o.value);break;default:i.uniforms[r].value=o.value}}if(void 0!==t.defines&&(i.defines=t.defines),void 0!==t.vertexShader&&(i.vertexShader=t.vertexShader),void 0!==t.fragmentShader&&(i.fragmentShader=t.fragmentShader),void 0!==t.shading&&(i.flatShading=1===t.shading),void 0!==t.size&&(i.size=t.size),void 0!==t.sizeAttenuation&&(i.sizeAttenuation=t.sizeAttenuation),void 0!==t.map&&(i.map=n(t.map)),void 0!==t.alphaMap&&(i.alphaMap=n(t.alphaMap),i.transparent=!0),void 0!==t.bumpMap&&(i.bumpMap=n(t.bumpMap)),void 0!==t.bumpScale&&(i.bumpScale=t.bumpScale),void 0!==t.normalMap&&(i.normalMap=n(t.normalMap)),void 0!==t.normalMapType&&(i.normalMapType=t.normalMapType),void 0!==t.normalScale){var a=t.normalScale;!1===Array.isArray(a)&&(a=[a,a]),i.normalScale=(new n$).fromArray(a)}return void 0!==t.displacementMap&&(i.displacementMap=n(t.displacementMap)),void 0!==t.displacementScale&&(i.displacementScale=t.displacementScale),void 0!==t.displacementBias&&(i.displacementBias=t.displacementBias),void 0!==t.roughnessMap&&(i.roughnessMap=n(t.roughnessMap)),void 0!==t.metalnessMap&&(i.metalnessMap=n(t.metalnessMap)),void 0!==t.emissiveMap&&(i.emissiveMap=n(t.emissiveMap)),void 0!==t.emissiveIntensity&&(i.emissiveIntensity=t.emissiveIntensity),void 0!==t.specularMap&&(i.specularMap=n(t.specularMap)),void 0!==t.envMap&&(i.envMap=n(t.envMap)),void 0!==t.envMapIntensity&&(i.envMapIntensity=t.envMapIntensity),void 0!==t.reflectivity&&(i.reflectivity=t.reflectivity),void 0!==t.lightMap&&(i.lightMap=n(t.lightMap)),void 0!==t.lightMapIntensity&&(i.lightMapIntensity=t.lightMapIntensity),void 0!==t.aoMap&&(i.aoMap=n(t.aoMap)),void 0!==t.aoMapIntensity&&(i.aoMapIntensity=t.aoMapIntensity),void 0!==t.gradientMap&&(i.gradientMap=n(t.gradientMap)),i},setPath:function(t){return this.path=t,this},setTextures:function(t){return this.textures=t,this}});var uL={decodeText:function(t){if("undefined"!=typeof TextDecoder)return(new TextDecoder).decode(t);for(var e="",n=0,i=t.length;n<i;n++)e+=String.fromCharCode(t[n]);return decodeURIComponent(escape(e))},extractUrlBase:function(t){var e=t.lastIndexOf("/");return -1===e?"./":t.substr(0,e+1)}};function uM(t){this.manager=void 0!==t?t:s6}Object.assign(uM.prototype,{load:function(t,e,n,i){var r=this,o=new s7(r.manager);o.setPath(r.path),o.load(t,function(t){e(r.parse(JSON.parse(t)))},n,i)},parse:function(t){var e=new nJ,n=t.data.index;if(void 0!==n){var i=new u1[n.type](n.array);e.setIndex(new nF(i,1))}var r=t.data.attributes;for(var o in r){var a=r[o];i=new u1[a.type](a.array),e.addAttribute(o,new nF(i,a.itemSize,a.normalized))}var s=t.data.groups||t.data.drawcalls||t.data.offsets;if(void 0!==s)for(var u=0,l=s.length;u!==l;++u){var h=s[u];e.addGroup(h.start,h.count,h.materialIndex)}var c=t.data.boundingSphere;if(void 0!==c){var p=new n8;void 0!==c.center&&p.fromArray(c.center),e.boundingSphere=new nC(p,c.radius)}return e},setPath:function(t){return this.path=t,this}});var u1={Int8Array,Uint8Array,Uint8ClampedArray:"undefined"!=typeof Uint8ClampedArray?Uint8ClampedArray:Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array};function uR(){}function u3(t){"boolean"==typeof t&&(console.warn("THREE.JSONLoader: showStatus parameter has been removed from constructor."),t=void 0),this.manager=void 0!==t?t:s6,this.withCredentials=!1}function uI(t){this.manager=void 0!==t?t:s6,this.resourcePath=""}uR.Handlers={handlers:[],add:function(t,e){this.handlers.push(t,e)},get:function(t){for(var e=this.handlers,n=0,i=e.length;n<i;n+=2){var r=e[n],o=e[n+1];if(r.test(t))return o}return null}},Object.assign(uR.prototype,{crossOrigin:"anonymous",onLoadStart:function(){},onLoadProgress:function(){},onLoadComplete:function(){},initMaterials:function(t,e,n){for(var i=[],r=0;r<t.length;++r)i[r]=this.createMaterial(t[r],e,n);return i},createMaterial:(uW={NoBlending:tx,NormalBlending:tb,AdditiveBlending:tw,SubtractiveBlending:tA,MultiplyBlending:tT,CustomBlending:tS},u7=new nI,uX=new sq,uY=new uC,function(t,e,n){var i={};function r(t,r,o,a,s){var u,l=e+t,h=uR.Handlers.get(l);null!==h?u=h.load(l):(uX.setCrossOrigin(n),u=uX.load(l)),void 0!==r&&(u.repeat.fromArray(r),1!==r[0]&&(u.wrapS=er),1!==r[1]&&(u.wrapT=er)),void 0!==o&&u.offset.fromArray(o),void 0!==a&&("repeat"===a[0]&&(u.wrapS=er),"mirror"===a[0]&&(u.wrapS=ea),"repeat"===a[1]&&(u.wrapT=er),"mirror"===a[1]&&(u.wrapT=ea)),void 0!==s&&(u.anisotropy=s);var c=nv.generateUUID();return i[c]=u,c}var o={uuid:nv.generateUUID(),type:"MeshLambertMaterial"};for(var a in t){var s=t[a];switch(a){case"DbgColor":case"DbgIndex":case"opticalDensity":case"illumination":case"mapDiffuseRepeat":case"mapDiffuseOffset":case"mapDiffuseWrap":case"mapDiffuseAnisotropy":case"mapEmissiveRepeat":case"mapEmissiveOffset":case"mapEmissiveWrap":case"mapEmissiveAnisotropy":case"mapLightRepeat":case"mapLightOffset":case"mapLightWrap":case"mapLightAnisotropy":case"mapAORepeat":case"mapAOOffset":case"mapAOWrap":case"mapAOAnisotropy":case"mapBumpRepeat":case"mapBumpOffset":case"mapBumpWrap":case"mapBumpAnisotropy":case"mapNormalRepeat":case"mapNormalOffset":case"mapNormalWrap":case"mapNormalAnisotropy":case"mapSpecularRepeat":case"mapSpecularOffset":case"mapSpecularWrap":case"mapSpecularAnisotropy":case"mapMetalnessRepeat":case"mapMetalnessOffset":case"mapMetalnessWrap":case"mapMetalnessAnisotropy":case"mapRoughnessRepeat":case"mapRoughnessOffset":case"mapRoughnessWrap":case"mapRoughnessAnisotropy":case"mapAlphaRepeat":case"mapAlphaOffset":case"mapAlphaWrap":case"mapAlphaAnisotropy":break;case"DbgName":o.name=s;break;case"blending":o.blending=uW[s];break;case"colorAmbient":case"mapAmbient":console.warn("THREE.Loader.createMaterial:",a,"is no longer supported.");break;case"colorDiffuse":o.color=u7.fromArray(s).getHex();break;case"colorSpecular":o.specular=u7.fromArray(s).getHex();break;case"colorEmissive":o.emissive=u7.fromArray(s).getHex();break;case"specularCoef":o.shininess=s;break;case"shading":"basic"===s.toLowerCase()&&(o.type="MeshBasicMaterial"),"phong"===s.toLowerCase()&&(o.type="MeshPhongMaterial"),"standard"===s.toLowerCase()&&(o.type="MeshStandardMaterial");break;case"mapDiffuse":o.map=r(s,t.mapDiffuseRepeat,t.mapDiffuseOffset,t.mapDiffuseWrap,t.mapDiffuseAnisotropy);break;case"mapEmissive":o.emissiveMap=r(s,t.mapEmissiveRepeat,t.mapEmissiveOffset,t.mapEmissiveWrap,t.mapEmissiveAnisotropy);break;case"mapLight":o.lightMap=r(s,t.mapLightRepeat,t.mapLightOffset,t.mapLightWrap,t.mapLightAnisotropy);break;case"mapAO":o.aoMap=r(s,t.mapAORepeat,t.mapAOOffset,t.mapAOWrap,t.mapAOAnisotropy);break;case"mapBump":o.bumpMap=r(s,t.mapBumpRepeat,t.mapBumpOffset,t.mapBumpWrap,t.mapBumpAnisotropy);break;case"mapBumpScale":o.bumpScale=s;break;case"mapNormal":o.normalMap=r(s,t.mapNormalRepeat,t.mapNormalOffset,t.mapNormalWrap,t.mapNormalAnisotropy);break;case"mapNormalFactor":o.normalScale=s;break;case"mapSpecular":o.specularMap=r(s,t.mapSpecularRepeat,t.mapSpecularOffset,t.mapSpecularWrap,t.mapSpecularAnisotropy);break;case"mapMetalness":o.metalnessMap=r(s,t.mapMetalnessRepeat,t.mapMetalnessOffset,t.mapMetalnessWrap,t.mapMetalnessAnisotropy);break;case"mapRoughness":o.roughnessMap=r(s,t.mapRoughnessRepeat,t.mapRoughnessOffset,t.mapRoughnessWrap,t.mapRoughnessAnisotropy);break;case"mapAlpha":o.alphaMap=r(s,t.mapAlphaRepeat,t.mapAlphaOffset,t.mapAlphaWrap,t.mapAlphaAnisotropy);break;case"flipSided":o.side=tm;break;case"doubleSided":o.side=tg;break;case"transparency":console.warn("THREE.Loader.createMaterial: transparency has been renamed to opacity"),o.opacity=s;break;case"depthTest":case"depthWrite":case"colorWrite":case"opacity":case"reflectivity":case"transparent":case"visible":case"wireframe":o[a]=s;break;case"vertexColors":!0===s&&(o.vertexColors=t8),"face"===s&&(o.vertexColors=t_);break;default:console.error("THREE.Loader.createMaterial: Unsupported",a,s)}}return"MeshBasicMaterial"===o.type&&delete o.emissive,"MeshPhongMaterial"!==o.type&&delete o.specular,o.opacity<1&&(o.transparent=!0),uY.setTextures(i),uY.parse(o)})}),Object.assign(u3.prototype,{crossOrigin:"anonymous",load:function(t,e,n,i){var r=this,o=void 0===this.path?uL.extractUrlBase(t):this.path,a=new s7(this.manager);a.setPath(this.path),a.setWithCredentials(this.withCredentials),a.load(t,function(n){var i=JSON.parse(n),a=i.metadata;if(void 0!==a){var s=a.type;if(void 0!==s&&"object"===s.toLowerCase())return void console.error("THREE.JSONLoader: "+t+" should be loaded with THREE.ObjectLoader instead.")}var u=r.parse(i,o);e(u.geometry,u.materials)},n,i)},setPath:function(t){return this.path=t,this},setResourcePath:function(t){return this.resourcePath=t,this},setCrossOrigin:function(t){return this.crossOrigin=t,this},parse:function(t,e){void 0!==t.data&&(t=t.data),void 0!==t.scale?t.scale=1/t.scale:t.scale=1;var n=new nH;return function(t,e){function n(t,e){return t&1<<e}var i,r,o,a,s,u,l,h,c,p,d,f,m,g,v,$,y,_,x,b,w,A,T,S,E,P,C,L,M,R,I,D,N=t.faces,B=t.vertices,O=t.normals,G=t.colors,k=t.scale,V=0;if(void 0!==t.uvs){for(h=0;h<t.uvs.length;h++)t.uvs[h].length&&V++;for(h=0;h<V;h++)e.faceVertexUvs[h]=[]}for(d=0,f=B.length;d<f;)(E=new n8).x=B[d++]*k,E.y=B[d++]*k,E.z=B[d++]*k,e.vertices.push(E);for(d=0,f=N.length;d<f;){if(_=1&(i=y=N[d++]),x=2&(r=y),b=8&(o=y),w=16&(a=y),A=32&(s=y),T=64&(u=y),S=128&(l=y),_){if((C=new nG).a=N[d],C.b=N[d+1],C.c=N[d+3],(L=new nG).a=N[d+1],L.b=N[d+2],L.c=N[d+3],d+=4,x&&($=N[d++],C.materialIndex=$,L.materialIndex=$),p=e.faces.length,b)for(h=0;h<V;h++)for(I=t.uvs[h],e.faceVertexUvs[h][p]=[],e.faceVertexUvs[h][p+1]=[],c=0;c<4;c++)D=new n$(I[2*(v=N[d++])],I[2*v+1]),2!==c&&e.faceVertexUvs[h][p].push(D),0!==c&&e.faceVertexUvs[h][p+1].push(D);if(w&&(g=3*N[d++],C.normal.set(O[g++],O[g++],O[g]),L.normal.copy(C.normal)),A)for(h=0;h<4;h++)g=3*N[d++],R=new n8(O[g++],O[g++],O[g]),2!==h&&C.vertexNormals.push(R),0!==h&&L.vertexNormals.push(R);if(T&&(M=G[m=N[d++]],C.color.setHex(M),L.color.setHex(M)),S)for(h=0;h<4;h++)M=G[m=N[d++]],2!==h&&C.vertexColors.push(new nI(M)),0!==h&&L.vertexColors.push(new nI(M));e.faces.push(C),e.faces.push(L)}else{if((P=new nG).a=N[d++],P.b=N[d++],P.c=N[d++],x&&($=N[d++],P.materialIndex=$),p=e.faces.length,b)for(h=0;h<V;h++)for(I=t.uvs[h],e.faceVertexUvs[h][p]=[],c=0;c<3;c++)D=new n$(I[2*(v=N[d++])],I[2*v+1]),e.faceVertexUvs[h][p].push(D);if(w&&(g=3*N[d++],P.normal.set(O[g++],O[g++],O[g])),A)for(h=0;h<3;h++)g=3*N[d++],R=new n8(O[g++],O[g++],O[g]),P.vertexNormals.push(R);if(T&&(m=N[d++],P.color.setHex(G[m])),S)for(h=0;h<3;h++)m=N[d++],P.vertexColors.push(new nI(G[m]));e.faces.push(P)}}}(t,n),function(t,e){var n=void 0!==t.influencesPerVertex?t.influencesPerVertex:2;if(t.skinWeights)for(var i=0,r=t.skinWeights.length;i<r;i+=n){var o=t.skinWeights[i],a=n>1?t.skinWeights[i+1]:0,s=n>2?t.skinWeights[i+2]:0,u=n>3?t.skinWeights[i+3]:0;e.skinWeights.push(new nT(o,a,s,u))}if(t.skinIndices)for(i=0,r=t.skinIndices.length;i<r;i+=n){var l=t.skinIndices[i],h=n>1?t.skinIndices[i+1]:0,c=n>2?t.skinIndices[i+2]:0,p=n>3?t.skinIndices[i+3]:0;e.skinIndices.push(new nT(l,h,c,p))}e.bones=t.bones,e.bones&&e.bones.length>0&&(e.skinWeights.length!==e.skinIndices.length||e.skinIndices.length!==e.vertices.length)&&console.warn("When skinning, number of vertices ("+e.vertices.length+"), skinIndices ("+e.skinIndices.length+"), and skinWeights ("+e.skinWeights.length+") should match.")}(t,n),function(t,e){var n=t.scale;if(void 0!==t.morphTargets)for(var i=0,r=t.morphTargets.length;i<r;i++){e.morphTargets[i]={},e.morphTargets[i].name=t.morphTargets[i].name,e.morphTargets[i].vertices=[];for(var o=e.morphTargets[i].vertices,a=t.morphTargets[i].vertices,s=0,u=a.length;s<u;s+=3){var l=new n8;l.x=a[s]*n,l.y=a[s+1]*n,l.z=a[s+2]*n,o.push(l)}}if(void 0!==t.morphColors&&t.morphColors.length>0){console.warn('THREE.JSONLoader: "morphColors" no longer supported. Using them as face colors.');var h=e.faces,c=t.morphColors[0].colors;for(i=0,r=h.length;i<r;i++)h[i].color.fromArray(c,3*i)}}(t,n),function(t,e){var n=[],i=[];void 0!==t.animation&&i.push(t.animation),void 0!==t.animations&&(t.animations.length?i=i.concat(t.animations):i.push(t.animations));for(var r=0;r<i.length;r++){var o=sH.parseAnimation(i[r],e.bones);o&&n.push(o)}if(e.morphTargets){var a=sH.CreateClipsFromMorphTargetSequences(e.morphTargets,10);n=n.concat(a)}n.length>0&&(e.animations=n)}(t,n),n.computeFaceNormals(),n.computeBoundingSphere(),void 0===t.materials||0===t.materials.length?{geometry:n}:{geometry:n,materials:uR.prototype.initMaterials(t.materials,this.resourcePath||e,this.crossOrigin)}}}),Object.assign(uI.prototype,{crossOrigin:"anonymous",load:function(t,e,n,i){var r=this,o=void 0===this.path?uL.extractUrlBase(t):this.path;this.resourcePath=this.resourcePath||o;var a=new s7(r.manager);a.setPath(this.path),a.load(t,function(n){var o=null;try{o=JSON.parse(n)}catch(a){return void 0!==i&&i(a),void console.error("THREE:ObjectLoader: Can't parse "+t+".",a.message)}var s=o.metadata;void 0!==s&&void 0!==s.type&&"geometry"!==s.type.toLowerCase()?r.parse(o,e):console.error("THREE.ObjectLoader: Can't load "+t+". Use THREE.JSONLoader instead.")},n,i)},setPath:function(t){return this.path=t,this},setResourcePath:function(t){return this.resourcePath=t,this},setCrossOrigin:function(t){return this.crossOrigin=t,this},parse:function(t,e){var n=this.parseShape(t.shapes),i=this.parseGeometries(t.geometries,n),r=this.parseImages(t.images,function(){void 0!==e&&e(s)}),o=this.parseTextures(t.textures,r),a=this.parseMaterials(t.materials,o),s=this.parseObject(t.object,i,a);return t.animations&&(s.animations=this.parseAnimations(t.animations)),void 0!==t.images&&0!==t.images.length||void 0!==e&&e(s),s},parseShape:function(t){var e={};if(void 0!==t)for(var n=0,i=t.length;n<i;n++){var r=(new uy).fromJSON(t[n]);e[r.uuid]=r}return e},parseGeometries:function(t,e){var n={};if(void 0!==t)for(var i=new u3,r=new uM,o=0,a=t.length;o<a;o++){var s,u=t[o];switch(u.type){case"PlaneGeometry":case"PlaneBufferGeometry":s=new sb[u.type](u.width,u.height,u.widthSegments,u.heightSegments);break;case"BoxGeometry":case"BoxBufferGeometry":case"CubeGeometry":s=new sb[u.type](u.width,u.height,u.depth,u.widthSegments,u.heightSegments,u.depthSegments);break;case"CircleGeometry":case"CircleBufferGeometry":s=new sb[u.type](u.radius,u.segments,u.thetaStart,u.thetaLength);break;case"CylinderGeometry":case"CylinderBufferGeometry":s=new sb[u.type](u.radiusTop,u.radiusBottom,u.height,u.radialSegments,u.heightSegments,u.openEnded,u.thetaStart,u.thetaLength);break;case"ConeGeometry":case"ConeBufferGeometry":s=new sb[u.type](u.radius,u.height,u.radialSegments,u.heightSegments,u.openEnded,u.thetaStart,u.thetaLength);break;case"SphereGeometry":case"SphereBufferGeometry":s=new sb[u.type](u.radius,u.widthSegments,u.heightSegments,u.phiStart,u.phiLength,u.thetaStart,u.thetaLength);break;case"DodecahedronGeometry":case"DodecahedronBufferGeometry":case"IcosahedronGeometry":case"IcosahedronBufferGeometry":case"OctahedronGeometry":case"OctahedronBufferGeometry":case"TetrahedronGeometry":case"TetrahedronBufferGeometry":s=new sb[u.type](u.radius,u.detail);break;case"RingGeometry":case"RingBufferGeometry":s=new sb[u.type](u.innerRadius,u.outerRadius,u.thetaSegments,u.phiSegments,u.thetaStart,u.thetaLength);break;case"TorusGeometry":case"TorusBufferGeometry":s=new sb[u.type](u.radius,u.tube,u.radialSegments,u.tubularSegments,u.arc);break;case"TorusKnotGeometry":case"TorusKnotBufferGeometry":s=new sb[u.type](u.radius,u.tube,u.tubularSegments,u.radialSegments,u.p,u.q);break;case"LatheGeometry":case"LatheBufferGeometry":s=new sb[u.type](u.points,u.segments,u.phiStart,u.phiLength);break;case"PolyhedronGeometry":case"PolyhedronBufferGeometry":s=new sb[u.type](u.vertices,u.indices,u.radius,u.details);break;case"ShapeGeometry":case"ShapeBufferGeometry":for(var l=[],h=0,c=u.shapes.length;h<c;h++){var p=e[u.shapes[h]];l.push(p)}s=new sb[u.type](l,u.curveSegments);break;case"ExtrudeGeometry":case"ExtrudeBufferGeometry":for(l=[],h=0,c=u.shapes.length;h<c;h++)p=e[u.shapes[h]],l.push(p);var d=u.options.extrudePath;void 0!==d&&(u.options.extrudePath=(new ug[d.type]).fromJSON(d)),s=new sb[u.type](l,u.options);break;case"BufferGeometry":s=r.parse(u);break;case"Geometry":s=i.parse(u,this.resourcePath).geometry;break;default:console.warn('THREE.ObjectLoader: Unsupported geometry type "'+u.type+'"');continue}s.uuid=u.uuid,void 0!==u.name&&(s.name=u.name),!0===s.isBufferGeometry&&void 0!==u.userData&&(s.userData=u.userData),n[u.uuid]=s}return n},parseMaterials:function(t,e){var n={},i={};if(void 0!==t){var r=new uC;r.setTextures(e);for(var o=0,a=t.length;o<a;o++){var s=t[o];if("MultiMaterial"===s.type){for(var u=[],l=0;l<s.materials.length;l++){var h=s.materials[l];void 0===n[h.uuid]&&(n[h.uuid]=r.parse(h)),u.push(n[h.uuid])}i[s.uuid]=u}else i[s.uuid]=r.parse(s),n[s.uuid]=i[s.uuid]}}return i},parseAnimations:function(t){for(var e=[],n=0;n<t.length;n++){var i=t[n],r=sH.parse(i);void 0!==i.uuid&&(r.uuid=i.uuid),e.push(r)}return e},parseImages:function(t,e){var n=this,i={};function r(t){return n.manager.itemStart(t),o.load(t,function(){n.manager.itemEnd(t)},void 0,function(){n.manager.itemError(t),n.manager.itemEnd(t)})}if(void 0!==t&&t.length>0){var o=new sj(new s4(e));o.setCrossOrigin(this.crossOrigin);for(var a=0,s=t.length;a<s;a++){var u=t[a],l=u.url;if(Array.isArray(l)){i[u.uuid]=[];for(var h=0,c=l.length;h<c;h++){var p=l[h],d=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(p)?p:n.resourcePath+p;i[u.uuid].push(r(d))}}else d=/^(\/\/)|([a-z]+:(\/\/)?)/i.test(u.url)?u.url:n.resourcePath+u.url,i[u.uuid]=r(d)}}return i},parseTextures:function(t,e){function n(t,e){return"number"==typeof t?t:(console.warn("THREE.ObjectLoader.parseTexture: Constant should be in numeric form.",t),e[t])}var i={};if(void 0!==t)for(var r=0,o=t.length;r<o;r++){var a,s=t[r];void 0===s.image&&console.warn('THREE.ObjectLoader: No "image" specified for',s.uuid),void 0===e[s.image]&&console.warn("THREE.ObjectLoader: Undefined image",s.image),(a=Array.isArray(e[s.image])?new ip(e[s.image]):new nA(e[s.image])).needsUpdate=!0,a.uuid=s.uuid,void 0!==s.name&&(a.name=s.name),void 0!==s.mapping&&(a.mapping=n(s.mapping,uj)),void 0!==s.offset&&a.offset.fromArray(s.offset),void 0!==s.repeat&&a.repeat.fromArray(s.repeat),void 0!==s.center&&a.center.fromArray(s.center),void 0!==s.rotation&&(a.rotation=s.rotation),void 0!==s.wrap&&(a.wrapS=n(s.wrap[0],uZ),a.wrapT=n(s.wrap[1],uZ)),void 0!==s.format&&(a.format=s.format),void 0!==s.minFilter&&(a.minFilter=n(s.minFilter,uq)),void 0!==s.magFilter&&(a.magFilter=n(s.magFilter,uq)),void 0!==s.anisotropy&&(a.anisotropy=s.anisotropy),void 0!==s.flipY&&(a.flipY=s.flipY),i[s.uuid]=a}return i},parseObject:function(t,e,n){var i;function r(t){return void 0===e[t]&&console.warn("THREE.ObjectLoader: Undefined geometry",t),e[t]}function o(t){if(void 0!==t){if(Array.isArray(t)){for(var e=[],i=0,r=t.length;i<r;i++){var o=t[i];void 0===n[o]&&console.warn("THREE.ObjectLoader: Undefined material",o),e.push(n[o])}return e}return void 0===n[t]&&console.warn("THREE.ObjectLoader: Undefined material",t),n[t]}}switch(t.type){case"Scene":i=new ai,void 0!==t.background&&Number.isInteger(t.background)&&(i.background=new nI(t.background)),void 0!==t.fog&&("Fog"===t.fog.type?i.fog=new an(t.fog.color,t.fog.near,t.fog.far):"FogExp2"===t.fog.type&&(i.fog=new ae(t.fog.color,t.fog.density)));break;case"PerspectiveCamera":i=new ry(t.fov,t.aspect,t.near,t.far),void 0!==t.focus&&(i.focus=t.focus),void 0!==t.zoom&&(i.zoom=t.zoom),void 0!==t.filmGauge&&(i.filmGauge=t.filmGauge),void 0!==t.filmOffset&&(i.filmOffset=t.filmOffset),void 0!==t.view&&(i.view=Object.assign({},t.view));break;case"OrthographicCamera":i=new uT(t.left,t.right,t.top,t.bottom,t.near,t.far),void 0!==t.zoom&&(i.zoom=t.zoom),void 0!==t.view&&(i.view=Object.assign({},t.view));break;case"AmbientLight":i=new u0(t.color,t.intensity);break;case"DirectionalLight":i=new uE(t.color,t.intensity);break;case"PointLight":i=new uA(t.color,t.intensity,t.distance,t.decay);break;case"RectAreaLight":i=new uP(t.color,t.intensity,t.width,t.height);break;case"SpotLight":i=new uw(t.color,t.intensity,t.distance,t.angle,t.penumbra,t.decay);break;case"HemisphereLight":i=new u8(t.color,t.groundColor,t.intensity);break;case"SkinnedMesh":console.warn("THREE.ObjectLoader.parseObject() does not support SkinnedMesh yet.");case"Mesh":var a=r(t.geometry),s=o(t.material);i=a.bones&&a.bones.length>0?new ac(a,s):new ih(a,s);break;case"LOD":i=new au;break;case"Line":i=new ad(r(t.geometry),o(t.material),t.mode);break;case"LineLoop":i=new am(r(t.geometry),o(t.material));break;case"LineSegments":i=new af(r(t.geometry),o(t.material));break;case"PointCloud":case"Points":i=new av(r(t.geometry),o(t.material));break;case"Sprite":i=new as(o(t.material));break;case"Group":i=new rv;break;default:i=new nU}if(i.uuid=t.uuid,void 0!==t.name&&(i.name=t.name),void 0!==t.matrix?(i.matrix.fromArray(t.matrix),void 0!==t.matrixAutoUpdate&&(i.matrixAutoUpdate=t.matrixAutoUpdate),i.matrixAutoUpdate&&i.matrix.decompose(i.position,i.quaternion,i.scale)):(void 0!==t.position&&i.position.fromArray(t.position),void 0!==t.rotation&&i.rotation.fromArray(t.rotation),void 0!==t.quaternion&&i.quaternion.fromArray(t.quaternion),void 0!==t.scale&&i.scale.fromArray(t.scale)),void 0!==t.castShadow&&(i.castShadow=t.castShadow),void 0!==t.receiveShadow&&(i.receiveShadow=t.receiveShadow),t.shadow&&(void 0!==t.shadow.bias&&(i.shadow.bias=t.shadow.bias),void 0!==t.shadow.radius&&(i.shadow.radius=t.shadow.radius),void 0!==t.shadow.mapSize&&i.shadow.mapSize.fromArray(t.shadow.mapSize),void 0!==t.shadow.camera&&(i.shadow.camera=this.parseObject(t.shadow.camera))),void 0!==t.visible&&(i.visible=t.visible),void 0!==t.frustumCulled&&(i.frustumCulled=t.frustumCulled),void 0!==t.renderOrder&&(i.renderOrder=t.renderOrder),void 0!==t.userData&&(i.userData=t.userData),void 0!==t.layers&&(i.layers.mask=t.layers),void 0!==t.children)for(var u=t.children,l=0;l<u.length;l++)i.add(this.parseObject(u[l],e,n));if("LOD"===t.type)for(var h=t.levels,c=0;c<h.length;c++){var p=h[c],d=i.getObjectByProperty("uuid",p.object);void 0!==d&&i.addLevel(d,p.distance)}return i}});var uD,uN,uB,uO,uG,uk,uV,uz,uU,u2,uH,uF,u5,u4,u6,uW,u7,uX,uY,uK,uj={UVMapping:tq,CubeReflectionMapping:tQ,CubeRefractionMapping:tJ,EquirectangularReflectionMapping:t9,EquirectangularRefractionMapping:et,SphericalReflectionMapping:ee,CubeUVReflectionMapping:en,CubeUVRefractionMapping:ei},uZ={RepeatWrapping:er,ClampToEdgeWrapping:eo,MirroredRepeatWrapping:ea},uq={NearestFilter:es,NearestMipMapNearestFilter:eu,NearestMipMapLinearFilter:el,LinearFilter:eh,LinearMipMapNearestFilter:ec,LinearMipMapLinearFilter:ep};function uQ(t){"undefined"==typeof createImageBitmap&&console.warn("THREE.ImageBitmapLoader: createImageBitmap() not supported."),"undefined"==typeof fetch&&console.warn("THREE.ImageBitmapLoader: fetch() not supported."),this.manager=void 0!==t?t:s6,this.options=void 0}function uJ(){this.type="ShapePath",this.color=new nI,this.subPaths=[],this.currentPath=null}function u9(t){this.type="Font",this.data=t}function lt(t,e,n,i,r){var o=r.glyphs[t]||r.glyphs["?"];if(o){var a,s,u,l,h,c,p,d,f=new uJ;if(o.o)for(var m=o._cachedOutline||(o._cachedOutline=o.o.split(" ")),g=0,v=m.length;g<v;)switch(m[g++]){case"m":a=m[g++]*e+n,s=m[g++]*e+i,f.moveTo(a,s);break;case"l":a=m[g++]*e+n,s=m[g++]*e+i,f.lineTo(a,s);break;case"q":u=m[g++]*e+n,l=m[g++]*e+i,h=m[g++]*e+n,c=m[g++]*e+i,f.quadraticCurveTo(h,c,u,l);break;case"b":u=m[g++]*e+n,l=m[g++]*e+i,h=m[g++]*e+n,c=m[g++]*e+i,p=m[g++]*e+n,d=m[g++]*e+i,f.bezierCurveTo(h,c,p,d,u,l)}return{offsetX:o.ha*e,path:f}}}function le(t){this.manager=void 0!==t?t:s6}uQ.prototype={constructor:uQ,setOptions:function(t){return this.options=t,this},load:function(t,e,n,i){void 0===t&&(t=""),void 0!==this.path&&(t=this.path+t),t=this.manager.resolveURL(t);var r=this,o=s5.get(t);if(void 0!==o)return r.manager.itemStart(t),setTimeout(function(){e&&e(o),r.manager.itemEnd(t)},0),o;fetch(t).then(function(t){return t.blob()}).then(function(t){return createImageBitmap(t,r.options)}).then(function(n){s5.add(t,n),e&&e(n),r.manager.itemEnd(t)}).catch(function(e){i&&i(e),r.manager.itemError(t),r.manager.itemEnd(t)})},setCrossOrigin:function(){return this},setPath:function(t){return this.path=t,this}},Object.assign(uJ.prototype,{moveTo:function(t,e){this.currentPath=new u$,this.subPaths.push(this.currentPath),this.currentPath.moveTo(t,e)},lineTo:function(t,e){this.currentPath.lineTo(t,e)},quadraticCurveTo:function(t,e,n,i){this.currentPath.quadraticCurveTo(t,e,n,i)},bezierCurveTo:function(t,e,n,i,r,o){this.currentPath.bezierCurveTo(t,e,n,i,r,o)},splineThru:function(t){this.currentPath.splineThru(t)},toShapes:function(t,e){function n(t){for(var e=[],n=0,i=t.length;n<i;n++){var r=t[n],o=new uy;o.curves=r.curves,e.push(o)}return e}function i(t,e){for(var n=e.length,i=!1,r=n-1,o=0;o<n;r=o++){var a=e[r],s=e[o],u=s.x-a.x,l=s.y-a.y;if(Math.abs(l)>Number.EPSILON){if(l<0&&(a=e[o],u=-u,s=e[r],l=-l),t.y<a.y||t.y>s.y)continue;if(t.y===a.y){if(t.x===a.x)return!0}else{var h=l*(t.x-a.x)-u*(t.y-a.y);if(0===h)return!0;if(h<0)continue;i=!i}}else{if(t.y!==a.y)continue;if(s.x<=t.x&&t.x<=a.x||a.x<=t.x&&t.x<=s.x)return!0}}return i}var r=aJ.isClockWise,o=this.subPaths;if(0===o.length)return[];if(!0===e)return n(o);var a,s,u,l=[];if(1===o.length)return s=o[0],(u=new uy).curves=s.curves,l.push(u),l;var h=!r(o[0].getPoints());h=t?!h:h;var c,p,d=[],f=[],m=[],g=0;f[g]=void 0,m[g]=[];for(var v=0,$=o.length;v<$;v++)a=r(c=(s=o[v]).getPoints()),(a=t?!a:a)?(!h&&f[g]&&g++,f[g]={s:new uy,p:c},f[g].s.curves=s.curves,h&&g++,m[g]=[]):m[g].push({h:s,p:c[0]});if(!f[0])return n(o);if(f.length>1){for(var y=!1,_=[],x=0,b=f.length;x<b;x++)d[x]=[];for(x=0,b=f.length;x<b;x++)for(var w=m[x],A=0;A<w.length;A++){for(var T=w[A],S=!0,E=0;E<f.length;E++)i(T.p,f[E].p)&&(x!==E&&_.push({froms:x,tos:E,hole:A}),S?(S=!1,d[E].push(T)):y=!0);S&&d[x].push(T)}_.length>0&&(y||(m=d))}v=0;for(var P=f.length;v<P;v++){u=f[v].s,l.push(u);for(var C=0,L=(p=m[v]).length;C<L;C++)u.holes.push(p[C].h)}return l}}),Object.assign(u9.prototype,{isFont:!0,generateShapes:function(t,e){void 0===e&&(e=100);for(var n=[],i=function(t,e,n){for(var i=Array.from?Array.from(t):String(t).split(""),r=e/n.resolution,o=(n.boundingBox.yMax-n.boundingBox.yMin+n.underlineThickness)*r,a=[],s=0,u=0,l=0;l<i.length;l++){var h=i[l];if("\n"===h)s=0,u-=o;else{var c=lt(h,r,s,u,n);s+=c.offsetX,a.push(c.path)}}return a}(t,e,this.data),r=0,o=i.length;r<o;r++)Array.prototype.push.apply(n,i[r].toShapes());return n}}),Object.assign(le.prototype,{load:function(t,e,n,i){var r=this,o=new s7(this.manager);o.setPath(this.path),o.load(t,function(t){try{i=JSON.parse(t)}catch(n){console.warn("THREE.FontLoader: typeface.js support is being deprecated. Use typeface.json instead."),i=JSON.parse(t.substring(65,t.length-2))}var i,o=r.parse(i);e&&e(o)},n,i)},parse:function(t){return new u9(t)},setPath:function(t){return this.path=t,this}});var ln,li,lr={getContext:function(){return void 0===uK&&(uK=new(window.AudioContext||window.webkitAudioContext)),uK},setContext:function(t){uK=t}};function lo(t){this.manager=void 0!==t?t:s6}function la(){this.type="StereoCamera",this.aspect=1,this.eyeSep=.064,this.cameraL=new ry,this.cameraL.layers.enable(1),this.cameraL.matrixAutoUpdate=!1,this.cameraR=new ry,this.cameraR.layers.enable(2),this.cameraR.matrixAutoUpdate=!1}function ls(t,e,n,i){nU.call(this),this.type="CubeCamera";var r=new ry(90,1,t,e);r.up.set(0,-1,0),r.lookAt(new n8(1,0,0)),this.add(r);var o=new ry(90,1,t,e);o.up.set(0,-1,0),o.lookAt(new n8(-1,0,0)),this.add(o);var a=new ry(90,1,t,e);a.up.set(0,0,1),a.lookAt(new n8(0,1,0)),this.add(a);var s=new ry(90,1,t,e);s.up.set(0,0,-1),s.lookAt(new n8(0,-1,0)),this.add(s);var u=new ry(90,1,t,e);u.up.set(0,-1,0),u.lookAt(new n8(0,0,1)),this.add(u);var l=new ry(90,1,t,e);l.up.set(0,-1,0),l.lookAt(new n8(0,0,-1)),this.add(l),i=i||{format:eT,magFilter:eh,minFilter:eh},this.renderTarget=new nE(n,n,i),this.renderTarget.texture.name="CubeCamera",this.update=function(t,e){null===this.parent&&this.updateMatrixWorld();var n=this.renderTarget,i=n.texture.generateMipmaps;n.texture.generateMipmaps=!1,n.activeCubeFace=0,t.render(e,r,n),n.activeCubeFace=1,t.render(e,o,n),n.activeCubeFace=2,t.render(e,a,n),n.activeCubeFace=3,t.render(e,s,n),n.activeCubeFace=4,t.render(e,u,n),n.texture.generateMipmaps=i,n.activeCubeFace=5,t.render(e,l,n),t.setRenderTarget(null)},this.clear=function(t,e,n,i){for(var r=this.renderTarget,o=0;o<6;o++)r.activeCubeFace=o,t.setRenderTarget(r),t.clear(e,n,i);t.setRenderTarget(null)}}function lu(t){this.autoStart=void 0===t||t,this.startTime=0,this.oldTime=0,this.elapsedTime=0,this.running=!1}function ll(){nU.call(this),this.type="AudioListener",this.context=lr.getContext(),this.gain=this.context.createGain(),this.gain.connect(this.context.destination),this.filter=null,this.timeDelta=0}function lh(t){nU.call(this),this.type="Audio",this.listener=t,this.context=t.context,this.gain=this.context.createGain(),this.gain.connect(t.getInput()),this.autoplay=!1,this.buffer=null,this.loop=!1,this.startTime=0,this.offset=0,this.playbackRate=1,this.isPlaying=!1,this.hasPlaybackControl=!0,this.sourceType="empty",this.filters=[]}function lc(t){lh.call(this,t),this.panner=this.context.createPanner(),this.panner.connect(this.gain)}function lp(t,e){this.analyser=t.context.createAnalyser(),this.analyser.fftSize=void 0!==e?e:2048,this.data=new Uint8Array(this.analyser.frequencyBinCount),t.getOutput().connect(this.analyser)}function ld(t,e,n){this.binding=t,this.valueSize=n;var i,r=Float64Array;switch(e){case"quaternion":i=this._slerp;break;case"string":case"bool":r=Array,i=this._select;break;default:i=this._lerp}this.buffer=new r(4*n),this._mixBufferRegion=i,this.cumulativeWeight=0,this.useCount=0,this.referenceCount=0}function lf(t,e,n){var i=n||lm.parseTrackName(e);this._targetGroup=t,this._bindings=t.subscribe_(e,i)}function lm(t,e,n){this.path=e,this.parsedPath=n||lm.parseTrackName(e),this.node=lm.findNode(t,this.parsedPath.nodeName)||t,this.rootNode=t}function lg(){this.uuid=nv.generateUUID(),this._objects=Array.prototype.slice.call(arguments),this.nCachedObjects_=0;var t={};this._indicesByUUID=t;for(var e=0,n=arguments.length;e!==n;++e)t[arguments[e].uuid]=e;this._paths=[],this._parsedPaths=[],this._bindings=[],this._bindingsIndicesByPath={},this.stats={objects:{get total(){return this._objects.length},get inUse(){return this.total-this.nCachedObjects_}},get bindingsPerObject(){return this._bindings.length}}}function lv(t,e,n){this._mixer=t,this._clip=e,this._localRoot=n||null;for(var i=e.tracks,r=i.length,o=Array(r),a={endingStart:e9,endingEnd:e9},s=0;s!==r;++s){var u=i[s].createInterpolant(null);o[s]=u,u.settings=a}this._interpolantSettings=a,this._interpolants=o,this._propertyBindings=Array(r),this._cacheIndex=null,this._byClipCacheIndex=null,this._timeScaleInterpolant=null,this._weightInterpolant=null,this.loop=ej,this._loopCount=-1,this._startTime=null,this.time=0,this.timeScale=1,this._effectiveTimeScale=1,this.weight=1,this._effectiveWeight=1,this.repetitions=1/0,this.paused=!1,this.enabled=!0,this.clampWhenFinished=!1,this.zeroSlopeAtStart=!0,this.zeroSlopeAtEnd=!0}function l$(t){this._root=t,this._initMemoryManager(),this._accuIndex=0,this.time=0,this.timeScale=1}function ly(t){"string"==typeof t&&(console.warn("THREE.Uniform: Type parameter is no longer needed."),t=arguments[1]),this.value=t}function l_(){nJ.call(this),this.type="InstancedBufferGeometry",this.maxInstancedCount=void 0}function l8(t,e,n){ar.call(this,t,e),this.meshPerAttribute=n||1}function lx(t,e,n,i){"number"==typeof n&&(i=n,n=!1,console.error("THREE.InstancedBufferAttribute: The constructor now expects normalized as the third argument.")),nF.call(this,t,e,n),this.meshPerAttribute=i||1}function lb(t,e,n,i){this.ray=new is(t,e),this.near=n||0,this.far=i||1/0,this.params={Mesh:{},Line:{},LOD:{},Points:{threshold:1},Sprite:{}},Object.defineProperties(this.params,{PointCloud:{get:function(){return console.warn("THREE.Raycaster: params.PointCloud has been renamed to params.Points."),this.Points}}})}function lw(t,e){return t.distance-e.distance}function lA(t,e,n,i){if(!1!==t.visible&&(t.raycast(e,n),!0===i))for(var r=t.children,o=0,a=r.length;o<a;o++)lA(r[o],e,n,!0)}function lT(t,e,n){return this.radius=void 0!==t?t:1,this.phi=void 0!==e?e:0,this.theta=void 0!==n?n:0,this}function lS(t,e,n){return this.radius=void 0!==t?t:1,this.theta=void 0!==e?e:0,this.y=void 0!==n?n:0,this}function lE(t,e){this.min=void 0!==t?t:new n$(1/0,1/0),this.max=void 0!==e?e:new n$(-1/0,-1/0)}function l0(t,e){this.start=void 0!==t?t:new n8,this.end=void 0!==e?e:new n8}function lP(t){nU.call(this),this.material=t,this.render=function(){}}function lC(t,e,n,i){this.object=t,this.size=void 0!==e?e:1;var r=0,o=this.object.geometry;o&&o.isGeometry?r=3*o.faces.length:o&&o.isBufferGeometry&&(r=o.attributes.normal.count);var a=new nJ,s=new nK(2*r*3,3);a.addAttribute("position",s),af.call(this,a,new ap({color:void 0!==n?n:16711680,linewidth:void 0!==i?i:1})),this.matrixAutoUpdate=!1,this.update()}function lL(t,e){nU.call(this),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=e;for(var n=new nJ,i=[0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,-1,0,1,0,0,0,0,1,1,0,0,0,0,-1,1],r=0,o=1;r<32;r++,o++){var a=r/32*Math.PI*2,s=o/32*Math.PI*2;i.push(Math.cos(a),Math.sin(a),1,Math.cos(s),Math.sin(s),1)}n.addAttribute("position",new nK(i,3));var u=new ap({fog:!1});this.cone=new af(n,u),this.add(this.cone),this.update()}function lM(t){for(var e=function t(e){var n=[];e&&e.isBone&&n.push(e);for(var i=0;i<e.children.length;i++)n.push.apply(n,t(e.children[i]));return n}(t),n=new nJ,i=[],r=[],o=new nI(0,0,1),a=new nI(0,1,0),s=0;s<e.length;s++){var u=e[s];u.parent&&u.parent.isBone&&(i.push(0,0,0),i.push(0,0,0),r.push(o.r,o.g,o.b),r.push(a.r,a.g,a.b))}n.addAttribute("position",new nK(i,3)),n.addAttribute("color",new nK(r,3));var l=new ap({vertexColors:t8,depthTest:!1,depthWrite:!1,transparent:!0});af.call(this,n,l),this.root=t,this.bones=e,this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1}function l1(t,e,n){this.light=t,this.light.updateMatrixWorld(),this.color=n;var i=new su(e,4,2),r=new il({wireframe:!0,fog:!1});ih.call(this,i,r),this.matrix=this.light.matrixWorld,this.matrixAutoUpdate=!1,this.update()}function lR(t,e){nU.call(this),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=e;var n=new ap({fog:!1}),i=new nJ;i.addAttribute("position",new nF(new Float32Array(15),3)),this.line=new ad(i,n),this.add(this.line),this.update()}function l3(t,e,n){nU.call(this),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n;var i=new aP(e);i.rotateY(.5*Math.PI),this.material=new il({wireframe:!0,fog:!1}),void 0===this.color&&(this.material.vertexColors=t8);var r=i.getAttribute("position"),o=new Float32Array(3*r.count);i.addAttribute("color",new nF(o,3)),this.add(new ih(i,this.material)),this.update()}function lI(t,e,n,i){t=t||10,e=e||10,n=new nI(void 0!==n?n:4473924),i=new nI(void 0!==i?i:8947848);for(var r=e/2,o=t/e,a=t/2,s=[],u=[],l=0,h=0,c=-a;l<=e;l++,c+=o){s.push(-a,0,c,a,0,c),s.push(c,0,-a,c,0,a);var p=l===r?n:i;p.toArray(u,h),h+=3,p.toArray(u,h),h+=3,p.toArray(u,h),h+=3,p.toArray(u,h),h+=3}var d=new nJ;d.addAttribute("position",new nK(s,3)),d.addAttribute("color",new nK(u,3));var f=new ap({vertexColors:t8});af.call(this,d,f)}function lD(t,e,n,i,r,o){t=t||10,e=e||16,n=n||8,i=i||64,r=new nI(void 0!==r?r:4473924),o=new nI(void 0!==o?o:8947848);var a,s,u,l,h,c,p,d=[],f=[];for(l=0;l<=e;l++)a=Math.sin(u=l/e*(2*Math.PI))*t,s=Math.cos(u)*t,d.push(0,0,0),d.push(a,0,s),p=1&l?r:o,f.push(p.r,p.g,p.b),f.push(p.r,p.g,p.b);for(l=0;l<=n;l++)for(p=1&l?r:o,c=t-t/n*l,h=0;h<i;h++)a=Math.sin(u=h/i*(2*Math.PI))*c,s=Math.cos(u)*c,d.push(a,0,s),f.push(p.r,p.g,p.b),a=Math.sin(u=(h+1)/i*(2*Math.PI))*c,s=Math.cos(u)*c,d.push(a,0,s),f.push(p.r,p.g,p.b);var m=new nJ;m.addAttribute("position",new nK(d,3)),m.addAttribute("color",new nK(f,3));var g=new ap({vertexColors:t8});af.call(this,m,g)}function lN(t,e,n,i){this.object=t,this.size=void 0!==e?e:1;var r=0,o=this.object.geometry;o&&o.isGeometry?r=o.faces.length:console.warn("THREE.FaceNormalsHelper: only THREE.Geometry is supported. Use THREE.VertexNormalsHelper, instead.");var a=new nJ,s=new nK(2*r*3,3);a.addAttribute("position",s),af.call(this,a,new ap({color:void 0!==n?n:16776960,linewidth:void 0!==i?i:1})),this.matrixAutoUpdate=!1,this.update()}function lB(t,e,n){nU.call(this),this.light=t,this.light.updateMatrixWorld(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.color=n,void 0===e&&(e=1);var i=new nJ;i.addAttribute("position",new nK([-e,e,0,e,e,0,e,-e,0,-e,-e,0,-e,e,0],3));var r=new ap({fog:!1});this.lightPlane=new ad(i,r),this.add(this.lightPlane),(i=new nJ).addAttribute("position",new nK([0,0,0,0,0,1],3)),this.targetLine=new ad(i,r),this.add(this.targetLine),this.update()}function lO(t){var e=new nJ,n=new ap({color:16777215,vertexColors:t_}),i=[],r=[],o={},a=new nI(16755200),s=new nI(16711680),u=new nI(43775),l=new nI(16777215),h=new nI(3355443);function c(t,e,n){p(t,n),p(e,n)}function p(t,e){i.push(0,0,0),r.push(e.r,e.g,e.b),void 0===o[t]&&(o[t]=[]),o[t].push(i.length/3-1)}c("n1","n2",a),c("n2","n4",a),c("n4","n3",a),c("n3","n1",a),c("f1","f2",a),c("f2","f4",a),c("f4","f3",a),c("f3","f1",a),c("n1","f1",a),c("n2","f2",a),c("n3","f3",a),c("n4","f4",a),c("p","n1",s),c("p","n2",s),c("p","n3",s),c("p","n4",s),c("u1","u2",u),c("u2","u3",u),c("u3","u1",u),c("c","t",l),c("p","c",h),c("cn1","cn2",h),c("cn3","cn4",h),c("cf1","cf2",h),c("cf3","cf4",h),e.addAttribute("position",new nK(i,3)),e.addAttribute("color",new nK(r,3)),af.call(this,e,n),this.camera=t,this.camera.updateProjectionMatrix&&this.camera.updateProjectionMatrix(),this.matrix=t.matrixWorld,this.matrixAutoUpdate=!1,this.pointMap=o,this.update()}function lG(t,e){this.object=t,void 0===e&&(e=16776960);var n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new Float32Array(24),r=new nJ;r.setIndex(new nF(n,1)),r.addAttribute("position",new nF(i,3)),af.call(this,r,new ap({color:e})),this.matrixAutoUpdate=!1,this.update()}function lk(t,e){this.type="Box3Helper",this.box=t;var n=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new nJ;i.setIndex(new nF(n,1)),i.addAttribute("position",new nK([1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,-1,-1,1,-1,-1,-1,-1,1,-1,-1],3)),af.call(this,i,new ap({color:void 0!==e?e:16776960})),this.geometry.computeBoundingSphere()}function lV(t,e,n){this.type="PlaneHelper",this.plane=t,this.size=void 0===e?1:e;var i=void 0!==n?n:16776960,r=new nJ;r.addAttribute("position",new nK([1,-1,1,-1,1,1,-1,-1,1,1,1,1,-1,1,1,-1,-1,1,1,-1,1,1,1,1,0,0,1,0,0,0],3)),r.computeBoundingSphere(),ad.call(this,r,new ap({color:i}));var o=new nJ;o.addAttribute("position",new nK([1,1,1,-1,1,1,-1,-1,1,1,1,1,-1,-1,1,1,-1,1],3)),o.computeBoundingSphere(),this.add(new ih(o,new il({color:i,opacity:.2,transparent:!0,depthWrite:!1})))}function lz(e,n,i,r,o,a){nU.call(this),void 0===e&&(e=new t.Vector3(0,0,1)),void 0===n&&(n=new t.Vector3(0,0,0)),void 0===i&&(i=1),void 0===r&&(r=16776960),void 0===o&&(o=.2*i),void 0===a&&(a=.2*o),void 0===ln&&((ln=new nJ).addAttribute("position",new nK([0,0,0,0,1,0],3)),(li=new s$(0,.5,1,5,1)).translate(0,-.5,0)),this.position.copy(n),this.line=new ad(ln,new ap({color:r})),this.line.matrixAutoUpdate=!1,this.add(this.line),this.cone=new ih(li,new il({color:r})),this.cone.matrixAutoUpdate=!1,this.add(this.cone),this.setDirection(e),this.setLength(i,o,a)}function lU(t){var e=[0,0,0,t=t||1,0,0,0,0,0,0,t,0,0,0,0,0,0,t],n=new nJ;n.addAttribute("position",new nK(e,3)),n.addAttribute("color",new nK([1,0,0,1,.6,0,0,1,0,.6,1,0,0,0,1,0,.6,1],3));var i=new ap({vertexColors:t8});af.call(this,n,i)}function l2(t,e,n,i,r,o,a){return console.warn("THREE.Face4 has been removed. A THREE.Face3 will be created instead."),new nG(t,e,n,r,o,a)}Object.assign(lo.prototype,{load:function(t,e,n,i){var r=new s7(this.manager);r.setResponseType("arraybuffer"),r.setPath(this.path),r.load(t,function(t){var n=t.slice(0);lr.getContext().decodeAudioData(n,function(t){e(t)})},n,i)},setPath:function(t){return this.path=t,this}}),Object.assign(la.prototype,{update:(p=new ny,d=new ny,function(t){if(r!==this||o!==t.focus||a!==t.fov||s!==t.aspect*this.aspect||u!==t.near||l!==t.far||h!==t.zoom||c!==this.eyeSep){r=this,o=t.focus,a=t.fov,s=t.aspect*this.aspect,u=t.near,l=t.far,h=t.zoom;var e,n,i=t.projectionMatrix.clone(),f=(c=this.eyeSep/2)*u/o,m=u*Math.tan(nv.DEG2RAD*a*.5)/h;d.elements[12]=-c,p.elements[12]=c,e=-m*s+f,n=m*s+f,i.elements[0]=2*u/(n-e),i.elements[8]=(n+e)/(n-e),this.cameraL.projectionMatrix.copy(i),e=-m*s-f,n=m*s-f,i.elements[0]=2*u/(n-e),i.elements[8]=(n+e)/(n-e),this.cameraR.projectionMatrix.copy(i)}this.cameraL.matrixWorld.copy(t.matrixWorld).multiply(d),this.cameraR.matrixWorld.copy(t.matrixWorld).multiply(p)})}),ls.prototype=Object.create(nU.prototype),ls.prototype.constructor=ls,Object.assign(lu.prototype,{start:function(){this.startTime=("undefined"==typeof performance?Date:performance).now(),this.oldTime=this.startTime,this.elapsedTime=0,this.running=!0},stop:function(){this.getElapsedTime(),this.running=!1,this.autoStart=!1},getElapsedTime:function(){return this.getDelta(),this.elapsedTime},getDelta:function(){var t=0;if(this.autoStart&&!this.running)return this.start(),0;if(this.running){var e=("undefined"==typeof performance?Date:performance).now();t=(e-this.oldTime)/1e3,this.oldTime=e,this.elapsedTime+=t}return t}}),ll.prototype=Object.assign(Object.create(nU.prototype),{constructor:ll,getInput:function(){return this.gain},removeFilter:function(){return null!==this.filter&&(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination),this.gain.connect(this.context.destination),this.filter=null),this},getFilter:function(){return this.filter},setFilter:function(t){return null!==this.filter?(this.gain.disconnect(this.filter),this.filter.disconnect(this.context.destination)):this.gain.disconnect(this.context.destination),this.filter=t,this.gain.connect(this.filter),this.filter.connect(this.context.destination),this},getMasterVolume:function(){return this.gain.gain.value},setMasterVolume:function(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this},updateMatrixWorld:(f=new n8,m=new n_,g=new n8,v=new n8,$=new lu,function(t){nU.prototype.updateMatrixWorld.call(this,t);var e=this.context.listener,n=this.up;if(this.timeDelta=$.getDelta(),this.matrixWorld.decompose(f,m,g),v.set(0,0,-1).applyQuaternion(m),e.positionX){var i=this.context.currentTime+this.timeDelta;e.positionX.linearRampToValueAtTime(f.x,i),e.positionY.linearRampToValueAtTime(f.y,i),e.positionZ.linearRampToValueAtTime(f.z,i),e.forwardX.linearRampToValueAtTime(v.x,i),e.forwardY.linearRampToValueAtTime(v.y,i),e.forwardZ.linearRampToValueAtTime(v.z,i),e.upX.linearRampToValueAtTime(n.x,i),e.upY.linearRampToValueAtTime(n.y,i),e.upZ.linearRampToValueAtTime(n.z,i)}else e.setPosition(f.x,f.y,f.z),e.setOrientation(v.x,v.y,v.z,n.x,n.y,n.z)})}),lh.prototype=Object.assign(Object.create(nU.prototype),{constructor:lh,getOutput:function(){return this.gain},setNodeSource:function(t){return this.hasPlaybackControl=!1,this.sourceType="audioNode",this.source=t,this.connect(),this},setMediaElementSource:function(t){return this.hasPlaybackControl=!1,this.sourceType="mediaNode",this.source=this.context.createMediaElementSource(t),this.connect(),this},setBuffer:function(t){return this.buffer=t,this.sourceType="buffer",this.autoplay&&this.play(),this},play:function(){if(!0!==this.isPlaying){if(!1!==this.hasPlaybackControl){var t=this.context.createBufferSource();return t.buffer=this.buffer,t.loop=this.loop,t.onended=this.onEnded.bind(this),t.playbackRate.setValueAtTime(this.playbackRate,this.startTime),this.startTime=this.context.currentTime,t.start(this.startTime,this.offset),this.isPlaying=!0,this.source=t,this.connect()}console.warn("THREE.Audio: this Audio has no playback control.")}else console.warn("THREE.Audio: Audio is already playing.")},pause:function(){if(!1!==this.hasPlaybackControl)return!0===this.isPlaying&&(this.source.stop(),this.source.onended=null,this.offset+=(this.context.currentTime-this.startTime)*this.playbackRate,this.isPlaying=!1),this;console.warn("THREE.Audio: this Audio has no playback control.")},stop:function(){if(!1!==this.hasPlaybackControl)return this.source.stop(),this.source.onended=null,this.offset=0,this.isPlaying=!1,this;console.warn("THREE.Audio: this Audio has no playback control.")},connect:function(){if(this.filters.length>0){this.source.connect(this.filters[0]);for(var t=1,e=this.filters.length;t<e;t++)this.filters[t-1].connect(this.filters[t]);this.filters[this.filters.length-1].connect(this.getOutput())}else this.source.connect(this.getOutput());return this},disconnect:function(){if(this.filters.length>0){this.source.disconnect(this.filters[0]);for(var t=1,e=this.filters.length;t<e;t++)this.filters[t-1].disconnect(this.filters[t]);this.filters[this.filters.length-1].disconnect(this.getOutput())}else this.source.disconnect(this.getOutput());return this},getFilters:function(){return this.filters},setFilters:function(t){return t||(t=[]),!0===this.isPlaying?(this.disconnect(),this.filters=t,this.connect()):this.filters=t,this},getFilter:function(){return this.getFilters()[0]},setFilter:function(t){return this.setFilters(t?[t]:[])},setPlaybackRate:function(t){if(!1!==this.hasPlaybackControl)return this.playbackRate=t,!0===this.isPlaying&&this.source.playbackRate.setValueAtTime(this.playbackRate,this.context.currentTime),this;console.warn("THREE.Audio: this Audio has no playback control.")},getPlaybackRate:function(){return this.playbackRate},onEnded:function(){this.isPlaying=!1},getLoop:function(){return!1===this.hasPlaybackControl?(console.warn("THREE.Audio: this Audio has no playback control."),!1):this.loop},setLoop:function(t){if(!1!==this.hasPlaybackControl)return this.loop=t,!0===this.isPlaying&&(this.source.loop=this.loop),this;console.warn("THREE.Audio: this Audio has no playback control.")},getVolume:function(){return this.gain.gain.value},setVolume:function(t){return this.gain.gain.setTargetAtTime(t,this.context.currentTime,.01),this}}),lc.prototype=Object.assign(Object.create(lh.prototype),{constructor:lc,getOutput:function(){return this.panner},getRefDistance:function(){return this.panner.refDistance},setRefDistance:function(t){return this.panner.refDistance=t,this},getRolloffFactor:function(){return this.panner.rolloffFactor},setRolloffFactor:function(t){return this.panner.rolloffFactor=t,this},getDistanceModel:function(){return this.panner.distanceModel},setDistanceModel:function(t){return this.panner.distanceModel=t,this},getMaxDistance:function(){return this.panner.maxDistance},setMaxDistance:function(t){return this.panner.maxDistance=t,this},setDirectionalCone:function(t,e,n){return this.panner.coneInnerAngle=t,this.panner.coneOuterAngle=e,this.panner.coneOuterGain=n,this},updateMatrixWorld:(y=new n8,_=new n_,x=new n8,b=new n8,function(t){nU.prototype.updateMatrixWorld.call(this,t);var e=this.panner;if(this.matrixWorld.decompose(y,_,x),b.set(0,0,1).applyQuaternion(_),e.positionX){var n=this.context.currentTime+this.listener.timeDelta;e.positionX.linearRampToValueAtTime(y.x,n),e.positionY.linearRampToValueAtTime(y.y,n),e.positionZ.linearRampToValueAtTime(y.z,n),e.orientationX.linearRampToValueAtTime(b.x,n),e.orientationY.linearRampToValueAtTime(b.y,n),e.orientationZ.linearRampToValueAtTime(b.z,n)}else e.setPosition(y.x,y.y,y.z),e.setOrientation(b.x,b.y,b.z)})}),Object.assign(lp.prototype,{getFrequencyData:function(){return this.analyser.getByteFrequencyData(this.data),this.data},getAverageFrequency:function(){for(var t=0,e=this.getFrequencyData(),n=0;n<e.length;n++)t+=e[n];return t/e.length}}),Object.assign(ld.prototype,{accumulate:function(t,e){var n=this.buffer,i=this.valueSize,r=t*i+i,o=this.cumulativeWeight;if(0===o){for(var a=0;a!==i;++a)n[r+a]=n[a];o=e}else{var s=e/(o+=e);this._mixBufferRegion(n,r,0,s,i)}this.cumulativeWeight=o},apply:function(t){var e=this.valueSize,n=this.buffer,i=t*e+e,r=this.cumulativeWeight,o=this.binding;this.cumulativeWeight=0,r<1&&this._mixBufferRegion(n,i,3*e,1-r,e);for(var a=e,s=e+e;a!==s;++a)if(n[a]!==n[a+e]){o.setValue(n,i);break}},saveOriginalState:function(){var t=this.binding,e=this.buffer,n=this.valueSize,i=3*n;t.getValue(e,i);for(var r=n,o=i;r!==o;++r)e[r]=e[i+r%n];this.cumulativeWeight=0},restoreOriginalState:function(){var t=3*this.valueSize;this.binding.setValue(this.buffer,t)},_select:function(t,e,n,i,r){if(i>=.5)for(var o=0;o!==r;++o)t[e+o]=t[n+o]},_slerp:function(t,e,n,i){n_.slerpFlat(t,e,t,e,t,n,i)},_lerp:function(t,e,n,i,r){for(var o=1-i,a=0;a!==r;++a){var s=e+a;t[s]=t[s]*o+t[n+a]*i}}}),Object.assign(lf.prototype,{getValue:function(t,e){this.bind();var n=this._targetGroup.nCachedObjects_,i=this._bindings[n];void 0!==i&&i.getValue(t,e)},setValue:function(t,e){for(var n=this._bindings,i=this._targetGroup.nCachedObjects_,r=n.length;i!==r;++i)n[i].setValue(t,e)},bind:function(){for(var t=this._bindings,e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].bind()},unbind:function(){for(var t=this._bindings,e=this._targetGroup.nCachedObjects_,n=t.length;e!==n;++e)t[e].unbind()}}),Object.assign(lm,{Composite:lf,create:function(t,e,n){return t&&t.isAnimationObjectGroup?new lm.Composite(t,e,n):new lm(t,e,n)},sanitizeNodeName:(w=RegExp("[\\[\\]\\.:\\/]","g"),function(t){return t.replace(/\s/g,"_").replace(w,"")}),parseTrackName:(A="[^\\[\\]\\.:\\/]",T="[^"+"\\[\\]\\.:\\/".replace("\\.","")+"]",S=/((?:WC+[\/:])*)/.source.replace("WC",A),E=/(WCOD+)?/.source.replace("WCOD",T),P=/(?:\.(WC+)(?:\[(.+)\])?)?/.source.replace("WC",A),L=RegExp("^"+S+E+P+(C=/\.(WC+)(?:\[(.+)\])?/.source.replace("WC",A))+"$"),M=["material","materials","bones"],function(t){var e=L.exec(t);if(!e)throw Error("PropertyBinding: Cannot parse trackName: "+t);var n={nodeName:e[2],objectName:e[3],objectIndex:e[4],propertyName:e[5],propertyIndex:e[6]},i=n.nodeName&&n.nodeName.lastIndexOf(".");if(void 0!==i&&-1!==i){var r=n.nodeName.substring(i+1);-1!==M.indexOf(r)&&(n.nodeName=n.nodeName.substring(0,i),n.objectName=r)}if(null===n.propertyName||0===n.propertyName.length)throw Error("PropertyBinding: can not parse propertyName from trackName: "+t);return n}),findNode:function(t,e){if(!e||""===e||"root"===e||"."===e||-1===e||e===t.name||e===t.uuid)return t;if(t.skeleton){var n=t.skeleton.getBoneByName(e);if(void 0!==n)return n}if(t.children){var i=function(t){for(var n=0;n<t.length;n++){var r=t[n];if(r.name===e||r.uuid===e)return r;var o=i(r.children);if(o)return o}return null},r=i(t.children);if(r)return r}return null}}),Object.assign(lm.prototype,{_getValue_unavailable:function(){},_setValue_unavailable:function(){},BindingType:{Direct:0,EntireArray:1,ArrayElement:2,HasFromToArray:3},Versioning:{None:0,NeedsUpdate:1,MatrixWorldNeedsUpdate:2},GetterByBindingType:[function(t,e){t[e]=this.node[this.propertyName]},function(t,e){for(var n=this.resolvedProperty,i=0,r=n.length;i!==r;++i)t[e++]=n[i]},function(t,e){t[e]=this.resolvedProperty[this.propertyIndex]},function(t,e){this.resolvedProperty.toArray(t,e)}],SetterByBindingTypeAndVersioning:[[function(t,e){this.targetObject[this.propertyName]=t[e]},function(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.needsUpdate=!0},function(t,e){this.targetObject[this.propertyName]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}],[function(t,e){for(var n=this.resolvedProperty,i=0,r=n.length;i!==r;++i)n[i]=t[e++]},function(t,e){for(var n=this.resolvedProperty,i=0,r=n.length;i!==r;++i)n[i]=t[e++];this.targetObject.needsUpdate=!0},function(t,e){for(var n=this.resolvedProperty,i=0,r=n.length;i!==r;++i)n[i]=t[e++];this.targetObject.matrixWorldNeedsUpdate=!0}],[function(t,e){this.resolvedProperty[this.propertyIndex]=t[e]},function(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.needsUpdate=!0},function(t,e){this.resolvedProperty[this.propertyIndex]=t[e],this.targetObject.matrixWorldNeedsUpdate=!0}],[function(t,e){this.resolvedProperty.fromArray(t,e)},function(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.needsUpdate=!0},function(t,e){this.resolvedProperty.fromArray(t,e),this.targetObject.matrixWorldNeedsUpdate=!0}]],getValue:function(t,e){this.bind(),this.getValue(t,e)},setValue:function(t,e){this.bind(),this.setValue(t,e)},bind:function(){var t=this.node,e=this.parsedPath,n=e.objectName,i=e.propertyName,r=e.propertyIndex;if(t||(t=lm.findNode(this.rootNode,e.nodeName)||this.rootNode,this.node=t),this.getValue=this._getValue_unavailable,this.setValue=this._setValue_unavailable,t){if(n){var o=e.objectIndex;switch(n){case"materials":if(!t.material)return void console.error("THREE.PropertyBinding: Can not bind to material as node does not have a material.",this);if(!t.material.materials)return void console.error("THREE.PropertyBinding: Can not bind to material.materials as node.material does not have a materials array.",this);t=t.material.materials;break;case"bones":if(!t.skeleton)return void console.error("THREE.PropertyBinding: Can not bind to bones as node does not have a skeleton.",this);t=t.skeleton.bones;for(var a=0;a<t.length;a++)if(t[a].name===o){o=a;break}break;default:if(void 0===t[n])return void console.error("THREE.PropertyBinding: Can not bind to objectName of node undefined.",this);t=t[n]}if(void 0!==o){if(void 0===t[o])return void console.error("THREE.PropertyBinding: Trying to bind to objectIndex of objectName, but is undefined.",this,t);t=t[o]}}var s=t[i];if(void 0!==s){var u=this.Versioning.None;this.targetObject=t,void 0!==t.needsUpdate?u=this.Versioning.NeedsUpdate:void 0!==t.matrixWorldNeedsUpdate&&(u=this.Versioning.MatrixWorldNeedsUpdate);var l=this.BindingType.Direct;if(void 0!==r){if("morphTargetInfluences"===i){if(!t.geometry)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.",this);if(t.geometry.isBufferGeometry){if(!t.geometry.morphAttributes)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphAttributes.",this);for(a=0;a<this.node.geometry.morphAttributes.position.length;a++)if(t.geometry.morphAttributes.position[a].name===r){r=a;break}}else{if(!t.geometry.morphTargets)return void console.error("THREE.PropertyBinding: Can not bind to morphTargetInfluences because node does not have a geometry.morphTargets.",this);for(a=0;a<this.node.geometry.morphTargets.length;a++)if(t.geometry.morphTargets[a].name===r){r=a;break}}}l=this.BindingType.ArrayElement,this.resolvedProperty=s,this.propertyIndex=r}else void 0!==s.fromArray&&void 0!==s.toArray?(l=this.BindingType.HasFromToArray,this.resolvedProperty=s):Array.isArray(s)?(l=this.BindingType.EntireArray,this.resolvedProperty=s):this.propertyName=i;this.getValue=this.GetterByBindingType[l],this.setValue=this.SetterByBindingTypeAndVersioning[l][u]}else{var h=e.nodeName;console.error("THREE.PropertyBinding: Trying to update property for track: "+h+"."+i+" but it wasn't found.",t)}}else console.error("THREE.PropertyBinding: Trying to update node for track: "+this.path+" but it wasn't found.")},unbind:function(){this.node=null,this.getValue=this._getValue_unbound,this.setValue=this._setValue_unbound}}),Object.assign(lm.prototype,{_getValue_unbound:lm.prototype.getValue,_setValue_unbound:lm.prototype.setValue}),Object.assign(lg.prototype,{isAnimationObjectGroup:!0,add:function(){for(var t=this._objects,e=t.length,n=this.nCachedObjects_,i=this._indicesByUUID,r=this._paths,o=this._parsedPaths,a=this._bindings,s=a.length,u=void 0,l=0,h=arguments.length;l!==h;++l){var c=arguments[l],p=c.uuid,d=i[p];if(void 0===d){d=e++,i[p]=d,t.push(c);for(var f=0,m=s;f!==m;++f)a[f].push(new lm(c,r[f],o[f]))}else if(d<n){u=t[d];var g=--n,v=t[g];for(i[v.uuid]=d,t[d]=v,i[p]=g,t[g]=c,f=0,m=s;f!==m;++f){var $=a[f],y=$[g],_=$[d];$[d]=y,void 0===_&&(_=new lm(c,r[f],o[f])),$[g]=_}}else t[d]!==u&&console.error("THREE.AnimationObjectGroup: Different objects with the same UUID detected. Clean the caches or recreate your infrastructure when reloading scenes.")}this.nCachedObjects_=n},remove:function(){for(var t=this._objects,e=this.nCachedObjects_,n=this._indicesByUUID,i=this._bindings,r=i.length,o=0,a=arguments.length;o!==a;++o){var s=arguments[o],u=s.uuid,l=n[u];if(void 0!==l&&l>=e){var h=e++,c=t[h];n[c.uuid]=l,t[l]=c,n[u]=h,t[h]=s;for(var p=0,d=r;p!==d;++p){var f=i[p],m=f[h],g=f[l];f[l]=m,f[h]=g}}}this.nCachedObjects_=e},uncache:function(){for(var t=this._objects,e=t.length,n=this.nCachedObjects_,i=this._indicesByUUID,r=this._bindings,o=r.length,a=0,s=arguments.length;a!==s;++a){var u,l,h=arguments[a].uuid,c=i[h];if(void 0!==c){if(delete i[h],c<n){var p=--n,d=t[p],f=t[u=--e];i[d.uuid]=c,t[c]=d,i[f.uuid]=p,t[p]=f,t.pop();for(var m=0,g=o;m!==g;++m){var v=(l=r[m])[p],$=l[u];l[c]=v,l[p]=$,l.pop()}}else for(i[(f=t[u=--e]).uuid]=c,t[c]=f,t.pop(),m=0,g=o;m!==g;++m)(l=r[m])[c]=l[u],l.pop()}}this.nCachedObjects_=n},subscribe_:function(t,e){var n=this._bindingsIndicesByPath,i=n[t],r=this._bindings;if(void 0!==i)return r[i];var o=this._paths,a=this._parsedPaths,s=this._objects,u=s.length,l=this.nCachedObjects_,h=Array(u);i=r.length,n[t]=i,o.push(t),a.push(e),r.push(h);for(var c=l,p=s.length;c!==p;++c){var d=s[c];h[c]=new lm(d,t,e)}return h},unsubscribe_:function(t){var e=this._bindingsIndicesByPath,n=e[t];if(void 0!==n){var i=this._paths,r=this._parsedPaths,o=this._bindings,a=o.length-1,s=o[a];e[t[a]]=n,o[n]=s,o.pop(),r[n]=r[a],r.pop(),i[n]=i[a],i.pop()}}}),Object.assign(lv.prototype,{play:function(){return this._mixer._activateAction(this),this},stop:function(){return this._mixer._deactivateAction(this),this.reset()},reset:function(){return this.paused=!1,this.enabled=!0,this.time=0,this._loopCount=-1,this._startTime=null,this.stopFading().stopWarping()},isRunning:function(){return this.enabled&&!this.paused&&0!==this.timeScale&&null===this._startTime&&this._mixer._isActiveAction(this)},isScheduled:function(){return this._mixer._isActiveAction(this)},startAt:function(t){return this._startTime=t,this},setLoop:function(t,e){return this.loop=t,this.repetitions=e,this},setEffectiveWeight:function(t){return this.weight=t,this._effectiveWeight=this.enabled?t:0,this.stopFading()},getEffectiveWeight:function(){return this._effectiveWeight},fadeIn:function(t){return this._scheduleFading(t,0,1)},fadeOut:function(t){return this._scheduleFading(t,1,0)},crossFadeFrom:function(t,e,n){if(t.fadeOut(e),this.fadeIn(e),n){var i=this._clip.duration,r=t._clip.duration;t.warp(1,r/i,e),this.warp(i/r,1,e)}return this},crossFadeTo:function(t,e,n){return t.crossFadeFrom(this,e,n)},stopFading:function(){var t=this._weightInterpolant;return null!==t&&(this._weightInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this},setEffectiveTimeScale:function(t){return this.timeScale=t,this._effectiveTimeScale=this.paused?0:t,this.stopWarping()},getEffectiveTimeScale:function(){return this._effectiveTimeScale},setDuration:function(t){return this.timeScale=this._clip.duration/t,this.stopWarping()},syncWith:function(t){return this.time=t.time,this.timeScale=t.timeScale,this.stopWarping()},halt:function(t){return this.warp(this._effectiveTimeScale,0,t)},warp:function(t,e,n){var i=this._mixer,r=i.time,o=this._timeScaleInterpolant,a=this.timeScale;null===o&&(o=i._lendControlInterpolant(),this._timeScaleInterpolant=o);var s=o.parameterPositions,u=o.sampleValues;return s[0]=r,s[1]=r+n,u[0]=t/a,u[1]=e/a,this},stopWarping:function(){var t=this._timeScaleInterpolant;return null!==t&&(this._timeScaleInterpolant=null,this._mixer._takeBackControlInterpolant(t)),this},getMixer:function(){return this._mixer},getClip:function(){return this._clip},getRoot:function(){return this._localRoot||this._mixer._root},_update:function(t,e,n,i){if(this.enabled){var r=this._startTime;if(null!==r){var o=(t-r)*n;if(o<0||0===n)return;this._startTime=null,e=n*o}e*=this._updateTimeScale(t);var a=this._updateTime(e),s=this._updateWeight(t);if(s>0)for(var u=this._interpolants,l=this._propertyBindings,h=0,c=u.length;h!==c;++h)u[h].evaluate(a),l[h].accumulate(i,s)}else this._updateWeight(t)},_updateWeight:function(t){var e=0;if(this.enabled){e=this.weight;var n=this._weightInterpolant;if(null!==n){var i=n.evaluate(t)[0];e*=i,t>n.parameterPositions[1]&&(this.stopFading(),0===i&&(this.enabled=!1))}}return this._effectiveWeight=e,e},_updateTimeScale:function(t){var e=0;if(!this.paused){e=this.timeScale;var n=this._timeScaleInterpolant;null!==n&&(e*=n.evaluate(t)[0],t>n.parameterPositions[1]&&(this.stopWarping(),0===e?this.paused=!0:this.timeScale=e))}return this._effectiveTimeScale=e,e},_updateTime:function(t){var e=this.time+t,n=this._clip.duration,i=this.loop,r=this._loopCount,o=i===eZ;if(0===t)return -1===r?e:o&&1==(1&r)?n-e:e;if(i===eK){-1===r&&(this._loopCount=0,this._setEndings(!0,!0,!1));t:{if(e>=n)e=n;else{if(!(e<0))break t;e=0}this.clampWhenFinished?this.paused=!0:this.enabled=!1,this._mixer.dispatchEvent({type:"finished",action:this,direction:t<0?-1:1})}}else{if(-1===r&&(t>=0?(r=0,this._setEndings(!0,0===this.repetitions,o)):this._setEndings(0===this.repetitions,!0,o)),e>=n||e<0){var a=Math.floor(e/n);e-=n*a,r+=Math.abs(a);var s=this.repetitions-r;if(s<=0)this.clampWhenFinished?this.paused=!0:this.enabled=!1,e=t>0?n:0,this._mixer.dispatchEvent({type:"finished",action:this,direction:t>0?1:-1});else{if(1===s){var u=t<0;this._setEndings(u,!u,o)}else this._setEndings(!1,!1,o);this._loopCount=r,this._mixer.dispatchEvent({type:"loop",action:this,loopDelta:a})}}if(o&&1==(1&r))return this.time=e,n-e}return this.time=e,e},_setEndings:function(t,e,n){var i=this._interpolantSettings;n?(i.endingStart=nt,i.endingEnd=nt):(i.endingStart=t?this.zeroSlopeAtStart?nt:e9:ne,i.endingEnd=e?this.zeroSlopeAtEnd?nt:e9:ne)},_scheduleFading:function(t,e,n){var i=this._mixer,r=i.time,o=this._weightInterpolant;null===o&&(o=i._lendControlInterpolant(),this._weightInterpolant=o);var a=o.parameterPositions,s=o.sampleValues;return a[0]=r,s[0]=e,a[1]=r+t,s[1]=n,this}}),l$.prototype=Object.assign(Object.create(i.prototype),{constructor:l$,_bindAction:function(t,e){var n=t._localRoot||this._root,i=t._clip.tracks,r=i.length,o=t._propertyBindings,a=t._interpolants,s=n.uuid,u=this._bindingsByRootAndName,l=u[s];void 0===l&&(l={},u[s]=l);for(var h=0;h!==r;++h){var c=i[h],p=c.name,d=l[p];if(void 0!==d)o[h]=d;else{if(void 0!==(d=o[h])){null===d._cacheIndex&&(++d.referenceCount,this._addInactiveBinding(d,s,p));continue}var f=e&&e._propertyBindings[h].binding.parsedPath;++(d=new ld(lm.create(n,p,f),c.ValueTypeName,c.getValueSize())).referenceCount,this._addInactiveBinding(d,s,p),o[h]=d}a[h].resultBuffer=d.buffer}},_activateAction:function(t){if(!this._isActiveAction(t)){if(null===t._cacheIndex){var e=(t._localRoot||this._root).uuid,n=t._clip.uuid,i=this._actionsByClip[n];this._bindAction(t,i&&i.knownActions[0]),this._addInactiveAction(t,n,e)}for(var r=t._propertyBindings,o=0,a=r.length;o!==a;++o){var s=r[o];0==s.useCount++&&(this._lendBinding(s),s.saveOriginalState())}this._lendAction(t)}},_deactivateAction:function(t){if(this._isActiveAction(t)){for(var e=t._propertyBindings,n=0,i=e.length;n!==i;++n){var r=e[n];0==--r.useCount&&(r.restoreOriginalState(),this._takeBackBinding(r))}this._takeBackAction(t)}},_initMemoryManager:function(){this._actions=[],this._nActiveActions=0,this._actionsByClip={},this._bindings=[],this._nActiveBindings=0,this._bindingsByRootAndName={},this._controlInterpolants=[],this._nActiveControlInterpolants=0,this.stats={actions:{get total(){return this._actions.length},get inUse(){return this._nActiveActions}},bindings:{get total(){return this._bindings.length},get inUse(){return this._nActiveBindings}},controlInterpolants:{get total(){return this._controlInterpolants.length},get inUse(){return this._nActiveControlInterpolants}}}},_isActiveAction:function(t){var e=t._cacheIndex;return null!==e&&e<this._nActiveActions},_addInactiveAction:function(t,e,n){var i=this._actions,r=this._actionsByClip,o=r[e];if(void 0===o)o={knownActions:[t],actionByRoot:{}},t._byClipCacheIndex=0,r[e]=o;else{var a=o.knownActions;t._byClipCacheIndex=a.length,a.push(t)}t._cacheIndex=i.length,i.push(t),o.actionByRoot[n]=t},_removeInactiveAction:function(t){var e=this._actions,n=e[e.length-1],i=t._cacheIndex;n._cacheIndex=i,e[i]=n,e.pop(),t._cacheIndex=null;var r=t._clip.uuid,o=this._actionsByClip,a=o[r],s=a.knownActions,u=s[s.length-1],l=t._byClipCacheIndex;u._byClipCacheIndex=l,s[l]=u,s.pop(),t._byClipCacheIndex=null,delete a.actionByRoot[(t._localRoot||this._root).uuid],0===s.length&&delete o[r],this._removeInactiveBindingsForAction(t)},_removeInactiveBindingsForAction:function(t){for(var e=t._propertyBindings,n=0,i=e.length;n!==i;++n){var r=e[n];0==--r.referenceCount&&this._removeInactiveBinding(r)}},_lendAction:function(t){var e=this._actions,n=t._cacheIndex,i=this._nActiveActions++,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r},_takeBackAction:function(t){var e=this._actions,n=t._cacheIndex,i=--this._nActiveActions,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r},_addInactiveBinding:function(t,e,n){var i=this._bindingsByRootAndName,r=i[e],o=this._bindings;void 0===r&&(r={},i[e]=r),r[n]=t,t._cacheIndex=o.length,o.push(t)},_removeInactiveBinding:function(t){var e=this._bindings,n=t.binding,i=n.rootNode.uuid,r=n.path,o=this._bindingsByRootAndName,a=o[i],s=e[e.length-1],u=t._cacheIndex;s._cacheIndex=u,e[u]=s,e.pop(),delete a[r];t:{for(var l in a)break t;delete o[i]}},_lendBinding:function(t){var e=this._bindings,n=t._cacheIndex,i=this._nActiveBindings++,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r},_takeBackBinding:function(t){var e=this._bindings,n=t._cacheIndex,i=--this._nActiveBindings,r=e[i];t._cacheIndex=i,e[i]=t,r._cacheIndex=n,e[n]=r},_lendControlInterpolant:function(){var t=this._controlInterpolants,e=this._nActiveControlInterpolants++,n=t[e];return void 0===n&&((n=new sD(new Float32Array(2),new Float32Array(2),1,this._controlInterpolantsResultBuffer)).__cacheIndex=e,t[e]=n),n},_takeBackControlInterpolant:function(t){var e=this._controlInterpolants,n=t.__cacheIndex,i=--this._nActiveControlInterpolants,r=e[i];t.__cacheIndex=i,e[i]=t,r.__cacheIndex=n,e[n]=r},_controlInterpolantsResultBuffer:new Float32Array(1),clipAction:function(t,e){var n=e||this._root,i=n.uuid,r="string"==typeof t?sH.findByName(n,t):t,o=null!==r?r.uuid:t,a=this._actionsByClip[o],s=null;if(void 0!==a){var u=a.actionByRoot[i];if(void 0!==u)return u;s=a.knownActions[0],null===r&&(r=s._clip)}if(null===r)return null;var l=new lv(this,r,e);return this._bindAction(l,s),this._addInactiveAction(l,o,i),l},existingAction:function(t,e){var n=e||this._root,i=n.uuid,r="string"==typeof t?sH.findByName(n,t):t,o=r?r.uuid:t,a=this._actionsByClip[o];return void 0!==a&&a.actionByRoot[i]||null},stopAllAction:function(){var t=this._actions,e=this._nActiveActions,n=this._bindings,i=this._nActiveBindings;this._nActiveActions=0,this._nActiveBindings=0;for(var r=0;r!==e;++r)t[r].reset();for(r=0;r!==i;++r)n[r].useCount=0;return this},update:function(t){t*=this.timeScale;for(var e=this._actions,n=this._nActiveActions,i=this.time+=t,r=Math.sign(t),o=this._accuIndex^=1,a=0;a!==n;++a)e[a]._update(i,t,r,o);var s=this._bindings,u=this._nActiveBindings;for(a=0;a!==u;++a)s[a].apply(o);return this},getRoot:function(){return this._root},uncacheClip:function(t){var e=this._actions,n=t.uuid,i=this._actionsByClip,r=i[n];if(void 0!==r){for(var o=r.knownActions,a=0,s=o.length;a!==s;++a){var u=o[a];this._deactivateAction(u);var l=u._cacheIndex,h=e[e.length-1];u._cacheIndex=null,u._byClipCacheIndex=null,h._cacheIndex=l,e[l]=h,e.pop(),this._removeInactiveBindingsForAction(u)}delete i[n]}},uncacheRoot:function(t){var e=t.uuid,n=this._actionsByClip;for(var i in n){var r=n[i].actionByRoot[e];void 0!==r&&(this._deactivateAction(r),this._removeInactiveAction(r))}var o=this._bindingsByRootAndName[e];if(void 0!==o)for(var a in o){var s=o[a];s.restoreOriginalState(),this._removeInactiveBinding(s)}},uncacheAction:function(t,e){var n=this.existingAction(t,e);null!==n&&(this._deactivateAction(n),this._removeInactiveAction(n))}}),ly.prototype.clone=function(){return new ly(void 0===this.value.clone?this.value:this.value.clone())},l_.prototype=Object.assign(Object.create(nJ.prototype),{constructor:l_,isInstancedBufferGeometry:!0,copy:function(t){return nJ.prototype.copy.call(this,t),this.maxInstancedCount=t.maxInstancedCount,this},clone:function(){return(new this.constructor).copy(this)}}),l8.prototype=Object.assign(Object.create(ar.prototype),{constructor:l8,isInstancedInterleavedBuffer:!0,copy:function(t){return ar.prototype.copy.call(this,t),this.meshPerAttribute=t.meshPerAttribute,this}}),lx.prototype=Object.assign(Object.create(nF.prototype),{constructor:lx,isInstancedBufferAttribute:!0,copy:function(t){return nF.prototype.copy.call(this,t),this.meshPerAttribute=t.meshPerAttribute,this}}),Object.assign(lb.prototype,{linePrecision:1,set:function(t,e){this.ray.set(t,e)},setFromCamera:function(t,e){e&&e.isPerspectiveCamera?(this.ray.origin.setFromMatrixPosition(e.matrixWorld),this.ray.direction.set(t.x,t.y,.5).unproject(e).sub(this.ray.origin).normalize()):e&&e.isOrthographicCamera?(this.ray.origin.set(t.x,t.y,(e.near+e.far)/(e.near-e.far)).unproject(e),this.ray.direction.set(0,0,-1).transformDirection(e.matrixWorld)):console.error("THREE.Raycaster: Unsupported camera type.")},intersectObject:function(t,e,n){var i=n||[];return lA(t,this,i,e),i.sort(lw),i},intersectObjects:function(t,e,n){var i=n||[];if(!1===Array.isArray(t))return console.warn("THREE.Raycaster.intersectObjects: objects is not an Array."),i;for(var r=0,o=t.length;r<o;r++)lA(t[r],this,i,e);return i.sort(lw),i}}),Object.assign(lT.prototype,{set:function(t,e,n){return this.radius=t,this.phi=e,this.theta=n,this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.radius=t.radius,this.phi=t.phi,this.theta=t.theta,this},makeSafe:function(){return this.phi=Math.max(1e-6,Math.min(Math.PI-1e-6,this.phi)),this},setFromVector3:function(t){return this.setFromCartesianCoords(t.x,t.y,t.z)},setFromCartesianCoords:function(t,e,n){return this.radius=Math.sqrt(t*t+e*e+n*n),0===this.radius?(this.theta=0,this.phi=0):(this.theta=Math.atan2(t,n),this.phi=Math.acos(nv.clamp(e/this.radius,-1,1))),this}}),Object.assign(lS.prototype,{set:function(t,e,n){return this.radius=t,this.theta=e,this.y=n,this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.radius=t.radius,this.theta=t.theta,this.y=t.y,this},setFromVector3:function(t){return this.setFromCartesianCoords(t.x,t.y,t.z)},setFromCartesianCoords:function(t,e,n){return this.radius=Math.sqrt(t*t+n*n),this.theta=Math.atan2(t,n),this.y=e,this}}),Object.assign(lE.prototype,{set:function(t,e){return this.min.copy(t),this.max.copy(e),this},setFromPoints:function(t){this.makeEmpty();for(var e=0,n=t.length;e<n;e++)this.expandByPoint(t[e]);return this},setFromCenterAndSize:(R=new n$,function(t,e){var n=R.copy(e).multiplyScalar(.5);return this.min.copy(t).sub(n),this.max.copy(t).add(n),this}),clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.min.copy(t.min),this.max.copy(t.max),this},makeEmpty:function(){return this.min.x=this.min.y=1/0,this.max.x=this.max.y=-1/0,this},isEmpty:function(){return this.max.x<this.min.x||this.max.y<this.min.y},getCenter:function(t){return void 0===t&&(console.warn("THREE.Box2: .getCenter() target is now required"),t=new n$),this.isEmpty()?t.set(0,0):t.addVectors(this.min,this.max).multiplyScalar(.5)},getSize:function(t){return void 0===t&&(console.warn("THREE.Box2: .getSize() target is now required"),t=new n$),this.isEmpty()?t.set(0,0):t.subVectors(this.max,this.min)},expandByPoint:function(t){return this.min.min(t),this.max.max(t),this},expandByVector:function(t){return this.min.sub(t),this.max.add(t),this},expandByScalar:function(t){return this.min.addScalar(-t),this.max.addScalar(t),this},containsPoint:function(t){return!(t.x<this.min.x||t.x>this.max.x||t.y<this.min.y||t.y>this.max.y)},containsBox:function(t){return this.min.x<=t.min.x&&t.max.x<=this.max.x&&this.min.y<=t.min.y&&t.max.y<=this.max.y},getParameter:function(t,e){return void 0===e&&(console.warn("THREE.Box2: .getParameter() target is now required"),e=new n$),e.set((t.x-this.min.x)/(this.max.x-this.min.x),(t.y-this.min.y)/(this.max.y-this.min.y))},intersectsBox:function(t){return!(t.max.x<this.min.x||t.min.x>this.max.x||t.max.y<this.min.y||t.min.y>this.max.y)},clampPoint:function(t,e){return void 0===e&&(console.warn("THREE.Box2: .clampPoint() target is now required"),e=new n$),e.copy(t).clamp(this.min,this.max)},distanceToPoint:(I=new n$,function(t){return I.copy(t).clamp(this.min,this.max).sub(t).length()}),intersect:function(t){return this.min.max(t.min),this.max.min(t.max),this},union:function(t){return this.min.min(t.min),this.max.max(t.max),this},translate:function(t){return this.min.add(t),this.max.add(t),this},equals:function(t){return t.min.equals(this.min)&&t.max.equals(this.max)}}),Object.assign(l0.prototype,{set:function(t,e){return this.start.copy(t),this.end.copy(e),this},clone:function(){return(new this.constructor).copy(this)},copy:function(t){return this.start.copy(t.start),this.end.copy(t.end),this},getCenter:function(t){return void 0===t&&(console.warn("THREE.Line3: .getCenter() target is now required"),t=new n8),t.addVectors(this.start,this.end).multiplyScalar(.5)},delta:function(t){return void 0===t&&(console.warn("THREE.Line3: .delta() target is now required"),t=new n8),t.subVectors(this.end,this.start)},distanceSq:function(){return this.start.distanceToSquared(this.end)},distance:function(){return this.start.distanceTo(this.end)},at:function(t,e){return void 0===e&&(console.warn("THREE.Line3: .at() target is now required"),e=new n8),this.delta(e).multiplyScalar(t).add(this.start)},closestPointToPointParameter:(D=new n8,N=new n8,function(t,e){D.subVectors(t,this.start),N.subVectors(this.end,this.start);var n=N.dot(N),i=N.dot(D)/n;return e&&(i=nv.clamp(i,0,1)),i}),closestPointToPoint:function(t,e,n){var i=this.closestPointToPointParameter(t,e);return void 0===n&&(console.warn("THREE.Line3: .closestPointToPoint() target is now required"),n=new n8),this.delta(n).multiplyScalar(i).add(this.start)},applyMatrix4:function(t){return this.start.applyMatrix4(t),this.end.applyMatrix4(t),this},equals:function(t){return t.start.equals(this.start)&&t.end.equals(this.end)}}),lP.prototype=Object.create(nU.prototype),lP.prototype.constructor=lP,lP.prototype.isImmediateRenderObject=!0,lC.prototype=Object.create(af.prototype),lC.prototype.constructor=lC,lC.prototype.update=(B=new n8,O=new n8,G=new nx,function(){var t=["a","b","c"];this.object.updateMatrixWorld(!0),G.getNormalMatrix(this.object.matrixWorld);var e=this.object.matrixWorld,n=this.geometry.attributes.position,i=this.object.geometry;if(i&&i.isGeometry)for(var r=i.vertices,o=i.faces,a=0,s=0,u=o.length;s<u;s++)for(var l=o[s],h=0,c=l.vertexNormals.length;h<c;h++){var p=r[l[t[h]]],d=l.vertexNormals[h];B.copy(p).applyMatrix4(e),O.copy(d).applyMatrix3(G).normalize().multiplyScalar(this.size).add(B),n.setXYZ(a,B.x,B.y,B.z),a+=1,n.setXYZ(a,O.x,O.y,O.z),a+=1}else if(i&&i.isBufferGeometry){var f=i.attributes.position,m=i.attributes.normal;for(a=0,h=0,c=f.count;h<c;h++)B.set(f.getX(h),f.getY(h),f.getZ(h)).applyMatrix4(e),O.set(m.getX(h),m.getY(h),m.getZ(h)),O.applyMatrix3(G).normalize().multiplyScalar(this.size).add(B),n.setXYZ(a,B.x,B.y,B.z),a+=1,n.setXYZ(a,O.x,O.y,O.z),a+=1}n.needsUpdate=!0}),lL.prototype=Object.create(nU.prototype),lL.prototype.constructor=lL,lL.prototype.dispose=function(){this.cone.geometry.dispose(),this.cone.material.dispose()},lL.prototype.update=(k=new n8,V=new n8,function(){this.light.updateMatrixWorld();var t=this.light.distance?this.light.distance:1e3,e=t*Math.tan(this.light.angle);this.cone.scale.set(e,e,t),k.setFromMatrixPosition(this.light.matrixWorld),V.setFromMatrixPosition(this.light.target.matrixWorld),this.cone.lookAt(V.sub(k)),void 0!==this.color?this.cone.material.color.set(this.color):this.cone.material.color.copy(this.light.color)}),lM.prototype=Object.create(af.prototype),lM.prototype.constructor=lM,lM.prototype.updateMatrixWorld=(z=new n8,U=new ny,H=new ny,function(t){var e=this.bones,n=this.geometry,i=n.getAttribute("position");H.getInverse(this.root.matrixWorld);for(var r=0,o=0;r<e.length;r++){var a=e[r];a.parent&&a.parent.isBone&&(U.multiplyMatrices(H,a.matrixWorld),z.setFromMatrixPosition(U),i.setXYZ(o,z.x,z.y,z.z),U.multiplyMatrices(H,a.parent.matrixWorld),z.setFromMatrixPosition(U),i.setXYZ(o+1,z.x,z.y,z.z),o+=2)}n.getAttribute("position").needsUpdate=!0,nU.prototype.updateMatrixWorld.call(this,t)}),l1.prototype=Object.create(ih.prototype),l1.prototype.constructor=l1,l1.prototype.dispose=function(){this.geometry.dispose(),this.material.dispose()},l1.prototype.update=function(){void 0!==this.color?this.material.color.set(this.color):this.material.color.copy(this.light.color)},lR.prototype=Object.create(nU.prototype),lR.prototype.constructor=lR,lR.prototype.dispose=function(){this.children[0].geometry.dispose(),this.children[0].material.dispose()},lR.prototype.update=function(){var t=.5*this.light.width,e=.5*this.light.height,n=this.line.geometry.attributes.position,i=n.array;i[0]=t,i[1]=-e,i[2]=0,i[3]=t,i[4]=e,i[5]=0,i[6]=-t,i[7]=e,i[8]=0,i[9]=-t,i[10]=-e,i[11]=0,i[12]=t,i[13]=-e,i[14]=0,n.needsUpdate=!0,void 0!==this.color?this.line.material.color.set(this.color):this.line.material.color.copy(this.light.color)},l3.prototype=Object.create(nU.prototype),l3.prototype.constructor=l3,l3.prototype.dispose=function(){this.children[0].geometry.dispose(),this.children[0].material.dispose()},l3.prototype.update=(F=new n8,W=new nI,X=new nI,function(){var t=this.children[0];if(void 0!==this.color)this.material.color.set(this.color);else{var e=t.geometry.getAttribute("color");W.copy(this.light.color),X.copy(this.light.groundColor);for(var n=0,i=e.count;n<i;n++){var r=n<i/2?W:X;e.setXYZ(n,r.r,r.g,r.b)}e.needsUpdate=!0}t.lookAt(F.setFromMatrixPosition(this.light.matrixWorld).negate())}),lI.prototype=Object.create(af.prototype),lI.prototype.constructor=lI,lD.prototype=Object.create(af.prototype),lD.prototype.constructor=lD,lN.prototype=Object.create(af.prototype),lN.prototype.constructor=lN,lN.prototype.update=(Y=new n8,K=new n8,j=new nx,function(){this.object.updateMatrixWorld(!0),j.getNormalMatrix(this.object.matrixWorld);for(var t=this.object.matrixWorld,e=this.geometry.attributes.position,n=this.object.geometry,i=n.vertices,r=n.faces,o=0,a=0,s=r.length;a<s;a++){var u=r[a],l=u.normal;Y.copy(i[u.a]).add(i[u.b]).add(i[u.c]).divideScalar(3).applyMatrix4(t),K.copy(l).applyMatrix3(j).normalize().multiplyScalar(this.size).add(Y),e.setXYZ(o,Y.x,Y.y,Y.z),o+=1,e.setXYZ(o,K.x,K.y,K.z),o+=1}e.needsUpdate=!0}),lB.prototype=Object.create(nU.prototype),lB.prototype.constructor=lB,lB.prototype.dispose=function(){this.lightPlane.geometry.dispose(),this.lightPlane.material.dispose(),this.targetLine.geometry.dispose(),this.targetLine.material.dispose()},lB.prototype.update=(Z=new n8,q=new n8,Q=new n8,function(){Z.setFromMatrixPosition(this.light.matrixWorld),q.setFromMatrixPosition(this.light.target.matrixWorld),Q.subVectors(q,Z),this.lightPlane.lookAt(Q),void 0!==this.color?(this.lightPlane.material.color.set(this.color),this.targetLine.material.color.set(this.color)):(this.lightPlane.material.color.copy(this.light.color),this.targetLine.material.color.copy(this.light.color)),this.targetLine.lookAt(Q),this.targetLine.scale.z=Q.length()}),lO.prototype=Object.create(af.prototype),lO.prototype.constructor=lO,lO.prototype.update=function(){var t,e,n=new n8,i=new r$;function r(r,o,a,s){n.set(o,a,s).unproject(i);var u=e[r];if(void 0!==u)for(var l=t.getAttribute("position"),h=0,c=u.length;h<c;h++)l.setXYZ(u[h],n.x,n.y,n.z)}return function(){t=this.geometry,e=this.pointMap,i.projectionMatrix.copy(this.camera.projectionMatrix),r("c",0,0,-1),r("t",0,0,1),r("n1",-1,-1,-1),r("n2",1,-1,-1),r("n3",-1,1,-1),r("n4",1,1,-1),r("f1",-1,-1,1),r("f2",1,-1,1),r("f3",-1,1,1),r("f4",1,1,1),r("u1",.7,1.1,-1),r("u2",-.7,1.1,-1),r("u3",0,2,-1),r("cf1",-1,0,1),r("cf2",1,0,1),r("cf3",0,-1,1),r("cf4",0,1,1),r("cn1",-1,0,-1),r("cn2",1,0,-1),r("cn3",0,-1,-1),r("cn4",0,1,-1),t.getAttribute("position").needsUpdate=!0}}(),lG.prototype=Object.create(af.prototype),lG.prototype.constructor=lG,lG.prototype.update=(J=new nP,function(t){if(void 0!==t&&console.warn("THREE.BoxHelper: .update() has no longer arguments."),void 0!==this.object&&J.setFromObject(this.object),!J.isEmpty()){var e=J.min,n=J.max,i=this.geometry.attributes.position,r=i.array;r[0]=n.x,r[1]=n.y,r[2]=n.z,r[3]=e.x,r[4]=n.y,r[5]=n.z,r[6]=e.x,r[7]=e.y,r[8]=n.z,r[9]=n.x,r[10]=e.y,r[11]=n.z,r[12]=n.x,r[13]=n.y,r[14]=e.z,r[15]=e.x,r[16]=n.y,r[17]=e.z,r[18]=e.x,r[19]=e.y,r[20]=e.z,r[21]=n.x,r[22]=e.y,r[23]=e.z,i.needsUpdate=!0,this.geometry.computeBoundingSphere()}}),lG.prototype.setFromObject=function(t){return this.object=t,this.update(),this},lG.prototype.copy=function(t){return af.prototype.copy.call(this,t),this.object=t.object,this},lG.prototype.clone=function(){return(new this.constructor).copy(this)},lk.prototype=Object.create(af.prototype),lk.prototype.constructor=lk,lk.prototype.updateMatrixWorld=function(t){var e=this.box;e.isEmpty()||(e.getCenter(this.position),e.getSize(this.scale),this.scale.multiplyScalar(.5),nU.prototype.updateMatrixWorld.call(this,t))},lV.prototype=Object.create(ad.prototype),lV.prototype.constructor=lV,lV.prototype.updateMatrixWorld=function(t){var e=-this.plane.constant;1e-8>Math.abs(e)&&(e=1e-8),this.scale.set(.5*this.size,.5*this.size,e),this.children[0].material.side=e<0?tm:tf,this.lookAt(this.plane.normal),nU.prototype.updateMatrixWorld.call(this,t)},lz.prototype=Object.create(nU.prototype),lz.prototype.constructor=lz,lz.prototype.setDirection=(te=new n8,function(t){t.y>.99999?this.quaternion.set(0,0,0,1):t.y<-.99999?this.quaternion.set(1,0,0,0):(te.set(t.z,0,-t.x).normalize(),tt=Math.acos(t.y),this.quaternion.setFromAxisAngle(te,tt))}),lz.prototype.setLength=function(t,e,n){void 0===e&&(e=.2*t),void 0===n&&(n=.2*e),this.line.scale.set(1,Math.max(0,t-e),1),this.line.updateMatrix(),this.cone.scale.set(n,e,n),this.cone.position.y=t,this.cone.updateMatrix()},lz.prototype.setColor=function(t){this.line.material.color.copy(t),this.cone.material.color.copy(t)},lz.prototype.copy=function(t){return nU.prototype.copy.call(this,t,!1),this.line.copy(t.line),this.cone.copy(t.cone),this},lz.prototype.clone=function(){return(new this.constructor).copy(this)},lU.prototype=Object.create(af.prototype),lU.prototype.constructor=lU;var lH=0,lF=1;function l5(t){return console.warn("THREE.MeshFaceMaterial has been removed. Use an Array instead."),t}function l4(t){return void 0===t&&(t=[]),console.warn("THREE.MultiMaterial has been removed. Use an Array instead."),t.isMultiMaterial=!0,t.materials=t,t.clone=function(){return t.slice()},t}function l6(t,e){return console.warn("THREE.PointCloud has been renamed to THREE.Points."),new av(t,e)}function lW(t){return console.warn("THREE.Particle has been renamed to THREE.Sprite."),new as(t)}function l7(t,e){return console.warn("THREE.ParticleSystem has been renamed to THREE.Points."),new av(t,e)}function lX(t){return console.warn("THREE.PointCloudMaterial has been renamed to THREE.PointsMaterial."),new ag(t)}function lY(t){return console.warn("THREE.ParticleBasicMaterial has been renamed to THREE.PointsMaterial."),new ag(t)}function lK(t){return console.warn("THREE.ParticleSystemMaterial has been renamed to THREE.PointsMaterial."),new ag(t)}function lj(t,e,n){return console.warn("THREE.Vertex has been removed. Use THREE.Vector3 instead."),new n8(t,e,n)}function lZ(t,e){return console.warn("THREE.DynamicBufferAttribute has been removed. Use new THREE.BufferAttribute().setDynamic( true ) instead."),new nF(t,e).setDynamic(!0)}function lq(t,e){return console.warn("THREE.Int8Attribute has been removed. Use new THREE.Int8BufferAttribute() instead."),new n5(t,e)}function lQ(t,e){return console.warn("THREE.Uint8Attribute has been removed. Use new THREE.Uint8BufferAttribute() instead."),new n4(t,e)}function lJ(t,e){return console.warn("THREE.Uint8ClampedAttribute has been removed. Use new THREE.Uint8ClampedBufferAttribute() instead."),new n6(t,e)}function l9(t,e){return console.warn("THREE.Int16Attribute has been removed. Use new THREE.Int16BufferAttribute() instead."),new nW(t,e)}function ht(t,e){return console.warn("THREE.Uint16Attribute has been removed. Use new THREE.Uint16BufferAttribute() instead."),new n7(t,e)}function he(t,e){return console.warn("THREE.Int32Attribute has been removed. Use new THREE.Int32BufferAttribute() instead."),new nX(t,e)}function hn(t,e){return console.warn("THREE.Uint32Attribute has been removed. Use new THREE.Uint32BufferAttribute() instead."),new nY(t,e)}function hi(t,e){return console.warn("THREE.Float32Attribute has been removed. Use new THREE.Float32BufferAttribute() instead."),new nK(t,e)}function hr(t,e){return console.warn("THREE.Float64Attribute has been removed. Use new THREE.Float64BufferAttribute() instead."),new nj(t,e)}function ho(t){console.warn("THREE.ClosedSplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead."),uo.call(this,t),this.type="catmullrom",this.closed=!0}function ha(t){console.warn("THREE.SplineCurve3 has been deprecated. Use THREE.CatmullRomCurve3 instead."),uo.call(this,t),this.type="catmullrom"}function hs(t){console.warn("THREE.Spline has been removed. Use THREE.CatmullRomCurve3 instead."),uo.call(this,t),this.type="catmullrom"}function hu(t){return console.warn("THREE.AxisHelper has been renamed to THREE.AxesHelper."),new lU(t)}function hl(t,e){return console.warn("THREE.BoundingBoxHelper has been deprecated. Creating a THREE.BoxHelper instead."),new lG(t,e)}function hh(t,e){return console.warn("THREE.EdgesHelper has been removed. Use THREE.EdgesGeometry instead."),new af(new sg(t.geometry),new ap({color:void 0!==e?e:16777215}))}function hc(t,e){return console.warn("THREE.WireframeHelper has been removed. Use THREE.WireframeGeometry instead."),new af(new ax(t.geometry),new ap({color:void 0!==e?e:16777215}))}function hp(t){return console.warn("THREE.XHRLoader has been renamed to THREE.FileLoader."),new s7(t)}function hd(t){return console.warn("THREE.BinaryTextureLoader has been renamed to THREE.DataTextureLoader."),new sK(t)}sQ.create=function(t,e){return console.log("THREE.Curve.create() has been deprecated"),t.prototype=Object.create(sQ.prototype),t.prototype.constructor=t,t.prototype.getPoint=e,t},Object.assign(uv.prototype,{createPointsGeometry:function(t){console.warn("THREE.CurvePath: .createPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");var e=this.getPoints(t);return this.createGeometry(e)},createSpacedPointsGeometry:function(t){console.warn("THREE.CurvePath: .createSpacedPointsGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");var e=this.getSpacedPoints(t);return this.createGeometry(e)},createGeometry:function(t){console.warn("THREE.CurvePath: .createGeometry() has been removed. Use new THREE.Geometry().setFromPoints( points ) instead.");for(var e=new nH,n=0,i=t.length;n<i;n++){var r=t[n];e.vertices.push(new n8(r.x,r.y,r.z||0))}return e}}),Object.assign(u$.prototype,{fromPoints:function(t){console.warn("THREE.Path: .fromPoints() has been renamed to .setFromPoints()."),this.setFromPoints(t)}}),ho.prototype=Object.create(uo.prototype),ha.prototype=Object.create(uo.prototype),hs.prototype=Object.create(uo.prototype),Object.assign(hs.prototype,{initFromArray:function(){console.error("THREE.Spline: .initFromArray() has been removed.")},getControlPointsArray:function(){console.error("THREE.Spline: .getControlPointsArray() has been removed.")},reparametrizeByArcLength:function(){console.error("THREE.Spline: .reparametrizeByArcLength() has been removed.")}}),lI.prototype.setColors=function(){console.error("THREE.GridHelper: setColors() has been deprecated, pass them in the constructor instead.")},lM.prototype.update=function(){console.error("THREE.SkeletonHelper: update() no longer needs to be called.")},Object.assign(uR.prototype,{extractUrlBase:function(t){return console.warn("THREE.Loader: .extractUrlBase() has been deprecated. Use THREE.LoaderUtils.extractUrlBase() instead."),uL.extractUrlBase(t)}}),Object.assign(u3.prototype,{setTexturePath:function(t){return console.warn("THREE.JSONLoader: .setTexturePath() has been renamed to .setResourcePath()."),this.setResourcePath(t)}}),Object.assign(uI.prototype,{setTexturePath:function(t){return console.warn("THREE.ObjectLoader: .setTexturePath() has been renamed to .setResourcePath()."),this.setResourcePath(t)}}),Object.assign(lE.prototype,{center:function(t){return console.warn("THREE.Box2: .center() has been renamed to .getCenter()."),this.getCenter(t)},empty:function(){return console.warn("THREE.Box2: .empty() has been renamed to .isEmpty()."),this.isEmpty()},isIntersectionBox:function(t){return console.warn("THREE.Box2: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},size:function(t){return console.warn("THREE.Box2: .size() has been renamed to .getSize()."),this.getSize(t)}}),Object.assign(nP.prototype,{center:function(t){return console.warn("THREE.Box3: .center() has been renamed to .getCenter()."),this.getCenter(t)},empty:function(){return console.warn("THREE.Box3: .empty() has been renamed to .isEmpty()."),this.isEmpty()},isIntersectionBox:function(t){return console.warn("THREE.Box3: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},isIntersectionSphere:function(t){return console.warn("THREE.Box3: .isIntersectionSphere() has been renamed to .intersectsSphere()."),this.intersectsSphere(t)},size:function(t){return console.warn("THREE.Box3: .size() has been renamed to .getSize()."),this.getSize(t)}}),l0.prototype.center=function(t){return console.warn("THREE.Line3: .center() has been renamed to .getCenter()."),this.getCenter(t)},Object.assign(nv,{random16:function(){return console.warn("THREE.Math: .random16() has been deprecated. Use Math.random() instead."),Math.random()},nearestPowerOfTwo:function(t){return console.warn("THREE.Math: .nearestPowerOfTwo() has been renamed to .floorPowerOfTwo()."),nv.floorPowerOfTwo(t)},nextPowerOfTwo:function(t){return console.warn("THREE.Math: .nextPowerOfTwo() has been renamed to .ceilPowerOfTwo()."),nv.ceilPowerOfTwo(t)}}),Object.assign(nx.prototype,{flattenToArrayOffset:function(t,e){return console.warn("THREE.Matrix3: .flattenToArrayOffset() has been deprecated. Use .toArray() instead."),this.toArray(t,e)},multiplyVector3:function(t){return console.warn("THREE.Matrix3: .multiplyVector3() has been removed. Use vector.applyMatrix3( matrix ) instead."),t.applyMatrix3(this)},multiplyVector3Array:function(){console.error("THREE.Matrix3: .multiplyVector3Array() has been removed.")},applyToBuffer:function(t){return console.warn("THREE.Matrix3: .applyToBuffer() has been removed. Use matrix.applyToBufferAttribute( attribute ) instead."),this.applyToBufferAttribute(t)},applyToVector3Array:function(){console.error("THREE.Matrix3: .applyToVector3Array() has been removed.")}}),Object.assign(ny.prototype,{extractPosition:function(t){return console.warn("THREE.Matrix4: .extractPosition() has been renamed to .copyPosition()."),this.copyPosition(t)},flattenToArrayOffset:function(t,e){return console.warn("THREE.Matrix4: .flattenToArrayOffset() has been deprecated. Use .toArray() instead."),this.toArray(t,e)},getPosition:function(){return void 0===tn&&(tn=new n8),console.warn("THREE.Matrix4: .getPosition() has been removed. Use Vector3.setFromMatrixPosition( matrix ) instead."),tn.setFromMatrixColumn(this,3)},setRotationFromQuaternion:function(t){return console.warn("THREE.Matrix4: .setRotationFromQuaternion() has been renamed to .makeRotationFromQuaternion()."),this.makeRotationFromQuaternion(t)},multiplyToArray:function(){console.warn("THREE.Matrix4: .multiplyToArray() has been removed.")},multiplyVector3:function(t){return console.warn("THREE.Matrix4: .multiplyVector3() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},multiplyVector4:function(t){return console.warn("THREE.Matrix4: .multiplyVector4() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},multiplyVector3Array:function(){console.error("THREE.Matrix4: .multiplyVector3Array() has been removed.")},rotateAxis:function(t){console.warn("THREE.Matrix4: .rotateAxis() has been removed. Use Vector3.transformDirection( matrix ) instead."),t.transformDirection(this)},crossVector:function(t){return console.warn("THREE.Matrix4: .crossVector() has been removed. Use vector.applyMatrix4( matrix ) instead."),t.applyMatrix4(this)},translate:function(){console.error("THREE.Matrix4: .translate() has been removed.")},rotateX:function(){console.error("THREE.Matrix4: .rotateX() has been removed.")},rotateY:function(){console.error("THREE.Matrix4: .rotateY() has been removed.")},rotateZ:function(){console.error("THREE.Matrix4: .rotateZ() has been removed.")},rotateByAxis:function(){console.error("THREE.Matrix4: .rotateByAxis() has been removed.")},applyToBuffer:function(t){return console.warn("THREE.Matrix4: .applyToBuffer() has been removed. Use matrix.applyToBufferAttribute( attribute ) instead."),this.applyToBufferAttribute(t)},applyToVector3Array:function(){console.error("THREE.Matrix4: .applyToVector3Array() has been removed.")},makeFrustum:function(t,e,n,i,r,o){return console.warn("THREE.Matrix4: .makeFrustum() has been removed. Use .makePerspective( left, right, top, bottom, near, far ) instead."),this.makePerspective(t,e,i,n,r,o)}}),nL.prototype.isIntersectionLine=function(t){return console.warn("THREE.Plane: .isIntersectionLine() has been renamed to .intersectsLine()."),this.intersectsLine(t)},n_.prototype.multiplyVector3=function(t){return console.warn("THREE.Quaternion: .multiplyVector3() has been removed. Use is now vector.applyQuaternion( quaternion ) instead."),t.applyQuaternion(this)},Object.assign(is.prototype,{isIntersectionBox:function(t){return console.warn("THREE.Ray: .isIntersectionBox() has been renamed to .intersectsBox()."),this.intersectsBox(t)},isIntersectionPlane:function(t){return console.warn("THREE.Ray: .isIntersectionPlane() has been renamed to .intersectsPlane()."),this.intersectsPlane(t)},isIntersectionSphere:function(t){return console.warn("THREE.Ray: .isIntersectionSphere() has been renamed to .intersectsSphere()."),this.intersectsSphere(t)}}),Object.assign(iu.prototype,{area:function(){return console.warn("THREE.Triangle: .area() has been renamed to .getArea()."),this.getArea()},barycoordFromPoint:function(t,e){return console.warn("THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord()."),this.getBarycoord(t,e)},midpoint:function(t){return console.warn("THREE.Triangle: .midpoint() has been renamed to .getMidpoint()."),this.getMidpoint(t)},normal:function(t){return console.warn("THREE.Triangle: .normal() has been renamed to .getNormal()."),this.getNormal(t)},plane:function(t){return console.warn("THREE.Triangle: .plane() has been renamed to .getPlane()."),this.getPlane(t)}}),Object.assign(iu,{barycoordFromPoint:function(t,e,n,i,r){return console.warn("THREE.Triangle: .barycoordFromPoint() has been renamed to .getBarycoord()."),iu.getBarycoord(t,e,n,i,r)},normal:function(t,e,n,i){return console.warn("THREE.Triangle: .normal() has been renamed to .getNormal()."),iu.getNormal(t,e,n,i)}}),Object.assign(uy.prototype,{extractAllPoints:function(t){return console.warn("THREE.Shape: .extractAllPoints() has been removed. Use .extractPoints() instead."),this.extractPoints(t)},extrude:function(t){return console.warn("THREE.Shape: .extrude() has been removed. Use ExtrudeGeometry() instead."),new se(this,t)},makeGeometry:function(t){return console.warn("THREE.Shape: .makeGeometry() has been removed. Use ShapeGeometry() instead."),new sd(this,t)}}),Object.assign(n$.prototype,{fromAttribute:function(t,e,n){return console.warn("THREE.Vector2: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},distanceToManhattan:function(t){return console.warn("THREE.Vector2: .distanceToManhattan() has been renamed to .manhattanDistanceTo()."),this.manhattanDistanceTo(t)},lengthManhattan:function(){return console.warn("THREE.Vector2: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()}}),Object.assign(n8.prototype,{setEulerFromRotationMatrix:function(){console.error("THREE.Vector3: .setEulerFromRotationMatrix() has been removed. Use Euler.setFromRotationMatrix() instead.")},setEulerFromQuaternion:function(){console.error("THREE.Vector3: .setEulerFromQuaternion() has been removed. Use Euler.setFromQuaternion() instead.")},getPositionFromMatrix:function(t){return console.warn("THREE.Vector3: .getPositionFromMatrix() has been renamed to .setFromMatrixPosition()."),this.setFromMatrixPosition(t)},getScaleFromMatrix:function(t){return console.warn("THREE.Vector3: .getScaleFromMatrix() has been renamed to .setFromMatrixScale()."),this.setFromMatrixScale(t)},getColumnFromMatrix:function(t,e){return console.warn("THREE.Vector3: .getColumnFromMatrix() has been renamed to .setFromMatrixColumn()."),this.setFromMatrixColumn(e,t)},applyProjection:function(t){return console.warn("THREE.Vector3: .applyProjection() has been removed. Use .applyMatrix4( m ) instead."),this.applyMatrix4(t)},fromAttribute:function(t,e,n){return console.warn("THREE.Vector3: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},distanceToManhattan:function(t){return console.warn("THREE.Vector3: .distanceToManhattan() has been renamed to .manhattanDistanceTo()."),this.manhattanDistanceTo(t)},lengthManhattan:function(){return console.warn("THREE.Vector3: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()}}),Object.assign(nT.prototype,{fromAttribute:function(t,e,n){return console.warn("THREE.Vector4: .fromAttribute() has been renamed to .fromBufferAttribute()."),this.fromBufferAttribute(t,e,n)},lengthManhattan:function(){return console.warn("THREE.Vector4: .lengthManhattan() has been renamed to .manhattanLength()."),this.manhattanLength()}}),Object.assign(nH.prototype,{computeTangents:function(){console.error("THREE.Geometry: .computeTangents() has been removed.")},computeLineDistances:function(){console.error("THREE.Geometry: .computeLineDistances() has been removed. Use THREE.Line.computeLineDistances() instead.")}}),Object.assign(nU.prototype,{getChildByName:function(t){return console.warn("THREE.Object3D: .getChildByName() has been renamed to .getObjectByName()."),this.getObjectByName(t)},renderDepth:function(){console.warn("THREE.Object3D: .renderDepth has been removed. Use .renderOrder, instead.")},translate:function(t,e){return console.warn("THREE.Object3D: .translate() has been removed. Use .translateOnAxis( axis, distance ) instead."),this.translateOnAxis(e,t)},getWorldRotation:function(){console.error("THREE.Object3D: .getWorldRotation() has been removed. Use THREE.Object3D.getWorldQuaternion( target ) instead.")}}),Object.defineProperties(nU.prototype,{eulerOrder:{get:function(){return console.warn("THREE.Object3D: .eulerOrder is now .rotation.order."),this.rotation.order},set:function(t){console.warn("THREE.Object3D: .eulerOrder is now .rotation.order."),this.rotation.order=t}},useQuaternion:{get:function(){console.warn("THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.")},set:function(){console.warn("THREE.Object3D: .useQuaternion has been removed. The library now uses quaternions by default.")}}}),Object.defineProperties(au.prototype,{objects:{get:function(){return console.warn("THREE.LOD: .objects has been renamed to .levels."),this.levels}}}),Object.defineProperty(al.prototype,"useVertexTexture",{get:function(){console.warn("THREE.Skeleton: useVertexTexture has been removed.")},set:function(){console.warn("THREE.Skeleton: useVertexTexture has been removed.")}}),Object.defineProperty(sQ.prototype,"__arcLengthDivisions",{get:function(){return console.warn("THREE.Curve: .__arcLengthDivisions is now .arcLengthDivisions."),this.arcLengthDivisions},set:function(t){console.warn("THREE.Curve: .__arcLengthDivisions is now .arcLengthDivisions."),this.arcLengthDivisions=t}}),ry.prototype.setLens=function(t,e){console.warn("THREE.PerspectiveCamera.setLens is deprecated. Use .setFocalLength and .filmGauge for a photographic setup."),void 0!==e&&(this.filmGauge=e),this.setFocalLength(t)},Object.defineProperties(u_.prototype,{onlyShadow:{set:function(){console.warn("THREE.Light: .onlyShadow has been removed.")}},shadowCameraFov:{set:function(t){console.warn("THREE.Light: .shadowCameraFov is now .shadow.camera.fov."),this.shadow.camera.fov=t}},shadowCameraLeft:{set:function(t){console.warn("THREE.Light: .shadowCameraLeft is now .shadow.camera.left."),this.shadow.camera.left=t}},shadowCameraRight:{set:function(t){console.warn("THREE.Light: .shadowCameraRight is now .shadow.camera.right."),this.shadow.camera.right=t}},shadowCameraTop:{set:function(t){console.warn("THREE.Light: .shadowCameraTop is now .shadow.camera.top."),this.shadow.camera.top=t}},shadowCameraBottom:{set:function(t){console.warn("THREE.Light: .shadowCameraBottom is now .shadow.camera.bottom."),this.shadow.camera.bottom=t}},shadowCameraNear:{set:function(t){console.warn("THREE.Light: .shadowCameraNear is now .shadow.camera.near."),this.shadow.camera.near=t}},shadowCameraFar:{set:function(t){console.warn("THREE.Light: .shadowCameraFar is now .shadow.camera.far."),this.shadow.camera.far=t}},shadowCameraVisible:{set:function(){console.warn("THREE.Light: .shadowCameraVisible has been removed. Use new THREE.CameraHelper( light.shadow.camera ) instead.")}},shadowBias:{set:function(t){console.warn("THREE.Light: .shadowBias is now .shadow.bias."),this.shadow.bias=t}},shadowDarkness:{set:function(){console.warn("THREE.Light: .shadowDarkness has been removed.")}},shadowMapWidth:{set:function(t){console.warn("THREE.Light: .shadowMapWidth is now .shadow.mapSize.width."),this.shadow.mapSize.width=t}},shadowMapHeight:{set:function(t){console.warn("THREE.Light: .shadowMapHeight is now .shadow.mapSize.height."),this.shadow.mapSize.height=t}}}),Object.defineProperties(nF.prototype,{length:{get:function(){return console.warn("THREE.BufferAttribute: .length has been deprecated. Use .count instead."),this.array.length}},copyIndicesArray:function(){console.error("THREE.BufferAttribute: .copyIndicesArray() has been removed.")}}),Object.assign(nJ.prototype,{addIndex:function(t){console.warn("THREE.BufferGeometry: .addIndex() has been renamed to .setIndex()."),this.setIndex(t)},addDrawCall:function(t,e,n){void 0!==n&&console.warn("THREE.BufferGeometry: .addDrawCall() no longer supports indexOffset."),console.warn("THREE.BufferGeometry: .addDrawCall() is now .addGroup()."),this.addGroup(t,e)},clearDrawCalls:function(){console.warn("THREE.BufferGeometry: .clearDrawCalls() is now .clearGroups()."),this.clearGroups()},computeTangents:function(){console.warn("THREE.BufferGeometry: .computeTangents() has been removed.")},computeOffsets:function(){console.warn("THREE.BufferGeometry: .computeOffsets() has been removed.")}}),Object.defineProperties(nJ.prototype,{drawcalls:{get:function(){return console.error("THREE.BufferGeometry: .drawcalls has been renamed to .groups."),this.groups}},offsets:{get:function(){return console.warn("THREE.BufferGeometry: .offsets has been renamed to .groups."),this.groups}}}),Object.assign(sn.prototype,{getArrays:function(){console.error("THREE.ExtrudeBufferGeometry: .getArrays() has been removed.")},addShapeList:function(){console.error("THREE.ExtrudeBufferGeometry: .addShapeList() has been removed.")},addShape:function(){console.error("THREE.ExtrudeBufferGeometry: .addShape() has been removed.")}}),Object.defineProperties(ly.prototype,{dynamic:{set:function(){console.warn("THREE.Uniform: .dynamic has been removed. Use object.onBeforeRender() instead.")}},onUpdate:{value:function(){return console.warn("THREE.Uniform: .onUpdate() has been removed. Use object.onBeforeRender() instead."),this}}}),Object.defineProperties(io.prototype,{wrapAround:{get:function(){console.warn("THREE.Material: .wrapAround has been removed.")},set:function(){console.warn("THREE.Material: .wrapAround has been removed.")}},overdraw:{get:function(){console.warn("THREE.Material: .overdraw has been removed.")},set:function(){console.warn("THREE.Material: .overdraw has been removed.")}},wrapRGB:{get:function(){return console.warn("THREE.Material: .wrapRGB has been removed."),new nI}},shading:{get:function(){console.error("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead.")},set:function(t){console.warn("THREE."+this.type+": .shading has been removed. Use the boolean .flatShading instead."),this.flatShading=t===tv}}}),Object.defineProperties(sE.prototype,{metal:{get:function(){return console.warn("THREE.MeshPhongMaterial: .metal has been removed. Use THREE.MeshStandardMaterial instead."),!1},set:function(){console.warn("THREE.MeshPhongMaterial: .metal has been removed. Use THREE.MeshStandardMaterial instead")}}}),Object.defineProperties(ia.prototype,{derivatives:{get:function(){return console.warn("THREE.ShaderMaterial: .derivatives has been moved to .extensions.derivatives."),this.extensions.derivatives},set:function(t){console.warn("THREE. ShaderMaterial: .derivatives has been moved to .extensions.derivatives."),this.extensions.derivatives=t}}}),Object.assign(at.prototype,{clearTarget:function(t,e,n,i){console.warn("THREE.WebGLRenderer: .clearTarget() has been deprecated. Use .setRenderTarget() and .clear() instead."),this.setRenderTarget(t),this.clear(e,n,i)},animate:function(t){console.warn("THREE.WebGLRenderer: .animate() is now .setAnimationLoop()."),this.setAnimationLoop(t)},getCurrentRenderTarget:function(){return console.warn("THREE.WebGLRenderer: .getCurrentRenderTarget() is now .getRenderTarget()."),this.getRenderTarget()},getMaxAnisotropy:function(){return console.warn("THREE.WebGLRenderer: .getMaxAnisotropy() is now .capabilities.getMaxAnisotropy()."),this.capabilities.getMaxAnisotropy()},getPrecision:function(){return console.warn("THREE.WebGLRenderer: .getPrecision() is now .capabilities.precision."),this.capabilities.precision},resetGLState:function(){return console.warn("THREE.WebGLRenderer: .resetGLState() is now .state.reset()."),this.state.reset()},supportsFloatTextures:function(){return console.warn("THREE.WebGLRenderer: .supportsFloatTextures() is now .extensions.get( 'OES_texture_float' )."),this.extensions.get("OES_texture_float")},supportsHalfFloatTextures:function(){return console.warn("THREE.WebGLRenderer: .supportsHalfFloatTextures() is now .extensions.get( 'OES_texture_half_float' )."),this.extensions.get("OES_texture_half_float")},supportsStandardDerivatives:function(){return console.warn("THREE.WebGLRenderer: .supportsStandardDerivatives() is now .extensions.get( 'OES_standard_derivatives' )."),this.extensions.get("OES_standard_derivatives")},supportsCompressedTextureS3TC:function(){return console.warn("THREE.WebGLRenderer: .supportsCompressedTextureS3TC() is now .extensions.get( 'WEBGL_compressed_texture_s3tc' )."),this.extensions.get("WEBGL_compressed_texture_s3tc")},supportsCompressedTexturePVRTC:function(){return console.warn("THREE.WebGLRenderer: .supportsCompressedTexturePVRTC() is now .extensions.get( 'WEBGL_compressed_texture_pvrtc' )."),this.extensions.get("WEBGL_compressed_texture_pvrtc")},supportsBlendMinMax:function(){return console.warn("THREE.WebGLRenderer: .supportsBlendMinMax() is now .extensions.get( 'EXT_blend_minmax' )."),this.extensions.get("EXT_blend_minmax")},supportsVertexTextures:function(){return console.warn("THREE.WebGLRenderer: .supportsVertexTextures() is now .capabilities.vertexTextures."),this.capabilities.vertexTextures},supportsInstancedArrays:function(){return console.warn("THREE.WebGLRenderer: .supportsInstancedArrays() is now .extensions.get( 'ANGLE_instanced_arrays' )."),this.extensions.get("ANGLE_instanced_arrays")},enableScissorTest:function(t){console.warn("THREE.WebGLRenderer: .enableScissorTest() is now .setScissorTest()."),this.setScissorTest(t)},initMaterial:function(){console.warn("THREE.WebGLRenderer: .initMaterial() has been removed.")},addPrePlugin:function(){console.warn("THREE.WebGLRenderer: .addPrePlugin() has been removed.")},addPostPlugin:function(){console.warn("THREE.WebGLRenderer: .addPostPlugin() has been removed.")},updateShadowMap:function(){console.warn("THREE.WebGLRenderer: .updateShadowMap() has been removed.")},setFaceCulling:function(){console.warn("THREE.WebGLRenderer: .setFaceCulling() has been removed.")}}),Object.defineProperties(at.prototype,{shadowMapEnabled:{get:function(){return this.shadowMap.enabled},set:function(t){console.warn("THREE.WebGLRenderer: .shadowMapEnabled is now .shadowMap.enabled."),this.shadowMap.enabled=t}},shadowMapType:{get:function(){return this.shadowMap.type},set:function(t){console.warn("THREE.WebGLRenderer: .shadowMapType is now .shadowMap.type."),this.shadowMap.type=t}},shadowMapCullFace:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMapCullFace has been removed. Set Material.shadowSide instead.")}}}),Object.defineProperties(rf.prototype,{cullFace:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.cullFace has been removed. Set Material.shadowSide instead.")}},renderReverseSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderReverseSided has been removed. Set Material.shadowSide instead.")}},renderSingleSided:{get:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.")},set:function(){console.warn("THREE.WebGLRenderer: .shadowMap.renderSingleSided has been removed. Set Material.shadowSide instead.")}}}),Object.defineProperties(nS.prototype,{wrapS:{get:function(){return console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS."),this.texture.wrapS},set:function(t){console.warn("THREE.WebGLRenderTarget: .wrapS is now .texture.wrapS."),this.texture.wrapS=t}},wrapT:{get:function(){return console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT."),this.texture.wrapT},set:function(t){console.warn("THREE.WebGLRenderTarget: .wrapT is now .texture.wrapT."),this.texture.wrapT=t}},magFilter:{get:function(){return console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter."),this.texture.magFilter},set:function(t){console.warn("THREE.WebGLRenderTarget: .magFilter is now .texture.magFilter."),this.texture.magFilter=t}},minFilter:{get:function(){return console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter."),this.texture.minFilter},set:function(t){console.warn("THREE.WebGLRenderTarget: .minFilter is now .texture.minFilter."),this.texture.minFilter=t}},anisotropy:{get:function(){return console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy."),this.texture.anisotropy},set:function(t){console.warn("THREE.WebGLRenderTarget: .anisotropy is now .texture.anisotropy."),this.texture.anisotropy=t}},offset:{get:function(){return console.warn("THREE.WebGLRenderTarget: .offset is now .texture.offset."),this.texture.offset},set:function(t){console.warn("THREE.WebGLRenderTarget: .offset is now .texture.offset."),this.texture.offset=t}},repeat:{get:function(){return console.warn("THREE.WebGLRenderTarget: .repeat is now .texture.repeat."),this.texture.repeat},set:function(t){console.warn("THREE.WebGLRenderTarget: .repeat is now .texture.repeat."),this.texture.repeat=t}},format:{get:function(){return console.warn("THREE.WebGLRenderTarget: .format is now .texture.format."),this.texture.format},set:function(t){console.warn("THREE.WebGLRenderTarget: .format is now .texture.format."),this.texture.format=t}},type:{get:function(){return console.warn("THREE.WebGLRenderTarget: .type is now .texture.type."),this.texture.type},set:function(t){console.warn("THREE.WebGLRenderTarget: .type is now .texture.type."),this.texture.type=t}},generateMipmaps:{get:function(){return console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps."),this.texture.generateMipmaps},set:function(t){console.warn("THREE.WebGLRenderTarget: .generateMipmaps is now .texture.generateMipmaps."),this.texture.generateMipmaps=t}}}),Object.defineProperties(o9.prototype,{standing:{set:function(){console.warn("THREE.WebVRManager: .standing has been removed.")}},userHeight:{set:function(){console.warn("THREE.WebVRManager: .userHeight has been removed.")}}}),lh.prototype.load=function(t){console.warn("THREE.Audio: .load has been deprecated. Use THREE.AudioLoader instead.");var e=this;return(new lo).load(t,function(t){e.setBuffer(t)}),this},lp.prototype.getData=function(){return console.warn("THREE.AudioAnalyser: .getData() is now .getFrequencyData()."),this.getFrequencyData()},ls.prototype.updateCubeMap=function(t,e){return console.warn("THREE.CubeCamera: .updateCubeMap() is now .update()."),this.update(t,e)};var hf={merge:function(t,e,n){var i;console.warn("THREE.GeometryUtils: .merge() has been moved to Geometry. Use geometry.merge( geometry2, matrix, materialIndexOffset ) instead."),e.isMesh&&(e.matrixAutoUpdate&&e.updateMatrix(),i=e.matrix,e=e.geometry),t.merge(e,i,n)},center:function(t){return console.warn("THREE.GeometryUtils: .center() has been moved to Geometry. Use geometry.center() instead."),t.center()}};function hm(){console.error("THREE.Projector has been moved to /examples/js/renderers/Projector.js."),this.projectVector=function(t,e){console.warn("THREE.Projector: .projectVector() is now vector.project()."),t.project(e)},this.unprojectVector=function(t,e){console.warn("THREE.Projector: .unprojectVector() is now vector.unproject()."),t.unproject(e)},this.pickingRay=function(){console.error("THREE.Projector: .pickingRay() is now raycaster.setFromCamera().")}}function hg(){console.error("THREE.CanvasRenderer has been removed")}nb.crossOrigin=void 0,nb.loadTexture=function(t,e,n,i){console.warn("THREE.ImageUtils.loadTexture has been deprecated. Use THREE.TextureLoader() instead.");var r=new sq;r.setCrossOrigin(this.crossOrigin);var o=r.load(t,n,void 0,i);return e&&(o.mapping=e),o},nb.loadTextureCube=function(t,e,n,i){console.warn("THREE.ImageUtils.loadTextureCube has been deprecated. Use THREE.CubeTextureLoader() instead.");var r=new sZ;r.setCrossOrigin(this.crossOrigin);var o=r.load(t,n,void 0,i);return e&&(o.mapping=e),o},nb.loadCompressedTexture=function(){console.error("THREE.ImageUtils.loadCompressedTexture has been removed. Use THREE.DDSLoader instead.")},nb.loadCompressedTextureCube=function(){console.error("THREE.ImageUtils.loadCompressedTextureCube has been removed. Use THREE.DDSLoader instead.")};var hv={createMultiMaterialObject:function(){console.error("THREE.SceneUtils has been moved to /examples/js/utils/SceneUtils.js")},detach:function(){console.error("THREE.SceneUtils has been moved to /examples/js/utils/SceneUtils.js")},attach:function(){console.error("THREE.SceneUtils has been moved to /examples/js/utils/SceneUtils.js")}};function h$(){console.error("THREE.LensFlare has been moved to /examples/js/objects/Lensflare.js")}}).call(this,n(54))},function(t,e,n){var i=n(5);t.exports=function(t,e){if(!i(t)||t._t!==e)throw TypeError("Incompatible receiver, "+e+" required!");return t}},function(t,e){t.exports={}},function(t,e,n){var i=n(1),r=n(33),o=n(4),a=n(108),s="["+a+"]",u=RegExp("^"+s+s+"*"),l=RegExp(s+s+"*$"),h=function(t,e,n){var r={},s=o(function(){return!!a[t]()||"​\x85"!="​\x85"[t]()}),u=r[t]=s?e(c):a[t];n&&(r[n]=u),i(i.P+i.F*s,"String",r)},c=h.trim=function(t,e){return t=String(r(t)),1&e&&(t=t.replace(u,"")),2&e&&(t=t.replace(l,"")),t};t.exports=h},function(t,e,n){var i=n(10).f,r=n(24),o=n(6)("toStringTag");t.exports=function(t,e,n){t&&!r(t=n?t:t.prototype,o)&&i(t,o,{configurable:!0,value:e})}},function(t,e,n){var i=n(8),r=n(16),o=n(14),a=n(7),s=n(123),u=n(84),l=n(25);function h(t){this._parenNode=t;var e=this._node=new i,n=this._listNode=new i(i.LIST);e.setStyleClass(a.Options),e.addChild(n),this._selectedIndex=null,this._callbackOut=function(){},this._unfocusable=!1,document.addEventListener(r.MOUSE_DOWN,this._onDocumentMouseDown.bind(this)),document.addEventListener(r.MOUSE_UP,this._onDocumentMouseUp.bind(this)),this.clear()}h.prototype={_onDocumentMouseDown:function(){this._unfocusable&&this._callbackOut()},_onDocumentMouseUp:function(){this._unfocusable=!0},build:function(t,e,n,r,h,c,p,d){this._clearList(),this._parenNode.addChild(this.getNode());var f=this._node,m=this._listNode;c=c||0;var g,v,$,y,_=this,x=-1;if(p)for(d=d||s.HEX,m.setStyleClass(a.Color);++x<t.length;){switch(v=t[x],$=(g=m.addChild(new i(i.LIST_ITEM))).addChild(new i),d){case s.HEX:y=v;break;case s.RGB:y=u.RGB2HEX(v[0],v[1],v[2]);break;case s.RGBfv:y=u.RGBfv2HEX(v[0],v[1],v[2]);break;case s.HSV:y=u.HSV2RGB(v[0],v[1],v[2])}$.getStyle().backgroundColor=y,$.getStyle().backgroundImage="linear-gradient( rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 100%)",$.setProperty("innerHTML",v),v==e&&g.setStyleClass(a.OptionsSelected),g.addEventListener(o.MOUSE_DOWN,function(){_._selectedIndex=Array.prototype.indexOf.call(this.parentNode.children,this),r()})}else for(m.deleteStyleClass();++x<t.length;)v=t[x],(g=m.addChild(new i(i.LIST_ITEM))).setProperty("innerHTML",v),v==e&&g.setStyleClass(a.OptionsSelected),g.addEventListener(o.MOUSE_DOWN,function(){_._selectedIndex=Array.prototype.indexOf.call(this.parentNode.children,this),r()});var b=n.getPositionGlobal(),w=n.getWidth()-c,A=n.getHeight(),T=m.getWidth(),S=m.getHeight(),E=2*l.STROKE_SIZE,P=l.PADDING_OPTIONS,C=(T<w?w:T)-E,L=b[0],M=b[1]+A-P,R=L+C>window.innerWidth?L-C+w-E:L,I=M+S>window.innerHeight?M-.5*S-.5*A:M;m.setWidth(C),f.setPositionGlobal(R,I),this._callbackOut=h,this._unfocusable=!1},_clearList:function(){this._listNode.removeAllChildren(),this._listNode.deleteStyleProperty("width"),this._selectedIndex=null,this._build=!1},clear:function(){this._clearList(),this._callbackOut=function(){},this._parenNode.removeChild(this.getNode())},isBuild:function(){return this._build},getNode:function(){return this._node},getSelectedIndex:function(){return this._selectedIndex}},h.setup=function(t){return h._instance=new h(t)},h.get=function(){return h._instance},h.destroy=function(){h._instance=null},t.exports=h},function(t,e,n){var i=n(36),r=n(12),o=n(127);function a(){i.apply(this,arguments),this._states=[],this._enabled=!1}a.prototype=Object.create(i.prototype),a.prototype.constructor=a,a.prototype.pushState=function(t,e,n){if(!this._enabled){var i=this._states;i.length>=30&&i.shift(),i.push({object:t,key:e,value:n}),this.dispatchEvent(new r(this,o.STATE_PUSH,null))}},a.prototype.getState=function(t,e){var n,i,r=this._states,o=r.length;if(0==o)return null;for(var a=-1;++a<o;)if((n=r[a]).object===t&&n.key===e){i=n.value;break}return i},a.prototype.popState=function(){if(!this._enabled){var t=this._states;if(!(t.length<1)){var e=t.pop();e.object[e.key]=e.value,this.dispatchEvent(new r(this,o.STATE_POP,null))}}},a.prototype.getNumStates=function(){return this._states.length},a._instance=null,a.setup=function(){return a._instance=new a},a.get=function(){return a._instance},a.prototype.enable=function(){this._enabled=!1},a.prototype.disable=function(){this._enabled=!0},t.exports=a},function(t,e,n){var i=n(27),r=n(6)("toStringTag"),o="Arguments"==i(function(){return arguments}());t.exports=function(t){var e,n,a;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(n=function(t,e){try{return t[e]}catch(n){}}(e=Object(t),r))?n:o?i(e):"Object"==(a=i(e))&&"function"==typeof e.callee?"Arguments":a}},function(t,e){e.f=({}).propertyIsEnumerable},function(t,e,n){var i=n(27);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==i(t)?t.split(""):Object(t)}},function(t,e,n){var i=n(36),r=(n(14),n(8)),o=/^-?\d*\.?\d*$/,a=null,s=null;function u(t,e){t.setProperty("value",e),t.dispatchEvent(new Event("input"))}(NumberInput_Internal=function(t,e,n,o,u,l){i.apply(this,null),this._value=0,this._valueStep=t,this._valueDp=e,this._onBegin=n||function(){},this._onChange=o||function(){},this._onFinish=u||function(){},this._onError=l||function(){},this._keyCode=null,this._caretOffset=0;var h=this._input=new r("text");h.setProperty("value",this._value),h.addEventListener("input",this._onInput.bind(this)),h.addEventListener("keydown",this._onKeydown.bind(this)),a||(h.getElement().setSelectionRange?(a=function(t,e){t.getElement().setSelectionRange(e,e)},s=function(t){t.getElement().setSelectionRange(0,t.getProperty("value").length)}):(a=function(t,e){var n=t.getElement().createTextRange();n.collapse(!0),n.moveEnd("character",e),n.moveStart("character",e),n.select()},s=function(t){var e=t.getElement().createTextRange();e.collapse(!0),e.moveStart("character",0),e.moveEnd("character",t.getProperty("value").length),e.select()}))}).prototype=Object.create(i.prototype),NumberInput_Internal.prototype.constructor=NumberInput_Internal,NumberInput_Internal.prototype._setValue=function(t){var e=0>((t=+t)||1/t)&&0==t?"-":"";t=Number(t).toFixed(this._valueDp),this._input.setProperty("value",e+t),this._value=Number(t)},NumberInput_Internal.prototype._onInput=function(){var t=this._input,e=t.getProperty("value"),n=t.getProperty("selectionStart"),i=this._valueDp,r=e[0];if(""==e?e=0:"."===r&&(e="0"+e),!o.test(e)||"-"==e)return t.setProperty("value",this._value.toFixed(i)),a(t,Math.max(--n,0)),void this._onError(this._keyCode);this._onBegin(this._value),this._setValue(e),a(t,n-this._caretOffset),this._onChange()},NumberInput_Internal.prototype._onKeydown=function(t){var e=this._keyCode=t.keyCode;if(13==e)return this._onFinish(),void t.preventDefault();var n=this._input,i=n.getProperty("value"),r=n.getProperty("selectionStart"),o=n.getProperty("selectionEnd"),l=i.length,h=8==e||45==e,c=t.metaKey,p=t.ctrlKey,d=37==e,f=d||39==e,m=t.shiftKey,g=38==e||40==e,v=i.indexOf(".");if(this._caretOffset=0,(c||p)&&90==e)t.preventDefault();else{if((c||p)&&65==e)return s(n),void t.preventDefault();if(0==r&&o==l)return 189==e?(u(n,"-0"),a(n,1)):(u(n,h?0:String.fromCharCode(e)),a(n,d?r:o)),void t.preventDefault();if(!h||r-1!=v){if(!f&&"0"==i[0]&&1==r)return a(n,1),void(this._caretOffset=1);if(g){var $=(m?10:1)*this._valueStep;return u(n,Number(i)+$*(38==e?1:-1)),a(n,r),void t.preventDefault()}return!(r!=o)||m&&f?m||f||h||!(r>v)||!(r<l)?void(h||f||g||!(r>=l)||t.preventDefault()):(u(n,i=i.substr(0,r)+String.fromCharCode(e)+i.substr(r+1,l-1)),a(n,Math.min(r+1,l-1)),void t.preventDefault()):(f?a(n,d?r:o):(u(n,i=i.substr(0,r)+String.fromCharCode(e)+i.substr(o,l-o)),a(n,o)),void t.preventDefault())}a(n,r-1)}},NumberInput_Internal.prototype.getValue=function(){return this._value},NumberInput_Internal.prototype.setValue=function(t){this._setValue(t)},NumberInput_Internal.prototype.getNode=function(){return this._input},t.exports=NumberInput_Internal},function(t,e,n){var i=n(36),r=n(12),o=n(15),a=n(87);function s(){i.apply(this)}s.prototype=Object.create(i.prototype),s.prototype.constructor=s,s.prototype.onValueUpdated=function(t){this.dispatchEvent(new r(this,o.UPDATE_VALUE,{origin:t.sender}))},s.prototype.onOptionTriggered=function(t){this.dispatchEvent(new r(this,a.TRIGGER,{origin:t.sender}))};var u=null;s.get=function(){return u||(u=new s),u},s.destroy=function(){u=null},t.exports=s},function(t,e,n){var i=n(8),r=n(7),o=n(36),a=n(15);function s(t,e){o.apply(this,arguments),e=t.usesLabels()?e:"none",this._parent=t,this._enabled=!0;var n=this._node=new i(i.LIST_ITEM),s=this._wrapNode=new i;if(s.setStyleClass(r.Wrap),n.addChild(s),void 0!==e){if(0!=e.length&&"none"!=e){var u=this._lablNode=new i(i.SPAN);u.setStyleClass(r.Label),u.setProperty("innerHTML",e),n.addChild(u)}"none"==e&&(s.setStyleProperty("marginLeft","0"),s.setStyleProperty("width","100%"))}this._parent.addEventListener(a.ENABLE,this,"onEnable"),this._parent.addEventListener(a.DISABLE,this,"onDisable"),this._parent.addComponentNode(n)}s.prototype=Object.create(o.prototype),s.prototype.constructor=s,s.prototype.enable=function(){this._enabled=!0},s.prototype.disable=function(){this._enabled=!1},s.prototype.isEnabled=function(){return this._enabled},s.prototype.isDisabled=function(){return!this._enabled},s.prototype.onEnable=function(){this.enable()},s.prototype.onDisable=function(){this.disable()},t.exports=s},function(t,e){t.exports={PANEL_MOVE_BEGIN:"panelMoveBegin",PANEL_MOVE:"panelMove",PANEL_MOVE_END:"panelMoveEnd",PANEL_SHOW:"panelShow",PANEL_HIDE:"panelHide",PANEL_SCROLL_WRAP_ADDED:"panelScrollWrapAdded",PANEL_SCROLL_WRAP_REMOVED:"panelScrollWrapRemoved",PANEL_SIZE_CHANGE:"panelSizeChange"}},function(t,e,n){"use strict";var i=n(1),r=n(17),o=n(28),a=n(44);t.exports=function(t){i(i.S,t,{from:function(t){var e,n,i,s,u=arguments[1];return r(this),(e=void 0!==u)&&r(u),null==t?new this:(n=[],e?(i=0,s=o(u,arguments[2],2),a(t,!1,function(t){n.push(s(t,i++))})):a(t,!1,n.push,n),new this(n))}})}},function(t,e,n){"use strict";var i=n(1);t.exports=function(t){i(i.S,t,{of:function(){for(var t=arguments.length,e=Array(t);t--;)e[t]=arguments[t];return new this(e)}})}},function(t,e,n){"use strict";t.exports=n(40)||!n(4)(function(){var t=Math.random();__defineSetter__.call(null,t,function(){}),delete n(3)[t]})},function(t,e,n){for(var i,r=n(3),o=n(20),a=n(51),s=a("typed_array"),u=a("view"),l=!(!r.ArrayBuffer||!r.DataView),h=l,c=0,p="Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array".split(",");c<9;)(i=r[p[c++]])?(o(i.prototype,s,!0),o(i.prototype,u,!0)):h=!1;t.exports={ABV:l,CONSTR:h,TYPED:s,VIEW:u}},function(t,e,n){"use strict";var i=n(3),r=n(1),o=n(19),a=n(43),s=n(41),u=n(44),l=n(45),h=n(5),c=n(4),p=n(77),d=n(58),f=n(107);t.exports=function(t,e,n,m,g,v){var $=i[t],y=$,_=g?"set":"add",x=y&&y.prototype,b={},w=function(t){var e=x[t];o(x,t,"delete"==t||"has"==t?function(t){return!(v&&!h(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return v&&!h(t)?void 0:e.call(this,0===t?0:t)}:"add"==t?function(t){return e.call(this,0===t?0:t),this}:function(t,n){return e.call(this,0===t?0:t,n),this})};if("function"==typeof y&&(v||x.forEach&&!c(function(){(new y).entries().next()}))){var A=new y,T=A[_](v?{}:-0,1)!=A,S=c(function(){A.has(1)}),E=p(function(t){new y(t)}),P=!v&&c(function(){for(var t=new y,e=5;e--;)t[_](e,e);return!t.has(-0)});E||((y=e(function(e,n){l(e,y,t);var i=f(new $,e,y);return null!=n&&u(n,g,i[_],i),i})).prototype=x,x.constructor=y),(S||P)&&(w("delete"),w("has"),g&&w("get")),(P||T)&&w(_),v&&x.clear&&delete x.clear}else a((y=m.getConstructor(e,t,g,_)).prototype,n),s.NEED=!0;return d(y,t),b[t]=y,r(r.G+r.W+r.F*(y!=$),b),v||m.setStrong(y,t,g),y}},function(t,e,n){var i=n(3).navigator;t.exports=i&&i.userAgent||""},function(t,e,n){var i=n(2),r=n(17),o=n(6)("species");t.exports=function(t,e){var n,a=i(t).constructor;return void 0===a||null==(n=i(a)[o])?e:r(n)}},function(t,e,n){"use strict";var i=n(20),r=n(19),o=n(4),a=n(33),s=n(6);t.exports=function(t,e,n){var u=s(t),l=n(a,u,""[t]),h=l[0],c=l[1];o(function(){var e={};return e[u]=function(){return 7},7!=""[t](e)})&&(r(String.prototype,t,h),i(RegExp.prototype,u,2==e?function(t,e){return c.call(t,this,e)}:function(t){return c.call(t,this)}))}},function(t,e,n){"use strict";var i=n(2);t.exports=function(){var t=i(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},function(t,e,n){var i=n(6)("iterator"),r=!1;try{var o=[7][i]();o.return=function(){r=!0},Array.from(o,function(){throw 2})}catch(a){}t.exports=function(t,e){if(!e&&!r)return!1;var n=!1;try{var o=[7],a=o[i]();a.next=function(){return{done:n=!0}},o[i]=function(){return a},t(o)}catch(s){}return n}},function(t,e,n){var i=n(5),r=n(27),o=n(6)("match");t.exports=function(t){var e;return i(t)&&(void 0!==(e=t[o])?!!e:"RegExp"==r(t))}},function(t,e,n){var i=n(27);t.exports=Array.isArray||function(t){return"Array"==i(t)}},function(t,e){e.f=Object.getOwnPropertySymbols},function(t,e,n){var i=n(23),r=n(9),o=n(49);t.exports=function(t){return function(e,n,a){var s,u=i(e),l=r(u.length),h=o(a,l);if(t&&n!=n){for(;l>h;)if((s=u[h++])!=s)return!0}else for(;l>h;h++)if((t||h in u)&&u[h]===n)return t||h||0;return!t&&-1}}},function(t,e,n){var i=n(35),r=n(3),o=r["__core-js_shared__"]||(r["__core-js_shared__"]={});(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:i.version,mode:n(40)?"pure":"global",copyright:"\xa9 2018 Denis Pushkarev (zloirock.ru)"})},function(t,e,n){var i=n(36),r=n(65),o=n(12),a=n(87),s=n(14),u=n(8),l=n(7);function h(t){i.apply(this);var e=this._btnNode=new u(u.INPUT_BUTTON),n=this._indiNode=new u;this._onActive=function(){},this._onDeactive=function(){},this._isActive=!1,e.setStyleClass(l.ButtonPreset),e.addEventListener(s.MOUSE_DOWN,this._onMouseDown.bind(this)),e.addChild(n),t.addChildAt(e,0),r.get().addEventListener(a.TRIGGER,this,"onOptionTrigger"),this.addEventListener(a.TRIGGERED,r.get(),"onOptionTriggered")}h.prototype=Object.create(i.prototype),h.prototype.constructor=h,h.prototype.onOptionTrigger=function(t){t.data.origin!=this?this._isActive&&this.deactivate():this._isActive?this._onDeactive():(this._onActive(),this._btnNode.setStyleClass(l.ButtonPresetActive),this._isActive=!0)},h.prototype._onMouseDown=function(){this.dispatchEvent(new o(this,a.TRIGGERED,null))},h.prototype.setOnActive=function(t){this._onActive=t},h.prototype.setOnDeactive=function(t){this._onDeactive=t},h.prototype.deactivate=function(){this._isActive=!1,this._btnNode.setStyleClass(l.ButtonPreset)},t.exports=h},function(t,e){var n={HSV2RGB:function(t,e,n){if(t%=360,n=Math.max(0,Math.min(n,100))/100*255,e<=0)return[n=Math.round(n),n,n];e>100&&(e=100);var i=Math.floor(t/60)%6,r=t/60-i,o=n*(1-(e/=100)),a=n*(1-r*e),s=n*(1-(1-r)*e),u=0,l=0,h=0;switch(i){case 0:u=n,l=s,h=o;break;case 1:u=a,l=n,h=o;break;case 2:u=o,l=n,h=s;break;case 3:u=o,l=a,h=n;break;case 4:u=s,l=o,h=n;break;case 5:u=n,l=o,h=a}return[u=Math.round(u),l=Math.round(l),h=Math.round(h)]},RGB2HSV:function(t,e,n){var i=0;t/=255;var r=Math.min(t,Math.min(e/=255,n/=255)),o=Math.max(t,Math.max(e,n));if(r==o)return[0,0,Math.round(i=r)];var a=t==r?e-n:n==r?t-e:n-t;return[Math.round(60*((t==r?3:n==r?1:5)-a/(o-r))),Math.round((o-r)/o*100),i=Math.round(100*o)]},RGB2HEX:function(t,e,n){return"#"+(16777216+(t<<16)+(e<<8)+n).toString(16).slice(1)},RGBfv2HEX:function(t,e,i){return n.RGB2HEX(Math.floor(255*t),Math.floor(255*e),Math.floor(255*i))},HSV2HEX:function(t,e,n){var i=ControlKit.ColorUtil.HSV2RGB(t,e,n);return ControlKit.ColorUtil.RGB2HEX(i[0],i[1],i[2])},HEX2RGB:function(t){t=t.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(t,e,n,i){return e+e+n+n+i+i});var e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return e?[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]:null},isValidHEX:function(t){return/^#[0-9A-F]{6}$/i.test(t)},isValidRGB:function(t,e,n){return t>=0&&t<=255&&e>=0&&e<=255&&n>=0&&n<=255},isValidRGBfv:function(t,e,n){return t>=0&&t<=1&&e>=0&&e<=1&&n>=0&&n<=1}};t.exports=n},function(t,e,n){var i=n(181);function r(t,e,n,r){(r=r||{}).lineWidth=r.lineWidth||2,r.lineColor=r.lineColor||[255,255,255],i.apply(this,arguments);var o=this._lineWidth=r.lineWidth,a=r.lineColor;(this._grid=this._svgRoot.appendChild(this._createSVGObject("path"))).style.stroke="rgb(26,29,31)";var s=this._path=this._svgRoot.appendChild(this._createSVGObject("path"));s.style.stroke="rgb("+a[0]+","+a[1]+","+a[2]+")",s.style.strokeWidth=o,s.style.fill="none"}r.prototype=Object.create(i.prototype),r.prototype.constructor=r,t.exports=r},function(t,e,n){var i=n(85),r=n(25);function o(t,e,n,o){i.apply(this,arguments);var a=this._svg,s=Number(a.getAttribute("width")),u=Number(a.getAttribute("height"));(o=o||{}).height=o.height||u,o.resolution=o.resolution||1;for(var l=o.resolution,h=Math.floor(s/l),c=this._points=Array(2*h),p=this._buffer0=Array(h),d=this._buffer1=Array(h),f=.5*this._lineWidth,m=-1;++m<h;)p[m]=d[m]=c[2*m]=c[2*m+1]=f;this._height=o.height=o.height<r.COMPONENT_MIN_HEIGHT?r.COMPONENT_MIN_HEIGHT:o.height,this._svgSetSize(u,Math.floor(o.height)),this._grid.style.stroke="rgb(39,44,46)",this._updateHeight(),this._drawValue()}o.prototype=Object.create(i.prototype),o.prototype.constructor=o,o.prototype._redraw=function(){for(var t=this._points,e=this._buffer0.length,n=Number(this._svg.getAttribute("width")),i=n/(e-1),r=-1;++r<e;)t[2*r]=n-r*i;this._drawValue()},o.prototype.onGroupSizeChange=function(){var t=this._wrapNode.getWidth(),e=this._height;this._svgSetSize(t,e),this._updateHeight(),this._drawGrid(),this._redraw()},o.prototype._drawValue=function(){this._drawCurve()},o.prototype._drawGrid=function(){var t=this._svg,e=Number(t.getAttribute("width")),n=Math.floor(.5*Number(t.getAttribute("height"))),i="";i+=this._pathCmdMoveTo(0,n),i+=this._pathCmdLineTo(e,n),this._grid.setAttribute("d",i)},o.prototype._drawCurve=function(){var t=this._svg,e=this._obj[this._key],n=this._buffer0,i=this._buffer1,r=this._points,o=n.length,a="",s=.5*Number(t.getAttribute("height")),u=s-.5*this._lineWidth;r[1]=n[0],n[o-1]=-(e*u*1)+Math.floor(s),a+=this._pathCmdMoveTo(r[0],r[1]);for(var l,h=0;++h<o;)l=2*h,i[h-1]=n[h],r[l+1]=n[h-1]=i[h-1],a+=this._pathCmdLineTo(r[l],r[l+1]);this._path.setAttribute("d",a)},o.prototype.update=function(){this._parent.isDisabled()||this._drawValue()},t.exports=o},function(t,e){t.exports={TRIGGERED:"selectTrigger",TRIGGER:"triggerSelect"}},function(t,e,n){var i=n(8),r=n(25),o=n(7),a=n(16),s=(n(14),n(42));function u(t,e,n){this._parentNode=t,this._targetNode=e,this._wrapHeight=n;var s=this._wrapNode=(new i).setStyleClass(o.ScrollWrap),u=this._node=(new i).setStyleClass(o.ScrollBar),l=this._trackNode=(new i).setStyleClass(o.ScrollBarTrack),h=this._thumbNode=(new i).setStyleClass(o.ScrollBarThumb);t.removeChild(e),t.addChild(s),t.addChildAt(u,0),s.addChild(e),u.addChild(l),l.addChild(h),this._mouseThumbOffset=0,this._scrollHeight=0,this._scrollUnit=0,this._scrollMin=0,this._scrollMax=0,h.setPositionY(r.SCROLLBAR_TRACK_PADDING),h.addEventListener(a.MOUSE_DOWN,this._onThumbDragStart.bind(this)),this._isValid=!1,this._enabled=!1;var c=u.getElement(),p=h.getElement(),d=this;this._onMouseWheel=function(t){var e=t.sender,n=e.getHoverElement();if(n==c||n==p){var i=.0125*d._scrollHeight;d._scroll(h.getPositionY()+-(e.getWheelDirection()*i*1)),t.data.preventDefault()}},this.addMouseListener()}u.prototype.update=function(){var t=this._targetNode,e=this._thumbNode,n=r.SCROLLBAR_TRACK_PADDING,i=this._wrapHeight,o=t.getHeight(),a=i-2*n;e.setHeight(a);var s=i/o;if(this._isValid=!1,!(s>1)){var u=a*s;this._scrollHeight=a,this._scrollUnit=o-this._scrollHeight-2*n,this._scrollMin=n,this._scrollMax=n+a-u,e.setHeight(u),this._isValid=!0}},u.prototype._scroll=function(t){var e=this._scrollMin,n=this._scrollMax,i=Math.max(e,Math.min(t,n));this._thumbNode.setPositionY(i),this._targetNode.setPositionY(-((i-e)/(n-e)*this._scrollUnit*1))},u.prototype._onThumbDragStart=function(){if(this._isValid&&!this._enabled){var t=a.MOUSE_MOVE,e=a.MOUSE_UP,n=s.get(),i=this._trackNode.getPositionGlobalY();this._mouseThumbOffset=n.getY()-this._thumbNode.getPositionGlobalY();var r=this,o=function(){r._scroll(n.getY()-i-r._mouseThumbOffset)},u=function(){document.removeEventListener(t,o,!1),document.removeEventListener(e,u,!1)};document.addEventListener(t,o,!1),document.addEventListener(e,u,!1),this._scroll(n.getY()-i-r._mouseThumbOffset)}},u.prototype.enable=function(){this._enabled=!1,this._updateAppearance()},u.prototype.disable=function(){this._enabled=!0,this._updateAppearance()},u.prototype.reset=function(){this._scroll(0)},u.prototype._updateAppearance=function(){this._enabled?(this._node.setStyleProperty("display","none"),this._targetNode.setPositionY(0),this._thumbNode.setPositionY(r.SCROLLBAR_TRACK_PADDING)):this._node.setStyleProperty("display","block")},u.prototype.isValid=function(){return this._isValid},u.prototype.setWrapHeight=function(t){this._wrapHeight=t,this.update()},u.prototype.removeTargetNode=function(){return this._wrapNode.removeChild(this._targetNode)},u.prototype.removeMouseListener=function(){s.get().removeEventListener(a.MOUSE_WHEEL,this,"_onMouseWheel")},u.prototype.addMouseListener=function(){s.get().addEventListener(a.MOUSE_WHEEL,this,"_onMouseWheel")},u.prototype.removeFromParent=function(){var t=this._parentNode,e=this._node,n=this._targetNode;return e.removeChild(n),t.removeChild(this._wrapNode),t.removeChild(e),n},u.prototype.getWrapNode=function(){return this._wrapNode},u.prototype.getNode=function(){return this._node},u.prototype.getTargetNode=function(){return this._targetNode},t.exports=u},function(t,e,n){"use strict";var i=n(3),r=n(11),o=n(40),a=n(71),s=n(20),u=n(43),l=n(4),h=n(45),c=n(32),p=n(9),d=n(137),f=n(47).f,m=n(10).f,g=n(94),v=n(58),$="prototype",y="Wrong index!",_=i.ArrayBuffer,x=i.DataView,b=i.Math,w=i.RangeError,A=i.Infinity,T=_,S=b.abs,E=b.pow,P=b.floor,C=b.log,L=b.LN2,M=r?"_b":"buffer",R=r?"_l":"byteLength",I=r?"_o":"byteOffset";function D(t,e,n){var i,r,o,a=Array(n),s=8*n-e-1,u=(1<<s)-1,l=u>>1,h=23===e?E(2,-24)-E(2,-77):0,c=0,p=t<0||0===t&&1/t<0?1:0;for((t=S(t))!=t||t===A?(r=t!=t?1:0,i=u):(i=P(C(t)/L),t*(o=E(2,-i))<1&&(i--,o*=2),(t+=i+l>=1?h/o:h*E(2,1-l))*o>=2&&(i++,o/=2),i+l>=u?(r=0,i=u):i+l>=1?(r=(t*o-1)*E(2,e),i+=l):(r=t*E(2,l-1)*E(2,e),i=0));e>=8;a[c++]=255&r,r/=256,e-=8);for(i=i<<e|r,s+=e;s>0;a[c++]=255&i,i/=256,s-=8);return a[--c]|=128*p,a}function N(t,e,n){var i,r=8*n-e-1,o=(1<<r)-1,a=o>>1,s=r-7,u=n-1,l=t[u--],h=127&l;for(l>>=7;s>0;h=256*h+t[u],u--,s-=8);for(i=h&(1<<-s)-1,h>>=-s,s+=e;s>0;i=256*i+t[u],u--,s-=8);if(0===h)h=1-a;else{if(h===o)return i?NaN:l?-A:A;i+=E(2,e),h-=a}return(l?-1:1)*i*E(2,h-e)}function B(t){return t[3]<<24|t[2]<<16|t[1]<<8|t[0]}function O(t){return[255&t]}function G(t){return[255&t,t>>8&255]}function k(t){return[255&t,t>>8&255,t>>16&255,t>>24&255]}function V(t){return D(t,52,8)}function z(t){return D(t,23,4)}function U(t,e,n){m(t[$],e,{get:function(){return this[n]}})}function H(t,e,n,i){var r=d(+n);if(r+e>t[R])throw w(y);var o=t[M]._b,a=r+t[I],s=o.slice(a,a+e);return i?s:s.reverse()}function F(t,e,n,i,r,o){var a=d(+n);if(a+e>t[R])throw w(y);for(var s=t[M]._b,u=a+t[I],l=i(+r),h=0;h<e;h++)s[u+h]=l[o?h:e-h-1]}if(a.ABV){if(!l(function(){_(1)})||!l(function(){new _(-1)})||l(function(){return new _,new _(1.5),new _(NaN),"ArrayBuffer"!=_.name})){for(var W,X=(_=function(t){return h(this,_),new T(d(t))})[$]=T[$],Y=f(T),K=0;Y.length>K;)(W=Y[K++])in _||s(_,W,T[W]);o||(X.constructor=_)}var j=new x(new _(2)),Z=x[$].setInt8;j.setInt8(0,2147483648),j.setInt8(1,2147483649),!j.getInt8(0)&&j.getInt8(1)||u(x[$],{setInt8:function(t,e){Z.call(this,t,e<<24>>24)},setUint8:function(t,e){Z.call(this,t,e<<24>>24)}},!0)}else _=function(t){h(this,_,"ArrayBuffer");var e=d(t);this._b=g.call(Array(e),0),this[R]=e},x=function(t,e,n){h(this,x,"DataView"),h(t,_,"DataView");var i=t[R],r=c(e);if(r<0||r>i)throw w("Wrong offset!");if(r+(n=void 0===n?i-r:p(n))>i)throw w("Wrong length!");this[M]=t,this[I]=r,this[R]=n},r&&(U(_,"byteLength","_l"),U(x,"buffer","_b"),U(x,"byteLength","_l"),U(x,"byteOffset","_o")),u(x[$],{getInt8:function(t){return H(this,1,t)[0]<<24>>24},getUint8:function(t){return H(this,1,t)[0]},getInt16:function(t){var e=H(this,2,t,arguments[1]);return(e[1]<<8|e[0])<<16>>16},getUint16:function(t){var e=H(this,2,t,arguments[1]);return e[1]<<8|e[0]},getInt32:function(t){return B(H(this,4,t,arguments[1]))},getUint32:function(t){return B(H(this,4,t,arguments[1]))>>>0},getFloat32:function(t){return N(H(this,4,t,arguments[1]),23,4)},getFloat64:function(t){return N(H(this,8,t,arguments[1]),52,8)},setInt8:function(t,e){F(this,1,t,O,e)},setUint8:function(t,e){F(this,1,t,O,e)},setInt16:function(t,e){F(this,2,t,G,e,arguments[2])},setUint16:function(t,e){F(this,2,t,G,e,arguments[2])},setInt32:function(t,e){F(this,4,t,k,e,arguments[2])},setUint32:function(t,e){F(this,4,t,k,e,arguments[2])},setFloat32:function(t,e){F(this,4,t,z,e,arguments[2])},setFloat64:function(t,e){F(this,8,t,V,e,arguments[2])}});v(_,"ArrayBuffer"),v(x,"DataView"),s(x[$],a.VIEW,!0),e.ArrayBuffer=_,e.DataView=x},function(t,e,n){"use strict";var i=n(17);t.exports.f=function(t){return new function(t){var e,n;this.promise=new t(function(t,i){if(void 0!==e||void 0!==n)throw TypeError("Bad Promise constructor");e=t,n=i}),this.resolve=i(e),this.reject=i(n)}(t)}},function(t,e,n){var i=n(3),r=n(92).set,o=i.MutationObserver||i.WebKitMutationObserver,a=i.process,s=i.Promise,u="process"==n(27)(a);t.exports=function(){var t,e,n,l=function(){var i,r;for(u&&(i=a.domain)&&i.exit();t;){r=t.fn,t=t.next;try{r()}catch(o){throw t?n():e=void 0,o}}e=void 0,i&&i.enter()};if(u)n=function(){a.nextTick(l)};else if(!o||i.navigator&&i.navigator.standalone){if(s&&s.resolve){var h=s.resolve(void 0);n=function(){h.then(l)}}else n=function(){r.call(i,l)}}else{var c=!0,p=document.createTextNode("");new o(l).observe(p,{characterData:!0}),n=function(){p.data=c=!c}}return function(i){var r={fn:i,next:void 0};e&&(e.next=r),t||(t=r,n()),e=r}}},function(t,e,n){var i,r,o,a=n(28),s=n(156),u=n(110),l=n(114),h=n(3),c=h.process,p=h.setImmediate,d=h.clearImmediate,f=h.MessageChannel,m=h.Dispatch,g=0,v={},$=function(){var t=+this;if(v.hasOwnProperty(t)){var e=v[t];delete v[t],e()}},y=function(t){$.call(t.data)};p&&d||(p=function(t){for(var e=[],n=1;arguments.length>n;)e.push(arguments[n++]);return v[++g]=function(){s("function"==typeof t?t:Function(t),e)},i(g),g},d=function(t){delete v[t]},"process"==n(27)(c)?i=function(t){c.nextTick(a($,t,1))}:m&&m.now?i=function(t){m.now(a($,t,1))}:f?(o=(r=new f).port2,r.port1.onmessage=y,i=a(o.postMessage,o,1)):h.addEventListener&&"function"==typeof postMessage&&!h.importScripts?(i=function(t){h.postMessage(t+"","*")},h.addEventListener("message",y,!1)):i="onreadystatechange"in l("script")?function(t){u.appendChild(l("script")).onreadystatechange=function(){u.removeChild(this),$.call(t)}}:function(t){setTimeout(a($,t,1),0)}),t.exports={set:p,clear:d}},function(t,e,n){"use strict";var i=n(39),r=n(146),o=n(56),a=n(23);t.exports=n(102)(Array,"Array",function(t,e){this._t=a(t),this._i=0,this._k=e},function(){var t=this._t,e=this._k,n=this._i++;return!t||n>=t.length?(this._t=void 0,r(1)):r(0,"keys"==e?n:"values"==e?t[n]:[n,t[n]])},"values"),o.Arguments=o.Array,i("keys"),i("values"),i("entries")},function(t,e,n){"use strict";var i=n(13),r=n(49),o=n(9);t.exports=function(t){for(var e=i(this),n=o(e.length),a=arguments.length,s=r(a>1?arguments[1]:void 0,n),u=a>2?arguments[2]:void 0,l=void 0===u?n:r(u,n);l>s;)e[s++]=t;return e}},function(t,e,n){var i=n(310);t.exports=function(t,e){return new(i(t))(e)}},function(t,e,n){var i=n(61),r=n(6)("iterator"),o=n(56);t.exports=n(35).getIteratorMethod=function(t){if(null!=t)return t[r]||t["@@iterator"]||o[i(t)]}},function(t,e,n){"use strict";var i=n(10),r=n(52);t.exports=function(t,e,n){e in t?i.f(t,e,r(0,n)):t[e]=n}},function(t,e,n){var i=n(56),r=n(6)("iterator"),o=Array.prototype;t.exports=function(t){return void 0!==t&&(i.Array===t||o[r]===t)}},function(t,e,n){var i=n(6)("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[i]=!1,!"/./"[t](e)}catch(r){}}return!0}},function(t,e,n){var i=n(78),r=n(33);t.exports=function(t,e,n){if(i(e))throw TypeError("String#"+n+" doesn't accept regex!");return String(r(t))}},function(t,e,n){"use strict";var i=n(48),r=n(52),o=n(58),a={};n(20)(a,n(6)("iterator"),function(){return this}),t.exports=function(t,e,n){t.prototype=i(a,{next:r(1,n)}),o(t,e+" Iterator")}},function(t,e,n){"use strict";var i=n(40),r=n(1),o=n(19),a=n(20),s=n(56),u=n(101),l=n(58),h=n(21),c=n(6)("iterator"),p=!([].keys&&"next"in[].keys()),d=function(){return this};t.exports=function(t,e,n,f,m,g,v){u(n,e,f);var $,y,_,x=function(t){return!p&&t in T?T[t]:function(){return new n(this,t)}},b=e+" Iterator",w="values"==m,A=!1,T=t.prototype,S=T[c]||T["@@iterator"]||m&&T[m],E=S||x(m),P=m?w?x("entries"):E:void 0,C="Array"==e&&T.entries||S;if(C&&(_=h(C.call(new t)))!==Object.prototype&&_.next&&(l(_,b,!0),i||"function"==typeof _[c]||a(_,c,d)),w&&S&&"values"!==S.name&&(A=!0,E=function(){return S.call(this)}),(!i||v)&&(p||A||!T[c])&&a(T,c,E),s[e]=E,s[b]=d,m){if($={values:w?E:x("values"),keys:g?E:x("keys"),entries:P},v)for(y in $)y in T||o(T,y,$[y]);else r(r.P+r.F*(p||A),e,$)}return $}},function(t,e,n){var i=n(32),r=n(33);t.exports=function(t){return function(e,n){var o,a,s=String(r(e)),u=i(n),l=s.length;return u<0||u>=l?t?"":void 0:(o=s.charCodeAt(u))<55296||o>56319||u+1===l||(a=s.charCodeAt(u+1))<56320||a>57343?t?s.charAt(u):o:t?s.slice(u,u+2):a-56320+(o-55296<<10)+65536}}},function(t,e){var n=Math.expm1;t.exports=!n||n(10)>22025.465794806718||22025.465794806718>n(10)||-.00000000000000002!=n(-.00000000000000002)?function(t){return 0==(t=+t)?t:t>-.000001&&t<1e-6?t+t*t/2:Math.exp(t)-1}:n},function(t,e){t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},function(t,e,n){"use strict";var i=n(32),r=n(33);t.exports=function(t){var e=String(r(this)),n="",o=i(t);if(o<0||o==1/0)throw RangeError("Count can't be negative");for(;o>0;(o>>>=1)&&(e+=e))1&o&&(n+=e);return n}},function(t,e,n){var i=n(5),r=n(109).set;t.exports=function(t,e,n){var o,a=e.constructor;return a!==n&&"function"==typeof a&&(o=a.prototype)!==n.prototype&&i(o)&&r&&r(t,o),t}},function(t,e){t.exports="	\n\v\f\r \xa0 ᠎              \u2028\u2029\uFEFF"},function(t,e,n){var i=n(5),r=n(2),o=function(t,e){if(r(t),!i(e)&&null!==e)throw TypeError(e+": can't set as prototype!")};t.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(t,e,i){try{(i=n(28)(Function.call,n(22).f(Object.prototype,"__proto__").set,2))(t,[]),e=!(t instanceof Array)}catch(r){e=!0}return function(t,n){return o(t,n),e?t.__proto__=n:i(t,n),t}}({},!1):void 0),check:o}},function(t,e,n){var i=n(3).document;t.exports=i&&i.documentElement},function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,e,n){var i=n(82)("keys"),r=n(51);t.exports=function(t){return i[t]||(i[t]=r(t))}},function(t,e,n){var i=n(3),r=n(35),o=n(40),a=n(162),s=n(10).f;t.exports=function(t){var e=r.Symbol||(r.Symbol=o?{}:i.Symbol||{});"_"==t.charAt(0)||t in e||s(e,t,{value:a.f(t)})}},function(t,e,n){var i=n(5),r=n(3).document,o=i(r)&&i(r.createElement);t.exports=function(t){return o?r.createElement(t):{}}},function(t,e,n){var i=n(66),r=n(7),o=n(25),a=n(53);function s(t,e){i.apply(this,arguments);var n=this._wrapNode;n.setStyleClass(r.CanvasWrap);var o=n.getWidth(),s=this._svg=this._createSVGObject("svg");s.setAttribute("version","1.2"),s.setAttribute("baseProfile","tiny"),s.setAttribute("preserveAspectRatio","true"),n.getElement().appendChild(s),this._svgSetSize(o,o),this._updateHeight(),this._node.setStyleClass(r.CanvasListItem),this._parent.addEventListener(a.GROUP_SIZE_CHANGE,this,"onGroupSizeChange"),this.addEventListener(a.GROUP_SIZE_UPDATE,this._parent,"onGroupSizeUpdate")}s.prototype=Object.create(i.prototype),s.prototype.constructor=s,s.prototype._updateHeight=function(){var t=Number(this._svg.getAttribute("height"));this._wrapNode.setHeight(t),this._node.setHeight(t+o.PADDING_WRAPPER)},s.prototype.onGroupSizeChange=function(){var t=this._wrapNode.getWidth();this._svgSetSize(t,t),this._updateHeight()},s.prototype._svgSetSize=function(t,e){var n=this._svg;n.setAttribute("width",t),n.setAttribute("height",e),n.setAttribute("viewbox","0 0 "+t+" "+e)},s.prototype.getSVG=function(){return this._svg},t.exports=s},function(t,e,n){var i=n(66),r=n(7),o=n(25),a=n(12),s=n(53);function u(t,e){e.label=e.label||"",i.apply(this,[t,e.label]);var n=this._wrapNode;n.setStyleClass(r.CanvasWrap);var o=this._canvas=document.createElement("canvas");n.getElement().appendChild(o);var a=n.getWidth(),u=e.height||a;this._canvasWidth=a,this._canvasHeight=u,this._setCanvasSize(a,a),this._updateHeight(),this._node.setStyleClass(r.CanvasListItem),this._parent.addEventListener(s.GROUP_SIZE_CHANGE,this,"onGroupSizeChange"),this.addEventListener(s.GROUP_SIZE_UPDATE,this._parent,"onGroupSizeUpdate")}u.prototype=Object.create(i.prototype),u.prototype.constructor=u,u.prototype._updateHeight=function(){var t=this._canvas.height;this._wrapNode.setHeight(t),this._node.setHeight(t+o.PADDING_WRAPPER)},u.prototype._redraw=function(){},u.prototype.onGroupSizeChange=function(){var t=this._wrapNode.getWidth();this._setCanvasSize(t),this._updateHeight(),this._redraw(),this.dispatchEvent(new a(this,s.GROUP_SIZE_UPDATE,null))},u.prototype._setCanvasSize=function(t,e){var n=t,i=e||this._canvasHeight,r=this._canvas;r.style.width=n+"px",r.style.height=i+"px",r.width=n,r.height=i},u.prototype.getCanvas=function(){return this._canvas},u.prototype.getContext=function(){return this._canvas.getContext("2d")},t.exports=u},function(t,e,n){var i=n(118);(StringOutput=function(t,e,n,r){i.apply(this,arguments)}).prototype=Object.create(i.prototype),StringOutput.prototype.constructor=StringOutput,StringOutput.prototype._setValue=function(){if(!this._parent.isDisabled()){var t=this._obj[this._key];if(t!=this._prevString){var e,n=this._textArea,i=n.getElement();n.setProperty("value",t),e=i.scrollHeight,n.setHeight(e);var r=this._scrollBar;r&&(e<=this._wrapNode.getHeight()?r.disable():(r.enable(),r.update(),r.reset())),this._prevString=t}}},t.exports=StringOutput},function(t,e,n){var i=n(29),r=n(8),o=n(7),a=n(25),s=n(88),u=n(12),l=n(16),h=n(14),c=n(15);function p(t,e,n,u){i.apply(this,arguments),(u=u||{}).height=u.height||null,u.wrap=void 0!==u.wrap&&u.wrap,u.update=void 0===u.update||u.update,this._wrap=u.wrap,this._update=u.update;var l=this._textArea=new r(r.TEXTAREA),p=this._wrapNode,d=this._node;if(l.setProperty("readOnly",!0),p.addChild(l),l.addEventListener(h.MOUSE_DOWN,this._onInputDragStart.bind(this)),this.addEventListener(c.INPUT_SELECT_DRAG,this._parent,"onComponentSelectDrag"),u.height){var f=new r;f.setStyleClass(o.TextAreaWrap),f.addChild(l),p.addChild(f);var m=this._height=u.height;l.setHeight(Math.max(m+4,a.COMPONENT_MIN_HEIGHT)),p.setHeight(l.getHeight()),d.setHeight(p.getHeight()+4),this._scrollBar=new s(f,l,m-4)}u.wrap&&l.setStyleProperty("white-space","pre-wrap"),this._prevString="",this._prevScrollHeight=-1,this._setValue()}p.prototype=Object.create(i.prototype),p.prototype.constructor=p,p.prototype._setValue=function(){},p.prototype.onValueUpdate=function(){this._setValue()},p.prototype.update=function(){this._update&&this._setValue()},p.prototype._onDrag=function(){this.dispatchEvent(new u(this,c.INPUT_SELECT_DRAG,null))},p.prototype._onDragFinish=function(){this.dispatchEvent(new u(this,c.INPUT_SELECT_DRAG,null)),document.removeEventListener(l.MOUSE_MOVE,this._onDrag,!1),document.removeEventListener(l.MOUSE_MOVE,this._onDragFinish,!1)},p.prototype._onInputDragStart=function(){this.dispatchEvent(new u(this,c.INPUT_SELECT_DRAG,null)),document.addEventListener(l.MOUSE_MOVE,this._onDrag.bind(this),!1),document.addEventListener(l.MOUSE_UP,this._onDragFinish.bind(this),!1)},t.exports=p},function(t,e,n){var i=n(118);function r(t,e,n,r){(r=r||{}).dp=r.dp||2,i.apply(this,arguments),this._valueDp=r.dp+1}r.prototype=Object.create(i.prototype),r.prototype.constructor=r,r.prototype._setValue=function(){if(!this._parent.isDisabled()){var t,e,n=this._obj[this._key],i=this._textArea,r=this._valueDp;if("object"!=typeof n||"number"!=typeof n.length||"function"!=typeof n.splice||n.propertyIsEnumerable("length"))t=(e=n.toString()).indexOf("."),i.setProperty("value",t>0?e.slice(0,t+r):e);else{e=n.slice();for(var o,a=-1,s=this._wrap;++a<e.length;)(t=(o=e[a]=e[a].toString()).indexOf("."))>0&&(e[a]=o.slice(0,t+r));s&&(i.setStyleProperty("white-space","nowrap"),e=e.join("\n")),i.setProperty("value",e)}}},t.exports=r},function(t,e,n){var i=n(29),r=n(7),o=n(170),a=n(60),s=n(122),u=n(64),l=n(12),h=n(16),c=n(67),p=n(53),d=n(15);function f(t,e,n,a,s){(s=s||{}).label=s.label||n,i.apply(this,[t,e,a,s]),this._values=this._obj[this._key],this._targetKey=n,s.step=s.step||1,s.dp=void 0===s.dp||null==s.dp?2:s.dp,s.onChange=s.onChange||this._onChange,s.onFinish=s.onFinish||function(){},this._dp=s.dp,this._onChange=s.onChange,this._onFinish=s.onFinish;var l=this._values,d=this._obj,f=this._targetKey,m=this._wrapNode;m.setStyleClass(r.WrapSlider);var g=this._slider=new o(m,this._onSliderBegin.bind(this),this._onSliderMove.bind(this),this._onSliderEnd.bind(this));g.setBoundMax(l[1]),g.setBoundMin(l[0]),g.setValue(d[f]);var v=this._input=new u(s.step,s.dp,null,this._onInputChange.bind(this));v.setValue(d[f]),m.addChild(v.getNode()),this._parent.addEventListener(c.PANEL_MOVE_END,this,"onPanelMoveEnd"),this._parent.addEventListener(p.GROUP_SIZE_CHANGE,this,"onGroupWidthChange"),this._parent.addEventListener(h.WINDOW_RESIZE,this,"onWindowResize")}f.prototype=Object.create(i.prototype),f.prototype.constructor=f,f.prototype.pushHistoryState=function(){var t=this._obj,e=this._targetKey;a.get().pushState(t,e,t[e])},f.prototype._onSliderBegin=function(){this.pushHistoryState()},f.prototype._onSliderMove=function(){this.applyValue(),this._updateValueField(),this.dispatchEvent(new l(this,d.VALUE_UPDATED,null)),this._onChange()},f.prototype._onSliderEnd=function(){this.applyValue(),this._updateValueField(),this.dispatchEvent(new l(this,d.VALUE_UPDATED,null)),this._onFinish()},f.prototype._onInputChange=function(){var t=this._input,e=this._values[0],n=this._values[1];t.getValue()>=n&&t.setValue(n),t.getValue()<=e&&t.setValue(e);var i=t.getValue();this._slider.setValue(i),this._obj[this._targetKey]=i,this.dispatchEvent(new l(this,d.VALUE_UPDATED,null)),this._onFinish()},f.prototype.applyValue=function(){var t=this._slider.getValue();this._obj[this._targetKey]=parseFloat(t.toFixed(this._dp)),this._input.setValue(t)},f.prototype.onValueUpdate=function(t){var e=t.data.origin;if(e!=this){var n=this._slider;if(e instanceof f)n.setValue(this._obj[this._targetKey]);else{var i=this._values;n.setBoundMin(i[0]),n.setBoundMax(i[1]),e instanceof s||n.setValue(this._obj[this._targetKey])}this.applyValue()}},f.prototype._updateValueField=function(){this._input.setValue(this._slider.getValue())},f.prototype.onPanelMoveEnd=f.prototype.onGroupWidthChange=f.prototype.onWindowResize=function(){this._slider.resetOffset()},f.prototype.setValue=function(t){-1!=t&&(this._obj[this._targetKey]=t,this.dispatchEvent(new l(this,d.VALUE_UPDATED,null)))},f.prototype.getData=function(){var t={};return t[this._targetKey]=this._obj[this._targetKey],t},t.exports=f},function(t,e,n){var i=n(8),r=n(7),o=n(64),a=n(42),s=n(84),u=n(16),l=n(14);function h(t){var e=this._node=(new i).setStyleClass(r.Picker),n=this._headNode=(new i).setStyleClass(r.Head),a=(new i).setStyleClass(r.Wrap),s=(new i).setStyleClass(r.Label),u=(new i).setStyleClass(r.Menu),h=(new i).setStyleClass(r.Wrap),c=new i(i.INPUT_BUTTON);c.setStyleClass(r.ButtonMenuClose);var p=(new i).setStyleClass(r.PickerFieldWrap),d=(new i).setStyleClass(r.SliderWrap),f=(new i).setStyleClass(r.PickerInputWrap),m=this._canvasField=document.createElement("canvas"),g=this._canvasSlider=document.createElement("canvas");p.getElement().appendChild(m),d.getElement().appendChild(g),this._setSizeCanvasField(154,154),this._setSizeCanvasSlider(14,154);var v=this._contextCanvasField=m.getContext("2d"),$=this._contextCanvasSlider=g.getContext("2d"),y=this._handleField=new i;y.setStyleClass(r.PickerHandleField);var _=this._handleSlider=new i;_.setStyleClass(r.PickerHandleSlider);var x=this._onInputHueChange.bind(this),b=this._onInputSatChange.bind(this),w=this._onInputValChange.bind(this),A=this._onInputRChange.bind(this),T=this._onInputGChange.bind(this),S=this._onInputBChange.bind(this),E=this._inputHue=new o(1,0,null,x),P=this._inputSat=new o(1,0,null,b),C=this._inputVal=new o(1,0,null,w),L=this._inputR=new o(1,0,null,A),M=this._inputG=new o(1,0,null,T),R=this._inputB=new o(1,0,null,S),I=(new i).setStyleClass(r.PickerControlsWrap),D=new i(i.INPUT_BUTTON).setStyleClass(r.Button).setProperty("value","pick"),N=new i(i.INPUT_BUTTON).setStyleClass(r.Button).setProperty("value","cancel"),B=(new i).setStyleClass(r.PickerColorContrast),O=this._colorCurrNode=new i,G=this._colorPrevNode=new i;B.addChild(O),B.addChild(G),I.addChild(N),I.addChild(D),I.addChild(B),this._setContrasPrevColor(0,0,0);var k=(new i).setStyleClass(r.PickerInputField),V=(new i).setStyleClass(r.PickerInputField),z=(new i).setStyleClass(r.PickerInputField),U=new i(i.SPAN).setStyleClass(r.Label).setProperty("innerHTML","H"),H=new i(i.SPAN).setStyleClass(r.Label).setProperty("innerHTML","S"),F=new i(i.SPAN).setStyleClass(r.Label).setProperty("innerHTML","V");k.addChildren(U,E.getNode()),V.addChildren(H,P.getNode()),z.addChildren(F,C.getNode());var W=(new i).setStyleClass(r.PickerInputField),X=(new i).setStyleClass(r.PickerInputField),Y=(new i).setStyleClass(r.PickerInputField),K=new i(i.SPAN).setStyleClass(r.Label).setProperty("innerHTML","R"),j=new i(i.SPAN).setStyleClass(r.Label).setProperty("innerHTML","G"),Z=new i(i.SPAN).setStyleClass(r.Label).setProperty("innerHTML","B");W.addChildren(K,L.getNode()),X.addChildren(j,M.getNode()),Y.addChildren(Z,R.getNode()),f.addChildren(W,k,X,V,Y,z,B);var q=new i;q.setStyleClass(r.PickerInputWrap);var Q=this._inputHEX=new i(i.INPUT_TEXT),J=(new i).setStyleClass(r.PickerInputField),tt=new i(i.SPAN).setStyleClass(r.Label);tt.setProperty("innerHTML","#"),J.addChildren(tt,Q),q.addChild(J),Q.addEventListener(l.CHANGE,this._onInputHEXFinish.bind(this)),s.setProperty("innerHTML","Color Picker"),u.addChild(c),n.addChild(u),a.addChild(s),n.addChild(a),e.addChild(n),e.addChild(h),h.addChild(p),h.addChild(d),h.addChild(f),h.addChild(q),h.addChild(I),p.addChild(y),d.addChild(_);var te=l.MOUSE_DOWN,tn=this._onCanvasFieldMouseDown.bind(this);p.addEventListener(te,tn),y.addEventListener(te,tn),tn=this._onCanvasSliderMouseDown.bind(this),d.addEventListener(te,tn),_.addEventListener(te,tn),c.addEventListener(te,this._onClose.bind(this)),D.addEventListener(te,this._onPick.bind(this)),N.addEventListener(te,this._onClose.bind(this)),n.addEventListener(l.MOUSE_DOWN,this._onHeadDragStart.bind(this)),this._parentNode=t,this._mouseOffset=[0,0],this._position=[null,null],this._canvasSliderPos=[0,0],this._canvasFieldPos=[0,0],this._handleFieldSize=12,this._handleSliderHeight=7,this._imageDataSlider=$.createImageData(g.width,g.height),this._imageDataField=v.createImageData(m.width,m.height),this._valueHueMinMax=[0,360],this._valueSatMinMax=this._valueValMinMax=[0,100],this._valueRGBMinMax=[0,255],this._valueHue=200,this._valueSat=50,this._valueVal=50,this._valueR=0,this._valueG=0,this._valueB=0,this._valueHEX="#000000",this._valueHEXValid=this._valueHEX,this._callbackPick=function(){},this._drawCanvasField(),this._drawCanvasSlider(),this._setColorHSV(this._valueHue,this._valueSat,this._valueVal),this._updateColorRGBFromHSV(),this._updateColorHEXFromRGB(),this._updateHandles()}h.prototype={_drawHandleField:function(){var t=this._canvasField,e=this._canvasFieldPos,n=a.get().getPosition(),i=Math.max(0,Math.min(n[0]-e[0],t.width)),r=Math.max(0,Math.min(n[1]-e[1],t.height)),o=i/t.width,s=r/t.height,u=Math.round(o*this._valueSatMinMax[1]),l=Math.round((1-s)*this._valueValMinMax[1]);this._setColorHSV(this._valueHue,u,l),this._updateColorRGBFromHSV(),this._updateColorHEXFromRGB(),this._updateHandleField()},_updateHandleField:function(){var t=this._canvasField.width,e=this._canvasField.height,n=.25*this._handleFieldSize,i=this._valueSat/this._valueSatMinMax[1],r=this._valueVal/this._valueValMinMax[1];this._handleField.setPositionGlobal(i*t-n,(1-r)*e-n)},_drawHandleSlider:function(){var t=this._canvasSlider,e=this._canvasSliderPos[1],n=Math.floor((1-Math.max(0,Math.min(a.get().getY()-e,t.height))/t.height)*this._valueHueMinMax[1]);this._setColorHSV(n,this._valueSat,this._valueVal),this._updateColorRGBFromHSV(),this._updateColorHEXFromRGB(),this._updateHandleSlider()},_updateHandleSlider:function(){var t=this._canvasSlider.height,e=.25*this._handleSliderHeight,n=this._valueHue/this._valueHueMinMax[1];this._handleSlider.setPositionGlobalY((t-e)*(1-n))},_updateHandles:function(){this._updateHandleField(),this._updateHandleSlider()},_setHue:function(t){var e=this._valueHueMinMax;this._valueHue=t==e[1]?e[0]:t,this._updateColorHSV(),this._drawCanvasField()},_setSat:function(t){this._valueSat=Math.round(t),this._updateColorHSV()},_setVal:function(t){this._valueVal=Math.round(t),this._updateColorHSV()},_setR:function(t){this._valueR=Math.round(t),this._updateColorRGB()},_setG:function(t){this._valueG=Math.round(t),this._updateColorRGB()},_setB:function(t){this._valueB=Math.round(t),this._updateColorRGB()},_onInputHueChange:function(){var t=this._inputHue,e=this._getValueContrained(t,this._valueHueMinMax),n=this._valueHueMinMax;e==n[1]&&(e=n[0],t.setValue(e)),this._setHue(e),this._updateColorRGBFromHSV(),this._updateColorHEXFromRGB(),this._updateHandleSlider(),this._drawCanvasField()},_onInputSatChange:function(){this._setSat(this._getValueContrained(this._inputSat,this._valueSatMinMax)),this._onInputSVChange()},_onInputValChange:function(){this._setVal(this._getValueContrained(this._inputVal,this._valueValMinMax)),this._onInputSVChange()},_onInputRChange:function(){this._setR(this._getValueContrained(this._inputR,this._valueRGBMinMax)),this._onInputRGBChange()},_onInputGChange:function(){this._setG(this._getValueContrained(this._inputG,this._valueRGBMinMax)),this._onInputRGBChange()},_onInputBChange:function(){this._setB(this._getValueContrained(this._inputB,this._valueRGBMinMax)),this._onInputRGBChange()},_onInputHEXFinish:function(){var t=this._inputHEX,e=t.getProperty("value");s.isValidHEX(e)?(this._valueHEX=this._valueHEXValid=e,this._updateColorFromHEX()):t.setProperty("value",this._valueHEXValid)},_onInputSVChange:function(){this._updateColorRGBFromHSV(),this._updateColorHEXFromRGB(),this._updateHandleField()},_onInputRGBChange:function(){this._updateColorHSVFromRGB(),this._updateColorHEXFromRGB(),this._updateHandles()},_getValueContrained:function(t,e){var n=Math.round(t.getValue()),i=e[0],r=e[1];return n<=i&&(n=i,t.setValue(n)),n>=r&&(n=r,t.setValue(n)),n},_updateInputHue:function(){this._inputHue.setValue(this._valueHue)},_updateInputSat:function(){this._inputSat.setValue(this._valueSat)},_updateInputVal:function(){this._inputVal.setValue(this._valueVal)},_updateInputR:function(){this._inputR.setValue(this._valueR)},_updateInputG:function(){this._inputG.setValue(this._valueG)},_updateInputB:function(){this._inputB.setValue(this._valueB)},_updateInputHEX:function(){this._inputHEX.setProperty("value",this._valueHEX)},_setColorHSV:function(t,e,n){this._valueHue=t,this._valueSat=e,this._valueVal=n,this._updateInputHue(),this._updateInputSat(),this._updateInputVal(),this._updateContrastCurrColor()},_setColorRGB:function(t,e,n){this._valueR=t,this._valueG=e,this._valueB=n,this._updateInputR(),this._updateInputG(),this._updateInputB(),this._updateContrastCurrColor()},_setColorHEX:function(t){this._valueHEX=t,this._updateInputHEX()},_updateColorHSV:function(){this._setColorHSV(this._valueHue,this._valueSat,this._valueVal),this._updateContrastCurrColor()},_updateColorRGB:function(){this._setColorRGB(this._valueR,this._valueG,this._valueB),this._updateContrastCurrColor()},_updateColorHSVFromRGB:function(){var t=s.RGB2HSV(this._valueR,this._valueG,this._valueB);this._setColorHSV(t[0],t[1],t[2])},_updateColorRGBFromHSV:function(){var t=s.HSV2RGB(this._valueHue,this._valueSat,this._valueVal);this._setColorRGB(t[0],t[1],t[2])},_updateColorHEXFromRGB:function(){var t=s.RGB2HEX(this._valueR,this._valueG,this._valueB);this._setColorHEX(t)},_updateColorFromHEX:function(){var t=s.HEX2RGB(this._valueHEX);this._setColorRGB(t[0],t[1],t[2]),this._updateColorHSVFromRGB(),this._updateHandles()},_updateContrastCurrColor:function(){this._setContrastCurrColor(this._valueR,this._valueG,this._valueB)},_updateContrastPrevColor:function(){this._setContrasPrevColor(this._valueR,this._valueG,this._valueB)},_setContrastCurrColor:function(t,e,n){this._colorCurrNode.setStyleProperty("background","rgb("+t+","+e+","+n+")")},_setContrasPrevColor:function(t,e,n){this._colorPrevNode.setStyleProperty("background","rgb("+t+","+e+","+n+")")},_onHeadDragStart:function(){var t=this._node,e=this._parentNode,n=t.getPositionGlobal(),i=a.get().getPosition(),r=this._mouseOffset;r[0]=i[0]-n[0],r[1]=i[1]-n[1];var o=u.MOUSE_MOVE,s=u.MOUSE_UP,l=this,h=function(){l._updatePosition(),l._updateCanvasNodePositions()},c=function(){l._updateCanvasNodePositions(),document.removeEventListener(o,h,!1),document.removeEventListener(s,c,!1)};e.removeChild(t),e.addChild(t),document.addEventListener(o,h,!1),document.addEventListener(s,c,!1),this._updateCanvasNodePositions()},_updatePosition:function(){var t=a.get().getPosition(),e=this._mouseOffset,n=t[0]-e[0],i=t[1]-e[1],r=this._node,o=this._headNode,s=this._position,u=window.innerWidth-r.getWidth(),l=window.innerHeight-o.getHeight();s[0]=Math.max(0,Math.min(n,u)),s[1]=Math.max(0,Math.min(i,l)),r.setPositionGlobal(s[0],s[1])},_drawCanvasField:function(){for(var t,e=this._canvasField,n=this._contextCanvasField,i=e.width,r=e.height,o=1/i,a=1/r,u=this._imageDataField,l=[],h=0,c=this._valueHue,p=-1;++p<r;)for(t=-1;++t<i;)l=s.HSV2RGB(c,t*o*100,100*(1-p*a)),h=4*(p*i+t),u.data[h]=l[0],u.data[h+1]=l[1],u.data[h+2]=l[2],u.data[h+3]=255;n.putImageData(u,0,0)},_drawCanvasSlider:function(){for(var t,e=this._canvasSlider,n=this._contextCanvasSlider,i=e.width,r=e.height,o=1/r,a=this._imageDataSlider,u=[],l=0,h=-1;++h<r;)for(t=-1;++t<i;)u=s.HSV2RGB(360*(1-h*o),100,100),l=4*(h*i+t),a.data[l]=u[0],a.data[l+1]=u[1],a.data[l+2]=u[2],a.data[l+3]=255;n.putImageData(a,0,0)},_onCanvasFieldMouseDown:function(){var t=u.MOUSE_MOVE,e=u.MOUSE_UP,n=this,i=function(){n._drawHandleField()},r=function(){document.removeEventListener(t,i,!1),document.removeEventListener(e,r,!1)};document.addEventListener(t,i,!1),document.addEventListener(e,r,!1),n._drawHandleField()},_onCanvasSliderMouseDown:function(){var t=u.MOUSE_MOVE,e=u.MOUSE_UP,n=this,i=function(){n._drawHandleSlider(),n._drawCanvasField()},r=function(){document.removeEventListener(t,i,!1),document.removeEventListener(e,r,!1),n._drawCanvasField()};document.addEventListener(t,i,!1),document.addEventListener(e,r,!1),n._drawHandleSlider(),n._drawCanvasField()},_setSizeCanvasField:function(t,e){var n=this._canvasField;n.style.width=t+"px",n.style.height=e+"px",n.width=t,n.height=e},_setSizeCanvasSlider:function(t,e){var n=this._canvasSlider;n.style.width=t+"px",n.style.height=e+"px",n.width=t,n.height=e},open:function(){var t=this._node;this._parentNode.addChild(t);var e=this._position;null===e[0]||null===e[1]?(e[0]=.5*window.innerWidth-.5*t.getWidth(),e[1]=.5*window.innerHeight-.5*t.getHeight()):(e[0]=Math.max(0,Math.min(e[0],window.innerWidth-t.getWidth())),e[1]=Math.max(0,Math.min(e[1],window.innerHeight-t.getHeight()))),t.setPositionGlobal(e[0],e[1]),this._updateCanvasNodePositions()},close:function(){this._parentNode.removeChild(this._node)},_onClose:function(t){t.cancelBubble=!0,this.close()},_onPick:function(){this._callbackPick(),this.close()},_updateCanvasNodePositions:function(){var t=this._canvasSliderPos,e=this._canvasFieldPos;t[0]=t[1]=0,e[0]=e[1]=0;for(var n=this._canvasSlider;n;)t[0]+=n.offsetLeft,t[1]+=n.offsetTop,n=n.offsetParent;for(n=this._canvasField;n;)e[0]+=n.offsetLeft,e[1]+=n.offsetTop,n=n.offsetParent},setCallbackPick:function(t){this._callbackPick=t},setColorHEX:function(t){this._setColorHEX(t),this._updateColorFromHEX(),this._setColor()},setColorRGB:function(t,e,n){this._setColorRGB(t,e,n),this._updateColorHEXFromRGB(),this._updateColorHSVFromRGB(),this._setColor()},setColorRGBfv:function(t,e,n){this.setColorRGB(Math.floor(255*t),Math.floor(255*e),Math.floor(255*n))},setColorHSV:function(t,e,n){this._setColorHSV(t,e,n),this._updateColorRGBFromHSV(),this._updateColorHEXFromRGB(),this._setColor()},_setColor:function(){this._drawCanvasField(),this._drawCanvasSlider(),this._updateHandles(),this._setContrasPrevColor(this._valueR,this._valueG,this._valueB)},getR:function(){return this._valueR},getG:function(){return this._valueG},getB:function(){return this._valueB},getRGB:function(){return[this._valueR,this._valueG,this._valueB]},getHue:function(){return this._valueHue},getSat:function(){return this._valueSat},getVal:function(){return this._valueVal},getHSV:function(){return[this._valueHue,this._valueSat,this._valueVal]},getHEX:function(){return this._valueHEX},getRGBfv:function(){return[this._valueR/255,this._valueG/255,this._valueB/255]},getNode:function(){return this._node}},h.setup=function(t){return h._instance=new h(t)},h.get=function(){return h._instance},h.destroy=function(){h._instance=null},t.exports=h},function(t,e,n){var i=n(29),r=n(8),o=n(64),a=n(7),s=n(12),u=n(15);function l(t,e,n,s){i.apply(this,arguments),(s=s||{}).onChange=s.onChange||this._onChange,s.step=s.step||1,s.dp=null!=s.dp?s.dp:2,this._onChange=s.onChange;var u=this._step=s.step,l=this._dp=s.dp,h=new r,c=this._inputMin=new o(u,l,this.pushHistoryState.bind(this),this._onInputMinChange.bind(this)),p=new r,d=this._inputMax=new o(u,l,this.pushHistoryState.bind(this),this._onInputMaxChange.bind(this)),f=(new r).setStyleClass(a.Wrap),m=(new r).setStyleClass(a.Wrap),g=(new r).setStyleClass(a.Wrap),v=(new r).setStyleClass(a.Wrap);h.setStyleClass(a.Label).setProperty("innerHTML","MIN"),p.setStyleClass(a.Label).setProperty("innerHTML","MAX");var $=this._obj[this._key];c.setValue($[0]),d.setValue($[1]);var y=this._wrapNode;f.addChild(h),m.addChild(c.getNode()),g.addChild(p),v.addChild(d.getNode()),y.addChild(f),y.addChild(m),y.addChild(g),y.addChild(v)}l.prototype=Object.create(i.prototype),l.prototype.constructor=l,l.prototype._onInputChange=function(){this.dispatchEvent(new s(this,u.VALUE_UPDATED,null)),this._onChange()},l.prototype._updateValueMin=function(){var t=this._obj[this._key],e=this._inputMin,n=e.getValue();n>=this._inputMax.getValue()?e.setValue(t[0]):t[0]=n},l.prototype._updateValueMax=function(){var t=this._obj[this._key],e=this._inputMax,n=e.getValue();n<=this._inputMin.getValue()?e.setValue(t[1]):t[1]=n},l.prototype.onValueUpdate=function(t){if(t.data.origin!=this){t.data.origin;var e=this._obj,n=this._key;this._inputMin.setValue(e[n][0]),this._inputMax.setValue(e[n][1])}},l.prototype.setValue=function(t){var e=this._obj,n=this._key;e[n][0]=t[0],e[n][1]=t[1],this.dispatchEvent(new s(this,u.VALUE_UPDATED,null))},l.prototype._onInputMinChange=function(){this._updateValueMin(),this._onInputChange()},l.prototype._onInputMaxChange=function(){this._updateValueMax(),this._onInputChange()},t.exports=l},function(t,e){t.exports={RGB:"rgb",HSV:"hsv",HEX:"hex",RGBfv:"rgbfv"}},function(t,e,n){var i=n(29),r=n(8),o=n(7),a=n(59),s=n(83),u=n(25),l=n(12),h=n(16),c=n(14),p=n(15);function d(t,e,n,l){i.apply(this,arguments),(l=l||{}).onChange=l.onChange||this._onChange,l.presets=l.presets||null,this._onChange=l.onChange;var h=this._input=new r(r.INPUT_TEXT),d=this._wrapNode,f=l.presets;if(f){var m=new r;m.setStyleClass(o.WrapInputWPreset),d.addChild(m),m.addChild(h);var g=a.get(),v=new s(this._wrapNode),$=function(){g.clear(),v.deactivate()},y=this;v.setOnActive(function(){g.build(f,h.getProperty("value"),h,function(){h.setProperty("value",f[g.getSelectedIndex()]),y.pushHistoryState(),y.applyValue()},$,u.PADDING_PRESET,!1)}),v.setOnDeactive($)}else d.addChild(h);h.setProperty("value",this._obj[this._key]),h.addEventListener(c.KEY_UP,this._onInputKeyUp.bind(this)),h.addEventListener(c.CHANGE,this._onInputChange.bind(this)),h.addEventListener(c.MOUSE_DOWN,this._onInputDragStart.bind(this)),this.addEventListener(p.INPUT_SELECT_DRAG,this._parent,"onComponentSelectDrag")}d.prototype=Object.create(i.prototype),d.prototype.constructor=d,d.prototype._onInputKeyUp=function(t){this._keyIsChar(t.keyCode)&&this.pushHistoryState(),this.applyValue(),this._onChange()},d.prototype._onInputChange=function(t){this._keyIsChar(t.keyCode)&&this.pushHistoryState(),this.applyValue()},d.prototype._keyIsChar=function(t){return 17!=t&&18!=t&&20!=t&&37!=t&&38!=t&&39!=t&&40!=t&&16!=t},d.prototype.applyValue=function(){this._obj[this._key]=this._input.getProperty("value"),this.dispatchEvent(new l(this,p.VALUE_UPDATED,null))},d.prototype.onValueUpdate=function(t){t.data.origin!=this&&this._input.setProperty("value",this._obj[this._key])},d.prototype._onInputDragStart=function(){var t=h.MOUSE_MOVE,e=h.MOUSE_UP,n=p.INPUT_SELECT_DRAG,i=this,r=function(){i.dispatchEvent(new l(this,n,null))},o=function(){i.dispatchEvent(new l(this,n,null)),document.removeEventListener(t,r,!1),document.removeEventListener(t,o,!1)};this.dispatchEvent(new l(this,n,null)),document.addEventListener(t,r,!1),document.addEventListener(e,o,!1)},d.prototype.update=function(){this.onValueUpdate({data:{}})},t.exports=d},function(t,e){t.exports={UPDATE_MENU:"updateMenu"}},function(t,e,n){var i=n(85),r=n(8),o=n(7),a=n(180),s=n(42),u=n(25),l=n(16),h=n(15),c=n(14),p=n(179),d=n(178),f=n(65);function m(t,e,n,s){if((s=s||{}).showMinMaxLabels=void 0===s.showMinMaxLabels||s.showMinMaxLabels,i.apply(this,arguments),"function"!=typeof e[n])throw new p(e,n);var u=e[n].length;if(u>2||0==u)throw new d;var m=this._svgRoot,g=this._path,v=this._axes=m.insertBefore(this._createSVGObject("path"),g);v.style.strokeWidth=1;var $=this._axesLabels=m.insertBefore(this._createSVGObject("path"),g);$.style.stroke="rgb(43,48,51)",$.style.strokeWidth=1;var y=this._grid,_=this._svg,x=Number(_.getAttribute("width")),b=new r;b.setStyleClass(o.GraphSliderXWrap);var w=new r;w.setStyleClass(o.GraphSliderYWrap);var A=this._sliderXTrack=new r;A.setStyleClass(o.GraphSliderX);var T=this._sliderYTrack=new r;T.setStyleClass(o.GraphSliderY);var S=this._sliderXHandle=new r;S.setStyleClass(o.GraphSliderXHandle);var E=this._sliderYHandle=new r;E.setStyleClass(o.GraphSliderYHandle),A.addChild(S),T.addChild(E),b.addChild(A),w.addChild(T);var P=this._wrapNode,C=this._plotMode=1==u?a.NON_IMPLICIT:a.IMPLICIT;if(C==a.IMPLICIT){var L=this._canvas=document.createElement("canvas");L.style.width=L.style.height=x+"px",L.width=L.height=x,P.getElement().insertBefore(L,_),this._canvasContext=L.getContext("2d"),this._canvasImageData=this._canvasContext.getImageData(0,0,x,x),v.style.stroke="rgba(255,255,255,0.75)",y.style.stroke="rgba(25,25,25,0.75)"}else v.style.stroke="rgb(54,60,64)",y.style.stroke="rgb(25,25,25)";P.addChild(b),P.addChild(w),S.addEventListener(c.MOUSE_DOWN,this._onSliderXHandleDown.bind(this)),E.addEventListener(c.MOUSE_DOWN,this._onSliderYHandleDown.bind(this));var M=this._units=[null,null];this._scale=null,C==a.NON_IMPLICIT?(M[0]=1,M[1]=1,this._scale=10):C==a.IMPLICIT&&(M[0]=.25,M[1]=.25,this._scale=1),this._unitsMinMax=[.15,4],this._scaleMinMax=[.02,25],this._center=[Math.round(.5*x),Math.round(.5*x)],this._svgPos=[0,0],this._func=null,this.setFunction(this._obj[this._key]),this._sliderXHandleUpdate(),this._sliderYHandleUpdate(),_.addEventListener(l.MOUSE_DOWN,this._onDragStart.bind(this),!1),this._wrapNode.getElement().addEventListener("mousewheel",this._onScale.bind(this,!1)),f.get().addEventListener(h.UPDATE_VALUE,this,"onValueUpdate")}m.prototype=Object.create(i.prototype),m.prototype.constructor=m,m.prototype._updateCenter=function(){var t=this._svg,e=Number(t.getAttribute("width")),n=Number(t.getAttribute("height")),i=s.get().getPosition(),r=this._svgPos,o=this._center;o[0]=Math.max(0,Math.min(i[0]-r[0],e)),o[1]=Math.max(0,Math.min(i[1]-r[1],n)),this._plotGraph()},m.prototype._onDragStart=function(t){var e=this._svgPos;e[0]=0,e[1]=0;for(var n=this._svg.parentNode;n;)e[0]+=n.offsetLeft,e[1]+=n.offsetTop,n=n.offsetParent;var i=l.MOUSE_MOVE,r=l.MOUSE_UP,o=this._updateCenter.bind(this),a=(function(){this._updateCenter.bind(this),document.removeEventListener(i,o,!1),document.removeEventListener(r,a,!1)}).bind(this);document.addEventListener(i,o,!1),document.addEventListener(r,a,!1),this._updateCenter()},m.prototype._onScale=function(t){t=window.event||t,this._scale+=-1*Math.max(-1,Math.min(1,t.wheelDelta||-t.detail));var e=this._scaleMinMax;this._scale=Math.max(e[0],Math.min(this._scale,e[1])),this._plotGraph(),t.preventDefault()},m.prototype.onValueUpdate=function(){this.setFunction(this._obj[this._key])},m.prototype._redraw=function(){if(this._plotMode==a.IMPLICIT){var t=this._wrapNode.getWidth(),e=this._canvas;e.style.width=e.style.height=t+"px",e.width=e.height=t,this._canvasImageData=this._canvasContext.getImageData(0,0,t,t)}this._sliderXHandleUpdate(),this._sliderYHandleUpdate(),this.setFunction(this._obj[this._key])},m.prototype.setFunction=function(t){this._func=t.bind(this._obj),this._plotGraph()},m.prototype._plotGraph=function(){this._drawGrid(),this._drawAxes(),this._drawPlot()},m.prototype._drawAxes=function(){var t=this._svg,e=Number(t.getAttribute("width")),n=Number(t.getAttribute("height")),i=this._center,r=i[0],o=i[1],a="";a+=this._pathCmdLine(0,o,e,o),a+=this._pathCmdLine(r,0,r,n),this._axes.setAttribute("d",a)},m.prototype._drawPlot=function(){var t,e,n,i,r,o,s,u,l,h,c=this._center,p=c[0],d=c[1],f=this._units,m=this._scale;if(this._plotMode==a.NON_IMPLICIT){var g=this._svg;t=Number(g.getAttribute("width")),e=Number(g.getAttribute("height")),n=f[0]*m,i=e/(f[1]*m),u=p/t;var v=Math.floor(t),$=Array(2*v);for(h=-1;++h<v;)r=(h/v-u)*n,o=d-this._func(r)*i,$[s=2*h]=h,$[s+1]=o;var y="";for(y+=this._pathCmdMoveTo($[0],$[1]),h=2;h<$.length;)y+=this._pathCmdLineTo($[h],$[h+1]),h+=2;this._path.setAttribute("d",y)}else{var _=this._canvas,x=this._canvasContext,b=this._canvasImageData;t=_.width,e=_.height,n=f[0]*m,i=f[1]*m,u=p/t,l=d/e;var w,A=1/t,T=1/e,S=[0,0,0],E=[30,34,36],P=[255,255,255];for(h=-1;++h<e;)for(w=-1;++w<t;)o=this._func((w*A-u)*n,(h*T-l)*i),S[0]=Math.floor((P[0]-E[0])*o+E[0]),S[1]=Math.floor((P[1]-E[1])*o+E[1]),S[2]=Math.floor((P[2]-E[2])*o+E[2]),s=4*(h*t+w),b.data[s]=S[0],b.data[s+1]=S[1],b.data[s+2]=S[2],b.data[s+3]=255;x.clearRect(0,0,t,e),x.putImageData(b,0,0)}},m.prototype._drawGrid=function(){var t,e,n=this._svg,i=Number(n.getAttribute("width")),r=Number(n.getAttribute("height")),o=this._scale,a=this._units,s=i/(a[0]*o),l=r/(a[1]*o),h=this._center,c=h[0],p=h[1],d=Math.round(p/l)+1,f=Math.round((r-p)/l)+1,m=Math.round(c/s)+1,g=Math.round((i-c)/s)+1,v="",$="",y=u.STROKE_SIZE,_=u.FUNCTION_PLOTTER_LABEL_TICK_SIZE,x=i-_-y,b=r-_-y,w=x-_,A=b-_,T=x-2*(_+y),S=b-2*(_+y);for(t=-1;++t<d;)e=Math.round(p-l*t),v+=this._pathCmdLine(0,e,i,e),e>_&&($+=this._pathCmdLine(x,e,w,e));for(t=-1;++t<f;)e=Math.round(p+l*t),v+=this._pathCmdLine(0,e,i,e),e<S&&($+=this._pathCmdLine(x,e,w,e));for(t=-1;++t<m;)e=Math.round(c-s*t),v+=this._pathCmdLine(e,0,e,r),e>_&&($+=this._pathCmdLine(e,b,e,A));for(t=-1;++t<g;)e=Math.round(c+s*t),v+=this._pathCmdLine(e,0,e,r),e<T&&($+=this._pathCmdLine(e,b,e,A));this._grid.setAttribute("d",v),this._axesLabels.setAttribute("d",$)},m.prototype._sliderXStep=function(t){var e=t[0],n=this._sliderXHandle,i=.5*n.getWidth(),r=this._sliderXTrack,o=r.getWidth(),a=r.getPositionGlobalX(),s=o-i-2*u.STROKE_SIZE,l=Math.max(i,Math.min(e-a,s));n.setPositionX(l-i);var h=this._unitsMinMax[0],c=h+(this._unitsMinMax[1]-h)*((l-i)/(s-i));this._units[0]=c,this._plotGraph()},m.prototype._sliderYStep=function(t){var e=t[1],n=this._sliderYHandle,i=.5*n.getHeight(),r=this._sliderYTrack,o=r.getHeight(),a=r.getPositionGlobalY(),s=o-i-2,u=Math.max(i,Math.min(e-a,s));n.setPositionY(u-i);var l=this._unitsMinMax[0],h=this._unitsMinMax[1];this._units[1]=h+(u-i)/(s-i)*(l-h),this._plotGraph()},m.prototype._onSliderXHandleDown=function(){this._onSliderHandleDown(this._sliderXStep.bind(this))},m.prototype._onSliderYHandleDown=function(){this._onSliderHandleDown(this._sliderYStep.bind(this))},m.prototype._onSliderHandleDown=function(t){var e=l.MOUSE_MOVE,n=l.MOUSE_UP,i=s.get(),r=function(){t(i.getPosition())},o=function(){document.removeEventListener(e,r,!1),document.removeEventListener(n,o,!1)};t(i.getPosition()),document.addEventListener(e,r,!1),document.addEventListener(n,o,!1)},m.prototype._sliderXHandleUpdate=function(){var t=this._unitsMinMax[0],e=this._unitsMinMax[1],n=this._units[0],i=this._sliderXHandle,r=.5*i.getWidth(),o=r,a=this._sliderXTrack.getWidth()-r-2*u.STROKE_SIZE;i.setPositionX(o+(n-t)/(e-t)*(a-o)-r)},m.prototype._sliderYHandleUpdate=function(){var t=this._unitsMinMax[0],e=this._unitsMinMax[1],n=this._units[1],i=this._sliderYHandle,r=.5*i.getHeight(),o=this._sliderYTrack.getHeight()-r-2*u.STROKE_SIZE;i.setPositionY(o+(n-t)/(e-t)*(r-o)-r)},t.exports=m},function(t,e){t.exports={STATE_PUSH:"historyStatePush",STATE_POP:"historyStatePop"}},function(t,e,n){var i=n(36),r=n(8),o=n(88);function a(t,e){i.apply(this,arguments),(e=e||{}).height=e.height||null,e.enable=void 0===e.enable||e.enable,this._parent=t,this._height=e.height,this._enabled=e.enable,this._scrollBar=null,this._node=new r(r.LIST_ITEM),this._wrapNode=new r,this._listNode=new r(r.LIST),this._parent.getList().addChild(this._node)}a.prototype=Object.create(i.prototype),a.prototype.constructor=a,a.prototype.addScrollWrap=function(){var t=this._wrapNode,e=this.getMaxHeight();this._scrollBar=new o(t,this._listNode,e),this.isEnabled()&&t.setHeight(e)},a.prototype.preventSelectDrag=function(){this._parent.preventSelectDrag(),this.hasScrollWrap()&&(this._wrapNode.getElement().scrollTop=0)},a.prototype.hasMaxHeight=function(){return null!=this._height},a.prototype.getMaxHeight=function(){return this._height},a.prototype.hasScrollWrap=function(){return null!=this._scrollBar},a.prototype.hasLabel=function(){return null!=this._lablNode},a.prototype.disable=function(){this._enabled=!1,this._updateAppearance()},a.prototype.enable=function(){this._enabled=!0,this._updateAppearance()},a.prototype.isDisabled=function(){return!this._enabled},a.prototype.isEnabled=function(){return this._enabled},a.prototype.getList=function(){return this._listNode},t.exports=a},function(t,e){t.exports=function(t){"string"==typeof t&&(t=[t]);for(var e=[].slice.call(arguments,1),n=[],i=0;i<t.length-1;i++)n.push(t[i],e[i]||"");return n.push(t[i]),n.join("")}},function(t,e){t.exports=Math.scale||function(t,e,n,i,r){return 0===arguments.length||t!=t||e!=e||n!=n||i!=i||r!=r?NaN:t===1/0||t===-1/0?t:(t-e)*(r-i)/(n-e)+i}},function(t,e,n){var i=n(44);t.exports=function(t,e){var n=[];return i(t,!1,n.push,n,e),n}},function(t,e,n){var i=n(61),r=n(131);t.exports=function(t){return function(){if(i(this)!=t)throw TypeError(t+"#toJSON isn't generic");return r(this)}}},function(t,e,n){var i=n(50),r=n(23),o=n(62).f;t.exports=function(t){return function(e){for(var n,a=r(e),s=i(a),u=s.length,l=0,h=[];u>l;)o.call(a,n=s[l++])&&h.push(t?[n,a[n]]:a[n]);return h}}},function(t,e,n){var i=n(9),r=n(106),o=n(33);t.exports=function(t,e,n,a){var s=String(o(t)),u=s.length,l=void 0===n?" ":String(n),h=i(e);if(h<=u||""==l)return s;var c=h-u,p=r.call(l,Math.ceil(c/l.length));return p.length>c&&(p=p.slice(0,c)),a?p+s:s+p}},function(t,e,n){"use strict";var i=n(79),r=n(5),o=n(9),a=n(28),s=n(6)("isConcatSpreadable");t.exports=function t(e,n,u,l,h,c,p,d){for(var f,m,g=h,v=0,$=!!p&&a(p,d,3);v<l;){if(v in u){if(f=$?$(u[v],v,n):u[v],m=!1,r(f)&&(m=void 0!==(m=f[s])?!!m:i(f)),m&&c>0)g=t(e,n,f,o(f.length),g,c-1)-1;else{if(g>=9007199254740991)throw TypeError();e[g]=f}g++}v++}return g}},function(t,e,n){var i=n(47),r=n(80),o=n(2),a=n(3).Reflect;t.exports=a&&a.ownKeys||function(t){var e=i.f(o(t)),n=r.f;return n?e.concat(n(t)):e}},function(t,e,n){var i=n(32),r=n(9);t.exports=function(t){if(void 0===t)return 0;var e=i(t),n=r(e);if(e!==n)throw RangeError("Wrong length!");return n}},function(t,e,n){"use strict";var i=n(43),r=n(41).getWeak,o=n(2),a=n(5),s=n(45),u=n(44),l=n(30),h=n(24),c=n(55),p=l(5),d=l(6),f=0,m=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},v=function(t,e){return p(t.a,function(t){return t[0]===e})};g.prototype={get:function(t){var e=v(this,t);if(e)return e[1]},has:function(t){return!!v(this,t)},set:function(t,e){var n=v(this,t);n?n[1]=e:this.a.push([t,e])},delete:function(t){var e=d(this.a,function(e){return e[0]===t});return~e&&this.a.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,n,o){var l=t(function(t,i){s(t,l,e,"_i"),t._t=e,t._i=f++,t._l=void 0,null!=i&&u(i,n,t[o],t)});return i(l.prototype,{delete:function(t){if(!a(t))return!1;var n=r(t);return!0===n?m(c(this,e)).delete(t):n&&h(n,this._i)&&delete n[this._i]},has:function(t){if(!a(t))return!1;var n=r(t);return!0===n?m(c(this,e)).has(t):n&&h(n,this._i)}}),l},def:function(t,e,n){var i=r(o(e),!0);return!0===i?m(t).set(e,n):i[t._i]=n,t},ufstore:m}},function(t,e,n){"use strict";var i,r=n(30)(0),o=n(19),a=n(41),s=n(158),u=n(138),l=n(5),h=n(4),c=n(55),p=a.getWeak,d=Object.isExtensible,f=u.ufstore,m={},g=function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},v={get:function(t){if(l(t)){var e=p(t);return!0===e?f(c(this,"WeakMap")).get(t):e?e[this._i]:void 0}},set:function(t,e){return u.def(c(this,"WeakMap"),t,e)}},$=t.exports=n(72)("WeakMap",g,v,u,!0,!0);h(function(){return 7!=(new $).set((Object.freeze||Object)(m),7).get(m)})&&(s((i=u.getConstructor(g,"WeakMap")).prototype,v),a.NEED=!0,r(["delete","has","get","set"],function(t){var e=$.prototype,n=e[t];o(e,t,function(e,r){if(l(e)&&!d(e)){this._f||(this._f=new i);var o=this._f[t](e,r);return"set"==t?this:o}return n.call(this,e,r)})}))},function(t,e,n){"use strict";var i=n(141),r=n(55);t.exports=n(72)("Set",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return i.def(r(this,"Set"),t=0===t?0:t,t)}},i)},function(t,e,n){"use strict";var i=n(10).f,r=n(48),o=n(43),a=n(28),s=n(45),u=n(44),l=n(102),h=n(146),c=n(46),p=n(11),d=n(41).fastKey,f=n(55),m=p?"_s":"size",g=function(t,e){var n,i=d(e);if("F"!==i)return t._i[i];for(n=t._f;n;n=n.n)if(n.k==e)return n};t.exports={getConstructor:function(t,e,n,l){var h=t(function(t,i){s(t,h,e,"_i"),t._t=e,t._i=r(null),t._f=void 0,t._l=void 0,t[m]=0,null!=i&&u(i,n,t[l],t)});return o(h.prototype,{clear:function(){for(var t=f(this,e),n=t._i,i=t._f;i;i=i.n)i.r=!0,i.p&&(i.p=i.p.n=void 0),delete n[i.i];t._f=t._l=void 0,t[m]=0},delete:function(t){var n=f(this,e),i=g(n,t);if(i){var r=i.n,o=i.p;delete n._i[i.i],i.r=!0,o&&(o.n=r),r&&(r.p=o),n._f==i&&(n._f=r),n._l==i&&(n._l=o),n[m]--}return!!i},forEach:function(t){f(this,e);for(var n,i=a(t,arguments.length>1?arguments[1]:void 0,3);n=n?n.n:this._f;)for(i(n.v,n.k,this);n&&n.r;)n=n.p},has:function(t){return!!g(f(this,e),t)}}),p&&i(h.prototype,"size",{get:function(){return f(this,e)[m]}}),h},def:function(t,e,n){var i,r,o=g(t,e);return o?o.v=n:(t._l=o={i:r=d(e,!0),k:e,v:n,p:i=t._l,n:void 0,r:!1},t._f||(t._f=o),i&&(i.n=o),t[m]++,"F"!==r&&(t._i[r]=o)),t},getEntry:g,setStrong:function(t,e,n){l(t,e,function(t,n){this._t=f(t,e),this._k=n,this._l=void 0},function(){for(var t=this._k,e=this._l;e&&e.r;)e=e.p;return this._t&&(this._l=e=e?e.n:this._t._f)?h(0,"keys"==t?e.k:"values"==t?e.v:[e.k,e.v]):(this._t=void 0,h(1))},n?"entries":"values",!n,!0),c(e)}}},function(t,e,n){"use strict";var i=n(141),r=n(55);t.exports=n(72)("Map",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{get:function(t){var e=i.getEntry(r(this,"Map"),t);return e&&e.v},set:function(t,e){return i.def(r(this,"Map"),0===t?0:t,e)}},i,!0)},function(t,e,n){var i=n(2),r=n(5),o=n(90);t.exports=function(t,e){if(i(t),r(e)&&e.constructor===t)return e;var n=o.f(t);return(0,n.resolve)(e),n.promise}},function(t,e){t.exports=function(t){try{return{e:!1,v:t()}}catch(e){return{e:!0,v:e}}}},function(t,e,n){n(11)&&"g"!=/./g.flags&&n(10).f(RegExp.prototype,"flags",{configurable:!0,get:n(76)})},function(t,e){t.exports=function(t,e){return{value:e,done:!!t}}},function(t,e,n){"use strict";var i=n(13),r=n(49),o=n(9);t.exports=[].copyWithin||function(t,e){var n=i(this),a=o(n.length),s=r(t,a),u=r(e,a),l=arguments.length>2?arguments[2]:void 0,h=Math.min((void 0===l?a:r(l,a))-u,a-s),c=1;for(u<s&&s<u+h&&(c=-1,u+=h-1,s+=h-1);h-- >0;)u in n?n[s]=n[u]:delete n[s],s+=c,u+=c;return n}},function(t,e,n){var i=n(17),r=n(13),o=n(63),a=n(9);t.exports=function(t,e,n,s,u){i(e);var l=r(t),h=o(l),c=a(l.length),p=u?c-1:0,d=u?-1:1;if(n<2)for(;;){if(p in h){s=h[p],p+=d;break}if(p+=d,u?p<0:c<=p)throw TypeError("Reduce of empty array with no initial value")}for(;u?p>=0:c>p;p+=d)p in h&&(s=e(s,h[p],p,l));return s}},function(t,e,n){var i=n(2);t.exports=function(t,e,n,r){try{return r?e(i(n)[0],n[1]):e(n)}catch(o){var a=t.return;throw void 0!==a&&i(a.call(t)),o}}},function(t,e,n){var i=n(105),r=Math.pow,o=r(2,-52),a=r(2,-23),s=r(2,127)*(2-a),u=r(2,-126);t.exports=Math.fround||function(t){var e,n,r,l=Math.abs(t),h=i(t);return l<u?h*((r=l/u/a)+1/o-1/o)*u*a:(n=(e=(1+a/o)*l)-(e-l))>s||n!=n?h*(1/0):h*n}},function(t,e){t.exports=Math.log1p||function(t){return(t=+t)>-.00000001&&t<1e-8?t-t*t/2:Math.log(1+t)}},function(t,e,n){var i=n(5),r=Math.floor;t.exports=function(t){return!i(t)&&isFinite(t)&&r(t)===t}},function(t,e,n){var i=n(27);t.exports=function(t,e){if("number"!=typeof t&&"Number"!=i(t))throw TypeError(e);return+t}},function(t,e,n){var i=n(3).parseFloat,r=n(57).trim;t.exports=1/i(n(108)+"-0")!=-1/0?function(t){var e=r(String(t),3),n=i(e);return 0===n&&"-"==e.charAt(0)?-0:n}:i},function(t,e,n){var i=n(3).parseInt,r=n(57).trim,o=n(108),a=/^[-+]?0[xX]/;t.exports=8!==i(o+"08")||22!==i(o+"0x16")?function(t,e){var n=r(String(t),3);return i(n,e>>>0||(a.test(n)?16:10))}:i},function(t,e){t.exports=function(t,e,n){var i=void 0===n;switch(e.length){case 0:return i?t():t.call(n);case 1:return i?t(e[0]):t.call(n,e[0]);case 2:return i?t(e[0],e[1]):t.call(n,e[0],e[1]);case 3:return i?t(e[0],e[1],e[2]):t.call(n,e[0],e[1],e[2]);case 4:return i?t(e[0],e[1],e[2],e[3]):t.call(n,e[0],e[1],e[2],e[3])}return t.apply(n,e)}},function(t,e,n){"use strict";var i=n(17),r=n(5),o=n(156),a=[].slice,s={};t.exports=Function.bind||function(t){var e=i(this),n=a.call(arguments,1),u=function(){var i=n.concat(a.call(arguments));return this instanceof u?function(t,e,n){if(!(e in s)){for(var i=[],r=0;r<e;r++)i[r]="a["+r+"]";s[e]=Function("F,a","return new F("+i.join(",")+")")}return s[e](t,n)}(e,i.length,i):o(e,i,t)};return r(e.prototype)&&(u.prototype=e.prototype),u}},function(t,e,n){"use strict";var i=n(50),r=n(80),o=n(62),a=n(13),s=n(63),u=Object.assign;t.exports=!u||n(4)(function(){var t={},e={},n=Symbol(),i="abcdefghijklmnopqrst";return t[n]=7,i.split("").forEach(function(t){e[t]=t}),7!=u({},t)[n]||Object.keys(u({},e)).join("")!=i})?function(t,e){for(var n=a(t),u=arguments.length,l=1,h=r.f,c=o.f;u>l;)for(var p,d=s(arguments[l++]),f=h?i(d).concat(h(d)):i(d),m=f.length,g=0;m>g;)c.call(d,p=f[g++])&&(n[p]=d[p]);return n}:u},function(t,e,n){var i=n(23),r=n(47).f,o={}.toString,a="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];t.exports.f=function(t){return a&&"[object Window]"==o.call(t)?function(t){try{return r(t)}catch(e){return a.slice()}}(t):r(i(t))}},function(t,e,n){var i=n(10),r=n(2),o=n(50);t.exports=n(11)?Object.defineProperties:function(t,e){r(t);for(var n,a=o(e),s=a.length,u=0;s>u;)i.f(t,n=a[u++],e[n]);return t}},function(t,e,n){var i=n(24),r=n(23),o=n(81)(!1),a=n(112)("IE_PROTO");t.exports=function(t,e){var n,s=r(t),u=0,l=[];for(n in s)n!=a&&i(s,n)&&l.push(n);for(;e.length>u;)i(s,n=e[u++])&&(~o(l,n)||l.push(n));return l}},function(t,e,n){e.f=n(6)},function(t,e,n){t.exports=!n(11)&&!n(4)(function(){return 7!=Object.defineProperty(n(114)("div"),"a",{get:function(){return 7}}).a})},function(t,e){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(n=window)}t.exports=n},function(t,e,n){"use strict";n.r(e);var i=n(0);i.k._gsDefine("TweenMax",["core.Animation","core.SimpleTimeline","TweenLite"],function(){var t=function(t){var e,n=[],i=t.length;for(e=0;e!==i;n.push(t[e++]));return n},e=function(t,e,n){var i,r,o=t.cycle;for(i in o)r=o[i],t[i]="function"==typeof r?r(n,e[n]):r[n%r.length];delete t.cycle},n=function(t,e,r){i.l.call(this,t,e,r),this._cycle=0,this._yoyo=!0===this.vars.yoyo||!!this.vars.yoyoEase,this._repeat=this.vars.repeat||0,this._repeatDelay=this.vars.repeatDelay||0,this._repeat&&this._uncache(!0),this.render=n.prototype.render},r=i.l._internals,o=r.isSelector,a=r.isArray,s=n.prototype=i.l.to({},.1,{}),u=[];n.version="2.0.2",s.constructor=n,s.kill()._gc=!1,n.killTweensOf=n.killDelayedCallsTo=i.l.killTweensOf,n.getTweensOf=i.l.getTweensOf,n.lagSmoothing=i.l.lagSmoothing,n.ticker=i.l.ticker,n.render=i.l.render,s.invalidate=function(){return this._yoyo=!0===this.vars.yoyo||!!this.vars.yoyoEase,this._repeat=this.vars.repeat||0,this._repeatDelay=this.vars.repeatDelay||0,this._yoyoEase=null,this._uncache(!0),i.l.prototype.invalidate.call(this)},s.updateTo=function(t,e){var n,r=this.ratio,o=this.vars.immediateRender||t.immediateRender;for(n in e&&this._startTime<this._timeline._time&&(this._startTime=this._timeline._time,this._uncache(!1),this._gc?this._enabled(!0,!1):this._timeline.insert(this,this._startTime-this._delay)),t)this.vars[n]=t[n];if(this._initted||o){if(e)this._initted=!1,o&&this.render(0,!0,!0);else if(this._gc&&this._enabled(!0,!1),this._notifyPluginsOfEnabled&&this._firstPT&&i.l._onPluginEvent("_onDisable",this),this._time/this._duration>.998){var a=this._totalTime;this.render(0,!0,!1),this._initted=!1,this.render(a,!0,!1)}else if(this._initted=!1,this._init(),this._time>0||o)for(var s,u=1/(1-r),l=this._firstPT;l;)s=l.s+l.c,l.c*=u,l.s=s-l.c,l=l._next}return this},s.render=function(t,e,n){this._initted||0===this._duration&&this.vars.repeat&&this.invalidate();var o,a,s,u,l,h,c,p,d,f=this._dirty?this.totalDuration():this._totalDuration,m=this._time,g=this._totalTime,v=this._cycle,$=this._duration,y=this._rawPrevTime;if(t>=f-1e-7&&t>=0?(this._totalTime=f,this._cycle=this._repeat,this._yoyo&&0!=(1&this._cycle)?(this._time=0,this.ratio=this._ease._calcEnd?this._ease.getRatio(0):0):(this._time=$,this.ratio=this._ease._calcEnd?this._ease.getRatio(1):1),this._reversed||(o=!0,a="onComplete",n=n||this._timeline.autoRemoveChildren),0===$&&(this._initted||!this.vars.lazy||n)&&(this._startTime===this._timeline._duration&&(t=0),(y<0||t<=0&&t>=-.0000001||1e-10===y&&"isPause"!==this.data)&&y!==t&&(n=!0,y>1e-10&&(a="onReverseComplete")),this._rawPrevTime=p=!e||t||y===t?t:1e-10)):t<1e-7?(this._totalTime=this._time=this._cycle=0,this.ratio=this._ease._calcEnd?this._ease.getRatio(0):0,(0!==g||0===$&&y>0)&&(a="onReverseComplete",o=this._reversed),t<0&&(this._active=!1,0===$&&(this._initted||!this.vars.lazy||n)&&(y>=0&&(n=!0),this._rawPrevTime=p=!e||t||y===t?t:1e-10)),this._initted||(n=!0)):(this._totalTime=this._time=t,0!==this._repeat&&(u=$+this._repeatDelay,this._cycle=this._totalTime/u>>0,0!==this._cycle&&this._cycle===this._totalTime/u&&g<=t&&this._cycle--,this._time=this._totalTime-this._cycle*u,this._yoyo&&0!=(1&this._cycle)&&(this._time=$-this._time,(d=this._yoyoEase||this.vars.yoyoEase)&&(this._yoyoEase||(!0!==d||this._initted?this._yoyoEase=d=!0===d?this._ease:d instanceof i.b?d:i.b.map[d]:(d=this.vars.ease,this._yoyoEase=d=d?d instanceof i.b?d:"function"==typeof d?new i.b(d,this.vars.easeParams):i.b.map[d]||i.l.defaultEase:i.l.defaultEase)),this.ratio=d?1-d.getRatio(($-this._time)/$):0)),this._time>$?this._time=$:this._time<0&&(this._time=0)),this._easeType&&!d?(l=this._time/$,(1===(h=this._easeType)||3===h&&l>=.5)&&(l=1-l),3===h&&(l*=2),1===(c=this._easePower)?l*=l:2===c?l*=l*l:3===c?l*=l*l*l:4===c&&(l*=l*l*l*l),1===h?this.ratio=1-l:2===h?this.ratio=l:this._time/$<.5?this.ratio=l/2:this.ratio=1-l/2):d||(this.ratio=this._ease.getRatio(this._time/$))),m!==this._time||n||v!==this._cycle){if(!this._initted){if(this._init(),!this._initted||this._gc)return;if(!n&&this._firstPT&&(!1!==this.vars.lazy&&this._duration||this.vars.lazy&&!this._duration))return this._time=m,this._totalTime=g,this._rawPrevTime=y,this._cycle=v,r.lazyTweens.push(this),void(this._lazy=[t,e]);!this._time||o||d?o&&this._ease._calcEnd&&!d&&(this.ratio=this._ease.getRatio(0===this._time?0:1)):this.ratio=this._ease.getRatio(this._time/$)}for(!1!==this._lazy&&(this._lazy=!1),this._active||!this._paused&&this._time!==m&&t>=0&&(this._active=!0),0===g&&(2===this._initted&&t>0&&this._init(),this._startAt&&(t>=0?this._startAt.render(t,!0,n):a||(a="_dummyGS")),this.vars.onStart&&(0===this._totalTime&&0!==$||e||this._callback("onStart"))),s=this._firstPT;s;)s.f?s.t[s.p](s.c*this.ratio+s.s):s.t[s.p]=s.c*this.ratio+s.s,s=s._next;this._onUpdate&&(t<0&&this._startAt&&this._startTime&&this._startAt.render(t,!0,n),e||(this._totalTime!==g||a)&&this._callback("onUpdate")),this._cycle!==v&&(e||this._gc||this.vars.onRepeat&&this._callback("onRepeat")),a&&(this._gc&&!n||(t<0&&this._startAt&&!this._onUpdate&&this._startTime&&this._startAt.render(t,!0,n),o&&(this._timeline.autoRemoveChildren&&this._enabled(!1,!1),this._active=!1),!e&&this.vars[a]&&this._callback(a),0===$&&1e-10===this._rawPrevTime&&1e-10!==p&&(this._rawPrevTime=0)))}else g!==this._totalTime&&this._onUpdate&&(e||this._callback("onUpdate"))},n.to=function(t,e,i){return new n(t,e,i)},n.from=function(t,e,i){return i.runBackwards=!0,i.immediateRender=0!=i.immediateRender,new n(t,e,i)},n.fromTo=function(t,e,i,r){return r.startAt=i,r.immediateRender=0!=r.immediateRender&&0!=i.immediateRender,new n(t,e,r)},n.staggerTo=n.allTo=function(r,s,l,h,c,p,d){h=h||0;var f,m,g,v,$=0,y=[],_=function(){l.onComplete&&l.onComplete.apply(l.onCompleteScope||this,arguments),c.apply(d||l.callbackScope||this,p||u)},x=l.cycle,b=l.startAt&&l.startAt.cycle;for(a(r)||("string"==typeof r&&(r=i.l.selector(r)||r),o(r)&&(r=t(r))),r=r||[],h<0&&((r=t(r)).reverse(),h*=-1),f=r.length-1,g=0;g<=f;g++){for(v in m={},l)m[v]=l[v];if(x&&(e(m,r,g),null!=m.duration&&(s=m.duration,delete m.duration)),b){for(v in b=m.startAt={},l.startAt)b[v]=l.startAt[v];e(m.startAt,r,g)}m.delay=$+(m.delay||0),g===f&&c&&(m.onComplete=_),y[g]=new n(r[g],s,m),$+=h}return y},n.staggerFrom=n.allFrom=function(t,e,i,r,o,a,s){return i.runBackwards=!0,i.immediateRender=0!=i.immediateRender,n.staggerTo(t,e,i,r,o,a,s)},n.staggerFromTo=n.allFromTo=function(t,e,i,r,o,a,s,u){return r.startAt=i,r.immediateRender=0!=r.immediateRender&&0!=i.immediateRender,n.staggerTo(t,e,r,o,a,s,u)},n.delayedCall=function(t,e,i,r,o){return new n(e,0,{delay:t,onComplete:e,onCompleteParams:i,callbackScope:r,onReverseComplete:e,onReverseCompleteParams:i,immediateRender:!1,useFrames:o,overwrite:0})},n.set=function(t,e){return new n(t,0,e)},n.isTweening=function(t){return i.l.getTweensOf(t,!0).length>0};var l=function(t,e){for(var n=[],r=0,o=t._first;o;)o instanceof i.l?n[r++]=o:(e&&(n[r++]=o),r=(n=n.concat(l(o,e))).length),o=o._next;return n},h=n.getAllTweens=function(t){return l(i.a._rootTimeline,t).concat(l(i.a._rootFramesTimeline,t))};n.killAll=function(t,e,n,r){null==e&&(e=!0),null==n&&(n=!0);var o,a,s,u=h(0!=r),l=u.length,c=e&&n&&r;for(s=0;s<l;s++)a=u[s],(c||a instanceof i.i||(o=a.target===a.vars.onComplete)&&n||e&&!o)&&(t?a.totalTime(a._reversed?0:a.totalDuration()):a._enabled(!1,!1))},n.killChildTweensOf=function(e,s){if(null!=e){var u,l,h,c,p,d=r.tweenLookup;if("string"==typeof e&&(e=i.l.selector(e)||e),o(e)&&(e=t(e)),a(e))for(c=e.length;--c>-1;)n.killChildTweensOf(e[c],s);else{for(h in u=[],d)for(l=d[h].target.parentNode;l;)l===e&&(u=u.concat(d[h].tweens)),l=l.parentNode;for(p=u.length,c=0;c<p;c++)s&&u[c].totalTime(u[c].totalDuration()),u[c]._enabled(!1,!1)}}};var c=function(t,e,n,r){e=!1!==e,n=!1!==n;for(var o,a,s=h(r=!1!==r),u=e&&n&&r,l=s.length;--l>-1;)a=s[l],(u||a instanceof i.i||(o=a.target===a.vars.onComplete)&&n||e&&!o)&&a.paused(t)};return n.pauseAll=function(t,e,n){c(!0,t,e,n)},n.resumeAll=function(t,e,n){c(!1,t,e,n)},n.globalTimeScale=function(t){var e=i.a._rootTimeline,n=i.l.ticker.time;return arguments.length?(t=t||1e-10,e._startTime=n-(n-e._startTime)*e._timeScale/t,e=i.a._rootFramesTimeline,n=i.l.ticker.frame,e._startTime=n-(n-e._startTime)*e._timeScale/t,e._timeScale=i.a._rootTimeline._timeScale=t,t):e._timeScale},s.progress=function(t,e){return arguments.length?this.totalTime(this.duration()*(this._yoyo&&0!=(1&this._cycle)?1-t:t)+this._cycle*(this._duration+this._repeatDelay),e):this._time/this.duration()},s.totalProgress=function(t,e){return arguments.length?this.totalTime(this.totalDuration()*t,e):this._totalTime/this.totalDuration()},s.time=function(t,e){return arguments.length?(this._dirty&&this.totalDuration(),t>this._duration&&(t=this._duration),this._yoyo&&0!=(1&this._cycle)?t=this._duration-t+this._cycle*(this._duration+this._repeatDelay):0!==this._repeat&&(t+=this._cycle*(this._duration+this._repeatDelay)),this.totalTime(t,e)):this._time},s.duration=function(t){return arguments.length?i.a.prototype.duration.call(this,t):this._duration},s.totalDuration=function(t){return arguments.length?-1===this._repeat?this:this.duration((t-this._repeat*this._repeatDelay)/(this._repeat+1)):(this._dirty&&(this._totalDuration=-1===this._repeat?999999999999:this._duration*(this._repeat+1)+this._repeatDelay*this._repeat,this._dirty=!1),this._totalDuration)},s.repeat=function(t){return arguments.length?(this._repeat=t,this._uncache(!0)):this._repeat},s.repeatDelay=function(t){return arguments.length?(this._repeatDelay=t,this._uncache(!0)):this._repeatDelay},s.yoyo=function(t){return arguments.length?(this._yoyo=t,this):this._yoyo},n},!0);var r=i.m.TweenMax;i.k._gsDefine("plugins.CSSPlugin",["plugins.TweenPlugin","TweenLite"],function(){var t,e,n,r,o,a,s=function(){i.j.call(this,"css"),this._overwriteProps.length=0,this.setRatio=s.prototype.setRatio},u=i.k._gsDefine.globals,l={},h=s.prototype=new i.j("css");h.constructor=s,s.version="2.0.2",s.API=2,s.defaultTransformPerspective=0,s.defaultSkewType="compensated",s.defaultSmoothOrigin=!0,h="px",s.suffixMap={top:h,right:h,bottom:h,left:h,width:h,height:h,fontSize:h,padding:h,margin:h,perspective:h,lineHeight:""};var c,p,d,f,m,g,v,$,y=/(?:\-|\.|\b)(\d|\.|e\-)+/g,_=/(?:\d|\-\d|\.\d|\-\.\d|\+=\d|\-=\d|\+=.\d|\-=\.\d)+/g,x=/(?:\+=|\-=|\-|\b)[\d\-\.]+[a-zA-Z0-9]*(?:%|\b)/gi,b=/(?![+-]?\d*\.?\d+|[+-]|e[+-]\d+)[^0-9]/g,w=/(?:\d|\-|\+|=|#|\.)*/g,A=/opacity *= *([^)]*)/i,T=/opacity:([^;]*)/i,S=/alpha\(opacity *=.+?\)/i,E=/^(rgb|hsl)/,P=/([A-Z])/g,C=/-([a-z])/gi,L=/(^(?:url\(\"|url\())|(?:(\"\))$|\)$)/gi,M=function(t,e){return e.toUpperCase()},R=/(?:Left|Right|Width)/i,I=/(M11|M12|M21|M22)=[\d\-\.e]+/gi,D=/progid\:DXImageTransform\.Microsoft\.Matrix\(.+?\)/i,N=/,(?=[^\)]*(?:\(|$))/gi,B=/[\s,\(]/i,O=Math.PI/180,G=180/Math.PI,k={},V={style:{}},z=i.k.document||{createElement:function(){return V}},U=function(t,e){return z.createElementNS?z.createElementNS(e||"http://www.w3.org/1999/xhtml",t):z.createElement(t)},H=U("div"),F=U("img"),W=s._internals={_specialProps:l},X=(i.k.navigator||{}).userAgent||"",Y=(o=X.indexOf("Android"),a=U("a"),m=(d=-1!==X.indexOf("Safari")&&-1===X.indexOf("Chrome")&&(-1===o||parseFloat(X.substr(o+8,2))>3))&&6>parseFloat(X.substr(X.indexOf("Version/")+8,2)),f=-1!==X.indexOf("Firefox"),(/MSIE ([0-9]{1,}[\.0-9]{0,})/.exec(X)||/Trident\/.*rv:([0-9]{1,}[\.0-9]{0,})/.exec(X))&&(g=parseFloat(RegExp.$1)),!!a&&(a.style.cssText="top:1px;opacity:.55;",/^0.55/.test(a.style.opacity))),K=function(t){return A.test("string"==typeof t?t:(t.currentStyle?t.currentStyle.filter:t.style.filter)||"")?parseFloat(RegExp.$1)/100:1},j=function(t){i.k.console&&console.log(t)},Z="",q="",Q=function(t,e){var n,i,r=(e=e||H).style;if(void 0!==r[t])return t;for(t=t.charAt(0).toUpperCase()+t.substr(1),n=["O","Moz","ms","Ms","Webkit"],i=5;--i>-1&&void 0===r[n[i]+t];);return i>=0?(Z="-"+(q=3===i?"ms":n[i]).toLowerCase()+"-",q+t):null},J=("undefined"!=typeof window?window:z.defaultView||{getComputedStyle:function(){}}).getComputedStyle,tt=s.getStyle=function(t,e,n,i,r){var o;return Y||"opacity"!==e?(!i&&t.style[e]?o=t.style[e]:(n=n||J(t))?o=n[e]||n.getPropertyValue(e)||n.getPropertyValue(e.replace(P,"-$1").toLowerCase()):t.currentStyle&&(o=t.currentStyle[e]),null==r||o&&"none"!==o&&"auto"!==o&&"auto auto"!==o?o:r):K(t)},te=W.convertToPixels=function(t,e,n,r,o){if("px"===r||!r&&"lineHeight"!==e)return n;if("auto"===r||!n)return 0;var a,u,l,h=R.test(e),c=t,p=H.style,d=n<0,f=1===n;if(d&&(n=-n),f&&(n*=100),"lineHeight"!==e||r){if("%"===r&&-1!==e.indexOf("border"))a=n/100*(h?t.clientWidth:t.clientHeight);else{if(p.cssText="border:0 solid red;position:"+tt(t,"position")+";line-height:0;","%"!==r&&c.appendChild&&"v"!==r.charAt(0)&&"rem"!==r)p[h?"borderLeftWidth":"borderTopWidth"]=n+r;else{if(-1!==tt(c=t.parentNode||z.body,"display").indexOf("flex")&&(p.position="absolute"),u=c._gsCache,l=i.l.ticker.frame,u&&h&&u.time===l)return u.width*n/100;p[h?"width":"height"]=n+r}c.appendChild(H),a=parseFloat(H[h?"offsetWidth":"offsetHeight"]),c.removeChild(H),h&&"%"===r&&!1!==s.cacheWidths&&((u=c._gsCache=c._gsCache||{}).time=l,u.width=a/n*100),0!==a||o||(a=te(t,e,n,r,!0))}}else u=J(t).lineHeight,t.style.lineHeight=n,a=parseFloat(J(t).lineHeight),t.style.lineHeight=u;return f&&(a/=100),d?-a:a},tn=W.calculateOffset=function(t,e,n){if("absolute"!==tt(t,"position",n))return 0;var i="left"===e?"Left":"Top",r=tt(t,"margin"+i,n);return t["offset"+i]-(te(t,e,parseFloat(r),r.replace(w,""))||0)},ti=function(t,e){var n,i,r,o={};if(e=e||J(t,null)){if(n=e.length)for(;--n>-1;)-1!==(r=e[n]).indexOf("-transform")&&t1!==r||(o[r.replace(C,M)]=e.getPropertyValue(r));else for(n in e)-1!==n.indexOf("Transform")&&tM!==n||(o[n]=e[n])}else if(e=t.currentStyle||t.style)for(n in e)"string"==typeof n&&void 0===o[n]&&(o[n.replace(C,M)]=e[n]);return Y||(o.opacity=K(t)),i=t2(t,e,!1),o.rotation=i.rotation,o.skewX=i.skewX,o.scaleX=i.scaleX,o.scaleY=i.scaleY,o.x=i.x,o.y=i.y,t3&&(o.z=i.z,o.rotationX=i.rotationX,o.rotationY=i.rotationY,o.scaleZ=i.scaleZ),o.filters&&delete o.filters,o},tr=function(t,e,n,i,r){var o,a,s,u={},l=t.style;for(a in n)"cssText"!==a&&"length"!==a&&isNaN(a)&&(e[a]!==(o=n[a])||r&&r[a])&&-1===a.indexOf("Origin")&&("number"!=typeof o&&"string"!=typeof o||(u[a]="auto"!==o||"left"!==a&&"top"!==a?""!==o&&"auto"!==o&&"none"!==o||"string"!=typeof e[a]||""===e[a].replace(b,"")?o:0:tn(t,a),void 0!==l[a]&&(s=new ty(l,a,l[a],s))));if(i)for(a in i)"className"!==a&&(u[a]=i[a]);return{difs:u,firstMPT:s}},to={width:["Left","Right"],height:["Top","Bottom"]},ta=["marginLeft","marginRight","marginTop","marginBottom"],ts=function(t,e,n){if("svg"===(t.nodeName+"").toLowerCase())return(n||J(t))[e]||0;if(t.getCTM&&tV(t))return t.getBBox()[e]||0;var i=parseFloat("width"===e?t.offsetWidth:t.offsetHeight),r=to[e],o=r.length;for(n=n||J(t,null);--o>-1;)i-=parseFloat(tt(t,"padding"+r[o],n,!0))||0,i-=parseFloat(tt(t,"border"+r[o]+"Width",n,!0))||0;return i},tu=function(t,e){if("contain"===t||"auto"===t||"auto auto"===t)return t+" ";null!=t&&""!==t||(t="0 0");var n,i=t.split(" "),r=-1!==t.indexOf("left")?"0%":-1!==t.indexOf("right")?"100%":i[0],o=-1!==t.indexOf("top")?"0%":-1!==t.indexOf("bottom")?"100%":i[1];if(i.length>3&&!e){for(i=t.split(", ").join(",").split(","),t=[],n=0;n<i.length;n++)t.push(tu(i[n]));return t.join(",")}return null==o?o="center"===r?"50%":"0":"center"===o&&(o="50%"),("center"===r||isNaN(parseFloat(r))&&-1===(r+"").indexOf("="))&&(r="50%"),t=r+" "+o+(i.length>2?" "+i[2]:""),e&&(e.oxp=-1!==r.indexOf("%"),e.oyp=-1!==o.indexOf("%"),e.oxr="="===r.charAt(1),e.oyr="="===o.charAt(1),e.ox=parseFloat(r.replace(b,"")),e.oy=parseFloat(o.replace(b,"")),e.v=t),e||t},tl=function(t,e){return"function"==typeof t&&(t=t($,v)),"string"==typeof t&&"="===t.charAt(1)?parseInt(t.charAt(0)+"1",10)*parseFloat(t.substr(2)):parseFloat(t)-parseFloat(e)||0},th=function(t,e){"function"==typeof t&&(t=t($,v));var n="string"==typeof t&&"="===t.charAt(1);return"string"==typeof t&&"v"===t.charAt(t.length-2)&&(t=(n?t.substr(0,2):0)+window["inner"+("vh"===t.substr(-2)?"Height":"Width")]*(parseFloat(n?t.substr(2):t)/100)),null==t?e:n?parseInt(t.charAt(0)+"1",10)*parseFloat(t.substr(2))+e:parseFloat(t)||0},tc=function(t,e,n,i){var r,o,a,s,u;return"function"==typeof t&&(t=t($,v)),null==t?s=e:"number"==typeof t?s=t:(r=360,o=t.split("_"),a=((u="="===t.charAt(1))?parseInt(t.charAt(0)+"1",10)*parseFloat(o[0].substr(2)):parseFloat(o[0]))*(-1===t.indexOf("rad")?1:G)-(u?0:e),o.length&&(i&&(i[n]=e+a),-1!==t.indexOf("short")&&(a%=r)!=a%180&&(a=a<0?a+r:a-r),-1!==t.indexOf("_cw")&&a<0?a=(a+9999999999*r)%r-(a/r|0)*r:-1!==t.indexOf("ccw")&&a>0&&(a=(a-9999999999*r)%r-(a/r|0)*r)),s=e+a),s<1e-6&&s>-.000001&&(s=0),s},tp={aqua:[0,255,255],lime:[0,255,0],silver:[192,192,192],black:[0,0,0],maroon:[128,0,0],teal:[0,128,128],blue:[0,0,255],navy:[0,0,128],white:[255,255,255],fuchsia:[255,0,255],olive:[128,128,0],yellow:[255,255,0],orange:[255,165,0],gray:[128,128,128],purple:[128,0,128],green:[0,128,0],red:[255,0,0],pink:[255,192,203],cyan:[0,255,255],transparent:[255,255,255,0]},td=function(t,e,n){return 255*(6*(t=t<0?t+1:t>1?t-1:t)<1?e+(n-e)*t*6:t<.5?n:3*t<2?e+(n-e)*(2/3-t)*6:e)+.5|0},tf=s.parseColor=function(t,e){var n,i,r,o,a,s,u,l,h,c,p;if(t){if("number"==typeof t)n=[t>>16,t>>8&255,255&t];else{if(","===t.charAt(t.length-1)&&(t=t.substr(0,t.length-1)),tp[t])n=tp[t];else if("#"===t.charAt(0))4===t.length&&(t="#"+(i=t.charAt(1))+i+(r=t.charAt(2))+r+(o=t.charAt(3))+o),n=[(t=parseInt(t.substr(1),16))>>16,t>>8&255,255&t];else if("hsl"===t.substr(0,3)){if(n=p=t.match(y),e){if(-1!==t.indexOf("="))return t.match(_)}else a=Number(n[0])%360/360,s=Number(n[1])/100,i=2*(u=Number(n[2])/100)-(r=u<=.5?u*(s+1):u+s-u*s),n.length>3&&(n[3]=Number(n[3])),n[0]=td(a+1/3,i,r),n[1]=td(a,i,r),n[2]=td(a-1/3,i,r)}else n=t.match(y)||tp.transparent;n[0]=Number(n[0]),n[1]=Number(n[1]),n[2]=Number(n[2]),n.length>3&&(n[3]=Number(n[3]))}}else n=tp.black;return e&&!p&&(i=n[0]/255,u=((l=Math.max(i,r=n[1]/255,o=n[2]/255))+(h=Math.min(i,r,o)))/2,l===h?a=s=0:(c=l-h,s=u>.5?c/(2-l-h):c/(l+h),a=l===i?(r-o)/c+(r<o?6:0):l===r?(o-i)/c+2:(i-r)/c+4,a*=60),n[0]=a+.5|0,n[1]=100*s+.5|0,n[2]=100*u+.5|0),n},tm=function(t,e){var n,i,r,o=t.match(tg)||[],a=0,s="";if(!o.length)return t;for(n=0;n<o.length;n++)i=o[n],a+=(r=t.substr(a,t.indexOf(i,a)-a)).length+i.length,3===(i=tf(i,e)).length&&i.push(1),s+=r+(e?"hsla("+i[0]+","+i[1]+"%,"+i[2]+"%,"+i[3]:"rgba("+i.join(","))+")";return s+t.substr(a)},tg="(?:\\b(?:(?:rgb|rgba|hsl|hsla)\\(.+?\\))|\\B#(?:[0-9a-f]{3}){1,2}\\b";for(h in tp)tg+="|"+h+"\\b";tg=RegExp(tg+")","gi"),s.colorStringFilter=function(t){var e,n=t[0]+" "+t[1];tg.test(n)&&(e=-1!==n.indexOf("hsl(")||-1!==n.indexOf("hsla("),t[0]=tm(t[0],e),t[1]=tm(t[1],e)),tg.lastIndex=0},i.l.defaultStringFilter||(i.l.defaultStringFilter=s.colorStringFilter);var tv=function(t,e,n,i){if(null==t)return function(t){return t};var r,o=e?(t.match(tg)||[""])[0]:"",a=t.split(o).join("").match(x)||[],s=t.substr(0,t.indexOf(a[0])),u=")"===t.charAt(t.length-1)?")":"",l=-1!==t.indexOf(" ")?" ":",",h=a.length,c=h>0?a[0].replace(y,""):"";return h?r=e?function(t){var e,p,d,f;if("number"==typeof t)t+=c;else if(i&&N.test(t)){for(f=t.replace(N,"|").split("|"),d=0;d<f.length;d++)f[d]=r(f[d]);return f.join(",")}if(e=(t.match(tg)||[o])[0],d=(p=t.split(e).join("").match(x)||[]).length,h>d--)for(;++d<h;)p[d]=n?p[(d-1)/2|0]:a[d];return s+p.join(l)+l+e+u+(-1!==t.indexOf("inset")?" inset":"")}:function(t){var e,o,p;if("number"==typeof t)t+=c;else if(i&&N.test(t)){for(o=t.replace(N,"|").split("|"),p=0;p<o.length;p++)o[p]=r(o[p]);return o.join(",")}if(p=(e=t.match(x)||[]).length,h>p--)for(;++p<h;)e[p]=n?e[(p-1)/2|0]:a[p];return s+e.join(l)+u}:function(t){return t}},t$=function(t){return t=t.split(","),function(e,n,i,r,o,a,s){var u,l=(n+"").split(" ");for(s={},u=0;u<4;u++)s[t[u]]=l[u]=l[u]||l[(u-1)/2>>0];return r.parse(e,s,o,a)}},ty=(W._setPluginRatio=function(t){this.plugin.setRatio(t);for(var e,n,i,r,o,a=this.data,s=a.proxy,u=a.firstMPT;u;)e=s[u.v],u.r?e=u.r(e):e<1e-6&&e>-.000001&&(e=0),u.t[u.p]=e,u=u._next;if(a.autoRotate&&(a.autoRotate.rotation=a.mod?a.mod.call(this._tween,s.rotation,this.t,this._tween):s.rotation),1===t||0===t)for(u=a.firstMPT,o=1===t?"e":"b";u;){if((n=u.t).type){if(1===n.type){for(r=n.xs0+n.s+n.xs1,i=1;i<n.l;i++)r+=n["xn"+i]+n["xs"+(i+1)];n[o]=r}}else n[o]=n.s+n.xs0;u=u._next}},function(t,e,n,i,r){this.t=t,this.p=e,this.v=n,this.r=r,i&&(i._prev=this,this._next=i)}),t_=(W._parseToProxy=function(t,e,n,i,r,o){var a,s,u,l,h,c=i,p={},d={},f=n._transform,m=k;for(n._transform=null,k=e,i=h=n.parse(t,e,i,r),k=m,o&&(n._transform=f,c&&(c._prev=null,c._prev&&(c._prev._next=null)));i&&i!==c;){if(i.type<=1&&(d[s=i.p]=i.s+i.c,p[s]=i.s,o||(l=new ty(i,"s",s,l,i.r),i.c=0),1===i.type))for(a=i.l;--a>0;)u="xn"+a,d[s=i.p+"_"+u]=i.data[u],p[s]=i[u],o||(l=new ty(i,u,s,l,i.rxp[u]));i=i._next}return{proxy:p,end:d,firstMPT:l,pt:h}},W.CSSPropTween=function(e,n,i,o,a,s,u,l,h,c,p){this.t=e,this.p=n,this.s=i,this.c=o,this.n=u||n,e instanceof t_||r.push(this.n),this.r=l?"function"==typeof l?l:Math.round:l,this.type=s||0,h&&(this.pr=h,t=!0),this.b=void 0===c?i:c,this.e=void 0===p?i+o:p,a&&(this._next=a,a._prev=this)}),t8=function(t,e,n,i,r,o){var a=new t_(t,e,n,i-n,r,-1,o);return a.b=n,a.e=a.xs0=i,a},tx=s.parseComplex=function(t,e,n,i,r,o,a,u,l,h){n=n||o||"","function"==typeof i&&(i=i($,v)),a=new t_(t,e,0,0,a,h?2:1,null,!1,u,n,i),i+="",r&&tg.test(i+n)&&(i=[n,i],s.colorStringFilter(i),n=i[0],i=i[1]);var p,d,f,m,g,x,b,w,A,T,S,E,P,C=n.split(", ").join(",").split(" "),L=i.split(", ").join(",").split(" "),M=C.length,R=!1!==c;for(-1===i.indexOf(",")&&-1===n.indexOf(",")||(-1!==(i+n).indexOf("rgb")||-1!==(i+n).indexOf("hsl")?(C=C.join(" ").replace(N,", ").split(" "),L=L.join(" ").replace(N,", ").split(" ")):(C=C.join(" ").split(",").join(", ").split(" "),L=L.join(" ").split(",").join(", ").split(" ")),M=C.length),M!==L.length&&(M=(C=(o||"").split(" ")).length),a.plugin=l,a.setRatio=h,tg.lastIndex=0,p=0;p<M;p++)if(m=C[p],g=L[p]+"",(w=parseFloat(m))||0===w)a.appendXtra("",w,tl(g,w),g.replace(_,""),!(!R||-1===g.indexOf("px"))&&Math.round,!0);else if(r&&tg.test(m))E=")"+((E=g.indexOf(")")+1)?g.substr(E):""),P=-1!==g.indexOf("hsl")&&Y,T=g,m=tf(m,P),g=tf(g,P),(A=m.length+g.length>6)&&!Y&&0===g[3]?(a["xs"+a.l]+=a.l?" transparent":"transparent",a.e=a.e.split(L[p]).join("transparent")):(Y||(A=!1),P?a.appendXtra(T.substr(0,T.indexOf("hsl"))+(A?"hsla(":"hsl("),m[0],tl(g[0],m[0]),",",!1,!0).appendXtra("",m[1],tl(g[1],m[1]),"%,",!1).appendXtra("",m[2],tl(g[2],m[2]),A?"%,":"%"+E,!1):a.appendXtra(T.substr(0,T.indexOf("rgb"))+(A?"rgba(":"rgb("),m[0],g[0]-m[0],",",Math.round,!0).appendXtra("",m[1],g[1]-m[1],",",Math.round).appendXtra("",m[2],g[2]-m[2],A?",":E,Math.round),A&&(m=m.length<4?1:m[3],a.appendXtra("",m,(g.length<4?1:g[3])-m,E,!1))),tg.lastIndex=0;else if(x=m.match(y)){if(!(b=g.match(_))||b.length!==x.length)return a;for(f=0,d=0;d<x.length;d++)S=x[d],T=m.indexOf(S,f),a.appendXtra(m.substr(f,T-f),Number(S),tl(b[d],S),"",!(!R||"px"!==m.substr(T+S.length,2))&&Math.round,0===d),f=T+S.length;a["xs"+a.l]+=m.substr(f)}else a["xs"+a.l]+=a.l||a["xs"+a.l]?" "+g:g;if(-1!==i.indexOf("=")&&a.data){for(E=a.xs0+a.data.s,p=1;p<a.l;p++)E+=a["xs"+p]+a.data["xn"+p];a.e=E+a["xs"+p]}return a.l||(a.type=-1,a.xs0=a.e),a.xfirst||a},tb=9;for((h=t_.prototype).l=h.pr=0;--tb>0;)h["xn"+tb]=0,h["xs"+tb]="";h.xs0="",h._next=h._prev=h.xfirst=h.data=h.plugin=h.setRatio=h.rxp=null,h.appendXtra=function(t,e,n,i,r,o){var a=this,s=a.l;return a["xs"+s]+=o&&(s||a["xs"+s])?" "+t:t||"",n||0===s||a.plugin?(a.l++,a.type=a.setRatio?2:1,a["xs"+a.l]=i||"",s>0?(a.data["xn"+s]=e+n,a.rxp["xn"+s]=r,a["xn"+s]=e,a.plugin||(a.xfirst=new t_(a,"xn"+s,e,n,a.xfirst||a,0,a.n,r,a.pr),a.xfirst.xs0=0),a):(a.data={s:e+n},a.rxp={},a.s=e,a.c=n,a.r=r,a)):(a["xs"+s]+=e+(i||""),a)};var tw,tA,tT,tS,tE=function(t,e){e=e||{},this.p=e.prefix&&Q(t)||t,l[t]=l[this.p]=this,this.format=e.formatter||tv(e.defaultValue,e.color,e.collapsible,e.multi),e.parser&&(this.parse=e.parser),this.clrs=e.color,this.multi=e.multi,this.keyword=e.keyword,this.dflt=e.defaultValue,this.pr=e.priority||0},t0=W._registerComplexSpecialProp=function(t,e,n){"object"!=typeof e&&(e={parser:n});var i,r=t.split(","),o=e.defaultValue;for(n=n||[o],i=0;i<r.length;i++)e.prefix=0===i&&e.prefix,e.defaultValue=n[i]||o,new tE(r[i],e)},tP=W._registerPluginProp=function(t){if(!l[t]){var e=t.charAt(0).toUpperCase()+t.substr(1)+"Plugin";t0(t,{parser:function(t,n,i,r,o,a,s){var h=u.com.greensock.plugins[e];return h?(h._cssRegister(),l[i].parse(t,n,i,r,o,a,s)):(j("Error: "+e+" js file not loaded."),o)}})}};(h=tE.prototype).parseComplex=function(t,e,n,i,r,o){var a,s,u,l,h,c,p=this.keyword;if(this.multi&&(N.test(n)||N.test(e)?(s=e.replace(N,"|").split("|"),u=n.replace(N,"|").split("|")):p&&(s=[e],u=[n])),u){for(l=u.length>s.length?u.length:s.length,a=0;a<l;a++)e=s[a]=s[a]||this.dflt,n=u[a]=u[a]||this.dflt,p&&(h=e.indexOf(p))!==(c=n.indexOf(p))&&(-1===c?s[a]=s[a].split(p).join(""):-1===h&&(s[a]+=" "+p));e=s.join(", "),n=u.join(", ")}return tx(t,this.p,e,n,this.clrs,this.dflt,i,this.pr,r,o)},h.parse=function(t,e,i,r,o,a,s){return this.parseComplex(t.style,this.format(tt(t,this.p,n,!1,this.dflt)),this.format(e),o,a)},s.registerSpecialProp=function(t,e,n){t0(t,{parser:function(t,i,r,o,a,s,u){var l=new t_(t,r,0,0,a,2,r,!1,n);return l.plugin=s,l.setRatio=e(t,i,o._tween,r),l},priority:n})},s.useSVGTransformAttr=!0;var tC,tL="scaleX,scaleY,scaleZ,x,y,z,skewX,skewY,rotation,rotationX,rotationY,perspective,xPercent,yPercent".split(","),tM=Q("transform"),t1=Z+"transform",tR=Q("transformOrigin"),t3=null!==Q("perspective"),tI=W.Transform=function(){this.perspective=parseFloat(s.defaultTransformPerspective)||0,this.force3D=!(!1===s.defaultForce3D||!t3)&&(s.defaultForce3D||"auto")},tD=i.k.SVGElement,tN=function(t,e,n){var i,r=z.createElementNS("http://www.w3.org/2000/svg",t),o=/([a-z])([A-Z])/g;for(i in n)r.setAttributeNS(null,i.replace(o,"$1-$2").toLowerCase(),n[i]);return e.appendChild(r),r},tB=z.documentElement||{},tO=(tS=g||/Android/i.test(X)&&!i.k.chrome,z.createElementNS&&!tS&&(tw=tN("svg",tB),tT=(tA=tN("rect",tw,{width:100,height:50,x:100})).getBoundingClientRect().width,tA.style[tR]="50% 50%",tA.style[tM]="scaleX(0.5)",tS=tT===tA.getBoundingClientRect().width&&!(f&&t3),tB.removeChild(tw)),tS),tG=function(t,e,n,i,r,o){var a,u,l,h,c,p,d,f,m,g,v,$,y,_,x=t._gsTransform,b=tU(t,!0);x&&(y=x.xOrigin,_=x.yOrigin),(!i||(a=i.split(" ")).length<2)&&(0===(d=t.getBBox()).x&&0===d.y&&d.width+d.height===0&&(d={x:parseFloat(t.hasAttribute("x")?t.getAttribute("x"):t.hasAttribute("cx")?t.getAttribute("cx"):0)||0,y:parseFloat(t.hasAttribute("y")?t.getAttribute("y"):t.hasAttribute("cy")?t.getAttribute("cy"):0)||0,width:0,height:0}),a=[(-1!==(e=tu(e).split(" "))[0].indexOf("%")?parseFloat(e[0])/100*d.width:parseFloat(e[0]))+d.x,(-1!==e[1].indexOf("%")?parseFloat(e[1])/100*d.height:parseFloat(e[1]))+d.y]),n.xOrigin=h=parseFloat(a[0]),n.yOrigin=c=parseFloat(a[1]),i&&b!==tz&&(p=b[0],d=b[1],f=b[2],m=b[3],g=b[4],v=b[5],($=p*m-d*f)&&(u=h*(m/$)+c*(-f/$)+(f*v-m*g)/$,l=h*(-d/$)+c*(p/$)-(p*v-d*g)/$,h=n.xOrigin=a[0]=u,c=n.yOrigin=a[1]=l)),x&&(o&&(n.xOffset=x.xOffset,n.yOffset=x.yOffset,x=n),r||!1!==r&&!1!==s.defaultSmoothOrigin?(u=h-y,l=c-_,x.xOffset+=u*b[0]+l*b[2]-u,x.yOffset+=u*b[1]+l*b[3]-l):x.xOffset=x.yOffset=0),o||t.setAttribute("data-svg-origin",a.join(" "))},tk=function(t){var e,n=U("svg",this.ownerSVGElement&&this.ownerSVGElement.getAttribute("xmlns")||"http://www.w3.org/2000/svg"),i=this.parentNode,r=this.nextSibling,o=this.style.cssText;if(tB.appendChild(n),n.appendChild(this),this.style.display="block",t)try{e=this.getBBox(),this._originalGetBBox=this.getBBox,this.getBBox=tk}catch(a){}else this._originalGetBBox&&(e=this._originalGetBBox());return r?i.insertBefore(this,r):i.appendChild(this),tB.removeChild(n),this.style.cssText=o,e},tV=function(t){return!(!tD||!t.getCTM||t.parentNode&&!t.ownerSVGElement||!function(t){try{return t.getBBox()}catch(e){return tk.call(t,!0)}}(t))},tz=[1,0,0,1,0,0],tU=function(t,e){var n,i,r,o,a,s,u=t._gsTransform||new tI,l=t.style;if(tM?i=tt(t,t1,null,!0):t.currentStyle&&(i=(i=t.currentStyle.filter.match(I))&&4===i.length?[i[0].substr(4),Number(i[2].substr(4)),Number(i[1].substr(4)),i[3].substr(4),u.x||0,u.y||0].join(","):""),n=!i||"none"===i||"matrix(1, 0, 0, 1, 0, 0)"===i,tM&&((s=!J(t)||"none"===J(t).display)||!t.parentNode)&&(s&&(o=l.display,l.display="block"),t.parentNode||(a=1,tB.appendChild(t)),n=!(i=tt(t,t1,null,!0))||"none"===i||"matrix(1, 0, 0, 1, 0, 0)"===i,o?l.display=o:s&&t4(l,"display"),a&&tB.removeChild(t)),(u.svg||t.getCTM&&tV(t))&&(n&&-1!==(l[tM]+"").indexOf("matrix")&&(i=l[tM],n=0),r=t.getAttribute("transform"),n&&r&&(i="matrix("+(r=t.transform.baseVal.consolidate().matrix).a+","+r.b+","+r.c+","+r.d+","+r.e+","+r.f+")",n=0)),n)return tz;for(tb=(r=(i||"").match(y)||[]).length;--tb>-1;)o=Number(r[tb]),r[tb]=(a=o-(o|=0))?(1e5*a+(a<0?-.5:.5)|0)/1e5+o:o;return e&&r.length>6?[r[0],r[1],r[4],r[5],r[12],r[13]]:r},t2=W.getTransform=function(t,e,n,r){if(t._gsTransform&&n&&!r)return t._gsTransform;var o,a,u,l,h,c,p=n&&t._gsTransform||new tI,d=p.scaleX<0,f=t3&&(parseFloat(tt(t,tR,e,!1,"0 0 0").split(" ")[2])||p.zOrigin)||0,m=parseFloat(s.defaultTransformPerspective)||0;if(p.svg=!(!t.getCTM||!tV(t)),p.svg&&(tG(t,tt(t,tR,e,!1,"50% 50%")+"",p,t.getAttribute("data-svg-origin")),tC=s.useSVGTransformAttr||tO),(o=tU(t))!==tz){if(16===o.length){var g,v,$,y,_,x=o[0],b=o[1],w=o[2],A=o[3],T=o[4],S=o[5],E=o[6],P=o[7],C=o[8],L=o[9],M=o[10],R=o[12],I=o[13],D=o[14],N=o[11],B=Math.atan2(E,M);p.zOrigin&&(R=C*(D=-p.zOrigin)-o[12],I=L*D-o[13],D=M*D+p.zOrigin-o[14]),p.rotationX=B*G,B&&(g=T*(y=Math.cos(-B))+C*(_=Math.sin(-B)),v=S*y+L*_,$=E*y+M*_,C=-(T*_)+C*y,L=-(S*_)+L*y,M=-(E*_)+M*y,N=-(P*_)+N*y,T=g,S=v,E=$),B=Math.atan2(-w,M),p.rotationY=B*G,B&&(v=b*(y=Math.cos(-B))-L*(_=Math.sin(-B)),$=w*y-M*_,L=b*_+L*y,M=w*_+M*y,N=A*_+N*y,x=g=x*y-C*_,b=v,w=$),B=Math.atan2(b,x),p.rotation=B*G,B&&(g=x*(y=Math.cos(B))+b*(_=Math.sin(B)),v=T*y+S*_,$=C*y+L*_,b=b*y-x*_,S=S*y-T*_,L=L*y-C*_,x=g,T=v,C=$),p.rotationX&&Math.abs(p.rotationX)+Math.abs(p.rotation)>359.9&&(p.rotationX=p.rotation=0,p.rotationY=180-p.rotationY),B=Math.atan2(T,S),p.scaleX=(1e5*Math.sqrt(x*x+b*b+w*w)+.5|0)/1e5,p.scaleY=(1e5*Math.sqrt(S*S+E*E)+.5|0)/1e5,p.scaleZ=(1e5*Math.sqrt(C*C+L*L+M*M)+.5|0)/1e5,x/=p.scaleX,T/=p.scaleY,b/=p.scaleX,S/=p.scaleY,Math.abs(B)>2e-5?(p.skewX=B*G,T=0,"simple"!==p.skewType&&(p.scaleY*=1/Math.cos(B))):p.skewX=0,p.perspective=N?1/(N<0?-N:N):0,p.x=R,p.y=I,p.z=D,p.svg&&(p.x-=p.xOrigin-(p.xOrigin*x-p.yOrigin*T),p.y-=p.yOrigin-(p.yOrigin*b-p.xOrigin*S))}else if(!t3||r||!o.length||p.x!==o[4]||p.y!==o[5]||!p.rotationX&&!p.rotationY){var O=o.length>=6,k=O?o[0]:1,V=o[1]||0,z=o[2]||0,U=O?o[3]:1;p.x=o[4]||0,p.y=o[5]||0,u=Math.sqrt(k*k+V*V),l=Math.sqrt(U*U+z*z),h=k||V?Math.atan2(V,k)*G:p.rotation||0,c=z||U?Math.atan2(z,U)*G+h:p.skewX||0,p.scaleX=u,p.scaleY=l,p.rotation=h,p.skewX=c,t3&&(p.rotationX=p.rotationY=p.z=0,p.perspective=m,p.scaleZ=1),p.svg&&(p.x-=p.xOrigin-(p.xOrigin*k+p.yOrigin*z),p.y-=p.yOrigin-(p.xOrigin*V+p.yOrigin*U))}for(a in Math.abs(p.skewX)>90&&270>Math.abs(p.skewX)&&(d?(p.scaleX*=-1,p.skewX+=p.rotation<=0?180:-180,p.rotation+=p.rotation<=0?180:-180):(p.scaleY*=-1,p.skewX+=p.skewX<=0?180:-180)),p.zOrigin=f,p)p[a]<2e-5&&p[a]>-.00002&&(p[a]=0)}return n&&(t._gsTransform=p,p.svg&&(tC&&t.style[tM]?i.l.delayedCall(.001,function(){t4(t.style,tM)}):!tC&&t.getAttribute("transform")&&i.l.delayedCall(.001,function(){t.removeAttribute("transform")}))),p},tH=function(t){var e,n,i=this.data,r=-i.rotation*O,o=r+i.skewX*O,a=(Math.cos(r)*i.scaleX*1e5|0)/1e5,s=(Math.sin(r)*i.scaleX*1e5|0)/1e5,u=(0|-(1e5*(Math.sin(o)*i.scaleY)))/1e5,l=(Math.cos(o)*i.scaleY*1e5|0)/1e5,h=this.t.style,c=this.t.currentStyle;if(c){n=s,s=-u,u=-n,e=c.filter,h.filter="";var p,d,f=this.t.offsetWidth,m=this.t.offsetHeight,v="absolute"!==c.position,$="progid:DXImageTransform.Microsoft.Matrix(M11="+a+", M12="+s+", M21="+u+", M22="+l,y=i.x+f*i.xPercent/100,_=i.y+m*i.yPercent/100;if(null!=i.ox&&(y+=(p=(i.oxp?f*i.ox*.01:i.ox)-f/2)-(p*a+(d=(i.oyp?m*i.oy*.01:i.oy)-m/2)*s),_+=d-(p*u+d*l)),$+=v?", Dx="+((p=f/2)-(p*a+(d=m/2)*s)+y)+", Dy="+(d-(p*u+d*l)+_)+")":", sizingMethod='auto expand')",-1!==e.indexOf("DXImageTransform.Microsoft.Matrix(")?h.filter=e.replace(D,$):h.filter=$+" "+e,0!==t&&1!==t||1===a&&0===s&&0===u&&1===l&&(v&&-1===$.indexOf("Dx=0, Dy=0")||A.test(e)&&100!==parseFloat(RegExp.$1)||-1===e.indexOf(e.indexOf("Alpha"))&&h.removeAttribute("filter")),!v){var x,b,T,S=g<8?1:-1;for(p=i.ieOffsetX||0,d=i.ieOffsetY||0,i.ieOffsetX=Math.round((f-((a<0?-a:a)*f+(s<0?-s:s)*m))/2+y),i.ieOffsetY=Math.round((m-((l<0?-l:l)*m+(u<0?-u:u)*f))/2+_),tb=0;tb<4;tb++)T=(n=-1!==(x=c[b=ta[tb]]).indexOf("px")?parseFloat(x):te(this.t,b,parseFloat(x),x.replace(w,""))||0)!==i[b]?tb<2?-i.ieOffsetX:-i.ieOffsetY:tb<2?p-i.ieOffsetX:d-i.ieOffsetY,h[b]=(i[b]=Math.round(n-T*(0===tb||2===tb?1:S)))+"px"}}},tF=W.set3DTransformRatio=W.setTransformRatio=function(t){var e,n,i,r,o,a,s,u,l,h,c,p,d,m,g,v,$,y,_,x,b,w=this.data,A=this.t.style,T=w.rotation,S=w.rotationX,E=w.rotationY,P=w.scaleX,C=w.scaleY,L=w.scaleZ,M=w.x,R=w.y,I=w.z,D=w.svg,N=w.perspective,B=w.force3D,G=w.skewY,k=w.skewX;if(G&&(k+=G,T+=G),!((1!==t&&0!==t||"auto"!==B||this.tween._totalTime!==this.tween._totalDuration&&this.tween._totalTime)&&B||I||N||E||S||1!==L)||tC&&D||!t3)T||k||D?(T*=O,x=k*O,b=1e5,n=Math.cos(T)*P,o=Math.sin(T)*P,i=-(Math.sin(T-x)*C),a=Math.cos(T-x)*C,x&&"simple"===w.skewType&&(i*=e=Math.sqrt(1+(e=Math.tan(x-G*O))*e),a*=e,G&&(n*=e=Math.sqrt(1+(e=Math.tan(G*O))*e),o*=e)),D&&(M+=w.xOrigin-(w.xOrigin*n+w.yOrigin*i)+w.xOffset,R+=w.yOrigin-(w.xOrigin*o+w.yOrigin*a)+w.yOffset,tC&&(w.xPercent||w.yPercent)&&(g=this.t.getBBox(),M+=.01*w.xPercent*g.width,R+=.01*w.yPercent*g.height),M<(g=1e-6)&&M>-g&&(M=0),R<g&&R>-g&&(R=0)),_=(n*b|0)/b+","+(o*b|0)/b+","+(i*b|0)/b+","+(a*b|0)/b+","+M+","+R+")",D&&tC?this.t.setAttribute("transform","matrix("+_):A[tM]=(w.xPercent||w.yPercent?"translate("+w.xPercent+"%,"+w.yPercent+"%) matrix(":"matrix(")+_):A[tM]=(w.xPercent||w.yPercent?"translate("+w.xPercent+"%,"+w.yPercent+"%) matrix(":"matrix(")+P+",0,0,"+C+","+M+","+R+")";else{if(f&&(P<(g=1e-4)&&P>-g&&(P=L=2e-5),C<g&&C>-g&&(C=L=2e-5),!N||w.z||w.rotationX||w.rotationY||(N=0)),T||k)T*=O,v=n=Math.cos(T),$=o=Math.sin(T),k&&(T-=k*O,v=Math.cos(T),$=Math.sin(T),"simple"===w.skewType&&(v*=e=Math.sqrt(1+(e=Math.tan((k-G)*O))*e),$*=e,w.skewY&&(n*=e=Math.sqrt(1+(e=Math.tan(G*O))*e),o*=e))),i=-$,a=v;else{if(!(E||S||1!==L||N||D))return void(A[tM]=(w.xPercent||w.yPercent?"translate("+w.xPercent+"%,"+w.yPercent+"%) translate3d(":"translate3d(")+M+"px,"+R+"px,"+I+"px)"+(1!==P||1!==C?" scale("+P+","+C+")":""));n=a=1,i=o=0}h=1,r=s=u=l=c=p=0,d=N?-1/N:0,m=w.zOrigin,g=1e-6,(T=E*O)&&(v=Math.cos(T),u=-($=Math.sin(T)),c=-(d*$),r=n*$,s=o*$,h=v,d*=v,n*=v,o*=v),(T=S*O)&&(e=i*(v=Math.cos(T))+r*($=Math.sin(T)),y=a*v+s*$,l=h*$,p=d*$,r=-(i*$)+r*v,s=-(a*$)+s*v,h*=v,d*=v,i=e,a=y),1!==L&&(r*=L,s*=L,h*=L,d*=L),1!==C&&(i*=C,a*=C,l*=C,p*=C),1!==P&&(n*=P,o*=P,u*=P,c*=P),(m||D)&&(m&&(M+=-(r*m),R+=-(s*m),I+=-(h*m)+m),D&&(M+=w.xOrigin-(w.xOrigin*n+w.yOrigin*i)+w.xOffset,R+=w.yOrigin-(w.xOrigin*o+w.yOrigin*a)+w.yOffset),M<g&&M>-g&&(M="0"),R<g&&R>-g&&(R="0"),I<g&&I>-g&&(I=0)),_=w.xPercent||w.yPercent?"translate("+w.xPercent+"%,"+w.yPercent+"%) matrix3d(":"matrix3d(",_+=(n<g&&n>-g?"0":n)+","+(o<g&&o>-g?"0":o)+","+(u<g&&u>-g?"0":u),_+=","+(c<g&&c>-g?"0":c)+","+(i<g&&i>-g?"0":i)+","+(a<g&&a>-g?"0":a),S||E||1!==L?(_+=","+(l<g&&l>-g?"0":l)+","+(p<g&&p>-g?"0":p)+","+(r<g&&r>-g?"0":r),_+=","+(s<g&&s>-g?"0":s)+","+(h<g&&h>-g?"0":h)+","+(d<g&&d>-g?"0":d)+","):_+=",0,0,0,0,1,0,",_+=M+","+R+","+I+","+(N?1+-I/N:1)+")",A[tM]=_}};(h=tI.prototype).x=h.y=h.z=h.skewX=h.skewY=h.rotation=h.rotationX=h.rotationY=h.zOrigin=h.xPercent=h.yPercent=h.xOffset=h.yOffset=0,h.scaleX=h.scaleY=h.scaleZ=1,t0("transform,scale,scaleX,scaleY,scaleZ,x,y,z,rotation,rotationX,rotationY,rotationZ,skewX,skewY,shortRotation,shortRotationX,shortRotationY,shortRotationZ,transformOrigin,svgOrigin,transformPerspective,directionalRotation,parseTransform,force3D,skewType,xPercent,yPercent,smoothOrigin",{parser:function(t,e,i,r,o,a,u){if(r._lastParsedTransform===u)return o;r._lastParsedTransform=u;var l,h=u.scale&&"function"==typeof u.scale?u.scale:0;"function"==typeof u[i]&&(l=u[i],u[i]=e),h&&(u.scale=h($,t));var c,p,d,f,m,g,y,_,x,b=t._gsTransform,w=t.style,A=tL.length,T=u,S={},E=t2(t,n,!0,T.parseTransform),P=T.transform&&("function"==typeof T.transform?T.transform($,v):T.transform);if(E.skewType=T.skewType||E.skewType||s.defaultSkewType,r._transform=E,"rotationZ"in T&&(T.rotation=T.rotationZ),P&&"string"==typeof P&&tM)(p=H.style)[tM]=P,p.display="block",p.position="absolute",-1!==P.indexOf("%")&&(p.width=tt(t,"width"),p.height=tt(t,"height")),z.body.appendChild(H),c=t2(H,null,!1),"simple"===E.skewType&&(c.scaleY*=Math.cos(c.skewX*O)),E.svg&&(g=E.xOrigin,y=E.yOrigin,c.x-=E.xOffset,c.y-=E.yOffset,(T.transformOrigin||T.svgOrigin)&&(P={},tG(t,tu(T.transformOrigin),P,T.svgOrigin,T.smoothOrigin,!0),g=P.xOrigin,y=P.yOrigin,c.x-=P.xOffset-E.xOffset,c.y-=P.yOffset-E.yOffset),(g||y)&&(_=tU(H,!0),c.x-=g-(g*_[0]+y*_[2]),c.y-=y-(g*_[1]+y*_[3]))),z.body.removeChild(H),c.perspective||(c.perspective=E.perspective),null!=T.xPercent&&(c.xPercent=th(T.xPercent,E.xPercent)),null!=T.yPercent&&(c.yPercent=th(T.yPercent,E.yPercent));else if("object"==typeof T){if(c={scaleX:th(null!=T.scaleX?T.scaleX:T.scale,E.scaleX),scaleY:th(null!=T.scaleY?T.scaleY:T.scale,E.scaleY),scaleZ:th(T.scaleZ,E.scaleZ),x:th(T.x,E.x),y:th(T.y,E.y),z:th(T.z,E.z),xPercent:th(T.xPercent,E.xPercent),yPercent:th(T.yPercent,E.yPercent),perspective:th(T.transformPerspective,E.perspective)},null!=(m=T.directionalRotation)){if("object"==typeof m)for(p in m)T[p]=m[p];else T.rotation=m}"string"==typeof T.x&&-1!==T.x.indexOf("%")&&(c.x=0,c.xPercent=th(T.x,E.xPercent)),"string"==typeof T.y&&-1!==T.y.indexOf("%")&&(c.y=0,c.yPercent=th(T.y,E.yPercent)),c.rotation=tc("rotation"in T?T.rotation:"shortRotation"in T?T.shortRotation+"_short":E.rotation,E.rotation,"rotation",S),t3&&(c.rotationX=tc("rotationX"in T?T.rotationX:"shortRotationX"in T?T.shortRotationX+"_short":E.rotationX||0,E.rotationX,"rotationX",S),c.rotationY=tc("rotationY"in T?T.rotationY:"shortRotationY"in T?T.shortRotationY+"_short":E.rotationY||0,E.rotationY,"rotationY",S)),c.skewX=tc(T.skewX,E.skewX),c.skewY=tc(T.skewY,E.skewY)}for(t3&&null!=T.force3D&&(E.force3D=T.force3D,f=!0),(d=E.force3D||E.z||E.rotationX||E.rotationY||c.z||c.rotationX||c.rotationY||c.perspective)||null==T.scale||(c.scaleZ=1);--A>-1;)((P=c[x=tL[A]]-E[x])>1e-6||P<-.000001||null!=T[x]||null!=k[x])&&(f=!0,o=new t_(E,x,E[x],P,o),x in S&&(o.e=S[x]),o.xs0=0,o.plugin=a,r._overwriteProps.push(o.n));return P=T.transformOrigin,E.svg&&(P||T.svgOrigin)&&(g=E.xOffset,y=E.yOffset,tG(t,tu(P),c,T.svgOrigin,T.smoothOrigin),o=t8(E,"xOrigin",(b?E:c).xOrigin,c.xOrigin,o,"transformOrigin"),o=t8(E,"yOrigin",(b?E:c).yOrigin,c.yOrigin,o,"transformOrigin"),g===E.xOffset&&y===E.yOffset||(o=t8(E,"xOffset",b?g:E.xOffset,E.xOffset,o,"transformOrigin"),o=t8(E,"yOffset",b?y:E.yOffset,E.yOffset,o,"transformOrigin")),P="0px 0px"),(P||t3&&d&&E.zOrigin)&&(tM?(f=!0,x=tR,P=(P||tt(t,x,n,!1,"50% 50%"))+"",(o=new t_(w,x,0,0,o,-1,"transformOrigin")).b=w[x],o.plugin=a,t3?(p=E.zOrigin,P=P.split(" "),E.zOrigin=(P.length>2&&(0===p||"0px"!==P[2])?parseFloat(P[2]):p)||0,o.xs0=o.e=P[0]+" "+(P[1]||"50%")+" 0px",(o=new t_(E,"zOrigin",0,0,o,-1,o.n)).b=p,o.xs0=o.e=E.zOrigin):o.xs0=o.e=P):tu(P+"",E)),f&&(r._transformType=E.svg&&tC||!d&&3!==this._transformType?2:3),l&&(u[i]=l),h&&(u.scale=h),o},prefix:!0}),t0("boxShadow",{defaultValue:"0px 0px 0px 0px #999",prefix:!0,color:!0,multi:!0,keyword:"inset"}),t0("borderRadius",{defaultValue:"0px",parser:function(t,i,r,o,a,s){i=this.format(i);var u,l,h,c,p,d,f,m,g,v,$,y,_,x,b,w,A=["borderTopLeftRadius","borderTopRightRadius","borderBottomRightRadius","borderBottomLeftRadius"],T=t.style;for(g=parseFloat(t.offsetWidth),v=parseFloat(t.offsetHeight),u=i.split(" "),l=0;l<A.length;l++)this.p.indexOf("border")&&(A[l]=Q(A[l])),-1!==(p=c=tt(t,A[l],n,!1,"0px")).indexOf(" ")&&(p=(c=p.split(" "))[0],c=c[1]),d=h=u[l],f=parseFloat(p),y=p.substr((f+"").length),(_="="===d.charAt(1))?(m=parseInt(d.charAt(0)+"1",10),m*=parseFloat(d=d.substr(2)),$=d.substr((m+"").length-(m<0?1:0))||""):(m=parseFloat(d),$=d.substr((m+"").length)),""===$&&($=e[r]||y),$!==y&&(x=te(t,"borderLeft",f,y),b=te(t,"borderTop",f,y),"%"===$?(p=x/g*100+"%",c=b/v*100+"%"):"em"===$?(p=x/(w=te(t,"borderLeft",1,"em"))+"em",c=b/w+"em"):(p=x+"px",c=b+"px"),_&&(d=parseFloat(p)+m+$,h=parseFloat(c)+m+$)),a=tx(T,A[l],p+" "+c,d+" "+h,!1,"0px",a);return a},prefix:!0,formatter:tv("0px 0px 0px 0px",!1,!0)}),t0("borderBottomLeftRadius,borderBottomRightRadius,borderTopLeftRadius,borderTopRightRadius",{defaultValue:"0px",parser:function(t,e,i,r,o,a){return tx(t.style,i,this.format(tt(t,i,n,!1,"0px 0px")),this.format(e),!1,"0px",o)},prefix:!0,formatter:tv("0px 0px",!1,!0)}),t0("backgroundPosition",{defaultValue:"0 0",parser:function(t,e,i,r,o,a){var s,u,l,h,c,p,d="background-position",f=n||J(t,null),m=this.format((f?g?f.getPropertyValue(d+"-x")+" "+f.getPropertyValue(d+"-y"):f.getPropertyValue(d):t.currentStyle.backgroundPositionX+" "+t.currentStyle.backgroundPositionY)||"0 0"),v=this.format(e);if(-1!==m.indexOf("%")!=(-1!==v.indexOf("%"))&&v.split(",").length<2&&(p=tt(t,"backgroundImage").replace(L,""))&&"none"!==p){for(s=m.split(" "),u=v.split(" "),F.setAttribute("src",p),l=2;--l>-1;)(h=-1!==(m=s[l]).indexOf("%"))!=(-1!==u[l].indexOf("%"))&&(c=0===l?t.offsetWidth-F.width:t.offsetHeight-F.height,s[l]=h?parseFloat(m)/100*c+"px":parseFloat(m)/c*100+"%");m=s.join(" ")}return this.parseComplex(t.style,m,v,o,a)},formatter:tu}),t0("backgroundSize",{defaultValue:"0 0",formatter:function(t){return"co"===(t+="").substr(0,2)?t:tu(-1===t.indexOf(" ")?t+" "+t:t)}}),t0("perspective",{defaultValue:"0px",prefix:!0}),t0("perspectiveOrigin",{defaultValue:"50% 50%",prefix:!0}),t0("transformStyle",{prefix:!0}),t0("backfaceVisibility",{prefix:!0}),t0("userSelect",{prefix:!0}),t0("margin",{parser:t$("marginTop,marginRight,marginBottom,marginLeft")}),t0("padding",{parser:t$("paddingTop,paddingRight,paddingBottom,paddingLeft")}),t0("clip",{defaultValue:"rect(0px,0px,0px,0px)",parser:function(t,e,i,r,o,a){var s,u,l;return g<9?(u=t.currentStyle,l=g<8?" ":",",s="rect("+u.clipTop+l+u.clipRight+l+u.clipBottom+l+u.clipLeft+")",e=this.format(e).split(",").join(l)):(s=this.format(tt(t,this.p,n,!1,this.dflt)),e=this.format(e)),this.parseComplex(t.style,s,e,o,a)}}),t0("textShadow",{defaultValue:"0px 0px 0px #999",color:!0,multi:!0}),t0("autoRound,strictUnits",{parser:function(t,e,n,i,r){return r}}),t0("border",{defaultValue:"0px solid #000",parser:function(t,e,i,r,o,a){var s=tt(t,"borderTopWidth",n,!1,"0px"),u=this.format(e).split(" "),l=u[0].replace(w,"");return"px"!==l&&(s=parseFloat(s)/te(t,"borderTopWidth",1,l)+l),this.parseComplex(t.style,this.format(s+" "+tt(t,"borderTopStyle",n,!1,"solid")+" "+tt(t,"borderTopColor",n,!1,"#000")),u.join(" "),o,a)},color:!0,formatter:function(t){var e=t.split(" ");return e[0]+" "+(e[1]||"solid")+" "+(t.match(tg)||["#000"])[0]}}),t0("borderWidth",{parser:t$("borderTopWidth,borderRightWidth,borderBottomWidth,borderLeftWidth")}),t0("float,cssFloat,styleFloat",{parser:function(t,e,n,i,r,o){var a=t.style,s="cssFloat"in a?"cssFloat":"styleFloat";return new t_(a,s,0,0,r,-1,n,!1,0,a[s],e)}});var t5=function(t){var e,n=this.t,i=n.filter||tt(this.data,"filter")||"",r=this.s+this.c*t|0;100===r&&(-1===i.indexOf("atrix(")&&-1===i.indexOf("radient(")&&-1===i.indexOf("oader(")?(n.removeAttribute("filter"),e=!tt(this.data,"filter")):(n.filter=i.replace(S,""),e=!0)),e||(this.xn1&&(n.filter=i=i||"alpha(opacity="+r+")"),-1===i.indexOf("pacity")?0===r&&this.xn1||(n.filter=i+" alpha(opacity="+r+")"):n.filter=i.replace(A,"opacity="+r))};t0("opacity,alpha,autoAlpha",{defaultValue:"1",parser:function(t,e,i,r,o,a){var s=parseFloat(tt(t,"opacity",n,!1,"1")),u=t.style,l="autoAlpha"===i;return"string"==typeof e&&"="===e.charAt(1)&&(e=("-"===e.charAt(0)?-1:1)*parseFloat(e.substr(2))+s),l&&1===s&&"hidden"===tt(t,"visibility",n)&&0!==e&&(s=0),Y?o=new t_(u,"opacity",s,e-s,o):((o=new t_(u,"opacity",100*s,100*(e-s),o)).xn1=l?1:0,u.zoom=1,o.type=2,o.b="alpha(opacity="+o.s+")",o.e="alpha(opacity="+(o.s+o.c)+")",o.data=t,o.plugin=a,o.setRatio=t5),l&&((o=new t_(u,"visibility",0,0,o,-1,null,!1,0,0!==s?"inherit":"hidden",0===e?"hidden":"inherit")).xs0="inherit",r._overwriteProps.push(o.n),r._overwriteProps.push(i)),o}});var t4=function(t,e){e&&(t.removeProperty?("ms"!==e.substr(0,2)&&"webkit"!==e.substr(0,6)||(e="-"+e),t.removeProperty(e.replace(P,"-$1").toLowerCase())):t.removeAttribute(e))},t6=function(t){if(this.t._gsClassPT=this,1===t||0===t){this.t.setAttribute("class",0===t?this.b:this.e);for(var e=this.data,n=this.t.style;e;)e.v?n[e.p]=e.v:t4(n,e.p),e=e._next;1===t&&this.t._gsClassPT===this&&(this.t._gsClassPT=null)}else this.t.getAttribute("class")!==this.e&&this.t.setAttribute("class",this.e)};t0("className",{parser:function(e,i,r,o,a,s,u){var l,h,c,p,d,f=e.getAttribute("class")||"",m=e.style.cssText;if((a=o._classNamePT=new t_(e,r,0,0,a,2)).setRatio=t6,a.pr=-11,t=!0,a.b=f,h=ti(e,n),c=e._gsClassPT){for(p={},d=c.data;d;)p[d.p]=1,d=d._next;c.setRatio(1)}return e._gsClassPT=a,a.e="="!==i.charAt(1)?i:f.replace(RegExp("(?:\\s|^)"+i.substr(2)+"(?![\\w-])"),"")+("+"===i.charAt(0)?" "+i.substr(2):""),e.setAttribute("class",a.e),l=tr(e,h,ti(e),u,p),e.setAttribute("class",f),a.data=l.firstMPT,e.style.cssText=m,a.xfirst=o.parse(e,l.difs,a,s)}});var tW=function(t){if((1===t||0===t)&&this.data._totalTime===this.data._totalDuration&&"isFromStart"!==this.data.data){var e,n,i,r,o,a=this.t.style,s=l.transform.parse;if("all"===this.e)a.cssText="",r=!0;else for(i=(e=this.e.split(" ").join("").split(",")).length;--i>-1;)l[n=e[i]]&&(l[n].parse===s?r=!0:n="transformOrigin"===n?tR:l[n].p),t4(a,n);r&&(t4(a,tM),(o=this.t._gsTransform)&&(o.svg&&(this.t.removeAttribute("data-svg-origin"),this.t.removeAttribute("transform")),delete this.t._gsTransform))}};for(t0("clearProps",{parser:function(e,n,i,r,o){return(o=new t_(e,i,0,0,o,2)).setRatio=tW,o.e=n,o.pr=-10,o.data=r._tween,t=!0,o}}),tb=(h="bezier,throwProps,physicsProps,physics2D".split(",")).length;tb--;)tP(h[tb]);(h=s.prototype)._firstPT=h._lastParsedTransform=h._transform=null,h._onInitTween=function(i,o,a,u){if(!i.nodeType)return!1;this._target=v=i,this._tween=a,this._vars=o,$=u,c=o.autoRound,t=!1,e=o.suffixMap||s.suffixMap,n=J(i,""),r=this._overwriteProps;var h,f,g,y,_,x,b,w,A,S=i.style;if(p&&""===S.zIndex&&("auto"!==(h=tt(i,"zIndex",n))&&""!==h||this._addLazySet(S,"zIndex",0)),"string"==typeof o&&(y=S.cssText,h=ti(i,n),S.cssText=y+";"+o,h=tr(i,h,ti(i)).difs,!Y&&T.test(o)&&(h.opacity=parseFloat(RegExp.$1)),o=h,S.cssText=y),o.className?this._firstPT=f=l.className.parse(i,o.className,"className",this,null,null,o):this._firstPT=f=this.parse(i,o,null),this._transformType){for(A=3===this._transformType,tM?d&&(p=!0,""===S.zIndex&&("auto"!==(b=tt(i,"zIndex",n))&&""!==b||this._addLazySet(S,"zIndex",0)),m&&this._addLazySet(S,"WebkitBackfaceVisibility",this._vars.WebkitBackfaceVisibility||(A?"visible":"hidden"))):S.zoom=1,g=f;g&&g._next;)g=g._next;w=new t_(i,"transform",0,0,null,2),this._linkCSSP(w,null,g),w.setRatio=tM?tF:tH,w.data=this._transform||t2(i,n,!0),w.tween=a,w.pr=-1,r.pop()}if(t){for(;f;){for(x=f._next,g=y;g&&g.pr>f.pr;)g=g._next;(f._prev=g?g._prev:_)?f._prev._next=f:y=f,(f._next=g)?g._prev=f:_=f,f=x}this._firstPT=y}return!0},h.parse=function(t,i,r,o){var a,s,u,h,p,d,f,m,g,y,_=t.style;for(a in i){if("function"==typeof(d=i[a])&&(d=d($,v)),s=l[a])r=s.parse(t,d,a,this,r,o,i);else{if("--"===a.substr(0,2)){this._tween._propLookup[a]=this._addTween.call(this._tween,t.style,"setProperty",J(t).getPropertyValue(a)+"",d+"",a,!1,a);continue}p=tt(t,a,n)+"",g="string"==typeof d,"color"===a||"fill"===a||"stroke"===a||-1!==a.indexOf("Color")||g&&E.test(d)?(g||(d=((d=tf(d)).length>3?"rgba(":"rgb(")+d.join(",")+")"),r=tx(_,a,p,d,!0,"transparent",r,0,o)):g&&B.test(d)?r=tx(_,a,p,d,!0,null,r,0,o):(f=(u=parseFloat(p))||0===u?p.substr((u+"").length):"",""!==p&&"auto"!==p||("width"===a||"height"===a?(u=ts(t,a,n),f="px"):"left"===a||"top"===a?(u=tn(t,a,n),f="px"):(u="opacity"!==a?0:1,f="")),(y=g&&"="===d.charAt(1))?(h=parseInt(d.charAt(0)+"1",10),h*=parseFloat(d=d.substr(2)),m=d.replace(w,"")):(h=parseFloat(d),m=g?d.replace(w,""):""),""===m&&(m=a in e?e[a]:f),d=h||0===h?(y?h+u:h)+m:i[a],f!==m&&(""===m&&"lineHeight"!==a||(h||0===h)&&u&&(u=te(t,a,u,f),"%"===m?(u/=te(t,a,100,"%")/100,!0!==i.strictUnits&&(p=u+"%")):"em"===m||"rem"===m||"vw"===m||"vh"===m?u/=te(t,a,1,m):"px"!==m&&(h=te(t,a,h,m),m="px"),y&&(h||0===h)&&(d=h+u+m))),y&&(h+=u),(u||0===u)&&(h||0===h)?(r=new t_(_,a,u,h-u,r,0,a,!1!==c&&("px"===m||"zIndex"===a),0,p,d)).xs0=m:void 0!==_[a]&&(d||d+""!="NaN"&&null!=d)?(r=new t_(_,a,h||u||0,0,r,-1,a,!1,0,p,d)).xs0="none"!==d||"display"!==a&&-1===a.indexOf("Style")?d:p:j("invalid "+a+" tween value: "+i[a]))}o&&r&&!r.plugin&&(r.plugin=o)}return r},h.setRatio=function(t){var e,n,i,r=this._firstPT;if(1!==t||this._tween._time!==this._tween._duration&&0!==this._tween._time){if(t||this._tween._time!==this._tween._duration&&0!==this._tween._time||-.000001===this._tween._rawPrevTime)for(;r;){if(e=r.c*t+r.s,r.r?e=r.r(e):e<1e-6&&e>-.000001&&(e=0),r.type){if(1===r.type){if(2===(i=r.l))r.t[r.p]=r.xs0+e+r.xs1+r.xn1+r.xs2;else if(3===i)r.t[r.p]=r.xs0+e+r.xs1+r.xn1+r.xs2+r.xn2+r.xs3;else if(4===i)r.t[r.p]=r.xs0+e+r.xs1+r.xn1+r.xs2+r.xn2+r.xs3+r.xn3+r.xs4;else if(5===i)r.t[r.p]=r.xs0+e+r.xs1+r.xn1+r.xs2+r.xn2+r.xs3+r.xn3+r.xs4+r.xn4+r.xs5;else{for(n=r.xs0+e+r.xs1,i=1;i<r.l;i++)n+=r["xn"+i]+r["xs"+(i+1)];r.t[r.p]=n}}else -1===r.type?r.t[r.p]=r.xs0:r.setRatio&&r.setRatio(t)}else r.t[r.p]=e+r.xs0;r=r._next}else for(;r;)2!==r.type?r.t[r.p]=r.b:r.setRatio(t),r=r._next}else for(;r;){if(2!==r.type){if(r.r&&-1!==r.type){if(e=r.r(r.s+r.c),r.type){if(1===r.type){for(i=r.l,n=r.xs0+e+r.xs1,i=1;i<r.l;i++)n+=r["xn"+i]+r["xs"+(i+1)];r.t[r.p]=n}}else r.t[r.p]=e+r.xs0}else r.t[r.p]=r.e}else r.setRatio(t);r=r._next}},h._enableTransforms=function(t){this._transform=this._transform||t2(this._target,n,!0),this._transformType=this._transform.svg&&tC||!t&&3!==this._transformType?2:3};var t7=function(t){this.t[this.p]=this.e,this.data._linkCSSP(this,this._next,null,!0)};h._addLazySet=function(t,e,n){var i=this._firstPT=new t_(t,e,0,0,this._firstPT,2);i.e=n,i.setRatio=t7,i.data=this},h._linkCSSP=function(t,e,n,i){return t&&(e&&(e._prev=t),t._next&&(t._next._prev=t._prev),t._prev?t._prev._next=t._next:this._firstPT===t&&(this._firstPT=t._next,i=!0),n?n._next=t:i||null!==this._firstPT||(this._firstPT=t),t._next=e,t._prev=n),t},h._mod=function(t){for(var e=this._firstPT;e;)"function"==typeof t[e.p]&&(e.r=t[e.p]),e=e._next},h._kill=function(t){var e,n,r,o=t;if(t.autoAlpha||t.alpha){for(n in o={},t)o[n]=t[n];o.opacity=1,o.autoAlpha&&(o.visibility=1)}for(t.className&&(e=this._classNamePT)&&((r=e.xfirst)&&r._prev?this._linkCSSP(r._prev,e._next,r._prev._prev):r===this._firstPT&&(this._firstPT=e._next),e._next&&this._linkCSSP(e._next,e._next._next,r._prev),this._classNamePT=null),e=this._firstPT;e;)e.plugin&&e.plugin!==n&&e.plugin._kill&&(e.plugin._kill(t),n=e.plugin),e=e._next;return i.j.prototype._kill.call(this,o)};var tX=function(t,e,n){var i,r,o,a;if(t.slice)for(r=t.length;--r>-1;)tX(t[r],e,n);else for(r=(i=t.childNodes).length;--r>-1;)a=(o=i[r]).type,o.style&&(e.push(ti(o)),n&&n.push(o)),(1===a||9===a||11===a)&&o.childNodes.length&&tX(o,e,n)};return s.cascadeTo=function(t,e,n){var r,o,a,s,u=i.l.to(t,e,n),l=[u],h=[],c=[],p=[],d=i.l._internals.reservedProps;for(tX(t=u._targets||u.target,h,p),u.render(e,!0,!0),tX(t,c),u.render(0,!0,!0),u._enabled(!0),r=p.length;--r>-1;)if((o=tr(p[r],h[r],c[r])).firstMPT){for(a in o=o.difs,n)d[a]&&(o[a]=n[a]);for(a in s={},o)s[a]=h[r][a];l.push(i.l.fromTo(p[r],e,s,o))}return l},i.j.activate([s]),s},!0);var o=i.m.CSSPlugin,a=i.k._gsDefine.plugin({propName:"attr",API:2,version:"0.6.1",init:function(t,e,n,i){var r,o;if("function"!=typeof t.setAttribute)return!1;for(r in e)"function"==typeof(o=e[r])&&(o=o(i,t)),this._addTween(t,"setAttribute",t.getAttribute(r)+"",o+"",r,!1,r),this._overwriteProps.push(r);return!0}}),s=i.k._gsDefine.plugin({propName:"roundProps",version:"1.7.0",priority:-1,API:2,init:function(t,e,n){return this._tween=n,!0}}),u=function(t){var e=t<1?Math.pow(10,(t+"").length-2):1;return function(n){return(Math.round(n/t)*t*e|0)/e}},l=function(t,e){for(;t;)t.f||t.blob||(t.m=e||Math.round),t=t._next},h=s.prototype;h._onInitAllProps=function(){var t,e,n,i,r=this._tween,o=r.vars.roundProps,a={},s=r._propLookup.roundProps;if("object"!=typeof o||o.push)for("string"==typeof o&&(o=o.split(",")),n=o.length;--n>-1;)a[o[n]]=Math.round;else for(i in o)a[i]=u(o[i]);for(i in a)for(t=r._firstPT;t;)e=t._next,t.pg?t.t._mod(a):t.n===i&&(2===t.f&&t.t?l(t.t._firstPT,a[i]):(this._add(t.t,i,t.s,t.c,a[i]),e&&(e._prev=t._prev),t._prev?t._prev._next=e:r._firstPT===t&&(r._firstPT=e),t._next=t._prev=null,r._propLookup[i]=s)),t=e;return!1},h._add=function(t,e,n,i,r){this._addTween(t,e,n,n+i,e,r||Math.round),this._overwriteProps.push(e)};var c=i.k._gsDefine.plugin({propName:"directionalRotation",version:"0.3.1",API:2,init:function(t,e,n,i){"object"!=typeof e&&(e={rotation:e}),this.finals={};var r,o,a,s,u,l,h=!0===e.useRadians?2*Math.PI:360;for(r in e)"useRadians"!==r&&("function"==typeof(s=e[r])&&(s=s(i,t)),o=(l=(s+"").split("_"))[0],a=parseFloat("function"!=typeof t[r]?t[r]:t[r.indexOf("set")||"function"!=typeof t["get"+r.substr(3)]?r:"get"+r.substr(3)]()),u=(s=this.finals[r]="string"==typeof o&&"="===o.charAt(1)?a+parseInt(o.charAt(0)+"1",10)*Number(o.substr(2)):Number(o)||0)-a,l.length&&(-1!==(o=l.join("_")).indexOf("short")&&(u%=h)!=u%(h/2)&&(u=u<0?u+h:u-h),-1!==o.indexOf("_cw")&&u<0?u=(u+9999999999*h)%h-(u/h|0)*h:-1!==o.indexOf("ccw")&&u>0&&(u=(u-9999999999*h)%h-(u/h|0)*h)),(u>1e-6||u<-.000001)&&(this._addTween(t,r,a,a+u,r),this._overwriteProps.push(r)));return!0},set:function(t){var e;if(1!==t)this._super.setRatio.call(this,t);else for(e=this._firstPT;e;)e.f?e.t[e.p](this.finals[e.p]):e.t[e.p]=this.finals[e.p],e=e._next}});c._autoCSS=!0,i.k._gsDefine("TimelineLite",["core.Animation","core.SimpleTimeline","TweenLite"],function(){var t=function(t){i.i.call(this,t),this._labels={},this.autoRemoveChildren=!0===this.vars.autoRemoveChildren,this.smoothChildTiming=!0===this.vars.smoothChildTiming,this._sortChildren=!0,this._onUpdate=this.vars.onUpdate;var e,n,r=this.vars;for(n in r)o(e=r[n])&&-1!==e.join("").indexOf("{self}")&&(r[n]=this._swapSelfInParams(e));o(r.tweens)&&this.add(r.tweens,0,r.align,r.stagger)},e=i.l._internals,n=t._internals={},r=e.isSelector,o=e.isArray,a=e.lazyTweens,s=e.lazyRender,u=i.k._gsDefine.globals,l=function(t){var e,n={};for(e in t)n[e]=t[e];return n},h=function(t,e,n){var i,r,o=t.cycle;for(i in o)r=o[i],t[i]="function"==typeof r?r(n,e[n]):r[n%r.length];delete t.cycle},c=n.pauseCallback=function(){},p=function(t){var e,n=[],i=t.length;for(e=0;e!==i;n.push(t[e++]));return n},d=t.prototype=new i.i;return t.version="2.0.2",d.constructor=t,d.kill()._gc=d._forcingPlayhead=d._hasPause=!1,d.to=function(t,e,n,r){var o=n.repeat&&u.TweenMax||i.l;return e?this.add(new o(t,e,n),r):this.set(t,n,r)},d.from=function(t,e,n,r){return this.add((n.repeat&&u.TweenMax||i.l).from(t,e,n),r)},d.fromTo=function(t,e,n,r,o){var a=r.repeat&&u.TweenMax||i.l;return e?this.add(a.fromTo(t,e,n,r),o):this.set(t,r,o)},d.staggerTo=function(e,n,o,a,s,u,c,d){var f,m,g=new t({onComplete:u,onCompleteParams:c,callbackScope:d,smoothChildTiming:this.smoothChildTiming}),v=o.cycle;for("string"==typeof e&&(e=i.l.selector(e)||e),r(e=e||[])&&(e=p(e)),(a=a||0)<0&&((e=p(e)).reverse(),a*=-1),m=0;m<e.length;m++)(f=l(o)).startAt&&(f.startAt=l(f.startAt),f.startAt.cycle&&h(f.startAt,e,m)),v&&(h(f,e,m),null!=f.duration&&(n=f.duration,delete f.duration)),g.to(e[m],n,f,m*a);return this.add(g,s)},d.staggerFrom=function(t,e,n,i,r,o,a,s){return n.immediateRender=0!=n.immediateRender,n.runBackwards=!0,this.staggerTo(t,e,n,i,r,o,a,s)},d.staggerFromTo=function(t,e,n,i,r,o,a,s,u){return i.startAt=n,i.immediateRender=0!=i.immediateRender&&0!=n.immediateRender,this.staggerTo(t,e,i,r,o,a,s,u)},d.call=function(t,e,n,r){return this.add(i.l.delayedCall(0,t,e,n),r)},d.set=function(t,e,n){return n=this._parseTimeOrLabel(n,0,!0),null==e.immediateRender&&(e.immediateRender=n===this._time&&!this._paused),this.add(new i.l(t,0,e),n)},t.exportRoot=function(e,n){null==(e=e||{}).smoothChildTiming&&(e.smoothChildTiming=!0);var r,o,a,s,u=new t(e),l=u._timeline;for(null==n&&(n=!0),l._remove(u,!0),u._startTime=0,u._rawPrevTime=u._time=u._totalTime=l._time,a=l._first;a;)s=a._next,n&&a instanceof i.l&&a.target===a.vars.onComplete||((o=a._startTime-a._delay)<0&&(r=1),u.add(a,o)),a=s;return l.add(u,0),r&&u.totalDuration(),u},d.add=function(e,n,r,a){var s,u,l,h,c,p;if("number"!=typeof n&&(n=this._parseTimeOrLabel(n,0,!0,e)),!(e instanceof i.a)){if(e instanceof Array||e&&e.push&&o(e)){for(r=r||"normal",a=a||0,s=n,u=e.length,l=0;l<u;l++)o(h=e[l])&&(h=new t({tweens:h})),this.add(h,s),"string"!=typeof h&&"function"!=typeof h&&("sequence"===r?s=h._startTime+h.totalDuration()/h._timeScale:"start"===r&&(h._startTime-=h.delay())),s+=a;return this._uncache(!0)}if("string"==typeof e)return this.addLabel(e,n);if("function"!=typeof e)throw"Cannot add "+e+" into the timeline; it is not a tween, timeline, function, or string.";e=i.l.delayedCall(0,e)}if(i.i.prototype.add.call(this,e,n),e._time&&Math.abs((s=Math.max(0,Math.min(e.totalDuration(),(this.rawTime()-e._startTime)*e._timeScale)))-e._totalTime)>1e-5&&e.render(s,!1,!1),(this._gc||this._time===this._duration)&&!this._paused&&this._duration<this.duration())for(p=(c=this).rawTime()>e._startTime;c._timeline;)p&&c._timeline.smoothChildTiming?c.totalTime(c._totalTime,!0):c._gc&&c._enabled(!0,!1),c=c._timeline;return this},d.remove=function(t){if(t instanceof i.a){this._remove(t,!1);var e=t._timeline=t.vars.useFrames?i.a._rootFramesTimeline:i.a._rootTimeline;return t._startTime=(t._paused?t._pauseTime:e._time)-(t._reversed?t.totalDuration()-t._totalTime:t._totalTime)/t._timeScale,this}if(t instanceof Array||t&&t.push&&o(t)){for(var n=t.length;--n>-1;)this.remove(t[n]);return this}return"string"==typeof t?this.removeLabel(t):this.kill(null,t)},d._remove=function(t,e){return i.i.prototype._remove.call(this,t,e),this._last?this._time>this.duration()&&(this._time=this._duration,this._totalTime=this._totalDuration):this._time=this._totalTime=this._duration=this._totalDuration=0,this},d.append=function(t,e){return this.add(t,this._parseTimeOrLabel(null,e,!0,t))},d.insert=d.insertMultiple=function(t,e,n,i){return this.add(t,e||0,n,i)},d.appendMultiple=function(t,e,n,i){return this.add(t,this._parseTimeOrLabel(null,e,!0,t),n,i)},d.addLabel=function(t,e){return this._labels[t]=this._parseTimeOrLabel(e),this},d.addPause=function(t,e,n,r){var o=i.l.delayedCall(0,c,n,r||this);return o.vars.onComplete=o.vars.onReverseComplete=e,o.data="isPause",this._hasPause=!0,this.add(o,t)},d.removeLabel=function(t){return delete this._labels[t],this},d.getLabelTime=function(t){return null!=this._labels[t]?this._labels[t]:-1},d._parseTimeOrLabel=function(t,e,n,r){var a,s;if(r instanceof i.a&&r.timeline===this)this.remove(r);else if(r&&(r instanceof Array||r.push&&o(r)))for(s=r.length;--s>-1;)r[s]instanceof i.a&&r[s].timeline===this&&this.remove(r[s]);if(a="number"!=typeof t||e?this.duration()>99999999999?this.recent().endTime(!1):this._duration:0,"string"==typeof e)return this._parseTimeOrLabel(e,n&&"number"==typeof t&&null==this._labels[e]?t-a:0,n);if(e=e||0,"string"==typeof t&&(isNaN(t)||null!=this._labels[t])){if(-1===(s=t.indexOf("=")))return null==this._labels[t]?n?this._labels[t]=a+e:e:this._labels[t]+e;e=parseInt(t.charAt(s-1)+"1",10)*Number(t.substr(s+1)),t=s>1?this._parseTimeOrLabel(t.substr(0,s-1),0,n):a}else null==t&&(t=a);return Number(t)+e},d.seek=function(t,e){return this.totalTime("number"==typeof t?t:this._parseTimeOrLabel(t),!1!==e)},d.stop=function(){return this.paused(!0)},d.gotoAndPlay=function(t,e){return this.play(t,e)},d.gotoAndStop=function(t,e){return this.pause(t,e)},d.render=function(t,e,n){this._gc&&this._enabled(!0,!1);var i,r,o,u,l,h,c,p=this._time,d=this._dirty?this.totalDuration():this._totalDuration,f=this._startTime,m=this._timeScale,g=this._paused;if(p!==this._time&&(t+=this._time-p),t>=d-1e-7&&t>=0)this._totalTime=this._time=d,this._reversed||this._hasPausedChild()||(r=!0,u="onComplete",l=!!this._timeline.autoRemoveChildren,0===this._duration&&(t<=0&&t>=-.0000001||this._rawPrevTime<0||1e-10===this._rawPrevTime)&&this._rawPrevTime!==t&&this._first&&(l=!0,this._rawPrevTime>1e-10&&(u="onReverseComplete"))),this._rawPrevTime=this._duration||!e||t||this._rawPrevTime===t?t:1e-10,t=d+1e-4;else if(t<1e-7){if(this._totalTime=this._time=0,(0!==p||0===this._duration&&1e-10!==this._rawPrevTime&&(this._rawPrevTime>0||t<0&&this._rawPrevTime>=0))&&(u="onReverseComplete",r=this._reversed),t<0)this._active=!1,this._timeline.autoRemoveChildren&&this._reversed?(l=r=!0,u="onReverseComplete"):this._rawPrevTime>=0&&this._first&&(l=!0),this._rawPrevTime=t;else{if(this._rawPrevTime=this._duration||!e||t||this._rawPrevTime===t?t:1e-10,0===t&&r)for(i=this._first;i&&0===i._startTime;)i._duration||(r=!1),i=i._next;t=0,this._initted||(l=!0)}}else{if(this._hasPause&&!this._forcingPlayhead&&!e){if(t>=p)for(i=this._first;i&&i._startTime<=t&&!h;)i._duration||"isPause"!==i.data||i.ratio||0===i._startTime&&0===this._rawPrevTime||(h=i),i=i._next;else for(i=this._last;i&&i._startTime>=t&&!h;)i._duration||"isPause"===i.data&&i._rawPrevTime>0&&(h=i),i=i._prev;h&&(this._time=t=h._startTime,this._totalTime=t+this._cycle*(this._totalDuration+this._repeatDelay))}this._totalTime=this._time=this._rawPrevTime=t}if(this._time!==p&&this._first||n||l||h){if(this._initted||(this._initted=!0),this._active||!this._paused&&this._time!==p&&t>0&&(this._active=!0),0===p&&this.vars.onStart&&(0===this._time&&this._duration||e||this._callback("onStart")),(c=this._time)>=p)for(i=this._first;i&&(o=i._next,c===this._time&&(!this._paused||g));)(i._active||i._startTime<=c&&!i._paused&&!i._gc)&&(h===i&&this.pause(),i._reversed?i.render((i._dirty?i.totalDuration():i._totalDuration)-(t-i._startTime)*i._timeScale,e,n):i.render((t-i._startTime)*i._timeScale,e,n)),i=o;else for(i=this._last;i&&(o=i._prev,c===this._time&&(!this._paused||g));){if(i._active||i._startTime<=p&&!i._paused&&!i._gc){if(h===i){for(h=i._prev;h&&h.endTime()>this._time;)h.render(h._reversed?h.totalDuration()-(t-h._startTime)*h._timeScale:(t-h._startTime)*h._timeScale,e,n),h=h._prev;h=null,this.pause()}i._reversed?i.render((i._dirty?i.totalDuration():i._totalDuration)-(t-i._startTime)*i._timeScale,e,n):i.render((t-i._startTime)*i._timeScale,e,n)}i=o}this._onUpdate&&(e||(a.length&&s(),this._callback("onUpdate"))),u&&(this._gc||f!==this._startTime&&m===this._timeScale||(0===this._time||d>=this.totalDuration())&&(r&&(a.length&&s(),this._timeline.autoRemoveChildren&&this._enabled(!1,!1),this._active=!1),!e&&this.vars[u]&&this._callback(u)))}},d._hasPausedChild=function(){for(var e=this._first;e;){if(e._paused||e instanceof t&&e._hasPausedChild())return!0;e=e._next}return!1},d.getChildren=function(t,e,n,r){r=r||-9999999999;for(var o=[],a=this._first,s=0;a;)a._startTime<r||(a instanceof i.l?!1!==e&&(o[s++]=a):(!1!==n&&(o[s++]=a),!1!==t&&(s=(o=o.concat(a.getChildren(!0,e,n))).length))),a=a._next;return o},d.getTweensOf=function(t,e){var n,r,o=this._gc,a=[],s=0;for(o&&this._enabled(!0,!0),r=(n=i.l.getTweensOf(t)).length;--r>-1;)(n[r].timeline===this||e&&this._contains(n[r]))&&(a[s++]=n[r]);return o&&this._enabled(!1,!0),a},d.recent=function(){return this._recent},d._contains=function(t){for(var e=t.timeline;e;){if(e===this)return!0;e=e.timeline}return!1},d.shiftChildren=function(t,e,n){n=n||0;for(var i,r=this._first,o=this._labels;r;)r._startTime>=n&&(r._startTime+=t),r=r._next;if(e)for(i in o)o[i]>=n&&(o[i]+=t);return this._uncache(!0)},d._kill=function(t,e){if(!t&&!e)return this._enabled(!1,!1);for(var n=e?this.getTweensOf(e):this.getChildren(!0,!0,!1),i=n.length,r=!1;--i>-1;)n[i]._kill(t,e)&&(r=!0);return r},d.clear=function(t){var e=this.getChildren(!1,!0,!0),n=e.length;for(this._time=this._totalTime=0;--n>-1;)e[n]._enabled(!1,!1);return!1!==t&&(this._labels={}),this._uncache(!0)},d.invalidate=function(){for(var t=this._first;t;)t.invalidate(),t=t._next;return i.a.prototype.invalidate.call(this)},d._enabled=function(t,e){if(t===this._gc)for(var n=this._first;n;)n._enabled(t,!0),n=n._next;return i.i.prototype._enabled.call(this,t,e)},d.totalTime=function(t,e,n){this._forcingPlayhead=!0;var r=i.a.prototype.totalTime.apply(this,arguments);return this._forcingPlayhead=!1,r},d.duration=function(t){return arguments.length?(0!==this.duration()&&0!==t&&this.timeScale(this._duration/t),this):(this._dirty&&this.totalDuration(),this._duration)},d.totalDuration=function(t){if(!arguments.length){if(this._dirty){for(var e,n,i=0,r=this._last,o=999999999999;r;)e=r._prev,r._dirty&&r.totalDuration(),r._startTime>o&&this._sortChildren&&!r._paused&&!this._calculatingDuration?(this._calculatingDuration=1,this.add(r,r._startTime-r._delay),this._calculatingDuration=0):o=r._startTime,r._startTime<0&&!r._paused&&(i-=r._startTime,this._timeline.smoothChildTiming&&(this._startTime+=r._startTime/this._timeScale,this._time-=r._startTime,this._totalTime-=r._startTime,this._rawPrevTime-=r._startTime),this.shiftChildren(-r._startTime,!1,-9999999999),o=0),(n=r._startTime+r._totalDuration/r._timeScale)>i&&(i=n),r=e;this._duration=this._totalDuration=i,this._dirty=!1}return this._totalDuration}return t&&this.totalDuration()?this.timeScale(this._totalDuration/t):this},d.paused=function(t){if(!t)for(var e=this._first,n=this._time;e;)e._startTime===n&&"isPause"===e.data&&(e._rawPrevTime=0),e=e._next;return i.a.prototype.paused.apply(this,arguments)},d.usesFrames=function(){for(var t=this._timeline;t._timeline;)t=t._timeline;return t===i.a._rootFramesTimeline},d.rawTime=function(t){return t&&(this._paused||this._repeat&&this.time()>0&&1>this.totalProgress())?this._totalTime%(this._duration+this._repeatDelay):this._paused?this._totalTime:(this._timeline.rawTime(t)-this._startTime)*this._timeScale},t},!0);var p=i.m.TimelineLite;i.k._gsDefine("TimelineMax",["TimelineLite","TweenLite","easing.Ease"],function(){var t=function(t){p.call(this,t),this._repeat=this.vars.repeat||0,this._repeatDelay=this.vars.repeatDelay||0,this._cycle=0,this._yoyo=!0===this.vars.yoyo,this._dirty=!0},e=i.l._internals,n=e.lazyTweens,r=e.lazyRender,o=i.k._gsDefine.globals,a=new i.b(null,null,1,0),s=t.prototype=new p;return s.constructor=t,s.kill()._gc=!1,t.version="2.0.2",s.invalidate=function(){return this._yoyo=!0===this.vars.yoyo,this._repeat=this.vars.repeat||0,this._repeatDelay=this.vars.repeatDelay||0,this._uncache(!0),p.prototype.invalidate.call(this)},s.addCallback=function(t,e,n,r){return this.add(i.l.delayedCall(0,t,n,r),e)},s.removeCallback=function(t,e){if(t){if(null==e)this._kill(null,t);else for(var n=this.getTweensOf(t,!1),i=n.length,r=this._parseTimeOrLabel(e);--i>-1;)n[i]._startTime===r&&n[i]._enabled(!1,!1)}return this},s.removePause=function(t){return this.removeCallback(p._internals.pauseCallback,t)},s.tweenTo=function(t,e){e=e||{};var n,r,s,u={ease:a,useFrames:this.usesFrames(),immediateRender:!1,lazy:!1},l=e.repeat&&o.TweenMax||i.l;for(r in e)u[r]=e[r];return u.time=this._parseTimeOrLabel(t),n=Math.abs(Number(u.time)-this._time)/this._timeScale||.001,s=new l(this,n,u),u.onStart=function(){s.target.paused(!0),s.vars.time===s.target.time()||n!==s.duration()||s.isFromTo||s.duration(Math.abs(s.vars.time-s.target.time())/s.target._timeScale).render(s.time(),!0,!0),e.onStart&&e.onStart.apply(e.onStartScope||e.callbackScope||s,e.onStartParams||[])},s},s.tweenFromTo=function(t,e,n){n=n||{},t=this._parseTimeOrLabel(t),n.startAt={onComplete:this.seek,onCompleteParams:[t],callbackScope:this},n.immediateRender=!1!==n.immediateRender;var i=this.tweenTo(e,n);return i.isFromTo=1,i.duration(Math.abs(i.vars.time-t)/this._timeScale||.001)},s.render=function(t,e,i){this._gc&&this._enabled(!0,!1);var o,a,s,u,l,h,c,p,d=this._time,f=this._dirty?this.totalDuration():this._totalDuration,m=this._duration,g=this._totalTime,v=this._startTime,$=this._timeScale,y=this._rawPrevTime,_=this._paused,x=this._cycle;if(d!==this._time&&(t+=this._time-d),t>=f-1e-7&&t>=0)this._locked||(this._totalTime=f,this._cycle=this._repeat),this._reversed||this._hasPausedChild()||(a=!0,u="onComplete",l=!!this._timeline.autoRemoveChildren,0===this._duration&&(t<=0&&t>=-.0000001||y<0||1e-10===y)&&y!==t&&this._first&&(l=!0,y>1e-10&&(u="onReverseComplete"))),this._rawPrevTime=this._duration||!e||t||this._rawPrevTime===t?t:1e-10,this._yoyo&&0!=(1&this._cycle)?this._time=t=0:(this._time=m,t=m+1e-4);else if(t<1e-7){if(this._locked||(this._totalTime=this._cycle=0),this._time=0,(0!==d||0===m&&1e-10!==y&&(y>0||t<0&&y>=0)&&!this._locked)&&(u="onReverseComplete",a=this._reversed),t<0)this._active=!1,this._timeline.autoRemoveChildren&&this._reversed?(l=a=!0,u="onReverseComplete"):y>=0&&this._first&&(l=!0),this._rawPrevTime=t;else{if(this._rawPrevTime=m||!e||t||this._rawPrevTime===t?t:1e-10,0===t&&a)for(o=this._first;o&&0===o._startTime;)o._duration||(a=!1),o=o._next;t=0,this._initted||(l=!0)}}else if(0===m&&y<0&&(l=!0),this._time=this._rawPrevTime=t,this._locked||(this._totalTime=t,0!==this._repeat&&(h=m+this._repeatDelay,this._cycle=this._totalTime/h>>0,0!==this._cycle&&this._cycle===this._totalTime/h&&g<=t&&this._cycle--,this._time=this._totalTime-this._cycle*h,this._yoyo&&0!=(1&this._cycle)&&(this._time=m-this._time),this._time>m?(this._time=m,t=m+1e-4):this._time<0?this._time=t=0:t=this._time)),this._hasPause&&!this._forcingPlayhead&&!e){if((t=this._time)>=d||this._repeat&&x!==this._cycle)for(o=this._first;o&&o._startTime<=t&&!c;)o._duration||"isPause"!==o.data||o.ratio||0===o._startTime&&0===this._rawPrevTime||(c=o),o=o._next;else for(o=this._last;o&&o._startTime>=t&&!c;)o._duration||"isPause"===o.data&&o._rawPrevTime>0&&(c=o),o=o._prev;c&&c._startTime<m&&(this._time=t=c._startTime,this._totalTime=t+this._cycle*(this._totalDuration+this._repeatDelay))}if(this._cycle!==x&&!this._locked){var b=this._yoyo&&0!=(1&x),w=b===(this._yoyo&&0!=(1&this._cycle)),A=this._totalTime,T=this._cycle,S=this._rawPrevTime,E=this._time;if(this._totalTime=x*m,this._cycle<x?b=!b:this._totalTime+=m,this._time=d,this._rawPrevTime=0===m?y-1e-4:y,this._cycle=x,this._locked=!0,d=b?0:m,this.render(d,e,0===m),e||this._gc||this.vars.onRepeat&&(this._cycle=T,this._locked=!1,this._callback("onRepeat")),d!==this._time||(w&&(this._cycle=x,this._locked=!0,d=b?m+1e-4:-.0001,this.render(d,!0,!1)),this._locked=!1,this._paused&&!_))return;this._time=E,this._totalTime=A,this._cycle=T,this._rawPrevTime=S}if(this._time!==d&&this._first||i||l||c){if(this._initted||(this._initted=!0),this._active||!this._paused&&this._totalTime!==g&&t>0&&(this._active=!0),0===g&&this.vars.onStart&&(0===this._totalTime&&this._totalDuration||e||this._callback("onStart")),(p=this._time)>=d)for(o=this._first;o&&(s=o._next,p===this._time&&(!this._paused||_));)(o._active||o._startTime<=this._time&&!o._paused&&!o._gc)&&(c===o&&this.pause(),o._reversed?o.render((o._dirty?o.totalDuration():o._totalDuration)-(t-o._startTime)*o._timeScale,e,i):o.render((t-o._startTime)*o._timeScale,e,i)),o=s;else for(o=this._last;o&&(s=o._prev,p===this._time&&(!this._paused||_));){if(o._active||o._startTime<=d&&!o._paused&&!o._gc){if(c===o){for(c=o._prev;c&&c.endTime()>this._time;)c.render(c._reversed?c.totalDuration()-(t-c._startTime)*c._timeScale:(t-c._startTime)*c._timeScale,e,i),c=c._prev;c=null,this.pause()}o._reversed?o.render((o._dirty?o.totalDuration():o._totalDuration)-(t-o._startTime)*o._timeScale,e,i):o.render((t-o._startTime)*o._timeScale,e,i)}o=s}this._onUpdate&&(e||(n.length&&r(),this._callback("onUpdate"))),u&&(this._locked||this._gc||v!==this._startTime&&$===this._timeScale||(0===this._time||f>=this.totalDuration())&&(a&&(n.length&&r(),this._timeline.autoRemoveChildren&&this._enabled(!1,!1),this._active=!1),!e&&this.vars[u]&&this._callback(u)))}else g!==this._totalTime&&this._onUpdate&&(e||this._callback("onUpdate"))},s.getActive=function(t,e,n){null==t&&(t=!0),null==e&&(e=!0),null==n&&(n=!1);var i,r,o=[],a=this.getChildren(t,e,n),s=0,u=a.length;for(i=0;i<u;i++)(r=a[i]).isActive()&&(o[s++]=r);return o},s.getLabelAfter=function(t){t||0!==t&&(t=this._time);var e,n=this.getLabelsArray(),i=n.length;for(e=0;e<i;e++)if(n[e].time>t)return n[e].name;return null},s.getLabelBefore=function(t){null==t&&(t=this._time);for(var e=this.getLabelsArray(),n=e.length;--n>-1;)if(e[n].time<t)return e[n].name;return null},s.getLabelsArray=function(){var t,e=[],n=0;for(t in this._labels)e[n++]={time:this._labels[t],name:t};return e.sort(function(t,e){return t.time-e.time}),e},s.invalidate=function(){return this._locked=!1,p.prototype.invalidate.call(this)},s.progress=function(t,e){return arguments.length?this.totalTime(this.duration()*(this._yoyo&&0!=(1&this._cycle)?1-t:t)+this._cycle*(this._duration+this._repeatDelay),e):this._time/this.duration()||0},s.totalProgress=function(t,e){return arguments.length?this.totalTime(this.totalDuration()*t,e):this._totalTime/this.totalDuration()||0},s.totalDuration=function(t){return arguments.length?-1!==this._repeat&&t?this.timeScale(this.totalDuration()/t):this:(this._dirty&&(p.prototype.totalDuration.call(this),this._totalDuration=-1===this._repeat?999999999999:this._duration*(this._repeat+1)+this._repeatDelay*this._repeat),this._totalDuration)},s.time=function(t,e){return arguments.length?(this._dirty&&this.totalDuration(),t>this._duration&&(t=this._duration),this._yoyo&&0!=(1&this._cycle)?t=this._duration-t+this._cycle*(this._duration+this._repeatDelay):0!==this._repeat&&(t+=this._cycle*(this._duration+this._repeatDelay)),this.totalTime(t,e)):this._time},s.repeat=function(t){return arguments.length?(this._repeat=t,this._uncache(!0)):this._repeat},s.repeatDelay=function(t){return arguments.length?(this._repeatDelay=t,this._uncache(!0)):this._repeatDelay},s.yoyo=function(t){return arguments.length?(this._yoyo=t,this):this._yoyo},s.currentLabel=function(t){return arguments.length?this.seek(t,!0):this.getLabelBefore(this._time+1e-8)},t},!0);var d=i.m.TimelineMax,f=180/Math.PI,m=[],g=[],v=[],$={},y=i.k._gsDefine.globals,_=function(t,e,n,i){n===i&&(n=i-(i-e)/1e6),t===e&&(e=t+(n-t)/1e6),this.a=t,this.b=e,this.c=n,this.d=i,this.da=i-t,this.ca=n-t,this.ba=e-t},x=function(t,e,n,i){var r={a:t},o={},a={},s={c:i},u=(t+e)/2,l=(e+n)/2,h=(n+i)/2,c=(u+l)/2,p=(l+h)/2,d=(p-c)/8;return r.b=u+(t-u)/4,o.b=c+d,r.c=o.a=(r.b+o.b)/2,o.c=a.a=(c+p)/2,a.b=p-d,s.b=h+(i-h)/4,a.c=s.a=(a.b+s.b)/2,[r,o,a,s]},b=function(t,e,n,i,r){var o,a,s,u,l,h,c,p,d,f,$,y,_,b=t.length-1,w=0,A=t[0].a;for(o=0;o<b;o++)a=(l=t[w]).a,s=l.d,u=t[w+1].d,r?($=m[o],_=((y=g[o])+$)*e*.25/(i?.5:v[o]||.5),p=s-((h=s-(s-a)*(i?.5*e:0!==$?_/$:0))+(((c=s+(u-s)*(i?.5*e:0!==y?_/y:0))-h)*(3*$/($+y)+.5)/4||0))):p=s-((h=s-(s-a)*e*.5)+(c=s+(u-s)*e*.5))/2,h+=p,c+=p,l.c=d=h,l.b=0!==o?A:A=l.a+.6*(l.c-l.a),l.da=s-a,l.ca=d-a,l.ba=A-a,n?(f=x(a,A,d,s),t.splice(w,1,f[0],f[1],f[2],f[3]),w+=4):w++,A=c;(l=t[w]).b=A,l.c=A+.4*(l.d-A),l.da=l.d-l.a,l.ca=l.c-l.a,l.ba=A-l.a,n&&(f=x(l.a,A,l.c,l.d),t.splice(w,1,f[0],f[1],f[2],f[3]))},w=function(t,e,n,i){var r,o,a,s,u,l,h=[];if(i)for(o=(t=[i].concat(t)).length;--o>-1;)"string"==typeof(l=t[o][e])&&"="===l.charAt(1)&&(t[o][e]=i[e]+Number(l.charAt(0)+l.substr(2)));if((r=t.length-2)<0)return h[0]=new _(t[0][e],0,0,t[0][e]),h;for(o=0;o<r;o++)a=t[o][e],s=t[o+1][e],h[o]=new _(a,0,0,s),n&&(u=t[o+2][e],m[o]=(m[o]||0)+(s-a)*(s-a),g[o]=(g[o]||0)+(u-s)*(u-s));return h[o]=new _(t[o][e],0,0,t[o+1][e]),h},A=function(t,e,n,i,r,o){var a,s,u,l,h,c,p,d,f={},y=[],_=o||t[0];for(s in r="string"==typeof r?","+r+",":",x,y,z,left,top,right,bottom,marginTop,marginLeft,marginRight,marginBottom,paddingLeft,paddingTop,paddingRight,paddingBottom,backgroundPosition,backgroundPosition_y,",null==e&&(e=1),t[0])y.push(s);if(t.length>1){for(d=t[t.length-1],p=!0,a=y.length;--a>-1;)if(Math.abs(_[s=y[a]]-d[s])>.05){p=!1;break}p&&(t=t.concat(),o&&t.unshift(o),t.push(t[1]),o=t[t.length-3])}for(m.length=g.length=v.length=0,a=y.length;--a>-1;)$[s=y[a]]=-1!==r.indexOf(","+s+","),f[s]=w(t,s,$[s],o);for(a=m.length;--a>-1;)m[a]=Math.sqrt(m[a]),g[a]=Math.sqrt(g[a]);if(!i){for(a=y.length;--a>-1;)if($[s])for(c=(u=f[y[a]]).length-1,l=0;l<c;l++)h=u[l+1].da/g[l]+u[l].da/m[l]||0,v[l]=(v[l]||0)+h*h;for(a=v.length;--a>-1;)v[a]=Math.sqrt(v[a])}for(a=y.length,l=n?4:1;--a>-1;)b(u=f[s=y[a]],e,n,i,$[s]),p&&(u.splice(0,l),u.splice(u.length-l,l));return f},T=function(t,e,n){for(var i,r,o,a,s,u,l,h,c,p,d,f=1/n,m=t.length;--m>-1;)for(o=(p=t[m]).a,a=p.d-o,s=p.c-o,u=p.b-o,i=r=0,h=1;h<=n;h++)i=r-(r=((l=f*h)*l*a+3*(c=1-l)*(l*s+c*u))*l),e[d=m*n+h-1]=(e[d]||0)+i*i},S=i.k._gsDefine.plugin({propName:"bezier",priority:-1,version:"1.3.8",API:2,global:!0,init:function(t,e,n){this._target=t,e instanceof Array&&(e={values:e}),this._func={},this._mod={},this._props=[],this._timeRes=null==e.timeResolution?6:parseInt(e.timeResolution,10);var i,r,o,a,s,u=e.values||[],l={},h=u[0],c=e.autoRotate||n.vars.orientToBezier;for(i in this._autoRotate=c?c instanceof Array?c:[["x","y","rotation",!0===c?0:Number(c)||0]]:null,h)this._props.push(i);for(o=this._props.length;--o>-1;)i=this._props[o],this._overwriteProps.push(i),r=this._func[i]="function"==typeof t[i],l[i]=r?t[i.indexOf("set")||"function"!=typeof t["get"+i.substr(3)]?i:"get"+i.substr(3)]():parseFloat(t[i]),s||l[i]!==u[0][i]&&(s=l);if(this._beziers="cubic"!==e.type&&"quadratic"!==e.type&&"soft"!==e.type?A(u,isNaN(e.curviness)?1:e.curviness,!1,"thruBasic"===e.type,e.correlate,s):function(t,e,n){var i,r,o,a,s,u,l,h,c,p,d,f={},m="cubic"===(e=e||"soft")?3:2,g="soft"===e,v=[];if(g&&n&&(t=[n].concat(t)),null==t||t.length<m+1)throw"invalid Bezier data";for(c in t[0])v.push(c);for(u=v.length;--u>-1;){for(f[c=v[u]]=s=[],p=0,h=t.length,l=0;l<h;l++)i=null==n?t[l][c]:"string"==typeof(d=t[l][c])&&"="===d.charAt(1)?n[c]+Number(d.charAt(0)+d.substr(2)):Number(d),g&&l>1&&l<h-1&&(s[p++]=(i+s[p-2])/2),s[p++]=i;for(h=p-m+1,p=0,l=0;l<h;l+=m)i=s[l],r=s[l+1],o=s[l+2],a=2===m?0:s[l+3],s[p++]=d=3===m?new _(i,r,o,a):new _(i,(2*r+i)/3,(2*r+o)/3,o);s.length=p}return f}(u,e.type,l),this._segCount=this._beziers[i].length,this._timeRes){var p=function(t,e){var n,i,r,o,a=[],s=[],u=0,l=0,h=(e=e>>0||6)-1,c=[],p=[];for(n in t)T(t[n],a,e);for(r=a.length,i=0;i<r;i++)u+=Math.sqrt(a[i]),p[o=i%e]=u,o===h&&(l+=u,c[o=i/e>>0]=p,s[o]=l,u=0,p=[]);return{length:l,lengths:s,segments:c}}(this._beziers,this._timeRes);this._length=p.length,this._lengths=p.lengths,this._segments=p.segments,this._l1=this._li=this._s1=this._si=0,this._l2=this._lengths[0],this._curSeg=this._segments[0],this._s2=this._curSeg[0],this._prec=1/this._curSeg.length}if(c=this._autoRotate)for(this._initialRotations=[],c[0]instanceof Array||(this._autoRotate=c=[c]),o=c.length;--o>-1;){for(a=0;a<3;a++)i=c[o][a],this._func[i]="function"==typeof t[i]&&t[i.indexOf("set")||"function"!=typeof t["get"+i.substr(3)]?i:"get"+i.substr(3)];i=c[o][2],this._initialRotations[o]=(this._func[i]?this._func[i].call(this._target):this._target[i])||0,this._overwriteProps.push(i)}return this._startRatio=n.vars.runBackwards?1:0,!0},set:function(t){var e,n,i,r,o,a,s,u,l,h,c=this._segCount,p=this._func,d=this._target,m=t!==this._startRatio;if(this._timeRes){if(l=this._lengths,h=this._curSeg,t*=this._length,i=this._li,t>this._l2&&i<c-1){for(u=c-1;i<u&&(this._l2=l[++i])<=t;);this._l1=l[i-1],this._li=i,this._curSeg=h=this._segments[i],this._s2=h[this._s1=this._si=0]}else if(t<this._l1&&i>0){for(;i>0&&(this._l1=l[--i])>=t;);0===i&&t<this._l1?this._l1=0:i++,this._l2=l[i],this._li=i,this._curSeg=h=this._segments[i],this._s1=h[(this._si=h.length-1)-1]||0,this._s2=h[this._si]}if(e=i,t-=this._l1,i=this._si,t>this._s2&&i<h.length-1){for(u=h.length-1;i<u&&(this._s2=h[++i])<=t;);this._s1=h[i-1],this._si=i}else if(t<this._s1&&i>0){for(;i>0&&(this._s1=h[--i])>=t;);0===i&&t<this._s1?this._s1=0:i++,this._s2=h[i],this._si=i}a=(i+(t-this._s1)/(this._s2-this._s1))*this._prec||0}else a=(t-(e=t<0?0:t>=1?c-1:c*t>>0)*(1/c))*c;for(n=1-a,i=this._props.length;--i>-1;)r=this._props[i],s=(a*a*(o=this._beziers[r][e]).da+3*n*(a*o.ca+n*o.ba))*a+o.a,this._mod[r]&&(s=this._mod[r](s,d)),p[r]?d[r](s):d[r]=s;if(this._autoRotate){var g,v,$,y,_,x,b,w=this._autoRotate;for(i=w.length;--i>-1;)r=w[i][2],x=w[i][3]||0,b=!0===w[i][4]?1:f,o=this._beziers[w[i][0]],g=this._beziers[w[i][1]],o&&g&&(o=o[e],g=g[e],v=o.a+(o.b-o.a)*a,v+=((y=o.b+(o.c-o.b)*a)-v)*a,y+=(o.c+(o.d-o.c)*a-y)*a,$=g.a+(g.b-g.a)*a,$+=((_=g.b+(g.c-g.b)*a)-$)*a,_+=(g.c+(g.d-g.c)*a-_)*a,s=m?Math.atan2(_-$,y-v)*b+x:this._initialRotations[i],this._mod[r]&&(s=this._mod[r](s,d)),p[r]?d[r](s):d[r]=s)}}}),E=S.prototype;S.bezierThrough=A,S.cubicToQuadratic=x,S._autoCSS=!0,S.quadraticToCubic=function(t,e,n){return new _(t,(2*e+t)/3,(2*e+n)/3,n)},S._cssRegister=function(){var t=y.CSSPlugin;if(t){var e=t._internals,n=e._parseToProxy,i=e._setPluginRatio,r=e.CSSPropTween;e._registerComplexSpecialProp("bezier",{parser:function(t,e,o,a,s,u){e instanceof Array&&(e={values:e}),u=new S;var l,h,c,p=e.values,d=p.length-1,f=[],m={};if(d<0)return s;for(l=0;l<=d;l++)c=n(t,p[l],a,s,u,d!==l),f[l]=c.end;for(h in e)m[h]=e[h];return m.values=f,(s=new r(t,"bezier",0,0,c.pt,2)).data=c,s.plugin=u,s.setRatio=i,0===m.autoRotate&&(m.autoRotate=!0),!m.autoRotate||m.autoRotate instanceof Array||(l=!0===m.autoRotate?0:Number(m.autoRotate),m.autoRotate=null!=c.end.left?[["left","top","rotation",l,!1]]:null!=c.end.x&&[["x","y","rotation",l,!1]]),m.autoRotate&&(a._transform||a._enableTransforms(!1),c.autoRotate=a._target._gsTransform,c.proxy.rotation=c.autoRotate.rotation||0,a._overwriteProps.push("rotation")),u._onInitTween(c.proxy,m,a._tween),s}})}},E._mod=function(t){for(var e,n=this._overwriteProps,i=n.length;--i>-1;)(e=t[n[i]])&&"function"==typeof e&&(this._mod[n[i]]=e)},E._kill=function(t){var e,n,i=this._props;for(e in this._beziers)if(e in t)for(delete this._beziers[e],delete this._func[e],n=i.length;--n>-1;)i[n]===e&&i.splice(n,1);if(i=this._autoRotate)for(n=i.length;--n>-1;)t[i[n][2]]&&i.splice(n,1);return this._super._kill.call(this,t)},i.k._gsDefine("easing.Back",["easing.Ease"],function(){var t,e,n,r,o=i.k.GreenSockGlobals||i.k,a=o.com.greensock,s=2*Math.PI,u=Math.PI/2,l=a._class,h=function(t,e){var n=l("easing."+t,function(){},!0),r=n.prototype=new i.b;return r.constructor=n,r.getRatio=e,n},c=i.b.register||function(){},p=function(t,e,n,i,r){var o=l("easing."+t,{easeOut:new e,easeIn:new n,easeInOut:new i},!0);return c(o,t),o},d=function(t,e,n){this.t=t,this.v=e,n&&(this.next=n,n.prev=this,this.c=n.v-e,this.gap=n.t-t)},f=function(t,e){var n=l("easing."+t,function(t){this._p1=t||0===t?t:1.70158,this._p2=1.525*this._p1},!0),r=n.prototype=new i.b;return r.constructor=n,r.getRatio=e,r.config=function(t){return new n(t)},n},m=p("Back",f("BackOut",function(t){return(t-=1)*t*((this._p1+1)*t+this._p1)+1}),f("BackIn",function(t){return t*t*((this._p1+1)*t-this._p1)}),f("BackInOut",function(t){return(t*=2)<1?.5*t*t*((this._p2+1)*t-this._p2):.5*((t-=2)*t*((this._p2+1)*t+this._p2)+2)})),g=l("easing.SlowMo",function(t,e,n){e=e||0===e?e:.7,null==t?t=.7:t>1&&(t=1),this._p=1!==t?e:0,this._p1=(1-t)/2,this._p2=t,this._p3=this._p1+this._p2,this._calcEnd=!0===n},!0),v=g.prototype=new i.b;return v.constructor=g,v.getRatio=function(t){var e=t+(.5-t)*this._p;return t<this._p1?this._calcEnd?1-(t=1-t/this._p1)*t:e-(t=1-t/this._p1)*t*t*t*e:t>this._p3?this._calcEnd?1===t?0:1-(t=(t-this._p3)/this._p1)*t:e+(t-e)*(t=(t-this._p3)/this._p1)*t*t*t:this._calcEnd?1:e},g.ease=new g(.7,.7),v.config=g.config=function(t,e,n){return new g(t,e,n)},(v=(t=l("easing.SteppedEase",function(t,e){t=t||1,this._p1=1/t,this._p2=t+(e?0:1),this._p3=e?1:0},!0)).prototype=new i.b).constructor=t,v.getRatio=function(t){return t<0?t=0:t>=1&&(t=.999999999),((this._p2*t|0)+this._p3)*this._p1},v.config=t.config=function(e,n){return new t(e,n)},(v=(e=l("easing.ExpoScaleEase",function(t,e,n){this._p1=Math.log(e/t),this._p2=e-t,this._p3=t,this._ease=n},!0)).prototype=new i.b).constructor=e,v.getRatio=function(t){return this._ease&&(t=this._ease.getRatio(t)),(this._p3*Math.exp(this._p1*t)-this._p3)/this._p2},v.config=e.config=function(t,n,i){return new e(t,n,i)},(v=(n=l("easing.RoughEase",function(t){for(var e,n,r,o,a,s,u=(t=t||{}).taper||"none",l=[],h=0,c=0|(t.points||20),p=c,f=!1!==t.randomize,m=!0===t.clamp,g=t.template instanceof i.b?t.template:null,v="number"==typeof t.strength?.4*t.strength:.4;--p>-1;)e=f?Math.random():1/c*p,n=g?g.getRatio(e):e,r="none"===u?v:"out"===u?(o=1-e)*o*v:"in"===u?e*e*v:e<.5?(o=2*e)*o*.5*v:(o=2*(1-e))*o*.5*v,f?n+=Math.random()*r-.5*r:p%2?n+=.5*r:n-=.5*r,m&&(n>1?n=1:n<0&&(n=0)),l[h++]={x:e,y:n};for(l.sort(function(t,e){return t.x-e.x}),s=new d(1,1,null),p=c;--p>-1;)a=l[p],s=new d(a.x,a.y,s);this._prev=new d(0,0,0!==s.t?s:s.next)},!0)).prototype=new i.b).constructor=n,v.getRatio=function(t){var e=this._prev;if(t>e.t){for(;e.next&&t>=e.t;)e=e.next;e=e.prev}else for(;e.prev&&t<=e.t;)e=e.prev;return this._prev=e,e.v+(t-e.t)/e.gap*e.c},v.config=function(t){return new n(t)},n.ease=new n,p("Bounce",h("BounceOut",function(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}),h("BounceIn",function(t){return(t=1-t)<1/2.75?1-7.5625*t*t:t<2/2.75?1-(7.5625*(t-=1.5/2.75)*t+.75):t<2.5/2.75?1-(7.5625*(t-=2.25/2.75)*t+.9375):1-(7.5625*(t-=2.625/2.75)*t+.984375)}),h("BounceInOut",function(t){var e=t<.5;return(t=e?1-2*t:2*t-1)<1/2.75?t*=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,e?.5*(1-t):.5*t+.5})),p("Circ",h("CircOut",function(t){return Math.sqrt(1-(t-=1)*t)}),h("CircIn",function(t){return-(Math.sqrt(1-t*t)-1)}),h("CircInOut",function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)})),p("Elastic",(r=function(t,e,n){var r=l("easing."+t,function(t,e){this._p1=t>=1?t:1,this._p2=(e||n)/(t<1?t:1),this._p3=this._p2/s*(Math.asin(1/this._p1)||0),this._p2=s/this._p2},!0),o=r.prototype=new i.b;return o.constructor=r,o.getRatio=e,o.config=function(t,e){return new r(t,e)},r})("ElasticOut",function(t){return this._p1*Math.pow(2,-10*t)*Math.sin((t-this._p3)*this._p2)+1},.3),r("ElasticIn",function(t){return-this._p1*Math.pow(2,10*(t-=1))*Math.sin((t-this._p3)*this._p2)},.3),r("ElasticInOut",function(t){return(t*=2)<1?-(this._p1*Math.pow(2,10*(t-=1))*Math.sin((t-this._p3)*this._p2)*.5):this._p1*Math.pow(2,-10*(t-=1))*Math.sin((t-this._p3)*this._p2)*.5+1},.45)),p("Expo",h("ExpoOut",function(t){return 1-Math.pow(2,-10*t)}),h("ExpoIn",function(t){return Math.pow(2,10*(t-1))-.001}),h("ExpoInOut",function(t){return(t*=2)<1?.5*Math.pow(2,10*(t-1)):.5*(2-Math.pow(2,-10*(t-1)))})),p("Sine",h("SineOut",function(t){return Math.sin(t*u)}),h("SineIn",function(t){return 1-Math.cos(t*u)}),h("SineInOut",function(t){return -.5*(Math.cos(Math.PI*t)-1)})),l("easing.EaseLookup",{find:function(t){return i.b.map[t]}},!0),c(o.SlowMo,"SlowMo","ease,"),c(n,"RoughEase","ease,"),c(t,"SteppedEase","ease,"),m},!0);var P=i.m.Back,C=i.m.Elastic,L=i.m.Bounce,M=i.m.RoughEase,R=i.m.SlowMo,I=i.m.SteppedEase,D=i.m.Circ,N=i.m.Expo,B=i.m.Sine,O=i.m.ExpoScaleEase;n.d(e,"TweenMax",function(){return G}),n.d(e,"default",function(){return G}),n.d(e,"TweenLite",function(){return i.l}),n.d(e,"TimelineLite",function(){return p}),n.d(e,"TimelineMax",function(){return d}),n.d(e,"CSSPlugin",function(){return o}),n.d(e,"AttrPlugin",function(){return a}),n.d(e,"BezierPlugin",function(){return S}),n.d(e,"DirectionalRotationPlugin",function(){return c}),n.d(e,"RoundPropsPlugin",function(){return s}),n.d(e,"TweenPlugin",function(){return i.j}),n.d(e,"Ease",function(){return i.b}),n.d(e,"Power0",function(){return i.d}),n.d(e,"Power1",function(){return i.e}),n.d(e,"Power2",function(){return i.f}),n.d(e,"Power3",function(){return i.g}),n.d(e,"Power4",function(){return i.h}),n.d(e,"Linear",function(){return i.c}),n.d(e,"Back",function(){return P}),n.d(e,"Elastic",function(){return C}),n.d(e,"Bounce",function(){return L}),n.d(e,"RoughEase",function(){return M}),n.d(e,"SlowMo",function(){return R}),n.d(e,"SteppedEase",function(){return I}),n.d(e,"Circ",function(){return D}),n.d(e,"Expo",function(){return N}),n.d(e,"Sine",function(){return B}),n.d(e,"ExpoScaleEase",function(){return O});var G=r;G._autoActivated=[p,d,o,a,S,s,c,P,C,L,M,R,I,D,N,B,O]},function(t,e,n){var i;t.exports=((i=function(){function t(t){return r.appendChild(t.dom),t}function e(t){for(var e=0;e<r.children.length;e++)r.children[e].style.display=e===t?"block":"none";n=t}var n=0,r=document.createElement("div");r.style.cssText="position:fixed;top:0;left:0;cursor:pointer;opacity:0.9;z-index:10000",r.addEventListener("click",function(t){t.preventDefault(),e(++n%r.children.length)},!1);var o=(performance||Date).now(),a=o,s=0,u=t(new i.Panel("FPS","#0ff","#002")),l=t(new i.Panel("MS","#0f0","#020"));if(self.performance&&self.performance.memory)var h=t(new i.Panel("MB","#f08","#201"));return e(0),{REVISION:16,dom:r,addPanel:t,showPanel:e,begin:function(){o=(performance||Date).now()},end:function(){s++;var t=(performance||Date).now();if(l.update(t-o,200),t>a+1e3&&(u.update(1e3*s/(t-a),100),a=t,s=0,h)){var e=performance.memory;h.update(e.usedJSHeapSize/1048576,e.jsHeapSizeLimit/1048576)}return t},update:function(){o=this.end()},domElement:r,setMode:e}}).Panel=function(t,e,n){var i=1/0,r=0,o=Math.round,a=o(window.devicePixelRatio||1),s=80*a,u=48*a,l=3*a,h=2*a,c=3*a,p=15*a,d=74*a,f=30*a,m=document.createElement("canvas");m.width=s,m.height=u,m.style.cssText="width:80px;height:48px";var g=m.getContext("2d");return g.font="bold "+9*a+"px Helvetica,Arial,sans-serif",g.textBaseline="top",g.fillStyle=n,g.fillRect(0,0,s,u),g.fillStyle=e,g.fillText(t,l,h),g.fillRect(c,p,d,f),g.fillStyle=n,g.globalAlpha=.9,g.fillRect(c,p,d,f),{dom:m,update:function(u,v){i=Math.min(i,u),r=Math.max(r,u),g.fillStyle=n,g.globalAlpha=1,g.fillRect(0,0,s,p),g.fillStyle=e,g.fillText(o(u)+" "+t+" ("+o(i)+"-"+o(r)+")",l,h),g.drawImage(m,c+a,p,d-a,f,c,p,d-a,f),g.fillRect(c+d-a,p,a,f),g.fillStyle=n,g.globalAlpha=.9,g.fillRect(c+d-a,p,a,o((1-u/v)*f))}}},i)},function(t,e){t.exports={string:"#controlKit{position:absolute;top:0;left:0;width:100%;height:100%;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}#controlKit .panel{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;pointer-events:auto;position:relative;z-index:1;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;opacity:1;float:left;width:200px;border-radius:3px;-moz-border-radius:3px;box-shadow:0 2px 2px rgba(0,0,0,.25);margin:0;padding:0;background-color:#1a1a1a;font-family:Arial,sans-serif}#controlKit .panel .wrap{width:auto;height:auto;margin:0;padding:0;position:relative;overflow:hidden}#controlKit .panel ul{margin:0;padding:0;list-style:none}#controlKit .panel .color,#controlKit .panel input[type=text],#controlKit .panel textarea,#controlKit .picker input[type=text]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%;height:25px;padding:0 0 0 8px;font-family:Arial,sans-serif;font-size:11px;color:#fff;text-shadow:1px 1px #000;outline:0;background:#222729;background-image:-o-linear-gradient(rgba(0,0,0,.075) 0,rgba(0,0,0,.125) 100%);background-image:linear-gradient(rgba(0,0,0,.075) 0,rgba(0,0,0,.125) 100%);border:none;box-shadow:0 0 0 1px #1f1f1f inset;border-radius:2px;-moz-border-radius:2px}#controlKit .panel .button,#controlKit .panel .select,#controlKit .panel .select-active,#controlKit .picker .button{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;cursor:pointer;width:100%;height:26px;margin:0;background-image:-o-linear-gradient(#404040 0,#3b3b3b 100%);background-image:linear-gradient(#404040 0,#3b3b3b 100%);border:none;outline:0;border-radius:2px;box-shadow:0 0 0 1px #1f1f1f inset,-1px 2px 0 0 #4a4a4a inset;font-family:Arial,sans-serif;color:#fff}#controlKit .panel textarea{padding:5px 8px 2px;overflow:hidden;resize:none;vertical-align:top;white-space:nowrap}#controlKit .panel .textarea-wrap{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%;padding:0;float:left;height:100%;overflow:hidden;border:none;border-radius:2px;-moz-border-radius:2px;background-color:#222729;box-shadow:0 0 1px 2px rgba(0,0,0,.0125) inset,0 0 1px 1px #111314 inset;background-image:-o-linear-gradient(rgba(0,0,0,.075) 0,rgba(0,0,0,.125) 100%);background-image:linear-gradient(rgba(0,0,0,.075) 0,rgba(0,0,0,.125) 100%)}#controlKit .panel .textarea-wrap textarea{border:none;border-radius:2px;-moz-border-radius:2px;box-shadow:none;background:0 0}#controlKit .panel .textarea-wrap .scrollBar{border:1px solid #101213;border-bottom-right-radius:2px;border-top-right-radius:2px;border-left:none;box-shadow:0 0 1px 2px rgba(0,0,0,.0125) inset,0 0 1px 1px #111314 inset}#controlKit .panel canvas{cursor:pointer;vertical-align:bottom;border:none;box-shadow:0 0 0 1px #1f1f1f inset;border-radius:2px;-moz-border-radius:2px}#controlKit .panel .canvas-wrap,#controlKit .panel .svg-wrap{margin:6px 0 0;position:relative;width:70%;float:right;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:none;border-radius:2px;-moz-border-radius:2px;background:#1e2224;background-image:-o-linear-gradient(transparent 0,rgba(0,0,0,.05) 100%);background-image:linear-gradient(transparent 0,rgba(0,0,0,.05) 100%)}#controlKit .panel .canvas-wrap svg,#controlKit .panel .svg-wrap svg{position:absolute;left:0;top:0;cursor:pointer;vertical-align:bottom;border:none;box-shadow:0 0 0 1px #1f1f1f inset;border-radius:2px;-moz-border-radius:2px}#controlKit .panel .button,#controlKit .picker .button{font-size:10px;font-weight:700;text-shadow:0 1px #000;text-transform:uppercase}#controlKit .panel .button:hover,#controlKit .picker .button:hover{background-image:-o-linear-gradient(#454545 0,#3b3b3b 100%);background-image:linear-gradient(#454545 0,#3b3b3b 100%)}#controlKit .panel .button:active,#controlKit .picker .button:active{background-image:-o-linear-gradient(#404040 0,#3b3b3b 100%);background-image:linear-gradient(#404040 0,#3b3b3b 100%)}#controlKit .panel .color-with-preset-wrap,#controlKit .panel .input-with-preset-wrap{width:100%;float:left}#controlKit .panel .color-with-preset-wrap .color,#controlKit .panel .input-with-preset-wrap input[type=text]{padding-right:25px;border-top-right-radius:2px;border-bottom-right-radius:2px;float:left}#controlKit .panel .button-preset,#controlKit .panel .button-preset-active{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;position:absolute;right:0;width:20px;height:25px;margin:0;cursor:pointer;float:right;border:none;border-top-right-radius:2px;border-bottom-right-radius:2px;box-shadow:0 0 0 1px #1f1f1f inset,-1px 2px 0 0 #4a4a4a inset;outline:0}#controlKit .panel .button-preset-active,#controlKit .panel .button-preset:hover{background:url(data:image/png;base64,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) 50% 50% no-repeat,linear-gradient(#454545 0,#3b3b3b 100%)}#controlKit .panel .button-preset{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAG5JREFUeNpi5ODiamRgYKhjwA4amVx8gxjmL1rC8P3rVxQ8b+ESBhffIAZmNR29A5evXWdiZGC019XSZGBgYGBYvmY9w7I16xoZGBgaWKBG1S9bs+4/AwNDPQMDA1ySgYGBgdEnPAbZzgY0mgEwAE9lJT1lrsffAAAAAElFTkSuQmCC) 50% 50% no-repeat,linear-gradient(#404040 0,#3b3b3b 100%)}#controlKit .panel input[type=checkbox]{margin:6px 0 0}#controlKit .panel .select,#controlKit .panel .select-active{padding-left:10px;padding-right:20px;font-size:11px;text-align:left;text-shadow:1px 1px #000;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}#controlKit .panel .select{background:url(data:image/png;base64,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) 100% 50% no-repeat,linear-gradient(#404040 0,#3b3b3b 100%)}#controlKit .panel .select-active,#controlKit .panel .select:hover{background:url(data:image/png;base64,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) 100% 50% no-repeat,linear-gradient(#454545 0,#3b3b3b 100%)}#controlKit .panel .slider-handle,#controlKit .panel .slider-slot,#controlKit .panel .slider-wrap,#controlKit .panel .wrap-slider{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#controlKit .panel .wrap-slider{width:70%;padding:6px 0 0;float:right;height:100%}#controlKit .panel .wrap-slider input[type=text]{width:25%;text-align:center;padding:0;float:right}#controlKit .panel .slider-wrap{float:left;cursor:ew-resize;width:70%}#controlKit .panel .slider-slot{width:100%;height:25px;padding:3px;background-color:#1e2224;border:none;box-shadow:0 0 0 1px #1f1f1f inset;border-radius:2px;-moz-border-radius:2px}#controlKit .panel .slider-handle{position:relative;width:100%;height:100%;background:#b32435;background-image:-o-linear-gradient(transparent 0,rgba(0,0,0,.1) 100%);background-image:linear-gradient(transparent 0,rgba(0,0,0,.1) 100%);box-shadow:0 1px 0 0 #0f0f0f}#controlKit .panel .color{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;width:100%;height:25px;padding:0;border:none;background:#fff;box-shadow:0 0 0 1px #111314 inset;text-align:center;line-height:25px;border-radius:2px;-moz-border-radius:2px}#controlKit .panel .graph-slider-x-wrap,#controlKit .panel .graph-slider-y-wrap{position:absolute;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#controlKit .panel .graph-slider-x-wrap{bottom:0;left:0;width:100%;padding:6px 20px 6px 6px}#controlKit .panel .graph-slider-y-wrap{top:0;right:0;height:100%;padding:6px 6px 20px}#controlKit .panel .graph-slider-x,#controlKit .panel .graph-slider-y{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-radius:2px;-moz-border-radius:2px;background:rgba(24,27,29,.5);border:1px solid #181b1d}#controlKit .panel .graph-slider-x{height:8px}#controlKit .panel .graph-slider-y{width:8px;height:100%}#controlKit .panel .graph-slider-x-handle,#controlKit .panel .graph-slider-y-handle{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;cursor:pointer;border:1px solid #181b1d;background:#303639}#controlKit .panel .graph-slider-x-handle{width:20px;height:100%;border-top:none;border-bottom:none}#controlKit .panel .graph-slider-y-handle{width:100%;height:20px;border-left:none;border-right:none}#controlKit .sub-group .wrap .wrap .wrap{width:25%!important;padding:0!important;float:left!important}#controlKit .sub-group .wrap .wrap .wrap .label{width:100%!important;padding:8px 0 0!important;color:#878787!important;text-align:center!important;text-transform:uppercase!important;font-weight:700!important;text-shadow:1px 1px #1a1a1a!important}#controlKit .sub-group .wrap .wrap .wrap input[type=text]{padding:0;text-align:center}#controlKit .options{pointer-events:auto;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:1px solid #1f1f1f;border-radius:2px;-moz-border-radius:2px;position:absolute;z-index:2147483638;left:0;top:0;width:auto;height:auto;box-shadow:0 1px 0 0 #4a4a4a inset;background-color:#454545;font-family:Arial,sans-serif;font-size:11px;color:#fff;text-shadow:1px 1px #000;overflow:hidden}#controlKit .options ul{width:100%;list-style:none;margin:0;padding:0}#controlKit .options ul li{margin:0;width:100%;height:25px;line-height:25px;padding:0 20px 0 10px;overflow:hidden;white-space:normal;text-overflow:ellipsis;cursor:pointer}#controlKit .options ul li:hover{background-color:#1f2325}#controlKit .options ul .li-selected{background-color:#292d30}#controlKit .options .color{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}#controlKit .options .color .li-selected,#controlKit .options .color li{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0;height:25px;line-height:25px;text-align:center}#controlKit .options .color .li-selected:hover,#controlKit .options .color li:hover{background:0 0;font-weight:700}#controlKit .options .color .li-selected{font-weight:700}#controlKit .panel .label,#controlKit .picker .label{width:100%;float:left;font-size:11px;font-weight:700;text-shadow:0 1px #000;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:default}#controlKit .panel .head,#controlKit .panel .panel-head-inactive,#controlKit .picker .head{height:30px;padding:0 10px;background:#1a1a1a;overflow:hidden}#controlKit .panel .head .wrap,#controlKit .panel .panel-head-inactive .wrap,#controlKit .picker .head .wrap{width:auto;height:auto;margin:0;padding:0;position:relative;overflow:hidden}#controlKit .panel .head .label,#controlKit .picker .head .label{cursor:pointer;line-height:30px;color:#65696b}#controlKit .panel .group-list .group .head{height:38px;padding:0 10px;border-top:1px solid #4f4f4f;border-bottom:1px solid #262626;background-image:-o-linear-gradient(#454545 0,#3b3b3b 100%);background-image:linear-gradient(#454545 0,#3b3b3b 100%);cursor:pointer}#controlKit .panel .group-list .group .head .label{font-size:12px;line-height:38px;color:#fff}#controlKit .panel .group-list .group .head:hover{border-top:1px solid #525252;background-image:-o-linear-gradient(#454545 0,#404040 100%);background-image:linear-gradient(#454545 0,#404040 100%)}#controlKit .panel .group-list .group li{height:35px;padding:0 10px}#controlKit .panel .group-list .group .sub-group-list .sub-group:last-of-type{border-bottom:none}#controlKit .panel .group-list .group .sub-group-list .sub-group{padding:0;height:auto;border-bottom:1px solid #242424}#controlKit .panel .group-list .group .sub-group-list .sub-group ul{overflow:hidden}#controlKit .panel .group-list .group .sub-group-list .sub-group ul li{background:#2e2e2e;border-bottom:1px solid #222729}#controlKit .panel .group-list .group .sub-group-list .sub-group ul li:last-of-type{border-bottom:none}#controlKit .panel .group-list .group .sub-group-list .sub-group:first-child{margin-top:0}#controlKit .panel .group-list .group .sub-group-list .sub-group .head,#controlKit .panel .group-list .group .sub-group-list .sub-group .head-inactive{cursor:pointer}#controlKit .panel .group-list .group .sub-group-list .sub-group .head{height:27px;padding:0 10px;border-top:none;border-bottom:1px solid #242424;background-image:none;background-color:#272727}#controlKit .panel .group-list .group .sub-group-list .sub-group .head:hover{background-image:none;background-color:#272727}#controlKit .panel .group-list .group .sub-group-list .sub-group .head-inactive{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:27px;padding:0 10px;box-shadow:0 1px 0 0 #404040 inset;background-image:-o-linear-gradient(#3b3b3b 0,#383838 100%);background-image:linear-gradient(#3b3b3b 0,#383838 100%)}#controlKit .panel .group-list .group .sub-group-list .sub-group .head-inactive:hover{box-shadow:0 1px 0 0 #474747 inset;background-image:none;background-image:-o-linear-gradient(#404040 0,#3b3b3b 100%);background-image:linear-gradient(#404040 0,#3b3b3b 100%)}#controlKit .panel .group-list .group .sub-group-list .sub-group .head .label,#controlKit .panel .group-list .group .sub-group-list .sub-group .head-inactive .label{margin:0;padding:0;line-height:27px;color:#fff;font-weight:700;font-size:11px;text-shadow:1px 1px #000;text-transform:capitalize}#controlKit .panel .group-list .group .sub-group-list .sub-group .head .wrap .label,#controlKit .panel .group-list .group .sub-group-list .sub-group .head-inactive .wrap .label{width:100%;font-weight:700;color:#fff;padding:0}#controlKit .panel .group-list .group .sub-group-list .sub-group .wrap .label{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%;width:30%;padding:12px 5px 0 0;float:left;font-size:11px;font-weight:400;color:#aeb5b8;text-shadow:1px 1px #000}#controlKit .panel .group-list .group .sub-group-list .sub-group .wrap .wrap{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:70%;padding:5px 0 0;float:right;height:100%}#controlKit .panel .group-list .group:last-child .scroll-buffer:nth-of-type(3),#controlKit .panel .group-list .group:last-child .sub-group-list{border-bottom:none}#controlKit .panel .scroll-wrap{position:relative;overflow:hidden}#controlKit .panel .scroll-buffer{width:100%;height:8px;border-top:1px solid #3b4447;border-bottom:1px solid #1e2224}#controlKit .panel .scrollBar{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;width:15px;height:100%;float:right;top:0;padding:0;margin:0;position:relative;background:#212628;background-image:linear-gradient(to right,#242424 0,#2e2e2e 100%)}#controlKit .panel .scrollBar .track{padding:0 3px 0 2px}#controlKit .panel .scrollBar .track .thumb{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:11px;position:absolute;cursor:pointer;background-color:#343434;border:1px solid #1b1f21;border-radius:10px;-moz-border-radius:10px;box-shadow:inset 0 1px 0 0 #434b50}#controlKit .panel .menu,#controlKit .panel .menu-active,#controlKit .picker .menu{float:right;padding:5px 0 0}#controlKit .panel .menu input[type=button],#controlKit .panel .menu-active input[type=button],#controlKit .picker .menu input[type=button]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;cursor:pointer;height:20px;border:none;vertical-align:top;border-radius:2px;-moz-border-radius:2px;font-family:Arial,sans-serif;font-size:10px;font-weight:700;color:#aaa;text-shadow:0 -1px #000;text-transform:uppercase;box-shadow:0 0 0 1px #131313 inset,-1px 2px 0 0 #212527 inset;outline:0}#controlKit .panel .menu .button-menu-close,#controlKit .panel .menu .button-menu-hide,#controlKit .panel .menu .button-menu-show,#controlKit .panel .menu-active .button-menu-close,#controlKit .panel .menu-active .button-menu-hide,#controlKit .panel .menu-active .button-menu-show,#controlKit .picker .menu .button-menu-close,#controlKit .picker .menu .button-menu-hide,#controlKit .picker .menu .button-menu-show{width:20px;margin-left:4px}#controlKit .panel .menu .button-menu-hide,#controlKit .panel .menu-active .button-menu-hide,#controlKit .picker .menu .button-menu-hide{background:url(data:image/png;base64,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) 50% 50% no-repeat,#1a1d1f}#controlKit .panel .menu .button-menu-hide:hover,#controlKit .panel .menu-active .button-menu-hide:hover,#controlKit .picker .menu .button-menu-hide:hover{background:url(data:image/png;base64,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) 50% 50% no-repeat,#000;box-shadow:#fff 0,#000 100%}#controlKit .panel .menu .button-menu-show,#controlKit .panel .menu-active .button-menu-show,#controlKit .picker .menu .button-menu-show{background:url(data:image/png;base64,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) 50% 50% no-repeat,#1a1d1f}#controlKit .panel .menu .button-menu-show:hover,#controlKit .panel .menu-active .button-menu-show:hover,#controlKit .picker .menu .button-menu-show:hover{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAFpJREFUeNpsjDEOgCAQBOc4eqNfoCB8wMrCnwk/82EHWEkwcatJZrKyrFsGLv5X/H6cqPc41Y9ptVLN0BDT3VsTETnFuVkWIGuICWBEvfchAfz0mqvZ4BeeAQDzViMzJy0RXgAAAABJRU5ErkJggg==) 50% 50% no-repeat,#000;box-shadow:#fff 0,#000 100%}#controlKit .panel .menu .button-menu-close,#controlKit .panel .menu-active .button-menu-close,#controlKit .picker .menu .button-menu-close{background:url(data:image/png;base64,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) 50% 50% no-repeat,#1a1d1f}#controlKit .panel .menu .button-menu-close:hover,#controlKit .panel .menu-active .button-menu-close:hover,#controlKit .picker .menu .button-menu-close:hover{background:url(data:image/png;base64,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) 50% 50% no-repeat,#000;box-shadow:#fff 0,#000 100%}#controlKit .panel .menu .button-menu-undo,#controlKit .panel .menu-active .button-menu-undo{background:url(data:image/png;base64,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) 20% 50% no-repeat,#1a1d1f;padding:0 6px 1px 0;width:38px;vertical-align:top;text-align:end}#controlKit .panel .menu .button-menu-undo:hover,#controlKit .panel .menu-active .button-menu-undo:hover{background:url(data:image/png;base64,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) 20% 50% no-repeat,#000;box-shadow:#fff 0,#000 100%}#controlKit .panel .menu .button-menu-load,#controlKit .panel .menu-active .button-menu-load{margin-right:2px}#controlKit .panel .menu .button-menu-load,#controlKit .panel .menu .button-menu-save,#controlKit .panel .menu-active .button-menu-load,#controlKit .panel .menu-active .button-menu-save{background:#1a1d1f;font-size:9px!important}#controlKit .panel .menu .button-menu-load:hover,#controlKit .panel .menu .button-menu-save:hover,#controlKit .panel .menu-active .button-menu-load:hover,#controlKit .panel .menu-active .button-menu-save:hover{background:#000}#controlKit .panel .menu .wrap{display:none}#controlKit .panel .menu-active{width:100%;float:left}#controlKit .panel .menu-active .wrap{display:inline}#controlKit .panel .menu-active .button-menu-close,#controlKit .panel .menu-active .button-menu-hide,#controlKit .panel .menu-active .button-menu-show{float:right}#controlKit .panel .arrow-s-max{background:url(data:image/png;base64,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) center no-repeat}#controlKit .panel .arrow-s-min{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAFCAYAAAB4ka1VAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAFpJREFUeNpsiiEOgDAMRf8SxNJzIYfB1PQkQ7RkZcfBYLnbUAsL4cn3Xkgs6NzXqQAwL+ve3TTGLWcDgKPWd0osiERa3FunuLdIpIkFiEQ2xu8UEosBUPxjzwATSjV/8qlMGAAAAABJRU5ErkJggg==) center no-repeat}#controlKit .panel .arrow-s-max,#controlKit .panel .arrow-s-min{width:100%;height:20px}#controlKit .panel .arrow-b-max{background:url(data:image/png;base64,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) center no-repeat}#controlKit .panel .arrow-b-min{background:url(data:image/png;base64,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) center no-repeat}#controlKit .panel .arrow-b-sub-max{background:url(data:image/png;base64,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) center no-repeat}#controlKit .panel .arrow-b-sub-min{background:url(data:image/png;base64,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) center no-repeat}#controlKit .panel .arrow-b-max,#controlKit .panel .arrow-b-min,#controlKit .panel .arrow-b-sub-max,#controlKit .panel .arrow-b-sub-min{width:10px;height:100%;float:right}#controlKit .picker{pointer-events:auto;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border-radius:3px;-moz-border-radius:3px;background-color:#3b3b3b;font-family:Arial,sans-serif;font-size:11px;color:#fff;text-shadow:1px 1px #000;overflow:hidden;position:absolute;z-index:2147483631;width:360px;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;box-shadow:0 2px 2px rgba(0,0,0,.25)}#controlKit .picker canvas{vertical-align:bottom;cursor:pointer}#controlKit .picker .wrap{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:10px;float:left}#controlKit .picker .field-wrap{padding:3px}#controlKit .picker .slider-wrap{padding:3px 13px 3px 3px}#controlKit .picker .field-wrap,#controlKit .picker .input-wrap,#controlKit .picker .slider-wrap{height:auto;overflow:hidden;float:left}#controlKit .picker .input-wrap{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:1px solid #242424;border-radius:2px;-moz-border-radius:2px;width:140px;float:right;padding:5px 10px 1px 0}#controlKit .picker .input-field{width:50%;float:right;margin-bottom:4px}#controlKit .picker .input-field .label{padding:8px 0 0;color:#878787;text-align:center;text-transform:uppercase;font-weight:700;text-shadow:1px 1px #1a1a1a;width:40%}#controlKit .picker .input-field .wrap{padding:0;width:60%;height:auto;float:right}#controlKit .picker .controls-wrap{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;width:100%;height:auto;float:right;padding:9px 0 0}#controlKit .picker .controls-wrap input[type=button]{float:right;width:65px;margin:0 0 0 10px}#controlKit .picker .color-contrast{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;border:none;box-shadow:0 0 0 1px #1f1f1f inset;border-radius:2px;-moz-border-radius:2px;height:25px;padding:3px;width:80%;margin-bottom:4px;float:right}#controlKit .picker .color-contrast div{width:50%;height:100%;float:left}#controlKit .picker input[type=text]{padding:0;text-align:center;width:60%;float:right}#controlKit .picker .wrap .input-wrap:nth-of-type(3){border-bottom-left-radius:0;border-bottom-right-radius:0}#controlKit .picker .wrap .input-wrap:nth-of-type(4){border-top:none;border-top-left-radius:0;border-top-right-radius:0}#controlKit .picker .wrap .input-wrap:nth-of-type(4) .input-field{width:100%}#controlKit .picker .wrap .input-wrap:nth-of-type(4) .input-field .label{width:20%}#controlKit .picker .wrap .input-wrap:nth-of-type(4) input[type=text]{width:80%}#controlKit .picker .field-wrap,#controlKit .picker .slider-wrap{background:#1e2224;border:none;box-shadow:0 0 0 1px #1f1f1f inset;border-radius:2px;-moz-border-radius:2px;position:relative;margin-right:5px}#controlKit .picker .field-wrap .indicator,#controlKit .picker .slider-wrap .indicator{position:absolute;border:2px solid #fff;box-shadow:0 1px black,0 1px #000 inset;cursor:pointer}#controlKit .picker .field-wrap .indicator{width:8px;height:8px;left:50%;top:50%;border-radius:50%;-moz-border-radius:50%}#controlKit .picker .slider-wrap .indicator{width:14px;height:3px;border-radius:8px;-moz-border-radius:8px;left:1px;top:1px}#controlKit .picker .slider-wrap .indicator:after{content:'';width:0;height:0;border-top:4.5px solid transparent;border-bottom:4.5px solid transparent;border-right:4px solid #fff;float:right;position:absolute;top:-2px;left:19px}#controlKit .picker .slider-wrap .indicator:before{content:'';width:0;height:0;border-top:4.5px solid transparent;border-bottom:4.5px solid transparent;border-right:4px solid #000;float:right;position:absolute;top:-3px;left:19px}"}},function(t,e){function n(){var t=window.open("","","        width=320,        height=200,        left="+(window.screenX+.5*window.innerWidth-160)+",        top="+(window.screenY+.5*window.innerHeight-100)+",        location=0,        titlebar=0,        resizable=0");return t.document.documentElement.innerHTML='<head>\n   <title>ControlKit State</title>\n   <style type="text/css">\n      body{\n          box-sizing: border-box;\n          padding: 20px;\n          margin: 0;\n          font-family: Arial, sans-serif;\n          width: 100%;\n      }\n      textarea{\n          margin-bottom:10px;\n          box-sizing: border-box;\n          padding: 0;\n          border: 0;\n          border: 1px solid #dedede;\n          outline: none;\n          font-family: Monaco, monospace;\n          font-size: 11px;\n          resize: none;\n          word-wrap: break-word;\n          display: block;\n          width: 100%;\n          overflow-y: scroll;\n          height: 125px;\n      }\n      button{\n          margin: 0;\n          padding: 0 5px 3px 5px;\n          height: 20px;\n      }\n      #save,#filename,#load{\n          float: right;\n      }\n      input[type="text"]{\n          margin: 0;\n          padding: 0;\n          width: 45%;\n          height:20px;\n      }\n   </style>\n</head>\n<body>\n   <textarea name="state" id="state"></textarea>\n</body>',t}t.exports={load:function(t){var e=n(),i=e.document;i.body.innerHTML+='<input type="file" id="load-disk"></button><button type="button" id="load">Load</button>';var r=i.getElementById("state"),o=i.getElementById("load");function a(){try{var t=JSON.parse(r.value);t&&"object"==typeof t&&null!==t&&(o.disabled=!1)}catch(e){o.disabled=!0}}o.disabled=!0,r.addEventListener("input",function(){a()}),i.getElementById("load").addEventListener("click",function(){t(JSON.parse(r.value).data),e.close()});var s=i.getElementById("load-disk");s.addEventListener("change",function(){var t=new FileReader;t.addEventListener("loadend",function(t){r.value=t.target.result,a()}),t.readAsText(s.files[0],"utf-8")})},save:function(t){var e=n().document;e.body.innerHTML+='<button type="button" id="save">Save</button>\n<input type="text" id="filename" value="ck-state.json"></input>',e.getElementById("save").addEventListener("click",function(){var t=e.getElementById("state").value,n=new Blob([t],{type:"application:json"}),i=e.getElementById("filename").value,r=document.createElement("a");r.download=i,window.webkitURL?r.href=window.webkitURL.createObjectURL(n):(r.href=window.createObjectURL(n),r.style.display="none",r.addEventListener("click",function(){e.body.removeChild(r)}),e.body.appendChild(r)),r.click()}),e.getElementById("state").innerText=JSON.stringify(t)}}},function(t,e,n){var i=n(85),r=n(42),o=n(12),a=n(16),s=n(15),u=[-1,1],l=[-1,1];function h(t,e,n,r){i.apply(this,arguments),(r=r||{}).boundsX=r.boundsX||u,r.boundsY=r.boundsY||l,r.labelX=r.labelX||"",r.labelY=r.labelY||"",r.showCross=r.showCross||!0,this._onChange=r.onChange||this._onChange,this._onFinish=r.onFinish||function(){},this._boundsX=r.boundsX,this._boundsY=r.boundsY,this._labelAxisX=""!=r.labelX&&"none"!=r.labelX?r.labelX:null,this._labelAxisY=""!=r.labelY&&"none"!=r.labelY?r.labelY:null;var o=this._path;o.style.strokeWidth=1,o.style.stroke="#363c40",this._grid.style.stroke="rgb(25,25,25)",this._svgPos=[0,0];var s=this._handle=this._svgRoot.appendChild(this._createSVGObject("g")),h=s.appendChild(this._createSVGObject("circle"));h.setAttribute("r",String(11)),h.setAttribute("fill","rgba(0,0,0,0.05)");var c=s.appendChild(this._createSVGObject("circle"));c.setAttribute("r",String(10)),c.setAttribute("fill","rgb(83,93,98)");var p=s.appendChild(this._createSVGObject("circle"));p.setAttribute("r",String(9)),p.setAttribute("fill","rgb(57,69,76)"),p.setAttribute("cy",String(.75));var d=s.appendChild(this._createSVGObject("circle"));d.setAttribute("r",String(10)),d.setAttribute("stroke","rgb(17,19,20)"),d.setAttribute("stroke-width",String(1)),d.setAttribute("fill","none");var f=s.appendChild(this._createSVGObject("circle"));f.setAttribute("r",String(6)),f.setAttribute("fill","rgb(30,34,36)");var m=s.appendChild(this._createSVGObject("circle"));m.setAttribute("r",String(3)),m.setAttribute("fill","rgb(255,255,255)"),s.setAttribute("tranform","translate(0 0)"),this._svg.addEventListener(a.MOUSE_DOWN,this._onDragStart.bind(this),!1),this._drawValue(this._obj[this._key])}h.prototype=Object.create(i.prototype),h.prototype.constructor=h,h.prototype._onDragStart=function(){var t=this._svgPos;t[0]=0,t[1]=0;for(var e=this._svg.parentNode;e;)t[0]+=e.offsetLeft,t[1]+=e.offsetTop,e=e.offsetParent;var n=a.MOUSE_MOVE,i=a.MOUSE_UP,r=(function(){this._drawValueInput(),this.applyValue(),this._onChange()}).bind(this),o=(function(){this.pushHistoryState(),this._drawValueInput(),this.applyValue(),this._onFinish(),document.removeEventListener(n,r,!1),document.removeEventListener(i,o,!1)}).bind(this);document.addEventListener(n,r,!1),document.addEventListener(i,o,!1),this._drawValueInput(),this.applyValue(),this._onChange()},h.prototype._redraw=function(){this._drawValue(this._obj[this._key])},h.prototype._drawValueInput=function(){this._drawValue(this._getMouseNormalized())},h.prototype._drawValue=function(t){this._obj[this._key]=t,this._drawGrid(),this._drawPoint()},h.prototype._drawGrid=function(){var t=Number(this._svg.getAttribute("width")),e=Math.floor(.5*t),n=Math.floor(.5*t),i="";i+=this._pathCmdLine(0,n,t,n),i+=this._pathCmdLine(e,0,e,t),this._grid.setAttribute("d",i)},h.prototype._drawPoint=function(){var t=Number(this._svg.getAttribute("width")),e=this._obj[this._key],n=(.5+.5*e[0])*t,i=(.5+-(.5*e[1]))*t,r="";r+=this._pathCmdLine(0,i,t,i),r+=this._pathCmdLine(n,0,n,t),this._path.setAttribute("d",r),this._handle.setAttribute("transform","translate("+n+" "+i+")")},h.prototype._getMouseNormalized=function(){var t=this._svgPos,e=r.get().getPosition(),n=Number(this._svg.getAttribute("width"));return[Math.max(0,Math.min(e[0]-t[0],n))/n*2-1,1-Math.max(0,Math.min(e[1]-t[1],n))/n*2]},h.prototype.applyValue=function(){this.dispatchEvent(new o(this,s.VALUE_UPDATED,null))},h.prototype.onValueUpdate=function(t){t.data.origin!=this&&this._drawValue(this._obj[this._key])},t.exports=h},function(t,e,n){var i=n(8),r=n(16),o=n(14),a=n(7),s=n(42);function u(t,e,n,s){this._bounds=[0,1],this._value=0,this._intrpl=0,this._focus=!1,this._onBegin=e||function(){},this._onChange=n||function(){},this._onFinish=s||function(){};var u=(new i).setStyleClass(a.SliderWrap);t.addChild(u);var l=this._slot={node:(new i).setStyleClass(a.SliderSlot),offsetX:0,width:0,padding:3},h=this._handle={node:(new i).setStyleClass(a.SliderHandle),width:0,dragging:!1};u.addChild(l.node),l.node.addChild(h.node),l.offsetX=l.node.getPositionGlobalX(),l.width=Math.floor(l.node.getWidth()-2*l.padding),h.node.setWidth(h.width),l.node.addEventListener(o.MOUSE_DOWN,this._onSlotMouseDown.bind(this)),l.node.addEventListener(o.MOUSE_UP,this._onSlotMouseUp.bind(this)),document.addEventListener(r.MOUSE_MOVE,this._onDocumentMouseMove.bind(this)),document.addEventListener(r.MOUSE_UP,this._onDocumentMouseUp.bind(this))}u.prototype._onDocumentMouseMove=function(){this._handle.dragging&&(this._update(),this._onChange())},u.prototype._onDocumentMouseUp=function(){this._handle.dragging&&this._onFinish(),this._handle.dragging=!1},u.prototype._onSlotMouseDown=function(){this._onBegin(),this._focus=!0,this._handle.dragging=!0,this._handle.node.getElement().focus(),this._update()},u.prototype._onSlotMouseUp=function(){if(this._focus){var t=this._handle;t.dragging&&this._onFinish(),t.dragging=!1}this._focus=!1},u.prototype._update=function(){var t=s.get().getX(),e=this._slot.offsetX,n=this._slot.width,i=t<e?0:t>e+n?n:t-e;this._handle.node.setWidth(Math.round(i)),this._intrpl=i/n,this._interpolateValue()},u.prototype._updateHandle=function(){var t=this._slot.width,e=Math.round(this._intrpl*t);this._handle.node.setWidth(Math.min(e,t))},u.prototype._interpolateValue=function(){var t=this._intrpl,e=this._bounds;this._value=e[0]*(1-t)+e[1]*t},u.prototype.resetOffset=function(){var t=this._slot;t.offsetX=t.node.getPositionGlobalX(),t.width=Math.floor(t.node.getWidth()-2*t.padding)},u.prototype.setBoundMin=function(t){var e=this._bounds;t>=e[1]||(e[0]=t,this._updateFromBounds())},u.prototype.setBoundMax=function(t){var e=this._bounds;t<=e[0]||(e[1]=t,this._updateFromBounds())},u.prototype._updateFromBounds=function(){var t=this._bounds[0],e=this._bounds[1];this._value=Math.max(t,Math.min(this._value,e)),this._intrpl=Math.abs((this._value-t)/(t-e)),this._updateHandle()},u.prototype.setValue=function(t){var e=this._bounds[0],n=this._bounds[1];t<e||t>n||(this._intrpl=Math.abs((t-e)/(e-n)),this._updateHandle(),this._value=t)},u.prototype.getValue=function(){return this._value},t.exports=u},function(t,e,n){var i=n(29),r=n(8),o=n(7),a=n(59),s=n(60),u=n(12),l=n(14),h=n(15),c=n(87),p=n(65),d="Choose ...";function f(t,e,n,a){i.apply(this,arguments),(a=a||{}).onChange=a.onChange||this._onChange,this._onChange=a.onChange;var s=this._obj,u=this._key,h=this._targetKey=a.target,f=this._values=s[u];this._selectedIndex=-1,this._selected=null;var m=this._select=new r(r.INPUT_BUTTON);if(m.setStyleClass(o.Select),m.addEventListener(l.MOUSE_DOWN,this._onOptionTrigger.bind(this)),this._hasTarget()){for(var g=s[h]||"",v=-1;++v<f.length;)g==f[v]&&(this._selected=f[v]);m.setProperty("value",g.toString().length>0?g:f[0])}else m.setProperty("value",-1!==a.selected?f[a.selected]:d);this._wrapNode.addChild(m),p.get().addEventListener(c.TRIGGER,this,"onOptionTrigger"),this.addEventListener(c.TRIGGERED,p.get(),"onOptionTriggered")}f.prototype=Object.create(i.prototype),f.prototype.constructor=f,f.prototype.onOptionTrigger=function(t){if(t.data.origin==this)return this._active=!this._active,this._updateAppearance(),void(this._active?this._buildOptions():a.get().clear());this._active=!1,this._updateAppearance()},f.prototype._buildOptions=function(){var t=a.get(),e=this;t.build(this._values,this._selected,this._select,function(){e.applyValue(),e._active=!1,e._updateAppearance(),e._selectedIndex=t.getSelectedIndex(),e._onChange(e._selectedIndex),t.clear()},function(){e._active=!1,e._updateAppearance(),t.clear()},!1)},f.prototype._applySelected=function(t){this._select.setProperty("value",t),this.dispatchEvent(new u(this,h.VALUE_UPDATED),null)},f.prototype.applyValue=function(){var t=a.get().getSelectedIndex(),e=this._selected=this._values[t];this._hasTarget()&&(this.pushHistoryState(),this._obj[this._targetKey]=e),this._applySelected(e)},f.prototype.pushHistoryState=function(){var t=this._obj,e=this._targetKey;s.get().pushState(t,e,t[e])},f.prototype._onOptionTrigger=function(){this.dispatchEvent(new u(this,c.TRIGGERED,null))},f.prototype._updateAppearance=function(){this._select.setStyleClass(this._active?o.SelectActive:o.Select)},f.prototype.onValueUpdate=function(t){this._hasTarget()&&(this._selected=this._obj[this._targetKey],this._select.setProperty("value",this._selected.toString()))},f.prototype._hasTarget=function(){return null!=this._targetKey},f.prototype.setValue=function(t){if(this._selectedIndex=t,-1==t)return this._selected=null,void this._select.setProperty("value",d);this._selected=this._values[this._selectedIndex],this._applySelected(this._selected)},f.prototype.getData=function(){var t={};return t.selectedIndex=this._selectedIndex,t},t.exports=f},function(t,e,n){var i=n(12),r=n(14),o=n(15),a=n(8),s=n(66),u=n(7);function l(t,e,n,l){n=n||function(){},(l=l||{}).label=l.label||"",s.apply(this,[t,l.label]);var h=this._inputNode=new a(a.INPUT_BUTTON);h.setStyleClass(u.Button),h.setProperty("value",e);var c=this;h.addEventListener(r.ON_CLICK,function(){n.bind(c)(),c.dispatchEvent(new i(c,o.VALUE_UPDATED))}),this._wrapNode.addChild(h)}l.prototype=Object.create(s.prototype),l.prototype.constructor=l,l.prototype.getButtonLabel=function(){return this._inputNode.getProperty("value")},l.prototype.setButtonLabel=function(t){this._inputNode.setProperty("value",t)},t.exports=l},function(t,e){function n(t){Error.apply(this),Error.captureStackTrace(this,n),this.name="ColorFormatError",this.message=t}n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,t.exports=n},function(t,e,n){var i=n(29),r=n(8),o=n(123),a=n(121),s=n(84),u=n(59),l=n(83),h=n(25),c=n(7),p=n(12),d=n(14),f=n(15),m=n(173),g=o.HEX;function v(t,e,n,o){i.apply(this,arguments),(o=o||{}).presets=o.presets||null,o.colorMode=o.colorMode||g,o.onChange=o.onChange||this._onChange,this._presetsKey=o.presets,this._onChange=o.onChange;var a=this._color=new r;n=this._value=this._obj[this._key];var s=this._colorMode=o.colorMode;this._validateColorFormat(n,"Color format should be hex. Set colorMode to rgb, rgbfv or hsv.","Color format should be rgb, rgbfv or hsv. Set colorMode to hex.");var p=this._wrapNode;if(this._presetsKey){a.setStyleClass(c.Color);var f=new r;f.setStyleClass(c.WrapColorWPreset),p.addChild(f),f.addChild(a);for(var m=this._obj[this._presetsKey],v=-1;++v<m.length;)this._validateColorFormat(m[v],"Preset color format should be hex.","Preset color format should be rgb, rgbfv or hsv.");var $=u.get(),y=new l(p),_=function(){$.clear(),y.deactivate()},x=this;y.setOnActive(function(){$.build(m,x._value,a,function(){x.pushHistoryState(),x._value=m[$.getSelectedIndex()],x.applyValue(),x._onChange(x._obj[x._key])},_,h.PADDING_PRESET,!0,s)}),y.setOnDeactive(_)}else a.setStyleClass(c.Color),p.addChild(a);a.addEventListener(d.MOUSE_DOWN,this._onColorTrigger.bind(this)),this._updateColor()}v.prototype=Object.create(i.prototype),v.prototype.constructor=v,v.prototype._onColorTrigger=function(){var t,e=this._colorMode,n=o.HEX,i=o.RGB,r=o.RGBfv,s=o.HSV,u=this._value,l=(function(){switch(this.pushHistoryState(),e){case n:this._value=a.get().getHEX();break;case i:t=a.get().getRGB(),u[0]=t[0],u[1]=t[1],u[2]=t[2];break;case r:t=a.get().getRGBfv(),u[0]=t[0],u[1]=t[1],u[2]=t[2];break;case s:this._value=a.get().getHSV()}this.applyValue()}).bind(this),h=a.get();switch(e){case n:h.setColorHEX(u);break;case i:h.setColorRGB(u[0],u[1],u[2]);break;case r:h.setColorRGBfv(u[0],u[1],u[2]);break;case s:h.setColorHSV(u[0],u[1],u[2])}h.setCallbackPick(l),h.open()},v.prototype.applyValue=function(){this._obj[this._key]=this._value,this._updateColor(),this.dispatchEvent(new p(this,f.VALUE_UPDATED,null)),this._onChange(this._obj[this._key])},v.prototype.onValueUpdate=function(t){t.data.origin!=this&&(this._value=this._obj[this._key],this._updateColor())},v.prototype._updateColor=function(){var t,e=this._value,n=this._color;switch(n.setProperty("innerHTML",e),this._colorMode){case o.HEX:t=e;break;case o.RGB:t=s.RGB2HEX(e[0],e[1],e[2]);break;case o.RGBfv:t=s.RGBfv2HEX(e[0],e[1],e[2]);break;case o.HSV:t=s.HSV2RGB(e[0],e[1],e[2])}n.getStyle().backgroundColor=t},v.prototype._validateColorFormat=function(t,e,n){var i=this._colorMode;if(i==o.HEX&&"[object Array]"===Object.prototype.toString.call(t)||i==o.HEX&&"[object Float32Array]"===Object.prototype.toString.call(t))throw new m(e);if((i==o.RGB||i==o.RGBfv||i==o.HSV)&&"[object Array]"!==Object.prototype.toString.call(t)||i==o.HSV&&"[object Float32Array]"!==Object.prototype.toString.call(t))throw new m(n)},t.exports=v},function(t,e,n){var i=n(29),r=n(8),o=n(12),a=n(14),s=n(15);function u(t,e,n,o){i.apply(this,arguments),(o=o||{}).onChange=o.onChange||this._onChange,this._onChange=o.onChange;var s=this._input=new r(r.INPUT_CHECKBOX);s.setProperty("checked",this._obj[this._key]),s.addEventListener(a.CHANGE,this._onInputChange.bind(this)),this._wrapNode.addChild(this._input)}u.prototype=Object.create(i.prototype),u.prototype.constructor=u,u.prototype.applyValue=function(){this.pushHistoryState();var t=this._obj,e=this._key;t[e]=!t[e],this.dispatchEvent(new o(this,s.VALUE_UPDATED,null))},u.prototype._onInputChange=function(){this.applyValue(),this._onChange()},u.prototype.onValueUpdate=function(t){t.data.origin!=this&&this._input.setProperty("checked",this._obj[this._key])},t.exports=u},function(t,e,n){var i=n(29),r=n(64),o=n(8),a=n(59),s=n(83),u=n(7),l=n(25),h=n(12),c=n(16),p=n(14),d=n(15);function f(t,e,n,h){i.apply(this,arguments),(h=h||{}).onBegin=h.onBegin||null,h.onChange=h.onChange||this._onChange,h.onFinish=h.onFinish||null,h.onError=h.onError||null,h.dp=void 0===h.dp||null==h.dp?2:h.dp,h.step=h.step||1,h.presets=h.presets||null,this._onBegin=h.onBegin,this._onChange=h.onChange,this._presetsKey=h.presets;var c=this._input=new r(h.step,h.dp,h.onBegin,this._onInputChange.bind(this),h.onFinish,h.onError),f=this._wrapNode,m=h.presets;if(m){var g=new o;g.setStyleClass(u.WrapInputWPreset),f.addChild(g),g.addChild(c.getNode());var v=a.get(),$=this._btnPreset=new s(this._wrapNode),y=function(){v.clear(),$.deactivate()},_=this;$.setOnActive(function(){v.build(m,c.getValue(),c.getNode(),function(){c.setValue(m[v.getSelectedIndex()]),_.applyValue(),_._onChange(_._obj[_._key])},y,l.PADDING_PRESET,!1)}),$.setOnDeactive(y)}else f.addChild(c.getNode());c.getNode().addEventListener(p.MOUSE_DOWN,this._onInputDragStart.bind(this)),this.addEventListener(d.INPUT_SELECT_DRAG,this._parent,"onComponentSelectDrag"),c.setValue(this._obj[this._key])}f.prototype=Object.create(i.prototype),f.prototype.constructor=f,f.prototype._onInputChange=function(){this.applyValue(),this._onChange(this._obj[this._key])},f.prototype.applyValue=function(){this.pushHistoryState(),this._obj[this._key]=this._input.getValue(),this.dispatchEvent(new h(this,d.VALUE_UPDATED,null))},f.prototype.onValueUpdate=function(t){t.data.origin!=this&&this._input.setValue(this._obj[this._key])},f.prototype._onInputDragStart=function(){var t=c.MOUSE_MOVE,e=c.MOUSE_UP,n=d.INPUT_SELECT_DRAG,i=this,r=function(){i.dispatchEvent(new h(this,n,null))},o=function(){i.dispatchEvent(new h(this,n,null)),document.removeEventListener(t,r,!1),document.removeEventListener(t,o,!1)};this.dispatchEvent(new h(this,n,null)),document.addEventListener(t,r,!1),document.addEventListener(e,o,!1)},t.exports=f},function(t,e){t.exports={LEFT:"left",RIGHT:"right",TOP:"top",BOTTOM:"bottom",NONE:"none"}},function(t,e){function n(){Error.apply(this),Error.captureStackTrace(this,n),this.name="FunctionPlotterFunctionArgsError",this.message="Function should be of form f(x) or f(x,y)."}n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,t.exports=n},function(t,e){function n(t,e){Error.apply(this),Error.captureStackTrace(this,n),this.name="ComponentObjectError",this.message="Object "+t.constructor.name+" "+e+"should be of type Function."}n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,t.exports=n},function(t,e){t.exports={IMPLICIT:"implicit",NON_IMPLICIT:"nonImplicit"}},function(t,e,n){var i=n(29),r=n(7),o=n(53),a=n(25);function s(t,e,n,a){i.apply(this,arguments);var s=this._wrapNode;s.setStyleClass(r.SVGWrap);var u=s.getWidth(),l=this._svg=this._createSVGObject("svg");l.setAttribute("version","1.2"),l.setAttribute("baseProfile","tiny"),s.getElement().appendChild(l),(this._svgRoot=l.appendChild(this._createSVGObject("g"))).setAttribute("transform","translate(0.5 0.5)"),this._svgSetSize(u,u),this._updateHeight(),this._node.setStyleClass(r.SVGListItem),this._parent.addEventListener(o.GROUP_SIZE_CHANGE,this,"onGroupSizeChange"),this.addEventListener(o.GROUP_SIZE_UPDATE,this._parent,"onGroupSizeUpdate")}s.prototype=Object.create(i.prototype),s.prototype.constructor=s,s.prototype._updateHeight=function(){var t=Number(this._svg.getAttribute("height"));this._wrapNode.setHeight(t),this._node.setHeight(t+a.PADDING_WRAPPER)},s.prototype._redraw=function(){},s.prototype.onGroupSizeChange=function(){var t=this._wrapNode.getWidth();this._svgSetSize(t,t),this._updateHeight(),this._redraw()},s.prototype._createSVGObject=function(t){return document.createElementNS("http://www.w3.org/2000/svg",t)},s.prototype._svgSetSize=function(t,e){var n=this._svg;n.setAttribute("width",t),n.setAttribute("height",e),n.setAttribute("viewbox","0 0 "+t+" "+e)},s.prototype._pathCmdMoveTo=function(t,e){return"M "+t+" "+e+" "},s.prototype._pathCmdLineTo=function(t,e){return"L "+t+" "+e+" "},s.prototype._pathCmdClose=function(){return"Z"},s.prototype._pathCmdLine=function(t,e,n,i){return"M "+t+" "+e+" L "+n+" "+i},s.prototype._pathCmdBezierCubic=function(t,e,n,i,r,o,a,s,u){return"M "+e+" "+n+" C "+i+" "+r+", "+o+" "+a+", "+s+" "+u},s.prototype._pathCmdBezierQuadratic=function(t,e,n,i,r,o,a){return"M "+e+" "+n+" Q "+i+" "+r+", "+o+" "+a},t.exports=s},function(t,e){function n(t,e){Error.apply(this),Error.captureStackTrace(this,n),this.name="ComponentObjectError",this.message="Object of type "+t.constructor.name+" has no member "+e+"."}n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,t.exports=n},function(t,e,n){var i=n(128),r=n(8),o=n(7),a=n(12),s=n(16),u=n(67),l=n(53),h=n(15);function c(t,e){(e=e||{}).label=e.label||null,e.useLabels=void 0===e.useLabels||e.useLabels,i.apply(this,arguments);var n=this._node,a=this._wrapNode,h=this._listNode;n.setStyleClass(o.SubGroup),a.setStyleClass(o.Wrap),a.addChild(h),n.addChild(a),this._useLabels=e.useLabels;var c=e.label;if(c&&0!=c.length&&"none"!=c){var p=this._headNode=new r,d=new r,f=new r(r.SPAN);p.setStyleClass(o.Head),d.setStyleClass(o.Wrap),f.setStyleClass(o.Label),f.setProperty("innerHTML",c),d.addChild(f),p.addChild(d);var m=this._indiNode=new r;m.setStyleClass(o.ArrowBSubMax),p.addChildAt(m,0),n.addChildAt(p,0),this.addEventListener(l.SUBGROUP_TRIGGER,this._parent,"onSubGroupTrigger"),p.addEventListener(s.MOUSE_DOWN,this._onHeadMouseDown.bind(this)),this._updateAppearance()}this.hasMaxHeight()&&this.addScrollWrap(),this._parent.addEventListener(l.SUBGROUP_ENABLE,this,"onEnable"),this._parent.addEventListener(l.SUBGROUP_DISABLE,this,"onDisable"),this._parent.addEventListener(u.PANEL_MOVE_END,this,"onPanelMoveEnd"),this._parent.addEventListener(l.GROUP_SIZE_CHANGE,this,"onGroupSizeChange"),this._parent.addEventListener(u.PANEL_SIZE_CHANGE,this,"onPanelSizeChange"),this._parent.addEventListener(s.WINDOW_RESIZE,this,"onWindowResize"),this.addEventListener(l.GROUP_SIZE_UPDATE,this._parent,"onGroupSizeUpdate")}c.prototype=Object.create(i.prototype),c.prototype.constructor=c,c.prototype._onHeadMouseDown=function(){this._enabled=!this._enabled,this._onTrigger();var t=s.MOUSE_UP,e=this,n=function(){e._onTrigger(),document.removeEventListener(t,n)};document.addEventListener(t,n)},c.prototype._onTrigger=function(){this._updateAppearance(),this.dispatchEvent(new a(this,l.SUBGROUP_TRIGGER,null))},c.prototype._updateAppearance=function(){this.isDisabled()?(this._wrapNode.setHeight(0),this.hasLabel()&&(this._headNode.setStyleClass(o.HeadInactive),this._indiNode.setStyleClass(o.ArrowBSubMin))):(this.hasMaxHeight()?this._wrapNode.setHeight(this.getMaxHeight()):this._wrapNode.deleteStyleProperty("height"),this.hasLabel()&&(this._headNode.setStyleClass(o.Head),this._indiNode.setStyleClass(o.ArrowBSubMax)))},c.prototype.update=function(){this.hasMaxHeight()&&this._scrollBar.update()},c.prototype.onComponentSelectDrag=function(){this.preventSelectDrag()},c.prototype.onEnable=function(){this.isDisabled()||this.dispatchEvent(new a(this,h.ENABLE,null))},c.prototype.onDisable=function(){this.isDisabled()||this.dispatchEvent(new a(this,h.DISABLE,null))},c.prototype.onGroupSizeChange=function(){this.dispatchEvent(new a(this,l.GROUP_SIZE_CHANGE,null))},c.prototype.onGroupSizeUpdate=function(){this.dispatchEvent(new a(this,l.GROUP_SIZE_UPDATE,null))},c.prototype.onPanelMoveEnd=function(){this.dispatchEvent(new a(this,u.PANEL_MOVE_END,null))},c.prototype.onPanelSizeChange=function(){this._updateAppearance()},c.prototype.onWindowResize=function(t){this.dispatchEvent(t)},c.prototype.hasLabel=function(){return null!=this._headNode},c.prototype.addComponentNode=function(t){this._listNode.addChild(t)},c.prototype.usesLabels=function(){return this._useLabels},t.exports=c},function(t,e,n){var i=n(128),r=n(7),o=n(8),a=n(183),s=n(12),u=n(16),l=n(14),h=n(67),c=n(53),p=n(29),d=n(86),f=n(126);function m(t,e){(e=e||{}).label=e.label||null,e.useLabels=e.useLabels||!0,e.enable=void 0===e.enable||e.enable,i.apply(this,arguments),this._components=[],this._subGroups=[];var n=this._node,a=this._wrapNode,s=this._listNode;n.setStyleClass(r.Group),a.setStyleClass(r.Wrap),s.setStyleClass(r.SubGroupList),a.addChild(s);var p=e.label;if(p){var d=new o,f=new o,m=new o(o.SPAN),g=this._indiNode=new o;d.setStyleClass(r.Head),f.setStyleClass(r.Wrap),m.setStyleClass(r.Label),g.setStyleClass(r.ArrowBMax),m.setProperty("innerHTML",p),d.addChild(g),f.addChild(m),d.addChild(f),n.addChild(d),d.addEventListener(l.MOUSE_DOWN,this._onHeadTrigger.bind(this)),this.addEventListener(c.GROUP_LIST_SIZE_CHANGE,t,"onGroupListSizeChange"),this._updateAppearance()}if(this.hasMaxHeight()&&this.addScrollWrap(),n.addChild(a),this.hasMaxHeight()){if(!p){var v=this._scrollBufferTop=new o;v.setStyleClass(r.ScrollBuffer),n.addChildAt(v,0)}var $=this._scrollBufferBottom=new o;$.setStyleClass(r.ScrollBuffer),n.addChild($)}(t=this._parent).addEventListener(h.PANEL_MOVE_BEGIN,this,"onPanelMoveBegin"),t.addEventListener(h.PANEL_MOVE,this,"onPanelMove"),t.addEventListener(h.PANEL_MOVE_END,this,"onPanelMoveEnd"),t.addEventListener(h.PANEL_HIDE,this,"onPanelHide"),t.addEventListener(h.PANEL_SHOW,this,"onPanelShow"),t.addEventListener(h.PANEL_SCROLL_WRAP_ADDED,this,"onPanelScrollWrapAdded"),t.addEventListener(h.PANEL_SCROLL_WRAP_REMOVED,this,"onPanelScrollWrapRemoved"),t.addEventListener(h.PANEL_SIZE_CHANGE,this,"onPanelSizeChange"),t.addEventListener(u.WINDOW_RESIZE,this,"onWindowResize"),this.addEventListener(c.GROUP_SIZE_CHANGE,t,"onGroupListSizeChange")}function g(t){return t instanceof p&&!(t instanceof d)&&!(t instanceof f)}m.prototype=Object.create(i.prototype),m.prototype.constructor=m,m.prototype.onPanelMoveBegin=function(){this.dispatchEvent(new s(this,h.PANEL_MOVE_BEGIN,null))},m.prototype.onPanelMove=function(){this.dispatchEvent(new s(this,h.PANEL_MOVE,null))},m.prototype.onPanelMoveEnd=function(){this.dispatchEvent(new s(this,h.PANEL_MOVE_END,null))},m.prototype.onPanelScrollWrapAdded=function(){this.dispatchEvent(new s(this,c.GROUP_SIZE_CHANGE,null))},m.prototype.onPanelScrollWrapRemoved=function(){this.dispatchEvent(new s(this,c.GROUP_SIZE_CHANGE,null))},m.prototype.onPanelHide=function(){this.dispatchEvent(new s(this,c.SUBGROUP_DISABLE,null))},m.prototype.onPanelShow=function(){this.dispatchEvent(new s(this,c.SUBGROUP_ENABLE,null))},m.prototype.onPanelSizeChange=function(){this.dispatchEvent(new s(this,c.GROUP_SIZE_CHANGE,null))},m.prototype.onWindowResize=function(t){this.dispatchEvent(t)},m.prototype.onSubGroupTrigger=function(){if(this._updateHeight(),this.hasMaxHeight()){var t=this._scrollBar,e=this._wrapNode,n=this._scrollBufferTop,i=this._scrollBufferBottom;t.update(),t.isValid()?(t.enable(),e.setHeight(this.getMaxHeight()),n&&n.setStyleProperty("display","block"),i&&i.setStyleProperty("display","block")):(t.disable(),e.setHeight(e.getChildAt(1).getHeight()),n&&n.setStyleProperty("display","none"),i&&i.setStyleProperty("display","none")),this.dispatchEvent(new s(this,c.GROUP_SIZE_CHANGE,null))}},m.prototype._onHeadTrigger=function(){this._enabled=!this._enabled,this._updateAppearance(),this.dispatchEvent(new s(this,c.GROUP_LIST_SIZE_CHANGE,null))},m.prototype.addComponent=function(){var t=arguments[0],e=Array.prototype.slice.call(arguments);e.shift(),e.unshift(this._getSubGroup());var n=Object.create(t.prototype);t.apply(n,e),this._components.push(n),this._updateHeight()},m.prototype._updateHeight=function(){this._getSubGroup().update(),this.dispatchEvent(new s(this,c.GROUP_SIZE_CHANGE,null)),this.hasMaxHeight()&&this._scrollBar.update()},m.prototype._updateAppearance=function(){var t=this._wrapNode,e=this._indiNode,n=this._scrollBar,i=this._scrollBufferTop,o=this._scrollBufferBottom;if(this.isDisabled())return t.setHeight(0),e&&e.setStyleClass(r.ArrowBMin),void(n&&(i&&i.setStyleProperty("display","none"),o&&o.setStyleProperty("display","none")));if(this.hasMaxHeight()){var a=this.getMaxHeight(),s=t.getChildAt(1).getHeight();t.setHeight(s<a?s:a),n.isValid()&&(i&&i.setStyleProperty("display","block"),o&&o.setStyleProperty("display","block"))}else t.deleteStyleProperty("height");e&&e.setStyleClass(r.ArrowBMax)},m.prototype.onGroupSizeUpdate=function(){this._updateAppearance(),this.hasMaxHeight()&&this._scrollBar.update()},m.prototype.addSubGroup=function(t){return this._subGroups.push(new a(this,t)),this._updateHeight(),this},m.prototype._getSubGroup=function(){var t=this._subGroups;return 0==t.length&&t.push(new a(this)),t[t.length-1]},m.prototype.getComponents=function(){return this._components},m.prototype.setData=function(t){for(var e,n,i=this._components,r=-1,o=0,a=i.length;++r<a;)g(e=i[r])&&(n=t[o++],e.setValue(n[Object.keys(n)[0]]))},m.prototype.getData=function(){for(var t,e=this._components,n=-1,i=e.length,r=[];++n<i;)g(t=e[n])&&r.push(t.getData());return r},t.exports=m},function(t,e,n){var i=n(8),r=n(184),o=n(88),a=n(7),s=n(177),u=n(60),l=n(36),h=n(12),c=n(16),p=n(14),d=n(67),f=n(125),m=n(42),g=n(124),v=n(176),$=n(122),y=n(175),_=n(174),x=n(172),b=n(171),w=n(120),A=n(126),T=n(169),S=n(86),E=n(119),P=n(117),C=n(116),L=n(115),M=s.TOP,R=s.RIGHT,I={align:s.RIGHT,resizable:!0};function D(t,e){l.apply(this,arguments),this._parent=t,(e=e||{}).valign=e.valign||M,e.align=e.align||R,e.position=e.position||null,e.width=e.width||200,e.height=e.height||null,e.ratio=e.ratio||40,e.label=e.label||"Control Panel",e.opacity=e.opacity||1,e.fixed=void 0===e.fixed||e.fixed,e.enable=void 0===e.enable||e.enable,e.vconstrain=void 0===e.vconstrain||e.vconstrain,e.dock&&(e.dock.align=e.dock.align||I.align,e.dock.resizable=e.dock.resizable||I.resizable),this._width=Math.max(100,Math.min(e.width,600)),this._height=e.height?Math.max(0,Math.min(e.height,window.innerHeight)):null,this._fixed=e.fixed,this._dock=e.dock,this._position=e.position,this._vConstrain=e.vconstrain,this._label=e.label,this._enabled=e.enable,this._groups=[];var n=this._width,r=this._fixed,o=this._dock,h=this._position,d=this._label,m=e.align,g=e.opacity,v=this._node=(new i).setStyleClass(a.Panel),$=this._headNode=(new i).setStyleClass(a.Head),y=(new i).setStyleClass(a.Menu),_=(new i).setStyleClass(a.Wrap),x=new i(i.SPAN).setStyleClass(a.Label),b=this._wrapNode=new i(i.DIV).setStyleClass(a.Wrap),w=this._listNode=new i(i.LIST).setStyleClass(a.GroupList);if(v.setWidth(n),x.setProperty("innerHTML",d),_.addChild(x),$.addChild(y),$.addChild(_),b.addChild(w),v.addChild($),v.addChild(b),t.getNode().addChild(v),o){var A=o.align;A!=s.LEFT&&A!=s.RIGHT||(m=A,this._height=window.innerHeight),A==s.TOP||s.BOTTOM,v.setStyleProperty("float",m)}else{var T=this._menuHide=new i(i.INPUT_BUTTON);if(T.setStyleClass(a.ButtonMenuHide),T.addEventListener(p.MOUSE_DOWN,this._onMenuHideMouseDown.bind(this)),y.addChild(T),this._parent.panelsAreClosable()){var S=new i(i.INPUT_BUTTON);S.setStyleClass(a.ButtonMenuClose),S.addEventListener(p.MOUSE_DOWN,this.disable.bind(this)),y.addChild(S)}if(this.hasMaxHeight()&&this._addScrollWrap(),r){if(h){var E=h[0],P=h[1];0!=P&&v.setPositionY(P),0!=E&&(m==s.RIGHT?v.getElement().marginRight=E:v.setPositionX(E))}v.setStyleProperty("float",m)}else h?m==s.LEFT||m==s.TOP||m==s.BOTTOM?v.setPositionGlobal(h[0],h[1]):(v.setPositionGlobal(window.innerWidth-n-h[0],h[1]),this._position=v.getPosition()):this._position=v.getPosition(),this._mouseOffset=[0,0],v.setStyleProperty("position","absolute"),$.addEventListener(p.MOUSE_DOWN,this._onHeadDragStart.bind(this))}var C=this._parent,L=C.historyIsEnabled(),D=C.statesAreEnabled();(L||D)&&y.addChildAt(new i,0).setStyleClass(a.Wrap),L&&(this._menuUndo=y.getChildAt(0).addChild(new i(i.INPUT_BUTTON)).setStyleClass(a.ButtonMenuUndo).setProperty("value",u.get().getNumStates()).addEventListener(p.MOUSE_DOWN,function(){u.get().popState()}),C.addEventListener(f.UPDATE_MENU,this,"onUpdateMenu")),D&&(y.getChildAt(0).addChild(new i(i.INPUT_BUTTON)).setStyleClass(a.ButtonMenuLoad).setProperty("value","Load").addEventListener(p.MOUSE_DOWN,function(){t._loadState()}),y.getChildAt(0).addChild(new i(i.INPUT_BUTTON)).setStyleClass(a.ButtonMenuSave).setProperty("value","Save").addEventListener(p.MOUSE_DOWN,function(){t._saveState()})),(L||D)&&($.addEventListener(p.MOUSE_OVER,function(){y.setStyleClass(a.MenuActive)}),$.addEventListener(p.MOUSE_OUT,function(){y.setStyleClass(a.Menu)})),1!=g&&0!=g&&v.setStyleProperty("opacity",g),window.addEventListener(c.WINDOW_RESIZE,this._onWindowResize.bind(this)),this._updateAppearance()}D.prototype=Object.create(l.prototype),D.prototype.constructor=D,D.prototype._onMenuHideMouseDown=function(){this._enabled=!this._enabled,this._updateAppearance()},D.prototype.onUpdateMenu=function(){this._menuUndo.setProperty("value",u.get().getNumStates())},D.prototype._onMenuUndoTrigger=function(){u.get().popState()},D.prototype._updateAppearance=function(){var t=this._node,e=this._headNode,n=this._menuHide;this._enabled?(t.setHeight(e.getHeight()+this._wrapNode.getHeight()),t.deleteStyleProperty("height"),n.setStyleClass(a.ButtonMenuHide),e.setStyleClass(a.Head),this.dispatchEvent(new h(this,d.PANEL_SHOW,null))):(e.getStyle().borderBottom="none",t.setHeight(e.getHeight()),n.setStyleClass(a.ButtonMenuShow),this.dispatchEvent(new h(this,d.PANEL_HIDE,null)))},D.prototype._onHeadDragStart=function(){var t=this._parent.getNode(),e=this._node,n=e.getPositionGlobal(),i=m.get().getPosition(),r=this._mouseOffset;r[0]=i[0]-n[0],r[1]=i[1]-n[1];var o=c.MOUSE_MOVE,a=c.MOUSE_UP,s=this,u=function(){s._updatePosition()},l=function(){document.removeEventListener(o,u,!1),document.removeEventListener(a,l,!1),s.dispatchEvent(new h(this,d.PANEL_MOVE_END,null))};t.removeChild(e),t.addChild(e),document.addEventListener(o,u,!1),document.addEventListener(a,l,!1),this.dispatchEvent(new h(this,d.PANEL_MOVE_BEGIN,null))},D.prototype._updatePosition=function(){var t=m.get().getPosition(),e=this._mouseOffset,n=this._position;n[0]=t[0]-e[0],n[1]=t[1]-e[1],this._constrainHeight(),this._constrainPosition(),this.dispatchEvent(new h(this,d.PANEL_MOVE,null))},D.prototype._onWindowResize=function(){if(this.isDocked()){var t=this._dock;if(t.align==s.RIGHT||t.align==s.LEFT){var e=window.innerHeight,n=this._listNode.getHeight(),i=this._headNode.getHeight();this._height=e,e-i>n?this._scrollBar.disable():this._scrollBar.enable(),this.dispatchEvent(new h(this,d.PANEL_SIZE_CHANGE))}}else this.isFixed()||this._constrainPosition();this._constrainHeight(),this.dispatchEvent(new h(this,c.WINDOW_RESIZE))},D.prototype._constrainPosition=function(){var t=this._node,e=window.innerWidth-t.getWidth(),n=window.innerHeight-t.getHeight(),i=this._position;i[0]=Math.max(0,Math.min(i[0],e)),i[1]=Math.max(0,Math.min(i[1],n)),t.setPositionGlobal(i[0],i[1])},D.prototype._constrainHeight=function(){if(this._vConstrain){var t,e=this.hasMaxHeight(),n=this.hasScrollWrap(),i=this._headNode,r=this._wrapNode,o=this._scrollBar,a=this.isDocked()||this.isFixed()?0:this._position[1],s=e?this.getMaxHeight():n?o.getTargetNode().getHeight():r.getHeight(),u=i.getHeight(),l=window.innerHeight-(a+s)-u;if(l<0){if(t=s+l,!n)return this._addScrollWrap(t),void this.dispatchEvent(new h(this,d.PANEL_SCROLL_WRAP_ADDED,null));o.setWrapHeight(t),r.setHeight(t)}else!e&&n&&(o.removeFromParent(),r.addChild(this._listNode),r.deleteStyleProperty("height"),this._scrollBar.removeMouseListener(),this._scrollBar=null,this.dispatchEvent(new h(this,d.PANEL_SCROLL_WRAP_REMOVED,null)))}},D.prototype.onGroupListSizeChange=function(){this.hasScrollWrap()&&this._updateScrollWrap(),this._constrainHeight()},D.prototype._updateScrollWrap=function(){var t=this._wrapNode,e=this._scrollBar,n=this.hasMaxHeight()?this.getMaxHeight():100,i=this._listNode.getHeight();t.setHeight(i<n?i:n),e.update(),e.isValid()?(e.enable(),t.setHeight(n)):(e.disable(),t.setHeight(t.getChildAt(1).getHeight()))},D.prototype._addScrollWrap=function(){var t=this._wrapNode,e=this._listNode,n=0==arguments.length?this.getMaxHeight():arguments[0];this._scrollBar=new o(t,e,n),this.isEnabled()&&t.setHeight(n)},D.prototype.hasScrollWrap=function(){return null!=this._scrollBar},D.prototype.preventSelectDrag=function(){this.hasScrollWrap()&&(this._wrapNode.getElement().scrollTop=0)},D.prototype.enable=function(){this._node.setStyleProperty("display","block"),this._enabled=!0,this._updateAppearance()},D.prototype.disable=function(){this._node.setStyleProperty("display","none"),this._enabled=!1,this._updateAppearance()},D.prototype.isEnabled=function(){return this._enabled},D.prototype.isDisabled=function(){return!this._enabled},D.prototype.hasMaxHeight=function(){return null!=this._height},D.prototype.getMaxHeight=function(){return this._height},D.prototype.isDocked=function(){return this._dock},D.prototype.isFixed=function(){return this._fixed},D.prototype.getGroups=function(){return this._groups},D.prototype.getNode=function(){return this._node},D.prototype.getList=function(){return this._listNode},D.prototype.getWidth=function(){return this._width},D.prototype.getPosition=function(){return this._position},D.prototype.getParent=function(){return this._parent},D.prototype.addGroup=function(t){var e=new r(this,t);return this._groups.push(e),this.isDocked()&&this.dispatchEvent(new h(this,d.PANEL_SIZE_CHANGE)),this},D.prototype.addSubGroup=function(t){var e=this._groups;return 0==e.length&&this.addGroup(),e[e.length-1].addSubGroup(t),this},D.prototype._addComponent=function(){var t,e=this._groups;return 0==e.length&&e.push(new r(this)),(t=e[e.length-1]).addComponent.apply(t,arguments),this},D.prototype.addStringInput=function(t,e,n){return this._addComponent(g,t,e,n)},D.prototype.addNumberInput=function(t,e,n){return this._addComponent(v,t,e,n)},D.prototype.addRange=function(t,e,n){return this._addComponent($,t,e,n)},D.prototype.addCheckbox=function(t,e,n){return this._addComponent(y,t,e,n)},D.prototype.addColor=function(t,e,n){return this._addComponent(_,t,e,n)},D.prototype.addButton=function(t,e,n){return this._addComponent(x,t,e,n)},D.prototype.addSelect=function(t,e,n){return this._addComponent(b,t,e,n)},D.prototype.addSlider=function(t,e,n,i){return this._addComponent(w,t,e,n,i)},D.prototype.addFunctionPlotter=function(t,e,n){return this._addComponent(A,t,e,n)},D.prototype.addPad=function(t,e,n){return this._addComponent(T,t,e,n)},D.prototype.addValuePlotter=function(t,e,n){return this._addComponent(S,t,e,n)},D.prototype.addNumberOutput=function(t,e,n){return this._addComponent(E,t,e,n)},D.prototype.addStringOutput=function(t,e,n){return this._addComponent(P,t,e,n)},D.prototype.addCanvas=function(t){return this._addComponent(C,t)},D.prototype.addSVG=function(t){return this._addComponent(L,t)},D.prototype.setData=function(t){for(var e=this._groups,n=-1,i=e.length;++n<i;)e[n].setData(t[n])},D.prototype.getData=function(){for(var t=this._groups,e=-1,n=t.length,i=[];++e<n;)i.push(t[e].getData());return i},t.exports=D},function(t,e,n){var i=n(8),r=n(185),o=n(59),a=n(121),s=n(7),u=n(36),l=n(12),h=n(16),c=(n(14),n(15)),p=n(127),d=n(125),f=n(60),m=n(168),g=n(42),v=n(86),$=n(117),y=n(124),_=n(119),x=n(120),b=!1;function w(t){if(b)throw Error("ControlKit is already initialized.");(t=t||{}).history=void 0!==t.history&&t.history,t.loadAndSave=void 0!==t.loadAndSave&&t.loadAndSave,t.opacity=void 0===t.opacity?1:t.opacity,t.panelsClosable=void 0!==t.panelsClosable&&t.panelsClosable,t.useExternalStyle=void 0!==t.useExternalStyle&&t.useExternalStyle,t.enable=void 0===t.enable||t.enable,u.apply(this,arguments);var e=null;if(t.parentDomElementId?e=i.getNodeById(t.parentDomElementId):(e=new i,document.body.appendChild(e.getElement())),!t.useExternalStyle){var r=document.createElement("style");r.type="text/css";var l=t.style?t.styleString:n(167).string;r.stylesheet?r.stylesheet.cssText=l:r.appendChild(document.createTextNode(l)),(document.head||document.getElementsByTagName("head")[0]).appendChild(r)}e.setProperty("id",s.ControlKit),this._node=e,this._panels=[],this._enabled=t.enable,this._historyEnabled=t.history,this._statesEnabled=t.loadAndSave,this._panelsClosable=t.panelsClosable;var c=f.setup();this._historyEnabled?(c.addEventListener(p.STATE_PUSH,this,"onHistoryStatePush"),c.addEventListener(p.STATE_POP,this,"onHistoryStatePop")):c.disable(),g.setup(),a.setup(e),o.setup(e);var d=t.opacity;1!=d&&0!=d&&e.setStyleProperty("opacity",d),this._canUpdate=!0;var m,v=this,$=0;window.addEventListener(h.WINDOW_RESIZE,function(){v._canUpdate=!1,clearInterval(m),m=setInterval(function(){$>=10&&($=0,v._canUpdate=!0,clearInterval(m)),$++},25)}),this._shortcutEnable="h",document.addEventListener("keydown",function(t){t.ctrlKey&&String.fromCharCode(t.which||t.keyCode).toLowerCase()==v._shortcutEnable&&(v._enabled=!v._enabled,v._enabled?v._enable():v._disable())}),this._enabled||this._disable(),b=!0}w.prototype=Object.create(u.prototype),w.prototype.constructor=w,w.prototype.addPanel=function(t){var e=new r(this,t);return this._panels.push(e),e},w.prototype.update=function(){if(this._enabled&&this._canUpdate){var t,e,n,i,r,o,a,s,u,l,h=this._panels;for(t=-1,i=h.length;++t<i;)if(!(a=h[t]).isDisabled())for(e=-1,r=(s=a.getGroups()).length;++e<r;)for(n=-1,o=(u=s[e].getComponents()).length;++n<o;)(l=u[n]).isDisabled()||((l instanceof v||l instanceof $||l instanceof y||l instanceof _)&&l.update(),l instanceof x&&l._onInputChange())}},w.prototype.getComponentBy=function(t){var e,n,i,r,o,a,s,u,l,h=this._panels;for(e=-1,r=h.length;++e<r;)for(n=-1,o=(s=h[e].getGroups()).length;++n<o;)for(i=-1,a=(u=s[n].getComponents()).length;++i<a;)if((l=u[i])&&(l._key===t.key||l._lablNode&&l._lablNode._element.innerText===t.label))return l},w.prototype.historyIsEnabled=function(){return this._historyEnabled},w.prototype.statesAreEnabled=function(){return this._statesEnabled},w.prototype.panelsAreClosable=function(){return this._panelsClosable},w.prototype._enable=function(){for(var t=-1,e=this._panels,n=e.length;++t<n;)e[t].enable();this._node.setStyleProperty("visibility","")},w.prototype._disable=function(){for(var t=-1,e=this._panels,n=e.length;++t<n;)e[t].disable();this._node.setStyleProperty("visibility","hidden")},w.prototype.enable=function(){this._enable(),this._enabled=!0},w.prototype.disable=function(){this._disable(),this._enabled=!1},w.prototype.setShortcutEnable=function(t){this._shortcutEnable=t},w.prototype.onHistoryStatePush=function(){this.dispatchEvent(new l(this,d.UPDATE_MENU,null))},w.prototype.onHistoryStatePop=function(){this.dispatchEvent(new l(this,c.UPDATE_VALUE,{origin:null})),this.dispatchEvent(new l(this,d.UPDATE_MENU,null))},w.prototype.loadSettings=function(t){for(var e=-1,n=t.length,i=this._panels;++e<n;)i[e].setData(t[e])},w.prototype._loadState=function(){m.load(this.loadSettings.bind(this))},w.prototype._saveState=function(){this.update();for(var t=this._panels,e=-1,n=t.length,i=Array(n);++e<n;)i[e]=t[e].getData();m.save({data:i})},w.prototype.getNode=function(){return this._node},w.destroy=function(){g.get().destroy(),o.get().destroy(),a.get().destroy(),b=!1},t.exports=w},function(t,e,n){var i=n(186);i.Canvas=n(116),i.SVG=n(115),t.exports=i},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var i=o(n(187)),r=o(n(166));function o(t){return t&&t.__esModule?t:{default:t}}var a=function(){var t,e;function n(t){!function(t,e){if(!(t instanceof e))throw TypeError("Cannot call a class as a function")}(this,n),this.app=t,this.particlesHitArea=!1,this.particlesRandom=2,this.particlesDepth=4,this.particlesSize=1.5,this.touchRadius=.3,this.range=[0,1],this.rangeRandom=[1,10],this.rangeSize=[0,3],this.rangeDepth=[1,10],this.rangeRadius=[0,.5],this.initControlKit()}return t=n,e=[{key:"initControlKit",value:function(){this.controlKit=new i.default,this.controlKit.addPanel({width:300,enable:!1}).addGroup({label:"Touch",enable:!0}).addCanvas({label:"trail",height:64}).addSlider(this,"touchRadius","rangeRadius",{label:"radius",onChange:this.onTouchChange.bind(this)}).addGroup({label:"Particles",enable:!0}).addSlider(this,"particlesRandom","rangeRandom",{label:"random",onChange:this.onParticlesChange.bind(this)}).addSlider(this,"particlesDepth","rangeDepth",{label:"depth",onChange:this.onParticlesChange.bind(this)}).addSlider(this,"particlesSize","rangeSize",{label:"size",onChange:this.onParticlesChange.bind(this)});var t=this.controlKit.getComponentBy({label:"trail"});t&&(this.touchCanvas=t._canvas,this.touchCtx=this.touchCanvas.getContext("2d"))}},{key:"initStats",value:function(){this.stats=new r.default,document.body.appendChild(this.stats.dom)}},{key:"update",value:function(){if(this.touchCanvas&&this.app.webgl&&this.app.webgl.particles&&this.app.webgl.particles.touch){var t=this.app.webgl.particles.touch.canvas,e=Math.floor(.5*(this.touchCanvas.width-t.width));this.touchCtx.fillRect(0,0,this.touchCanvas.width,this.touchCanvas.height),this.touchCtx.drawImage(t,e,0)}}},{key:"enable",value:function(){this.controlKit.enable(),this.stats&&(this.stats.dom.style.display="")}},{key:"disable",value:function(){this.controlKit.disable(),this.stats&&(this.stats.dom.style.display="none")}},{key:"toggle",value:function(){this.controlKit._enabled?this.disable():this.enable()}},{key:"onTouchChange",value:function(){this.app.webgl&&this.app.webgl.particles&&(this.app.webgl.particles.touch.radius=this.touchRadius)}},{key:"onParticlesChange",value:function(){this.app.webgl&&this.app.webgl.particles&&(this.app.webgl.particles.object3D.material.uniforms.uRandom.value=this.particlesRandom,this.app.webgl.particles.object3D.material.uniforms.uDepth.value=this.particlesDepth,this.app.webgl.particles.object3D.material.uniforms.uSize.value=this.particlesSize,this.app.webgl.particles.hitArea.material.visible=this.particlesHitArea)}},{key:"onPostProcessingChange",value:function(){this.app.webgl.composer&&(this.app.webgl.composer.enabled=this.postProcessing)}}],function(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}(t.prototype,e),n}();e.default=a},function(t,e){t.exports="// @author brunoimbrizi / http://brunoimbrizi.com\n\nprecision lowp float;\n#define GLSLIFY 1\n\nuniform sampler2D uTexture;\n\nvarying vec2 vPUv;\nvarying vec2 vUv;\n\nvoid main() {\n	vec4 color = vec4(0.0);\n	vec2 uv = vUv;\n	vec2 puv = vPUv;\n\n	// pixel color\n	vec4 colA = texture2D(uTexture, puv);\n\n	// greyscale\n	float grey = colA.r * 0.21 + colA.g * 0.71 + colA.b * 0.07;\n	//float grey = colA.r * 0.333 + colA.g * 0.333 + colA.b * 0.333;\n	vec4 colB = vec4(grey, grey, grey, 1.0);\n\n	// circle\n	float border = 0.3;\n	float radius = 0.5;\n	float dist = radius - distance(uv, vec2(0.5));\n	float t = smoothstep(0.0, border, dist);\n\n	// final color\n	color = colA;\n	color.a = t;\n\n	gl_FragColor = color;\n}\n"},function(t,e){t.exports="// @author brunoimbrizi / http://brunoimbrizi.com\n\nprecision lowp float;\n#define GLSLIFY 1\n\nattribute float pindex;\nattribute vec3 position;\nattribute vec3 offset;\nattribute vec2 uv;\nattribute float angle;\n\nuniform mat4 modelViewMatrix;\nuniform mat4 projectionMatrix;\n\nuniform float uTime;\nuniform float uRandom;\nuniform float uDepth;\nuniform float uSize;\nuniform vec2 uTextureSize;\nuniform sampler2D uTexture;\nuniform sampler2D uTouch;\n\nvarying vec2 vPUv;\nvarying vec2 vUv;\n\n//\n// Description : Array and textureless GLSL 2D simplex noise function.\n//      Author : Ian McEwan, Ashima Arts.\n//  Maintainer : ijm\n//     Lastmod : 20110822 (ijm)\n//     License : Copyright (C) 2011 Ashima Arts. All rights reserved.\n//               Distributed under the MIT License. See LICENSE file.\n//               https://github.com/ashima/webgl-noise\n//\n\nvec3 mod289_1_0(vec3 x) {\n  return x - floor(x * (1.0 / 289.0)) * 289.0;\n}\n\nvec2 mod289_1_0(vec2 x) {\n  return x - floor(x * (1.0 / 289.0)) * 289.0;\n}\n\nvec3 permute_1_1(vec3 x) {\n  return mod289_1_0(((x*34.0)+1.0)*x);\n}\n\nfloat snoise_1_2(vec2 v)\n  {\n  const vec4 C = vec4(0.211324865405187,  // (3.0-sqrt(3.0))/6.0\n                      0.366025403784439,  // 0.5*(sqrt(3.0)-1.0)\n                     -0.577350269189626,  // -1.0 + 2.0 * C.x\n                      0.024390243902439); // 1.0 / 41.0\n// First corner\n  vec2 i  = floor(v + dot(v, C.yy) );\n  vec2 x0 = v -   i + dot(i, C.xx);\n\n// Other corners\n  vec2 i1;\n  //i1.x = step( x0.y, x0.x ); // x0.x > x0.y ? 1.0 : 0.0\n  //i1.y = 1.0 - i1.x;\n  i1 = (x0.x > x0.y) ? vec2(1.0, 0.0) : vec2(0.0, 1.0);\n  // x0 = x0 - 0.0 + 0.0 * C.xx ;\n  // x1 = x0 - i1 + 1.0 * C.xx ;\n  // x2 = x0 - 1.0 + 2.0 * C.xx ;\n  vec4 x12 = x0.xyxy + C.xxzz;\n  x12.xy -= i1;\n\n// Permutations\n  i = mod289_1_0(i); // Avoid truncation effects in permutation\n  vec3 p = permute_1_1( permute_1_1( i.y + vec3(0.0, i1.y, 1.0 ))\n    + i.x + vec3(0.0, i1.x, 1.0 ));\n\n  vec3 m = max(0.5 - vec3(dot(x0,x0), dot(x12.xy,x12.xy), dot(x12.zw,x12.zw)), 0.0);\n  m = m*m ;\n  m = m*m ;\n\n// Gradients: 41 points uniformly over a line, mapped onto a diamond.\n// The ring size 17*17 = 289 is close to a multiple of 41 (41*7 = 287)\n\n  vec3 x = 2.0 * fract(p * C.www) - 1.0;\n  vec3 h = abs(x) - 0.5;\n  vec3 ox = floor(x + 0.5);\n  vec3 a0 = x - ox;\n\n// Normalise gradients implicitly by scaling m\n// Approximation of: m *= inversesqrt( a0*a0 + h*h );\n  m *= 1.79284291400159 - 0.85373472095314 * ( a0*a0 + h*h );\n\n// Compute final noise value at P\n  vec3 g;\n  g.x  = a0.x  * x0.x  + h.x  * x0.y;\n  g.yz = a0.yz * x12.xz + h.yz * x12.yw;\n  return 130.0 * dot(m, g);\n}\n\n\n\n\nfloat random(float n) {\n	return fract(sin(n) * 43758.5453123);\n}\n\nvoid main() {\n	vUv = uv;\n\n	// particle uv\n	vec2 puv = offset.xy / uTextureSize;\n	vPUv = puv;\n\n	// pixel color\n	vec4 colA = texture2D(uTexture, puv);\n	float grey = colA.r * 0.21 + colA.g * 0.71 + colA.b * 0.07;\n	//float grey = colA.r * 0.3333 + colA.g * 0.3333 + colA.b * 0.3333	;\n\n	// displacement\n	vec3 displaced = offset;\n	// randomise\n	displaced.xy += vec2(random(pindex) - 0.5, random(offset.x + pindex) - 0.5) * uRandom;\n	float rndz = (random(pindex) + snoise_1_2(vec2(pindex * 0.2, uTime * 0.2)));\n	//displaced.z += rndz * (random(pindex) * 1.0 * uDepth);\n	// center\n	displaced.xy -= uTextureSize * 0.5;\n\n	// touch\n	float t = texture2D(uTouch, puv).r;\n	//displaced.z += t * 60.0 * rndz;\n	displaced.x += cos(angle) * t * float(uTextureSize * 0.4) * rndz;\n	displaced.y += sin(angle) * t * float(uTextureSize * 0.4) * rndz;\n\n	// particle size\n	float psize = (snoise_1_2(vec2(uTime, pindex) * 0.5) + 2.0);\n	//cuanto mas blanco mas grande\n\n	psize *= 0.99999 - grey;\n	psize *= uSize;\n\n	// final position\n	vec4 mvPosition = modelViewMatrix * vec4(displaced, 1.0);\n	mvPosition.xyz += position * (psize * .8);\n	vec4 finalPosition = projectionMatrix * mvPosition;\n\n	gl_Position = finalPosition;\n}\n"},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.easeInOutSine=e.easeOutSine=e.easeInSine=e.easeInOutQuart=e.easeInOutQuad=e.easeOutQuad=e.easeInQuad=void 0,e.easeInQuad=function(t,e,n,i){return n*(t/=i)*t+e},e.easeOutQuad=function(t,e,n,i){return-n*(t/=i)*(t-2)+e},e.easeInOutQuad=function(t,e,n,i){return(t/=i/2)<1?n/2*t*t+e:-n/2*(--t*(t-2)-1)+e},e.easeInOutQuart=function(t,e,n,i){return(t/=i/2)<1?n/2*t*t*t*t+e:-n/2*((t-=2)*t*t*t-2)+e},e.easeInSine=function(t,e,n,i){return-n*Math.cos(t/i*(Math.PI/2))+n+e},e.easeOutSine=function(t,e,n,i){return n*Math.sin(t/i*(Math.PI/2))+e},e.easeInOutSine=function(t,e,n,i){return-n/2*(Math.cos(Math.PI*t/i)-1)+e}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var i=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t){for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var i=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(t,n):{};i.get||i.set?Object.defineProperty(e,n,i):e[n]=t[n]}}return e.default=t,e}(n(54)),r=n(191),o=function(){var t,e;function n(t){!function(t,e){if(!(t instanceof e))throw TypeError("Cannot call a class as a function")}(this,n),this.parent=t,this.size=50,this.maxAge=60,this.radius=.15,this.trail=[],this.initTexture()}return t=n,e=[{key:"initTexture",value:function(){this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=this.size,this.ctx=this.canvas.getContext("2d"),this.ctx.fillStyle="black",this.ctx.fillRect(0,0,this.canvas.width,this.canvas.height),this.texture=new i.Texture(this.canvas),this.canvas.id="touchTexture",this.canvas.style.width=this.canvas.style.height="".concat(this.canvas.width,"px")}},{key:"update",value:function(t){var e=this;this.clear(),this.trail.forEach(function(t,n){t.age++,t.age>e.maxAge&&e.trail.splice(n,1)}),this.trail.forEach(function(t,n){e.drawTouch(t)}),this.texture.needsUpdate=!0}},{key:"clear",value:function(){this.ctx.fillStyle="black",this.ctx.fillRect(0,0,this.canvas.width,this.canvas.height)}},{key:"addTouch",value:function(t){var e=0,n=this.trail[this.trail.length-1];if(n){var i=n.x-t.x,r=n.y-t.y;e=Math.min(1e4*(i*i+r*r),1)}this.trail.push({x:t.x,y:t.y,age:0,force:e})}},{key:"drawTouch",value:function(t){var e={x:t.x*this.size,y:(1-t.y)*this.size},n=1;n=t.age<.3*this.maxAge?(0,r.easeOutSine)(t.age/(.3*this.maxAge),0,1,1):(0,r.easeOutSine)(1-(t.age-.3*this.maxAge)/(.7*this.maxAge),0,1,1),n*=t.force;var i=this.size*this.radius*n,o=this.ctx.createRadialGradient(e.x,e.y,.25*i,e.x,e.y,i);o.addColorStop(0,"rgba(255, 255, 255, 0.2)"),o.addColorStop(1,"rgba(0, 0, 0, 0.0)"),this.ctx.beginPath(),this.ctx.fillStyle=o,this.ctx.arc(e.x,e.y,i,0,2*Math.PI),this.ctx.fill()}}],function(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}(t.prototype,e),n}();e.default=o},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var i,r=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t){for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var i=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(t,n):{};i.get||i.set?Object.defineProperty(e,n,i):e[n]=t[n]}}return e.default=t,e}(n(54)),o=(i=n(192))&&i.__esModule?i:{default:i},a=n(129),s=function(){var t,e;function i(t){!function(t,e){if(!(t instanceof e))throw TypeError("Cannot call a class as a function")}(this,i),this.webgl=t,this.container=new r.Object3D}return t=i,e=[{key:"init",value:function(t){var e=this;(new r.TextureLoader).load(t.image,function(n){if(e.texture=n,e.texture.minFilter=r.LinearFilter,e.texture.magFilter=r.LinearFilter,e.texture.format=r.RGBFormat,e.width=n.image.width,e.height=n.image.height,document.getElementById("particle-image-caption"))document.getElementById("particle-image-caption").innerHTML=t.caption;else{var i=document.createElement("p");i.setAttribute("id","particle-image-caption");var o=document.createTextNode(t.caption);i.appendChild(o),document.querySelector("#particle-container").parentNode.insertBefore(i,document.querySelector("#particle-container").nextSibling)}e.initPoints(!0),e.initHitArea(),e.initTouch(),e.resize(),e.show()})}},{key:"initPoints",value:function(t){var e=this;this.numPoints=this.width*this.height;var i,o=this.numPoints,s=[];if(t){o=0;var u=this.texture.image,l=document.createElement("canvas"),h=l.getContext("2d");l.width=this.width,l.height=this.height,h.scale(1,-1),h.drawImage(u,0,0,this.width,-1*this.height);var c=h.getImageData(0,0,l.width,l.height);i=Float32Array.from(c.data);for(var p=0;p<this.numPoints;p+=Math.max(1,Math.floor(4*Math.random()))){var d=i[4*p+0];d>=4&&d<=240&&(o++,s.push(p))}}var f={uTime:{value:0},uRandom:{value:0},uDepth:{value:2},uSize:{value:4},uTextureSize:{value:new r.Vector2(this.width,this.height)},uTexture:{value:this.texture},uTouch:{value:null}},m=new r.RawShaderMaterial({uniforms:f,vertexShader:a(n(190)),fragmentShader:a(n(189)),depthTest:!1,transparent:!0}),g=new r.InstancedBufferGeometry,v=new r.BufferAttribute(new Float32Array(12),3);v.setXYZ(0,-.5,.5,0),v.setXYZ(1,.5,.5,0),v.setXYZ(2,-.5,-.5,0),v.setXYZ(3,.5,-.5,0),g.addAttribute("position",v);var $=new r.BufferAttribute(new Float32Array(8),2);$.setXYZ(0,0,0),$.setXYZ(1,1,0),$.setXYZ(2,0,1),$.setXYZ(3,1,1),g.addAttribute("uv",$),g.setIndex(new r.BufferAttribute(new Uint16Array([0,2,1,2,3,1]),1));var y=new Uint16Array(o),_=new Float32Array(3*o),x=new Float32Array(o),b=0;s.forEach(function(t){_[3*b+0]=t%e.width,_[3*b+1]=Math.floor(t/e.width),y[b]=t,x[b]=Math.random()*Math.PI,b++}),g.addAttribute("pindex",new r.InstancedBufferAttribute(y,1,!1)),g.addAttribute("offset",new r.InstancedBufferAttribute(_,3,!1)),g.addAttribute("angle",new r.InstancedBufferAttribute(x,1,!1)),this.object3D=new r.Mesh(g,m),this.container.add(this.object3D)}},{key:"initTouch",value:function(){this.touch||(this.touch=new o.default(this)),this.object3D.material.uniforms.uTouch.value=this.touch.texture}},{key:"initHitArea",value:function(){console.debug(this.width,this.height);var t=new r.PlaneGeometry(this.width,this.height,1,1),e=new r.MeshBasicMaterial({color:16777215,wireframe:!0,depthTest:!1});e.visible=!1,this.hitArea=new r.Mesh(t,e),this.container.add(this.hitArea)}},{key:"addListeners",value:function(){this.handlerInteractiveMove=this.onInteractiveMove.bind(this),this.webgl.interactive.addListener("interactive-move",this.handlerInteractiveMove),this.webgl.interactive.objects.push(this.hitArea),this.webgl.interactive.enable()}},{key:"removeListeners",value:function(){var t=this;this.webgl.interactive.removeListener("interactive-move",this.handlerInteractiveMove);var e=this.webgl.interactive.objects.findIndex(function(e){return e===t.hitArea});this.webgl.interactive.objects.splice(e,1),this.webgl.interactive.disable()}},{key:"update",value:function(t){this.object3D&&(this.touch&&this.touch.update(),this.object3D.material.uniforms.uTime.value+=t)}},{key:"show",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1;TweenLite.fromTo(this.object3D.material.uniforms.uSize,t,{value:.5},{value:1.5}),TweenLite.to(this.object3D.material.uniforms.uRandom,t,{value:2}),TweenLite.fromTo(this.object3D.material.uniforms.uDepth,1.5*t,{value:40},{value:4}),this.addListeners()}},{key:"hide",value:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.8;return new Promise(function(i,r){TweenLite.to(e.object3D.material.uniforms.uRandom,n,{value:5,onComplete:function(){t&&e.destroy(),i()}}),TweenLite.to(e.object3D.material.uniforms.uDepth,n,{value:-20,ease:Quad.easeIn}),TweenLite.to(e.object3D.material.uniforms.uSize,.8*n,{value:0}),e.removeListeners()})}},{key:"destroy",value:function(){this.object3D&&(this.object3D.parent.remove(this.object3D),this.object3D.geometry.dispose(),this.object3D.material.dispose(),this.object3D=null,this.hitArea&&(this.hitArea.parent.remove(this.hitArea),this.hitArea.geometry.dispose(),this.hitArea.material.dispose(),this.hitArea=null))}},{key:"resize",value:function(){if(this.object3D){var t=this.webgl.fovHeight/this.height;this.object3D.scale.set(t,t,1),this.hitArea.scale.set(t,t,1)}}},{key:"onInteractiveMove",value:function(t){var e=t.intersectionData.uv;this.touch&&this.touch.addTouch(e)}}],function(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}(t.prototype,e),i}();e.default=s},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.passiveEvent=void 0;var i=!1,r=!1;e.passiveEvent=function(){return!!function(){if(i)return r;i=!0;try{var t=Object.defineProperty({},"passive",{get:function(){r=!0}});window.addEventListener("test",null,t)}catch(e){return r}return window.removeEventListener("test",null,opts),r}()&&{passive:!0}}},function(t,e){var n,i,r=t.exports={};function o(){throw Error("setTimeout has not been defined")}function a(){throw Error("clearTimeout has not been defined")}function s(t){if(n===setTimeout)return setTimeout(t,0);if((n===o||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(i){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:o}catch(t){n=o}try{i="function"==typeof clearTimeout?clearTimeout:a}catch(e){i=a}}();var u,l=[],h=!1,c=-1;function p(){h&&u&&(h=!1,u.length?l=u.concat(l):c=-1,l.length&&d())}function d(){if(!h){var t=s(p);h=!0;for(var e=l.length;e;){for(u=l,l=[];++c<e;)u&&u[c].run();c=-1,e=l.length}u=null,h=!1,function(t){if(i===clearTimeout)return clearTimeout(t);if((i===a||!i)&&clearTimeout)return i=clearTimeout,clearTimeout(t);try{i(t)}catch(e){try{return i.call(null,t)}catch(n){return i.call(this,t)}}}(t)}}function f(t,e){this.fun=t,this.array=e}function m(){}r.nextTick=function(t){var e=Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];l.push(new f(t,e)),1!==l.length||h||s(d)},f.prototype.run=function(){this.fun.apply(null,this.array)},r.title="browser",r.browser=!0,r.env={},r.argv=[],r.version="",r.versions={},r.on=m,r.addListener=m,r.once=m,r.off=m,r.removeListener=m,r.removeAllListeners=m,r.emit=m,r.prependListener=m,r.prependOnceListener=m,r.listeners=function(t){return[]},r.binding=function(t){throw Error("process.binding is not supported")},r.cwd=function(){return"/"},r.chdir=function(t){throw Error("process.chdir is not supported")},r.umask=function(){return 0}},function(t,e,n){"use strict";n.r(e),(function(t){var n=Object.assign||function(t){for(var e,n=1,i=arguments.length;n<i;n++)for(var r in e=arguments[n])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},i=[["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)$/],["edge",/Edge\/([0-9\._]+)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+)\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["safari",/Version\/([0-9\._]+).*Safari/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/]],r=["Windows Phone","Android","CentOS",{name:"Chrome OS",pattern:"CrOS"},"Debian","Fedora","FreeBSD","Gentoo","Haiku","Kubuntu","Linux Mint","OpenBSD","Red Hat","SuSE","Ubuntu","Xubuntu","Cygwin","Symbian OS","hpwOS","webOS ","webOS","Tablet OS","Tizen","Linux","Mac OS X","Macintosh","Mac","Windows 98;","Windows "],o={"10.0":"10",6.4:"10 Technical Preview",6.3:"8.1",6.2:"8",6.1:"Server 2008 R2 / 7","6.0":"Server 2008 / Vista",5.2:"Server 2003 / XP 64-bit",5.1:"XP",5.01:"2000 SP1","5.0":"2000","4.0":"NT","4.90":"ME"},a=RegExp("(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino","i"),s=RegExp("1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\-(n|u)|c55\\/|capi|ccwa|cdm\\-|cell|chtm|cldc|cmd\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\-s|devi|dica|dmob|do(c|p)o|ds(12|\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\-|_)|g1 u|g560|gene|gf\\-5|g\\-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd\\-(m|p|t)|hei\\-|hi(pt|ta)|hp( i|ip)|hs\\-c|ht(c(\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\-(20|go|ma)|i230|iac( |\\-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc\\-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|\\-[a-w])|libw|lynx|m1\\-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\-2|po(ck|rt|se)|prox|psio|pt\\-g|qa\\-a|qc(07|12|21|32|60|\\-[2-7]|i\\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\-|oo|p\\-)|sdk\\/|se(c(\\-|0|1)|47|mc|nd|ri)|sgh\\-|shar|sie(\\-|m)|k\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\\-|v\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\-|tdg\\-|tel(i|m)|tim\\-|t\\-mo|to(pl|sh)|ts(70|m\\-|m3|m5)|tx\\-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\-|your|zeto|zte\\-","i"),u=function(){function t(t,e,n){this.navigator=e,this.process=n,this.userAgent=t||(this.navigator?e.userAgent||e.vendor:"")}return t.prototype.detect=function(){if(this.process&&!this.userAgent){var t=this.process.version.slice(1).split(".").slice(0,3),e=Array.prototype.slice.call(t,1).join("")||"0";return{name:"node",version:t.join("."),versionNumber:parseFloat(t[0]+"."+e),mobile:!1,os:this.process.platform}}return this.userAgent||this.handleMissingError(),n({},this.checkBrowser(),this.checkMobile(),this.checkOs())},t.prototype.checkBrowser=function(){var t=this;return i.filter(function(e){return e[1].test(t.userAgent)}).map(function(e){var n=e[1].exec(t.userAgent),i=n&&n[1].split(/[._]/).slice(0,3),r=Array.prototype.slice.call(i,1).join("")||"0";return i&&i.length<3&&Array.prototype.push.apply(i,1===i.length?[0,0]:[0]),{name:String(e[0]),version:i.join("."),versionNumber:Number(i[0]+"."+r)}}).shift()},t.prototype.checkMobile=function(){var t=this.userAgent.substr(0,4);return{mobile:a.test(this.userAgent)||s.test(t)}},t.prototype.checkOs=function(){var t=this;return r.map(function(e){var n=e.name||e,i=t.getOsPattern(e);return{name:n,pattern:i,value:RegExp("\\b"+i.replace(/([ -])(?!$)/g,"$1?")+"(?:x?[\\d._]+|[ \\w.]*)","i").exec(t.userAgent)}}).filter(function(t){return t.value}).map(function(t){var e,n=t.value[0]||"";return t.pattern&&t.name&&/^Win/i.test(n)&&!/^Windows Phone /i.test(n)&&(e=o[n.replace(/[^\d.]/g,"")])&&(n="Windows "+e),t.pattern&&t.name&&(n=n.replace(RegExp(t.pattern,"i"),t.name)),n=n.replace(/ ce$/i," CE").replace(/\bhpw/i,"web").replace(/\bMacintosh\b/,"Mac OS").replace(/_PowerPC\b/i," OS").replace(/\b(OS X) [^ \d]+/i,"$1").replace(/\bMac (OS X)\b/,"$1").replace(/\/(\d)/," $1").replace(/_/g,".").replace(/(?: BePC|[ .]*fc[ \d.]+)$/i,"").replace(/\bx86\.64\b/gi,"x86_64").replace(/\b(Windows Phone) OS\b/,"$1").replace(/\b(Chrome OS \w+) [\d.]+\b/,"$1").split(" on ")[0].trim(),{os:n=/^(?:webOS|i(?:OS|P))/.test(n)?n:n.charAt(0).toUpperCase()+n.slice(1)}}).shift()},t.prototype.getOsPattern=function(t){var e=t;return("string"==typeof t?t:void 0)||e.pattern||e.name},t.prototype.handleMissingError=function(){throw Error("Please give user-agent.\n> browser(navigator.userAgent or res.headers['user-agent']).")},t}();function l(t,e){return t(e={exports:{}},e.exports),e.exports}var h=l(function(t){var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)}),c=l(function(t){var e=t.exports={version:"2.5.7"};"number"==typeof __e&&(__e=e)}),p=(c.version,function(t){return"object"==typeof t?null!==t:"function"==typeof t}),d=function(t){if(!p(t))throw TypeError(t+" is not an object!");return t},f=function(t){try{return!!t()}catch(e){return!0}},m=!f(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}),g=h.document,v=p(g)&&p(g.createElement),$=!m&&!f(function(){return 7!=Object.defineProperty(v?g.createElement("div"):{},"a",{get:function(){return 7}}).a}),y=Object.defineProperty,_={f:m?Object.defineProperty:function(t,e,n){if(d(t),e=function(t,e){var n,i;if(!p(t))return t;if("function"==typeof(n=t.toString)&&!p(i=n.call(t))||"function"==typeof(n=t.valueOf)&&!p(i=n.call(t)))return i;throw TypeError("Can't convert object to primitive value")}(e),d(n),$)try{return y(t,e,n)}catch(i){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return"value"in n&&(t[e]=n.value),t}},x=m?function(t,e,n){var i;return _.f(t,e,{enumerable:!1,configurable:!0,writable:!0,value:i=n})}:function(t,e,n){return t[e]=n,t},b={}.hasOwnProperty,w=function(t,e){return b.call(t,e)},A=0,T=Math.random(),S=function(t){return"Symbol(".concat(void 0===t?"":t,")_",(++A+T).toString(36))},E=l(function(t){var e=S("src"),n=Function.toString,i=(""+n).split("toString");c.inspectSource=function(t){return n.call(t)},(t.exports=function(t,n,r,o){var a="function"==typeof r;a&&(w(r,"name")||x(r,"name",n)),t[n]!==r&&(a&&(w(r,e)||x(r,e,t[n]?""+t[n]:i.join(String(n)))),t===h?t[n]=r:o?t[n]?t[n]=r:x(t,n,r):(delete t[n],x(t,n,r)))})(Function.prototype,"toString",function(){return"function"==typeof this&&this[e]||n.call(this)})}),P=function(t,e,n){if(function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!")}(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,i){return t.call(e,n,i)};case 3:return function(n,i,r){return t.call(e,n,i,r)}}return function(){return t.apply(e,arguments)}},C=function(t,e,n){var i,r,o,a,s=t&C.F,u=t&C.G,l=t&C.S,p=t&C.P,d=t&C.B,f=u?h:l?h[e]||(h[e]={}):(h[e]||{}).prototype,m=u?c:c[e]||(c[e]={}),g=m.prototype||(m.prototype={});for(i in u&&(n=e),n)o=((r=!s&&f&&void 0!==f[i])?f:n)[i],a=d&&r?P(o,h):p&&"function"==typeof o?P(Function.call,o):o,f&&E(f,i,o,t&C.U),m[i]!=o&&x(m,i,a),p&&g[i]!=o&&(g[i]=o)};h.core=c,C.F=1,C.G=2,C.S=4,C.P=8,C.B=16,C.W=32,C.U=64,C.R=128;var L=C,M={}.toString,R=function(t){return M.call(t).slice(8,-1)},I=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==R(t)?t.split(""):Object(t)},D=function(t){if(null==t)throw TypeError("Can't call method on  "+t);return t},N=Math.ceil,B=Math.floor,O=Math.min,G=Array.isArray||function(t){return"Array"==R(t)},k=l(function(t){var e=h["__core-js_shared__"]||(h["__core-js_shared__"]={});(t.exports=function(t,n){return e[t]||(e[t]=void 0!==n?n:{})})("versions",[]).push({version:c.version,mode:"global",copyright:"\xa9 2018 Denis Pushkarev (zloirock.ru)"})}),V=l(function(t){var e=k("wks"),n=h.Symbol,i="function"==typeof n;(t.exports=function(t){return e[t]||(e[t]=i&&n[t]||(i?n:S)("Symbol."+t))}).store=e})("species"),z=function(t,e){var n,i;return new(G(n=t)&&("function"==typeof(i=n.constructor)&&(i===Array||G(i.prototype))&&(i=void 0),p(i)&&null===(i=i[V])&&(i=void 0)),void 0===i?Array:i)(e)},U=function(t,e){var n=1==t,i=2==t,r=3==t,o=4==t,a=6==t,s=5==t||a,u=e||z;return function(e,l,h){for(var c,p,d,f,m,g=(c=e,Object(D(c))),v=I(g),$=P(l,h,3),y=(p=v.length)>0?O((d=p,isNaN(d=+d)?0:(d>0?B:N)(d)),9007199254740991):0,_=0,x=n?u(e,y):i?u(e,0):void 0;y>_;_++)if((s||_ in v)&&(m=$(f=v[_],_,g),t)){if(n)x[_]=m;else if(m)switch(t){case 3:return!0;case 5:return f;case 6:return _;case 2:x.push(f)}else if(o)return!1}return a?-1:r||o?o:x}},H=function(t,e){return!!t&&f(function(){e?t.call(null,function(){},1):t.call(null)})},F=U(2);L(L.P+!H([].filter,!0)*L.F,"Array",{filter:function(t){return F(this,t,arguments[1])}}),c.Array.filter;var W=U(1);L(L.P+!H([].map,!0)*L.F,"Array",{map:function(t){return W(this,t,arguments[1])}}),c.Array.map;var X="	\n\v\f\r \xa0 ᠎              \u2028\u2029\uFEFF",Y="["+X+"]",K=RegExp("^"+Y+Y+"*"),j=RegExp(Y+Y+"*$"),Z=function(t,e,n){var i={},r=f(function(){return!!X[t]()||"​\x85"!="​\x85"[t]()}),o=i[t]=r?e(q):X[t];n&&(i[n]=o),L(L.P+L.F*r,"String",i)},q=Z.trim=function(t,e){return t=String(D(t)),1&e&&(t=t.replace(K,"")),2&e&&(t=t.replace(j,"")),t};Z("trim",function(t){return function(){return t(this,3)}}),c.String.trim;var Q="undefined"!=typeof window?window.navigator:void 0,J=void 0!==t?t:void 0;e.default=function(t){return new u(t,Q,J).detect()}}).call(this,n(195))},function(t,e){function n(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function i(t){return"function"==typeof t}function r(t){return"object"==typeof t&&null!==t}function o(t){return void 0===t}t.exports=n,n.EventEmitter=n,n.prototype._events=void 0,n.prototype._maxListeners=void 0,n.defaultMaxListeners=10,n.prototype.setMaxListeners=function(t){var e;if("number"!=typeof(e=t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},n.prototype.emit=function(t){var e,n,a,s,u,l;if(this._events||(this._events={}),"error"===t&&(!this._events.error||r(this._events.error)&&!this._events.error.length)){if((e=arguments[1])instanceof Error)throw e;var h=Error('Uncaught, unspecified "error" event. ('+e+")");throw h.context=e,h}if(o(n=this._events[t]))return!1;if(i(n))switch(arguments.length){case 1:n.call(this);break;case 2:n.call(this,arguments[1]);break;case 3:n.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),n.apply(this,s)}else if(r(n))for(s=Array.prototype.slice.call(arguments,1),a=(l=n.slice()).length,u=0;u<a;u++)l[u].apply(this,s);return!0},n.prototype.addListener=function(t,e){var a;if(!i(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,i(e.listener)?e.listener:e),this._events[t]?r(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,r(this._events[t])&&!this._events[t].warned&&(a=o(this._maxListeners)?n.defaultMaxListeners:this._maxListeners)&&a>0&&this._events[t].length>a&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),"function"==typeof console.trace&&console.trace()),this},n.prototype.on=n.prototype.addListener,n.prototype.once=function(t,e){if(!i(e))throw TypeError("listener must be a function");var n=!1;function r(){this.removeListener(t,r),n||(n=!0,e.apply(this,arguments))}return r.listener=e,this.on(t,r),this},n.prototype.removeListener=function(t,e){var n,o,a,s;if(!i(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(a=(n=this._events[t]).length,o=-1,n===e||i(n.listener)&&n.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(r(n)){for(s=a;s-- >0;)if(n[s]===e||n[s].listener&&n[s].listener===e){o=s;break}if(o<0)return this;1===n.length?(n.length=0,delete this._events[t]):n.splice(o,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},n.prototype.removeAllListeners=function(t){var e,n;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[t]&&delete this._events[t],this;if(0===arguments.length){for(e in this._events)"removeListener"!==e&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(i(n=this._events[t]))this.removeListener(t,n);else if(n)for(;n.length;)this.removeListener(t,n[n.length-1]);return delete this._events[t],this},n.prototype.listeners=function(t){return this._events&&this._events[t]?i(this._events[t])?[this._events[t]]:this._events[t].slice():[]},n.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(i(e))return 1;if(e)return e.length}return 0},n.listenerCount=function(t,e){return t.listenerCount(e)}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var i=s(n(197)),r=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t){for(var n in t)if(Object.prototype.hasOwnProperty.call(t,n)){var i=Object.defineProperty&&Object.getOwnPropertyDescriptor?Object.getOwnPropertyDescriptor(t,n):{};i.get||i.set?Object.defineProperty(e,n,i):e[n]=t[n]}}return e.default=t,e}(n(54)),o=s(n(196)),a=n(194);function s(t){return t&&t.__esModule?t:{default:t}}function u(t){return(u="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function l(t){return(l=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function h(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function c(t,e,n){return e&&h(t.prototype,e),n&&h(t,n),t}function p(t,e){return(p=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t})(t,e)}var d=function(t){function e(t,n){var i,a,s;return function(t,e){if(!(t instanceof e))throw TypeError("Cannot call a class as a function")}(this,e),(i=(a=this,(s=l(e).call(this))&&("object"===u(s)||"function"==typeof s)?s:function(t){if(void 0===t)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(a))).camera=t,i.el=n||window,i.plane=new r.Plane,i.raycaster=new r.Raycaster,i.mouse=new r.Vector2,i.offset=new r.Vector3,i.intersection=new r.Vector3,i.objects=[],i.hovered=null,i.selected=null,i.isDown=!1,i.browser=(0,o.default)(),i.enable(),i}return function(t,e){if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&p(t,e)}(e,i.default),c(e,[{key:"enabled",get:function(){return this._enabled}}]),c(e,[{key:"enable",value:function(){this.enabled||(this.addListeners(),this._enabled=!0)}},{key:"disable",value:function(){this.enabled&&(this.removeListeners(),this._enabled=!1)}},{key:"addListeners",value:function(){this.handlerDown=this.onDown.bind(this),this.handlerMove=this.onMove.bind(this),this.handlerUp=this.onUp.bind(this),this.handlerLeave=this.onLeave.bind(this),this.browser.mobile?(this.el.addEventListener("touchstart",this.handlerDown,a.passiveEvent),this.el.addEventListener("touchmove",this.handlerMove,a.passiveEvent),this.el.addEventListener("touchend",this.handlerUp,a.passiveEvent)):(this.el.addEventListener("mousedown",this.handlerDown),this.el.addEventListener("mousemove",this.handlerMove),this.el.addEventListener("mouseup",this.handlerUp),this.el.addEventListener("mouseleave",this.handlerLeave))}},{key:"removeListeners",value:function(){this.browser.mobile?(this.el.removeEventListener("touchstart",this.handlerDown),this.el.removeEventListener("touchmove",this.handlerMove),this.el.removeEventListener("touchend",this.handlerUp)):(this.el.removeEventListener("mousedown",this.handlerDown),this.el.removeEventListener("mousemove",this.handlerMove),this.el.removeEventListener("mouseup",this.handlerUp),this.el.removeEventListener("mouseleave",this.handlerLeave))}},{key:"resize",value:function(t,e,n,i){t||e||n||i?this.rect={x:t,y:e,width:n,height:i}:this.el===window?this.rect={x:0,y:0,width:window.innerWidth,height:window.innerHeight}:this.rect=this.el.getBoundingClientRect()}},{key:"onMove",value:function(t){var e=t.touches?t.touches[0]:t,n=e.clientX,i=e.clientY;this.mouse.x=(n+this.rect.x)/this.rect.width*2-1,this.mouse.y=-(i+this.rect.y)/this.rect.height*2+1,this.raycaster.setFromCamera(this.mouse,this.camera);var r=this.raycaster.intersectObjects(this.objects);if(r.length>0){var o=r[0].object;this.intersectionData=r[0],this.plane.setFromNormalAndCoplanarPoint(this.camera.getWorldDirection(this.plane.normal),o.position),this.hovered!==o?(this.emit("interactive-out",{object:this.hovered}),this.emit("interactive-over",{object:o}),this.hovered=o):this.emit("interactive-move",{object:o,intersectionData:this.intersectionData})}else this.intersectionData=null,null!==this.hovered&&(this.emit("interactive-out",{object:this.hovered}),this.hovered=null)}},{key:"onDown",value:function(t){this.isDown=!0,this.onMove(t),this.emit("interactive-down",{object:this.hovered,previous:this.selected,intersectionData:this.intersectionData}),this.selected=this.hovered,this.selected&&this.raycaster.ray.intersectPlane(this.plane,this.intersection)&&this.offset.copy(this.intersection).sub(this.selected.position)}},{key:"onUp",value:function(t){this.isDown=!1,this.emit("interactive-up",{object:this.hovered})}},{key:"onLeave",value:function(t){this.onUp(t),this.emit("interactive-out",{object:this.hovered}),this.hovered=null}}]),e}();e.default=d},function(t,e){t.exports=function(t){if(!t.webpackPolyfill){var e=Object.create(t);e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),Object.defineProperty(e,"exports",{enumerable:!0}),e.webpackPolyfill=1}return e}},function(t,e,n){"use strict";(function(t){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,n(54),n(165);var i=o(n(198)),r=o(n(193));function o(t){return t&&t.__esModule?t:{default:t}}n(129);var a=function(){var e,n;function o(t){!function(t,e){if(!(t instanceof e))throw TypeError("Cannot call a class as a function")}(this,o),this.app=t,this.samples=[{image:"storage/images/sample-01.png",caption:"Serpiente emplumada del Templo de Quetzalc\xf3atl en Teotihuac\xe1n"},{image:"storage/images/sample-02.png",caption:"Sor Juana In\xe9s de la Cruz, d\xe9cima musa del M\xe9xico novohispano"},{image:"storage/images/sample-03.png",caption:"Hombre Sol, representante del conocimiento, la energ\xeda y la fuerza"},{image:"storage/images/sample-04.png",caption:"Mariposa monarca residente de la Bi\xf3sfera Santuario de Valle de Bravo"},{image:"storage/images/sample-05.png",caption:"Nezahualc\xf3yotl, guerrero y poeta tlatoani de la ciudad de Texcoco"},{image:"storage/images/sample-06.png",caption:"Quiosco municipal del centro de Atlacomulco de Fabela"},{image:"storage/images/sample-07.png",caption:"Xochiqu\xe9tzal, diosa de las flores y el amor en la mitolog\xeda mexica"},{image:"storage/images/sample-08.png",caption:"Acueducto de Tembleque, ingenier\xeda hidr\xe1ulica virreinal"},{image:"storage/images/sample-09.png",caption:"Popocat\xe9petl e Iztaccihuatl, volcanes enigm\xe1ticos de M\xe9xico"},{image:"storage/images/sample-10.png",caption:"Torres de Sat\xe9lite: prismas triangulares emblem\xe1ticos de Naucalpan de Ju\xe1rez"}],this.initThree(),this.initParticles(),this.initControls();var e=~~(Math.random()*this.samples.length);this.goto(e)}return e=o,n=[{key:"initThree",value:function(){this.scene=new t.Scene,this.camera=new t.PerspectiveCamera(50,window.innerWidth/window.innerHeight,1,1e4),this.camera.position.z=300,this.renderer=new t.WebGLRenderer({antialias:!1,alpha:!0}),this.clock=new t.Clock(!0)}},{key:"initControls",value:function(){this.interactive=new i.default(this.camera,this.renderer.domElement)}},{key:"initParticles",value:function(){this.particles=new r.default(this),this.scene.add(this.particles.container)}},{key:"update",value:function(){var t=this.clock.getDelta();this.particles&&this.particles.update(t)}},{key:"draw",value:function(){this.renderer.render(this.scene,this.camera)}},{key:"goto",value:function(t){var e=this;null==this.currSample?this.particles.init(this.samples[t]):this.particles.hide(!0).then(function(){e.particles.init(e.samples[t])}),this.currSample=t}},{key:"next",value:function(){this.currSample<this.samples.length-1?this.goto(this.currSample+1):this.goto(0)}},{key:"resize",value:function(){this.renderer&&(this.camera.aspect=document.querySelector("#particle-container").offsetWidth/document.querySelector("#particle-container").offsetHeight,this.camera.updateProjectionMatrix(),this.fovHeight=2*Math.tan(this.camera.fov*Math.PI/180/2)*this.camera.position.z,this.renderer.setSize(document.querySelector("#particle-container").offsetWidth,document.querySelector("#particle-container").offsetHeight),this.interactive&&this.interactive.resize(),this.particles&&this.particles.resize())}}],function(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}(e.prototype,n),o}();e.default=a}).call(this,n(54))},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var i=o(n(200)),r=o(n(188));function o(t){return t&&t.__esModule?t:{default:t}}var a=function(){var t,e;function n(){!function(t,e){if(!(t instanceof e))throw TypeError("Cannot call a class as a function")}(this,n)}return t=n,e=[{key:"init",value:function(){this.initWebGL(),this.initGUI(),this.addListeners(),this.animate(),this.resize()}},{key:"initWebGL",value:function(){this.webgl=new i.default(this),document.querySelector("#particle-container").appendChild(this.webgl.renderer.domElement)}},{key:"initGUI",value:function(){this.gui=new r.default(this)}},{key:"addListeners",value:function(){this.handlerAnimate=this.animate.bind(this),window.addEventListener("resize",this.resize.bind(this)),window.addEventListener("keyup",this.keyup.bind(this)),this.webgl.renderer.domElement.addEventListener("click",this.click.bind(this))}},{key:"animate",value:function(){this.update(),this.draw(),this.raf=requestAnimationFrame(this.handlerAnimate)}},{key:"update",value:function(){this.gui.stats&&this.gui.stats.begin(),this.webgl&&this.webgl.update(),this.gui&&this.gui.update()}},{key:"draw",value:function(){this.webgl&&this.webgl.draw(),this.gui.stats&&this.gui.stats.end()}},{key:"resize",value:function(){this.webgl&&this.webgl.resize()}},{key:"keyup",value:function(t){71==t.keyCode&&this.gui&&this.gui.toggle()}},{key:"click",value:function(t){this.webgl.next()}}],function(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}(t.prototype,e),n}();e.default=a},function(t,e,n){var i,r,o,a;t.exports=(r=[],(a=((o=document).documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(o.readyState))||o.addEventListener("DOMContentLoaded",i=function(){for(o.removeEventListener("DOMContentLoaded",i),a=1;i=r.shift();)i()}),function(t){a?setTimeout(t,0):r.push(t)})},function(t,e,n){"use strict";var i=o(n(202)),r=o(n(201));function o(t){return t&&t.__esModule?t:{default:t}}(0,i.default)(function(){window.app=new r.default,window.app.init()})},function(t,e){!function(e){"use strict";var n,i=Object.prototype,r=i.hasOwnProperty,o="function"==typeof Symbol?Symbol:{},a=o.iterator||"@@iterator",s=o.asyncIterator||"@@asyncIterator",u=o.toStringTag||"@@toStringTag",l="object"==typeof t,h=e.regeneratorRuntime;if(h)l&&(t.exports=h);else{(h=e.regeneratorRuntime=l?t.exports:{}).wrap=_;var c="suspendedStart",p="suspendedYield",d="executing",f="completed",m={},g={};g[a]=function(){return this};var v=Object.getPrototypeOf,$=v&&v(v(M([])));$&&$!==i&&r.call($,a)&&(g=$);var y=A.prototype=b.prototype=Object.create(g);w.prototype=y.constructor=A,A.constructor=w,A[u]=w.displayName="GeneratorFunction",h.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===w||"GeneratorFunction"===(e.displayName||e.name))},h.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,A):(t.__proto__=A,u in t||(t[u]="GeneratorFunction")),t.prototype=Object.create(y),t},h.awrap=function(t){return{__await:t}},T(S.prototype),S.prototype[s]=function(){return this},h.AsyncIterator=S,h.async=function(t,e,n,i){var r=new S(_(t,e,n,i));return h.isGeneratorFunction(e)?r:r.next().then(function(t){return t.done?t.value:r.next()})},T(y),y[u]="Generator",y[a]=function(){return this},y.toString=function(){return"[object Generator]"},h.keys=function(t){var e=[];for(var n in t)e.push(n);return e.reverse(),function n(){for(;e.length;){var i=e.pop();if(i in t)return n.value=i,n.done=!1,n}return n.done=!0,n}},h.values=M,L.prototype={constructor:L,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=n,this.done=!1,this.delegate=null,this.method="next",this.arg=n,this.tryEntries.forEach(C),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=n)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function i(i,r){return s.type="throw",s.arg=t,e.next=i,r&&(e.method="next",e.arg=n),!!r}for(var o=this.tryEntries.length-1;o>=0;--o){var a=this.tryEntries[o],s=a.completion;if("root"===a.tryLoc)return i("end");if(a.tryLoc<=this.prev){var u=r.call(a,"catchLoc"),l=r.call(a,"finallyLoc");if(u&&l){if(this.prev<a.catchLoc)return i(a.catchLoc,!0);if(this.prev<a.finallyLoc)return i(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return i(a.catchLoc,!0)}else{if(!l)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return i(a.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var i=this.tryEntries[n];if(i.tryLoc<=this.prev&&r.call(i,"finallyLoc")&&this.prev<i.finallyLoc){var o=i;break}}o&&("break"===t||"continue"===t)&&o.tryLoc<=e&&e<=o.finallyLoc&&(o=null);var a=o?o.completion:{};return a.type=t,a.arg=e,o?(this.method="next",this.next=o.finallyLoc,m):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),m},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.finallyLoc===t)return this.complete(n.completion,n.afterLoc),C(n),m}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var n=this.tryEntries[e];if(n.tryLoc===t){var i=n.completion;if("throw"===i.type){var r=i.arg;C(n)}return r}}throw Error("illegal catch attempt")},delegateYield:function(t,e,i){return this.delegate={iterator:M(t),resultName:e,nextLoc:i},"next"===this.method&&(this.arg=n),m}}}function _(t,e,n,i){var r,o,a,s,u=Object.create((e&&e.prototype instanceof b?e:b).prototype),l=new L(i||[]);return u._invoke=(r=t,o=n,a=l,s=c,function(t,e){if(s===d)throw Error("Generator is already running");if(s===f){if("throw"===t)throw e;return R()}for(a.method=t,a.arg=e;;){var n=a.delegate;if(n){var i=E(n,a);if(i){if(i===m)continue;return i}}if("next"===a.method)a.sent=a._sent=a.arg;else if("throw"===a.method){if(s===c)throw s=f,a.arg;a.dispatchException(a.arg)}else"return"===a.method&&a.abrupt("return",a.arg);s=d;var u=x(r,o,a);if("normal"===u.type){if(s=a.done?f:p,u.arg===m)continue;return{value:u.arg,done:a.done}}"throw"===u.type&&(s=f,a.method="throw",a.arg=u.arg)}}),u}function x(t,e,n){try{return{type:"normal",arg:t.call(e,n)}}catch(i){return{type:"throw",arg:i}}}function b(){}function w(){}function A(){}function T(t){["next","throw","return"].forEach(function(e){t[e]=function(t){return this._invoke(e,t)}})}function S(t){var e;this._invoke=function(n,i){function o(){return new Promise(function(e,o){!function e(n,i,o,a){var s=x(t[n],t,i);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==typeof l&&r.call(l,"__await")?Promise.resolve(l.__await).then(function(t){e("next",t,o,a)},function(t){e("throw",t,o,a)}):Promise.resolve(l).then(function(t){u.value=t,o(u)},a)}a(s.arg)}(n,i,e,o)})}return e=e?e.then(o,o):o()}}function E(t,e){var i=t.iterator[e.method];if(i===n){if(e.delegate=null,"throw"===e.method){if(t.iterator.return&&(e.method="return",e.arg=n,E(t,e),"throw"===e.method))return m;e.method="throw",e.arg=TypeError("The iterator does not provide a 'throw' method")}return m}var r=x(i,t.iterator,e.arg);if("throw"===r.type)return e.method="throw",e.arg=r.arg,e.delegate=null,m;var o=r.arg;return o?o.done?(e[t.resultName]=o.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=n),e.delegate=null,m):o:(e.method="throw",e.arg=TypeError("iterator result is not an object"),e.delegate=null,m)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function C(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function L(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function M(t){if(t){var e=t[a];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var i=-1,o=function e(){for(;++i<t.length;)if(r.call(t,i))return e.value=t[i],e.done=!1,e;return e.value=n,e.done=!0,e};return o.next=o}}return{next:R}}function R(){return{value:n,done:!0}}}(function(){return this}()||Function("return this")())},function(t,e,n){for(var i=n(93),r=n(50),o=n(19),a=n(3),s=n(20),u=n(56),l=n(6),h=l("iterator"),c=l("toStringTag"),p=u.Array,d={CSSRuleList:!0,CSSStyleDeclaration:!1,CSSValueList:!1,ClientRectList:!1,DOMRectList:!1,DOMStringList:!1,DOMTokenList:!0,DataTransferItemList:!1,FileList:!1,HTMLAllCollection:!1,HTMLCollection:!1,HTMLFormElement:!1,HTMLSelectElement:!1,MediaList:!0,MimeTypeArray:!1,NamedNodeMap:!1,NodeList:!0,PaintRequestList:!1,Plugin:!1,PluginArray:!1,SVGLengthList:!1,SVGNumberList:!1,SVGPathSegList:!1,SVGPointList:!1,SVGStringList:!1,SVGTransformList:!1,SourceBufferList:!1,StyleSheetList:!0,TextTrackCueList:!1,TextTrackList:!1,TouchList:!1},f=r(d),m=0;m<f.length;m++){var g,v=f[m],$=d[v],y=a[v],_=y&&y.prototype;if(_&&(_[h]||s(_,h,p),_[c]||s(_,c,v),u[v]=p,$))for(g in i)_[g]||o(_,g,i[g],!0)}},function(t,e,n){var i=n(1),r=n(92);i(i.G+i.B,{setImmediate:r.set,clearImmediate:r.clear})},function(t,e,n){var i=n(3),r=n(1),o=n(73),a=[].slice,s=/MSIE .\./.test(o),u=function(t){return function(e,n){var i=arguments.length>2,r=!!i&&a.call(arguments,2);return t(i?function(){("function"==typeof e?e:Function(e)).apply(this,r)}:e,n)}};r(r.G+r.B+r.F*s,{setTimeout:u(i.setTimeout),setInterval:u(i.setInterval)})},function(t,e,n){"use strict";var i=n(1),r=n(3),o=n(35),a=n(91)(),s=n(6)("observable"),u=n(17),l=n(2),h=n(45),c=n(43),p=n(20),d=n(44),f=d.RETURN,m=function(t){return null==t?void 0:u(t)},g=function(t){var e=t._c;e&&(t._c=void 0,e())},v=function(t){return void 0===t._o},$=function(t){v(t)||(t._o=void 0,g(t))},y=function(t,e){l(t),this._c=void 0,this._o=t,t=new _(this);try{var n=e(t),i=n;null!=n&&("function"==typeof n.unsubscribe?n=function(){i.unsubscribe()}:u(n),this._c=n)}catch(r){return void t.error(r)}v(this)&&g(this)};y.prototype=c({},{unsubscribe:function(){$(this)}});var _=function(t){this._s=t};_.prototype=c({},{next:function(t){var e=this._s;if(!v(e)){var n=e._o;try{var i=m(n.next);if(i)return i.call(n,t)}catch(r){try{$(e)}finally{throw r}}}},error:function(t){var e=this._s;if(v(e))throw t;var n=e._o;e._o=void 0;try{var i=m(n.error);if(!i)throw t;t=i.call(n,t)}catch(r){try{g(e)}finally{throw r}}return g(e),t},complete:function(t){var e=this._s;if(!v(e)){var n=e._o;e._o=void 0;try{var i=m(n.complete);t=i?i.call(n,t):void 0}catch(r){try{g(e)}finally{throw r}}return g(e),t}}});var x=function(t){h(this,x,"Observable","_f")._f=u(t)};c(x.prototype,{subscribe:function(t){return new y(t,this._f)},forEach:function(t){var e=this;return new(o.Promise||r.Promise)(function(n,i){u(t);var r=e.subscribe({next:function(e){try{return t(e)}catch(n){i(n),r.unsubscribe()}},error:i,complete:n})})}}),c(x,{from:function(t){var e="function"==typeof this?this:x,n=m(l(t)[s]);if(n){var i=l(n.call(t));return i.constructor===e?i:new e(function(t){return i.subscribe(t)})}return new e(function(e){var n=!1;return a(function(){if(!n){try{if(d(t,!1,function(t){if(e.next(t),n)return f})===f)return}catch(i){if(n)throw i;return void e.error(i)}e.complete()}}),function(){n=!0}})},of:function(){for(var t=0,e=arguments.length,n=Array(e);t<e;)n[t]=arguments[t++];return new("function"==typeof this?this:x)(function(t){var e=!1;return a(function(){if(!e){for(var i=0;i<n.length;++i)if(t.next(n[i]),e)return;t.complete()}}),function(){e=!0}})}}),p(x.prototype,s,function(){return this}),i(i.G,{Observable:x}),n(46)("Observable")},function(t,e,n){var i=n(1),r=n(91)(),o=n(3).process,a="process"==n(27)(o);i(i.G,{asap:function(t){var e=a&&o.domain;r(e?e.bind(t):t)}})},function(t,e,n){var i=n(37),r=n(2),o=n(17),a=i.key,s=i.set;i.exp({metadata:function(t,e){return function(n,i){s(t,e,(void 0!==i?r:o)(n),a(i))}}})},function(t,e,n){var i=n(37),r=n(2),o=i.has,a=i.key;i.exp({hasOwnMetadata:function(t,e){return o(t,r(e),arguments.length<3?void 0:a(arguments[2]))}})},function(t,e,n){var i=n(37),r=n(2),o=n(21),a=i.has,s=i.key,u=function(t,e,n){if(a(t,e,n))return!0;var i=o(e);return null!==i&&u(t,i,n)};i.exp({hasMetadata:function(t,e){return u(t,r(e),arguments.length<3?void 0:s(arguments[2]))}})},function(t,e,n){var i=n(37),r=n(2),o=i.keys,a=i.key;i.exp({getOwnMetadataKeys:function(t){return o(r(t),arguments.length<2?void 0:a(arguments[1]))}})},function(t,e,n){var i=n(37),r=n(2),o=i.get,a=i.key;i.exp({getOwnMetadata:function(t,e){return o(t,r(e),arguments.length<3?void 0:a(arguments[2]))}})},function(t,e,n){var i=n(140),r=n(131),o=n(37),a=n(2),s=n(21),u=o.keys,l=o.key,h=function(t,e){var n=u(t,e),o=s(t);if(null===o)return n;var a=h(o,e);return a.length?n.length?r(new i(n.concat(a))):a:n};o.exp({getMetadataKeys:function(t){return h(a(t),arguments.length<2?void 0:l(arguments[1]))}})},function(t,e,n){var i=n(37),r=n(2),o=n(21),a=i.has,s=i.get,u=i.key,l=function(t,e,n){if(a(t,e,n))return s(t,e,n);var i=o(e);return null!==i?l(t,i,n):void 0};i.exp({getMetadata:function(t,e){return l(t,r(e),arguments.length<3?void 0:u(arguments[2]))}})},function(t,e,n){var i=n(37),r=n(2),o=i.key,a=i.map,s=i.store;i.exp({deleteMetadata:function(t,e){var n=arguments.length<3?void 0:o(arguments[2]),i=a(r(e),n,!1);if(void 0===i||!i.delete(t))return!1;if(i.size)return!0;var u=s.get(e);return u.delete(n),!!u.size||s.delete(e)}})},function(t,e,n){var i=n(37),r=n(2),o=i.key,a=i.set;i.exp({defineMetadata:function(t,e,n,i){a(t,e,r(n),o(i))}})},function(t,e,n){"use strict";var i=n(1),r=n(90),o=n(144);i(i.S,"Promise",{try:function(t){var e=r.f(this),n=o(t);return(n.e?e.reject:e.resolve)(n.v),e.promise}})},function(t,e,n){"use strict";var i=n(1),r=n(35),o=n(3),a=n(74),s=n(143);i(i.P+i.R,"Promise",{finally:function(t){var e=a(this,r.Promise||o.Promise),n="function"==typeof t;return this.then(n?function(n){return s(e,t()).then(function(){return n})}:t,n?function(n){return s(e,t()).then(function(){throw n})}:t)}})},function(t,e,n){var i=n(1);i(i.S,"Math",{signbit:function(t){return(t=+t)!=t?t:0==t?1/t==1/0:t>0}})},function(t,e,n){var i=n(1);i(i.S,"Math",{umulh:function(t,e){var n=+t,i=+e,r=65535&n,o=65535&i,a=n>>>16,s=i>>>16,u=(a*o>>>0)+(r*o>>>16);return a*s+(u>>>16)+((r*s>>>0)+(65535&u)>>>16)}})},function(t,e,n){var i=n(1);i(i.S,"Math",{scale:n(130)})},function(t,e,n){var i=n(1),r=Math.PI/180;i(i.S,"Math",{radians:function(t){return t*r}})},function(t,e,n){var i=n(1);i(i.S,"Math",{RAD_PER_DEG:180/Math.PI})},function(t,e,n){var i=n(1);i(i.S,"Math",{imulh:function(t,e){var n=+t,i=+e,r=65535&n,o=65535&i,a=n>>16,s=i>>16,u=(a*o>>>0)+(r*o>>>16);return a*s+(u>>16)+((r*s>>>0)+(65535&u)>>16)}})},function(t,e,n){var i=n(1);i(i.S,"Math",{isubh:function(t,e,n,i){var r=t>>>0,o=n>>>0;return(e>>>0)-(i>>>0)-((~r&o|~(r^o)&r-o>>>0)>>>31)|0}})},function(t,e,n){var i=n(1);i(i.S,"Math",{iaddh:function(t,e,n,i){var r=t>>>0,o=n>>>0;return(e>>>0)+(i>>>0)+((r&o|(r|o)&~(r+o>>>0))>>>31)|0}})},function(t,e,n){var i=n(1),r=n(130),o=n(150);i(i.S,"Math",{fscale:function(t,e,n,i,a){return o(r(t,e,n,i,a))}})},function(t,e,n){var i=n(1),r=180/Math.PI;i(i.S,"Math",{degrees:function(t){return t*r}})},function(t,e,n){var i=n(1);i(i.S,"Math",{DEG_PER_RAD:Math.PI/180})},function(t,e,n){var i=n(1);i(i.S,"Math",{clamp:function(t,e,n){return Math.min(n,Math.max(e,t))}})},function(t,e,n){var i=n(1),r=n(27);i(i.S,"Error",{isError:function(t){return"Error"===r(t)}})},function(t,e,n){var i=n(1);i(i.S,"System",{global:n(3)})},function(t,e,n){var i=n(1);i(i.G,{global:n(3)})},function(t,e,n){n(68)("WeakSet")},function(t,e,n){n(68)("WeakMap")},function(t,e,n){n(68)("Set")},function(t,e,n){n(68)("Map")},function(t,e,n){n(69)("WeakSet")},function(t,e,n){n(69)("WeakMap")},function(t,e,n){n(69)("Set")},function(t,e,n){n(69)("Map")},function(t,e,n){var i=n(1);i(i.P+i.R,"Set",{toJSON:n(132)("Set")})},function(t,e,n){var i=n(1);i(i.P+i.R,"Map",{toJSON:n(132)("Map")})},function(t,e,n){"use strict";var i=n(1),r=n(13),o=n(34),a=n(21),s=n(22).f;n(11)&&i(i.P+n(70),"Object",{__lookupSetter__:function(t){var e,n=r(this),i=o(t,!0);do if(e=s(n,i))return e.set;while(n=a(n))}})},function(t,e,n){"use strict";var i=n(1),r=n(13),o=n(34),a=n(21),s=n(22).f;n(11)&&i(i.P+n(70),"Object",{__lookupGetter__:function(t){var e,n=r(this),i=o(t,!0);do if(e=s(n,i))return e.get;while(n=a(n))}})},function(t,e,n){"use strict";var i=n(1),r=n(13),o=n(17),a=n(10);n(11)&&i(i.P+n(70),"Object",{__defineSetter__:function(t,e){a.f(r(this),t,{set:o(e),enumerable:!0,configurable:!0})}})},function(t,e,n){"use strict";var i=n(1),r=n(13),o=n(17),a=n(10);n(11)&&i(i.P+n(70),"Object",{__defineGetter__:function(t,e){a.f(r(this),t,{get:o(e),enumerable:!0,configurable:!0})}})},function(t,e,n){var i=n(1),r=n(133)(!0);i(i.S,"Object",{entries:function(t){return r(t)}})},function(t,e,n){var i=n(1),r=n(133)(!1);i(i.S,"Object",{values:function(t){return r(t)}})},function(t,e,n){var i=n(1),r=n(136),o=n(23),a=n(22),s=n(97);i(i.S,"Object",{getOwnPropertyDescriptors:function(t){for(var e,n,i=o(t),u=a.f,l=r(i),h={},c=0;l.length>c;)void 0!==(n=u(i,e=l[c++]))&&s(h,e,n);return h}})},function(t,e,n){n(113)("observable")},function(t,e,n){n(113)("asyncIterator")},function(t,e,n){"use strict";var i=n(1),r=n(33),o=n(9),a=n(78),s=n(76),u=RegExp.prototype,l=function(t,e){this._r=t,this._s=e};n(101)(l,"RegExp String",function(){var t=this._r.exec(this._s);return{value:t,done:null===t}}),i(i.P,"String",{matchAll:function(t){if(r(this),!a(t))throw TypeError(t+" is not a regexp!");var e=String(this),n="flags"in u?String(t.flags):s.call(t),i=RegExp(t.source,~n.indexOf("g")?n:"g"+n);return i.lastIndex=o(t.lastIndex),new l(i,e)}})},function(t,e,n){"use strict";n(57)("trimRight",function(t){return function(){return t(this,2)}},"trimEnd")},function(t,e,n){"use strict";n(57)("trimLeft",function(t){return function(){return t(this,1)}},"trimStart")},function(t,e,n){"use strict";var i=n(1),r=n(134),o=n(73);i(i.P+i.F*/Version\/10\.\d+(\.\d+)? Safari\//.test(o),"String",{padEnd:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0,!1)}})},function(t,e,n){"use strict";var i=n(1),r=n(134),o=n(73);i(i.P+i.F*/Version\/10\.\d+(\.\d+)? Safari\//.test(o),"String",{padStart:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0,!0)}})},function(t,e,n){"use strict";var i=n(1),r=n(103)(!0);i(i.P,"String",{at:function(t){return r(this,t)}})},function(t,e,n){"use strict";var i=n(1),r=n(135),o=n(13),a=n(9),s=n(32),u=n(95);i(i.P,"Array",{flatten:function(){var t=arguments[0],e=o(this),n=a(e.length),i=u(e,0);return r(i,e,e,n,0,void 0===t?1:s(t)),i}}),n(39)("flatten")},function(t,e,n){"use strict";var i=n(1),r=n(135),o=n(13),a=n(9),s=n(17),u=n(95);i(i.P,"Array",{flatMap:function(t){var e,n,i=o(this);return s(t),e=a(i.length),n=u(i,0),r(n,i,i,e,0,1,t,arguments[1]),n}}),n(39)("flatMap")},function(t,e,n){"use strict";var i=n(1),r=n(81)(!0);i(i.P,"Array",{includes:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),n(39)("includes")},function(t,e,n){var i=n(1),r=n(109);r&&i(i.S,"Reflect",{setPrototypeOf:function(t,e){r.check(t,e);try{return r.set(t,e),!0}catch(n){return!1}}})},function(t,e,n){var i=n(10),r=n(22),o=n(21),a=n(24),s=n(1),u=n(52),l=n(2),h=n(5);s(s.S,"Reflect",{set:function t(e,n,s){var c,p,d=arguments.length<4?e:arguments[3],f=r.f(l(e),n);if(!f){if(h(p=o(e)))return t(p,n,s,d);f=u(0)}if(a(f,"value")){if(!1===f.writable||!h(d))return!1;if(c=r.f(d,n)){if(c.get||c.set||!1===c.writable)return!1;c.value=s,i.f(d,n,c)}else i.f(d,n,u(0,s));return!0}return void 0!==f.set&&(f.set.call(d,s),!0)}})},function(t,e,n){var i=n(1),r=n(2),o=Object.preventExtensions;i(i.S,"Reflect",{preventExtensions:function(t){r(t);try{return o&&o(t),!0}catch(e){return!1}}})},function(t,e,n){var i=n(1);i(i.S,"Reflect",{ownKeys:n(136)})},function(t,e,n){var i=n(1),r=n(2),o=Object.isExtensible;i(i.S,"Reflect",{isExtensible:function(t){return r(t),!o||o(t)}})},function(t,e,n){var i=n(1);i(i.S,"Reflect",{has:function(t,e){return e in t}})},function(t,e,n){var i=n(1),r=n(21),o=n(2);i(i.S,"Reflect",{getPrototypeOf:function(t){return r(o(t))}})},function(t,e,n){var i=n(22),r=n(1),o=n(2);r(r.S,"Reflect",{getOwnPropertyDescriptor:function(t,e){return i.f(o(t),e)}})},function(t,e,n){var i=n(22),r=n(21),o=n(24),a=n(1),s=n(5),u=n(2);a(a.S,"Reflect",{get:function t(e,n){var a,l,h=arguments.length<3?e:arguments[2];return u(e)===h?e[n]:(a=i.f(e,n))?o(a,"value")?a.value:void 0!==a.get?a.get.call(h):void 0:s(l=r(e))?t(l,n,h):void 0}})},function(t,e,n){"use strict";var i=n(1),r=n(2),o=function(t){this._t=r(t),this._i=0;var e,n=this._k=[];for(e in t)n.push(e)};n(101)(o,"Object",function(){var t,e=this._k;do if(this._i>=e.length)return{value:void 0,done:!0};while(!((t=e[this._i++])in this._t));return{value:t,done:!1}}),i(i.S,"Reflect",{enumerate:function(t){return new o(t)}})},function(t,e,n){var i=n(1),r=n(22).f,o=n(2);i(i.S,"Reflect",{deleteProperty:function(t,e){var n=r(o(t),e);return!(n&&!n.configurable)&&delete t[e]}})},function(t,e,n){var i=n(10),r=n(1),o=n(2),a=n(34);r(r.S+r.F*n(4)(function(){Reflect.defineProperty(i.f({},1,{value:1}),1,{value:2})}),"Reflect",{defineProperty:function(t,e,n){o(t),e=a(e,!0),o(n);try{return i.f(t,e,n),!0}catch(r){return!1}}})},function(t,e,n){var i=n(1),r=n(48),o=n(17),a=n(2),s=n(5),u=n(4),l=n(157),h=(n(3).Reflect||{}).construct,c=u(function(){function t(){}return!(h(function(){},[],t) instanceof t)}),p=!u(function(){h(function(){})});i(i.S+i.F*(c||p),"Reflect",{construct:function(t,e){o(t),a(e);var n=arguments.length<3?t:o(arguments[2]);if(p&&!c)return h(t,e,n);if(t==n){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var i=[null];return i.push.apply(i,e),new(l.apply(t,i))}var u=n.prototype,d=r(s(u)?u:Object.prototype),f=Function.apply.call(t,d,e);return s(f)?f:d}})},function(t,e,n){var i=n(1),r=n(17),o=n(2),a=(n(3).Reflect||{}).apply,s=Function.apply;i(i.S+!n(4)(function(){a(function(){})})*i.F,"Reflect",{apply:function(t,e,n){var i=r(t),u=o(n);return a?a(i,e,u):s.call(i,e,u)}})},function(t,e,n){n(38)("Float64",8,function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(38)("Float32",4,function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(38)("Uint32",4,function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(38)("Int32",4,function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(38)("Uint16",2,function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(38)("Int16",2,function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(38)("Uint8",1,function(t){return function(e,n,i){return t(this,e,n,i)}},!0)},function(t,e,n){n(38)("Uint8",1,function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){n(38)("Int8",1,function(t){return function(e,n,i){return t(this,e,n,i)}})},function(t,e,n){var i=n(1);i(i.G+i.W+!n(71).ABV*i.F,{DataView:n(89).DataView})},function(t,e,n){"use strict";var i=n(1),r=n(71),o=n(89),a=n(2),s=n(49),u=n(9),l=n(5),h=n(3).ArrayBuffer,c=n(74),p=o.ArrayBuffer,d=o.DataView,f=r.ABV&&h.isView,m=p.prototype.slice,g=r.VIEW;i(i.G+i.W+i.F*(h!==p),{ArrayBuffer:p}),i(i.S+!r.CONSTR*i.F,"ArrayBuffer",{isView:function(t){return f&&f(t)||l(t)&&g in t}}),i(i.P+i.U+i.F*n(4)(function(){return!new p(2).slice(1,void 0).byteLength}),"ArrayBuffer",{slice:function(t,e){if(void 0!==m&&void 0===e)return m.call(a(this),t);for(var n=a(this).byteLength,i=s(t,n),r=s(void 0===e?n:e,n),o=new(c(this,p))(u(r-i)),l=new d(this),h=new d(o),f=0;i<r;)h.setUint8(f++,l.getUint8(i++));return o}}),n(46)("ArrayBuffer")},function(t,e,n){"use strict";var i=n(138),r=n(55);n(72)("WeakSet",function(t){return function(){return t(this,arguments.length>0?arguments[0]:void 0)}},{add:function(t){return i.def(r(this,"WeakSet"),t,!0)}},i,!1,!0)},function(t,e,n){"use strict";var i,r,o,a,s=n(40),u=n(3),l=n(28),h=n(61),c=n(1),p=n(5),d=n(17),f=n(45),m=n(44),g=n(74),v=n(92).set,$=n(91)(),y=n(90),_=n(144),x=n(73),b=n(143),w=u.TypeError,A=u.process,T=A&&A.versions,S=T&&T.v8||"",E=u.Promise,P="process"==h(A),C=function(){},L=r=y.f,M=!!function(){try{var t=E.resolve(1),e=(t.constructor={})[n(6)("species")]=function(t){t(C,C)};return(P||"function"==typeof PromiseRejectionEvent)&&t.then(C) instanceof e&&0!==S.indexOf("6.6")&&-1===x.indexOf("Chrome/66")}catch(i){}}(),R=function(t){var e;return!(!p(t)||"function"!=typeof(e=t.then))&&e},I=function(t,e){if(!t._n){t._n=!0;var n=t._c;$(function(){for(var i=t._v,r=1==t._s,o=0,a=function(e){var n,o,a,s=r?e.ok:e.fail,u=e.resolve,l=e.reject,h=e.domain;try{s?(r||(2==t._h&&B(t),t._h=1),!0===s?n=i:(h&&h.enter(),n=s(i),h&&(h.exit(),a=!0)),n===e.promise?l(w("Promise-chain cycle")):(o=R(n))?o.call(n,u,l):u(n)):l(i)}catch(c){h&&!a&&h.exit(),l(c)}};n.length>o;)a(n[o++]);t._c=[],t._n=!1,e&&!t._h&&D(t)})}},D=function(t){v.call(u,function(){var e,n,i,r=t._v,o=N(t);if(o&&(e=_(function(){P?A.emit("unhandledRejection",r,t):(n=u.onunhandledrejection)?n({promise:t,reason:r}):(i=u.console)&&i.error&&i.error("Unhandled promise rejection",r)}),t._h=P||N(t)?2:1),t._a=void 0,o&&e.e)throw e.v})},N=function(t){return 1!==t._h&&0===(t._a||t._c).length},B=function(t){v.call(u,function(){var e;P?A.emit("rejectionHandled",t):(e=u.onrejectionhandled)&&e({promise:t,reason:t._v})})},O=function(t){var e=this;e._d||(e._d=!0,(e=e._w||e)._v=t,e._s=2,e._a||(e._a=e._c.slice()),I(e,!0))},G=function(t){var e,n=this;if(!n._d){n._d=!0,n=n._w||n;try{if(n===t)throw w("Promise can't be resolved itself");(e=R(t))?$(function(){var i={_w:n,_d:!1};try{e.call(t,l(G,i,1),l(O,i,1))}catch(r){O.call(i,r)}}):(n._v=t,n._s=1,I(n,!1))}catch(i){O.call({_w:n,_d:!1},i)}}};M||(E=function(t){f(this,E,"Promise","_h"),d(t),i.call(this);try{t(l(G,this,1),l(O,this,1))}catch(e){O.call(this,e)}},(i=function(t){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=n(43)(E.prototype,{then:function(t,e){var n=L(g(this,E));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=P?A.domain:void 0,this._c.push(n),this._a&&this._a.push(n),this._s&&I(this,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),o=function(){var t=new i;this.promise=t,this.resolve=l(G,t,1),this.reject=l(O,t,1)},y.f=L=function(t){return t===E||t===a?new o(t):r(t)}),c(c.G+c.W+!M*c.F,{Promise:E}),n(58)(E,"Promise"),n(46)("Promise"),a=n(35).Promise,c(c.S+!M*c.F,"Promise",{reject:function(t){var e=L(this);return(0,e.reject)(t),e.promise}}),c(c.S+c.F*(s||!M),"Promise",{resolve:function(t){return b(s&&this===a?E:this,t)}}),c(c.S+!(M&&n(77)(function(t){E.all(t).catch(C)}))*c.F,"Promise",{all:function(t){var e=this,n=L(e),i=n.resolve,r=n.reject,o=_(function(){var n=[],o=0,a=1;m(t,!1,function(t){var s=o++,u=!1;n.push(void 0),a++,e.resolve(t).then(function(t){u||(u=!0,n[s]=t,--a||i(n))},r)}),--a||i(n)});return o.e&&r(o.v),n.promise},race:function(t){var e=this,n=L(e),i=n.reject,r=_(function(){m(t,!1,function(t){e.resolve(t).then(n.resolve,i)})});return r.e&&i(r.v),n.promise}})},function(t,e,n){n(75)("split",2,function(t,e,i){"use strict";var r=n(78),o=i,a=[].push;if("c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length){var s=void 0===/()??/.exec("")[1];i=function(t,e){var n=String(this);if(void 0===t&&0===e)return[];if(!r(t))return o.call(n,t,e);var i,u,l,h,c,p=[],d=(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":""),f=0,m=void 0===e?4294967295:e>>>0,g=RegExp(t.source,d+"g");for(s||(i=RegExp("^"+g.source+"$(?!\\s)",d));(u=g.exec(n))&&!((l=u.index+u[0].length)>f&&(p.push(n.slice(f,u.index)),!s&&u.length>1&&u[0].replace(i,function(){for(c=1;c<arguments.length-2;c++)void 0===arguments[c]&&(u[c]=void 0)}),u.length>1&&u.index<n.length&&a.apply(p,u.slice(1)),h=u[0].length,f=l,p.length>=m));)g.lastIndex===u.index&&g.lastIndex++;return f===n.length?!h&&g.test("")||p.push(""):p.push(n.slice(f)),p.length>m?p.slice(0,m):p}}else"0".split(void 0,0).length&&(i=function(t,e){return void 0===t&&0===e?[]:o.call(this,t,e)});return[function(n,r){var o=t(this),a=null==n?void 0:n[e];return void 0!==a?a.call(n,o,r):i.call(String(o),n,r)},i]})},function(t,e,n){n(75)("search",1,function(t,e,n){return[function(n){"use strict";var i=t(this),r=null==n?void 0:n[e];return void 0!==r?r.call(n,i):RegExp(n)[e](String(i))},n]})},function(t,e,n){n(75)("replace",2,function(t,e,n){return[function(i,r){"use strict";var o=t(this),a=null==i?void 0:i[e];return void 0!==a?a.call(i,o,r):n.call(String(o),i,r)},n]})},function(t,e,n){n(75)("match",1,function(t,e,n){return[function(n){"use strict";var i=t(this),r=null==n?void 0:n[e];return void 0!==r?r.call(n,i):RegExp(n)[e](String(i))},n]})},function(t,e,n){"use strict";n(145);var i=n(2),r=n(76),o=n(11),a=/./.toString,s=function(t){n(19)(RegExp.prototype,"toString",t,!0)};n(4)(function(){return"/a/b"!=a.call({source:"a",flags:"b"})})?s(function(){var t=i(this);return"/".concat(t.source,"/","flags"in t?t.flags:!o&&t instanceof RegExp?r.call(t):void 0)}):"toString"!=a.name&&s(function(){return a.call(this)})},function(t,e,n){var i=n(3),r=n(107),o=n(10).f,a=n(47).f,s=n(78),u=n(76),l=i.RegExp,h=l,c=l.prototype,p=/a/g,d=/a/g,f=new l(p)!==p;if(n(11)&&(!f||n(4)(function(){return d[n(6)("match")]=!1,l(p)!=p||l(d)==d||"/a/i"!=l(p,"i")}))){l=function(t,e){var n=this instanceof l,i=s(t),o=void 0===e;return!n&&i&&t.constructor===l&&o?t:r(f?new h(i&&!o?t.source:t,e):h((i=t instanceof l)?t.source:t,i&&o?u.call(t):e),n?this:c,l)};for(var m=function(t){(t in l)||o(l,t,{configurable:!0,get:function(){return h[t]},set:function(e){h[t]=e}})},g=a(h),v=0;g.length>v;)m(g[v++]);c.constructor=l,l.prototype=c,n(19)(i,"RegExp",l)}n(46)("RegExp")},function(t,e,n){n(46)("Array")},function(t,e,n){"use strict";var i=n(1),r=n(30)(6),o="findIndex",a=!0;o in[]&&[,][o](function(){a=!1}),i(i.P+i.F*a,"Array",{findIndex:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),n(39)(o)},function(t,e,n){"use strict";var i=n(1),r=n(30)(5),o=!0;"find"in[]&&[,].find(function(){o=!1}),i(i.P+i.F*o,"Array",{find:function(t){return r(this,t,arguments.length>1?arguments[1]:void 0)}}),n(39)("find")},function(t,e,n){var i=n(1);i(i.P,"Array",{fill:n(94)}),n(39)("fill")},function(t,e,n){var i=n(1);i(i.P,"Array",{copyWithin:n(147)}),n(39)("copyWithin")},function(t,e,n){"use strict";var i=n(1),r=n(23),o=n(32),a=n(9),s=[].lastIndexOf,u=!!s&&1/[1].lastIndexOf(1,-0)<0;i(i.P+i.F*(u||!n(26)(s)),"Array",{lastIndexOf:function(t){if(u)return s.apply(this,arguments)||0;var e=r(this),n=a(e.length),i=n-1;for(arguments.length>1&&(i=Math.min(i,o(arguments[1]))),i<0&&(i=n+i);i>=0;i--)if(i in e&&e[i]===t)return i||0;return -1}})},function(t,e,n){"use strict";var i=n(1),r=n(81)(!1),o=[].indexOf,a=!!o&&1/[1].indexOf(1,-0)<0;i(i.P+i.F*(a||!n(26)(o)),"Array",{indexOf:function(t){return a?o.apply(this,arguments)||0:r(this,t,arguments[1])}})},function(t,e,n){"use strict";var i=n(1),r=n(148);i(i.P+!n(26)([].reduceRight,!0)*i.F,"Array",{reduceRight:function(t){return r(this,t,arguments.length,arguments[1],!0)}})},function(t,e,n){"use strict";var i=n(1),r=n(148);i(i.P+!n(26)([].reduce,!0)*i.F,"Array",{reduce:function(t){return r(this,t,arguments.length,arguments[1],!1)}})},function(t,e,n){"use strict";var i=n(1),r=n(30)(4);i(i.P+!n(26)([].every,!0)*i.F,"Array",{every:function(t){return r(this,t,arguments[1])}})},function(t,e,n){"use strict";var i=n(1),r=n(30)(3);i(i.P+!n(26)([].some,!0)*i.F,"Array",{some:function(t){return r(this,t,arguments[1])}})},function(t,e,n){"use strict";var i=n(1),r=n(30)(2);i(i.P+!n(26)([].filter,!0)*i.F,"Array",{filter:function(t){return r(this,t,arguments[1])}})},function(t,e,n){"use strict";var i=n(1),r=n(30)(1);i(i.P+!n(26)([].map,!0)*i.F,"Array",{map:function(t){return r(this,t,arguments[1])}})},function(t,e,n){var i=n(5),r=n(79),o=n(6)("species");t.exports=function(t){var e;return r(t)&&("function"==typeof(e=t.constructor)&&(e===Array||r(e.prototype))&&(e=void 0),i(e)&&null===(e=e[o])&&(e=void 0)),void 0===e?Array:e}},function(t,e,n){"use strict";var i=n(1),r=n(30)(0),o=n(26)([].forEach,!0);i(i.P+!o*i.F,"Array",{forEach:function(t){return r(this,t,arguments[1])}})},function(t,e,n){"use strict";var i=n(1),r=n(17),o=n(13),a=n(4),s=[].sort,u=[1,2,3];i(i.P+i.F*(a(function(){u.sort(void 0)})||!a(function(){u.sort(null)})||!n(26)(s)),"Array",{sort:function(t){return void 0===t?s.call(o(this)):s.call(o(this),r(t))}})},function(t,e,n){"use strict";var i=n(1),r=n(110),o=n(27),a=n(49),s=n(9),u=[].slice;i(i.P+i.F*n(4)(function(){r&&u.call(r)}),"Array",{slice:function(t,e){var n=s(this.length),i=o(this);if(e=void 0===e?n:e,"Array"==i)return u.call(this,t,e);for(var r=a(t,n),l=a(e,n),h=s(l-r),c=Array(h),p=0;p<h;p++)c[p]="String"==i?this.charAt(r+p):this[r+p];return c}})},function(t,e,n){"use strict";var i=n(1),r=n(23),o=[].join;i(i.P+i.F*(n(63)!=Object||!n(26)(o)),"Array",{join:function(t){return o.call(r(this),void 0===t?",":t)}})},function(t,e,n){"use strict";var i=n(1),r=n(97);i(i.S+i.F*n(4)(function(){function t(){}return!(Array.of.call(t) instanceof t)}),"Array",{of:function(){for(var t=0,e=arguments.length,n=new("function"==typeof this?this:Array)(e);e>t;)r(n,t,arguments[t++]);return n.length=e,n}})},function(t,e,n){"use strict";var i=n(28),r=n(1),o=n(13),a=n(149),s=n(98),u=n(9),l=n(97),h=n(96);r(r.S+!n(77)(function(t){Array.from(t)})*r.F,"Array",{from:function(t){var e,n,r,c,p=o(t),d="function"==typeof this?this:Array,f=arguments.length,m=f>1?arguments[1]:void 0,g=void 0!==m,v=0,$=h(p);if(g&&(m=i(m,f>2?arguments[2]:void 0,2)),null==$||d==Array&&s($))for(n=new d(e=u(p.length));e>v;v++)l(n,v,g?m(p[v],v):p[v]);else for(c=$.call(p),n=new d;!(r=c.next()).done;v++)l(n,v,g?a(c,m,[r.value,v],!0):r.value);return n.length=v,n}})},function(t,e,n){var i=n(1);i(i.S,"Array",{isArray:n(79)})},function(t,e,n){"use strict";var i=n(2),r=n(34);t.exports=function(t){if("string"!==t&&"number"!==t&&"default"!==t)throw TypeError("Incorrect hint");return r(i(this),"number"!=t)}},function(t,e,n){var i=n(6)("toPrimitive"),r=Date.prototype;i in r||n(20)(r,i,n(318))},function(t,e,n){var i=Date.prototype,r=i.toString,o=i.getTime;new Date(NaN)+""!="Invalid Date"&&n(19)(i,"toString",function(){var t=o.call(this);return t==t?r.call(this):"Invalid Date"})},function(t,e,n){"use strict";var i=n(4),r=Date.prototype.getTime,o=Date.prototype.toISOString,a=function(t){return t>9?t:"0"+t};t.exports=i(function(){return"0385-07-25T07:06:39.999Z"!=o.call(new Date(-50000000000001))})||!i(function(){o.call(new Date(NaN))})?function(){if(!isFinite(r.call(this)))throw RangeError("Invalid time value");var t=this.getUTCFullYear(),e=this.getUTCMilliseconds(),n=t<0?"-":t>9999?"+":"";return n+("00000"+Math.abs(t)).slice(n?-6:-4)+"-"+a(this.getUTCMonth()+1)+"-"+a(this.getUTCDate())+"T"+a(this.getUTCHours())+":"+a(this.getUTCMinutes())+":"+a(this.getUTCSeconds())+"."+(e>99?e:"0"+a(e))+"Z"}:o},function(t,e,n){var i=n(1),r=n(321);i(i.P+i.F*(Date.prototype.toISOString!==r),"Date",{toISOString:r})},function(t,e,n){"use strict";var i=n(1),r=n(13),o=n(34);i(i.P+i.F*n(4)(function(){return null!==new Date(NaN).toJSON()||1!==Date.prototype.toJSON.call({toISOString:function(){return 1}})}),"Date",{toJSON:function(t){var e=r(this),n=o(e);return"number"!=typeof n||isFinite(n)?e.toISOString():null}})},function(t,e,n){var i=n(1);i(i.S,"Date",{now:function(){return(new Date).getTime()}})},function(t,e,n){"use strict";n(18)("sup",function(t){return function(){return t(this,"sup","","")}})},function(t,e,n){"use strict";n(18)("sub",function(t){return function(){return t(this,"sub","","")}})},function(t,e,n){"use strict";n(18)("strike",function(t){return function(){return t(this,"strike","","")}})},function(t,e,n){"use strict";n(18)("small",function(t){return function(){return t(this,"small","","")}})},function(t,e,n){"use strict";n(18)("link",function(t){return function(e){return t(this,"a","href",e)}})},function(t,e,n){"use strict";n(18)("italics",function(t){return function(){return t(this,"i","","")}})},function(t,e,n){"use strict";n(18)("fontsize",function(t){return function(e){return t(this,"font","size",e)}})},function(t,e,n){"use strict";n(18)("fontcolor",function(t){return function(e){return t(this,"font","color",e)}})},function(t,e,n){"use strict";n(18)("fixed",function(t){return function(){return t(this,"tt","","")}})},function(t,e,n){"use strict";n(18)("bold",function(t){return function(){return t(this,"b","","")}})},function(t,e,n){"use strict";n(18)("blink",function(t){return function(){return t(this,"blink","","")}})},function(t,e,n){"use strict";n(18)("big",function(t){return function(){return t(this,"big","","")}})},function(t,e,n){"use strict";n(18)("anchor",function(t){return function(e){return t(this,"a","name",e)}})},function(t,e,n){"use strict";var i=n(1),r=n(9),o=n(100),a="".startsWith;i(i.P+i.F*n(99)("startsWith"),"String",{startsWith:function(t){var e=o(this,t,"startsWith"),n=r(Math.min(arguments.length>1?arguments[1]:void 0,e.length)),i=String(t);return a?a.call(e,i,n):e.slice(n,n+i.length)===i}})},function(t,e,n){var i=n(1);i(i.P,"String",{repeat:n(106)})},function(t,e,n){"use strict";var i=n(1),r=n(100);i(i.P+i.F*n(99)("includes"),"String",{includes:function(t){return!!~r(this,t,"includes").indexOf(t,arguments.length>1?arguments[1]:void 0)}})},function(t,e,n){"use strict";var i=n(1),r=n(9),o=n(100),a="".endsWith;i(i.P+i.F*n(99)("endsWith"),"String",{endsWith:function(t){var e=o(this,t,"endsWith"),n=arguments.length>1?arguments[1]:void 0,i=r(e.length),s=void 0===n?i:Math.min(r(n),i),u=String(t);return a?a.call(e,u,s):e.slice(s-u.length,s)===u}})},function(t,e,n){"use strict";var i=n(1),r=n(103)(!1);i(i.P,"String",{codePointAt:function(t){return r(this,t)}})},function(t,e,n){"use strict";var i=n(103)(!0);n(102)(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,e=this._t,n=this._i;return n>=e.length?{value:void 0,done:!0}:(t=i(e,n),this._i+=t.length,{value:t,done:!1})})},function(t,e,n){"use strict";n(57)("trim",function(t){return function(){return t(this,3)}})},function(t,e,n){var i=n(1),r=n(23),o=n(9);i(i.S,"String",{raw:function(t){for(var e=r(t.raw),n=o(e.length),i=arguments.length,a=[],s=0;n>s;)a.push(String(e[s++])),s<i&&a.push(String(arguments[s]));return a.join("")}})},function(t,e,n){var i=n(1),r=n(49),o=String.fromCharCode,a=String.fromCodePoint;i(i.S+i.F*(!!a&&1!=a.length),"String",{fromCodePoint:function(t){for(var e,n=[],i=arguments.length,a=0;i>a;){if(e=+arguments[a++],r(e,1114111)!==e)throw RangeError(e+" is not a valid code point");n.push(e<65536?o(e):o(55296+((e-=65536)>>10),e%1024+56320))}return n.join("")}})},function(t,e,n){var i=n(1);i(i.S,"Math",{trunc:function(t){return(t>0?Math.floor:Math.ceil)(t)}})},function(t,e,n){var i=n(1),r=n(104),o=Math.exp;i(i.S,"Math",{tanh:function(t){var e=r(t=+t),n=r(-t);return e==1/0?1:n==1/0?-1:(e-n)/(o(t)+o(-t))}})},function(t,e,n){var i=n(1),r=n(104),o=Math.exp;i(i.S+i.F*n(4)(function(){return -.00000000000000002!=!Math.sinh(-.00000000000000002)}),"Math",{sinh:function(t){return 1>Math.abs(t=+t)?(r(t)-r(-t))/2:(o(t-1)-o(-t-1))*(Math.E/2)}})},function(t,e,n){var i=n(1);i(i.S,"Math",{sign:n(105)})},function(t,e,n){var i=n(1);i(i.S,"Math",{log2:function(t){return Math.log(t)/Math.LN2}})},function(t,e,n){var i=n(1);i(i.S,"Math",{log1p:n(151)})},function(t,e,n){var i=n(1);i(i.S,"Math",{log10:function(t){return Math.log(t)*Math.LOG10E}})},function(t,e,n){var i=n(1),r=Math.imul;i(i.S+i.F*n(4)(function(){return -5!=r(4294967295,5)||2!=r.length}),"Math",{imul:function(t,e){var n=+t,i=+e,r=65535&n,o=65535&i;return 0|r*o+((65535&n>>>16)*o+r*(65535&i>>>16)<<16>>>0)}})},function(t,e,n){var i=n(1),r=Math.abs;i(i.S,"Math",{hypot:function(t,e){for(var n,i,o=0,a=0,s=arguments.length,u=0;a<s;)u<(n=r(arguments[a++]))?(o=o*(i=u/n)*i+1,u=n):o+=n>0?(i=n/u)*i:n;return u===1/0?1/0:u*Math.sqrt(o)}})},function(t,e,n){var i=n(1);i(i.S,"Math",{fround:n(150)})},function(t,e,n){var i=n(1),r=n(104);i(i.S+i.F*(r!=Math.expm1),"Math",{expm1:r})},function(t,e,n){var i=n(1),r=Math.exp;i(i.S,"Math",{cosh:function(t){return(r(t=+t)+r(-t))/2}})},function(t,e,n){var i=n(1);i(i.S,"Math",{clz32:function(t){return(t>>>=0)?31-Math.floor(Math.log(t+.5)*Math.LOG2E):32}})},function(t,e,n){var i=n(1),r=n(105);i(i.S,"Math",{cbrt:function(t){return r(t=+t)*Math.pow(Math.abs(t),1/3)}})},function(t,e,n){var i=n(1),r=Math.atanh;i(i.S+!(r&&1/r(-0)<0)*i.F,"Math",{atanh:function(t){return 0==(t=+t)?t:Math.log((1+t)/(1-t))/2}})},function(t,e,n){var i=n(1),r=Math.asinh;i(i.S+!(r&&1/r(0)>0)*i.F,"Math",{asinh:function t(e){return isFinite(e=+e)&&0!=e?e<0?-t(-e):Math.log(e+Math.sqrt(e*e+1)):e}})},function(t,e,n){var i=n(1),r=n(151),o=Math.sqrt,a=Math.acosh;i(i.S+!(a&&710==Math.floor(a(Number.MAX_VALUE))&&a(1/0)==1/0)*i.F,"Math",{acosh:function(t){return(t=+t)<1?NaN:t>94906265.62425156?Math.log(t)+Math.LN2:r(t-1+o(t-1)*o(t+1))}})},function(t,e,n){var i=n(1),r=n(155);i(i.S+i.F*(Number.parseInt!=r),"Number",{parseInt:r})},function(t,e,n){var i=n(1),r=n(154);i(i.S+i.F*(Number.parseFloat!=r),"Number",{parseFloat:r})},function(t,e,n){var i=n(1);i(i.S,"Number",{MIN_SAFE_INTEGER:-9007199254740991})},function(t,e,n){var i=n(1);i(i.S,"Number",{MAX_SAFE_INTEGER:9007199254740991})},function(t,e,n){var i=n(1),r=n(152),o=Math.abs;i(i.S,"Number",{isSafeInteger:function(t){return r(t)&&9007199254740991>=o(t)}})},function(t,e,n){var i=n(1);i(i.S,"Number",{isNaN:function(t){return t!=t}})},function(t,e,n){var i=n(1);i(i.S,"Number",{isInteger:n(152)})},function(t,e,n){var i=n(1),r=n(3).isFinite;i(i.S,"Number",{isFinite:function(t){return"number"==typeof t&&r(t)}})},function(t,e,n){var i=n(1);i(i.S,"Number",{EPSILON:2220446049250313e-31})},function(t,e,n){"use strict";var i=n(1),r=n(4),o=n(153),a=1..toPrecision;i(i.P+i.F*(r(function(){return"1"!==a.call(1,void 0)})||!r(function(){a.call({})})),"Number",{toPrecision:function(t){var e=o(this,"Number#toPrecision: incorrect invocation!");return void 0===t?a.call(e):a.call(e,t)}})},function(t,e,n){"use strict";var i=n(1),r=n(32),o=n(153),a=n(106),s=1..toFixed,u=Math.floor,l=[0,0,0,0,0,0],h="Number.toFixed: incorrect invocation!",c=function(t,e){for(var n=-1,i=e;++n<6;)i+=t*l[n],l[n]=i%1e7,i=u(i/1e7)},p=function(t){for(var e=6,n=0;--e>=0;)n+=l[e],l[e]=u(n/t),n=n%t*1e7},d=function(){for(var t=6,e="";--t>=0;)if(""!==e||0===t||0!==l[t]){var n=String(l[t]);e=""===e?n:e+a.call("0",7-n.length)+n}return e},f=function(t,e,n){return 0===e?n:e%2==1?f(t,e-1,n*t):f(t*t,e/2,n)};i(i.P+i.F*(!!s||!n(4)(function(){s.call({})})),"Number",{toFixed:function(t){var e,n,i,s,u=o(this,h),l=r(t),m="",g="0";if(l<0||l>20)throw RangeError(h);if(u!=u)return"NaN";if(u<=-1e21||u>=1e21)return String(u);if(u<0&&(m="-",u=-u),u>1e-21){if(n=(e=function(t){for(var e=0,n=t;n>=4096;)e+=12,n/=4096;for(;n>=2;)e+=1,n/=2;return e}(u*f(2,69,1))-69)<0?u*f(2,-e,1):u/f(2,e,1),n*=4503599627370496,(e=52-e)>0){for(c(0,n),i=l;i>=7;)c(1e7,0),i-=7;for(c(f(10,i,1),0),i=e-1;i>=23;)p(8388608),i-=23;p(1<<i),c(1,1),p(2),g=d()}else c(0,n),c(1<<-e,0),g=d()+a.call("0",l)}return l>0?m+((s=g.length)<=l?"0."+a.call("0",l-s)+g:g.slice(0,s-l)+"."+g.slice(s-l)):m+g}})},function(t,e,n){"use strict";var i=n(3),r=n(24),o=n(27),a=n(107),s=n(34),u=n(4),l=n(47).f,h=n(22).f,c=n(10).f,p=n(57).trim,d=i.Number,f=d,m=d.prototype,g="Number"==o(n(48)(m)),v="trim"in String.prototype,$=function(t){var e=s(t,!1);if("string"==typeof e&&e.length>2){var n,i,r,o=(e=v?e.trim():p(e,3)).charCodeAt(0);if(43===o||45===o){if(88===(n=e.charCodeAt(2))||120===n)return NaN}else if(48===o){switch(e.charCodeAt(1)){case 66:case 98:i=2,r=49;break;case 79:case 111:i=8,r=55;break;default:return+e}for(var a,u=e.slice(2),l=0,h=u.length;l<h;l++)if((a=u.charCodeAt(l))<48||a>r)return NaN;return parseInt(u,i)}}return+e};if(!d(" 0o1")||!d("0b1")||d("+0x1")){d=function(t){var e=arguments.length<1?0:t,n=this;return n instanceof d&&(g?u(function(){m.valueOf.call(n)}):"Number"!=o(n))?a(new f($(e)),n,d):$(e)};for(var y,_=n(11)?l(f):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),x=0;_.length>x;x++)r(f,y=_[x])&&!r(d,y)&&c(d,y,h(f,y));d.prototype=m,m.constructor=d,n(19)(i,"Number",d)}},function(t,e,n){var i=n(1),r=n(154);i(i.G+i.F*(parseFloat!=r),{parseFloat:r})},function(t,e,n){var i=n(1),r=n(155);i(i.G+i.F*(parseInt!=r),{parseInt:r})},function(t,e,n){"use strict";var i=n(5),r=n(21),o=n(6)("hasInstance"),a=Function.prototype;o in a||n(10).f(a,o,{value:function(t){if("function"!=typeof this||!i(t))return!1;if(!i(this.prototype))return t instanceof this;for(;t=r(t);)if(this.prototype===t)return!0;return!1}})},function(t,e,n){var i=n(10).f,r=Function.prototype,o=/^\s*function ([^ (]*)/;"name"in r||n(11)&&i(r,"name",{configurable:!0,get:function(){try{return(""+this).match(o)[1]}catch(t){return""}}})},function(t,e,n){var i=n(1);i(i.P,"Function",{bind:n(157)})},function(t,e,n){"use strict";var i=n(61),r={};r[n(6)("toStringTag")]="z",r+""!="[object z]"&&n(19)(Object.prototype,"toString",function(){return"[object "+i(this)+"]"},!0)},function(t,e,n){var i=n(1);i(i.S,"Object",{setPrototypeOf:n(109).set})},function(t,e){t.exports=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e}},function(t,e,n){var i=n(1);i(i.S,"Object",{is:n(383)})},function(t,e,n){var i=n(1);i(i.S+i.F,"Object",{assign:n(158)})},function(t,e,n){var i=n(5);n(31)("isExtensible",function(t){return function(e){return!!i(e)&&(!t||t(e))}})},function(t,e,n){var i=n(5);n(31)("isSealed",function(t){return function(e){return!i(e)||!!t&&t(e)}})},function(t,e,n){var i=n(5);n(31)("isFrozen",function(t){return function(e){return!i(e)||!!t&&t(e)}})},function(t,e,n){var i=n(5),r=n(41).onFreeze;n(31)("preventExtensions",function(t){return function(e){return t&&i(e)?t(r(e)):e}})},function(t,e,n){var i=n(5),r=n(41).onFreeze;n(31)("seal",function(t){return function(e){return t&&i(e)?t(r(e)):e}})},function(t,e,n){var i=n(5),r=n(41).onFreeze;n(31)("freeze",function(t){return function(e){return t&&i(e)?t(r(e)):e}})},function(t,e,n){n(31)("getOwnPropertyNames",function(){return n(159).f})},function(t,e,n){var i=n(13),r=n(50);n(31)("keys",function(){return function(t){return r(i(t))}})},function(t,e,n){var i=n(13),r=n(21);n(31)("getPrototypeOf",function(){return function(t){return r(i(t))}})},function(t,e,n){var i=n(23),r=n(22).f;n(31)("getOwnPropertyDescriptor",function(){return function(t,e){return r(i(t),e)}})},function(t,e,n){var i=n(1);i(i.S+!n(11)*i.F,"Object",{defineProperties:n(160)})},function(t,e,n){var i=n(1);i(i.S+!n(11)*i.F,"Object",{defineProperty:n(10).f})},function(t,e,n){var i=n(1);i(i.S,"Object",{create:n(48)})},function(t,e,n){var i=n(50),r=n(80),o=n(62);t.exports=function(t){var e=i(t),n=r.f;if(n)for(var a,s=n(t),u=o.f,l=0;s.length>l;)u.call(t,a=s[l++])&&e.push(a);return e}},function(t,e,n){"use strict";var i=n(3),r=n(24),o=n(11),a=n(1),s=n(19),u=n(41).KEY,l=n(4),h=n(82),c=n(58),p=n(51),d=n(6),f=n(162),m=n(113),g=n(399),v=n(79),$=n(2),y=n(5),_=n(23),x=n(34),b=n(52),w=n(48),A=n(159),T=n(22),S=n(10),E=n(50),P=T.f,C=S.f,L=A.f,M=i.Symbol,R=i.JSON,I=R&&R.stringify,D=d("_hidden"),N=d("toPrimitive"),B={}.propertyIsEnumerable,O=h("symbol-registry"),G=h("symbols"),k=h("op-symbols"),V=Object.prototype,z="function"==typeof M,U=i.QObject,H=!U||!U.prototype||!U.prototype.findChild,F=o&&l(function(){return 7!=w(C({},"a",{get:function(){return C(this,"a",{value:7}).a}})).a})?function(t,e,n){var i=P(V,e);i&&delete V[e],C(t,e,n),i&&t!==V&&C(V,e,i)}:C,W=function(t){var e=G[t]=w(M.prototype);return e._k=t,e},X=z&&"symbol"==typeof M.iterator?function(t){return"symbol"==typeof t}:function(t){return t instanceof M},Y=function(t,e,n){return t===V&&Y(k,e,n),$(t),e=x(e,!0),$(n),r(G,e)?(n.enumerable?(r(t,D)&&t[D][e]&&(t[D][e]=!1),n=w(n,{enumerable:b(0,!1)})):(r(t,D)||C(t,D,b(1,{})),t[D][e]=!0),F(t,e,n)):C(t,e,n)},K=function(t,e){$(t);for(var n,i=g(e=_(e)),r=0,o=i.length;o>r;)Y(t,n=i[r++],e[n]);return t},j=function(t){var e=B.call(this,t=x(t,!0));return!(this===V&&r(G,t)&&!r(k,t))&&(!(e||!r(this,t)||!r(G,t)||r(this,D)&&this[D][t])||e)},Z=function(t,e){if(t=_(t),e=x(e,!0),t!==V||!r(G,e)||r(k,e)){var n=P(t,e);return!n||!r(G,e)||r(t,D)&&t[D][e]||(n.enumerable=!0),n}},q=function(t){for(var e,n=L(_(t)),i=[],o=0;n.length>o;)r(G,e=n[o++])||e==D||e==u||i.push(e);return i},Q=function(t){for(var e,n=t===V,i=L(n?k:_(t)),o=[],a=0;i.length>a;)r(G,e=i[a++])&&(!n||r(V,e))&&o.push(G[e]);return o};z||(s((M=function(){if(this instanceof M)throw TypeError("Symbol is not a constructor!");var t=p(arguments.length>0?arguments[0]:void 0),e=function(n){this===V&&e.call(k,n),r(this,D)&&r(this[D],t)&&(this[D][t]=!1),F(this,t,b(1,n))};return o&&H&&F(V,t,{configurable:!0,set:e}),W(t)}).prototype,"toString",function(){return this._k}),T.f=Z,S.f=Y,n(47).f=A.f=q,n(62).f=j,n(80).f=Q,o&&!n(40)&&s(V,"propertyIsEnumerable",j,!0),f.f=function(t){return W(d(t))}),a(a.G+a.W+!z*a.F,{Symbol:M});for(var J="hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables".split(","),tt=0;J.length>tt;)d(J[tt++]);for(var te=E(d.store),tn=0;te.length>tn;)m(te[tn++]);a(a.S+!z*a.F,"Symbol",{for:function(t){return r(O,t+="")?O[t]:O[t]=M(t)},keyFor:function(t){if(!X(t))throw TypeError(t+" is not a symbol!");for(var e in O)if(O[e]===t)return e},useSetter:function(){H=!0},useSimple:function(){H=!1}}),a(a.S+!z*a.F,"Object",{create:function(t,e){return void 0===e?w(t):K(w(t),e)},defineProperty:Y,defineProperties:K,getOwnPropertyDescriptor:Z,getOwnPropertyNames:q,getOwnPropertySymbols:Q}),R&&a(a.S+a.F*(!z||l(function(){var t=M();return"[null]"!=I([t])||"{}"!=I({a:t})||"{}"!=I(Object(t))})),"JSON",{stringify:function(t){for(var e,n,i=[t],r=1;arguments.length>r;)i.push(arguments[r++]);if(n=e=i[1],(y(e)||void 0!==t)&&!X(t))return v(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!X(e))return e}),i[1]=e,I.apply(R,i)}}),M.prototype[N]||n(20)(M.prototype,N,M.prototype.valueOf),c(M,"Symbol"),c(Math,"Math",!0),c(i.JSON,"JSON",!0)},function(t,e,n){n(400),n(398),n(397),n(396),n(395),n(394),n(393),n(392),n(391),n(390),n(389),n(388),n(387),n(386),n(385),n(384),n(382),n(381),n(380),n(379),n(378),n(377),n(376),n(375),n(374),n(373),n(372),n(371),n(370),n(369),n(368),n(367),n(366),n(365),n(364),n(363),n(362),n(361),n(360),n(359),n(358),n(357),n(356),n(355),n(354),n(353),n(352),n(351),n(350),n(349),n(348),n(347),n(346),n(345),n(344),n(343),n(342),n(341),n(340),n(339),n(338),n(337),n(336),n(335),n(334),n(333),n(332),n(331),n(330),n(329),n(328),n(327),n(326),n(325),n(324),n(323),n(322),n(320),n(319),n(317),n(316),n(315),n(314),n(313),n(312),n(311),n(309),n(308),n(307),n(306),n(305),n(304),n(303),n(302),n(301),n(300),n(299),n(298),n(297),n(93),n(296),n(295),n(145),n(294),n(293),n(292),n(291),n(290),n(142),n(140),n(139),n(289),n(288),n(287),n(286),n(285),n(284),n(283),n(282),n(281),n(280),n(279),n(278),n(277),n(276),n(275),n(274),n(273),n(272),n(271),n(270),n(269),n(268),n(267),n(266),n(265),n(264),n(263),n(262),n(261),n(260),n(259),n(258),n(257),n(256),n(255),n(254),n(253),n(252),n(251),n(250),n(249),n(248),n(247),n(246),n(245),n(244),n(243),n(242),n(241),n(240),n(239),n(238),n(237),n(236),n(235),n(234),n(233),n(232),n(231),n(230),n(229),n(228),n(227),n(226),n(225),n(224),n(223),n(222),n(221),n(220),n(219),n(218),n(217),n(216),n(215),n(214),n(213),n(212),n(211),n(210),n(209),n(208),n(207),n(206),n(205),t.exports=n(35)},function(t,e,n){"use strict";(function(t){n(401),n(204),t._babelPolyfill&&"undefined"!=typeof console&&console.warn&&console.warn("@babel/polyfill is loaded more than once on this page. This is probably not desirable/intended and may have consequences if different versions of the polyfills are applied sequentially. If you do need to load the polyfill more than once, use @babel/polyfill/noConflict instead to bypass the warning."),t._babelPolyfill=!0}).call(this,n(164))},function(t,e,n){n(402),t.exports=n(203)}]);

OHA YOOOO